Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Не работает инжект движения

-

Общение разработчиков

- Программирование для Perfect World, общение и обсуждене разработок

Ответ
 
Опции темы
Старый 14.06.2015, 02:34   #16
 Разведчик
Аватар для fds255
 
fds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известен
Регистрация: 23.06.2012
Сообщений: 43
Популярность: 427
Сказал(а) спасибо: 18
Поблагодарили 59 раз(а) в 35 сообщениях
 
По умолчанию Re: Не работает инжект движения

В общем, кажется получилось расковырять движение по автопути:

Код:
Движение по осям Х, У:

CPU Disasm
Address   Hex dump          Command                                  Comments
0075582F  |> \50            PUSH EAX                                 ; /Arg8  -  указатель на адрес $00BEDE04
00755830  |.  8B4424 08     MOV EAX,DWORD PTR SS:[ARG.1]             ; |
00755834  |.  8B48 08       MOV ECX,DWORD PTR DS:[EAX+8]             ; |
00755837  |.  8B50 04       MOV EDX,DWORD PTR DS:[EAX+4]             ; |
0075583A  |.  8B00          MOV EAX,DWORD PTR DS:[EAX]               ; |
0075583C  |.  51            PUSH ECX                                 ; |Arg7  -  координата по оси Y
0075583D  |.  8B0D 44E4D200 MOV ECX,DWORD PTR DS:[0D2E444]           ; |
00755843  |.  52            PUSH EDX                                 ; |Arg6  -  координата по оси Z
00755844  |.  50            PUSH EAX                                 ; |Arg5  -  координата по оси X
00755845  |.  6A 03         PUSH 3                                   ; |Arg4 = 3
00755847  |.  8B49 1C       MOV ECX,DWORD PTR DS:[ECX+1C]            ; |
0075584A  |.  6A 00         PUSH 0                                   ; |Arg3 = 0
0075584C  |.  6A 00         PUSH 0                                   ; |Arg2 = 0
0075584E  |.  68 4A010000   PUSH 14A                                 ; |Arg1 = 14A
00755853  |.  E8 C816D0FF   CALL 00456F20                            ; \elementclient.00456F20

Движение по оси Z (подъем вверх)

CPU Disasm
Address   Hex dump          Command                                  Comments
0053210B  |.  6A 00         PUSH 0                                   ; /Arg8 = 0
0053210D  |.  8A86 5C020000 MOV AL,BYTE PTR DS:[ESI+25C]             ; |
00532113  |.  6A 00         PUSH 0                                   ; |Arg7 = 0
00532115  |.  50            PUSH EAX                                 ; |Arg6  -  приземлиться у цели, может быть 1 или 0
00532116  |.  51            PUSH ECX                                 ; |Arg5  -  координата по оси Z
00532117  |.  8B4A 1C       MOV ECX,DWORD PTR DS:[EDX+1C]            ; |
0053211A  |.  6A 01         PUSH 1                                   ; |Arg4 = 1
0053211C  |.  6A 00         PUSH 0                                   ; |Arg3 = 0
0053211E  |.  6A 00         PUSH 0                                   ; |Arg2 = 0
00532120  |.  68 4A010000   PUSH 14A                                 ; |Arg1 = 14A
00532125  |.  E8 F64DF2FF   CALL 00456F20                            ; \elementclient.00456F20
Как видно, код не сильно поменялся, добавили лишь восьмую переменную.
________________
MultiXBot
MultiX_POT
  Ответить с цитированием
Старый 14.06.2015, 13:51   #17
 Разведчик
Аватар для Hilling
 
Hilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личность
Регистрация: 05.09.2010
Сообщений: 32
Популярность: 1182
Сказал(а) спасибо: 38
Поблагодарили 12 раз(а) в 10 сообщениях
 
По умолчанию Re: Не работает инжект движения

Цитата:
Сообщение от fds255Посмотреть сообщение
Как видно, код не сильно поменялся, добавили лишь восьмую переменную.

Вот же. А наш икспЭрт, занимающийся серверной частью, считал иначе
  Ответить с цитированием
Старый 14.06.2015, 13:56   #18
 Старший сержант
Аватар для N00bSa1b0t
 
N00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядом
Регистрация: 09.04.2010
Сообщений: 204
Популярность: 5518
Сказал(а) спасибо: 49
Поблагодарили 512 раз(а) в 198 сообщениях
 
По умолчанию Re: Не работает инжект движения

Цитата:
Как видно, код не сильно поменялся, добавили лишь восьмую переменную.

Инжект автопути остался тот же самый, что и тут: http://zhyk.ru/forum/showpost.php?p=...6&postcount=15
Лишь изменился адрес. И там и так было 8 аргументов
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]-cофт и прочее для комфортной игры в PW.
PW Everyday Helper Bot
  Ответить с цитированием
Пользователь сказал cпасибо:
fds255 (14.06.2015)
Старый 14.06.2015, 15:23   #19
 Пехотинец
Аватар для pwgamer
 
pwgamer никому не известный тип
Регистрация: 11.11.2010
Сообщений: 67
Популярность: 16
Сказал(а) спасибо: 58
Поблагодарили 8 раз(а) в 5 сообщениях
 
По умолчанию Re: Не работает инжект движения

Автопуть работает, а вот простое движение нет. Мы и мучаем движение.
  Ответить с цитированием
Старый 14.06.2015, 18:59   #20
 Разведчик
Аватар для fds255
 
fds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известенfds255 скоро будет известен
Регистрация: 23.06.2012
Сообщений: 43
Популярность: 427
Сказал(а) спасибо: 18
Поблагодарили 59 раз(а) в 35 сообщениях
 
По умолчанию Re: Не работает инжект движения

Hilling, не стоит иронизировать, я просто привел выдержку именно автопути, а не обычного движения. Твоего поста с восемью аргументами я действительно не видел.
N00bSa1b0t, Hilling, спасибо за подсказку, честно говоря я не пробовал вместо Arg8 подставить 0, действительно работает. А вот по поводу того, что Arg8 был раньше, не совсем согласен, в предыдущей версии клиента передавалось только 7 аргументов:

Код:
CPU Disasm
Address   Hex dump          Command                                  Comments
0051732E    51              PUSH ECX
0051732F    52              PUSH EDX
00517330    8B15 ACEFCC00   MOV EDX,DWORD PTR DS:[0CCEFAC]
00517336    50              PUSH EAX
00517337    6A 00           PUSH 0
00517339    6A 00           PUSH 0
0051733B    8B4A 1C         MOV ECX,DWORD PTR DS:[EDX+1C]
0051733E    6A 00           PUSH 0
00517340    68 4A010000     PUSH 14A
00517345    E8 2624F3FF     CALL 00449770
________________
MultiXBot
MultiX_POT
  Ответить с цитированием
Старый 14.06.2015, 19:59   #21
 Разведчик
Аватар для ukurenijboter
 
ukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известен
Регистрация: 19.08.2011
Сообщений: 25
Популярность: 465
Сказал(а) спасибо: 2
Поблагодарили 17 раз(а) в 9 сообщениях
Отправить сообщение для ukurenijboter с помощью Skype™
 
По умолчанию Re: Не работает инжект движения

Цитата:
Сообщение от ArvolПосмотреть сообщение
Народ, помогите пожалуйста, всю голову сломал.
Не работает WalkCall, крашит клиент:

Вы пробовали установить, в каком именно месте "крашит"?
Ну, я например обычно это делаю так:
1)задаю адрес "флага"
2)в "подозрительных" местах устанавливаю команду, записать контрольное значение по этому адресу...
Пример:
кусок асм кода
MOV [flagadress] , 1
кусок асм кода
MOV [flagadress] , 2
кусок асм кода
MOV [flagadress] , 3
кусок асм кода
MOV [flagadress] , 4
кусок асм кода
MOV [flagadress] , 5


Далее, в зависимости, от того, что успеет записаться по этому адресу до краша, можно судить о том, где примерно возникает ошибка. Ну это при условии, что клиент не кикается а только зависает, и он еще продолжает висеть.
________________
Skype: ScriptoZ
ЗАПРОС АВТОРИЗАЦИИ=ИГНОР
  Ответить с цитированием
Старый 14.06.2015, 20:31   #22
 Пехотинец
Аватар для pwgamer
 
pwgamer никому не известный тип
Регистрация: 11.11.2010
Сообщений: 67
Популярность: 16
Сказал(а) спасибо: 58
Поблагодарили 8 раз(а) в 5 сообщениях
 
По умолчанию Re: Не работает инжект движения

Креш идет при инжекте в игру. Значит не верный сбор команд в инжект. Офсеты верные, значит что-то в команде изменили.
  Ответить с цитированием
Старый 14.06.2015, 21:03   #23
 Разведчик
Аватар для ukurenijboter
 
ukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известен
Регистрация: 19.08.2011
Сообщений: 25
Популярность: 465
Сказал(а) спасибо: 2
Поблагодарили 17 раз(а) в 9 сообщениях
Отправить сообщение для ukurenijboter с помощью Skype™
 
По умолчанию Re: Не работает инжект движения

Цитата:
Сообщение от pwgamerПосмотреть сообщение
Креш идет при инжекте в игру

ну так он может возникать в разных местах в самом коде который инжектируется, может возникать при передаче неправильных аргуметов в functioncall1,2,3 а может еще где-то. У меня например возникал краш не поверишь где, в том месте где идет запись координат:
mov dword ptr[ecx+$20], eax
mov eax, z
mov dword ptr[ecx+$24], eax
mov eax, y
mov dword ptr[ecx+$28], eax

Безобидное казалось бы место. А нет. И таким образом я установил, что операции чтения и записи лучше производить при помощи функций OpenProcess ReadProcessMemory WriteProcessMemory. В самом асм. Итог - крашей как не бывало. В частности, код из первого поста у меня работает исправно, с поправкой на то, что операции чтения и записи из памяти и в память, я прпоизвожу этими функциями. Код длиннее конечно, но зато работает.
________________
Skype: ScriptoZ
ЗАПРОС АВТОРИЗАЦИИ=ИГНОР
  Ответить с цитированием
Старый 14.06.2015, 21:16   #24
 Разведчик
Аватар для Simyr
 
Simyr никому не известный тип
Регистрация: 23.10.2010
Сообщений: 7
Популярность: 12
Сказал(а) спасибо: 0
Поблагодарили 7 раз(а) в 5 сообщениях
 
По умолчанию Re: Не работает инжект движения

Вот это работало на предыдущем PWI
Код:
  Walk1 = $4a1aa0
  Walk2 = $4a7de0
  Walk3 = $4a2090
  ActArr = $13f0
 opcode.s ="60"                  ;60  PUSHAD
 opcode=opcode+"b800000000"      ;B8 00000000    MOV EAX,#BA
 opcode=opcode+"8b00"            ;8B00           MOV EAX,DWORD PTR DS:[EAX]
 opcode=opcode+"8b401c"          ;8B40 1C        MOV EAX,DWORD PTR DS:[EAX+1C]
 opcode=opcode+"8b7028"          ;8B70 28        MOV ESI,DWORD PTR DS:[EAX+28]
 opcode=opcode+"8B8E00000000"    ;8B8E 11111111  MOV ECX,DWORD PTR DS:[ESI+ActArr]
 opcode=opcode+"6a01"            ;6A 01          PUSH 1
 opcode=opcode+"BA00000000"      ;BA 00000000    MOV EDX,Walk1
 opcode=opcode+"FFD2"            ;FFD2           CALL EDX
 opcode=opcode+"8bf8"            ;8BF8           MOV EDI,EAX
 opcode=opcode+"8d442418"        ;8D4424 18      LEA EAX,DWORD PTR SS:[ESP+18]
 opcode=opcode+"50"              ;50             PUSH EAX
 opcode=opcode+"ba00000000"      ;BA 00000000    MOV EDX, fly mode
 opcode=opcode+"52"              ;52             PUSH EDX
 opcode=opcode+"8bcf"            ;8BCF           MOV ECX,EDI
 opcode=opcode+"BA00000000"      ;BA 00000000    MOV EDX,Walk2
 opcode=opcode+"ffd2"            ;FFD2           CALL EDX
 opcode=opcode+"8b8e00000000"    ;8B8E 22222222  MOV ECX,DWORD PTR DS:[ESI+ActArr]
 opcode=opcode+"b800000000"      ;B8 00000000    MOV EAX,Xcoord
 opcode=opcode+"8bd7"            ;8BD7           MOV EDX,EDI
 opcode=opcode+"83c220"          ;83C2 20        ADD EDX,20
 opcode=opcode+"8902"            ;8902           MOV DWORD PTR DS:[EDX],EAX
 opcode=opcode+"b800000000"      ;B8 00000000    MOV EAX,Zcoord
 opcode=opcode+"8bd7"            ;8BD7           MOV EDX,EDI
 opcode=opcode+"83c224"          ;83C2 24        ADD EDX,24
 opcode=opcode+"8902"            ;8902           MOV DWORD PTR DS:[EDX],EAX
 opcode=opcode+"b800000000"      ;B8 00000000    MOV EAX,Ycoord
 opcode=opcode+"8bd7"            ;8BD7           MOV EDX,EDI
 opcode=opcode+"83c228"          ;83C2 28        ADD EDX,28
 opcode=opcode+"8902"            ;8902           MOV DWORD PTR DS:[EDX],EAX
 opcode=opcode+"6A00"            ;6A 00          PUSH 0
 opcode=opcode+"6A01"            ;6A 01          PUSH 1
 opcode=opcode+"57"              ;57             PUSH EDI
 opcode=opcode+"6A01"            ;6A 01          PUSH 1
 opcode=opcode+"BA00000000"      ;BA 00000000    MOV EDX,Walk3
 opcode=opcode+"ffd2"            ;FFD2           CALL EDX
 opcode=opcode+"61"              ;61             POPAD
 opcode=opcode+"c3"              ;C3             RETN
  Ответить с цитированием
Старый 14.06.2015, 22:02   #25
 Пехотинец
Аватар для pwgamer
 
pwgamer никому не известный тип
Регистрация: 11.11.2010
Сообщений: 67
Популярность: 16
Сказал(а) спасибо: 58
Поблагодарили 8 раз(а) в 5 сообщениях
 
По умолчанию Re: Не работает инжект движения

Цитата:
Сообщение от ukurenijboterПосмотреть сообщение
ну так он может возникать в разных местах в самом коде который инжектируется, может возникать при передаче неправильных аргуметов в functioncall1,2,3 а может еще где-то. У меня например возникал краш не поверишь где, в том месте где идет запись координат:
mov dword ptr[ecx+$20], eax
mov eax, z
mov dword ptr[ecx+$24], eax
mov eax, y
mov dword ptr[ecx+$28], eax

Безобидное казалось бы место. А нет. И таким образом я установил, что операции чтения и записи лучше производить при помощи функций OpenProcess ReadProcessMemory WriteProcessMemory. В самом асм. Итог - крашей как не бывало. В частности, код из первого поста у меня работает исправно, с поправкой на то, что операции чтения и записи из памяти и в память, я прпоизвожу этими функциями. Код длиннее конечно, но зато работает.

Как у тебя сейчас выглядит этот кусок кода, я его из пви по разному пробовал. Грешу тоже на это место.
  Ответить с цитированием
Старый 14.06.2015, 22:43   #26
 Разведчик
Аватар для ukurenijboter
 
ukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известен
Регистрация: 19.08.2011
Сообщений: 25
Популярность: 465
Сказал(а) спасибо: 2
Поблагодарили 17 раз(а) в 9 сообщениях
Отправить сообщение для ukurenijboter с помощью Skype™
 
По умолчанию Re: Не работает инжект движения

Цитата:
Сообщение от pwgamerПосмотреть сообщение
Как у тебя сейчас выглядит этот кусок кода, я его из пви по разному пробовал. Грешу тоже на это место.

имеешь ввиду в "нормальном виде" или в моей модификации? Если его перевести в нормальный вид то так оно и выглядит как в первом посте, там ведь просто тупо запись по структуре. А если в моей "модификации", то он выглядит очень сложно и не понятно). Тебе вместо того чтобы разбираться в моем путаном коде,проще сделать по другому(если возникает такая же проблема с чтением записью при помощи асм, как и у меня): убрать этот кусок и вместо него сделать что-то типа записи(не асм) через штатные функции записи того языка на котором пишешь. по адресам:
ga+host+actionarr+18+0+20
ga+host+actionarr+18+0+24
ga+host+actionarr+18+0+28
Запись производить либо до либо после самого инжекета, как правильнее и безопасней я не проверял.
________________
Skype: ScriptoZ
ЗАПРОС АВТОРИЗАЦИИ=ИГНОР
  Ответить с цитированием
Старый 14.06.2015, 23:03   #27
 Пехотинец
Аватар для pwgamer
 
pwgamer никому не известный тип
Регистрация: 11.11.2010
Сообщений: 67
Популярность: 16
Сказал(а) спасибо: 58
Поблагодарили 8 раз(а) в 5 сообщениях
 
По умолчанию Re: Не работает инжект движения

Мой кусок:
Код:
      MOV_EAX($APP_BASE_ADDRESS)
		MOV_EAX_DWORD_PTR_EAX()
		MOV_EAX_DWORD_PTR_EAX_ADD(Dec("28"))
		MOV_EAX_DWORD_PTR_EAX_ADD(Dec("13F0")) 
		MOV_EAX_DWORD_PTR_EAX_ADD(Dec("18"))
		MOV_ECX_DWORD_PTR_EAX_ADD(Dec("0"))
		MOV_EAX($FLYTO_X)
		MOV_DWORD_PTR_ECX_ADD_EAX(Dec("20"))
		MOV_EAX($FLYTO_Z)
		MOV_DWORD_PTR_ECX_ADD_EAX(Dec("24"))
		MOV_EAX($FLYTO_Y)
		MOV_DWORD_PTR_ECX_ADD_EAX(Dec("28"))
Все так же.

Наконец то заработало. Выше заменил на это. Вроде одно и тоже
Код:
		MOV_EAX($APP_BASE_ADDRESS)
		MOV_EAX_DWORD_PTR_EAX()
		MOV_EAX_DWORD_PTR_EAX_ADD(Dec("28"))
		MOV_EAX_DWORD_PTR_EAX_ADD(Dec("13F0")) ;1128
		MOV_EAX_DWORD_PTR_EAX_ADD(Dec("18"))
		MOV_ECX_DWORD_PTR_EAX_ADD(Dec("0"))
  	        $OPcode &= "B8" & _Hex($FLYTO_X, 8, 'float') 
	        $OPcode &= "8BD7"            			
	        $OPcode &= "83C220"          			
	        $OPcode &= "8902"            			
	        $OPcode &= "B8" & _Hex($FLYTO_Z, 8, 'float') 
	        $OPcode &= "8BD7"            
	        $OPcode &= "83C224"          			
	        $OPcode &= "8902"            			
	        $OPcode &= "B8" & _Hex($FLYTO_Y, 8, 'float') 
	        $OPcode &= "8BD7"            			
	        $OPcode &= "83C228"          				
	        $OPcode &= "8902"

Последний раз редактировалось pwgamer; 15.06.2015 в 02:53.
  Ответить с цитированием
Старый 15.06.2015, 01:33   #28
 Пехотинец
Аватар для diagnost
 
diagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражания
Регистрация: 02.01.2010
Сообщений: 95
Популярность: 1542
Сказал(а) спасибо: 110
Поблагодарили 460 раз(а) в 288 сообщениях
 
По умолчанию Re: Не работает инжект движения

Никто не пробовал код фли запустить?
Код:
Code:
function FloatToHex(const X: double): string; overload;
type
  tBA = array [0 .. SizeOf(X) - 1] of byte;
var
  Buf: tBA;
  i: Integer;
begin
  For i := 0 to high(tBA) do
    Buf[ high(tBA) - i] := tBA(X)[i];
  Buf[0] := Buf[0] xor $80;
  SetLength(result, SizeOf(Buf) * 2);
  BinToHex(@Buf, PChar(result), SizeOf(Buf));
end;

Function HexToFloat(const s: string): extended;
{ Converts hex of floating point with sign flipped to float value. }
type
  tBA = packed array [0 .. SizeOf(result) - 1] of byte;
var
  t: string;
  Buf1: tBA;
  i: Integer;
  BufR: packed record case n: Integer of 0: (BA: tBA);
  4: (pad4: array [1 .. 6] of byte; sgl: Single);
  8: (pad8: array [1 .. 2] of byte; dbl: double);
  10: (ext: extended);
end;
begin
  t := LowerCase(s);
  BufR.n := HexToBin(PChar(t), @Buf1, SizeOf(Buf1));
  Buf1[0] := Buf1[0] xor $80;
  For i := 0 to high(tBA) do
    BufR.BA[ high(tBA) - i] := Buf1[i];
  Case BufR.n of
    4:
      result := BufR.sgl;
    8:
      result := BufR.dbl;
    10:
      result := BufR.ext;
  else
    raise Exception.Create('HexToFloat conversion error');
  end;
end;

procedure MoveTo(X, Y, Z, Height: Single);
var
  H, TI, PI, W, rw: DWORD;
  pointer, ActionStruct, ActionList, MoveAction: DWORD;
  Tmp: DWORD;
  walkmode: Integer;
  Hei: Single;
begin
  XGo := X;
  YGo := Y;
  ZGo := Z;
  //
  H := FindWindow(nil, PWideChar(PW_TITLE));
  if (H <= 0) then
  begin
    Showmessage('PW Window?');
    exit;
  end;
  TI := GetWindowThreadProcessId(H, @PI);
  W := OpenProcess(PROCESS_ALL_ACCESS, False, PI);
  ReadProcessMemory(W, ptr(PW_BASE_ADDRESS), @pointer, 4, rw);
  // ReadProcessMemory(W, ptr(Pointer + $1C), @Pointer, 4, rw);
  ReadProcessMemory(W, ptr(pointer + $34), @pointer, 4, rw);
  ReadProcessMemory(W, ptr(pointer + $1050), @ActionStruct,
    SizeOf(ActionStruct), rw);
  ReadProcessMemory(W, ptr(ActionStruct + $30), @ActionList,
    SizeOf(ActionList), rw);
  ReadProcessMemory(W, ptr(ActionList + $4), @MoveAction, SizeOf(MoveAction),
    rw);
  Tmp := 0;
  WriteProcessMemory(W, ptr(MoveAction + $8), @Tmp, SizeOf(Tmp), rw);
  WriteProcessMemory(W, ptr(MoveAction + $14), @Tmp, SizeOf(Tmp), rw);
  WriteProcessMemory(W, ptr(MoveAction + $18), @Tmp, SizeOf(Tmp), rw);
  WriteProcessMemory(W, ptr(MoveAction + $38), @Tmp, SizeOf(Tmp), rw);
  Tmp := 1;
  WriteProcessMemory(W, ptr(MoveAction + $14), @Tmp, SizeOf(Tmp), rw);
  //
  WriteProcessMemory(W, ptr(MoveAction + $20), @X, SizeOf(X), rw);
  WriteProcessMemory(W, ptr(MoveAction + $24), @Z, SizeOf(Z), rw);
  WriteProcessMemory(W, ptr(MoveAction + $28), @Y, SizeOf(Y), rw);
  // Just for fix some delphi shits -.-
  Hei := HexToFloat(FloatToHex(Height));
  WriteProcessMemory(W, ptr(MoveAction + $68), @Hei, SizeOf(Hei), rw);
  //
  if (Height > 0) then
  begin
    Tmp := 26625;
    WriteProcessMemory(W, ptr(MoveAction + $64), @Tmp, SizeOf(Tmp), rw);
    Tmp := 256;
    WriteProcessMemory(W, ptr(MoveAction + $6C), @Tmp, SizeOf(Tmp), rw);
  end
  else
  begin
    Tmp := 26624;
    WriteProcessMemory(W, ptr(MoveAction + $64), @Tmp, SizeOf(Tmp), rw);
    Tmp := 65536;
    WriteProcessMemory(W, ptr(MoveAction + $6C), @Tmp, SizeOf(Tmp), rw);
  end;
  WriteProcessMemory(W, ptr(ActionStruct + $C), @MoveAction,
    SizeOf(MoveAction), rw);
  WriteProcessMemory(W, ptr(ActionStruct + $2C), @walkmode, SizeOf(walkmode),
    rw);
  Tmp := 1;
  WriteProcessMemory(W, ptr(ActionStruct + $18), @Tmp, SizeOf(Tmp), rw);
  WriteProcessMemory(W, ptr(ActionStruct + $14), @MoveAction,
    SizeOf(MoveAction), rw);
end;

Последний раз редактировалось diagnost; 15.06.2015 в 01:37.
  Ответить с цитированием
Старый 15.06.2015, 02:41   #29
 Разведчик
Аватар для ukurenijboter
 
ukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известенukurenijboter скоро будет известен
Регистрация: 19.08.2011
Сообщений: 25
Популярность: 465
Сказал(а) спасибо: 2
Поблагодарили 17 раз(а) в 9 сообщениях
Отправить сообщение для ukurenijboter с помощью Skype™
 
По умолчанию Re: Не работает инжект движения

Цитата:
Сообщение от diagnostПосмотреть сообщение
Никто не пробовал код фли запустить?

та версия, что ты выложил очень старая) Она и на прошлой обнове бы не пошла с теми оффсетами, и на позапрошлой скорее всего тоже, не помню точно какие они были. Скорее всего в том виде, в котором она есть, не пойдет даже если подобрать оффсеты. там структура поменялась.
________________
Skype: ScriptoZ
ЗАПРОС АВТОРИЗАЦИИ=ИГНОР
  Ответить с цитированием
Старый 15.06.2015, 04:08   #30
 Пехотинец
Аватар для diagnost
 
diagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражанияdiagnost блестящий пример для подражания
Регистрация: 02.01.2010
Сообщений: 95
Популярность: 1542
Сказал(а) спасибо: 110
Поблагодарили 460 раз(а) в 288 сообщениях
 
По умолчанию Re: Не работает инжект движения

Не могу запустить( Кому не трудно, помогите! [Ссылки могут видеть только зарегистрированные пользователи. ] Пример на Delphi.
У всех работает, а пример никто не выложил! Проверял с помощью Cheat Engine параметры передаются верно, а клиент все равно крошит.
Нашел проблему, да действительно старый код работает, проблема была в использовании регистров, после обновы регистры поменялись, поэтому и крошил клиент.

Отцы программеры, не ужели трудно рабочий код выложить инжекта? Мне уже в пм пишут.(я только учусь)
Подсказка:
Код:
opcode=opcode+"6A00"              ;6A 00          PUSH 0         //  Вот это убрать и будет работать(криво но будет)
 opcode=opcode+"6A01"                      ;6A 01          PUSH 1
 opcode=opcode+"57"                         ;57             PUSH EDI
 opcode=opcode+"6A01"                     ;6A 01          PUSH 1
 opcode=opcode+"BA00000000"           ;BA 00000000    MOV EDX,Walk3
 opcode=opcode+"ffd2"                      ;FFD2           CALL EDX
 opcode=opcode+"61"                        ;61             POPAD
 opcode=opcode+"c3"                        ;C3             RETN
PUSH 0 // Вот это убрать и будет работать(криво но будет)

Последний раз редактировалось diagnost; 18.06.2015 в 05:07.
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Vb.net инжект движения bestbeer Общение разработчиков 0 10.01.2014 09:08

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 21:34.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net