Объявления

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

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

Герои Меча и Магии III: Возрождение Эрафии, Герои Меча и Магии III Дыхание Смерти, Герои Меча и Магии III Клинок Армагеддона, Герои Меча и Магии III Хроники Героев
offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1318
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

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

Сообщение Ben80 » 04 сен 2017, 19:23

А в чем проблема сетевой игры ?
Почему авторы плагинов пишут, что де- для сетевой игры может и не будет корректно работать ?
В чем там особенности ?
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5580
Зарегистрирован: 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)
Поблагодарили: 2184 раз.

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

Сообщение AlexSpl » 04 сен 2017, 19:29

Да нет там особенностей. Просто дополнительные патчи/хуки иногда писать нужно. Короче, та же картина, что и с кодом для AI (не хотят искать).

Btw, cм. мой предыдущий пост, я там диалог для Eagle Eye нашёл.
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1318
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

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

Сообщение Ben80 » 04 сен 2017, 19:34

_ZPrintf_ *ZSprintf(_ZPrintf_ *ZprPo, char *Text, ...)

А многоточие - это какая-то особенность сишных функций ? Произвольное число аргументов ?
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5580
Зарегистрирован: 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)
Поблагодарили: 2184 раз.

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

Сообщение AlexSpl » 04 сен 2017, 19:35

Изменил адрес. Диалог оказался чуть ниже :smile1:

Код: Выделить всё
.text:00476B42 call    sub_4F7D20
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1318
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

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

Сообщение Ben80 » 04 сен 2017, 19:36

AlexSpl писал(а):

Да нет там особенностей. Просто дополнительные патчи/хуки иногда писать нужно. Короче, та же картина, что и с кодом для AI (не хотят искать).


Ну а в том, что мы тут конкретно писали, для Network ничего не нужно дописывать ?
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5580
Зарегистрирован: 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)
Поблагодарили: 2184 раз.

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

Сообщение AlexSpl » 04 сен 2017, 19:39

Цитата:
А многоточие - это какая-то особенность сишных функций ? Произвольное число аргументов ?

Да.

Цитата:
Ну а в том, что мы тут конкретно писали, для Network ничего не нужно дописывать ?

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

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5580
Зарегистрирован: 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)
Поблагодарили: 2184 раз.

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

Сообщение AlexSpl » 04 сен 2017, 19:44

Ан нет (удалил пост про "занопить"), сейчас попробую провести бой, где герой не учит заклинание.

Короче, чтобы убрать диалог(и) Eagle Eye в конце боя нужно написать патч:

Код: Выделить всё
_PI->WriteHexPatch(0x476996, "E9 DC 01 00 00"); // меняем условный переход на безусловный


* * *
Блин, чёт я сегодня туплю :smile14: Безусловный же короче в данном случае на 1 байт! Поэтому правильно будет так:

Код: Выделить всё
_PI->WriteHexPatch(0x476996, "E9 DD 01 00 00"); // меняем условный переход на безусловный
Последний раз редактировалось AlexSpl 04 сен 2017, 20:02, всего редактировалось 1 раз.
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1318
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

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

Сообщение Ben80 » 04 сен 2017, 19:58

AlexSpl писал(а):

иначе - Уровень Магии Воздуха (он здесь в регистре edi) <+> Выбранный в диалоге коэффициент <+> Продолжительность заклинания (запаковать эти значения в поле _dword_ disguise можно множеством способов)


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

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1318
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

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

Сообщение Ben80 » 04 сен 2017, 20:00

AlexSpl писал(а):

Ан нет (удалил пост про "занопить"), сейчас попробую провести бой, где герой не учит заклинание.

Короче, чтобы убрать диалог(и) Eagle Eye в конце боя нужно написать патч:

Код: Выделить всё
_PI->WriteHexPatch(0x476996, "E9 DC 01 00 00"); // меняем условный переход на безусловный



WriteHexPatch - это мне всегда нравится. Кстати, мы ни разу не использовали Hi хуки.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5580
Зарегистрирован: 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)
Поблагодарили: 2184 раз.

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

Сообщение AlexSpl » 04 сен 2017, 20:03

Посмотри, как я протупил выше :smile14:

Цитата:
WriteHexPatch - это мне всегда нравится. Кстати, мы ни разу не использовали Hi хуки.

Хайхуки нужны, если Вы собираетесь переписать всю функцию целиком. Они для очень крутых модов только.

* * *
Да, кстати, только что проверил. Патч убирает только диалог(и). Но герой всё равно может выучить заклинание. Это тоже нужно править.
Вернуться к началу

Пред.След.

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

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

Сейчас этот форум просматривают: Yandex [bot] и гости: 1

cron