Что нового

[AWplanet] Базовое значение текущих ХП

awCMIT

Новичок
Сообщения
7
Репутация
0
все та же игра http://awplanet.ru/
возникла проблема поиска текущего значения ХП персонажа...
С помощью СЕ находится базовое значение, однако после перезапуска клиента все меняется. Покопавшись по форуму нашел нечто похожее, но не помогло
Код:
#include <GUIConstants.au3>
#include <NomadMemory.au3>
Global $ProcessName = "www.awplanet.com   Portal to Another World     v 1.26"
Global $ProcessID = WinGetProcess($ProcessName,"")
SetPrivilege("SeDebugPrivilege", 1)
Global $DllInformation = _MemoryOpen($ProcessID)
Global $hWnd = WinGetHandle("www.awplanet.com   Portal to Another World     v 1.26", "")
Global $Process = "portal.exe"
Local $baseADDR = _MemoryModuleGetBaseAddress($ProcessID, $Process)
Global $HP = 0xC6A88
Global $mem1 = "0x"&hex($Process+$HP)
;Global $mem = 0x00c26a88
Global $CurrentHP = (_MemoryRead($mem1, $DllInformation, 'ptr'))
Global $CurHP = Int($CurrentHP) ;переход 10чной системе
   MsgBox (1,"проверь",$CurHP ,"")


Значение 0x00c26a88 действительно только для данного запуска клиента
 

winstan

Эксплотатор)
Сообщения
406
Репутация
79
Когда хп через CE ищишь в результатах поиска он зелёный?
 
Автор
A

awCMIT

Новичок
Сообщения
7
Репутация
0
да! появляется 2 зелёных результата, причем если сделать логнаут, то один сбрасывается на 0, второй остается на последнем значении ХП! Если вновь зайти, то оба показывают текущее значение жизней... Если же закрыть клиент и вновь его открыть, то адрес уже не существует
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
А как ты ведешь этот поиск? Просто меняешь искомое значение да? Ты не ищешь именно оффсет?
 
Автор
A

awCMIT

Новичок
Сообщения
7
Репутация
0
у меня сразу после первого отсева показывается адрес, подсвеченный зелёным...
точно, сейчас попробую оффсет найти

поиск оффсета результата не дал, т.к. искомое значение изначально выделяется зеленым, и имеет адресХХХХ6А88 или же portal.exe+C6A88
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
поищи в инете, кто-нибудь вообще впивался этой игре в память и какая на ней стоит защита (если стоит).
 
Автор
A

awCMIT

Новичок
Сообщения
7
Репутация
0
защиты никакой, судя по всему впивались, потому что есть программы, которые автоматически юзают все ячейки рюкзака, хотя на горячих клавишах там только 6 из 24 ячеек. PEiD показывает, что та программа написана на Microsoft Visual C# / Basic .NET


Добавлено:
Сообщение автоматически объединено:

адрес текущего значения ХП всегда имеет вид ХХХХ6А88, где ХХХХ после перезапуска клиента меняется, или же portal.exe+C6A88 который постоянно такой, но почему то не работает, выдает постоянно значение 0
 

winstan

Эксплотатор)
Сообщения
406
Репутация
79
Код:
#include <NomadMemory.au3>
Global $Process = "portal.exe"
Global $ProcessID = ProcessExists($Process)

SetPrivilege("SeDebugPrivilege", 1)
Global $DllInformation = _MemoryOpen($ProcessID)
Local $baseADDR = _MemoryModuleGetBaseAddress($ProcessID, $Process)
Global $HP = 0xC6A88
Global $mem1 = $baseADDR+$HP
Global $CurrentHP = (_MemoryRead($mem1, $DllInformation, 'ptr'))
   MsgBox (1,"проверь",$CurrentHP,"")

Попробуй так
 
Верх