Объявления

Друзья, если не получается зарегистрироваться, напишите на почту vdv_forever@bk.ru.
Я оторву свою задницу от всех дел и обязательно Вас активирую! :smile10:
Добро пожаловать на геройский форум! :smile25:

Как создать плагин для HD мода

Герои Меча и Магии III: Возрождение Эрафии, Герои Меча и Магии III Дыхание Смерти, Герои Меча и Магии III Клинок Армагеддона, Герои Меча и Магии III Хроники Героев
offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 11 дек 2021, 19:17

AlexSpl писал(а):

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

Почему?

AlexSpl писал(а):

Что ж, 2021-й на дворе всё-таки. Поэтому (для чего и пишу) разбирать Adventure AI я не буду и поэтому Mobility AI кастовать тоже не научится.

Эх, а так хотелось. Но и на том спасибо.
Вернуться к началу

offlinewenwell  
имя: Roman
Новичок
Новичок
 
Сообщения: 15
Зарегистрирован: 29 мар 2019, 09:31
Пол: Мужчина
Поблагодарили: 16 раз.

Re: Как создать плагин для HD мода

Сообщение wenwell » 12 дек 2021, 08:24

AlexSpl, Извиняюсь что не в тему, я вам некоторое время назад отправлял сообщение в личку через этот форум. Вы его получали? А то вдруг оно в спам улетело из-за наличия ссылок, или ещё из-за чего.
Вернуться к началу

offlineХеромант  
имя: OL
Новичок
Новичок
 
Сообщения: 15
Зарегистрирован: 21 ноя 2021, 19:42
Пол: Мужчина
Поблагодарили: 2 раз.

Re: Как создать плагин для HD мода

Сообщение Херомант » 12 дек 2021, 19:26

AlexSpl писал(а):

но мне печально оттого, что плагин принят довольно прохладно. Это не говорит о качестве плагина, конечно, а о востребованности плагинов в целом. Что ж, 2021-й на дворе всё-таки.


Плагин "выстрелит", когда будет адаптирован под платформу ERA. Увы, все лавры достанутся автору адптации (скорее всего эти человеком будет Маячок). Конкретно в чистый SoD почти никто не играет, и вряд ли возможно увеличить интерес игроков к этой древности с помощью плагина на новые заклинания (это должно быть что-то покрупнее HoA или WoG, чтобы народ обратил внимание). Ну и пример из истории на реацию игроков на поддержку новых заклинаний в MoP 10 лет назад тоже можно было учитывать (тогда тоже всё прошло без особого внимания со стороны игроков - как тогда, так и сейчас игрокам не нужны глобальные изменения в игре).
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 13 дек 2021, 06:42

Цитата:
AlexSpl, Извиняюсь что не в тему, я вам некоторое время назад отправлял сообщение в личку через этот форум. Вы его получали? А то вдруг оно в спам улетело из-за наличия ссылок, или ещё из-за чего.

Получал, но пока ещё не смотрел.

Цитата:
Плагин "выстрелит", когда будет адаптирован под платформу ERA.

Мне кажется, что от платформы мало интерес зависит. Разве что с другим сетом заклинаний интерес появится.
Вернуться к началу

offlineАватара пользователя
void_17  
имя: имя
Ветеран
Ветеран
 
Сообщения: 548
Зарегистрирован: 25 апр 2021, 15:05
Откуда: Оттуда
Пол: Мужчина
Поблагодарили: 132 раз.

Re: Как создать плагин для HD мода

Сообщение void_17 » 13 дек 2021, 07:37

Цитата:
Плагин "выстрелит", когда будет адаптирован под платформу ERA.

Удваиваю. Плагин хороший и имеет интерес с точки зрения кода, но в общую классическую концепцпию игры(тобишь SoD) не подходит, а вот под Эру с пивом пошло бы.
Вернуться к началу

offlineprimitive  
имя: Тим
 
Сообщения: 8
Зарегистрирован: 17 апр 2021, 15:42
Пол: Мужчина
Поблагодарили: 1 раз.

Re: Как создать плагин для HD мода

Сообщение primitive » 13 дек 2021, 14:21

Цитата:
2) Сделать полную совесмтимость с SoD_SP, чтобы они вместе вживались без каких-либо проблем, конфликтов и вылетов. Во всяком случае по возможности сделать все, что зависит от NewSpells. Вероятно в SoD_SP тоже нужно будет вносить некоторые правки для полной совместимости с NewSpells.

AlexSpl писал(а):

Сделал пункты 2) - 4).


К сведению: наблюдал стабильный вылет (см спойлер) в начале нового хода когда в launcher-е NewSpells перед SoD_SP. При другом порядке загрузки - сначала NewSpells, потом SoD_SP - вылет исчез.
 "HD_CRASH_LOG.TXT"
[HOMM3 HD CRASH LOG]

Log
{
compability_dir = D:\Games2\HMM3_31\game\_HD3_Data\Compability\#com_ru
EXE_VERSION & SOD
No Files.ini for 'D:\Games2\HMM3_31\game\_HD3_Data\Common\Rus.Fonts'
No Files.ini for 'D:\Games2\HMM3_31\game\_HD3_Data\Compability\#com_ru'
No Files.ini for 'D:\Games2\HMM3_31\game\_HD3_Data\Packs\SoD_SP.1.19.3.8'
No Files.ini for 'D:\Games2\HMM3_31\game\_HD3_Data\Packs\NewSpells103'
got sulfur in nagabank. replace it to gems.

}

HOMM3 HD version: 5.2 R78
Time { 13.12.2021 15:45:05 }

Exception
{
Module: Heroes3 HD.exe
Adress: [ 0x005AA74A ]
Code: EXCEPTION_ILLEGAL_INSTRUCTION
Flags: 0x00000000
Information: -
}

Context { EAX: 0x001899F4, ECX: 0x04961300, EDX: 0x001898D8, EBX: 0x04961300, ESP: 0x00189834, EBP: 0x00189898, ESI: 0x0595BB44, EDI: 0x00007D00 }

Call stack
{
[ 0x0056B320 ] called from [ 0x0056BCD1 ]
[ 0x0056B710 ] called from [ 0x0042F6B5 ]
[ 0x0042F570 ] called from [ 0x0042EE3E ]
[ 0x0042EDD0 ] called from [ 0x0042E12E ]
[ 0x0042E0B0 ] called from [ 0x00526D58 ]
[ 0x00526C90 ] called from [ 0x00526A51 ]
[ 0x005266D0 ] called from [ 0x0052647F ]
[ 0x00526360 ] called from [ 0x00408B38 ]
? called from before [ HD_SOD.dll+0x1EC5E ]
[ HD_SOD.dll+0x1EB90 ] called from [ 0x006D2A8E ]
[ HD_SOD.dll+0x91280 ] called from [ 0x006D9C88 ]
[ HD_SOD.dll+0xAD100 ] called from [ 0x006DA8CF ]
? called from before [ 0x00189D9C ]
[ kernel32.dll+0x11462 ] called from [ patcher_x86.dll+0x1444B ]
[ 0x005FEAB0 ] called from [ 0x00456494 ]
? called from before [ 0x04F59EF4 ]
? called from before [ HD_SOD.dll+0x40843 ]
}
Последний раз редактировалось primitive 13 дек 2021, 16:24, всего редактировалось 1 раз.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 13 дек 2021, 14:28

Цитата:
К сведению: наблюдал стабильный вылет (см спойлер) в начале нового хода когда в launcher-е NewSpells перед SoD_SP. При другом порядке загрузки - сначала NewSpells, потом SoD_SP - вылет исчез.

Пункты 2) - 4) я выполнил из своего списка. Совместимость с SoD_SP пока не рассматривалась, но если Вы играете с SoD_SP, то он должен подключаться первым из-за способа, которым загружает ресурсы.

Цитата:
Code: EXCEPTION_ILLEGAL_INSTRUCTION

Это вообще подозрительное исключение. NewSpells в том районе ничего не делает. Проверьте целостность Вашего экзешника. Ещё это может быть связано с очередью ходов, которая в SoD SP реализована иначе, чем в HD моде, а исправлял я только ту, что в HD моде. Попробуйте отключить фикс очереди ходов в NewSpells.ini.

UPD: Проверил, с этим не связано. Нужно у RoseKavalier интересоваться.
Последний раз редактировалось AlexSpl 13 дек 2021, 14:49, всего редактировалось 1 раз.
Вернуться к началу

offlineНмеса  
 
Сообщения: 9
Зарегистрирован: 02 ноя 2017, 16:04
Пол: Не указан
Поблагодарили: 2 раз.

Re: Как создать плагин для HD мода

Сообщение Нмеса » 13 дек 2021, 14:49

Доброго времени суток, пользовался плагином NewMagicMirror и после долгих тестов выявил что именно из-за него пропал фирменный красный эффект вокруг юнитов у массовой версии Bloodlust.
Плагин хороший, если это легко пофиксить, был бы рад видеть новую версию.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 13 дек 2021, 14:58

Цитата:
Плагин хороший, если это легко пофиксить, был бы рад видеть новую версию.

Думаю, смогу поправить. По всей видимости это связано с тем, что у Bloodlust нет как таковых кадров анимации.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 13 дек 2021, 20:58

Обновил плагин: https://handbookhmm.ru/forum/viewtopic.php?f=56&t=529&p=23554#p23554.

1. Исправлен баг с обнулением массива activeSpellMastery в конструкторе копирования army.
2. Исправлен баг с призывом существ: AI начинал спамить призывом после установки флага combatParams.isOpponentDangerous*.
3. Добавлена "родная" функция взвешивания заклинания Disease.

+ Исходники. Осталось написать функцию взвешивания для Drain Life, и версия 1.03f готова :smile20:

*) Флаг устанавливается, когда AI начинает считать своего противника опасным (обычно, когда проигрывает). В плагине вместо умножения кол-ва призываемых существ на AI Value = 1000** происходило умножение AI Value на 1000, что давало огромный вес заклинанию.
**) В игре, когда AI проигрывает, вес призыва поднимается за счёт установки AI Value в 1000, т.е. ценность заклинаний призыва увеличивается примерно втрое.
Вернуться к началу

Пред.След.

Вернуться в Общий раздел

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6