CLEO Help I want to understand how this cleo actually works.

CLEO related
Status
Not open for further replies.

Lucky_strike666

Active member
Joined
Mar 19, 2014
Messages
99
Reaction score
2
So, this is a cleo from around last year and it's amazing since it allows you to fake/spoof kill somebody even if they won't punch you first. It does this by somehow making the victim get into the fighting animation and suddenly punch you. I'm trying to get into scripting and I'd love to know if someone can give me a slightly detailed explanation how it's possible to make someone actually do that since I thought you can only control your own player.

Thanks in advance!

Here's the code:


Code:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 
10@ = 969 

:NONAME_10
wait 0 
if and
   not Actor.Driving($PLAYER_ACTOR)
0AB0:   key_pressed 111 
0AB0:   key_pressed 111 
else_jump @NONAME_10 

:NONAME_38
wait 0 
if or
8AB0:   not key_pressed 111 
8AB0:   not key_pressed 111 
else_jump @NONAME_38 
018C: play_sound 1058 at 0.0 0.0 0.0 
00BC: show_text_highpriority GXT 'CHEAT1' time 2000 flag 1  // Cheat activated

:NONAME_97
wait 0 
if or
8AB0:   not key_pressed 111 
8AB0:   not key_pressed 111 
else_jump @NONAME_1217 
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 0@ closest_ped_to 1@ 
if 
056D:   actor 1@ defined 
else_jump @NONAME_97 
if 
   Actor.Driving(1@)
else_jump @NONAME_206 
018C: play_sound 1057 at 0.0 0.0 0.0 
00BC: show_text_highpriority GXT 'CHEAT8' time 2000 flag 1  // Cheat deactivated
jump @NONAME_10 

:NONAME_206
Model.Load(10@)

:NONAME_211
wait 0 
if 
   Model.Available(10@)
else_jump @NONAME_211 
04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset -1.5 -0.5 -1.15 
2@ = Actor.Angle(1@)
2@ += 90.0 
6@ = Object.Create(10@, 3@, 4@, 5@)
0453: set_object 6@ XYZ_rotation 90.0 0.0 2@ 
Actor.GiveWeaponAndAmmo(1@, Unarmed, 9999)
01B9: set_actor 1@ armed_weapon_to 29 
Actor.WeaponAccuracy(1@) = 100
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR 

:NONAME_345
wait 0 
if and
056D:   actor 1@ defined 
   not Actor.Dead(1@)
else_jump @NONAME_1175 
if 
0184:   actor $PLAYER_ACTOR health >= 0 
else_jump @NONAME_604 
if or
8AB0:   not key_pressed 111 
8AB0:   not key_pressed 111 
else_jump @NONAME_1217 
04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset -1.5 -0.5 -1.15 
2@ = Actor.Angle(1@)
2@ += 90.0 
Object.PutAt(6@, 3@, 4@, 5@)
0453: set_object 6@ XYZ_rotation 90.0 0.0 2@ 
01B9: set_actor 1@ armed_weapon_to 29 
04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset 0.0 0.7 -0.9 
0085: 7@ = 3@ // (int) 
0085: 8@ = 4@ // (int) 
0085: 9@ = 5@ // (int) 
Actor.PutAt($PLAYER_ACTOR, 3@, 4@, 5@)
Actor.SetImmunities($PLAYER_ACTOR, 0, 0, 0, 0, 0)
Actor.Health($PLAYER_ACTOR) = 1
Actor.AddArmour($PLAYER_ACTOR, -200)
01B9: set_actor 1@ armed_weapon_to 29 
jump @NONAME_345 

:NONAME_604
Actor.PutAt($PLAYER_ACTOR, 7@, 8@, 9@)
04E4: refresh_game_renderer_at 7@ 8@ 
wait 100 
if or
8AB0:   not key_pressed 111 
8AB0:   not key_pressed 111 
else_jump @NONAME_1217 
if 
056D:   actor 1@ defined 
else_jump @NONAME_1175 
04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset -1.5 -0.5 -1.15 
2@ = Actor.Angle(1@)
2@ += 90.0 
Object.PutAt(6@, 3@, 4@, 5@)
0453: set_object 6@ XYZ_rotation 90.0 0.0 2@ 
01B9: set_actor 1@ armed_weapon_to 29 
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR 
wait 10 
if 
056D:   actor 1@ defined 
else_jump @NONAME_1175 
01B9: set_actor 1@ armed_weapon_to 47 
04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset 0.0 0.7 -0.9 
Actor.PutAt($PLAYER_ACTOR, 3@, 4@, 5@)
Actor.SetImmunities($PLAYER_ACTOR, 0, 0, 0, 0, 0)
Actor.Health($PLAYER_ACTOR) = 1
Actor.AddArmour($PLAYER_ACTOR, -200)
01B9: set_actor 1@ armed_weapon_to 29 
wait 100 

:NONAME_870
if or
8AB0:   not key_pressed 111 
8AB0:   not key_pressed 111 
else_jump @NONAME_1217 
if and
056D:   actor 1@ defined 
   not Actor.Dead(1@)
else_jump @NONAME_1175 
Actor.GiveWeaponAndAmmo(1@, Unarmed, 9999)
01B9: set_actor 1@ armed_weapon_to 29 
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR 
04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset -1.5 -0.5 -1.15 
2@ = Actor.Angle(1@)
2@ += 90.0 
Object.PutAt(6@, 3@, 4@, 5@)
0453: set_object 6@ XYZ_rotation 90.0 0.0 2@ 
01B9: set_actor 1@ armed_weapon_to 29 
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR 
wait 10 
if 
056D:   actor 1@ defined 
else_jump @NONAME_1175 
04C4: store_coords_to 3@ 4@ 5@ from_actor 1@ with_offset 0.0 0.7 -0.9 
0085: 7@ = 3@ // (int) 
0085: 8@ = 4@ // (int) 
0085: 9@ = 5@ // (int) 
Actor.PutAt($PLAYER_ACTOR, 3@, 4@, 5@)
Actor.SetImmunities($PLAYER_ACTOR, 0, 0, 0, 0, 0)
Actor.AddArmour($PLAYER_ACTOR, -200)
01B9: set_actor 1@ armed_weapon_to 29 
wait 100 
if 
8184:   not actor $PLAYER_ACTOR health >= 0 
else_jump @NONAME_870 
jump @NONAME_604 

:NONAME_1175
wait 0 
Actor.RemoveReferences(1@)
Object.Destroy(6@)
Actor.PutAt($PLAYER_ACTOR, 7@, 8@, 9@)
Actor.Health($PLAYER_ACTOR) = 100
jump @NONAME_97 

:NONAME_1217
wait 0 
if or
8AB0:   not key_pressed 111 
8AB0:   not key_pressed 111 
else_jump @NONAME_1217 
Actor.RemoveReferences(1@)
Object.Destroy(6@)
Actor.Health($PLAYER_ACTOR) = 100
018C: play_sound 1057 at 0.0 0.0 0.0 
00BC: show_text_highpriority GXT 'CHEAT8' time 2000 flag 1  // Cheat deactivated
jump @NONAME_10
 

Opcode.eXe

Expert
Joined
Feb 18, 2013
Messages
1,502
Solutions
1
Reaction score
247
Location
( ͡° ͜ʖ ͡°)
With CLEO you can make other players PEDs attack you like in singelplayer and since samp is dumb as fuck it counts as killed by player ^^

All it probably does is put the other players ped infront of you, give him a weapon, and then make it attack you
 
Status
Not open for further replies.
Top