Объявления
Поздравляем
Roman2211


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

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

Герои Меча и Магии III: Возрождение Эрафии, Герои Меча и Магии III Дыхание Смерти, Герои Меча и Магии III Клинок Армагеддона, Герои Меча и Магии III Хроники Героев
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 » 25 окт 2021, 01:32

Цитата:
А все дело в том, что в оригинале нет единого оригинального размера. По высоте картинки могут быть от 40 и до 56 пикселей. Вот обратите внимание на два закла над Toughness - Телепорт и Клон. Они очень сильно отличаются в размерах. Телепорт и Молитва мелкие, а Клон и Защита от Воды - большие. Проходные тоже, кстати, крупные. Я изначально делал все одинакового размера, а потом понял некоторые картинки можно делать чуточку больше (в зависимости от самой картинки) и это будет выглядеть лучше.

Я про размер в байтах. У всех одного типа одинаковый размер. Например, у картинок в книге заклинаний (spells.def) - 6278 байт. Toughness - 6280 байт. Остальные, которые Вы делали раньше, в порядке. То же самое нужно проверить в SpellScr.def* и SpellInt.def.

* Тут всё хорошо. А вот у новых маленьких размер прыгает.

Ещё нужна маленькая картинка для Феникса (2806 байт) и пустые для всех дефов.
Последний раз редактировалось AlexSpl 25 окт 2021, 01:37, всего редактировалось 1 раз.
Вернуться к началу

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

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

Сообщение Rolex » 25 окт 2021, 01:36

Хм, я на размер даже не обращаю внимание. Знаю только, что он небольшой, несколько КБ. А разве это критично, несколько байт?
Вернуться к началу

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 » 25 окт 2021, 01:38

Цитата:
Хм, я на размер даже не обращаю внимание. Знаю только, что он небольшой, несколько КБ. А разве это критично, несколько байт?

Зависит от формата BMP. Раньше у Вас получалось делать картинки одинакового размера с оригинальными.
Вернуться к началу

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

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

Сообщение Rolex » 25 окт 2021, 01:43

Ок. Я гляну, что можно сделать, но позже.
Вернуться к началу

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 » 25 окт 2021, 15:57

Уже добавил Incineration, Behemoth's Claws и Explosion. Explosion будет самым крутым одиночным ударным заклинанием, в основном, из-за красивой анимации. Выглядит очень круто.

Для Behemoth's Claws подошла бы быстрая анимация когтей, оставляющих след. Сейчас как-то не очень смотрится. И для Toughness я бы переделал. Может, в качестве анимации использовать встряхивание колбы? Ещё у меня были мысли о растущем дереве, у которого распускаются листья.

Toughness тоже готово. Думаю, выложу промежуточную сборку попозже, если возникнут проблемы с Eye of the Magi и областью для DD. Toughness самое интересное заклинание: попробуйте-ка протестировать все возможные варианты (Poison + Age + Toughness).
Вернуться к началу

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

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

Сообщение Rolex » 25 окт 2021, 18:50

Цитата:
Новые ударные очень круто смотрятся! Только не слишком ли сильное Incineration получилось? Fireball - 65 урона, Inferno - 70, а Incineration - 225?

Всё дело в том, что Incineration закл 5-го уровня. А у Инферно площадь больше чем у других площадных, потому оно на 4 уровне, хотя по урону сравнимо с 3-м. Но основной его плюс в том, что ним можно большее количество отрядов захватить. По урону Incineration на уровне Death Cloud. Только на первых этапах пока сила магии героя не более 12 оно немного сильнее Death Cloud, а вот после уже вперед выходит Deat Cloud.

Все дело в том, что у Death Cloudурон: СМ*40 + X, а у Incineration: СМ*35 + X. Но вот сам X больше у последнего. Fireboll: СМ*10 + X (3 уровень), Meteor shower: СМ*25 + X (4 уровень), Death Cloud: СМ*40 + X (5 уровень). Incineration хотелось сделать на уровне DC, но не полной его копией по урону, а немного выделить его.
Цитата:
Уже добавил Incineration, Behemoth's Claws и Explosion. Explosion будет самым крутым одиночным ударным заклинанием, в основном, из-за красивой анимации. Выглядит очень круто.

На Toughness и Eye of the Magi хотелось бы взглянуть. Это самые интересные и уникальные.

Цитата:
Для Behemoth's Claws подошла бы быстрая анимация когтей, оставляющих след. Сейчас как-то не очень смотрится.

Со следом сложно будет. Я же не проф дизайнер, а так, любитель. А сейчас какой из двух вариантов нравится больше прокручивание или замах с ударом/опусканием?
Цитата:
И для Toughness я бы переделал. Может, в качестве анимации использовать встряхивание колбы?

Кстати, изначально у меня и был вариант со встряхиванием. Но что-то он мне не зашел, даже хуже чем с прокручиванием получилось, поэтому я его удалил. Но я думаю еще раз попробовать со встряхиванием, но немного иначе. Посмотрим, что получится.
AlexSpl писал(а):

Еще у меня были мысли о растущем дереве, у которого распускаются листья.

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

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 » 25 окт 2021, 19:35

Цитата:
На Toughness и Eye of the Magi хотелось бы взглянуть. Это самые интересные и уникальные.

Сижу, делаю. Сегодня-завтра можно будет пощупать.

Цитата:
Со следом сложно будет. Я же не проф дизайнер, а так, любитель. А сейчас какой из двух вариантов нравится больше прокручивание или замах с ударом/опусканием?

Вращение вообще неуместно, на мой взгляд, для данной анимации.

Цитата:
Ну это уже слишком сложная анимация, если самому создавать. Это для профи. Но если Вы найдете в сети готовую анимацию растущего дерева и разобьете ее на кадры с однотонным цветом фона, то я сделаю, без проблем.

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

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

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

Сообщение Rolex » 25 окт 2021, 21:00

Цитата:
Вращение вообще неуместно, на мой взгляд, для данной анимации

Ок. Попробую что-то другое. Уколы, например, в разные точки.

Цитата:
Я понимаю, но Вы постарайтесь, ведь от визуальной составляющей зависит первое впечатление. Встречают по одёжке, как говорится.

Дерево вряд ли, а вот встряхивание бутыля попробую сделать.

Кстати, для Incineration фиксированную прибавку можно также и 40/80/160 сделать вместо 50/100/200. Главное, чтобы она была немного больше чем у Death Cloud.

Да и нужно что-то с порядком анимации для Death Blow для стрелков решать.
Вернуться к началу

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 » 25 окт 2021, 21:47

Цитата:
Да и нужно что-то с порядком анимации для Death Blow для стрелков решать.

Я запретил Death Blow для стрелков, как и Behemoth's Claws. Эти заклинания исключительно для милишников. Для стрелков нужно своё. Например, точный выстрел с соответствующей анимацией. Анимация Death Blow никак не подходит для выстрела.

Анекдот из реальной жизни. Полчаса убил на то, чтобы понять, где ошибся. Вызываю функцию GetPackedMapItemByCmd():

Код: Выделить всё
int packedMapItem;
CALL_2(void, __thiscall, 0x41D351, o_AdvMgr, &packedMapItem);

Сплошные вылеты :smile5: Уже и соглашение о вызове проверил и что вторым аргументом идёт адрес, но крэш за крэшэм. Подумать и не мог, что всему виной невнимательность. Взял вместо адреса функции адрес инструкции, которая её вызывает. Даже с дебаггером сидел и думал, почему меня в основной код выбрасывает :smile12:

Правильно будет так:

Код: Выделить всё
int packedMapItem;
CALL_2(void, __thiscall, 0x407A70, o_AdvMgr, &packedMapItem);

Думаю, каждому, кто писал плагины, знаком такой затуп.

Что сделал? Удалось вызвать HD-диалог для каста Eye of the Magi, всё отрабатывает идеально. Курсор спрятан в код HD, но я думаю, что придумал, как обойтись без патча самого HD: попробую подменить курсор на свой на время каста.

Код: Выделить всё
_Dlg_* dlg = new _Dlg_();
CALL_1(void, __thiscall, 0x41D326 + 5 + *(int*)0x41D327, dlg);
CALL_2(void, __thiscall, 0x5FFA20, dlg, 0);
CALL_1(void, __thiscall, 0x41D346 + 5 + *(int*)0x41D347, dlg);
      
int packedMapItem;
CALL_2(void, __thiscall, 0x407A70, o_AdvMgr, &packedMapItem);
Вернуться к началу

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

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

Сообщение Rolex » 26 окт 2021, 08:58

AlexSpl писал(а):

Я запретил Death Blow для стрелков, как и Behemoth's Claws. Эти заклинания исключительно для милишников. Для стрелков нужно своё. Например, точный выстрел с соответствующей анимацией. Анимация Death Blow никак не подходит для выстрела.

Drain Life туда же. А как тогда быть с заблокированными стрелками или со стрелаками у которых закончились стрелы? Ведь в подобном случае они превращаются в рукопашников. То есть если они не могут стрелять, значит, атакуют в ближнем бою, а в таком случае Death Blow, Behemoth's Claws и Drain Life для них должен уже работать. То есть когда они заблокированны, то в таком случае на них долна быть возможность наложения вышеперечисленных заклов. Но как тогда быть, если они снова будуть разблокированны и смогут стрелять? В таком случае нужно сразу снимать наложенный закл для ближнего боя или же пускай висит, просто не срабытавает. Таже Забывчивость действует только при атаках на расстоянии, а ближнем боя стрелки могут атаковать.

Если же полностью блокировать возможность наложения вышеперечисленных заклов на стрелков, то, значит, нужен отдельный закл для них (к Precision и Forgetfulness), который повышает урон, как Death Blow, например.

AlexSpl писал(а):

Что сделал? Удалось вызвать HD-диалог для каста Eye of the Magi, всё отрабатывает идеально. Курсор спрятан в код HD, но я думаю, что придумал, как обойтись без патча самого HD: попробую подменить курсор на свой на время каста.

Наверное, решение с подменой курсора на свой на время каста будет более универсальным нежели прятать курсор в код HD.

Плюс нам же нужно еще обучить AI кастовать Mobility и Eye of the Magi. Он тоже должен уметь использовать их, хоть иногда, хоть как-то.

Все промежуточные сборки можете выкладывать здесь, а HC пока не спешите. Я как переделаю анимации и некоторые картинки, а это будет завтра или максимум послезавтра, тогда и выложим.
Последний раз редактировалось Rolex 26 окт 2021, 12:12, всего редактировалось 2 раз(а).
Вернуться к началу

Пред.След.

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

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

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