Объявления

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

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

Герои Меча и Магии III: Возрождение Эрафии, Герои Меча и Магии III Дыхание Смерти, Герои Меча и Магии III Клинок Армагеддона, Герои Меча и Магии III Хроники Героев
offlineАватара пользователя
leiz  
Подмастерье
Подмастерье
 
Сообщения: 187
Зарегистрирован: 15 сен 2018, 07:58
Пол: Не указан
Поблагодарили: 95 раз.

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

Сообщение leiz » 21 дек 2021, 05:13

Цитата:
Например мне приходится, в качестве полумер, вручную в редакторе пересохранять все карты к RoE с изменением версии на SoD, чтобы они, хотя бы, не были поломанными генерацией сборных артефактов вместо реликтов. А так хочется поиграть карты к RoE и AB с правильно установленным GameVersion, как это происходит в кампаниях.

Чем не устраивает RoE 1.4 в отдельной папке? Отсутствием HD-мода?
Вернуться к началу

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

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

Сообщение Rolex » 21 дек 2021, 09:32

Eranikus писал(а):

Кстати, я вот в Эре видел качественную реализацию xxl патча, для сода его еще не адаптировали? Я не находил, а иметь такой очень бы хотелось.

Поддерживаю. Кстати, AlexSpl, я видел на heroesworld ваше сообщение 11 летней давности (2010 года).

О поддержке больших карт:
- H (180x180)
- XH (216x216)
- G (252x252)

https://forum.heroesworld.ru/showthread.php?t=6791

Очень полезный патч, как для SoD. Спустя несколько лет поддержку больших карт добавили и в HotA. А в конце прошлого года поддержку больших карт igrik вместе с RoseKavalier прикрутили и к ERA, взяв картинки кнопок из HotA.

Но самая идея сделать генерацию больших карт для ГСК, как и ее самая первая реализация, как я понимаю, принадлежит именно Вам, AlexSpl. Вот только обидно, что для SoD нет отдельного плагина для этого. Можно пропатчить экзешник, как все делали ранее (до повления патчера), но как по мне, на данный момент это не лучшая идея.

Просто в том время, когда вы это делали, HD-мода еще не было, а если и был, то только сырая пре альфа. А патчер для плагинов, так и вовсе в 2017 появился. В то время Вы все писали на чистом ассемблере.

Так вот вопрос в том, а сложно ли будет тот Ваш старый код на асме переписать на плюсы сделав это все в виде плагина к HD-моду? Чтобы при подключении плагина в окне ГСК появлялись три доп кнопки, как в HotA ( H (180x180), XH (216x216), G (252x252) ).

Кнопки я могу и сам сделать, а можно просто взять уже готовые из ресурсов HotA (как сделал igrik для плагина к ERA).
Вернуться к началу

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 » 21 дек 2021, 09:56

Цитата:
Например мне приходится, в качестве полумер, вручную в редакторе пересохранять все карты к RoE с изменением версии на SoD, чтобы они, хотя бы, не были поломанными генерацией сборных артефактов вместо реликтов. А так хочется поиграть карты к RoE и AB с правильно установленным GameVersion, как это происходит в кампаниях.

По наводке одного польского игрока, этот момент поправлен в одной из последних версий SoD_SP, если правильно помню.

Цитата:
Кстати, я вот в Эре видел качественную реализацию xxl патча, для сода его еще не адаптировали? Я не находил, а иметь такой очень бы хотелось.

Для SoD'а есть только старая версия, потом обнаружилась проблема на карте с очень высокой плотностью объектов и я добавил ручной фикс, но всего вместе, а тем более с кнопками, пока нет.

Цитата:
Поддерживаю. Кстати, AlexSpl, я видел на heroesworld ваше сообщение 11 летней давности (2010 года).

Это была альфа, которая поддерживала только карты 216 х 216. В версии 1.0 все ограничения я убрал и прикрутил нормальные рамки (правда, пару рамок при просмотре Земли/Воздуха всё же скачут, не дошли руки).
Вернуться к началу

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

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

Сообщение void_17 » 21 дек 2021, 11:54

По поводу карт писал когда-то. Вот паста:
Цитата:
Да, 1024 взял не с проста. Особенности структуры type_point. В ней: 10 битов под Х координату, 10 битов под Y и 4 под Z.
Выглядит так:
00ZZ ZZYY YYYY YYYY 0000 00XX XXXX XXXX

Из 32 битов 6 и 2 бита неиспользованные.

3600*3600 это редактор так позволяет, в непатченной игре больше 1024 он просто не обработает(если чутка переписать большое количество функций, связанных с type_point, где 32 бита, то думаю, что можно переорганизовать так:
+3, +3, +2 бита возьмут X, Y и Z соответственно. Т.е. Максимальное значение по X, Y будет не (2^10)–1 = 1023, а (2^13)–1=8191, а по Z.. не (2^4)–1=15, (2^6)=63 ПОДЗЕМЕЛИЙ!
Таким образом будут задействованы все биты. А эта мысль... Можно сделать 8191х8191-патч, а вот как сделать рабочими эти 15(или даже 63) подземелия — вот задачка...


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

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 » 21 дек 2021, 12:07

А ещё для таких больших размеров с миникартой что-то нужно делать. В моём патче скипались столбцы и строки пикселей. Для больших размеров будет пропадать очень много информации, т.е. нужно писать диалог для миникарты, чтобы кнопкой можно было открыть её более крупную версию. И про то, потянут ли такой размер алгоритмы RMG ничего не известно, а именно они должны будут создавать играбельные карты. Карту 8000+ x 8000+ никто вручную рисовать не возьмётся. Там годы уйдут на то, чтобы сделать её играбельной. Плюс потенциальные проблемы с ИИ, лимит городов и других объектов и т.п. За такие размеры лучше не браться. Это серьёзная работа.

Ещё понял наконец, почему размер карты должен быть кратным 16. as239 как-то упоминал, что RMG при генерации карты работает с "примитивами" 16 x 16, поэтому максимальный размер будет при таких ограничениях 8176 x 8176 (или 8192 x 8192, если 8191 - это последняя координата, то с 0-й размер будет на 1 больше). Сейчас 252x252 с подземельем - это выше крыши. Много ли игроков ходя бы одну такую прошли? :smile1: Т.е. такие есть, безусловно, но я бы сейчас вряд ли сел за такую. Ладно, если бы это был сценарий кампании HotA за Фабрику, то пришлось бы, конечно.
Последний раз редактировалось AlexSpl 21 дек 2021, 12:50, всего редактировалось 1 раз.
Вернуться к началу

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

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

Сообщение void_17 » 21 дек 2021, 12:49

Я RMG в расчет просто не беру. Для меня это дремучий лес. И да, у as239 только верхушка айзберга разобрана. С мини-картой можно действительно сделать диалог, но заменить саму карту на статичную картинку, с щитом например. Или с текстом "карта слишком большая, нажмите ЛКМ, чтобы посмотреть". Проще с нуля RMG написать, поддерживающий такие размеры...
Вернуться к началу

offlineEranikus  
имя: Максим
 
Сообщения: 9
Зарегистрирован: 02 авг 2019, 10:45
Пол: Мужчина
Поблагодарили: 3 раз.

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

Сообщение Eranikus » 21 дек 2021, 15:08

leiz писал(а):

Цитата:
Например мне приходится, в качестве полумер, вручную в редакторе пересохранять все карты к RoE с изменением версии на SoD, чтобы они, хотя бы, не были поломанными генерацией сборных артефактов вместо реликтов. А так хочется поиграть карты к RoE и AB с правильно установленным GameVersion, как это происходит в кампаниях.

Чем не устраивает RoE 1.4 в отдельной папке? Отсутствием HD-мода?

И отсутствием HD-мода, и желанием пользоваться только качественными решениями. Качественное решение - это плагин, который подключил один раз, и навсегда. И все улучшения и расширенные возможности должны быть доступны вместе, из одного клиента игры, и так, чтобы не нужно было что-то там отключать/подключать/шаманить, как например в случае со старым XXL патчем, который одновременно и дает что-то новое, и забирает старое - для меня такой подход недопустим.

AlexSpl писал(а):

По наводке одного польского игрока, этот момент поправлен в одной из последних версий SoD_SP, если правильно помню.

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

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 » 21 дек 2021, 19:17

А я бы играл кампании и сценарии RoE на версии RoE. Всё-таки остаётся шанс, что в SoD есть и другие отличия. Мне даже начальный экран RoE больше нравится, чем SoD'овский. Кроме того, я бы играл по true правилам RoE, когда тебе приходилось сражаться за артефакт, платить или иметь вторичный навык (у меня, например, предустановлены все версии Героев, начиная 1.0 и заканчивая 3.2). Соответственно, кампании AB на версии AB. Это, конечно, удобно иметь все три версии в Complete, но у каждой свои нюансы. Плюс, какое-то разнообразие из-за стартовых экранов. Вот, кстати, идея для плагина: менять стартовые экраны в зависимости от того, какой сценарий или кампания игрались последними.
Вернуться к началу

offlineEranikus  
имя: Максим
 
Сообщения: 9
Зарегистрирован: 02 авг 2019, 10:45
Пол: Мужчина
Поблагодарили: 3 раз.

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

Сообщение Eranikus » 21 дек 2021, 20:26

AlexSpl писал(а):

А я бы играл кампании и сценарии RoE на версии RoE. Всё-таки остаётся шанс, что в SoD есть и другие отличия. Мне даже начальный экран RoE больше нравится, чем SoD'овский. Кроме того, я бы играл по true правилам RoE, когда тебе приходилось сражаться за артефакт, платить или иметь вторичный навык (у меня, например, предустановлены все версии Героев, начиная 1.0 и заканчивая 3.2). Соответственно, кампании AB на версии AB. Это, конечно, удобно иметь все три версии в Complete, но у каждой свои нюансы. Плюс, какое-то разнообразие из-за стартовых экранов. Вот, кстати, идея для плагина: менять стартовые экраны в зависимости от того, какой сценарий или кампания игрались последними.

В HD моде для 4-ки от Verok есть возможность переключаться с Winds of War на ванилу, и на The Gathering Storm, вот это тема, да.
Вернуться к началу

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

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

Сообщение Херомант » 21 дек 2021, 22:14

Rolex писал(а):

Так вот вопрос в том, а сложно ли будет тот Ваш старый код на асме переписать на плюсы сделав это все в виде плагина к HD-моду? Чтобы при подключении плагина в окне ГСК появлялись три доп кнопки, как в HotA ( H (180x180), XH (216x216), G (252x252) ).


Когда данный патч портировался в MoP, то ~90% его составляющего пришлось полностью заменить, т.к. реализация была очень сырая. Но я благодарен AlexSpl за найденные участки кода, необходимые для поддержки гигантских размеров карт. Под SoD лучше всего использовать исходники Игрика (от MoP всё равно не сохранились, т.к. я записал код напрямую в exe без посредников, ну только кнопки отрисовывает WERD).

void_17 писал(а):

Проще с нуля RMG написать, поддерживающий такие размеры...
[/quote]

Не проще. Главное достоинство содовского генератора карт - пластичность: с помощью таблиц его можно настроить как угодно, генерировать любые объекты карт, косяки конечно имеются, но не критичные (правки можно вытащить диассемблированием из хотовского dll, если кому-то они сильно нужны), а код написан вполне достойно (правда оптимизацией в нём и не пахнет, ну это и понятно - делали в последний момент для Клинка Армагеддона, когда команда практически распалась). Ну и сам объём кода генератора не маленький (в том же VCMI повторить не смогли, наклько помню).
Вернуться к началу

Пред.След.

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

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

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

cron