Здравствуйте, гость ( Вход | Регистрация )
24 Sep 2007, 21:39
(Сообщение отредактировал Iv - 19 Oct 2012, 15:23)
Сообщение
#1
|
|
![]() The Unicode Man Сообщений: 993 Спасибо сказали: 6 раз |
Предлагаю всем, у кого есть какая бы то ни была информация о технической стороне игры, поделиться ею.
Обсуждение в соответствующей теме. -------------------- |
|
|
|
![]() |
14 Apr 2010, 23:59
Сообщение
#2
|
|
![]() Immortal Сообщений: 6 287 Спасибо сказали: 12724 раза |
Размещаю изыскания Master Of Puppets, по его же просьбе.
Ненависть 443138 mov dl,[eax+CASE_004434DC] 44313E jmp [CASE_PROCTABLE_004434C8+edx*4] В маленькой (монстры 112-129) таблице 5 значений. Значения 00-03 чисто для элементалей - каждый элементаль ненавидит обоих элементалей противоположной стихии. Управление, однако, всё равно передаётся на PROC0004 - она же для остальных существ, т.е., там case вложен в case. Диапазон - от Ангела до Чёрного Дракона. Содовский код там имеет вид: CASE_004434C8_PROC0004: 443195 mov eax,[edi+34h] 443198 add ecx,FFFFFFF4h 44319B cmp ecx,00000047h 44319E ja CASE_004434F0_PROC0006 4431A4 xor edx,edx 4431A6 mov dl,[ecx+CASE_0044350C] 4431AC jmp [CASE_PROCTABLE_004434F0+edx*4] Однако при запуске WoG код изменяется так: CASE_004434C8_PROC0004: 443195 mov ecx,[ebp+08h] 443198 call SUB_L00766DE6 44319D or eax,eax 44319F jz L00443410 4431A5 mov ecx,[ebp-10h] 4431A8 jmp L00443211 4431AA nop 4431AB nop Код меняет отрезок воговского копирования exe3273A4-3273AF (78BD8Ch/443195h/17h). В итоге ненавистью существ в WoG занимается SUB_L00766E14, куда скопирован и case, и таблица СОДа. Туда же, видимо, встроена и ненависть через опыт существ. При условии, что тип существа соответствует "ненавистному", задаётся процент доп. урона. В СОД это унифицировано, в ВОГ же - рутинно задаётся одной и той же командой: mov dword ptr [ebp-0Ch],00000032h Исключения - Титан и Чёрный Дракон. У них это: mov dword ptr [ebp-0Ch],00000005h Похоже на опечатку: вместо 150% урона - 105%. Несложный тест подтверждает, что баг реален и мы с ним жили.( Впрочем, у себя я его уже исправил. Кстати, и в СОД, и в ВОГ Чёрный Дракон равнодушен к Гигантам. Справедливо - Титан тоже равнодушен к Красным. Независимо от реальных процентов доп. урона, в логе битвы будет показано "50%". Проблема в упрощённом обращении к строке genrltxt.txt. Кавалерийский бонус 75D823 cmp dword ptr [L028460C0],0000000Ah; - Каварелист 75D82A jnz L0075D838 75D82C mov dword ptr [L02846420],0000000Bh 75D836 jmp L0075D860 75D838 cmp dword ptr [L028460C0],0000000Bh; - Чемпион 75D83F jnz L0075D84D 75D841 mov dword ptr [L02846420],0000000Bh Отсос 2-х очков маны 4650D0 sub eax,0000003Dh; - Привидение .......... 465174 add eax,FFFFFFFEh; - кол-во забираемых очков Магический канал 5A24DC cmp dword ptr [eax-000000C0h],0000002Bh; - Чёрт Смертельный удар 766DB9 sub eax,43; - Рыцарь Смерти 4435C0 jz L004435D1 ............ 4436DE cmp eax,00000014h; - шанс срабатывания абилки Снижение стоимости заклинаний 766BFA cmp dword ptr [ebp-18h],00000022h - Маг 766BFE jz L00766C06 766C00 cmp dword ptr [ebp-18h],00000023h - АрхиМаг 766C04 jnz L00766C0D 766C06 mov dword ptr [ebp-0Ch],00000002h - кол-во очков на удешевление Особые земли Case: 4FD5A1 mov cl,[eax+CASE_004FD5E8] 4FD5A7 jmp [CASE_PROCTABLE_004FD5D0+ecx*4] Проверки для подсказок при наведении мыши, ПКМ и для !!TR: 4FD52A cmp eax,00000015h 4FD52D lea ecx,[edi+ecx*4] 4FD530 jz L004FD57F 4FD532 cmp eax,0000002Eh 4FD535 jz L004FD57F 4FD537 cmp eax,000000E3h 4FD53C jz L004FD57F 4FD53E cmp eax,000000E0h 4FD543 jz L004FD57F 4FD545 cmp eax,000000DEh 4FD54A jz L004FD57F 4FD54C cmp eax,000000E1h 4FD551 jz L004FD57F 4FD553 cmp eax,000000E4h 4FD558 jz L004FD57F 4FD55A cmp eax,000000E2h 4FD55F jz L004FD57F 4FD561 cmp eax,000000E7h 4FD566 jz L004FD57F 4FD568 cmp eax,000000E5h 4FD56D jz L004FD57F Посмотреть журнал !!SN:E5433616/1; -------------------- |
|
|
|
Чёртос-2 (Chortos-2) Инженерный анализ 24 Sep 2007, 21:39
sergroj Таблица монстров состоит из таких структур: (одина... 28 Sep 2007, 21:30
Irh sergroj, зачет!
Добавлю то, что известно мне.
... 29 Sep 2007, 15:03
sergroj 1. На самом деле, Славин файл - это exe.
Для WoG 3... 29 Sep 2007, 21:37
Чёртос-2 (Chortos-2) Всё для WoG 3.58f.
Все адреса указаны в шестнадца... 30 Sep 2007, 20:50
Irh Координаты строений в городе
по смещению 0x0028AA... 04 Oct 2007, 21:52
Irh Рекомендую редактор двоичных файлов 010 Editor. Та... 12 Oct 2007, 22:23
Irh В принципе, для добавления отображаемого спрайта с... 12 Oct 2007, 22:54
major Регенерация существ
002F55C7 83F8 3C C... 15 Nov 2007, 20:27
Irh Номер города, у которого Грааль дает все заклинани... 17 Nov 2007, 15:49
Д'якон По указателю 0х004С2001 +224091
содержаться адр... 17 Nov 2007, 16:00
Entuser 7AD78 - тут в екзишнеке храниться число 5 - после ... 22 Jan 2008, 11:10
Master Of Puppets Цитата(Entuser @ 22 Jan 2008, 11:10)7AD78 - т... 27 Mar 2010, 08:02
Чёртос-2 (Chortos-2) Функция проверяет, есть ли у героя заданный артефа... 07 Mar 2008, 21:37
major Бесстрашие
002F7C6C 817F 34 84000000 CMP DWORD PT... 01 Jul 2008, 16:57
major Магическое зеркало
00048528 8179 34 86000000 CMP ... 01 Jul 2008, 17:30
hippocamus А Драколич разве облаком смерти стреляет? Какой-то... 04 Jul 2008, 11:37
major Облако смерти + иногда травит 04 Jul 2008, 12:50
major Таблица существ, в которые трансформируются сущест... 04 Jul 2008, 17:59
sergroj 24130C и 31DA14 - не постоянные адреса. На эти бло... 07 Jul 2008, 13:48
Чёртос-2 (Chortos-2) Цитата(FakerNeo @ 31 Jul 2008, 16:35)атака 44... 28 Sep 2008, 16:05
Master Of Puppets Заклинания, даваемые артефактами
По адресу mem004... 03 Feb 2010, 12:40
Дьяк 341 - не соглашусь. Никаких ограничений нет! Т... 04 Feb 2010, 19:24
Master Of Puppets Неважно, как я понял код. Всё равно ничего мне это... 05 Feb 2010, 13:30
Дьяк Я просто поправил информацию, что ты предоставил, ... 05 Feb 2010, 23:38
Master Of Puppets Спасибо, поправил.
Тут тоже поправь меня, если ош... 07 Feb 2010, 08:18
feanor КодCPU Disasm
0040EF33 BE 02000000 MOV ESI,... 10 Feb 2010, 22:44
Master Of Puppets Открытие окна героя:
!!SN:E5118576/1/x1/x2... 26 Feb 2010, 10:56
CrackedMind Создали бы давно уже какую нибудь вики и наполняли... 27 Feb 2010, 04:37
EtherniDee Была вики. Посещение - 0, желание создавать и офор... 27 Feb 2010, 15:21
feanor Боевые машины, покупаемые в кузнях
6AAA60 - табли... 28 Feb 2010, 21:44
tolich Цитата(feanor @ 28 Feb 2010, 21:44) Боева... 28 Feb 2010, 21:48
feanor 00642EA0 - таблица отображаемых в окне кузни сущес... 28 Feb 2010, 21:59
tolich Я имел в виду, что в Кузне телега и на Дворе Балли... 28 Feb 2010, 22:12
Master Of Puppets Вызов Торгового Поста:
!!SN:E6202560/1; 07 Mar 2010, 11:07
feanor 5A0649 - switch для боевых заклинаний. Вроде как и... 18 Mar 2010, 21:17
Master Of Puppets SUB_L004631E0 - функция, расставляющая существа (в... 21 Mar 2010, 07:47
laViper То есть можно нормально поставть 10 балист и они б... 25 Mar 2010, 19:38
etoprostoya Цитата(laViper @ 25 Mar 2010, 19:38)То есть м... 25 Mar 2010, 19:41
feanor Структура заклинаний.
Указатель на таблицу заклин... 25 Mar 2010, 19:51
Дьяк красава!!!! 25 Mar 2010, 19:53
Astaroth Кодint null; //?? - Может это невозможность появле... 26 Mar 2010, 15:56
etoprostoya Цитата(Astaroth @ 26 Mar 2010, 15:56)Кодint n... 26 Mar 2010, 16:45
feanor Для этого есть другая таблица, емнип. У меня вчера... 26 Mar 2010, 15:58
Master Of Puppets Шарпшутерство
75DD50 cmp eax,00000095h
75DD55 jz ... 30 Mar 2010, 10:15
feanor Комбо-артефакты
Кажется, таблица комбо-артефактов... 11 Apr 2010, 21:17
Дьяк Маленькое наблюдение.
Описанные тобой, МОР, свойст... 16 Apr 2010, 21:32
feanor Емнип, абилки вынесены в воговскую секцию для возм... 16 Apr 2010, 21:53
feanor Привязка удачи к артефактам.
К сожалению, это сдел... 17 Apr 2010, 21:56
Master Of Puppets Чуть-чуть.
Контрудары
В начале битвы:
43D6A0 cm... 21 Apr 2010, 13:21
feanor 5BDCE0 - Начисление плюшек спецстроениями типа вод... 25 Apr 2010, 16:19
feanor Цитата(Чёртос-2 (Chortos-2) @ 20 Ju... 25 Apr 2010, 17:05
Master Of Puppets SUB_L0044AA90 - функция проверки наличия существ у... 29 Apr 2010, 09:45
Vade Parvis ЦитатаF800 - красный. Гоблины с бластерами? 29 Apr 2010, 13:20
Master Of Puppets ЦитатаМаленькое наблюдение.
Описанные тобой, МОР, ... 01 May 2010, 07:19
feanor Навыки, дающиеся в Университете Сопряжения:
Код005... 10 Jun 2010, 10:35
feanor Объекты на карте
4A8160 - функция (один большой св... 12 Jun 2010, 20:49
Master Of Puppets Боян, но пусть будет:
679DD0h - массив стартовых ... 14 Jun 2010, 12:35
feanor Репортаж с чемоданов (:.
Структуры стэков на поле... 19 Jul 2010, 18:26
feanor Данные, как обычно, почти непроверенные и вообще и... 29 Jul 2010, 21:14
feanor Проверка на Доспехи Проклятого и Альянс Ангелов - ... 30 Jul 2010, 11:49
sergroj Вот покопал тип, подтип недели и месяца:
69844C W... 30 Jul 2010, 16:42
sergroj AI
Вычисляет ценность объекта для AI:
.text:005285... 14 Aug 2010, 19:55
feanor Структуры классов героя.
Адрес - 67В86С. Ссылки -... 15 Aug 2010, 01:29
sergroj что-то у тебя непонятное. Адрес где-то в середине ... 15 Aug 2010, 16:53
feanor ага, напортачил при поиске ссылок. Никогда больше ... 18 Aug 2010, 11:30
Master Of Puppets Тоже немного об ИИ.
Довольно часто (я насчитал 46 ... 04 Sep 2010, 05:48
feanor 006747B4 - таблица обитателей жилищ в городах. По ... 25 Dec 2010, 18:50
feanor Еще об артефактах, точнее, о расчете их (и не толь... 08 Jan 2011, 16:41
Лорд Хаарт Цитата004E3ED0 - функция, возвращающая тип поднима... 09 Jan 2011, 16:25
feanor sub_757045 - проверки на прямые атаки воговских су... 19 Jan 2011, 22:47
feanor 688f04 - таблица ресурсов, приносимых хранилищем. ... 23 Jan 2011, 22:52
MasterOfPuppets Настройки игры
Все адреса в порядке возрастания. ... 28 Feb 2011, 15:15
feanor Генератор случайного монстра
sub_4C8F80(void *thi... 02 Mar 2011, 23:56
Дьяк Правка генератора случайных монстров при старте ка... 13 Mar 2011, 14:41
MasterOfPuppets 6436A8h - родные почвы городов.
63D0A8h - таблица ... 05 Apr 2011, 14:21
etoprostoya Моя ИДА распознала эту функцию как __ftol (convert... 07 May 2011, 20:48
MasterOfPuppets [[0x699420]+0x132C4]
0 - человек сам управляет бое... 10 Jun 2011, 14:44
tolich А разве автобой с человеком не по той же схеме счи... 10 Jun 2011, 15:05
MasterOfPuppets Имеется в виду реальный бой, но в авторежиме. Когд... 10 Jun 2011, 15:07
tolich Цитата(MasterOfPuppets @ 10 Jun 2011, 15... 10 Jun 2011, 15:10
MasterOfPuppets Кстати, ошибся. Установка тоже работает. 05 Jul 2011, 13:30
Berserker Полезная штука. 05 Jul 2011, 14:46
Valery Is there any way to remove the 48 towns limit in g... 17 Jul 2011, 17:30
Sav Цитата(Dead @ 05 Nov 2011, 02:55 (Соо... 11 Feb 2012, 14:50
feanor Работа с моралью и удачей.
Наконец-то добрался до... 31 Jul 2012, 15:08
feanor Всякие мелочи, которые я возможно допилю до инстру... 14 Aug 2012, 19:31
feanor В рантайме же палитра {цвета игрока для интерфейса... 04 Nov 2012, 21:02
feanor О анимации почв и рек.
Как известно, вода, лава и... 18 Jan 2013, 22:34
feanor Все забываю.
https://dl.dropbox.com/u/61759222/H... 05 Apr 2013, 22:32
feanor Обновил файл на тот, что с новой базы
Чуть-чуть п... 12 Apr 2014, 00:49
feanor всяческие неупомянутые вещи из геймменеджера
Окно... 28 Nov 2015, 16:34
igrik Многие зашитые абилки существ
by Hawaiing
; ------... 14 Jan 2016, 15:31
feanor Кодint __stdcall ReadAdditionalFields(LoHook* ... 20 Mar 2016, 12:47
AlexSpl Кто-нибудь знает, как в Тройке определить, что игр... 21 Mar 2016, 23:28![]() ![]() |
| Текстовая версия | Сейчас: 12 May 2026 - 00:05 |
|
Copyright by Алексей Крючков
Programming by Degtyarev Dmitry |
|