Wake of Gods Forum | Форум Во Имя Богов

Full Version: Ошибки, баги и недочёты WoG 3.58f
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(06.09.2023 09:16)XEPOMAHT Wrote: [ -> ]
(06.09.2023 06:55)Barin Wrote: [ -> ]В чём проблема?

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

Твоя проблема в старой версии библиотеки zvslib1.dll. Используй современную платформу ERA, где с помощью плагина wog_native_dialogs.era воговские диалоги выводятся средствами движка самой игры, а не zvslib1.dll.
Да, до сих пор делаю мод на Эре 2.46. Сегодня займусь переносом.
Быть может уйдёт ещё одна давняя проблема: некоторые видеоролики (заставки перед кампаниями) созданные через Smacker Tools - в игре буквально рассыпались и приводили к вылету. А если делал такой ролик без последовательности кадров, т.е 1 картинка как в классических кампаниях - всё работает. Возможно тоже что-то связано с устаревшими библиотеками.

Спасибо!
Ошибка бонуса опыта существ для члена "модификатор", где имеем некорректный тип данных (знаковый) для структуры:
(Click to View)
Поле "модификатор типа" может иметь значение >127, например, в самом файле "crexpbon.txt" мы имеем строку:
Code:
151    L    #200    0    5    10    15    20    25    30    35    40    45    50    Diamond Dragon: Deflect 100% chance 5%/Rank
где 200 идёт в char Mod.
Т.е. значение > 127 нивелирует способность полностью

Либо ставить лоухук на абилку и проверку значения по адресу 0x71C7AB, либо патчить тип данных в двумерном массиве опыта существ CrExpBon 0x847D98[256][20] - честно, не знаю, как меняется тип данных в exe, так что предложил это. Вероятно, есть решение более элементарное и корректное.
Либо понять, что asm правит миром машин96-copy и
меняем movsx на movzx по адресам:
0071C7A8
0071C7B4
0071C7D3 (ну, мало ли).
   -> продолжаем искать баги WoG

ERM решение на скорую руку (Click to View)
WoG - ошибка расчёта бонуса защиты, если оригинальное понижение было до 0 единиц (Click to View)

Пример бага: (Click to View)

решение: (Click to View)
Reference URL's