IPB

Здравствуйте, гость ( Вход | Регистрация )

8 страниц V  < 1 2 3 4 > »   
Reply to this topicStart new topic
> Инженерный анализ, Reverse Engineering
MasterOfPuppets
сообщение 03 Feb 2010, 12:40 (Сообщение отредактировал Master Of Puppets - 07 Feb 2010, 08:17)
Сообщение #21

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Заклинания, даваемые артефактами

По адресу mem004D95F2h находится указатель на case, содержащий 9 записей.
По адресу mem004D95EBh находится указатель на таблицу однобайтных данных, определяющих работу оператора. Таблица вмещает 49 значений, начиная с арта-86 и заканчивая артом-135.
Типы значений в таблице:
0 - дать все заклинания Огня
1 - дать все заклинания Воздуха
2 - дать все заклинания Воды
3 - дать все заклинания Земли
4 - дать заклинания "Вызвать Корабль" и "затопить Корабль"
5 - дать все заклинания 5-го уровня
6 - Дать "Армагеддон"
7 - Дать "Гром Титанов"
8 - ничего


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery



Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Дьяк
сообщение 04 Feb 2010, 19:24 (Сообщение отредактировал Дьяк - 04 Feb 2010, 19:09)
Сообщение #22

Member
Сообщений: 97
Спасибо сказали: 80 раз




341 - не соглашусь. Никаких ограничений нет! Ты неправильно понял код.

Добавлено ([mergetime]1265300645[/mergetime]):
Цитата(Master Of Puppets @ 03 Feb 2010, 12:40)
По адресу mem004D95E0h можно задать кол-во данных в таблице.


Не есть правильное утверждение
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 05 Feb 2010, 13:30
Сообщение #23

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




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


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
Дьяк
сообщение 05 Feb 2010, 23:38
Сообщение #24

Member
Сообщений: 97
Спасибо сказали: 80 раз




Я просто поправил информацию, что ты предоставил, чтобы не дезинформировать общественность.


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 07 Feb 2010, 08:18 (Сообщение отредактировал Master Of Puppets - 07 Feb 2010, 08:20)
Сообщение #25

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Спасибо, поправил. smile.gif
Тут тоже поправь меня, если ошибаюсь.

Cнятие ограничений на показ диалога опыта армии:
exe002B9F50h
exe002BF76Bh
exe002BFA89h - отвечает за показ диалога по улучшенному существу
exe002BFB15h - отвечает за показ диалога в окне вражеского стека
Есть ещё указатель на таблицу монстров со смещением, чтобы диалог нормально работал. Забыл, потом укажу.

Снятие ограничений для ERM-команд:
exe002F1410h - MA при попытке получить значение
exe002EB4F8h - MA при попытке установить значение
exe002CDCA9h - UN:T
exe002CE326h - UN:G1
exe002CD4BDh - UN:A#/#/$.
exe002AFECAh - UN:A#/$
Таблица запрета/доступности артефактов на карте находится по адресу mem0456E2FCh.

Указатели, используемые ERM-командами
Указатель, смещение от начала таблицы монстров, команда.
mem7693397d 0 MA:O
mem7693514d +4 MA:L
mem7694533d +16 MA:X
mem7550016d +20 UN:G1/0
mem7550069d +24 UN:G1/1
mem7550123d +28 UN:G1/2
mem7693689d +32 MA:C (все)
mem7693743d +60 MA:F
mem7693797d +64 MA:I
mem7693851d +68 MA:G
mem7693905d +72 MA:R
mem7693959d +76 MA:P
mem7694013d +80 MA:S
mem7694099d +84 MA:A
mem7694154d +88 MA:D
mem7694209d +92 MA:M
mem7694264d +96 MA:E
mem7694319d +100 MA:N
mem7694374d +104 MA:B
mem7694429d +108 MA:V
mem7694484d +112 MA:H

mem7686722d - указатель на таблицу артефактов, отвечающий за работу вог-опции 902.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 10 Feb 2010, 22:44 (Сообщение отредактировал feanor - 10 Feb 2010, 23:02)
Сообщение #26

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20580 раз




Код
CPU Disasm
0040EF33      BE 02000000   MOV ESI,2


mem:40EF44h - номер выкапываемого артефакта (Era1.6.exe, по идее - должно везде работать). В тех же местах можно поставить хуки на попытки копать.

Вытаскивайте ультимейты из двойки, господа laugh.gif


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 26 Feb 2010, 10:56
Сообщение #27

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Открытие окна героя:
!!SN:E5118576/1/x1/x2;
x1 - номер героя
x2 - закрытие диалога при отпускании мыши: 0 - нет, 1 - да.

Case, управляющий кликами мыши на городских зданиях, находится по адресу 005D4EC0h, сразу за ним - таблица значений (005D4EF8h).
Парочка примеров, использующих функции этого оператора:

Вызов диалога Рынка:
!!SN:E6202336/1;
Возможен на глобальной карте, что полезнее, чем необходимость лезть всякий раз в экран города. Однако есть два мелких бага при таком использовании:
1. Если в экран города ни разу не заходили с запуска exe (не игры), будет вылет. Если же заходили, даже если рынка нет, диалог появится. При рестарте/запуске новой карты без перезапуска самой игры этого бага не будет.
2. Если у игрока нет ни одного Рынка, но он заходил в экран города, диалог выведется, но вылетит при попытке торговой операции.
Второй баг закономерен, и Рынки лучше посчитать, прежде чем решить, открывать ли диалог. А вот насчёт первого надо покопать...

Открытие диалога Торговцев Артефактами:
!!SN:E6201632/1;
Работает в любом городе, даже если здание 17 не построено. Если героя-гостя нет, выведется сообщение о запрете использования здания 17.
При определённых условиях можно открыть и даже использовать на глобальной карте, но лучше не надо, да и незачем.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery



Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
CrackedMind
сообщение 27 Feb 2010, 04:37
Сообщение #28

openhomm developer
Сообщений: 214
Спасибо сказали: 39 раз




Создали бы давно уже какую нибудь вики и наполняли бы ее потихоньку. Было бы полезно я думаю некоторым товарищам laugh.gif


--------------------
Go to the top of the pageAdd Nick
 
+Quote Post
Berserker
сообщение 27 Feb 2010, 15:21
Сообщение #29

Immortal
Сообщений: 1 468
Спасибо сказали: 1151 раз




Была вики. Посещение - 0, желание создавать и оформлять - 0. Так путь хоть на форуме.


--------------------
Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 28 Feb 2010, 21:44 (Сообщение отредактировал feanor - 28 Feb 2010, 22:01)
Сообщение #30

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20580 раз




Боевые машины, покупаемые в кузнях

6AAA60 - таблица боевых машин, покупаемых в Кузницах замков.

на каждую машину отводится по 4 байта, потом 4 байта - FF FF FF FF (итого - 8 байт.) Боевая машина, покупаемая в Ballista Yard, совпадает с БМ Замка, увы.

Added: 00642EA0 - таблица отображаемых в окне кузни существ.


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
tolich
сообщение 28 Feb 2010, 21:48
Сообщение #31

😸🧡✊✌️
Сообщений: 15 992
Спасибо сказали: 2610 раз




Цитата(feanor @ 28 Feb 2010, 21:44) *
Боевая машина, покупаемая в Ballista Yard, совпадает с БМ Замка, увы.

То есть, если Замку поставить телегу, то у варваров будет две?


--------------------
Я слежу за тобой!
* tolic.narod.ru

Lu...pa...gamhi...dho?
Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 28 Feb 2010, 21:59 (Сообщение отредактировал feanor - 28 Feb 2010, 22:01)
Сообщение #32

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20580 раз




00642EA0 - таблица отображаемых в окне кузни существ.
Цитата
То есть, если Замку поставить телегу, то у варваров будет две?

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


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
tolich
сообщение 28 Feb 2010, 22:12
Сообщение #33

😸🧡✊✌️
Сообщений: 15 992
Спасибо сказали: 2610 раз




Я имел в виду, что в Кузне телега и на Дворе Баллист тоже телега... а не две телеги у одного героя.


--------------------
Я слежу за тобой!
* tolic.narod.ru

Lu...pa...gamhi...dho?
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 07 Mar 2010, 11:07
Сообщение #34

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Вызов Торгового Поста:

!!SN:E6202560/1;


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery



Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 18 Mar 2010, 21:17
Сообщение #35

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20580 раз




5A0649 - switch для боевых заклинаний. Вроде как и анимация, и действительные эффекты.

4963C0 - ф-я показа анимации на поле боя. (нативный аналог !!BM:V). Принимает четыре параметра в стеке (хз что там с регистрами, вроде честный stdcall): первый - номер анимации в таблице, второй - указатель на некую неочевидную структуру, третий и четвертый - 0x64 и 0 почти всегда.

Через неё можно выйти на разные вещи типа срабатывания удачи (43F6F1), морали (464664 и 4648F0), страха (464В13) и тэпэ.
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 21 Mar 2010, 07:47
Сообщение #36

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




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


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
laViper
сообщение 25 Mar 2010, 19:38
Сообщение #37

Immortal
Сообщений: 1 207
Спасибо сказали: 594 раза




То есть можно нормально поставть 10 балист и они будут мочить как 10 балист?
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 25 Mar 2010, 19:41
Сообщение #38

Etoprostostatus
Сообщений: 8 527
Спасибо сказали: 15832 раза




Цитата(laViper @ 25 Mar 2010, 19:38)
То есть можно нормально поставть 10 балист и они будут мочить как 10 балист?

"Поставить" - одна функция, а "мочить" - другая. Ты не путай и других не запутывай.


--------------------
Etoprostopodpis'
Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 25 Mar 2010, 19:51 (Сообщение отредактировал feanor - 25 Mar 2010, 19:54)
Сообщение #39

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20580 раз




Структура заклинаний.
Указатель на таблицу заклинаний лежит в 687FA8. Адрес в нём динамический.

Описание.
struct
{
int null; //??
char *sound; //имя звука
int anim_id; //SS:X???
int flags; //флаги
char *name; //имя
int level;
int school;
int mana_cost[4];
int param_1;
int effects[4]; //SS:E
int city_freq[9]; //вероятности появления в городах
int ai_val[4]; //SS:I
char *desc[4]; //описания
}


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Дьяк
сообщение 25 Mar 2010, 19:53
Сообщение #40

Member
Сообщений: 97
Спасибо сказали: 80 раз




красава!!!!
Go to the top of the pageAdd Nick
 
+Quote Post

8 страниц V  < 1 2 3 4 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 19 March 2024 - 06:38
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика