Программа ArtMoney
Руководство к программе.
Использование указателей и "Авто изменение адресов".
Динамическое распределение памяти Если случается так, что ранее найденные и сохраненные адреса становятся недействительными, это значит, что игра использует динамическое распределение памяти. Недействительные адреса - это значит, что там не то, что в игре или нет никакого значения вообще (пишется <НЕТ>). Итак, рассмотрим природу этого явления "динамическое распределение памяти" по-английски "Dynamic Memory Allocation" сокращенно DMA. Когда игре необходима дополнительная память она использует функцию Windows для получения памяти. Windows раздает участки памяти случайно, то есть по DMA. Из этого следует, что перезапуск игры приводит к полной переделки всей карты памяти. Блоки памяти меняются местами, адреса меняются.
Использование "Автоизменение адресов" Итак, после перезапуска игры все адреса поменялись. В этих случаях вам не нужно находить заново все изменившиеся адреса. Сначала найдите новый адрес одного из изменившихся адресов. Затем выделите старый адрес в правой таблице и новый адрес в левой таблице и используйте команду меню "Автоизменение адресов". Практически, программа находит разницу между старым и новым адресом и прибавляет эту разницу ко всем адресам в таблице. Например, качаем с сайта ArtMoney таблицу "Warcraft 3 (hero)" от JS. Запустите ArtMoney и потом игру "Warcraft 3". Переключитесь из игры на ArtMoney используя Alt+Tab. Загружаем таблицу в ArtMoney. Мы видим это:
Мда, совсем не то. Ищем опыт (Experience), у меня он равен 600. Убиваем в игре кого нибудь опыт стал 650. Отсеиваем. Получаем один адрес 1486071C. Делаем как показано на рисунке команду "Автоизменение адресов на все". В случае разбивке по группам делаем "на группу"
Получаем в результате это:
Вуаля, все работает!
Использование указателей
Указатели используется только в играх Win32 имеющих исполняемый файл. Никакие DOS игры, эмуляторы, интернет браузеры и игры Macromedia Flash указателей не имеют! И искать их бесполезно!
Иногда попадаются структуры типа "Указатель на указатель", в этом случае данное руководство не поможет. В следующих версиях постараемся этот вопрос решить.
Адреса меняются после перезапуска игры. Но игра должна знать, где её параметры поэтому существует ячейка в которой записан адрес этого параметра. Эта ячейка называется указателем на адрес, фактически она его содержит.
Адрес указателя при перезагрузке игры не меняется. То есть, если адреса в таблице привязать к указателю, то получим таблицу, значения в которой всегда актуальны. Итак, выделяем ячейку с опытом и делаем команду "Искать указатель на этот адрес". Находим этот указатель и привязываем командой "Установить указатель на все" или "на группу".
Упс, но мы ничего не находим! Это значит что указатель не на адрес с опытом, а на структуру, начало которой мы не знаем. Итак, опять выделяем ячейку с опытом и делаем команду "Искать указатель на начало блока памяти".
Тем самым мы найдем все указатели на диапазон адресов между началом блока и ячейкой с опытом. Таких указателей нашлось 50 штук.
Перезапускаем игру. Нажисаем кнопку "Отсеять" и делаем "Отсеивание указателей" на значение 650.
Такой указатель один. Если указатель не один, то перезапускаем игру и опять делаем "Отсеивание указателей". И так несколько раз. Если все равно получается несколько адресов, то выбираем любой. В левой таблице выделяем указатель, в правой таблице выделяем ячейку с опытом и делаем команду "Установить указатель на все"
Вот и всё! Мы имеем таблицу, адреса которой не меняются при перезагрузке игры.
Указатель 6F71C7B8 указывает на адрес 01170088
Адрес 01170088 есть адрес начала структуры, описывающей нашего героя.
Адрес 01170088 плюс смещение 1684, равный 0117071C, есть адрес опыта.
Тем самым мы привязались к адресу началу структуры, и имеем дело с относительными адресами. Адрес опыта 1684 относительно начала структуры получаемого из указателя 6F71C7B8.
Полученная таблица выглядит следующим образом:
Указатель 6F71C7B8 + 1684 / Experience
Указатель 6F71C7B8 + 1688 / Points
Указатель 6F71C7B8 + 1692 / Power
Указатель 6F71C7B8 + 1712 / Dexterity
Указатель 6F71C7B8 + 1712 / Health
Указатель 6F71C7B8 + 1744 / Manna

Возможные действия с указателями
Сохранить адрес/указатель - сохранить адрес/указатель/смещение для последующей работы.
Установить указатель на все (на группу) - выделяем один указатель в найденных и один адрес в таблице, сопоставляем их, то есть предполагается, что искали указатель на этот адрес, остальные адреса/указатели в таблице переводятся в указатели со смещение относительно исходного адреса.
Установить сохраненный указатель на все (на группу) - тоже самое, что выше, но указатель берется из сохраненного командой "Сохранить адрес/указатель ". Плюс дополнительно добавляется ко всем смещениям - сохраненное смещение.
Установить все указатели на этот адрес - всем указателям в таблице присваевается смещение, чтобы они указывали на этот адрес (адрес должен быть выделен).
Установить все указатели на сохраненный адрес - тоже самое, что выше, но адрес берется из сохраненного командой "Сохранить адрес/указатель".
Преобразовать указатели в адреса - обратная команда к "Установить указатель". Все выбранные указатели превращаются в адреса.
Другой метод поиска указателей
P.S. Кроме того, указатели можно искать и как любые другие значения. Для этого вам нужно запустить два ArtMoney, из разных каталогов (из одного работать не будет). Можно использовать один ArtMoney, но использовать Сохранение/Загрузку отсеиваний.
Запустите игру. Первая ArtMoney - Найдите адрес жизни A1. Вторая ArtMoney - Сделайте поиск неизвестного значения.
Перезапустите игру. Первая ArtMoney - Найдите адрес жизни A2. Вторая ArtMoney - Ищите "Увеличилось на (A2-A1)"
Перезапустите игру. Первая ArtMoney - Найдите адрес жизни A3. Вторая ArtMoney - Ищите "Увеличилось на (A3-A2)"
Наконец вы получите адрес указателя.
Смещение = адрес жизни (A3) - значение указателя.
Содержание (Всё о программе ArtMoney)
- Руководство к действию: Как обманывать игры.
- Поиск точного значения. На примере игры "Heroes Of Might And Magic 4"
- Поиск диапазона значений. На примере игры "Age Of Empires 2"
- Поиск неизвестного значения. На примере игры "Heroes Of Might And Magic 3"
- Поиск кодированного значения. На примере игры "Imperium Galactica 2"
- Поиск последовательности значений. На примере игры "Heroes Of Might And Magic 2"
- Поиск в блоке памяти. На примере игры "Горький-17"
- Использование указателей и "Авто изменение адресов". На примере игры "Warcraft 3"
- Поиск в файлах
- Отсеивание по формуле
- Сохранение и загрузка процесса
- Поиск значений в эмуляторах игровых приставок
- Описание версий программы
- Описание настроек программы
- Сохраняемые таблицы. Видимая группа
- Часто задаваемые вопросы и ответы (ЧАВО)
Требования к системе
Полностью IBM PC AT совместимый компьютер минимум 80486 с 8Mb ОЗУ или выше
Операционная система Microsoft Windows 95/98/ME/NT4/2000/XP/2003
Лицензионное соглашение для ArtMoney
О платной редакции PRO
|