Current time: 24.11.2024, 14:41 Hello There, Guest! (LoginRegister)
Language: english | russian  

Poll: Интересно ли вам научиться самим находить необходимые данные в exe игры без посторонней помощи?
This poll is closed.
Да! 57.14% 8 57.14%
Конечно же ДА!!! 42.86% 6 42.86%
[...] 0% 0 0%
Total 14 votes 100%
* You voted for this item. [Show Results]

Post Reply 
Threaded Mode | Linear Mode
Реверс игры для новичков
» Небольшой туториал по нахождению данных для UN:C
Author Message
Zur13 Offline

Posts: 223
Post: #28

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

Возможно получилось немного сумбурно, но я вначале пошел не по тому пути и попытался найти нужное место через исходники ВоГ, но в итоге оказалось что вся нужная информация есть в креш лог файле, но первый этап будет полезен для других задач, когда игра не падает.

У меня задача была такая: при попытке передвинуть боевую машину на поле битвы используя команду BM:P игра падает, нужно это исправить патчем.

Общая информация по ресурсам для этого туториала:

1. В сборке ERA 2.9.14 есть исходники WoG и ERA

HoMM 3 Complete ERA 2.9.14\Tools\Era\Sources\Era 2.6x Delphi 2007\
HoMM 3 Complete ERA 2.9.14\Tools\WoG Sources

2. При падении игра генерирует лог файл с описанием того что произошло при падении, в корне папки с игрой появляется файл HD_CRASH_LOG.TXT

3. Для третьего этапа можно подсматривать нужные команды по ссылкам

Краткое описание ассемблерных комманд
Краткое описание ассемблерных комманд с кодами операций
Подробное описание ассемблерных комманд с кодами операций



Итак часть первая как по ЕРМ ресиверу BM:P найти участок кода игры в ИДА, который его обрабатывает.



Итак часть вторая как с помощью крешлога найти место падения игры.



На данном этапе мы знаем, что падение вызвано тем что у перемещаемого монстра (подводы боеприпасов) нет звукового файла который должен проигрываться при перемещении. Правильным вариантом в этом случае было бы назначение стеку боевых машин звука перемещения или другие правки которые приведут к тому же результату (больше подробностей чуть ниже в сообщении XEPOMAHT). Но в учебных целях мы попробуем исправить это с помощью правки найденого выше участка кода игры "на лету" из ЕРМ скрипта.

Итак часть третья как пропатчить КДЕ2 под FreBSD, шутка Sm , как исправить креш патчем кода с помощью UN:C.



Вопрос знатокам, насколько плохо то что я сделал в третьей части и можно ли такое проворачивать?
(This post was last modified: 25.07.2020 04:44 by Zur13.)
24.07.2020 03:26
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Messages In This Thread
Реверс игры для новичков - igrik - 22.07.2020, 12:55
RE: Как найти нужные адреса и данные для UN:C - wessonsm - 22.07.2020, 21:40
RE: Как найти нужные адреса и данные для UN:C - daemon_n - 22.07.2020, 21:55
RE: Как найти нужные адреса и данные для UN:C - Raistlin - 23.07.2020, 00:37
RE: Как найти нужные адреса и данные для UN:C - igrik - 23.07.2020, 01:59
RE: Как найти нужные адреса и данные для UN:C - XEPOMAHT - 23.07.2020, 02:54
RE: Как найти нужные адреса и данные для UN:C - RoseKavalier - 23.07.2020, 04:26
RE: Как найти нужные адреса и данные для UN:C - V_Maiko - 23.07.2020, 07:04
RE: Как найти нужные адреса и данные для UN:C - PerryR - 23.07.2020, 09:51
RE: Как найти нужные адреса и данные для UN:C - daemon_n - 23.07.2020, 10:55
RE: Как найти нужные адреса и данные для UN:C - wessonsm - 23.07.2020, 11:54
RE: Как найти нужные адреса и данные для UN:C - XEPOMAHT - 23.07.2020, 12:18
RE: Как найти нужные адреса и данные для UN:C - daemon_n - 23.07.2020, 12:55
RE: Как найти нужные адреса и данные для UN:C - XEPOMAHT - 23.07.2020, 13:29
RE: Как найти нужные адреса и данные для UN:C - Berserker - 23.07.2020, 15:52
RE: Как найти нужные адреса и данные для UN:C - XEPOMAHT - 23.07.2020, 16:04
RE: Как найти нужные адреса и данные для UN:C - Zur13 - 23.07.2020, 16:32
RE: Как найти нужные адреса и данные для UN:C - RoseKavalier - 23.07.2020, 18:47
RE: Как найти нужные адреса и данные для UN:C - Berserker - 23.07.2020, 20:39
RE: Как найти нужные адреса и данные для UN:C - V_Maiko - 24.07.2020, 03:15
RE: Как найти нужные адреса и данные для UN:C - Zur13 - 24.07.2020 03:26
RE: Как найти нужные адреса и данные для UN:C - igrik - 24.07.2020, 10:19
RE: Как найти нужные адреса и данные для UN:C - Zur13 - 24.07.2020, 11:29
RE: Как найти нужные адреса и данные для UN:C - XEPOMAHT - 24.07.2020, 12:45
RE: Как найти нужные адреса и данные для UN:C - Zur13 - 24.07.2020, 13:32
RE: Как найти нужные адреса и данные для UN:C - XEPOMAHT - 24.07.2020, 15:08
RE: Как найти нужные адреса и данные для UN:C - igrik - 24.07.2020, 15:38
RE: Реверс игры для чайников - igrik - 24.07.2020, 12:08
RE: Реверс игры для новичков - Berserker - 24.07.2020, 17:35
RE: Реверс игры для новичков - igrik - 24.07.2020, 17:50
RE: Реверс игры для новичков - daemon_n - 24.07.2020, 19:39
RE: Реверс игры для новичков - RoseKavalier - 25.07.2020, 04:10
RE: Реверс игры для новичков - daemon_n - 25.07.2020, 11:09
RE: Реверс игры для новичков - RoseKavalier - 25.07.2020, 17:45
RE: Реверс игры для новичков - daemon_n - 25.07.2020, 19:30
RE: Реверс игры для новичков - wessonsm - 26.07.2020, 00:10
RE: Реверс игры для новичков - daemon_n - 26.07.2020, 01:43
RE: Реверс игры для новичков - wessonsm - 11.02.2022, 06:09
RE: Реверс игры для новичков - XEPOMAHT - 11.02.2022, 06:57
RE: Реверс игры для новичков - wessonsm - 11.02.2022, 07:03
RE: Реверс игры для новичков - daemon_n - 01.06.2022, 05:45
RE: Реверс игры для новичков - wessonsm - 03.09.2022, 06:26
RE: Реверс игры для новичков - daemon_n - 03.09.2022, 09:17
RE: Реверс игры для новичков - wessonsm - 03.09.2022, 11:01
RE: Реверс игры для новичков - Berserker - 03.09.2022, 11:35
RE: Реверс игры для новичков - daemon_n - 03.09.2022, 11:45
RE: Реверс игры для новичков - XEPOMAHT - 03.09.2022, 15:04
RE: Реверс игры для новичков - Berserker - 03.09.2022, 12:47
RE: Реверс игры для новичков - Berserker - 03.09.2022, 19:24
RE: Реверс игры для новичков - daemon_n - 03.09.2022, 23:20
RE: Реверс игры для новичков - XEPOMAHT - 04.09.2022, 04:47
RE: Реверс игры для новичков - Berserker - 04.09.2022, 07:10
RE: Реверс игры для новичков - Berserker - 04.09.2022, 08:07
RE: Реверс игры для новичков - wessonsm - 04.09.2022, 08:56
RE: Реверс игры для новичков - Berserker - 04.09.2022, 08:59
RE: Реверс игры для новичков - wessonsm - 04.09.2022, 09:02
RE: Реверс игры для новичков - daemon_n - 04.09.2022, 09:07
RE: Реверс игры для новичков - Berserker - 04.09.2022, 09:10
RE: Реверс игры для новичков - wessonsm - 04.09.2022, 09:15
RE: Исследование героев - Zur13 - 22.07.2020, 13:17
RE: Исследование героев - XEPOMAHT - 22.07.2020, 13:41
RE: Исследование героев - PerryR - 22.07.2020, 13:43
RE: Исследование героев - XEPOMAHT - 22.07.2020, 14:14
RE: Исследование героев - Berserker - 22.07.2020, 16:41
RE: Исследование героев - daemon_n - 22.07.2020, 18:30
RE: Исследование героев - RoseKavalier - 22.07.2020, 18:36
RE: ERA III - daemon_n - 18.05.2022, 20:25
RE: ERA III - wessonsm - 18.05.2022, 21:17
RE: ERA III - daemon_n - 18.05.2022, 21:19
RE: ERA III - wessonsm - 18.05.2022, 22:02
RE: ERA III - Berserker - 18.05.2022, 22:29
RE: ERA III - igrik - 19.05.2022, 19:29

Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group