Current time: 22.04.2025, 07:03 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Исследование героев
» туториал(ы)
Author Message
Дьякон Offline

Posts: 395
Post: #586

Подскажите адрес указателя на распакованную текущую карту, если таковой имеется?


Страус труп (с) Бьерн
24.03.2015 17:22
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #587

может что то типо этого или где-то тут, а может и нет....
  1. ; © feanor
  2. !!UN:C6919480/4/?y10;
  3. !!VRy11:Sy10 +128980; //получить адрес начала имени папки с картой
  4. !!UN:Cy11/1/?y11; //получить первый символ
  5. !!FU&y11<>114:E; //если не 'r' (random_maps), то выйти; 109 - maps; 104 - h2sw )


game bug fixes extended.dll || My Plugins || My GitHub
24.03.2015 17:36
Visit this user's website Find all posts by this user Quote this message in a reply
feanor Offline

Posts: 624
Post: #588

Quote:Подскажите адрес указателя на распакованную текущую карту, если таковой имеется?
что конкретно интересует?

Code:
#define o_GameMgr (*(_GameMgr_**)0x699538)

в нем поля
  
  // Заголовочная информация карты игры.
  _MapHeader_ map_header; // +1F86Ch
  // Карта игры.
  _GameMap_ Map; // +1FB70h
24.03.2015 18:09
Find all posts by this user Quote this message in a reply
Дьякон Offline

Posts: 395
Post: #589

Вот, что я искал - функции генератора карт:
54AE02 - вызов функции, которая устанавливает доступные артефакты. arg1 - колво байт, arg2 - буфер
54AF1B - вызов функции, которая устанавливает доступные заклинания. arg1 - колво байт, arg2 - буфер
54AF6E - вызов функции, которая устанавливает доступные вторичные навыки. arg1 - колво байт, arg2 - буфер

arg1 - указывает сколько байт будет считано из буфера (указатель arg2). В буфере хранится побитовая маска доступных артефактов/заклинаний/навыков.

Т.е. подменяя буфер, можно заставить рандомный генератор карт создавать карты с необходимой спецификацией. (например выкинуть имбалансные арты, или ненужные/редко используемые навыки)


Страус труп (с) Бьерн
(This post was last modified: 25.03.2015 18:11 by Дьякон.)
25.03.2015 18:08
Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #590

Дьякон Wrote:например выкинуть имбалансные арты, или ненужные/редко используемые навыки
Водные артефакты/Навигацию на безводных картах. В ХотА вроде есть такое, у меня в ES скриптом сделано. Но отдельный бинарный фикс будет лучше, имхо.
Что касается остальных артов/навыков, то их надо править и балансировать вместо того, чтобы вырезать.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
25.03.2015 19:48
Visit this user's website Find all posts by this user Quote this message in a reply
Дьякон Offline

Posts: 395
Post: #591

(25.03.2015 19:48)Algor Wrote:  Водные артефакты/Навигацию на безводных картах. В ХотА вроде есть такое, у меня в ES скриптом сделано. Но отдельный бинарный фикс будет лучше, имхо.
Что касается остальных артов/навыков, то их надо править и балансировать вместо того, чтобы вырезать.
В СоДе скриптов нет, а балансить можно и со временем. Сначала выкинуть все, что мешает, а там видно будет. Вообще конечно можно вставить код и менять спецификацию перед началом карты как в скриптах, например. Но все же мне кажется настроить генератор как-то более правильным что ли. Хотя разницы практически никакой.


Страус труп (с) Бьерн
25.03.2015 20:11
Find all posts by this user Quote this message in a reply
SyDr Offline

Posts: 1054
Post: #592

Подскажите, плиз, какой формат имеет файл с настройками (.dat)? Каким образом его лучше всего сжать?
25.03.2015 23:07
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16739
Post: #593

Эм, 1000 настроек по 4 байта каждая со значением 0 или 1? ))) Сжать можно чем угодно: Проще всего преобразовать в массив битов, тогда это будет 125 байт. Если много, тогда кодирование бегущих длин или как там RLE )


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
26.03.2015 00:37
Find all posts by this user Quote this message in a reply
SyDr Offline

Posts: 1054
Post: #594

Ага. Только там ещё 2 и 3 переодически встречаются. Короче, что-то типа RLE вполне пойдёт (мне нужно в текст жать):
(This post was last modified: 26.03.2015 09:51 by SyDr.)
26.03.2015 08:34
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16739
Post: #595

Уже не помню, 2 и 3 м.б опции множественного выбора (radio-кнопки)?

Да, сойдёт.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
27.03.2015 01:29
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #596

  1. !?FU[RedrawHeroMeetingScreen];
  2. !!UN:C6962576/4/?y1;
  3. !!SN:E5960928/2/y1/0;
  4. !!SN:E5960928/2/y1/1;
  5. !!SN:E5968384/2/y1;
  6. !!VRy2:Sy1+56;
  7. !!UN:Cy2/4/?y3;
  8. !!UN:Cy3/4/?y4;
  9. !!VRy4:+20;
  10. !!UN:Cy4/4/?y5;
  11. !!SN:Ey5/2/y3/0/-65535/65535;
  12. !!UN:C6918864/4/?y5;
  13. !!UN:C4199496/2/?y6 C4199503/2/?y7;
  14. !!SN:E6304144/2/y5/0/0/y6/y7;
Обновляет весь диалог и при любом разрешении экрана (с HD и без него). В том числе и арты
PS: не без помощи Berserker'a


game bug fixes extended.dll || My Plugins || My GitHub
30.03.2015 23:17
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16739
Post: #597

Здорово. Нужно будет обязательно включить в Эру, обновив SN:D.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
30.03.2015 23:20
Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #598

А есть ли шанс, что ExecErmCmd начнёт корректно обрабатывать IF:M?


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
30.03.2015 23:36
Find all posts by this user Quote this message in a reply
Valery Offline

Posts: 2196
Post: #599

20

Thanks, will test. Do I need to add Mop function?
(This post was last modified: 30.03.2015 23:42 by Valery.)
30.03.2015 23:41
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #600

No, it is not necessary.


game bug fixes extended.dll || My Plugins || My GitHub
(This post was last modified: 30.03.2015 23:46 by igrik.)
30.03.2015 23:44
Visit this user's website Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2025 MyBB Group