-
Administrator
- Site Admin
- Posts: 5267
- Joined: Sat Jan 05, 2008 4:21 pm
[Tutorial] Finding pointers & offsets (ArtMoney)
#1
Post
by Administrator » Sat Jan 05, 2008 9:20 pm
Step 1
First start by finding the current address of whatever you want to find the pointer + offset to. For this example, lets use HP. Once you have found the address, move it over into the right table in ArtMoney. This is done by select the address on the left, and clicking the red arrow button.
Step 2
Now, right click it, and go to More -> Search -> Pointer to beginning of memory block. Now click OK. Once it finishes searching, click OK again.
Step 3
This step will return potentially thousands of addresses. Exit and restart the game. Make sure you re-select the game’s process. Now you’re going to Filter for the value of your HP (You should still be searching pointers–so don’t change any of the settings for filter; just the value). Click OK and let it search.
Repeat step 3, beginning with restarting the game each time, until you have located the exact pointer.
Step 4
You now have located the right pointer. Move this, now, into the right table by selecting it on the left, and moving it with the red arrow button. Right click on this new address, and select Edit. You’ll see something like this: Pointer 0x20F2910 + 296. This is your pointer and offset. This address will not be effected by restarting the game.
-
Guest
Re: [Tutorial] Finding pointers & offsets
#2
Post
by Guest » Sun Jan 27, 2008 3:33 pm
thanks for the tut
-
some206
- Posts: 7
- Joined: Sun Jan 27, 2008 3:36 pm
Re: [Tutorial] Finding pointers & offsets
#3
Post
by some206 » Sun Jan 27, 2008 3:47 pm
thanks for takeing ur time to make this cool tut
also i found the pointers & offsets for shaiya
HP 0210A880+296
MP 0210A880+308
SP 0210A880+312
tell me if i did it wrong since frist time doing it
-
Administrator
- Site Admin
- Posts: 5267
- Joined: Sat Jan 05, 2008 4:21 pm
Re: [Tutorial] Finding pointers & offsets
#4
Post
by Administrator » Mon Jan 28, 2008 4:56 pm
These look mostly correct for Shaiya. In fact, Ploxasaurus has posted related pointers and offsets on MPC and the CE forums in the same memory block.
-
gdwgdw
- Posts: 4
- Joined: Sun Feb 24, 2008 11:20 pm
Re: [Tutorial] Finding pointers & offsets
#5
Post
by gdwgdw » Sun Feb 24, 2008 11:35 pm
can u give me the link that the related pointers and offsets on MPC and the CE forums in the same memory block.
-
Administrator
- Site Admin
- Posts: 5267
- Joined: Sat Jan 05, 2008 4:21 pm
Re: [Tutorial] Finding pointers & offsets
#6
Post
by Administrator » Mon Feb 25, 2008 12:20 am
EDIT: After reading your other post, I actually understood what you were even looking for. But I do not have an answer for you. It really depends on how the game is made. It could prove problematic to actually find a pointer to a targeted monster.
-
nooberz
- Posts: 3
- Joined: Sat Mar 01, 2008 10:39 pm
Re: [Tutorial] Finding pointers & offsets
#7
Post
by nooberz » Sun Mar 02, 2008 9:31 pm
wow very helpful tutorial for a newb like me, btw im having a problem finding the delay of atk in shaiya, anyone who is pro in finding the memory address, im asking you kindly to help me T_T after searching for hrs i gave up, hoping somebody here can help me, or a simple hint where can i find it. thnx
-
Administrator
- Site Admin
- Posts: 5267
- Joined: Sat Jan 05, 2008 4:21 pm
Re: [Tutorial] Finding pointers & offsets
#8
Post
by Administrator » Mon Mar 03, 2008 1:19 am
I’m not really sure why you would want to find that, since it’s server sided and you can’t cast skills faster than the server allows. Or do you just mean attack speed? That doesn’t work well, either. It appears to be working, but you actually don’t do that much damage.
-
3cmSailorfuku
- Posts: 354
- Joined: Mon Jan 21, 2008 6:25 pm
Re: [Tutorial] Finding pointers & offsets
#9
Post
by 3cmSailorfuku » Mon Mar 03, 2008 2:14 am
nooberz wrote:wow very helpful tutorial for a newb like me, btw im having a problem finding the delay of atk in shaiya, anyone who is pro in finding the memory address, im asking you kindly to help me T_T after searching for hrs i gave up, hoping somebody here can help me, or a simple hint where can i find it. thnx
You equip weapons with different atk speeds and search for a changed value.
-
Mesosmagnet
- Posts: 37
- Joined: Wed Apr 23, 2008 7:11 am
Re: [Tutorial] Finding pointers & offsets
#10
Post
by Mesosmagnet » Wed Apr 23, 2008 9:37 am
NOSTALE(GLOBAL)
after repeating step 3 thirteen times I managed to reduce the amount of adresses from 5000+ to 4310 addresses. BUT after that no matter how many times i try (tried 8 times) the number of addresses wont go down. Is there any other way to reduce the number of addresses/pointers. I have tried changing maps and it did reduce the number by a few at the beginning..but after 4310 it refused to reduce the number of pointers/addresses i get.
Is there any other way to be able to set my script so that it will use potions when my characters HP goes down? Maybe by the color of the HP bar? or the number?
-
Administrator
- Site Admin
- Posts: 5267
- Joined: Sat Jan 05, 2008 4:21 pm
Re: [Tutorial] Finding pointers & offsets
#11
Post
by Administrator » Wed Apr 23, 2008 10:21 am
Is there any other way to reduce the number of addresses/pointers.
Read this post to see how it’s done in Cheat Engine. It’s not as simple, but it’s effective. I’m still in the process of writing a proper tutorial, so if this confuses you, then just wait till you see the new tutorial added to the memory hacking section of the forum.
Is there any other way to be able to set my script so that it will use potions when my characters HP goes down? Maybe by the color of the HP bar? or the number?
Yes, this would work, but it’s not very effective. The problem is that it highly depends on the users settings and/or hardware. If another person has even a slight variation in the color being displayed, it makes the code garbage. The same thing can be said if the user moves the HP bar around (if it’s in a static position), or if it displays above the monsters head (you can never really guess where it will be on the screen), or if an alpha channel is involved. Reading from the memory is the most effective way to accomplish this.
Who is online
Users browsing this forum: No registered users and 0 guests
Ангел Светлый
Ученик
(182),
на голосовании
12 лет назад
Пробовал способы, указанные здесь: artmoney.ru/manual/russian/dma.htm
Использование “Автоизменение адресов” не подходит, так как для этого необходимо каждый раз искать адрес параметра заново.
“Использование указателей” не увенчалось успехом. Ищу для моего адреса “Искать указатель на этот адрес” – 0 результатов.
При команде “Искать указатель на начало блока памяти” находятся множество значений. Перезапускаю приложение, произвожу отсеивание указателей по значению моего искомого параметра. Находится ноль указателей.
“Другой метод поиска указателей”: Нахожу адрес параметра А1 и неизвестные значения.
Нахожу адрес параметра А2. Вычитаю из адреса А2 адрес А1. Получается число 1F700h. Пробую отсеять неизвестные значения способом “Увеличилось на 1F700”. Появляется месседж “Неправильный метод. Попробуйте другой” Перевожу 1F700 из hex-системы счисления в dec. Получаю 128768. Также пытаюсь отсеять, получаю то же сообщение.
Итак, мне необходим алгоритм, с помощью которого можно было бы получить актуальный адрес параметра после любого количества перезапусков приложения. Возможно, вы поделитесь своими способами, или просто оставите ссылку на материал в интернете. Жду любой помощи.
Версии ArtMoney, которыми я пользовался – Pro v7.29 и Pro v7.34.1
Голосование за лучший ответ
(. ) ( .)
Гуру
(3018)
12 лет назад
в самой artmoney есть хелпер, там написанно как найти значения которое меняет адрес при перезапуске приложения, а проще по блокам памяти искать) но я не помню уже как это все делать)
Отсеивание по формуле в ArtMoney PRO видеоурок
· 11 авг 2011
· 3.2K
· 14
-
Поиск с отсеиванием по формуле – одна из главных фишек платной версии ArtMoney. Думаю, видео будет интересно тем, у кого еще нет платной версии. Видео по эмуляторной игре, но разумеется, все это можно использовать на любых ПК играх.
Все параметры в этом видео ищутся по формуле:
Поиск адреса жизней (попыток)
Поиск адреса очков
Поиск адреса неуязвимости (Invincibility)
Поиск адреса горизонтальной координаты игрока
Поиск адреса вертикальной координаты игрока
Поиск адреса таймера
Artmoney_manual_part_7_Wonder 3 Arcade Gear – Roosters_u-sm dot ru – YouTubeТаблица ArtMoney – скачать
Исходный видеофайл – скачать
Сорри, если что – не спам.
как находить указатели в играх, сто райтесь выставлять Макс.значения смещения, это волшебная функция, именно из за нею и находятся все указатели
в любых играх, ну и естественно это Макс.уровень, например выставляете Макс.значения смешения 20000, или 50000, ну или 150000, и ставите 3 уровень,
если не находит не чего, то выставляете Макс.значения смешения 10000, и уровень ставите 4, если опять не находит то выставляете уровень 5, и так до тех пор пока не найдёте указатель, система тут хитрая, вы можете на 1,2,3,4,5,6,7 уровнях не найти нужный указатель, а на 8 уровне сразу найдётся, я эту функцию изучил в до ль и поперёк, и ещё там есть настройки поиска указателей, ну дак вот там стоят 2 галочки на функциях, Без циклических указателей, и Обрабатывать адреса стека первого потока как статические, эти функции как мене кажется без полезны, я без них ищу указатели, и нахожу почти во всех играх, а всё потому что выставляю Макс.значения смешения очень большое смешения.
Изменено 23 марта, 2016 пользователем Baracuda
Ниже приводится оригинальный текст помощи к программе ArtMoney. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Для чего эта программа нужна | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Если вы хотите сжульничать в игре, то это ваша программа. Программа позволяет редактировать числовые значения (здоровье, деньги, ресурсы и т.д.). Она находит адреса памяти, в которых находятся числа, и позволяет изменять их. Работает на всех играх, даже на тех, которые кодируются и не имеют видимых числовых характеристик. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Требования к системе | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
– Полностью IBM PC AT совместимый компьютер 80386 и выше |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Что нового в версии 6.08 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Теперь языки выполнены в виде плагинов, они могут создаваться и распространяться отдельно от программы. Сейчас доступны следующие языковые плагины: русский, английский, немецкий, итальянский, латышский. Надеюсь, скоро будет еще. Если вы хотите создать новый языковой плагин, то напишите мне (hartmih@mail.ru), и вы получить пароль на редактирование плагинов. Все что вам для этого надо сделать это открыть файл, например, русского плагина любым текстовым редактором и перевести его. Исправлен блок программы поиска чисел с точками. Ранее на процессорах фирмы AMD (K6,K6-2,Athlon,Duron) возможны были сбои системы с синим экраном при поиске чисел с точкой. В таблице добавилась команда контекстного меню “установить значение” на выбранные адреса с возможностью установить шаг для значения. Левую таблицу теперь тоже можно изменять по ширине колонок и общую ширину ( Ctrl-Left, Ctrl-Right ). Прогноз оставшегося времени теперь более точный. И другие мелкие ошибки исправлены. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Руководство к действию | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1. Запустите ArtMoney. Запустите игру. Нажмите ALT-TAB и перейдите на ArtMoney. Теперь выберите процесс с игрой.
6. Продолжайте отсеивать, пока количество найденных чисел не будет уменьшаться. После этого переместите числа из левой в правую таблицу, нажав кнопку “Добавить” (Стрелочка). 7. В правой таблице вы можете делать с числами всё, что захотите: изменять, удалять, копировать, заморозить его значение ( не дать игре его изменить ). Для изменения значения двойной щелчок мыши на числе. Для заморозки щелчок мыши в первом столбце соответствующего значения. Вы можете сохранить эту таблицу, чтобы потом снова не искать всё заново, в просто загрузить. Используйте для этого клавиши “Сохранить”, “Загрузить” в самом низу главного окна. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Описание настроек | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Опция “Искать в диапазоне адресов” устанавливается, если вам примерно известен адрес переменной. Или устанавливается по команде “Искать в этом блоке памяти”, при этом, помните, что галочка автоматически не снимается. Режим “Экономить место на диске” запрещает сохранение промежуточных результатов на диске, что экономит место на диске, но не позволяет произвольно менять методы при отсеивании. Некоторые игры не позволяют вам переключаться на другие приложения, поэтому сочетания клавиш Alt+Tab, Ctrl+Esc не работают, тогда вы можете попытаться принудительно переключиться на ArtMoney, используя горячую клавишу. Приоритет сканирования определяет нагрузку процессора во время поиска и отсеивания. Рекомендую высокий приоритет, который примерно на 20% быстрее нормального. Полный приоритет увеличивает скорость сканирования на 30% и более, однако вы, возможно, не сможете отменить поиск.
Время регенерации – через этот интервал времени в миллисекундах происходит обновление значений в таблице. Время заморозки – через этот интервал времени в миллисекундах происходит запись замороженных значений в память. Показывать адресов – максимальное число адресов помещаемых в левую таблицу, рекомендуется 1000, более высокие значения могут привести к замедлению поиска. Знаков после точки – используется при отображении чисел с точкой.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Сохраняемые таблицы | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Использование “Авто изменение адресов” | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Иногда случается так, что ранее найденные и сохраненные адреса становятся недействительными (возможно, игра использует динамическое распределение памяти). В этих случаях вам не нужно находить заново все изменившиеся адреса. Сначала найдите новый адрес одного из изменившихся адресов. Затем выделите старый адрес в правой таблице и новый адрес в левой таблице и используйте команду меню “Авто изменение адресов”. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поиск последовательности значений | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Бывает в игре кроме денег надо еще копить различные ресурсы (пшено, кристаллы, бревна, ракеты, численность армии и т.д.), так вот эти ресурсы если на экране идут подряд, то и в памяти, обычно, идут в той же последовательности, именно эту последовательность и можно найти. Особенно мне помогло в таких играх, как HMM2 (численность армии) и Settler 2 (ресурсы). В некоторых играх дата записывается как последовательность целых чисел – месяц, число, год (например HMM3). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поиск диапазона значений | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поиск неизвестного значения | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Например, я взял игру HMM3 и нашел деньги методом поиска неизвестного значения ( результат смотрите в таблице ). Процессор – Pentium 233, память – 32Mb. Тип числа – целое 4 байта. Всего у меня на нахождение денег ушло 22 минуты, так как игра довольно большая ( размер данных процесса 27Mb ). Первое отсеивание было довольно удачное ( найдено всего 173 тысячи адресов ), а в случае если изображение на экране изменяется, то второе отсеивание увеличиваеться в два раза, и общее время практически до 35 минут. Самым продолжительный по времени всегда третий шаг – второе отсеивание. Уже на 16 шаге стало понятно, где деньги, однако лучше всего продолжать пока найденные адреса не перестают уменьшаться, а после этого находим деньги перебором, то есть просто заносим по адресу какое-нибудь число и смотрим, не изменились ли деньги в игре. Данный метод хорошо сочетается с поиском диапазона значений, особенно для полосок знергии. Для уменьшения общего времени взлома на 5-10 шаге отсейте заведомо ложные значения. Оставте, например, только от 0 до 200, правда это не всегда справедливо, посколько одно деление жизни может быть равно какому-то числу, например, для игры Half-Life одно деление жизни хранится как 171, то есть если у вас 100%, то в памяти оно хранится как 17100. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поиск кодированного значения | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поиск в блоке памяти | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|