совсем не так - RE - в данном контексте это приведение кода (elementclient.exe)(упакованного, зашифрованного и т.д..) в исходный вид - исходник (проект, листинг и т.д..) и желательно с комментами разработчика (что не бывает даже в кино)
p.s. через страниц 10 ктото умудрится запустить MHS и по новому кругу ляляля
Вот и пытаюсь в MHS воткнуть полное выделение. Кстати. функция респа в ближайший город лежит все там же (0x005D0550) ?
Всем привет. С обновлением перестали работать Флай и ВаллХак.. с ВаллХаком вроде разобралась, а вот с флаем не получается. Скачала [SmurfIT!] 3in1 поменяла там значение Base Address. Запускаю, Ф10, перс взлетает на чуть чуть и как бы застревает: ни выше подняться, ни пролететь не получается(` . Может кто нить подсказать что делать?
Цель пишется еще в одно смещение от структуры игрока обозначу как [+off]:
примерно так происходит:
ID -> [+ADC]
ID -> [+AE0]
Call 5B7B70
0 -> [+AE0]
ID -> [+ADC]
....
Call 42E690
видимо где-то происходит запись ID по Адр. 3BE3C2C
что интересно, если и в [+ADC] и в 3BE3C2C - ID цели пытаться изменить - он на мгновение записывается и вновь восстанавливается какой был.
Еще можно клик мышкой в это время с'эмулировать - может прокатит ...
Приведённый тобой инжект как раз его и реализует. Единственно тут другие базовый адреса и адрес вызова....
MOV_EDX_DWORD_PTR(9875524) , - енто их базовый адрес в десятичной системе $OPCODE &= "81c1ec000000", - енто часть исполняемого кода инжекта, реализует ассемблерную команду add ecx,000000ec MOV_EDX(5916464) - это запись адреса вызова функции в edx, т.е. они вместо прямого call 005ae040, используют 2 команды: mov edx, 005ae040 и затем call edx
Приведённый тобой инжект как раз его и реализует. Единственно тут другие базовый адреса и адрес вызова....
MOV_EDX_DWORD_PTR(9875524) , - енто их базовый адрес в десятичной системе $OPCODE &= "81c1ec000000", - енто часть исполняемого кода инжекта, реализует ассемблерную команду add ecx,000000ec MOV_EDX(5916464) - это запись адреса вызова функции в edx, т.е. они вместо прямого call 005ae040, используют 2 команды: mov edx, 005ae040 и затем call edx
Получается так [quote]Func SETCURENTMOBID($ID)
_MemoryWrite($OFFSET_TARGET, $PROCESS, "0x" & Hex($ID))
If $ID <> 0 Then
$OPCODE = ""
PUSHAD()
MOV_EAX_DWORD_PTR(0x0098addc) ; - базовый адрес
PUSH($ID)
MOV_ECX_DWORD_PTR_EAX_ADD(32)
$OPCODE &= "81c1ec000000"
MOV_EDX(0x005b7b70) ; запись адреса вызова функции в edx и затем call edx
CALL_EDX()
POPAD()
RET()
INJECTCODE($PROCESS)
quote]
но не работает. и не пойму что. Либо это либо сама функция инжекта
ступил я. пока исправлял - ответ пришел)
все-равно не хочет полное выделение делать. даже такой вариант пробовал PUSH("0x" & Hex($ID))
попробовал по варианту origmas'a
ID -> [+ADC]
ID -> [+AE]
Call 5B7B70
0 -> [+AE]
ID -> [+ADC]
....
Call 42E690
получилось так:
Quote:
If $ID <> 0 Then
$OFFSET_TARGET1 = $PERS_OFS + dec("AE")
_MemoryWrite($OFFSET_TARGET, $PROCESS, "0x" & Hex($ID))
_MemoryWrite($OFFSET_TARGET1, $PROCESS, "0x" & Hex($ID))
тоже не хочет выделять $PROCESS вроде как правильно прописан. ид в функцию передается в десятичном виде
Global $PROCESS_ID = WinGetProcess($APP_TITLE)
Global $PROCESS = _MemoryOpen($PROCESS_ID)
Программа для генерации offsets.ini для МHS:
1)Положите файл в две папки
1.В корней каталог игры.2.В папку MHS-Bot-PW 2.3
2)Запустите игру и включите программу из двух папок по отдельности.
3)В программе нажмите Generate MHS Offset File.После появится табличка с надписью File Generated-это значит,что все прошло успешно (если нет,то вы неудачник.пишите в техническую поддержку)
4)Вуаля! Запустите бота и сбросьте все настройки, которые были до этого и поставьте новые.
если ничего не поняли, попробуйте вот это -
замените сustom_offsets.ini
[Perfect_World_Base_Address_In_Decimal]
Application_Title=Element Client
Base_Address=10007676
[Custom_32_Offsets_In_Decimal]
Target_OffSet=2780
MaxMP_OffSet=1176
MaxHP_OffSet=1172
MP_OffSet=1128
HP_OffSet=1124
И виват MHS-Bot - 1-й бот, который будет бегать в новом PW !