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

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

Готика 2: НВ Неофициальное обновление для Г2 НВ

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.136
Благодарности
3.246
Баллы
485
  • Первое сообщение
  • #1
Неофициальное обновление для игры "Готика 2: Ночь Ворона" представляет собой модификацию, направленную на исправление многочисленных ошибок и недоработок игры различной степени критичности. Данное обновление не включает новые квесты или глобальные изменения баланса и рекомендуется всем, кто хочет играть в Г2НВ без багов.
Разработка обновления ведется с 2005 года и по сегодняшний день. Камрад Efectivo (aka Нефариус) русифицировал патч от Fizzban и внес несколько дополнительных исправлений (так что получилась не русификация, а самостоятельный продукт на его основе).
В неофициальном обновлении камрад Dimus значительно расширил список исправлений и добавил некоторые улучшения. Дальнейшая работа над обновлением продолжена силами D36.
Также в данную сборку включены исправленные миры от Kvincius (Рудниковая долина, Яркендар, Хоринис и Ирдорат), исправленные шрифты от N1kX, неофициальное исправление русской озвучки от Dimus и полезные плагины для Union от Slavemaster (zBugFixes, zMiscUtils, zPicklockAnis, zTorchControl и другие).

Текущая версия:
29 от 14.08.2023

Ссылки:
Установщик модификации (76.5 МБ);
Версия для Мастерской Steam;
Исходники скриптов и архив релизов.

Установка:
Запустить установщик обновления, указать каталог с установленной игрой и выбрать набор устанавливаемых компонентов.
Внимание: Для того, чтобы все изменения вступили в силу, после установки обновления нужно начать новую игру!

Загрузка текста...

Удаление:
Удалить данное обновление можно через раздел "Программы и компоненты" в панели управления или запустив исполняемый файл G2a_NR_ScriptPatch_v29_uninstall.exe в каталоге с установленной игрой.

Примечания:
1. Для предотвращения возможных конфликтов с различными модами обновление устанавливается в формате модификации, поэтому для её работы необходимо наличие мод-стартера Player Kit. Также настоятельно рекомендуется установить последнюю версию Union;
2. Каждая версия неофициального обновления запускается через GothicStarter.exe отдельно и использует собственные папки сохранений. Удаление разных версий из панели управления также происходит раздельно;
3. При возникновении проблем с запуском встроенных плагинов рекомендуется скачать и установить этот набор vcredist.

Начало новой игры обязательно. Не поддерживаются сохранения, сделанные в оригинале, в любом другом моде или в любой предшествующей версии неофициального обновления. Игнорирование данного предупреждения может привести к непредсказуемым последствиям: от невозможности продвижения по сюжету до вылетов.
Для тестирования доступна предварительная сборка 30 версии неофициального обновления. Подробности здесь.
 
Последнее редактирование:

Boockman

Участник форума
Регистрация
28 Апр 2015
Сообщения
1.524
Благодарности
465
Баллы
300
Тут не всё так просто. Неписи, как правило, начинают атаковать ГГ не без причины. И именно это имели в виду разрабы, вводя такую примитивную реакцию стражи на драки. Раз бьют, значит ГГ виноват. И это, вроде бы, неправильно, ведь стража должна уважать статус ГГ. Но как быть, если ГГ стал магом Огня, а потом начал "творить добро направо и налево". Маг, убивший горожанина на глазах у ополченца, не должен быть наказан? Или таки должен? Если да, то как?
Так одно дело, если на глазах у стражи было совершено преступление, а другое - если на ГГ напали, например, вышибала в портовой таверне, потому, что тот отказался ему платить, или Атилла после встречи - тут ГГ тоже типо виноват априори? Причина-то есть, но насколько она веская в рамках закона и почему виноват один ГГ?
 

Korelius

Участник форума
Регистрация
5 Дек 2021
Сообщения
9
Благодарности
3
Баллы
35
Тут не всё так просто. Неписи, как правило, начинают атаковать ГГ не без причины. И именно это имели в виду разрабы, вводя такую примитивную реакцию стражи на драки.
Весьма спорно. Навскидку, я могу вспомнить 5 случаев, когда НПС нападают на ГГ (не считая одержимых, когда мы говорим о маге).
1. Мо и попытка вытрясти из ГГ деньги.
2. Охранник портового склада, который пытается остановить ГГ.
3. Фернандо (хотя этот, может быть, нападает как раз только когда одержим, не помню уже, так что, возможно, он тут не совсем в тему).
4. Атилла при попытке убить ГГ за подставу воров.
5. Ханна, которая стала нападать в неоф обновлении за уничтожение воров.

И вот в первых трех случаях стража исправно помогает именно ГГ и начинает атаковать НПС, если он бьет ГГ у них на глазах. Я проверил в т.ч. охранника склада, если его выманить на стражу - стража его убивает. Сам я во всех случаях НПС не трогал вообще, даже оружия не доставал и позволял им бить первыми. Стража почему-то помогает конкретно именно Ханне и Атилле, т.е. ворам. Я не знаю, как это работает в Готике, если бы речь шла об играх TES, я бы предположил, что фракция стражников и фракция воров в игре обозначены как союзные или типа того и из-за этого возникают такие ситуации, но здесь я без понятия в чем дело. Во всех случаях тестил еще нейтралом, только охранника склада выманивал на стража уже став учеником Константино (не знаю, важно это или нет, но на всякий пусть будет).

То есть во всех пяти приведенных выше случаях, неписи нападают на ГГ как раз за то, что ГГ повел себя либо "нейтрально", как в случае с Мо, либо условно хорошо (в выпиливании Гильдии воров и помощи властям нет ничего плохого), т.е. ГГ ни в одном из данных пяти случаев не подвергается атаке за плохое поведение. Во всех пяти случаях ГГ либо не виноват вообще, либо виноват в том, что он - хороший мальчик. Спорная ситуация только с охранником склада, но даже в этом случае стража помогает именно ГГ. И почему конкретно в ситуациях с Ханной и Атиллой возникают проблемы - совершенно непонятно с точки зрения каких-то внутриигровых обоснований, но дело точно не в логике "если на ГГ напали, значит ГГ - плохой", т.к. практически всегда ГГ как раз именно хороший. Это больше похоже на какие-то проблемы со скриптами, хотя тут я профан полный и не мне судить.

Еще заметил, что при сохранении почему-то перепутаны буквы Z и Y на клавиатуре. То есть если вы в названии сохранения попытаетесь использовать букву Z, вместо нее появится Y и, соответственно, наоборот. Не знаю, было это или нет, но на всякий случай оставлю информацию тут.
 
Последнее редактирование:

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.136
Благодарности
3.246
Баллы
485
Отрывок кода с логикой реакции ополчения на драку:
Daedalus:
func void B_AssessFightSound()
{
    ...
    if(((other.aivar[AIV_ATTACKREASON] == AR_NONE) || (other.aivar[AIV_ATTACKREASON] == AR_KILL)) && ((victim.aivar[AIV_ATTACKREASON] == AR_NONE) || (victim.aivar[AIV_ATTACKREASON] == AR_KILL)) && (self.guild == GIL_MIL))
    {
        if((Npc_GetAttitude(self,other) == ATT_FRIENDLY) && (Npc_GetAttitude(self,victim) != ATT_FRIENDLY))
        {
            B_Attack(self,victim,AR_GuardStopsFight,0);
        }
        else if((Npc_GetAttitude(self,victim) == ATT_FRIENDLY) && (Npc_GetAttitude(self,other) != ATT_FRIENDLY))
        {
            B_Attack(self,other,AR_GuardStopsFight,0);
        }
        else if(Npc_IsPlayer(other))
        {
            B_Attack(self,victim,AR_GuardStopsFight,0);
        }
        else if(Npc_IsPlayer(victim))
        {
            B_Attack(self,other,AR_GuardStopsFight,0);
        }
        else
        {
            B_Attack(self,other,AR_GuardStopsFight,0);
        };
        return;
    };
Дружественность ополчения зависит от текущей гильдии атакующего и жертвы. Если гильдии атакующего и жертвы одинаковы, то по умолчанию ополчение будет атаковать атакующего. Мо и охранник склада - нейтралы. Фернандо, Аттила и Ханна - горожане.
Плюс есть личное отношение каждого ополченца к ГГ, которое можно испортить.

Еще заметил, что при сохранении почему-то перепутаны буквы Z и Y на клавиатуре. То есть если вы в названии сохранения попытаетесь использовать букву Z, вместо нее появится Y и, соответственно, наоборот.
У меня всё в порядке.
 

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.969
Благодарности
946
Баллы
275
Daedalus:
    // ------------------------------------------------------------------
    // ------ Angriff aus Dialog heraus (mit AR_None oder AR_Kill) ------
    // ------------------------------------------------------------------
    if ((other.aivar[AIV_ATTACKREASON] == AR_NONE) || (other.aivar[AIV_ATTACKREASON] == AR_KILL))
    && ((victim.aivar[AIV_ATTACKREASON] == AR_NONE) || (victim.aivar[AIV_ATTACKREASON] == AR_KILL))
    && (self.guild == GIL_MIL)                        //(!) NUR Miliz-Wache schlichtet diese Art Kдmpfe
    {
        // ------ Freund helfen (other) ------
        if (Npc_GetAttitude(self, other) == ATT_FRIENDLY)
        && (Npc_GetAttitude(self, victim) != ATT_FRIENDLY)
        {
            B_Attack (self, victim, AR_GuardStopsFight, 0);
            return;
        }
     
        // ------ Freund helfen (victim) ------
        else if (Npc_GetAttitude(self, victim) == ATT_FRIENDLY)
        &&         (Npc_GetAttitude(self, other) != ATT_FRIENDLY)
        {
            B_Attack (self, other, AR_GuardStopsFight, 0);
            return;
        }
             
        // ------ Beides Freunde ODER beides keine Freunde ------
        // ------ UND HIER AR_None -------
        else
        {
            if (Npc_IsPlayer(other)) //Spieler helfen bei NSC-AR None
            {
                B_Attack (self, victim, AR_GuardStopsFight, 0);
                return;
            }
            else if (Npc_IsPlayer(victim)) //Spieler helfen bei NSC-AR None
            {
                B_Attack (self, other, AR_GuardStopsFight, 0);
                return;
            }
            else //beides keine Player -> Auf jeden Fall Tдter angreifen!
            {
                B_Attack (self, other, AR_GuardStopsFight, 0);
                return;
            };
        };

D36 а если victim это герой, то где происходить запись для героя aivar[AIV_ATTACKREASON] = AR_NONE или aivar[AIV_ATTACKREASON] = AR_KILL? в B_Attack ?
 
Последнее редактирование:

Slavemaster


Модостроитель
Регистрация
10 Июн 2019
Сообщения
1.053
Благодарности
1.845
Баллы
290
Еще заметил, что при сохранении почему-то перепутаны буквы Z и Y на клавиатуре. То есть если вы в названии сохранения попытаетесь использовать букву Z, вместо нее появится Y и, соответственно, наоборот. Не знаю, было это или нет, но на всякий случай оставлю информацию тут.
В Gothic.ini надо поменять параметр
INI:
keyboardLayout=00020409
 

Effort

Участник форума
Регистрация
3 Янв 2016
Сообщения
187
Благодарности
55
Баллы
175
Еще заметил, что при сохранении почему-то перепутаны буквы Z и Y на клавиатуре. То есть если вы в названии сохранения попытаетесь использовать букву Z, вместо нее появится Y и, соответственно, наоборот. Не знаю, было это или нет, но на всякий случай оставлю информацию тут.
Причина где-то в этом районе:
eng.png
ger.png
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.349
Благодарности
3.191
Баллы
525
@D36 а если victim это герой, то где происходить запись для героя aivar[AIV_ATTACKREASON] = AR_NONE или aivar[AIV_ATTACKREASON] = AR_KILL? в B_Attack ?
Насколько я понимаю, у ГГ эта аиварина всегда равна нулю, то есть AR_NONE.

Отрывок кода с логикой реакции ополчения на драку:
В случае с атакой Ханны можно, наверное, ввести новый идентификатор причины атаки AR_CriminalAttackedToKill, назначить его Ханне в диалоге, доработать функцию C_NpcHasAttackReasonToKill с учётом нового идентификатора и проверять его в функции B_AssessFightSound. Ополчение должно атаковать персонажа (атакующего или жертву атаки, возможно, только атакующего), если у него установлена такая причина атаки.

Весьма спорно. Навскидку, я могу вспомнить 5 случаев, когда НПС нападают на ГГ
И все эти атаки происходят после диалога. Я же говорил о реакции на поступки ГГ (незаконное проникновение в жилище, кража, драка и т. д.).
 

N1kX


Модостроитель
Регистрация
13 Ноя 2009
Сообщения
5.916
Благодарности
5.365
Баллы
910
Все эти добавления реакции полная лажа, пока есть баг с тем, что любого НПС можно вывести из зоны агра других нпс делая отход назад, то есть бежать надо лицом к атакующему НПС, а не спиной к нему. В таком случае НПС никогда не скажет стража/тревога и пр.
 

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.969
Благодарности
946
Баллы
275
В случае с атакой Ханны можно
есть вариант выставить хорошие отношений ГГ с ментами при сдаче квеста Лорду Андре.так же отношения с ментами можно улучшить после того как герой становится подмастерьем. или просто добавить проверки на это в сам кусок кода.

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

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.351
Благодарности
6.346
Баллы
1.595
ведь герой по основному сюжету становится помощником Хагена даже будучи наёмником, а значит менты должны учитывать и это.
Ну помнишь мы с тобой "отодвинься" улучшали))
Там ведь это тоже учитывали, и ментам должно быть глубочайше побарабану если ГГ наем... Он для них потенциальный враг, и в любой не понятной ситуации менты будут наезжать на наемника)
 

MW 7


Модостроитель
Регистрация
26 Мар 2004
Сообщения
1.969
Благодарности
946
Баллы
275
Он для них потенциальный враг

ну мы же крутили сначала просто гильдии. а к сюжету и квестам мы в самом конце только подошли и у нас там были какие то наработки по сюжетным вехам:)
 
Последнее редактирование:

Boockman

Участник форума
Регистрация
28 Апр 2015
Сообщения
1.524
Благодарности
465
Баллы
300
Я же говорил о реакции на поступки ГГ
А кто говорил о реакции на поступки? Если ГГ неудачно ворует, первым начинает драку, проникает в чужой дом без разрешения и так далее - на него должно вешаться что-то вроде "флага", и тогда неписи-стражники должны распознавать в нем правонарушителя со всеми вытекающими. Но если преступления не было а герой атакован - какого черта они его не защищают?
 
Сверху Снизу