XEPOMAHT
Posts: 2356
|
(27.09.2019 01:47)Berserker Wrote: В буфере по результату её выполнения должна быть отформатированная строка. Похоже на легальный относительный путь.
И... значит эта команда не может отформатировать строку под новую версию ЭРА (я в Си ничего не понимаю, если что):
Code:
int artifact = atoi(ffd.cFileName);
???
|
|
27.09.2019 02:51 |
|
XEPOMAHT
Posts: 2356
|
(27.09.2019 02:59)Berserker Wrote: Загрузи, пожалуйста, пример нерабочего плагина и тестовый конфиг к нему из одного или нескольких файлов. Мне также важно знать, как ты определяешь, что файлы не загружены.
Мод ERA+, внутри - феаноровский плагин emerald_v202a.era.
Проверка: в папке data/artifacts лежат конфиги артефактов, задающие им свойства. Например я даю герою артефакт №249 - посох колдуна (даёт все заклинания 4-го уровня). Сразу должны появиться заклы в книге с заклинаниями героя, в ERA 2.7.7 заклинания появляются (т.е. конфиг грузится и обрабатывается), а в ERA 2.8.X - уже нет.
|
|
27.09.2019 03:10 |
|
Berserker
Posts: 16657
|
|
27.09.2019 03:28 |
|
helgtla
Posts: 302
|
Berserker указанный Вами способ не помогает. Всё так же при завершении композиции во время боя- только ALT+TAB для рестарта мелодии.
Карта-мод: STALKER
|
|
27.09.2019 03:30 |
|
Berserker
Posts: 16657
|
XEPOMAHT, проверил пару байт патча emerald.bin — применён. Можешь указать, байты какого патча по-твоему перезаписаны? Думаю, дело в том, что МоР в патчах опирался на старый код ВоГа, где у функций были логирующие пролог и эпилог. Вместо них сейчас NOP-ы. MoP менял в таких местах адрес вызова функций, не прописывая начальный опкод CALL.
..конкретно в патче emerald.bin, который применяется, я проблем не вижу.
https://yadi.sk/i/mbx8gIxD3VWCpg
Может быть, всё-таки один из феаноровских плагинов тоже на воговские пролог/эпилог где был завязан. Точно не скажу. Артефакт добавляется, отображается, но даёт Армаггеддон.
Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
|
|
27.09.2019 03:54 |
|
Berserker
Posts: 16657
|
XEPOMAHT, понял! Отлично! )) Для этого и есть явное деление на BeforeWoG и AfterWoG.
Вот порядок загрузки плагинов и применения патчей:
Code:
:
LoadPlugins('era');
EventMan.GetInstance.Fire('OnBeforeWoG', NO_EVENT_DATA, 0);
BinPatching.ApplyPatches(GameDir + '\' + PATCHES_PATH + '\BeforeWoG');
InitWoG;
EraInit;
LoadPlugins('dll');
EventMan.GetInstance.Fire('OnAfterWoG', NO_EVENT_DATA, 0);
BinPatching.ApplyPatches(GameDir + '\' + PATCHES_PATH + '\AfterWoG');
Так как у плагина старое расширение dll, то грузится он после применения двоичных патчей из BeforeWoG и после загрузки других плагинов с расширением era. Как раз для совместимости.
Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
|
|
27.09.2019 04:05 |
|