Уважаемые гости и новички, приветствуем Вас на нашем форуме
Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».
Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
Удачи!
Друзья, доброго времени суток!
Стартовал новый литературный конкурс от "Ордена Хранителей" - "Пираты Миртанского моря". Каждый может принять в нём участие и снискать славу и уважение, а в случае занятия призового места ещё и получить награду. Дерзайте
Дорогие друзья, год подходит к концу, и пришло время подвести его итоги и наградить достойных
Не ленитесь, голосуйте в этой теме за тех форумчан, которые по вашему мнению больше всех проявили себя в этом году
По желанию, аргументировать свой выбор можете в теме обсуждения голосования.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Разобрался в чем была ошибка, загрузил аск волка в макс глянул в редакторе материалов формат текстур - DDS. Так и осталось после импорта другой модели а я наивно полагал если я в блокноте поменял dds - на тга то все стало хорошо =D
И самое наболевшее: Когда я все перенес в игру, с помощью марвина я обычно вхожу через консоль в живность и проверяю как все работает. Вот что не нравиться, так это то, что модель волка при беге подпрыгивает и падает. Как будто бежит по воздуху. Модель курицы так вообще проваливалась. А с самим волком в игре такого не происходит. Все так и должно быть, или нет?
ну да, все верно, тут тот же баг, что при одевании всяких шлемов скриптом, просто в готе что 1 что 2, функция одевания предметов, сделана очень... плохо, вобщем. И в некоторых случаях она не работает.
Всё верно, функция EquipItem() нормально работает только в инстанциях NPC (Story\NPC\*.d). А в диалогах надо использовать функции AI_EquipBestMeleeWeapon() или AI_EquipBestRangedWeapon(), но они экипируют ГГ или перса не определённым оружием, а наилучшим ближне- или дальнобойным, для использования которого хватит силы или ловкости. Например, без использования дополнительных костылей чертовски сложно заставить ГГ экипироваться именно двуручным мечом Рода, а не другим оружием с более лучшими характеристиками (например, волчьим зубом или рапирой).
Есть ещё такой вариант из разряда танцев с бубном. В начале диалога уменьшаешь (увеличиваешь?) силу или ловкость непися до значения, необходимого для экипировки именно этого веапона. Реальное значение запоминаешь в специальной переменной. По ходу диалога используешь AI_EquipBestMeleeWeapon() или AI_EquipBestRangedWeapon(). Даже если в инвентаре есть более крутое оружие, оно не экипируется. Вернуть реальное значение силы или ловкости можно уже разными способами. Можно, например, попытаться прописать функцию при экипировке того веапона, который нужно экипировать. В этой функции и вернуть реальное значение силы или ловкости с учётом одноразовости события.
В G2 реальные сила, ловкость и максимальная мана запоминаются в следующих переменных массива aivar: REAL_STRENGTH, REAL_DEXTERITY и REAL_MANA_MAX. Но предложенный Александром метод манипуляции значениями силы или ловкости может сработать неправильно, например: значение силы ГГ временно снижено до 30 единиц, ГГ получил от Рода его двуручный меч (повреждение 40, сила 30), но т.к. в его инвентаре уже есть волчий зуб (повреждение 45, сила 22), то вместо меча Рода ГГ экипируется этим одноручником.
в диалогах надо использовать функции AI_EquipBestMeleeWeapon() или AI_EquipBestRangedWeapon(), но ... без использования дополнительных костылей чертовски сложно заставить ГГ экипироваться именно двуручным мечом Рода, а не другим оружием с более лучшими характеристиками (например, волчьим зубом или рапирой).
Долго вспоминала, как же делала подобную штуку без Икаруса и Экста, и наконец вспомнила.
Идея в том, что среди типов урона есть неиспользуемый DAM_INDEX_BARRIER = 0. При нанесении урона он не учитывается, если не указано в damagetype, а вот при выборе лучшего оружия - учитывается.
Соответственно, если в инстанции оружия прописать какое-нибудь больше значение в damage[0], то такое оружие всегда будет экипироваться как лучшее.
Обязательно присваивать damage[0] после damageTotal и damagetype, иначе значение затрется.
Сработает ли, если поменять damage[0] непосредственно в диалоге, я не уверена.
Например, так я заставляла NPC учитывать бонус к владению оружием:
Еще вопрос. я добавил в свой мод ищущий огонек, но не как не могу сделать так, чтоб на него не нападали, гильдия у него шершень, и изменить ее нельзя(летать не будет) Подскажите, как решить эту проблему? Во второй готике есть функция AIV_NoFightParker, но можно-ли перенести ее в первую?
Можно ли использовать два и более UVW Map для одного мультиматериала? (для одних полигонов один UVW Map, для других соответственно другой).
Разобрался. Достаточно установить Map Channel в каждой карте саб-материала и в настройках UVW Map указать этот канал.
AIV_NoFightParker - это не функция, а всего лишь константа. С помощью этой константы можно идентифицировать одну из переменных aivar-массива непися. А уже значение этой переменной, в свою очередь, можно учитывать в функциях ИИ.
Еще вопрос. я добавил в свой мод ищущий огонек, но не как не могу сделать так, чтоб на него не нападали, гильдия у него шершень, и изменить ее нельзя(летать не будет) Подскажите, как решить эту проблему?
Нужно прописывать игнор данного существа в алгоритмах ИИ. Для людей реакция на твоего "шершня" сведётся, скорее всего, к функции ZS_AssessMonster. Прописываешь в функции что-то типа:
где ХХХХХ - инстанция "Огонька". Нападать на него люди не будут, но возможны глюки ИИ - неписи перестанут правильно реагировать на ГГ, поскольку их внимание будет отвлечено на "Огонька".
Чтобы на "Огонька" не нападали монстры, нужно прописать игнор в функции B_MM_AssessEnemy.
По-хорошему, "Огонёк" должен иметь нейтральную гильдию и не находиться в боевом режиме, что-то типа мясного жука, на которого никто не обращает внимание. Если он так важен, то, возможно, стоит пожертвовать ради него одной из монстрячих гильдий.
Здравствуйте,заранее извините за глупый вопрос, не подскажете как добавить в игру свое оружие? Насчет моделирования в максе все понятно, но дальше у меня возникают сложности со скриптом. Вернее я даже не могу его найти. Прочитал что нужно прописать свое оружие в Items/IT_Melee_weapons.d но сама папка где должен быть файл пуста.
То же самое с папкой с текстурами. Куда положить сам 3ds на форумах вообще не нашел.
Вопрос: что движок игры воспринимает за динамические объекты (помимо неписей и айтемов)?
Я уже ранее задавал вопрос с неработающим мувером ( https://worldofplayers.ru/threads/13198/page-174#post-768304 ), но тогда мне показалось, что вроде все исправилось, а сейчас обнаружилось, что, оказывается, я просто сделал мувер "проходимым", сквозным, что для стены не есть круто.
Если же я ставлю на cdDyn на TRUE (чтобы ГГ не проходил сквозь стену), мувер автоматически перестает работать.
Закончилось тем, что я удалил ВСЕ объекты, так или иначе касавшиеся мувера (какие-то коряги на потолке пещеры, красные рудные полосы на стенах, камни на земле) или находящиеся от него поблизости (пару источников света и несколько MobInter-ов), даже триггер отодвинул подальше.
Наконец я даже временно удалял мувер, чтобы посмотреть, нет ли где-то в нем самом затерявшегося объекта. Чисто.
Тем не менее, мувер в гробу видел мои приказы "Сезам откройся!". Проблемой, очевидно, является его столкновение с каким-то динамическим объектом (ибо если таковой галочки не стоит в его настройках, он нормально открывается). Есть идеи, что может быть этим динамическим объектом?
////
И еще второй вопрос.
Помнится, я где-то уже читал об этом, но сейчас не могу найти.((( В связи с чем извиняюсь за избитый вопрос.
Кто или что (движок или скрипты?) виновно в том, что трупы призванных существ остаются валяться в мире игры? И можно ли это как-то устранить?
А то один из тестирующих обратился с багом, что у него по всему миру валяются трупы призванных им когда-то огненных големов. Правда, отметил, что они вроде как остаются только если сохраняться рядом с этим големом или его телом...
Когда сам играл за некра с вызовом скелетов и демонов, вроде такого не было (хотя м.б. просто не сохранялся никогда рядом с призванными существами или их телами), пробовал искать в скриптах разницу (огненный голем вроде как новый призывной монстр для Возвращения, думал, м.б. что-то где-то забыли прописать), но не нашел....
////
....и еще третий вопрос.
Что в Готике 2 отвечает за friendly fire?
Я все копаюсь в "Возвращении", пытаюсь его убрать (прежде всего, между неписями в битвах в 7 главе, отсюда условия в скрипте).
Пробовал прописывать вот это:
в C_CanNpcCollideWithSpell.d
Тем не менее, маги все равно умудряются наносить урон случайным жертвам, оказавшимся на пути их спелла (и это несмотря на то, что когда разозленная жертва бросается лупить мага, видно, что урон уже НЕ наносится, т.е. скрипт работает, но как-то частично).
Тот факт, что скрипт отчасти срабатывает, видно и когда жертвой является другой маг. "Атакер" уже успевает успокоиться, но жертва продолжает поливать его спеллами, успешно не наносящимии урона, причем контратаку от бывшего нападающего это не вызывает. Таким образом, сам урон и контратака при случайном френдли файр проскальзывают каким-то волшебным образом, вопреки скрипту.
Но это - одна сторона вопроса.
С другой стороны, пробовал блокировать саму контратаку через B_AssessDamage, B_AssessFightSound (а то дружки жертвы любят подключаться), B_AssessEnemy и даже самой B_Attack при помощи похожего фрагмента скрипта (условия те же, только в фигурных скобках был либо просто return, либо пробовал Npc_ClearAIQueue(slf) в B_AssessEnemy.
Но хоть бы хны. Жертва все равно бросается на обидчика.
Может кто-нибудь работал с этим вопросом, может подсказать, где его править?
________________________________________________________________________________
UPD:
Первый вопрос снят. Ответом оказалось дерево, кусок которого застрял внутри скалы на том самом месте, куда должен был отъезжать мувер. Пришлось его срубить.
Мёртвых неписей из мира удаляет движок, если отойти от тела на определённое расстояние. Но тело не исчезает, если в инвентаре есть предмет, помеченный, как квестовый, специальным флагом. Также в проекте GothicEngine от камрада Керракс есть такая фишка, что тела не удаляются из мира, что, кстати, может вызвать неправильную работу пары алгоритмов. Хотя речь, судя по всему, идёт о Г2.
Помогите пожалуйста.
1) Я создал карту в максе. Но когда я экспортирую её то в консоле он пишет что сократил названия текстур которые в спейсере просто заминяются камнем... как сделать так чтобы текстуры были в спейсере?
2) После того как я загрузил карту в спейсер как меш и конвертировал её то не могу вставлять вобы и мобы.
в меню "object" есть только zCMaterial и zCEventMessage. Никаких там zCMob ит.д.
3) как конвертировать .zen в .3ds?
ответьте))
На данном сайте используются файлы cookie, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
Продолжая использовать этот сайт, Вы соглашаетесь на использование наших файлов cookie.