Объявления
Поздравляем
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 » 14 янв 2019, 07:59

Цитата:
Далее через шестнадцатеричный редактор ищем места куда все это загружается, и потом создаем плагин по загрузке нового цвета. Алгоритм действий получается примерно таким?

Да, примерно так. Только искать лучше в базе IDA. Есть очень хорошо разобранная и с понятными названиями многих функций: Heroes3f.idb.
Вернуться к началу

offlinequetzalcoatl  
имя: vik
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 12 янв 2019, 15:28
Пол: Мужчина
Поблагодарили: 11 раз.

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

Сообщение quetzalcoatl » 14 янв 2019, 08:06

AlexSpl писал(а):

Да, примерно так. Только искать лучше в базе IDA. Есть очень хорошо разобранная и с понятными названиями многих функций: Heroes3f.idb.


Не подскажите, где ее найти можно? И она идет к какой версии, SoD или HoTa? Спасибо.
Вернуться к началу

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 » 14 янв 2019, 08:12

Heroes3f.idb

Для SoD.
Вернуться к началу

offlinequetzalcoatl  
имя: vik
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 12 янв 2019, 15:28
Пол: Мужчина
Поблагодарили: 11 раз.

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

Сообщение quetzalcoatl » 14 янв 2019, 08:19

AlexSpl писал(а):

Heroes3f.idb

Для SoD.


Еще раз спасибо, попробую поразбираться. :smile1:
Вернуться к началу

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

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

Сообщение Ben80 » 16 янв 2019, 03:27

AlexSpl писал(а):

Да. Самый простой способ - обычный текстовый поиск. Идея: если игра показывает сообщение (текст), например, когда мы берём артефакт, а нам как раз нужно как-то изменить что-то, касающееся взятия артефакта, то логично, что код, нужный нам, будет рядом с тем, который показывает сообщение. Таким же образом можно искать и места, где игра загружает ресурсы (по имени загружаемого ресурса). Какие-то более сложные вещи уже потребуют знания формата, в котором хранятся данные (например, структур игрока/героя). Многие структуры (в игре это объекты) прокомментированы в заголовочном файле homm3.h.


Применяется ли в Героях 3 преобразование координат гексагональной сетки в кубические координаты и обратно ?
(как, здесь https://habr.com/ru/post/319644/)
Вернуться к началу

offlinefeanor  
Новичок
Новичок
 
Сообщения: 14
Зарегистрирован: 15 мар 2016, 16:23
Пол: Не указан
Поблагодарили: 15 раз.

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

Сообщение feanor » 16 янв 2019, 15:06

Ben80 писал(а):

AlexSpl писал(а):

Да. Самый простой способ - обычный текстовый поиск. Идея: если игра показывает сообщение (текст), например, когда мы берём артефакт, а нам как раз нужно как-то изменить что-то, касающееся взятия артефакта, то логично, что код, нужный нам, будет рядом с тем, который показывает сообщение. Таким же образом можно искать и места, где игра загружает ресурсы (по имени загружаемого ресурса). Какие-то более сложные вещи уже потребуют знания формата, в котором хранятся данные (например, структур игрока/героя). Многие структуры (в игре это объекты) прокомментированы в заголовочном файле homm3.h.


Применяется ли в Героях 3 преобразование координат гексагональной сетки в кубические координаты и обратно ?
(как, здесь https://habr.com/ru/post/319644/)

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

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

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

Сообщение Ben80 » 16 янв 2019, 16:00

feanor писал(а):

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


А, скажем, для определения области гексов, доступных для юнита (согласно его скорости) применяются рекурсивные процедуры ? И зачем на границах слева и справа поставили фиктивные гексы ? Возможно, для удобства проверок выхода за пределы поля, но тогда почему сверху и снизу так же не добавили фиктивных гексов...
Вернуться к началу

offlinefeanor  
Новичок
Новичок
 
Сообщения: 14
Зарегистрирован: 15 мар 2016, 16:23
Пол: Не указан
Поблагодарили: 15 раз.

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

Сообщение feanor » 16 янв 2019, 17:05

Ben80 писал(а):

feanor писал(а):

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


А, скажем, для определения области гексов, доступных для юнита (согласно его скорости) применяются рекурсивные процедуры ? И зачем на границах слева и справа поставили фиктивные гексы ? Возможно, для удобства проверок выхода за пределы поля, но тогда почему сверху и снизу так же не добавили фиктивных гексов...

Может, рекурсивные, может, поиск в ширину или вариации Дейкстры какого-нибудь.

Там БМ стоят.
Вернуться к началу

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

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

Сообщение Ben80 » 16 янв 2019, 17:24

А данных вот по этой штуке у тебя нет случайно ?

0x6992D4 AccessableSquaresStruct
Вернуться к началу

offlineas239  
имя: Анатолий
Ветеран
Ветеран
 
Сообщения: 527
Зарегистрирован: 29 дек 2018, 14:17
Пол: Мужчина
Поблагодарили: 38 раз.

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

Сообщение as239 » 18 янв 2019, 15:30

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

Пред.След.

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

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

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