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

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в конкурсе "Таинственные миры" 2024!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык

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

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.125
Благодарности
3.218
Баллы
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. Начало новой игры обязательно. Не поддерживаются сохранения, сделанные в оригинале, в любом другом моде или в любой предшествующей версии неофициального обновления.
Игнорирование данного предупреждения может привести к непредсказуемым последствиям: от невозможности продвижения по сюжету до вылетов.
Для тестирования доступна предварительная сборка 30 версии неофициального обновления. Подробности здесь.
 
Последнее редактирование:

N1kX


Модостроитель
Регистрация
13 Ноя 2009
Сообщения
5.846
Благодарности
5.274
Баллы
910
@D36:
3. Текстовая строка NAME_Currency прописана в Text.d, но я не нашёл в скриптах её использование.

Добавление пробела в после "Золото: " не работает?

P.S. Traven снизу подтвердил, можно и таким образом исправить.
 
Последнее редактирование:

heckler

Участник форума
Регистрация
25 Апр 2017
Сообщения
413
Благодарности
109
Баллы
210
Охранники и заключённые во второй главе, по телам которых надо идти чтобы найти Маркоса - живы.
Clipboard-1.jpg
Dimus написал(а):
В главе 2 Милтен станет обучать ГГ 2 кругу магии только если тот будет знать 1 круг.
Ему же добавили возможность обучения на случай если гг из-за нехватки экспы например, не сделал этого в монастыре в первой главе. Логично было бы чтоб он обучал сначала ещё и первому, а так смысла в нём нет.
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.154
Баллы
915
Эти персонажи должны быть убиты триггер-скриптом, который срабатывает при первом входе в Миненталь. Зона действия этого триггера находится недалеко от выхода из заброшенной шахты. Проявлением срабатывания скрипта является показ видеоролика нападения драконов на замок.

Я не собираюсь подстраивать игру под глупость игроков. Если ты не изучил 1-й круг - возвращайся в монастырь к Парлану.
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.336
Благодарности
3.181
Баллы
525
Эти персонажи должны быть убиты триггер-скриптом, который срабатывает при первом входе в Миненталь.
А почему не в стартапе? Разрабы могли осознанно разгрузить стартап, перенеся часть действий в другую функцию. Но сейчас это уже не актуально, как мне кажется.
 

heckler

Участник форума
Регистрация
25 Апр 2017
Сообщения
413
Благодарности
109
Баллы
210

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.154
Баллы
915
Но ведь изначально была возможность выучить два круга:confused:
Нет, только 2-й круг. Поэтому у Мильтена нет диалогов, связанных с обучением 1-му кругу. Я всего лишь исправил ошибку, позволявшую изучить 2-й круг без изучения 1-го круга.
 

Traven

Участник форума
Регистрация
16 Июн 2015
Сообщения
40
Благодарности
39
Баллы
175
Да, это разумно, научить магии в принципе по идее сложнее чем просто повысить круг.
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.125
Благодарности
3.218
Баллы
485
Тексты "Книги платежей" и "Сальной записки" вылазят за поля:
2.jpg 1.jpg

Описание предмета "Вызов Куарходрона" подразумевает свиток, предлагаю сменить визуал предмета с записки на свиток (ItWr_Scroll_02.3ds):
3.jpg

Уважаемый Dimpl32 смог исправить отсутствие текстур в пещере дракона-нежити в Ирдорате. Прикрепляю очередную версию исправленного зена со всеми прошлыми правками.
2.jpg

- Ледяные големы у входа в Новый лагерь бессмертны до получения квеста от Сильвио.
К дракону можно пройти другим путем, минуя Сильвио и не получая его квест. После смерти дракона Сильвио становится враждебным и атакует игрока: в этом случае големы останутся бессмертными навсегда. Есть ли вообще смысл в этом бессмертии?

- Будут удаляться руны из инвентарей всех убитых и удалённых скриптами NPC
При выходе из комнаты с порталом в Яркендаре гарантированно следует вылет игры с ошибкой stack overflow. В проеме находится триггер, вызывающий функцию enter_addonworld_firsttime_trigger_func, которая в свою очередь убивает нескольких сюжетных персонажей, среди которых Ангус. При попытке посмертной очистки его инвентаря от рун (B_ClearRuneInv) и происходит вылет. Удалось исправить, добавив его в исключения к Архолу, брату Орика и полковнику орков. Прикрепляю сохраненку перед триггером. Что с Ангусом не так - на первый взгляд не ясно.
 

Вложения

  • savegame1.rar
    2,1 MB · Просмотры: 44
  • DRAGONISLAND.rar
    3,9 MB · Просмотры: 49
Последнее редактирование:

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.154
Баллы
915
@D36:
Спасибо тебе за информацию, добавлю в следующую сборку новый зен Ирдората, а также исправления текстов и визуала свитка вызова Куарходрона. Вопрос: используются ли увеличенные шрифты или их масштабирование из SystemPack?
Что ты предлагаешь сделать с ледяными големами в случае, если ГГ не возьмёт задание у Сильвио? Снять с них бессмертие после гибели ледяного дракона?
Абсолютно непонятно, почему вылет в Яркендаре связан с очисткой от рун инвентаря пирата Ангуса, у которого не должно быть таких предметов. Может быть, у тебя произошёл какой-то сбой при инициализации этой локации?
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.125
Благодарности
3.218
Баллы
485
Вопрос: используются ли увеличенные шрифты или их масштабирование из SystemPack?
Используется только масштабирование, но записки и книги выглядят так же после его выключения.

Что ты предлагаешь сделать с ледяными големами в случае, если ГГ не возьмёт задание у Сильвио? Снять с них бессмертие после гибели ледяного дракона?
Предлагаю или убрать бессмертие вообще или снимать его после гибели ледяного дракона.

Абсолютно непонятно, почему вылет в Яркендаре связан с очисткой от рун инвентаря пирата Ангуса, у которого не должно быть таких предметов.
- Для всех пиратов (кроме Ангуса и Хэнка) генерируется амбиентный инвентарь.
Может быть, из-за этого? С каждой смертью Ангуса его инвентарь всё равно был разным (вызывала его читом для проверки триггера после исправления).

Может быть, у тебя произошёл какой-то сбой при инициализации этой локации?
Такой же вылет происходил, даже если начать новую игру и пройти в Яркендар через портал, добравшись туда читами.


Похоже, что дополнительная текстура неофициального обновления STATUS_BACK_NEW-C.TEX создана на основе существующей и не слишком качественно скомпилированной текстуры игры. Держи мой вариант, переделанный из оригинального TGA-исходника.
 

Вложения

  • STATUS_BACK_NEW-C.rar
    15,3 KB · Просмотры: 67
Последнее редактирование:

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.154
Баллы
915
Может быть, из-за этого? С каждой смертью Ангуса его инвентарь всё равно был разным (вызывала его читом для проверки триггера после исправления).
Ничего не понимаю...:confused: Генерация амбиентного инвентаря у Ангуса и Хэнка должна быть отключена ещё в скриптпатче Efectivo. Каким образом она снова попала в скрипты неофициального обновления?:eek:

Дополнение:
1. Генерация амбиентного инвентаря у Ангуса и Хэнка никак не влияет на безлоговый вылет по переполнению стека.
2. Переработал алгоритм таким образом, чтобы очистка инвентаря от рун происходила только у тех существ, которые действительно используют магию - этот вылет не исчез.
3. Зато этот вылет исчезает, если добавить костыль с введением исключения для Ангуса. Чудеса, да и только!*around the head*

P.S.: Перезалил исправленную сборку обновления (от 25.11.2017). Сэйвы должны быть совместимыми при условии, если вы начинали новую игру на сборке от 18.11.2017.
 
Последнее редактирование:

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.336
Благодарности
3.181
Баллы
525
2. Переработал алгоритм таким образом, чтобы очистка инвентаря от рун происходила только у тех существ, которые действительно используют магию - этот вылет не исчез.
Какой алгоритм используется? Стандартный, с перебором инстанций рун? Могу предложить альтернативный вариант с перебором ячеек инвентаря в категории рун, используемый сейчас в мод-фиксе. Думаю, движок Г2 этот алгоритм проглотит.
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.154
Баллы
915
Да, стандартный. Я добавил в него только исключения для Архола, полковника орков, брата Орика и костыльное для Ангуса.
 

heckler

Участник форума
Регистрация
25 Апр 2017
Сообщения
413
Благодарности
109
Баллы
210
Похоже что STATUS_BACK_NEW-C.tex от d36 не подгружается из g2a_nr_scriptpatch.mod
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.154
Баллы
915
Да, не подгружается, потому что в меню прописано использование текстуры STATUS_BACK-С.TEX - смотри скрипт Menu_Defines.d:
const string MENU_BACK_PIC = "menu_ingame.tga";
const string MENU_ITEM_BACK_PIC = "";
const string MENU_CHOICE_BACK_PIC = "menu_choice_back.tga";
const string MENU_SLIDER_BACK_PIC = "menu_slider_back.tga";
const string MENU_SLIDER_POS_PIC = "menu_slider_pos.tga";
const string MENU_INPUT_BACK_PIC = "";
const string MENU_KBDINPUT_BACK_PIC = "";
const string MENU_SAVELOAD_BACK_PIC = "menu_saveload_back.tga";
const string LOG_BACK_PIC = "log_back.tga";
const string LOG_VIEWER_BACK_PIC = "log_paper.tga";
const string STAT_BACK_PIC = "status_back.tga";
const string MENU_FONT_DEFAULT = "font_old_20_white.tga";
const string MENU_FONT_SMALL = "font_old_10_white.tga";
const string MENU_FONT_BRIGHT = "font_old_10_white_hi.tga";
const string LOG_FONT_DEFAULT = "font_old_10_white.tga";
const string LOG_FONT_VIEWER = "font_old_10_white.tga";
const string LOG_FONT_DATETIME = "font_old_10_white_hi.tga";
const string STAT_FONT_DEFAULT = "font_old_10_white.tga";

const int MENU_SLIDER_DX = 2000;
const int MENU_SLIDER_DY = 600;
const int MENU_SLIDER_YPLUS = 0;
const int MENU_CHOICE_DX = 2000;
const int MENU_CHOICE_DY = 350;
const int MENU_CHOICE_YPLUS = 120;
const int MENU_TITLE_Y = 1200;
const int MENU_START_Y = 2400;
const int MENU_START_SOUND_Y = 1800;
const int MENU_BACK_Y = 6500;
const int MENU_DY = 650;
const int MENU_INFO_X = 300;
const int MENU_INFO_Y = 7780;
Эта текстура используется в расширенном меню от D36:
const string MENU_BACK_PIC = "menu_ingame.tga";
const string MENU_ITEM_BACK_PIC = "";
const string MENU_CHOICE_BACK_PIC = "menu_choice_back.tga";
const string MENU_SLIDER_BACK_PIC = "menu_slider_back.tga";
const string MENU_SLIDER_POS_PIC = "menu_slider_pos.tga";
const string MENU_INPUT_BACK_PIC = "";
const string MENU_KBDINPUT_BACK_PIC = "";
const string MENU_SAVELOAD_BACK_PIC = "menu_saveload_back.tga";
const string LOG_BACK_PIC = "log_back.tga";
const string LOG_VIEWER_BACK_PIC = "log_paper.tga";
const string STAT_BACK_PIC = "status_back_new.tga";
const string MENU_FONT_DEFAULT = "font_old_20_white.tga";
const string MENU_FONT_SMALL = "font_old_10_white.tga";
const string MENU_FONT_BRIGHT = "font_old_10_white_hi.tga";
const string LOG_FONT_DEFAULT = "font_old_10_white.tga";
const string LOG_FONT_VIEWER = "font_old_10_white.tga";
const string LOG_FONT_DATETIME = "font_old_10_white_hi.tga";
const string STAT_FONT_DEFAULT = "font_old_10_white.tga";

const int MENU_SLIDER_DX = 2000;
const int MENU_SLIDER_DY = 600;
const int MENU_SLIDER_YPLUS = 0;
const int MENU_CHOICE_DX = 2000;
const int MENU_CHOICE_DY = 350;
const int MENU_CHOICE_YPLUS = 120;
const int MENU_TITLE_Y = 1200;
const int MENU_START_Y = 2400;
const int MENU_START_SOUND_Y = 1800;
const int MENU_BACK_Y = 6500;
const int MENU_DY = 650;
const int MENU_INFO_X = 300;
const int MENU_INFO_Y = 7780;

const string MENU_TEXT_KEYS_HINT = "Вверх/Вниз - выбор, Enter - изменить, Delete - очистить";
const string NEEDS_RESTART = "Для вступления в силу необходимо перезапустить игру";
Т.к. я ради одного мелкого изменения не стану перезаливать сборку обновления, то можно сделать так: распаковать содержимое вложения из ответа №791 в каталог _work\Data\Textures\_compiled и переименовать файл в STATUS_BACK-С.TEX.
 
Последнее редактирование:

heckler

Участник форума
Регистрация
25 Апр 2017
Сообщения
413
Благодарности
109
Баллы
210

Вложения

  • Textures_Fonts.7z
    10,3 KB · Просмотры: 50

heckler

Участник форума
Регистрация
25 Апр 2017
Сообщения
413
Благодарности
109
Баллы
210
Режим трусости у противников включается при выборе ответа ГГ Ксардасу "Тогда давай побыстрее уносить отсюда ноги!"
Выбирал нейтральный вариант ("что мы можем сделать?"), трусость всё равно есть
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.154
Баллы
915
Да неужели, морра?*sarcasm* Потому что если в разговоре с Ксардасом не выбирать этот ответ, то значение переменной NpcWantToFlee останется равным нулю и с места боя будут убегать только овцы - смотри в исходниках скриптов реализацию функции C_WantToFlee(var C_Npc slf,var C_Npc oth).
 

heckler

Участник форума
Регистрация
25 Апр 2017
Сообщения
413
Благодарности
109
Баллы
210
Как снеппер напал на бандитов недалеко от Маркоса. После первой смерти они разбежались. Попробовал на обычной версии и там такого нет
 
Сверху Снизу