• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!

Не стесняюсь спросить....

Scarecrow

Участник форума
Регистрация
11 Авг 2014
Сообщения
162
Благодарности
85
Баллы
220
Подскажите пожалуйста - создал доспехи и вставил в игру. На гг все работает нормально, все анимации и взаимодействия с мобами тоже, все работает. Но если надеть эти же доспехи на нпс, то игра тут же вылетает. Если нпс просто стоит и ничего не делает, но все еще работает, но стоит ему чуть пройти или сесть на стул, за кальян и т.д. - игра сразу крашится. В чем может быть проблема?

upd. Все, проблема решена, разобрался)
 
Последнее редактирование:

4YBAK

Участник форума
Регистрация
27 Окт 2009
Сообщения
155
Благодарности
81
Баллы
300
Здравствуйте, товарищи по цеху!
Не так уж давно решил окунуться в 3D-моделирование, всячески разнообразив картинку на экране разными вкусностями, но код Готики 2 мне пока что известен слабо, особенно некоторые нюансы. Работаю в 3DMax 2012.

В общем:
Хочу сделать колыхающийся на ветру парус для корабля. Готовая анимированная модель уже в наличии. Вопрос: как правильно сохранить модель? В каком формате? Знаю, что внутри нужно назвать zm_mesh, вроде как, и в папке asc должно находиться несколько файлов, но каких конкретно, чтобы всë работало? Необходимо, чтобы он анимировался сразу же после вставки и старта игры, как те же флаги на Эсмеральде и в лагере пиратов. Можете мне подсказать, как провернуть всю эту процедуру в деталях, чтобы в дальнейшем данных вопросов у меня больше не возникало?) Буду премного благодарен!
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.407
Благодарности
3.232
Баллы
525
должно находиться несколько файлов, но каких конкретно, чтобы всë работало?
Для компиляции нужен mms-скрипт и два asc-файла (один - сама модель, друой - её анимация). Декомпилируй с помощью Соурсера какую-нибудь аналогичную модель из рескрсов игры и посмотри, что и как там устроено. Компилировать модель желательно в Спейсере, вставив её в игровой мир. Предварительно, неплохо бы прописать в библиотеке материалов Спейсера материалы новой модели. Тогда свойства материалов будут сохранены в скомпилированном файле модели. Если этого не сделать, материалы в модели получат обычные (дефолтные) свойства.
 

KirTheSeeker

Участник форума
Регистрация
18 Авг 2017
Сообщения
1.928
Благодарности
558
Баллы
275
Приветствую всех. Прошу совета и разъяснений.
Установлена английская версия Г2 НВ из Steam, последний Union, БЕЗ Steam-fix. Далее я ещё распаковал туда GMDK (всё, кроме озвучки, кажется).
Также в папку с игрой установлены GS 3.16, VDFS tool и GWB.
Я хочу внести простейшие изменения в неоф. обновление - скорректировать урон оружия - и для этого воспользовался архивом с исходниками, любезно предоставленными D36 на странице мода. Далее действовал по инструкциям:
- Распаковал архив в папку с проектами (Gothic Sourcer\Gothic Projects);
- Переименовал папку проекта в SolG2a_NR_ScriptPatch_NDR;
- Запустил GS и открыл решение Gothic Projects\SolG2a_NR_ScriptPatch_NDR\G2a_NR_ScriptPatch_NDR.gsc;
- Там я поменял необходимые данные и нажал "Сохранить всё".
Затем действовал по данному руководству. В результате мне удалось создать новые файлы Gothic.dat и OU.bin, но упаковка через новый VDFS tool НЕ удалась, поскольку я НЕ нашёл там вкладку Builder/Создать. Пришлось воспользоваться VDFS, который был в оригинальной игре, и действуя согласно указаниям удалось создать файл .mod, а затем и ini. Файлы вставил в указанные папки, GothicStarter видит модификацию, и позволяет запустить игру.
Но при попытке начала новой игры, происходит вылет с сообщениями об отсутствии каких-то BOW_6.mesh или т.п.
Что я делаю не так?
 

alexeich2019

Участник форума
Регистрация
28 Июн 2019
Сообщения
191
Благодарности
73
Баллы
175
KirTheSeeker, в скриптах, в некоторых инстанциях прописаны визуалы/анимации, для которых у вас нет нужных файлов, о чем вам и указывает игра. А вот в файлах модификации, откуда вы взяли скрипты, эти файлы есть...
 

KirTheSeeker

Участник форума
Регистрация
18 Авг 2017
Сообщения
1.928
Благодарности
558
Баллы
275
KirTheSeeker, в скриптах в некоторых инстанциях прописаны визуалы/анимации, для которых у вас нет нужных файлов, о чем вам и указывает игры. А вот в файлах модификации, откуда вы взяли скрипты, эти файлы есть...
Т.е. необходимо как-то запаковать обратно все файлы, что были в архиве исходников, поменяв там файлы Gothic.dat и OU.bin?
 

alexeich2019

Участник форума
Регистрация
28 Июн 2019
Сообщения
191
Благодарности
73
Баллы
175
KirTheSeeker, можно добавить свой .mod файл, как следующий файл в цепи со своим инишником. Т.е. условно, есть модификация, где есть файл моделей, файл анимаций и файл скриптов(просто пример). Выглядеть это будет так:
SomeMod_Models.mod SomeMod_Anims.mod SomeMod_Scripts.mod

Вы же берете инишник от этой модификации, меняете название и добавляете свои измененные скрипты.
SomeMod_Models.mod SomeMod_Anims.mod SomeMod_Scripts.mod MyMod_Scripts.mod

В итоге получится что? Готику загрузит ресурсы из файлов SomeMod_Models, SomeMod_Anims, SomeMod_Scripts и последним загрузит ваш файл со скриптами - MyMod_Scripts.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.301
Благодарности
4.636
Баллы
625
В результате мне удалось создать новые файлы Gothic.dat и OU.bin, но упаковка через новый VDFS tool НЕ удалась, поскольку я НЕ нашёл там вкладку Builder/Создать.
В теме явно сказано, что программа работает как классический архиватор. Перетащи в нее файлы или нажми Import и нажми Save. Нет в ней разделения на view/build.
 

KirTheSeeker

Участник форума
Регистрация
18 Авг 2017
Сообщения
1.928
Благодарности
558
Баллы
275
alexeich2019, можно поподробнее?
В G2a_NR_ScriptPatch_v26.ini прописано:

[FILES]

VDF=g2a_nr_scriptpatch_v26.mod g2a_nr_scriptpatch_v26_autoscale.mod и т.д.

Мне необходимо закинуть в папку с игрой все mod-файл неоф.обновления, затем повторить все те же операции, что и ранее, но дописать к этому списку MyMod_Scripts, переименовав и G2a_NR_ScriptPatch_v26.ini в MyMod.ini?

Так, данный вариант сработал. Благодарю.
 
Последнее редактирование:

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
Когда же наконецто это бред из голов готоманов уйдет, что компилить спейсером это бредятина полная? Имена материалов как ты не настраивай в спейсере, всеравно не поможет, модели компилятся лучше всего - игрой. в спейсере куча всякого дерьма лишнего.
 

Scarecrow

Участник форума
Регистрация
11 Авг 2014
Сообщения
162
Благодарности
85
Баллы
220
Подскажите, а можно ли как то в спейсере увеличить дистанцию прорисовки объектов? А то только перед самым носом появляются.
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.407
Благодарности
3.232
Баллы
525
Попробуй поиграться параметрами, прописанными у объектов zCZoneVobFarPlaneDefault и zCZoneZFogDefault в игровом мире.
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
Когда же наконецто это бред из голов готоманов уйдет, что компилить спейсером это бредятина полная? Имена материалов как ты не настраивай в спейсере, всеравно не поможет, модели компилятся лучше всего - игрой. в спейсере куча всякого дерьма лишнего.
наверное тогда, когда будет нормальный инструмент, а-ля ГотикСурсер, без всякого дерьма лишнего... *pointing*
но таки-да, там есть/были некоторые полезности... :)
 

Czudak

Участник форума
Регистрация
29 Июн 2019
Сообщения
182
Благодарности
96
Баллы
175
Alright. So the previous issue was solved with the presented Union patch that allowed the hero to process perceptions, while the other part of the solution was to look up LeGo's Bloodsplats scripts (as my homie suggested).

Now, I have another problem. I made a function that reduces Strength and Dexterity of the hero at the end of ZS_Dead function (but before all those B_Clear_XXX other functions there) if the slain monster was a Swamp Zombie (via merit it's supposed to be a poison effect and shit).

Daedalus:
        if((self.aivar[AIV_MM_REAL_ID] == ID_SWAMPZOMBIE))
        {
            if(Npc_GetDistToNpc(self,other) < 350)
            {
                if(Npc_IsPlayer(other))
                {
                    if((RingOfPurification == TRUE) || (PlayerIsTransformed == TRUE))
                    {
                        other.attribute[ATR_HITPOINTS] -= 1;
                    }
                    else
                    {
                        other.attribute[ATR_STRENGTH] -= MirePoisonStack;
                        other.attribute[ATR_DEXTERITY] -= MirePoisonStack;
                        Wld_PlayEffect("CONTROL_LEAVERANGEFX",other,other,0,0,0,FALSE);
                        Wld_StopEffect("CONTROL_LEAVERANGEFX");
                        PrintScreen("You got covered in poison!",-1,-1,Font_Screen,2);
                        MirePoison += 1;
                    };
                };
            };
        };

However, it, of course, doesn't work as intended. The reduction to attributes applies and happens, but the weapons stay equipped and/or wielded even if the hero's reduced attributes would prevent them from equipping and/or wielding them in the first place. Only after manually unequipping them from the inventory, the requirements rules deny from equipping them back due to the reduced values of attributes, as expected.

I tried a plethora of functions, including AI_UnequipWeapons, Npc_ClearAIQueue, custom functions that recognize and/or compare the equipped and/or wielded weapons and their requirements, but in every case, the weapons just stay on.

I guess you can't call from some NPC function to strip bare another NPC just like that, especially if they are possibly in the middle of an animation sequence and especially if they are the hero controlled by the player. Is this another case of hero being unable to proceed perceptions? And if no, any hints on how to solve this?
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.407
Благодарности
3.232
Баллы
525
And if no, any hints on how to solve this?
Попробуй получить ссылки класса C_ITEM на экипированное оружие с помощью функций Npc_GetEquippedMeleeWeapon и Npc_GetEquippedRangedWeapon. Далее попробуй удалить предмет по полученной ссылке и создать его в инвентаре ГГ. Не факт, что это сработает при наличии такого же предмета в инвентаре ГГ. Но попробовать можно.

Для получения ссылки на оружие, которое ГГ держит в руках, существует функция Npc_GetReadiedWeapon. Правда, в этом случае было бы правильным, чтобы оружие (и стрела/болт) выпадало из рук на землю, а не убиралось в инвентарь. Возможно, этого получится добиться с помощью проигрывания специальной анимации. :oops:
 

Czudak

Участник форума
Регистрация
29 Июн 2019
Сообщения
182
Благодарности
96
Баллы
175
Попробуй получить ссылки класса C_ITEM на экипированное оружие с помощью функций Npc_GetEquippedMeleeWeapon и Npc_GetEquippedRangedWeapon. Далее попробуй удалить предмет по полученной ссылке и создать его в инвентаре ГГ. Не факт, что это сработает при наличии такого же предмета в инвентаре ГГ. Но попробовать можно.

Для получения ссылки на оружие, которое ГГ держит в руках, существует функция Npc_GetReadiedWeapon. Правда, в этом случае было бы правильным, чтобы оружие (и стрела/болт) выпадало из рук на землю, а не убиралось в инвентарь. Возможно, этого получится добиться с помощью проигрывания специальной анимации. :oops:

I mean, I thought about these you mentioned as well. But it's not the core issue. The core issue is that even with AI_UnequipWeapons(hero); put right after the attributes reduction with or without any form of Helper Get Instance and/or Helper Validation and combination of functions, hero does not unequip the weapons at all.

I would be fine with the weapons landing in the inventory instead on the ground, but I can't get the hero to unequip weapons in the first place whatsoever. I don't know, maybe it's connected to body or Zen state(s)?
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.407
Благодарности
3.232
Баллы
525
Эта функция действует на ГГ (hero). Во всяком случае, на движке Г1 (Gothic 1). Но при её работе деэкипируется (UnEquip) сразу всё оружие. В твоём случае нужно деэкипировать либо оружие ближнего боя, либо оружие дальнего боя. И только в отдельных, более редких, случаях требуется, чтобы было деэкипировано и то, и другое.

Но я писал о использовании функций удаления предмета Npc_RemoveInvItem и создания такого же предмета в инвентаре CreateInvItem. Если это сработает само по себе, то нужно ещё убедиться, что при удалении предмета убираются бонусы, полученные при его экипировке.
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.190
Благодарности
3.373
Баллы
485
ElderGamer проблема в том, что все эти команды не будут работать с оружием, которое находится в руках ГГ. Npc_GetReadiedWeapon получит нужное оружие, но с ним ничего нельзя будет сделать, пока оно не окажется на поясе или за спиной. Можно попробовать сначала сделать это принудительно командой AI_RemoveWeapon(hero).
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.407
Благодарности
3.232
Баллы
525
эти команды не будут работать с оружием, которое находится в руках ГГ
Ты имеешь в виду удаление предмета не будет работать для оружия в руках? В мод-фиксе реализована смена заклинаний у скелетов магов через удаление руны и создание её в инвентаре. Для оружия ближнего и стрелкового оружия не проверял, насколько это работает.
 
Сверху Снизу