CLEO Help [HELP] Remove text and audio

CLEO related
Status
Not open for further replies.

georgegg

New member
Joined
Jan 18, 2015
Messages
2
Reaction score
0
I'm trying to remove audio and text when activating cleo, but after modifying the game crash when targeting enemy​




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

//-------------MAIN---------------
03A4: name_thread 'Aimbot'
0006: 30@ = 0
0006: 31@ = 8
0006: TIMERA = 600

:AIMBOT_33
0001: wait 0 ms
00D6: if
0050: gosub @AIMBOT_2827
004D: jump_if_false @AIMBOT_33
0ACD: show_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: Activated" time 3000
0A9F: $4 = current_thread_pointer
0008: $4 += 16
0A8D: $4 = read_memory $4 size 4 virtual_protect 0
000C: $4 -= -6145

:AIMBOT_135
0001: wait 0 ms
00D6: if
0AB0: key_pressed 2
004D: jump_if_false @AIMBOT_200
0050: gosub @AIMBOT_672
00D6: if
056D: actor $5 defined
004D: jump_if_false @AIMBOT_135
0A96: 28@ = actor $5 struct
0085: 29@ = 31@ // (int)
0002: jump @AIMBOT_225

:AIMBOT_200
00D6: if
0050: gosub @AIMBOT_2827
004D: jump_if_false @AIMBOT_135
0002: jump @AIMBOT_911

:AIMBOT_225
0001: wait 0 ms
00D6: if and
056D: actor $5 defined
8118: not actor $5 dead
0AB0: key_pressed 2
004D: jump_if_false @AIMBOT_861
00D6: if
0449: actor $5 in_a_car
004D: jump_if_false @AIMBOT_427
00D6: if
0039: 30@ == 1
004D: jump_if_false @AIMBOT_395
03C0: 0@ = actor $5 car
0A97: 1@ = car 0@ struct
000A: 1@ += 1424
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
00D6: if or
0039: 1@ == 0
0039: 1@ == 9
004D: jump_if_false @AIMBOT_395
00D6: if or
8496: not tire 0 on_car 0@ deflated
8496: not tire 1 on_car 0@ deflated
8496: not tire 2 on_car 0@ deflated
8496: not tire 3 on_car 0@ deflated
004D: jump_if_false @AIMBOT_395
0002: jump @AIMBOT_510

:AIMBOT_395
00D6: if
8039: not 31@ == 8
004D: jump_if_false @AIMBOT_420
0006: 31@ = 8

:AIMBOT_420
0002: jump @AIMBOT_454

:AIMBOT_427
00D6: if
803B: not 31@ == 29@ // (int)
004D: jump_if_false @AIMBOT_454
0085: 31@ = 29@ // (int)

:AIMBOT_454
0AA6: call_method 6177408 struct 28@ num_params 3 pop 0 1 31@ 0@v
0AB1: call_scm_func @AIMBOT_1492 3 0@ 1@ 2@
0050: gosub @AIMBOT_2895
0002: jump @AIMBOT_225

:AIMBOT_510
0001: wait 0 ms
00D6: if and
056D: actor $5 defined
8118: not actor $5 dead
0AB0: key_pressed 2
004D: jump_if_false @AIMBOT_861
00D6: if and
0039: 30@ == 1
0449: actor $5 in_a_car
004D: jump_if_false @AIMBOT_225
03C0: 0@ = actor $5 car
00D6: if or
8496: not tire 0 on_car 0@ deflated
8496: not tire 1 on_car 0@ deflated
8496: not tire 2 on_car 0@ deflated
8496: not tire 3 on_car 0@ deflated
004D: jump_if_false @AIMBOT_225
0050: gosub @AIMBOT_2077
0407: store_coords_to 0@ 1@ 2@ from_car 0@ with_offset $6 $7 $8
0AB1: call_scm_func @AIMBOT_1492 3 0@ 1@ 2@
0050: gosub @AIMBOT_2895
0002: jump @AIMBOT_510

:AIMBOT_672
0001: wait 0 ms
0AB1: call_scm_func @AIMBOT_970 0 0@ $5
00D6: if
056E: car 0@ defined
004D: jump_if_false @AIMBOT_859
03C0: 1@ = actor $PLAYER_ACTOR car
00D6: if
803B: not 1@ == 0@ // (int)
004D: jump_if_false @AIMBOT_859
046C: $5 = car 0@ driver
00D6: if
856D: not actor $5 defined
004D: jump_if_false @AIMBOT_859
01E9: 2@ = car 0@ num_passengers
00D6: if
0019: 2@ > 0
004D: jump_if_false @AIMBOT_859
01EA: 3@ = car 0@ max_passengers
0006: 4@ = 0

:AIMBOT_800
00D6: if
8431: not car 0@ passenger_seat_free 4@
004D: jump_if_false @AIMBOT_837
0432: $5 = get_actor_handle_from_car 0@ passenger_seat 4@
0002: jump @AIMBOT_859

:AIMBOT_837
000A: 4@ += 1
001D: 4@ > 3@ // (int)
004D: jump_if_false @AIMBOT_800

:AIMBOT_859
0051: return

:AIMBOT_861
0001: wait 0 ms
018C: play_sound 1058 at 0.0 0.0 0.0
0004: $5 = 0
0085: 31@ = 29@ // (int)
0001: wait 100 ms
0002: jump @AIMBOT_135

:AIMBOT_911
0001: wait 0 ms
0ACD: show_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: Deactivated" time 3000
0002: jump @AIMBOT_33

:AIMBOT_970
0A96: 0@ = actor $PLAYER_ACTOR struct
0A8D: 1@ = read_memory 11989416 size 2 virtual_protect 0
0AA6: call_method 6177408 struct 0@ num_params 3 pop 0 1 25 2@v
000B: 4@ += 0.3
00D6: if or
0039: 1@ == 53
0039: 1@ == 55
004D: jump_if_false @AIMBOT_1093
0AA6: call_method 5327216 struct 11989032 num_params 6 pop 0 5@v 8@v 4@ 3@ 2@ 300.0
0002: jump @AIMBOT_1289

:AIMBOT_1093
068E: get_camera_target_point_to 5@ 6@ 7@
068D: get_camera_position_to 8@ 9@ 10@
0087: 11@ = 8@ // (float)
0087: 12@ = 9@ // (float)
0087: 13@ = 10@ // (float)
0063: 11@ -= 5@ // (float)
0063: 12@ -= 6@ // (float)
0063: 13@ -= 7@ // (float)
0087: 14@ = 11@ // (float)
0087: 15@ = 12@ // (float)
0087: 16@ = 13@ // (float)
0013: 11@ *= 300.0
0013: 12@ *= 300.0
0013: 13@ *= 300.0
0087: 5@ = 8@ // (float)
0087: 6@ = 9@ // (float)
0087: 7@ = 10@ // (float)
0063: 5@ -= 11@ // (float)
0063: 6@ -= 12@ // (float)
0063: 7@ -= 13@ // (float)
0063: 8@ -= 14@ // (float)
0063: 9@ -= 15@ // (float)
0063: 10@ -= 16@ // (float)

:AIMBOT_1289
0006: 1@ = 0
0AA7: call_function 5683712 num_params 12 pop 12 0 0 0 0 1 1 1 1 1@v 8@v 5@v 2@v 13@
0006: 14@ = 0
0006: 15@ = 0
00D6: if
8039: not 1@ == 0
004D: jump_if_false @AIMBOT_1481
0A8E: 2@ = 1@ + 54 // int
0A8D: 2@ = read_memory 2@ size 1 virtual_protect 0
0B10: 2@ = 2@ AND 7
00D6: if
0039: 2@ == 2
004D: jump_if_false @AIMBOT_1436
0AEB: 14@ = car_struct 1@ handle
0002: jump @AIMBOT_1481

:AIMBOT_1436
00D6: if
0039: 2@ == 3
004D: jump_if_false @AIMBOT_1481
00D6: if
803B: not 1@ == 0@ // (int)
004D: jump_if_false @AIMBOT_1481
0AEA: 15@ = actor_struct 1@ handle

:AIMBOT_1481
0AB2: 2 14@ 15@ ret

:AIMBOT_1492
068D: get_camera_position_to 3@ 4@ 5@
0509: 11@ = distance_between_XY 0@ 1@ and_XY 3@ 4@
0063: 3@ -= 0@ // (float)
0063: 4@ -= 1@ // (float)
0063: 5@ -= 2@ // (float)
0A8D: 6@ = read_memory 11989416 size 2 virtual_protect 0
00D6: if or
0039: 6@ == 53
0039: 6@ == 55
004D: jump_if_false @AIMBOT_1910
0A8D: 7@ = read_memory 9261112 size 4 virtual_protect 0
0007: 6@ = 0.5
006B: 7@ *= 6@ // (float)
02F6: 6@ = sine 7@ // (float)
02F7: 8@ = cosine 7@ // (float)
0073: 6@ /= 8@ // (float)
0A8D: 9@ = read_memory 11987984 size 4 virtual_protect 0
0007: 8@ = 0.5
0063: 8@ -= 9@ // (float)
000B: 8@ += 0.5
0063: 8@ -= 9@ // (float)
0A8D: 9@ = read_memory 12840868 size 4 virtual_protect 0
0007: 7@ = 1.0
0073: 7@ /= 9@ // (float)
006B: 8@ *= 7@ // (float)
006B: 8@ *= 6@ // (float)
0AA5: call 4327360 num_params 2 pop 2 8@ 1.0
0AA7: call_function $4 num_params 0 pop 0 8@
0007: 7@ = 3.141593
0063: 7@ -= 8@ // (float)
0A8D: 10@ = read_memory 11987988 size 4 virtual_protect 0
0087: 9@ = 10@ // (float)
0007: 8@ = 0.5
0063: 9@ -= 8@ // (float)
005B: 9@ += 10@ // (float)
0063: 9@ -= 8@ // (float)
006B: 9@ *= 6@ // (float)
0AA5: call 4327360 num_params 2 pop 2 9@ 1.0
0AA7: call_function $4 num_params 0 pop 0 9@
0007: 8@ = 3.141593
0063: 8@ -= 9@ // (float)
0002: jump @AIMBOT_1938

:AIMBOT_1910
0007: 7@ = 3.141593
0017: 7@ /= 2.0
0087: 8@ = 7@ // (float)

:AIMBOT_1938
0AA5: call 4327360 num_params 2 pop 2 5@ 11@
0AA7: call_function $4 num_params 0 pop 0 9@
0013: 3@ *= -1.0
0AA5: call 4327360 num_params 2 pop 2 3@ 4@
0AA7: call_function $4 num_params 0 pop 0 10@
0007: 11@ = 3.141593
0017: 11@ /= 2.0
0063: 10@ -= 11@ // (float)
0063: 9@ -= 7@ // (float)
0063: 10@ -= 8@ // (float)
0013: 10@ *= -1.0
0A25: set_camera_on_players_X_angle 9@ Z_angle 10@
0AB2: 0 ret

:AIMBOT_2077
0A97: 1@ = car 0@ struct
000A: 1@ += 1424
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
00D6: if
0039: 1@ == 0
004D: jump_if_false @AIMBOT_2233
0AB1: call_scm_func @AIMBOT_2528 2 0@ 5 10@ 11@ 12@
0AB1: call_scm_func @AIMBOT_2528 2 0@ 7 13@ 14@ 15@
0AB1: call_scm_func @AIMBOT_2528 2 0@ 2 16@ 17@ 18@
0AB1: call_scm_func @AIMBOT_2528 2 0@ 4 19@ 20@ 21@
0006: 2@ = 3
0002: jump @AIMBOT_2288

:AIMBOT_2233
0AB1: call_scm_func @AIMBOT_2650 2 0@ 4 10@ 11@ 12@
0AB1: call_scm_func @AIMBOT_2650 2 0@ 5 13@ 14@ 15@
0006: 2@ = 1

:AIMBOT_2288
0005: $9 = 1000000.0
00A0: store_actor $PLAYER_ACTOR position_to 4@ 5@ 6@
0006: 3@ = 0

:AIMBOT_2319
00D6: if
8496: not tire 3@ on_car 0@ deflated
004D: jump_if_false @AIMBOT_2504
0006: 7@ = 3
006A: 7@ *= 3@ // (int)
0006: 8@ = 1
0006: 9@ = 2
005A: 8@ += 7@ // (int)
005A: 9@ += 7@ // (int)
0407: store_coords_to 24@ 25@ 26@ from_car 0@ with_offset 10@(7@,12i) 10@(8@,12i) 10@(9@,12i)
050A: 1@ = distance_between_XYZ 24@ 25@ 26@ and_XYZ 4@ 5@ 6@
00D6: if
0026: $9 > 1@ // (float)
004D: jump_if_false @AIMBOT_2504
0088: $9 = 1@ // (float)
0088: $6 = 10@(7@,12i) // (float)
0088: $7 = 10@(8@,12i) // (float)
0088: $8 = 10@(9@,12i) // (float)

:AIMBOT_2504
000A: 3@ += 1
001D: 3@ > 2@ // (int)
004D: jump_if_false @AIMBOT_2319
0051: return

:AIMBOT_2528
0006: 2@ = 4
006A: 2@ *= 1@ // (int)
0A97: 1@ = car 0@ struct
000A: 1@ += 1608
005A: 1@ += 2@ // (int)
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
000A: 1@ += 64
0A8D: 2@ = read_memory 1@ size 4 virtual_protect 0
000A: 1@ += 4
0A8D: 3@ = read_memory 1@ size 4 virtual_protect 0
000A: 1@ += 4
0A8D: 4@ = read_memory 1@ size 4 virtual_protect 0
0AB2: 3 2@ 3@ 4@ ret

:AIMBOT_2650
0006: 2@ = 4
006A: 2@ *= 1@ // (int)
0A97: 1@ = car 0@ struct
000A: 1@ += 1440
005A: 1@ += 2@ // (int)
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
0085: 2@ = 1@ // (int)
000A: 2@ += 64
0A8D: 5@ = read_memory 2@ size 4 virtual_protect 0
000A: 2@ += 4
0A8D: 6@ = read_memory 2@ size 4 virtual_protect 0
000A: 2@ += 4
0A8D: 7@ = read_memory 2@ size 4 virtual_protect 0
000A: 1@ += 4
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
000A: 1@ += 16
0AA5: call 8314208 num_params 3 pop 3 1@ 5@v 2@v
0AB2: 3 2@ 3@ 4@ ret

:AIMBOT_2827
00D6: if and
0019: TIMERA > 600
0AB0: key_pressed 164
0AB0: key_pressed 49
004D: jump_if_false @AIMBOT_2891
0006: TIMERA = 0
018C: play_sound 1057 at 0.0 0.0 0.0
0485: return_true
0002: jump @AIMBOT_2893

:AIMBOT_2891
059A: return_false

:AIMBOT_2893
0051: return

:AIMBOT_2895
00D6: if
0019: TIMERA > 200
004D: jump_if_false @AIMBOT_3680
00D6: if
0AB0: key_pressed 49
004D: jump_if_false @AIMBOT_3141
00D6: if
0039: 29@ == 1
004D: jump_if_false @AIMBOT_2961
0006: 29@ = 54
0002: jump @AIMBOT_3096

:AIMBOT_2961
00D6: if
0039: 29@ == 21
004D: jump_if_false @AIMBOT_2993
0006: 29@ = 8
0002: jump @AIMBOT_3096

:AIMBOT_2993
00D6: if
0039: 29@ == 31
004D: jump_if_false @AIMBOT_3025
0006: 29@ = 26
0002: jump @AIMBOT_3096

:AIMBOT_3025
00D6: if
0039: 29@ == 41
004D: jump_if_false @AIMBOT_3057
0006: 29@ = 36
0002: jump @AIMBOT_3096

:AIMBOT_3057
00D6: if
0039: 29@ == 51
004D: jump_if_false @AIMBOT_3089
0006: 29@ = 44
0002: jump @AIMBOT_3096

:AIMBOT_3089
000E: 29@ -= 1

:AIMBOT_3096
0050: gosub @AIMBOT_3682
0006: TIMERA = 0
00D6: if
8449: not actor $5 in_a_car
004D: jump_if_false @AIMBOT_3134
0085: 31@ = 29@ // (int)

:AIMBOT_3134
0002: jump @AIMBOT_3680

:AIMBOT_3141
00D6: if
0AB0: key_pressed 50
004D: jump_if_false @AIMBOT_3368
00D6: if
0039: 29@ == 8
004D: jump_if_false @AIMBOT_3188
0006: 29@ = 21
0002: jump @AIMBOT_3323

:AIMBOT_3188
00D6: if
0039: 29@ == 26
004D: jump_if_false @AIMBOT_3220
0006: 29@ = 31
0002: jump @AIMBOT_3323

:AIMBOT_3220
00D6: if
0039: 29@ == 36
004D: jump_if_false @AIMBOT_3252
0006: 29@ = 41
0002: jump @AIMBOT_3323

:AIMBOT_3252
00D6: if
0039: 29@ == 44
004D: jump_if_false @AIMBOT_3284
0006: 29@ = 51
0002: jump @AIMBOT_3323

:AIMBOT_3284
00D6: if
0039: 29@ == 54
004D: jump_if_false @AIMBOT_3316
0006: 29@ = 1
0002: jump @AIMBOT_3323

:AIMBOT_3316
000A: 29@ += 1

:AIMBOT_3323
0050: gosub @AIMBOT_3682
0006: TIMERA = 0
00D6: if
8449: not actor $5 in_a_car
004D: jump_if_false @AIMBOT_3361
0085: 31@ = 29@ // (int)

:AIMBOT_3361
0002: jump @AIMBOT_3680

:AIMBOT_3368
00D6: if
0AB0: key_pressed 160
004D: jump_if_false @AIMBOT_3529
0AC8: 22@ = allocate_memory_size 10
00D6: if
0039: 30@ == 1
004D: jump_if_false @AIMBOT_3437
0006: 30@ = 0
0AD3: 22@ = format "Normal"
0002: jump @AIMBOT_3457

:AIMBOT_3437
0006: 30@ = 1
0AD3: 22@ = format "Wheel"

:AIMBOT_3457
0006: TIMERA = 0
0AD1: show_formatted_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: %s aim mode." time 4000 22@
0AC9: free_allocated_memory 22@
0002: jump @AIMBOT_3680

:AIMBOT_3529
00D6: if or
0AB0: key_pressed 81
0AB0: key_pressed 69
004D: jump_if_false @AIMBOT_3680
00D6: if
0AB0: key_pressed 81
004D: jump_if_false @AIMBOT_3577
0004: $10 = 0
0002: jump @AIMBOT_3584

:AIMBOT_3577
0004: $10 = 1

:AIMBOT_3584
0005: $9 = 320.0
0004: $12 = 0
0AB1: call_scm_func @AIMBOT_5057 2 12010640 -5222
00D6: if
056D: actor $12 defined
004D: jump_if_false @AIMBOT_3680
0084: $5 = $12 // (int)
0A96: 28@ = actor $5 struct
0006: TIMERA = 0
018C: play_sound 1057 at 0.0 0.0 0.0

:AIMBOT_3680
0051: return

:AIMBOT_3682
0AC8: 22@ = allocate_memory_size 25
00D6: if
0039: 29@ == 1
004D: jump_if_false @AIMBOT_3734
0AD3: 22@ = format "BONE_PELVIS1"
0002: jump @AIMBOT_5000

:AIMBOT_3734
00D6: if
0039: 29@ == 2
004D: jump_if_false @AIMBOT_3778
0AD3: 22@ = format "BONE_PELVIS"
0002: jump @AIMBOT_5000

:AIMBOT_3778
00D6: if
0039: 29@ == 3
004D: jump_if_false @AIMBOT_3822
0AD3: 22@ = format "BONE_SPINE1"
0002: jump @AIMBOT_5000

:AIMBOT_3822
00D6: if
0039: 29@ == 4
004D: jump_if_false @AIMBOT_3870
0AD3: 22@ = format "BONE_UPPERTORSO"
0002: jump @AIMBOT_5000

:AIMBOT_3870
00D6: if
0039: 29@ == 5
004D: jump_if_false @AIMBOT_3912
0AD3: 22@ = format "BONE_NECK"
0002: jump @AIMBOT_5000

:AIMBOT_3912
00D6: if
0039: 29@ == 6
004D: jump_if_false @AIMBOT_3955
0AD3: 22@ = format "BONE_HEAD2"
0002: jump @AIMBOT_5000

:AIMBOT_3955
00D6: if
0039: 29@ == 7
004D: jump_if_false @AIMBOT_3998
0AD3: 22@ = format "BONE_HEAD1"
0002: jump @AIMBOT_5000

:AIMBOT_3998
00D6: if
0039: 29@ == 8
004D: jump_if_false @AIMBOT_4040
0AD3: 22@ = format "BONE_HEAD"
0002: jump @AIMBOT_5000

:AIMBOT_4040
00D6: if
0039: 29@ == 21
004D: jump_if_false @AIMBOT_4093
0AD3: 22@ = format "BONE_RIGHTUPPERTORSO"
0002: jump @AIMBOT_5000

:AIMBOT_4093
00D6: if
0039: 29@ == 22
004D: jump_if_false @AIMBOT_4144
0AD3: 22@ = format "BONE_RIGHTSHOULDER"
0002: jump @AIMBOT_5000

:AIMBOT_4144
00D6: if
0039: 29@ == 23
004D: jump_if_false @AIMBOT_4192
0AD3: 22@ = format "BONE_RIGHTELBOW"
0002: jump @AIMBOT_5000

:AIMBOT_4192
00D6: if
0039: 29@ == 24
004D: jump_if_false @AIMBOT_4240
0AD3: 22@ = format "BONE_RIGHTWRIST"
0002: jump @AIMBOT_5000

:AIMBOT_4240
00D6: if
0039: 29@ == 25
004D: jump_if_false @AIMBOT_4287
0AD3: 22@ = format "BONE_RIGHTHAND"
0002: jump @AIMBOT_5000

:AIMBOT_4287
00D6: if
0039: 29@ == 26
004D: jump_if_false @AIMBOT_4335
0AD3: 22@ = format "BONE_RIGHTTHUMB"
0002: jump @AIMBOT_5000

:AIMBOT_4335
00D6: if
0039: 29@ == 31
004D: jump_if_false @AIMBOT_4387
0AD3: 22@ = format "BONE_LEFTUPPERTORSO"
0002: jump @AIMBOT_5000

:AIMBOT_4387
00D6: if
0039: 29@ == 32
004D: jump_if_false @AIMBOT_4437
0AD3: 22@ = format "BONE_LEFTSHOULDER"
0002: jump @AIMBOT_5000

:AIMBOT_4437
00D6: if
0039: 29@ == 33
004D: jump_if_false @AIMBOT_4484
0AD3: 22@ = format "BONE_LEFTELBOW"
0002: jump @AIMBOT_5000

:AIMBOT_4484
00D6: if
0039: 29@ == 34
004D: jump_if_false @AIMBOT_4531
0AD3: 22@ = format "BONE_LEFTWRIST"
0002: jump @AIMBOT_5000

:AIMBOT_4531
00D6: if
0039: 29@ == 35
004D: jump_if_false @AIMBOT_4577
0AD3: 22@ = format "BONE_LEFTHAND"
0002: jump @AIMBOT_5000

:AIMBOT_4577
00D6: if
0039: 29@ == 36
004D: jump_if_false @AIMBOT_4624
0AD3: 22@ = format "BONE_LEFTTHUMB"
0002: jump @AIMBOT_5000

:AIMBOT_4624
00D6: if
0039: 29@ == 41
004D: jump_if_false @AIMBOT_4669
0AD3: 22@ = format "BONE_LEFTHIP"
0002: jump @AIMBOT_5000

:AIMBOT_4669
00D6: if
0039: 29@ == 42
004D: jump_if_false @AIMBOT_4715
0AD3: 22@ = format "BONE_LEFTKNEE"
0002: jump @AIMBOT_5000

:AIMBOT_4715
00D6: if
0039: 29@ == 43
004D: jump_if_false @AIMBOT_4762
0AD3: 22@ = format "BONE_LEFTANKLE"
0002: jump @AIMBOT_5000

:AIMBOT_4762
00D6: if
0039: 29@ == 44
004D: jump_if_false @AIMBOT_4808
0AD3: 22@ = format "BONE_LEFTFOOT"
0002: jump @AIMBOT_5000

:AIMBOT_4808
00D6: if
0039: 29@ == 51
004D: jump_if_false @AIMBOT_4854
0AD3: 22@ = format "BONE_RIGHTHIP"
0002: jump @AIMBOT_5000

:AIMBOT_4854
00D6: if
0039: 29@ == 52
004D: jump_if_false @AIMBOT_4901
0AD3: 22@ = format "BONE_RIGHTKNEE"
0002: jump @AIMBOT_5000

:AIMBOT_4901
00D6: if
0039: 29@ == 53
004D: jump_if_false @AIMBOT_4949
0AD3: 22@ = format "BONE_RIGHTANKLE"
0002: jump @AIMBOT_5000

:AIMBOT_4949
00D6: if
0039: 29@ == 54
004D: jump_if_false @AIMBOT_4996
0AD3: 22@ = format "BONE_RIGHTFOOT"
0002: jump @AIMBOT_5000

:AIMBOT_4996
00D6: if

:AIMBOT_5000
0AD1: show_formatted_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: %d: %s" time 4000 29@ 22@
0AC9: free_allocated_memory 22@
0051: return

:AIMBOT_5057
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
000A: 0@ += 4
0A8D: 2@ = read_memory 0@ size 4 virtual_protect 0
000A: 0@ += 4
0A8D: 3@ = read_memory 0@ size 4 virtual_protect 0
000E: 3@ -= 1
0006: 4@ = 0

:AIMBOT_5121
0A8D: 0@ = read_memory 2@ size 1 virtual_protect 0
000A: 2@ += 1
00D6: if and
0019: 0@ > 0
8029: not 0@ >= 128
004D: jump_if_false @AIMBOT_5195
0085: 5@ = 4@ // (int)
0012: 5@ *= 256
005A: 0@ += 5@ // (int)
0050: gosub 1@

:AIMBOT_5195
000A: 4@ += 1
001D: 4@ > 3@ // (int)
004D: jump_if_false @AIMBOT_5121
0AB2: 0 ret
00D6: if and
02CB: actor 0@ bounding_sphere_visible
87D6: not 0@ == $PLAYER_ACTOR // @ == $ (int)
8118: not actor 0@ dead
004D: jump_if_false @AIMBOT_5507
00A0: store_actor 0@ position_to 5@ 6@ 7@
068D: get_camera_position_to 8@ 9@ 10@
00D6: if
06BD: no_obstacles_between 5@ 6@ 7@ and 8@ 9@ 10@ solid 1 car 0 actor 0 object 0 particle 0
004D: jump_if_false @AIMBOT_5507
00D6: if
87D6: not 0@ == $5 // @ == $ (int)
004D: jump_if_false @AIMBOT_5507
00D6: if
0038: $10 == 0
004D: jump_if_false @AIMBOT_5381
0007: 11@ = 0.0
0007: 12@ = 320.0
0002: jump @AIMBOT_5401

:AIMBOT_5381
0007: 11@ = 320.0
0007: 12@ = 640.0

:AIMBOT_5401
0AB1: call_scm_func @AIMBOT_5509 3 5@ 6@ 7@ 8@ 9@
00D6: if and
0035: 8@ >= 11@ // (float)
0035: 12@ >= 8@ // (float)
004D: jump_if_false @AIMBOT_5507
0509: 10@ = distance_between_XY 320.0 9@ and_XY 8@ 9@
00D6: if
0036: $9 >= 10@ // (float)
004D: jump_if_false @AIMBOT_5507
0088: $9 = 10@ // (float)
008A: $12 = 0@ // (int)

:AIMBOT_5507
0051: return

:AIMBOT_5509
0AB1: call_scm_func @AIMBOT_6064 1 0 12@
0AB1: call_scm_func @AIMBOT_6064 1 3 13@
0AB1: call_scm_func @AIMBOT_6064 1 6 14@
0AB1: call_scm_func @AIMBOT_6064 1 9 15@
0AA5: call 7392816 num_params 6 pop 6 0 0 15@ 14@ 13@ 12@
0AB1: call_scm_func @AIMBOT_5957 2 3@ 4@ 3@ 4@
0AB2: 2 3@ 4@ ret
0A8D: 3@ = read_memory 9261112 size 4 virtual_protect 0
0013: 3@ *= 0.5
02F6: 4@ = sine 3@ // (float)
02F7: 5@ = cosine 3@ // (float)
0073: 4@ /= 5@ // (float)
0007: 6@ = 1.0
0017: 0@ /= 320.0
0063: 6@ -= 0@ // (float)
006B: 6@ *= 4@ // (float)
0007: 7@ = 1.0
0017: 1@ /= 224.0
0063: 7@ -= 1@ // (float)
006B: 7@ *= 4@ // (float)
0A8D: 8@ = read_memory 12840868 size 4 virtual_protect 0
0073: 7@ /= 8@ // (float)
006B: 6@ *= 2@ // (float)
006B: 7@ *= 2@ // (float)
0087: 9@ = 6@ // (float)
0087: 10@ = 2@ // (float)
0087: 11@ = 7@ // (float)
0A8D: 12@ = read_memory 11989052 size 4 virtual_protect 0
0AB1: call_scm_func @AIMBOT_6064 1 9 13@
0AA5: call 5883792 num_params 3 pop 3 13@ 12@ 13@
000A: 12@ += 48
0A8D: 14@ = read_memory 12@ size 4 virtual_protect 0
000A: 12@ += 4
0A8D: 15@ = read_memory 12@ size 4 virtual_protect 0
000A: 12@ += 4
0A8D: 16@ = read_memory 12@ size 4 virtual_protect 0
005B: 14@ += 9@ // (float)
005B: 15@ += 10@ // (float)
005B: 16@ += 11@ // (float)
0AB2: 3 14@ 15@ 16@ ret

:AIMBOT_5957
0007: 2@ = 640.0
0A8D: 4@ = read_memory 12677188 size 4 virtual_protect 0
0093: 4@ = integer 4@ to_float
0073: 2@ /= 4@ // (float)
006B: 0@ *= 2@ // (float)
0007: 3@ = 448.0
0A8D: 5@ = read_memory 12677192 size 4 virtual_protect 0
0093: 5@ = integer 5@ to_float
0073: 3@ /= 5@ // (float)
006B: 1@ *= 3@ // (float)
0AB2: 2 0@ 1@ ret

:AIMBOT_6064
0A9F: 1@ = current_thread_pointer
0012: 0@ *= 4
0A8E: 2@ = 1@ + 220 // int
00D6: if
0039: 2@ == 1
004D: jump_if_false @AIMBOT_6122
000A: 0@ += 10783072
0002: jump @AIMBOT_6137

:AIMBOT_6122
005A: 0@ += 1@ // (int)
000A: 0@ += 60

:AIMBOT_6137
0AB2: 1 0@ ret
hex
83 EC 04 D9 5C 24 00 8B 44 24 00 83 C4 04 C3´
 

Attachments

  • AIMBOT-SA-MP-0.3.7-R4.cs
    6 KB · Views: 1
Last edited:

dphome

Well-known member
Joined
Mar 21, 2020
Messages
458
Solutions
9
Reaction score
166
Location
Poland
it is it aimbot: http://ugbase.eu/index.php?threads/skin-aimbot-by-rscaerzx-wheel-aim.17521/

I deleted for you:
0ACD: show_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: Activated" time 3000
018C: play_sound 1057 at 0.0 0.0 0.0
018C: play_sound 1057 at 0.0 0.0 0.0
018C: play_sound 1058 at 0.0 0.0 0.0

Working any SA:MP version. Edited georgegg-aim.cs source code:
Code:
{$CLEO .cs}

const
    Key_1 = 0xA4 // Left Alt
    Key_2 = 0x31 // 1
    Key_Aim = 0x02 // Right mouse button
    Key_Misc_1 = 0x31 // 1 - Previous bone
    Key_Misc_2 = 0x32 // 2 - Next bone
    Key_Misc_3 = 0xA0 // Left Shift - Change Aim Mode
    Key_Misc_4 = 0x51 // Q - Change to left nearest actor
    Key_Misc_5 = 0x45 // E - Change to right nearest actor 
end

03A4: name_thread 'Aimbot'
0006: 30@ = 0 // 0 - Normal, 1 - Aim Wheels
0006: 31@ = 8 // Bone ID - 8: BONE_HEAD
0006: 32@ = 600
  
:Start
    0001: wait 0 ms
    00D6: if
    0050: gosub @KeyCheck
    004D: jump_if_false @Start
    0A9F: $popf = current_thread_pointer
    0008: $popf += 0x10 // CScriptThread.m_iBaseAddress
    0A8D: $popf = read_memory $popf size 4 virtual_protect 0
    000C: $popf -= @popFloat

:Search
    0001: wait 0 ms
    if
        0AB0:   key_pressed Key_Aim
    then
        0050: gosub @Find_Target
        00D6: if
        056D:   actor $ACTOR_TARGET defined
        004D: jump_if_false @Search
        0A96: 28@ = actor $ACTOR_TARGET struct
        0085: 29@ = 31@ // (int)
        goto @Main
    end
    00D6: if
    0050: gosub @KeyCheck
    004D: jump_if_false @Search
0002: jump @Stop

:Main
    0001: wait 0 ms
    00D6: if and
    056D:   actor $ACTOR_TARGET defined
    8118:   not actor $ACTOR_TARGET dead
    0AB0:   key_pressed Key_Aim
    004D: jump_if_false @Aim_Lock_Off
    if
        0449:   actor $ACTOR_TARGET in_a_car
    then
        if
            0039:   30@ == 1
        then
            03C0: 0@ = actor $ACTOR_TARGET car
            0A97: 1@ = car 0@ struct
            000A: 1@ += 0x590 // [byte] The class of transport
            0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
            if or
                0039:   1@ == 0 // CAutomobile
                0039:   1@ == 9 // CBike
            then
                if or
                    8496:   not tire 0 on_car 0@ deflated
                    8496:   not tire 1 on_car 0@ deflated
                    8496:   not tire 2 on_car 0@ deflated
                    8496:   not tire 3 on_car 0@ deflated
                then
                    goto @Main_Wheel
                end 
            end              
        end
      
        if
            8039:   not 31@ == 8
        then
            0006: 31@ = 8
        end
    else
        if
            803B:   not 31@ == 29@  // (int)
        then
            0085: 31@ = 29@ // (int)
        end  
    end
  
    0AA6: call_method 0x5E4280 struct 28@ num_params 3 pop 0 bIncludeAnim 1 iBoneID 31@ vPosition 0@v // CPed__getBonePosition
    0AB1: call_scm_func @AimAtPosition 3 coords_XYZ 0@ 1@ 2@
    0050: gosub @KeyMiscCheck
0002: jump @Main

:Main_Wheel
    0001: wait 0 ms
    00D6: if and
    056D:   actor $ACTOR_TARGET defined
    8118:   not actor $ACTOR_TARGET dead
    0AB0:   key_pressed Key_Aim
    004D: jump_if_false @Aim_Lock_Off
    00D6: if and
    0039:   30@ == 1
    0449:   actor $ACTOR_TARGET in_a_car
    004D: jump_if_false @Main
    03C0: 0@ = actor $ACTOR_TARGET car
    00D6: if or
    8496:   not tire 0 on_car 0@ deflated
    8496:   not tire 1 on_car 0@ deflated
    8496:   not tire 2 on_car 0@ deflated
    8496:   not tire 3 on_car 0@ deflated
    004D: jump_if_false @Main
    0050: gosub @GetNearestWheel
    0407: store_coords_to 0@ 1@ 2@ from_car 0@ with_offset $X_OFFS $Y_OFFS $Z_OFFS
    0AB1: call_scm_func @AimAtPosition 3 coords_XYZ 0@ 1@ 2@
    0050: gosub @KeyMiscCheck
0002: jump @Main_Wheel

:Find_Target
    0001: wait 0 ms
    0AB1: call_scm_func @GetPlayerTargetedEntity 0 vehicle 0@ actor $ACTOR_TARGET
    if
        056E:   car 0@ defined
    then
        03C0: 1@ = actor $PLAYER_ACTOR car
        if                                                       
            803B:   not 1@ == 0@  // (int)
        then
            046C: $ACTOR_TARGET = car 0@ driver
            if
                856D:   not actor $ACTOR_TARGET defined
            then
                01E9: 2@ = car 0@ num_passengers
                if
                    0019:   2@ > 0
                then
                    01EA: 3@ = car 0@ max_passengers
                    for 4@ = 0 to 3@
                        if
                            8431:   not car 0@ passenger_seat_free 4@
                        then
                            0432: $ACTOR_TARGET = get_actor_handle_from_car 0@ passenger_seat 4@
                            Break
                        end
                    end
                end
            end
        end
    end
0051: return

:Aim_Lock_Off
    0001: wait 0 ms
    0004: $ACTOR_TARGET = 0
    0085: 31@ = 29@ // (int)  
    0001: wait 100 ms
0002: jump @Search

:Stop
    0001: wait 0 ms
    0ACD: show_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: Deactivated" time 3000   
0002: jump @Start

const
    fDist = 300.0
end

:GetPlayerTargetedEntity
    0A96: 0@ = actor $PLAYER_ACTOR struct
    0A8D: 1@ = read_memory 0xB6F1A8 size 2 virtual_protect 0 // TheCamera.m_aCams.m_wCamMode
    0AA6: call_method 0x5E4280 struct 0@ num_params 3 pop 0 bIncludeAnim 1 iBoneID 25 vPosition 2@v // CPed__getBonePosition
    000B: 4@ += 0.3
    if or
        0039:   1@ == 53
        0039:   1@ == 55
    then
        0AA6: call_method 0x514970 struct 0xB6F028 num_params 6 pop 0 _targetOut 5@v _cameraOut 8@v _z 4@ _y 3@ _x 2@ _range fDist // CCamera::Find3rdPersonCamTargetVector
    else
        068E: get_camera_target_point_to 5@ 6@ 7@
        068D: get_camera_position_to 8@ 9@ 10@
        0087: 11@ = 8@ // (float)
        0087: 12@ = 9@ // (float)
        0087: 13@ = 10@ // (float)
      
        0063: 11@ -= 5@  // (float)
        0063: 12@ -= 6@  // (float)
        0063: 13@ -= 7@  // (float)
      
        0087: 14@ = 11@ // (float)
        0087: 15@ = 12@ // (float)
        0087: 16@ = 13@ // (float)
      
        0013: 11@ *= fDist
        0013: 12@ *= fDist
        0013: 13@ *= fDist
      
        0087: 5@ = 8@ // (float)
        0087: 6@ = 9@ // (float)
        0087: 7@ = 10@ // (float)

        0063: 5@ -= 11@  // (float)
        0063: 6@ -= 12@  // (float)
        0063: 7@ -= 13@  // (float)
      
        0063: 8@ -= 14@ // (float)
        0063: 9@ -= 15@ // (float)
        0063: 10@ -= 16@ // (float)

    end
    0006: 1@ = 0 // entity = NULL
    0AA7: call_function 0x56BA00 num_params 12 pop 12 0 0 0 0 _objects 1 _peds 1 _vehicles 1 _buildings 1 _pEntity 1@v _colPoint 8@v _end 5@v _start 2@v _result: 13@ // CWorld::ProcessLineOfSight
    0006: 14@ = 0
    0006: 15@ = 0
    if
        1@ <> 0
    then
        0A8E: 2@ = 1@ + 0x36
        0A8D: 2@ = read_memory 2@ size 1 virtual_protect 0 // entity->m_nStatusType
        0B10: 2@ = 2@ AND 7
        if
            2@ == 2 // ENTITY_TYPE_VEHICLE
        then
            0AEB: 14@ = car_struct 1@ handle
        else if
            2@ == 3 // ENTITY_TYPE_PED
        then
            if
                803B:   not 1@ == 0@  // (int)
            then
                0AEA: 15@ = actor_struct 1@ handle
            end
        end
        end
    end
0AB2: ret 2 14@ 15@

const
    M_PI = 3.1415926535897932384626433832795
end

:AimAtPosition
    // aim formula code taken & converted from m0d_sa
    068D: get_camera_position_to 3@ 4@ 5@
  
    0509: 11@ = distance_between_XY 0@ 1@ and_XY 3@ 4@

    0063: 3@ -= 0@  // (float)
    0063: 4@ -= 1@  // (float)
    0063: 5@ -= 2@  // (float)

    0A8D: 6@ = read_memory 0xB6F1A8 size 2 virtual_protect 0 // TheCamera.m_aCams.m_wCamMode
  
    if or
        0039:   6@ == 53
        0039:   6@ == 55
    then // 3rd person mode
  
        // multiplier
        0A8D: 7@ = read_memory 0x8D5038 size 4 virtual_protect 0 // FOV
        0007: 6@ = 0.5
        006B: 7@ *= 6@  // (float)
        02F6: 6@ = sine 7@ // (float)
        02F7: 8@ = cosine 7@ // (float)
        0073: 6@ /= 8@ // (float)

        // fx
        0A8D: 9@ = read_memory 0xB6EC10 size 4 virtual_protect 0 // crosshairOffset.x               
        0007: 8@ = 0.5
        0063: 8@ -= 9@  // (float)
        000B: 8@ += 0.5
        0063: 8@ -= 9@  // (float)
      
        0A8D: 9@ = read_memory 0xC3EFA4 size 4 virtual_protect 0 // screenAspectRatio
        0007: 7@ = 1.0
        0073: 7@ /= 9@ // (float)
      
        006B: 8@ *= 7@  // (float)
        006B: 8@ *= 6@  // (float)
      
        0AA5: call 0x4207C0 num_params 2 pop 2 _x 8@ _y 1.0 // atan2
        0AA7: call_function $popf num_params 0 pop 0 fValue 8@
      
        0007: 7@ = M_PI
        0063: 7@ -= 8@  // (float)
      
        // fz
        0A8D: 10@ = read_memory 0xB6EC14 size 4 virtual_protect 0 // crosshairOffset.y
        0087: 9@ = 10@ // (float)
        0007: 8@ = 0.5
        0063: 9@ -= 8@  // (float)
        005B: 9@ += 10@  // (float)
        0063: 9@ -= 8@  // (float)
        006B: 9@ *= 6@  // (float)
      
        0AA5: call 0x4207C0 num_params 2 pop 2 _x 9@ _y 1.0 // atan2
        0AA7: call_function $popf num_params 0 pop 0 fValue 9@
      
        0007: 8@ = M_PI
        0063: 8@ -= 9@  // (float)
    else
        0007: 7@ = M_PI
        0017: 7@ /= 2.0
        0087: 8@ = 7@ // (float)
    end
  
    // x angle  
    0AA5: call 0x4207C0 num_params 2 pop 2 _x 5@ _y 11@ // atan2
    0AA7: call_function $popf num_params 0 pop 0 fValue 9@

    // z angle
    0013: 3@ *= -1.0
    0AA5: call 0x4207C0 num_params 2 pop 2 _x 3@ _y 4@ // atan2
    0AA7: call_function $popf num_params 0 pop 0 fValue 10@
  
    0007: 11@ = M_PI
    0017: 11@ /= 2.0
    0063: 10@ -= 11@  // (float)

    0063: 9@ -= 7@  // (float)  
    0063: 10@ -= 8@  // (float)
    0013: 10@ *= -1.0
          
    0A25: set_camera_on_players_X_angle 9@ Z_angle 10@
0AB2: ret 0

:GetNearestWheel
    0A97: 1@ = car 0@ struct
    000A: 1@ += 0x590 // [byte] The class of transport
    0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
    if
        0039:   1@ == 0 // CAutomobile
    then
        0AB1: call_scm_func @GetCarWheelOffset 2 car 0@ componentId 5 store_to 10@ 11@ 12@ // tire 0 - wheel_lf_dumm
        0AB1: call_scm_func @GetCarWheelOffset 2 car 0@ componentId 7 store_to 13@ 14@ 15@ // tire 1 - wheel_lb_dummy
        0AB1: call_scm_func @GetCarWheelOffset 2 car 0@ componentId 2 store_to 16@ 17@ 18@ // tire 2 - wheel_rf_dummy
        0AB1: call_scm_func @GetCarWheelOffset 2 car 0@ componentId 4 store_to 19@ 20@ 21@ // tire 3 - wheel_rb_dummy
        0006: 2@ = 3
    else
        0AB1: call_scm_func @GetBikeWheelOffset 2 bike 0@ componentId 4 store_to 10@ 11@ 12@ // tire 0 - BIKE_WHEEL_FRONT
        0AB1: call_scm_func @GetBikeWheelOffset 2 bike 0@ componentId 5 store_to 13@ 14@ 15@ // tire 1 - BIKE_WHEEL_REAR
        0006: 2@ = 1  
    end
  
    0005: $SEARCH_RADIUS = 1000000.0
    00A0: store_actor $PLAYER_ACTOR position_to 4@ 5@ 6@
    for 3@ = 0 to 2@
        if
            8496:   not tire 3@ on_car 0@ deflated
        then
            0006: 7@ = 3
            006A: 7@ *= 3@  // (int)
            0006: 8@ = 1
            0006: 9@ = 2
            005A: 8@ += 7@  // (int)
            005A: 9@ += 7@  // (int)
            0407: store_coords_to 24@ 25@ 26@ from_car 0@ with_offset 10@(7@,12i) 10@(8@,12i) 10@(9@,12i)
            050A: 1@ = distance_between_XYZ 24@ 25@ 26@ and_XYZ 4@ 5@ 6@
            if
                0026:   $SEARCH_RADIUS > 1@  // (float)
            then
                0088: $SEARCH_RADIUS = 1@ // (float)
                0088: $X_OFFS = 10@(7@,12i) // (float)
                0088: $Y_OFFS = 10@(8@,12i) // (float)
                0088: $Z_OFFS = 10@(9@,12i) // (float)
            end
        end
    end
0051: return

:GetCarWheelOffset
    {
     Example:
       0AB1: call_scm_func @GetCarWheelOffset 2 car 0@ componentId 1@ store_to 2@ 3@ 4@
    }
    0006: 2@ = 4
    006A: 2@ *= 1@  // (int)
    0A97: 1@ = car 0@ struct
    000A: 1@ += 0x648 
    005A: 1@ += 2@  // (int)
    0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
    000A: 1@ += 0x40
    0A8D: 2@ = read_memory 1@ size 4 virtual_protect 0 // x
    000A: 1@ += 0x4
    0A8D: 3@ = read_memory 1@ size 4 virtual_protect 0 // y
    000A: 1@ += 0x4
    0A8D: 4@ = read_memory 1@ size 4 virtual_protect 0 // z
0AB2: ret 3 2@ 3@ 4@

:GetBikeWheelOffset
    {
     Example:
       0AB1: call_scm_func @GetBikeWheelPosition 2 bike 0@ componentId 1@ store_to 2@ 3@ 4@
    }
    0006: 2@ = 4
    006A: 2@ *= 1@  // (int) 
    0A97: 1@ = car 0@ struct
    000A: 1@ += 0x5A0 
    005A: 1@ += 2@  // (int)
    0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
  
    0085: 2@ = 1@ // (int)
    000A: 2@ += 0x40
    0A8D: 5@ = read_memory 2@ size 4 virtual_protect 0
    000A: 2@ += 0x4
    0A8D: 6@ = read_memory 2@ size 4 virtual_protect 0
    000A: 2@ += 0x4
    0A8D: 7@ = read_memory 2@ size 4 virtual_protect 0
          
    000A: 1@ += 0x4
    0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
    000A: 1@ += 0x10
  
    0AA5: call_method 0x7EDD60 num_params 3 pop 3 1@ 5@v 2@v
0AB2: ret 3 2@ 3@ 4@

:KeyCheck
    if and
        0019:   32@ > 600
        0AB0:   key_pressed Key_1
        0AB0:   key_pressed Key_2      
    then
        0006: 32@ = 0
        0485:  return_true
    else
        059A:  return_false
    end
0051: return

:KeyMiscCheck
    if
        0019:   32@ > 200
    then
        if
            0AB0:   key_pressed Key_Misc_1 // previous bone
        then                      
            if
                0039:   29@ == 1
            then
                0006: 29@ = 54
            else if
                0039:   29@ == 21
            then
                0006: 29@ = 8
            else if
                0039:   29@ == 31
            then
                0006: 29@ = 26
            else if
                0039:   29@ == 41
            then
                0006: 29@ = 36
            else if
                0039:   29@ == 51
            then
                0006: 29@ = 44
            else
                000E: 29@ -= 1  
            end
            end
            end
            end
            end
                     
            0050: gosub @UpdateBone
            0006: 32@ = 0
            if
                8449:   not actor $ACTOR_TARGET in_a_car
            then
                0085: 31@ = 29@ // (int)
            end
        else if
            0AB0:   key_pressed Key_Misc_2 // next bone
        then
      
            if
                0039:   29@ == 8
            then
                0006: 29@ = 21
            else if
                0039:   29@ == 26
            then
                0006: 29@ = 31
            else if
                0039:   29@ == 36
            then
                0006: 29@ = 41
            else if
                0039:   29@ == 44
            then
                0006: 29@ = 51
            else if
                0039:   29@ == 54
            then
                0006: 29@ = 1
            else
                000A: 29@ += 1
            end
            end
            end
            end
            end

            0050: gosub @UpdateBone
            0006: 32@ = 0
            if
                8449:   not actor $ACTOR_TARGET in_a_car
            then
                0085: 31@ = 29@ // (int)
            end
        else if
            0AB0:   key_pressed Key_Misc_3
        then
            0AC8: 22@ = allocate_memory_size 10
            if
                0039:   30@ == 1
            then
                0006: 30@ = 0
                0AD3: 22@ = format "Normal"
            else
                0006: 30@ = 1
                0AD3: 22@ = format "Wheel"
            end
            0006: 32@ = 0
            0AD1: show_formatted_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: %s aim mode." time 4000 22@
            0AC9: free_allocated_memory 22@
        else if or
            0AB0:   key_pressed Key_Misc_4
            0AB0:   key_pressed Key_Misc_5
        then
            if
                0AB0:   key_pressed Key_Misc_4
            then  
                0004: $SEARCH_MODE = 0
            else
                0004: $SEARCH_MODE = 1
            end
            0005: $SEARCH_RADIUS = 320.0
            0004: $ACTOR_TARGET_TMP = 0  
            0AB1: call_scm_func @LoopThroughPool 2 pool_ptr 0xB74490 gosub_loop @ActorLoop
            if
                056D:   actor $ACTOR_TARGET_TMP defined
            then
                0084: $ACTOR_TARGET = $ACTOR_TARGET_TMP // (int)
                0A96: 28@ = actor $ACTOR_TARGET struct
          
                0006: 32@ = 0
            end              
        end                    
        end          
        end
        end
    end
0051: return

:UpdateBone
    0AC8: 22@ = allocate_memory_size 25
    if         
        0039:   29@ == 1
    then
        0AD3: 22@ = format "BONE_PELVIS1"
    else if
        0039:   29@ == 2
    then
        0AD3: 22@ = format "BONE_PELVIS"
    else if
        0039:   29@ == 3
    then
        0AD3: 22@ = format "BONE_SPINE1"
    else if
        0039:   29@ == 4
    then
        0AD3: 22@ = format "BONE_UPPERTORSO"
    else if
        0039:   29@ == 5
    then
        0AD3: 22@ = format "BONE_NECK"
    else if
        0039:   29@ == 6
    then
        0AD3: 22@ = format "BONE_HEAD2"
    else if
        0039:   29@ == 7
    then
        0AD3: 22@ = format "BONE_HEAD1"
    else if
        0039:   29@ == 8
    then
        0AD3: 22@ = format "BONE_HEAD"
    else if
        0039:   29@ == 21
    then
        0AD3: 22@ = format "BONE_RIGHTUPPERTORSO"
    else if
        0039:   29@ == 22
    then
        0AD3: 22@ = format "BONE_RIGHTSHOULDER"
    else if
        0039:   29@ == 23
    then
        0AD3: 22@ = format "BONE_RIGHTELBOW"
    else if
        0039:   29@ == 24
    then
        0AD3: 22@ = format "BONE_RIGHTWRIST"
    else if
        0039:   29@ == 25
    then
        0AD3: 22@ = format "BONE_RIGHTHAND"
    else if
        0039:   29@ == 26
    then
        0AD3: 22@ = format "BONE_RIGHTTHUMB"
    else if
        0039:   29@ == 31
    then
        0AD3: 22@ = format "BONE_LEFTUPPERTORSO"
    else if
        0039:   29@ == 32
    then
        0AD3: 22@ = format "BONE_LEFTSHOULDER"
    else if
        0039:   29@ == 33
    then
        0AD3: 22@ = format "BONE_LEFTELBOW"
    else if
        0039:   29@ == 34
    then
        0AD3: 22@ = format "BONE_LEFTWRIST"
    else if
        0039:   29@ == 35
    then
        0AD3: 22@ = format "BONE_LEFTHAND"
    else if
        0039:   29@ == 36
    then
        0AD3: 22@ = format "BONE_LEFTTHUMB"
    else if
        0039:   29@ == 41
    then
        0AD3: 22@ = format "BONE_LEFTHIP"
    else if
        0039:   29@ == 42
    then
        0AD3: 22@ = format "BONE_LEFTKNEE"
    else if
        0039:   29@ == 43
    then
        0AD3: 22@ = format "BONE_LEFTANKLE"
    else if
        0039:   29@ == 44
    then
        0AD3: 22@ = format "BONE_LEFTFOOT"
    else if
        0039:   29@ == 51
    then
        0AD3: 22@ = format "BONE_RIGHTHIP"
    else if
        0039:   29@ == 52
    then
        0AD3: 22@ = format "BONE_RIGHTKNEE"
    else if
        0039:   29@ == 53
    then
        0AD3: 22@ = format "BONE_RIGHTANKLE"
    else if
        0039:   29@ == 54
    then
        0AD3: 22@ = format "BONE_RIGHTFOOT"
    else if
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end      
    end
    0AD1: show_formatted_text_highpriority "~r~[~w~~h~Aimbot~r~] ~w~~h~:: %d: %s" time 4000 29@ 22@
    0AC9: free_allocated_memory 22@
0051: return

:LoopThroughPool
    0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0 // CPool
    0@ += 0x4
    0A8D: 2@ = read_memory 0@ size 4 virtual_protect 0 // pByteMap
    0@ += 0x4
    0A8D: 3@ = read_memory 0@ size 4 virtual_protect 0 // nItems
    3@ -= 1
    for 4@ = 0 to 3@
        0A8D: 0@ = read_memory 2@ size 1 virtual_protect 0
        2@ += 0x1
        if and
            0@ > 0x0
            0@ < 0x80
        then
            0085: 5@ = 4@
            5@ *= 0x100
            005A: 0@ += 5@
            gosub 1@
        end
    end
0AB2: ret 0

:ActorLoop
    if and
        02CB:   actor 0@ bounding_sphere_visible
        87D6:   not 0@ == $PLAYER_ACTOR // @ == $ (int)
        8118:   not actor 0@ dead     
    then
        00A0: store_actor 0@ position_to 5@ 6@ 7@
        068D: get_camera_position_to 8@ 9@ 10@
        if
            06BD:   no_obstacles_between 5@ 6@ 7@ and 8@ 9@ 10@ solid 1 car 0 actor 0 object 0 particle 0
        then          
            if
                87D6:   not 0@ == $ACTOR_TARGET // @ == $ (int)
            then
                if
                    0038:   $SEARCH_MODE == 0
                then
                    0007: 11@ = 0.0
                    0007: 12@ = 320.0
                else
                    0007: 11@ = 320.0
                    0007: 12@ = 640.0
                end              
                0AB1: call_scm_func @getScreenXYFrom3DCoords 3 coords_XYZ 5@ 6@ 7@ store_to 8@ 9@                  
                if and
                    0035:   8@ >= 11@  // (float)
                    0035:   12@ >= 8@  // (float)
                then
                    0509: 10@ = distance_between_XY 320.0 9@ and_XY 8@ 9@
                    if
                        0036:   $SEARCH_RADIUS >= 10@ // (float)
                    then  
                        0088: $SEARCH_RADIUS = 10@ // (float)
                        008A: $ACTOR_TARGET_TMP = 0@ // (int)
                    end
                end
            end
        end   
    end
return

const
    WIDTH       = 640.0
    HEIGHT      = 448.0
    HALF_WIDTH  = 320.0
    HALF_HEIGHT = 224.0
end

:getScreenXYFrom3DCoords
    {
     Parameters:
       Passed:
         0@ - position X
         1@ - position Y
         2@ - position Z
       Result:
         3@ - screen X
         4@ - screen Y
  
     Example:
       0AB1: call_scm_func @getScreenXYFrom3DCoords 3 coords_XYZ 2488.562 -1666.865 12.8757 store_to 1@ 2@
    }
    0AB1: call_scm_func @getLocalVarOffset 1 var 0 store_to 12@
    0AB1: call_scm_func @getLocalVarOffset 1 var 3 store_to 13@
    0AB1: call_scm_func @getLocalVarOffset 1 var 6 store_to 14@
    0AB1: call_scm_func @getLocalVarOffset 1 var 9 store_to 15@
    0AA5: call 0x70CE30 num_params 6 pop 6 bNearClip 0 bFarClip 0 pMultY 15@ pMultX 14@ pScreen 13@ pCoords 12@
    0AB1: call_scm_func @getFullScreenXY 2 coords_XY 3@ 4@ store_to 3@ 4@
0AB2: ret 2 3@ 4@

:get3DCoordsFromScreenXY
    {
     Parameters:
       Passed:
         0@ - screen X
         1@ - screen Y
         2@ - distance
       Result:
         14@ - position X
         15@ - position Y
         16@ - position Z
  
     Example:
       0AB1: call_scm_func @get3DCoordsFromScreenXY 3 coords_XY 320.0 224.0 distance 1.0 store_to 1@ 2@ 3@
    }
    0A8D: 3@ = read_memory 0x8D5038 size 4 virtual_protect 0 // field of view
    3@ *= 0.5
    02F6: 4@ = sine 3@
    02F7: 5@ = cosine 3@
    0073: 4@ /= 5@
    6@ = 1.0
    0@ /= HALF_WIDTH // half screen X
    0063: 6@ -= 0@
    006B: 6@ *= 4@
    7@ = 1.0
    1@ /= HALF_HEIGHT // half screen Y
    0063: 7@ -= 1@
    006B: 7@ *= 4@
    0A8D: 8@ = read_memory 0xC3EFA4 size 4 virtual_protect 0 // screen aspect ratio
    0073: 7@ /= 8@
    006B: 6@ *= 2@
    006B: 7@ *= 2@
    0087: 9@ = 6@
    0087: 10@ = 2@
    0087: 11@ = 7@
    0A8D: 12@ = read_memory 0xB6F03C size 4 virtual_protect 0 // camera matrix
    0AB1: call_scm_func @getLocalVarOffset 1 var 9 store_to 13@
    0AA5: call 0x59C790 num_params 3 pop 3 pOffsets 13@ pMatrix 12@ pResult 13@ // CPlaceable__getMatrixAbsOffsets
    12@ += 0x30
    0A8D: 14@ = read_memory 12@ size 4 virtual_protect 0 // camera X position
    12@ += 0x4
    0A8D: 15@ = read_memory 12@ size 4 virtual_protect 0 // camera Y position
    12@ += 0x4
    0A8D: 16@ = read_memory 12@ size 4 virtual_protect 0 // camera Z position
    005B: 14@ += 9@
    005B: 15@ += 10@
    005B: 16@ += 11@
0AB2: ret 3 14@ 15@ 16@

:getFullScreenXY
    {
     Parameters:
       Passed:
         0@ - full screen X
         1@ - full screen Y
       Result:
         0@ - screen X
         1@ - screen Y
  
     Example:
       0AB1: call_scm_func @getFullScreenXY 2 coords_XY 320.0 224.0 store_to 1@ 2@
    }
    2@ = WIDTH // screen X
    0A8D: 4@ = read_memory 0xC17044 size 4 virtual_protect 0 // full screen X
    0093: 4@ = integer 4@ to_float
    0073: 2@ /= 4@
    006B: 0@ *= 2@
    3@ = HEIGHT // screen Y
    0A8D: 5@ = read_memory 0xC17048 size 4 virtual_protect 0 // full screen Y
    0093: 5@ = integer 5@ to_float
    0073: 3@ /= 5@
    006B: 1@ *= 3@
0AB2: ret 2 0@ 1@

:getLocalVarOffset
    {
     Parameters:
       Passed:
         0@ - thread pointer (offset)
       Result:
         0@ - var pointer (offset)
  
     Example:
       0AB1: call_scm_func @getLocalVarOffset 1 var 0 store_to 1@
    }
    0A9F: 1@ = current_thread_pointer
    0@ *= 0x4
    0A8E: 2@ = 1@ + 0xDC // mission flag
    if
        2@ == 1
    then
        0@ += 0xA48960
    else
        005A: 0@ += 1@
        0@ += 0x3C
    end
0AB2: ret 1 0@

:popFloat
hex
   83EC 04   // sub     esp, 4
   D95C24 00 // fstp    [esp+4-4]
   8B4424 00 // mov     eax, [esp+4-4]
   83C4 04   // add     esp, 4
   C3        // retn
end
 

Attachments

  • georgegg-aim.cs
    49 KB · Views: 10
Last edited:
Status
Not open for further replies.
Top