Показать сообщение отдельно

  #10  
Старый 08.06.2018, 19:05
itsOkke
Познающий
Регистрация: 12.04.2018
Сообщений: 86
С нами: 4256625

Репутация: 0
По умолчанию

Цитата:
Сообщение от 132113123  

Недавно начал пробовать сделать какой-нибудь чит на С++ для crmp(samp 0.3e). Столкнулся с такой проблемой, не могу сделать активацию функций чита командой. На легке сделал активацию комбинацией клавиш, а вот командой не знаю как. В гугле и на форумах ничего толкового не нашел. Может кто-то подскажет, как сделать такое или скинет простенький исходник такого чита/обучающий урок по этой теме(сам не нашел). Пробовал копаться в исходнике собейта, ничего из этого не вышло, слишком много функций, не понятно что откуда и зачем.
P.S. делаю так:
else if (GetAsyncKeyState(VK_MENU)) {
if (GetAsyncKeyState(VK_DOWN)) *reinterpret_cast(SA_Memory::eWeather) += 1;
} Альт+стрелочка вниз = меняется погода.
Хочу сделать чтобы была команда допустим /sweath и id погоды.
Заранее спасибо
Цитата:
Сообщение от kewa opcode  

Регистрация SA-MP 0.3.7 R1 команд без использования SAMPFUNCS

Цитата:
Сообщение от Спойлер  


CLEO:





Код:
// samp 0.3.7 R1
{$cleo .cs}
hex
00
00
end
wait
5000
if
8AA2:
0@
= load_library
"samp.dll"
// IF and SET
then
0A93:
end_custom_thread
end
var
0@
: integer
end
0AC6:
1@
= label
@callback
offset
0AC6:
2@
= label
@cmdname
offset
// write 31@ address to assembly code
1@
+=
2
0AC7:
3@
=
var
31@
offset
0A8C:
write_memory
1@
size
4
value
3@
virtual_protect
1
1@
-=
2
31@
=
0
// zeroing 31 var
0AB1:
call_scm_func
@registerClientCommand
3
dwSAMPHandle:
0@
szCommandName:
2@
CallBack:
1@
while
true
wait
0
if
31@
==
1
then
print
"Enable"
1000
else
print
"Disable"
1000
end
end
:callback
hex
83
35
11
11
11
11
01
// xor     [11111111], 01
C3
// retn
end
:cmdname
hex
"test"
0
end
:registerClientCommand
// unsigned long dwSAMPHandle, char szCommandName[], CMDPROC CallBack
var
3@
: integer
4@
: integer
end
3@
=
0@
// dwSAMPHandle
3@
+=
0x21A0E8
// struct
0A8D:
3@
= read_memory
3@
size
4
virtual_protect
1
4@
=
0@
// dwSAMPHandle
4@
+=
0x65AD0
// function
0AA6:
call_method
4@
struct
3@
num_params
2
pop
0
2@
1@
0AB2:
ret
0


upd
Цитата:
Сообщение от Спойлер  


CLEO:





Код:
1@
+=
9
0AC7:
3@
=
var
30@
offset
0A8C:
write_memory
1@
size
4
value
3@
virtual_protect
1
1@
-=
9
1@
+=
15
0AC7:
3@
=
var
31@
offset
0A8C:
write_memory
1@
size
4
value
3@
virtual_protect
1
1@
-=
15
:callback
hex
51
// push     ecx
56
// push     esi
8B
74
24
0C
// mov     esi, [esp+0Ch]
89
34
25
11
11
11
11
// mov     [11111111], esi
83
35
11
11
11
11
01
// xor     [11111111], 01
5E
// pop     esi
59
// pop     ecx
C3
// retn
end


просто адреса меняешь и всё готово
 
Ответить с цитированием