task

Methods

task_pause

This tasks the ped to do nothing for the specified amount of milliseconds. This is useful if you want to add a delay between tasks when using a sequence task.

function native.task.task_pause(ped: int, ms: int): void

task_stand_still

Makes the specified ped stand still for (time) milliseconds.

function native.task.task_stand_still(ped: int, time: int): void

task_jump

function native.task.task_jump(ped: int, unused: bool): void

_task_jump_2

function native.task._task_jump_2(ped: int, x: float, y: float, z: float, entity: int): void

task_cower

function native.task.task_cower(ped: int, duration: int, ped_to_cower_from: int, p3: string): void

task_hands_up

flags: 0 = HANDS_UP_NOTHING; 1 = HANDS_UP_STRAIGHT_TO_LOOP

function native.task.task_hands_up(ped: int, duration: int, facing_ped: int, time_to_face_ped: int, flags: int): void

task_knocked_out

function native.task.task_knocked_out(ped: int, p1: float, permanently: bool): void

task_knocked_out_and_hogtied

function native.task.task_knocked_out_and_hogtied(ped: int, p1: float, p2: int): void

_0xffb520a3e16f7b7b

function native.task._0xffb520a3e16f7b7b(ped: int, p1: float): void

_0x8b1fdf63c3193eda

function native.task._0x8b1fdf63c3193eda(ped: int, p1: float): void

update_task_hands_up_duration

function native.task.update_task_hands_up_duration(ped: int, duration: int): void

_0x28ef780bdea8a639

function native.task._0x28ef780bdea8a639(ped: int, p1: int): void

task_duck

function native.task.task_duck(ped: int, p1: int): void

_task_board_vehicle

function native.task._task_board_vehicle(ped: int, vehicle: int, p2: int, p3: int, p4: int, p5: int): void

_task_disembark_vehicle

function native.task._task_disembark_vehicle(p0: int, vehicle: int, p2: int, p3: int, p4: float, p5: int): void

_task_board_vehicle_2

function native.task._task_board_vehicle_2(ped: int, p1: int, p2: int, p3: float, flags: int): void

task_disembark_nearest_train_carriage

flags: See TASK_ENTER_VEHICLE

function native.task.task_disembark_nearest_train_carriage(ped: int, p1: float, flags: int): void

task_enter_vehicle

function native.task.task_enter_vehicle(ped: int, vehicle: int, timeout: int, seat: int, speed: float, flag: int, p6: int): void

task_leave_vehicle

flags: See TASK_ENTER_VEHICLE

function native.task.task_leave_vehicle(ped: int, vehicle: int, flags: int, unk_ped: int): void

task_mount_animal

timer: in ms, if it reaches 0 it will auto warp the ped on the horse mountStyle: See TASK_ENTER_VEHICLE Flags will still apply to mountStyle

function native.task.task_mount_animal(ped: int, mount: int, timer: int, seat_index: int, ped_speed: float, mount_style: int, p6: int, p7: int): void

task_dismount_animal

Dismounts the ped from the animal it's mounted on. taskFlag affects what side the rider gets off. p2-p5 are almost always 0. flags: See TASK_ENTER_VEHICLE

function native.task.task_dismount_animal(rider: int, task_flag: int, p2: int, p3: int, p4: int, target_ped: int): void

task_hitch_animal

function native.task.task_hitch_animal(ped: int, scenario_point: int, flag: int): void

_0xe05a5d39be6e93af

function native.task._0xe05a5d39be6e93af(p0: int): void

task_vehicle_drive_to_coord

stopRange: how close vehicle will get to destination before stopping, default 4.0 straightLineDist: distance at which AI switches to heading for target directly instead of following nodes, default -1

function native.task.task_vehicle_drive_to_coord(ped: int, vehicle: int, x: float, y: float, z: float, speed: float, style: int, vehicle_model: int, driving_mode: int, stop_range: float, straight_line_dist: float): void

_task_vehicle_drive_to_coord_2

function native.task._task_vehicle_drive_to_coord_2(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): void

task_vehicle_drive_wander

function native.task.task_vehicle_drive_wander(ped: int, vehicle: int, speed: float, driving_style: int): void

task_follow_to_offset_of_entity

function native.task.task_follow_to_offset_of_entity(ped: int, entity: int, offset_x: float, offset_y: float, offset_z: float, movement_speed: float, timeout: int, stopping_range: float, persist_following: bool, p9: bool, walk_only: bool, p11: bool, p12: bool, p13: bool): void

task_follow_to_offset_of_coord

function native.task.task_follow_to_offset_of_coord(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int): void

_0x3ffcd7bba074cc80

function native.task._0x3ffcd7bba074cc80(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): void

task_go_straight_to_coord

function native.task.task_go_straight_to_coord(ped: int, x: float, y: float, z: float, move_blend_speed_y: float, p5: int, p6: float, p7: float, p8: int): void

task_go_straight_to_coord_relative_to_entity

function native.task.task_go_straight_to_coord_relative_to_entity(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int): void

task_move_in_traffic

function native.task.task_move_in_traffic(ped: int, p1: int, p2: int, p3: int): void

task_move_in_traffic_to_destination

function native.task.task_move_in_traffic_to_destination(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int): void

task_move_in_traffic_away_from_entity

function native.task.task_move_in_traffic_away_from_entity(ped: int, p1: int, p2: int, p3: int, p4: int): void

_0xbaab791aa72c2821

function native.task._0xbaab791aa72c2821(p0: int, p1: int): void

task_move_follow_road_using_navmesh

Params: moveBlendRatio commonly 1.25f, p5 is always 0 in R* Scripts

function native.task.task_move_follow_road_using_navmesh(ped: int, move_blend_ratio: float, x: float, y: float, z: float, p5: int): void

task_achieve_heading

Makes the specified ped achieve the specified heading.

pedHandle: The handle of the ped to assign the task to. heading: The desired heading. timeout: The time, in milliseconds, to allow the task to complete. If the task times out, it is canceled, and the ped will stay at the heading it managed to reach in the time.

function native.task.task_achieve_heading(ped: int, heading: float, timeout: int): void

task_flush_route

Clears the current point route. Call this before TASK_EXTEND_ROUTE and TASK_FOLLOW_POINT_ROUTE.

function native.task.task_flush_route(): void

task_extend_route

Adds a new point to the current point route. Call TASK_FLUSH_ROUTE before the first call to this. Call TASK_FOLLOW_POINT_ROUTE to make the Ped go the route.

A maximum of 8 points can be added.

function native.task.task_extend_route(x: float, y: float, z: float): void

task_follow_point_route

function native.task.task_follow_point_route(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int): void

task_enter_anim_scene

flags: MOVE_WHILST_WAITING_FOR_PATH = (1 << 0), DO_NOT_STAND_STILL_AT_END_OF_PATH = (1 << 1), SKIP_NAVIGATION = (1 << 2), TEASF_AUTO_START_ANIM_SCENE = (1 << 3), FORCE_STAND_STILL_AT_END_OF_PATH = (1 << 6), ENTER_ANIM_SCENE_DONT_FOLLOW_NAVMESH = (1 << 7)

function native.task.task_enter_anim_scene(ped: int, anim_scene: int, entity_name: string, playback_list_name: string, enter_speed: float, b_auto_start: bool, flag: int, p7: int, p8: float): void

task_move_be_in_formation

function native.task.task_move_be_in_formation(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int): void

task_go_to_entity

function native.task.task_go_to_entity(ped: int, target: int, duration: int, distance: float, speed: float, p5: float, p6: int): void

task_follow_and_converse_with_ped

function native.task.task_follow_and_converse_with_ped(ped: int, target_ped: int, p2: int, p3: int, p4: float, p5: float, p6: int, p7: int, p8: int, p9: float, p10: float): void

_0xa052608a12559bbb

function native.task._0xa052608a12559bbb(p0: int, p1: int): void

task_wander_and_converse_with_ped

function native.task.task_wander_and_converse_with_ped(ped: int, p1: int, p2: int, p3: int): void

task_lead_and_converse

function native.task.task_lead_and_converse(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): void

_0xde0c8b145ea466ff

function native.task._0xde0c8b145ea466ff(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int): void

task_seek_clear_los_to_entity

function native.task.task_seek_clear_los_to_entity(ped: int, entity: int, p2: float, p3: float, p4: float): void

task_go_to_whistle

enum eWhistleType { WHISTLE_MAIN, WHISTLE_SECONDARY, WHISTLE_DOUBLE, WHISTLE_URGENT, WHISTLE_LONG };

function native.task.task_go_to_whistle(ped: int, p1: int, whistle_type: int): void

_0xeb67d4e056c85a81

function native.task._0xeb67d4e056c85a81(p0: int): int

_0x78d8c1d4eb80c588

function native.task._0x78d8c1d4eb80c588(p0: int): int

task_lead_horse

function native.task.task_lead_horse(ped: int, horse: int): void

task_stop_leading_horse

function native.task.task_stop_leading_horse(ped: int): void

_task_flee_from_coord

fleeType: see TASK_FLEE_COORD

function native.task._task_flee_from_coord(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int): void

_task_flee_from_ped

fleeType: see TASK_FLEE_COORD

function native.task._task_flee_from_ped(ped: int, flee_from_target: int, x: float, y: float, z: float, distance: float, p6: int, p7: int, p8: float, target_ped: int): void

task_smart_flee_coord

Makes the specified ped flee the specified distance from the specified position. fleeType: see TASK_FLEE_COORD

function native.task.task_smart_flee_coord(ped: int, x: float, y: float, z: float, distance: float, time: int, flee_type: int, flee_speed: float): void

task_smart_flee_ped

Makes a ped run away from another ped (fleeFromTarget)

fleeDistance = ped will flee this distance fleeTime = ped will flee for this amount of time, set to "-1" to flee forever fleeType = see TASK_FLEE_COORD, can be 0, R* Scripts: fm_mission/race_controller: 66048; fme_escaped_convicts: 2260992, 2523136, 2359296; la_alligator/fox: 2097152; net_fetch: 17301536; net_stable_mount: 540928 fleeSpeed = mostly 3f, rarely 1f in R* Scripts

function native.task.task_smart_flee_ped(ped: int, flee_from_target: int, flee_distance: float, flee_time: int, flee_type: int, flee_speed: float, target_ped: int): void

_0x673a8779d229ba5a

function native.task._0x673a8779d229ba5a(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int): void

_0x2e1d6d87346bb7d2

function native.task._0x2e1d6d87346bb7d2(p0: int, p1: int, p2: int, p3: int): void

task_flee_coord

Params: p5 = some flag?, p6 = -1.0f, p8 = 0 in R* Scripts fleeStyle: https://github.com/Halen84/RDR3-Native-Flags-And-Enums/tree/main/eFleeStyle

function native.task.task_flee_coord(ped: int, x: float, y: float, z: float, flee_style: int, p5: int, p6: float, duration: int, p8: int): void

task_flee_ped

Params: p4 = -1.0f, p5 = -1, p6 = 0 in R* Scripts fleeStyle: see TASK_FLEE_COORD

function native.task.task_flee_ped(ped: int, flee_from_target: int, flee_style: int, flag: int, p4: float, p5: int, p6: int): void

task_flee_coord_via

function native.task.task_flee_coord_via(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int): void

task_flee_ped_via

function native.task.task_flee_ped_via(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int): void

_add_flee_target_coords

function native.task._add_flee_target_coords(ped: int, x: float, y: float, z: float, p4: float): void

add_flee_target_ped

Params: p2 is always -1.f in R* Scripts

function native.task.add_flee_target_ped(ped: int, target_ped: int, p2: float): void

_0xa42dc7919159cccf

function native.task._0xa42dc7919159cccf(p0: int): void

task_fly_away

function native.task.task_fly_away(ped: int, flee_from_target: int): void

task_fly_to_coord

function native.task.task_fly_to_coord(ped: int, travel_mbr: float, x: float, y: float, z: float, p5: bool, p6: bool): void

task_flying_circle

function native.task.task_flying_circle(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int): void

task_walk_away

function native.task.task_walk_away(ped: int, entity: int): void

task_shocking_event_react

function native.task.task_shocking_event_react(ped: int, p1: int, p2: int): void

task_react

Makes a ped react to an entity. Params: reactingTo Entity can be 0, p8 is always 4

function native.task.task_react(ped: int, reacting_to: int, x: float, y: float, z: float, reaction_name: string, p6: float, p7: float, p8: int): void

task_wander_in_area

function native.task.task_wander_in_area(ped: int, x: float, y: float, z: float, radius: float, p5: float, p6: float, p7: int): void

task_wander_in_volume

function native.task.task_wander_in_volume(ped: int, volume: int, p2: float, p3: float, p4: int): void

task_wander_standard

Makes ped walk around the area.

set p1 to 10.0f and p2 to 10 if you want the ped to walk anywhere without a duration.

function native.task.task_wander_standard(ped: int, p1: float, p2: int): void

task_wander_swim

function native.task.task_wander_swim(ped: int, p1: int): void

task_plant_bomb

function native.task.task_plant_bomb(ped: int, x: float, y: float, z: float, heading: float): void

task_horse_action

function native.task.task_horse_action(ped: int, action: int, target_ped: int, p3: int): void

task_animal_interaction

function native.task.task_animal_interaction(ped: int, target_ped: int, interaction_type: int, interaction_model: int, skip_idle_animation_clip: bool): void

task_combat_animal_warn

function native.task.task_combat_animal_warn(ped: int, p1: int, p2: int): void

task_combat_animal_charge_ped

function native.task.task_combat_animal_charge_ped(ped: int, target_ped: int, p2: bool, p3: int, p4: int, p5: int, p6: int): void

_0x76610d12a838ebde

function native.task._0x76610d12a838ebde(p0: int): int

task_ambient_animal_stalk

function native.task.task_ambient_animal_stalk(ped: int, p1: int, p2: int): void

task_ambient_animal_hunt

function native.task.task_ambient_animal_hunt(ped: int, p1: int, p2: int): void

task_animal_unalerted

function native.task.task_animal_unalerted(ped: int, p1: int, p2: int, p3: int, p4: int): void

task_animal_alerted

function native.task.task_animal_alerted(ped: int, p1: int, p2: int): void

task_animal_flee

function native.task.task_animal_flee(ped: int, target_ped: int, p2: int): void

_0x244430c13ba5258e

function native.task._0x244430c13ba5258e(p0: int, p1: int, p2: int, p3: int): int

task_eat

function native.task.task_eat(ped: int, p1: int, p2: int): void

task_bark

function native.task.task_bark(ped: int, bark_at_target: int, mood: int): void

task_follow_pavement_to_coord

function native.task.task_follow_pavement_to_coord(ped: int, args: ptr int): void

task_follow_nav_mesh_to_coord

If no timeout, set timeout to -1.

function native.task.task_follow_nav_mesh_to_coord(ped: int, x: float, y: float, z: float, speed_multiplier: float, timeout: int, stopping_range: float, flags: int, heading: float): void

task_follow_nav_mesh_to_coord_advanced

function native.task.task_follow_nav_mesh_to_coord_advanced(ped: int, x: float, y: float, z: float, speed_multiplier: float, timeout: int, stopping_range: float, flags: int, p8: float, p9: float, p10: float, entity: int, unk: float): void

set_ped_path_can_use_climbovers

function native.task.set_ped_path_can_use_climbovers(ped: int, toggle: bool): void

set_ped_path_can_use_ladders

function native.task.set_ped_path_can_use_ladders(ped: int, toggle: bool): void

set_ped_path_can_drop_from_height

function native.task.set_ped_path_can_drop_from_height(ped: int, toggle: bool): void

_0xe6a151364c600b24

function native.task._0xe6a151364c600b24(p0: int): int

_0x1632eb9386cdbe64

function native.task._0x1632eb9386cdbe64(p0: int, p1: int): void

set_ped_path_climb_cost_modifier

function native.task.set_ped_path_climb_cost_modifier(ped: int, modifier: float): void

set_ped_path_deep_snow_cost_modifier

function native.task.set_ped_path_deep_snow_cost_modifier(ped: int, modifier: float): void

set_ped_path_foliage_cost_modifier

function native.task.set_ped_path_foliage_cost_modifier(ped: int, modifier: float): void

_0x8798cf6815b8fe0f

function native.task._0x8798cf6815b8fe0f(p0: int, p1: int): void

_0x5b68d0007d9c92eb

function native.task._0x5b68d0007d9c92eb(p0: int, p1: int): void

_0x82ed59f095056550

function native.task._0x82ed59f095056550(p0: int, p1: int): void

_0xe01c8dc8edd28d31

function native.task._0xe01c8dc8edd28d31(p0: int, p1: int): void

_0x098caa6dbe7d8d82

function native.task._0x098caa6dbe7d8d82(p0: int, p1: int): void

_get_ped_is_ignoring_dead_bodies

function native.task._get_ped_is_ignoring_dead_bodies(ped: int): bool

_set_ped_ignore_dead_bodies

function native.task._set_ped_ignore_dead_bodies(ped: int, toggle: bool): void

_set_ped_path_ladder_cost_modifier

_SET_PED_PATH_P*

function native.task._set_ped_path_ladder_cost_modifier(ped: int, modifier: float): void

set_ped_path_may_enter_water

function native.task.set_ped_path_may_enter_water(ped: int, may_enter_water: bool): void

_set_ped_path_may_enter_deep_water

function native.task._set_ped_path_may_enter_deep_water(ped: int, may_enter_deep_water: bool): void

_0xc6170856e54557b2

function native.task._0xc6170856e54557b2(p0: int, p1: int, p2: int): void

_0xf948f4356f010f11

function native.task._0xf948f4356f010f11(p0: int, p1: int, p2: int): void

set_ped_path_prefer_to_avoid_water

function native.task.set_ped_path_prefer_to_avoid_water(ped: int, avoid_water: bool, p2: float): void

_0x8bb283a7888ad1ad

function native.task._0x8bb283a7888ad1ad(p0: int, p1: int, p2: int): void

_0x12990818c1d35886

function native.task._0x12990818c1d35886(p0: int, p1: int, p2: int): void

_0x7c015d8bcec72cf4

function native.task._0x7c015d8bcec72cf4(p0: int, p1: int): void

set_ped_path_avoid_fire

function native.task.set_ped_path_avoid_fire(ped: int, avoid_fire: bool): void

_0x42cfd8fd8cc8dc69

function native.task._0x42cfd8fd8cc8dc69(p0: int, p1: int): void

_0x216343750545a486

function native.task._0x216343750545a486(p0: int, p1: int, p2: int): void

_0x06ecf3925bc2abae

function native.task._0x06ecf3925bc2abae(p0: int, p1: int): void

_0xfa30e2254461adeb

function native.task._0xfa30e2254461adeb(p0: int, p1: int): void

task_go_to_coord_any_means

function native.task.task_go_to_coord_any_means(ped: int, x: float, y: float, z: float, speed: float, entity: int, p6: bool, walking_style: int, p8: float): void

task_go_to_coord_any_means_extra_params

function native.task.task_go_to_coord_any_means_extra_params(ped: int, x: float, y: float, z: float, speed: float, p5: int, p6: bool, walking_style: int, p8: float, p9: int, p10: int, p11: int, p12: int): void

task_go_to_coord_any_means_extra_params_with_cruise_speed

function native.task.task_go_to_coord_any_means_extra_params_with_cruise_speed(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int): void

task_play_anim

function native.task.task_play_anim(ped: int, anim_dict: string, anim_name: string, speed: float, speed_multiplier: float, duration: int, flags: int, playback_rate: float, p8: bool, ik_flags: int, p10: bool, task_filter: string, p12: bool): void

task_play_anim_advanced

flags: see TASK_PLAY_ANIM ikFlags: see TASK_PLAY_ANIM

function native.task.task_play_anim_advanced(ped: int, anim_dict: string, anim_name: string, pos_x: float, pos_y: float, pos_z: float, rot_x: float, rot_y: float, rot_z: float, speed: float, speed_multiplier: float, duration: int, flags: int, p13: float, p14: int, p15: int, p16: int): void

task_play_upper_anim_facing_entity

function native.task.task_play_upper_anim_facing_entity(ped: int, anim_dict: string, anim_name: string, entity: int, p4: int, p5: float, p6: float, p7: int, p8: float, p9: bool, p10: bool, p11: float, p12: string, p13: int, p14: float): void

stop_anim_task

function native.task.stop_anim_task(ped: int, anim_dictionary: string, animation_name: string, p3: float): void

task_scripted_animation

function native.task.task_scripted_animation(ped: int, args: ptr int): void

play_entity_scripted_anim

function native.task.play_entity_scripted_anim(entity: int, args: ptr int): void

stop_anim_playback

function native.task.stop_anim_playback(ped: int, p1: int, p2: bool): void

set_anim_filter

function native.task.set_anim_filter(p0: int, p1: int, p2: int, p3: int): void

set_anim_rate

function native.task.set_anim_rate(p0: int, p1: float, p2: int, p3: bool): void

can_start_item_interaction

function native.task.can_start_item_interaction(ped: int, item_hash: int, interaction_anim_hash: int, p3: int): bool

start_task_item_interaction

function native.task.start_task_item_interaction(ped: int, item_hash: int, interaction_anim_hash: int, p3: int, flag: int, p5: float): void

_task_item_interaction_2

function native.task._task_item_interaction_2(ped: int, prop_name_gxt: int, prop: int, prop_id: int, item_interaction_state: int, p5: int, p6: int, p7: float): void

_task_item_interaction_3

Params: p3, p4, p5, p6: 0, 0, 0, -1.0f in R* Scripts

function native.task._task_item_interaction_3(ped: int, item: int, guid: ptr int, p3: int, p4: int, p5: int, p6: float): void

_0xb35370d5353995cb

function native.task._0xb35370d5353995cb(ped: int, item: int, p2: float): void

get_item_interaction_state

function native.task.get_item_interaction_state(ped: int): int

get_item_interaction_item_id

function native.task.get_item_interaction_item_id(ped: int): int

is_ped_running_inspection_task

function native.task.is_ped_running_inspection_task(ped: int): bool

is_ped_running_task_item_interaction

function native.task.is_ped_running_task_item_interaction(ped: int): bool

_get_item_interaction_entity_from_ped

item hashes: PRIMARYITEM, P_MUGCOFFEE01X_PH_R_HAND, P_BOTTLEBEER01X_PH_R_HAND http://prntscr.com/1qtp3bzhttps://github.com/femga/rdr3_discoveries/tree/master/tasks/TASK_ITEM_INTERACTION

function native.task._get_item_interaction_entity_from_ped(ped: int, item: int): int

get_item_interaction_prompt_progress

function native.task.get_item_interaction_prompt_progress(ped: int, input_context: int): float

_0x678d3226cf70b9c8

Only used in R* SP Script beat_washed_ashore Returns Object prop for TASK::_TASK_ITEM_INTERACTION_2

function native.task._0x678d3226cf70b9c8(ped: int, p1: bool): int

task_evasive_anim

Params: p2 is returned by BUILTIN::SHIFT_LEFT

function native.task.task_evasive_anim(ped1: int, ped2: int, p2: int): void

task_look_at_coord

function native.task.task_look_at_coord(ped: int, x: float, y: float, z: float, duration: int, flags: int, p6: int, p7: bool): void

task_look_at_entity

param3: duration in ms, use -1 to look forever param4: using 2048 is fine param5: using 3 is fine

function native.task.task_look_at_entity(ped: int, look_at_target: int, duration: int, p3: int, p4: int, p5: int): void

task_clear_look_at

function native.task.task_clear_look_at(ped: int): void

_0x508f5053e3f6f0c4

Only used in R* SP Scripts Params: p4 = 1.0f - 30.0f

function native.task._0x508f5053e3f6f0c4(ped: int, x: float, y: float, z: float, p4: float): bool

_0x23767d80c7eed7c6

function native.task._0x23767d80c7eed7c6(p0: int, p1: int): void

open_sequence_task

function native.task.open_sequence_task(task_sequence_id: ptr int): void

close_sequence_task

function native.task.close_sequence_task(task_sequence_id: int): void

task_perform_sequence

function native.task.task_perform_sequence(ped: int, task_sequence_id: int): void

_task_perform_sequence_2

function native.task._task_perform_sequence_2(p0: int, p1: int, p2: int, p3: int): void

clear_sequence_task

function native.task.clear_sequence_task(task_sequence_id: ptr int): void

set_sequence_to_repeat

repeatMode: 0 = REPEAT_NOT; 1 = REPEAT_FOREVER

function native.task.set_sequence_to_repeat(task_sequence_id: int, repeat_mode: int): void

get_sequence_progress

returned values: 0 to 7 = task that's currently in progress, 0 meaning the first one. -1 no task sequence in progress.

function native.task.get_sequence_progress(ped: int): int

get_is_task_active

function native.task.get_is_task_active(ped: int, task_index: int): bool

get_script_task_status

Gets the status of a script-assigned task, and returns an int between 0-8 taskHash: https://alloc8or.re/rdr3/doc/enums/eScriptTaskHash.txt

WAITING_TO_START_TASK = 0, PERFORMING_TASK DORMANT_TASK VACANT_STAGE GROUP_TASK_STAGE ATTRACTOR_SCRIPT_TASK_STAGE SECONDARY_TASK_STAGE TASK_NOT_FOUND FINISHED_TASK

function native.task.get_script_task_status(ped: int, task_hash: int, p2: bool): int

_0x9ff5f9b24e870748

function native.task._0x9ff5f9b24e870748(p0: int): int

_get_script_task_action_time

function native.task._get_script_task_action_time(ped: int, task: int): float

react_look_at

lookIntensity: see SET_PED_SHOULD_PLAY_FLEE_SCENARIO_EXIT

exitAnimation: LOOK_RETURN_GENERIC = 1, LOOK_RETURN_DISMISSIVE = 2, LOOK_RETURN_RELIEVED = 3

function native.task.react_look_at(ped: int, target_ped: int, look_intensity: int, exit_animation: int, duration: float, p5: int, target_ped2: int, p7: int, p8: int): void

react_look_at_end

function native.task.react_look_at_end(ped: int, exit_animation: int, p2: bool): void

is_ped_scenario_react_looking

function native.task.is_ped_scenario_react_looking(ped: int, p1: bool): bool

get_active_vehicle_mission_type

function native.task.get_active_vehicle_mission_type(vehicle: int): int

task_leave_any_vehicle

flags: See TASK_ENTER_VEHICLE

function native.task.task_leave_any_vehicle(ped: int, p1: int, task_flag: int): void

_0xbd70108d01875299

function native.task._0xbd70108d01875299(p0: int): int

task_use_random_scenario_in_group

function native.task.task_use_random_scenario_in_group(ped: int, p1: int, p2: int, p3: int, p4: int): void

task_aim_gun_at_entity

duration: the amount of time in milliseconds to do the task. -1 will keep the task going until either another task is applied, or CLEAR_ALL_TASKS() is called with the ped

function native.task.task_aim_gun_at_entity(ped: int, target_entity: int, duration: int, p3: bool, p4: int): void

task_turn_ped_to_face_entity

duration: the amount of time in milliseconds to do the task. -1 will keep the task going until either another task is applied, or CLEAR_ALL_TASKS() is called with the ped

function native.task.task_turn_ped_to_face_entity(ped: int, target_entity: int, duration: int, p3: float, p4: float, p5: float): void

task_aim_gun_at_coord

function native.task.task_aim_gun_at_coord(ped: int, x: float, y: float, z: float, time: int, p5: bool, p6: bool): void

task_aim_at_coord

function native.task.task_aim_at_coord(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int): void

task_aim_at_entity

function native.task.task_aim_at_entity(ped: int, p1: int, p2: int, p3: int, p4: int): void

task_shoot_at_coord

function native.task.task_shoot_at_coord(ped: int, x: float, y: float, z: float, duration: int, firing_pattern: int, p6: int): void

task_shuffle_to_next_vehicle_seat

Makes the specified ped shuffle to the next vehicle seat. The ped MUST be in a vehicle and the vehicle parameter MUST be the ped's current vehicle.

function native.task.task_shuffle_to_next_vehicle_seat(ped: int, vehicle: int): void

clear_ped_tasks

function native.task.clear_ped_tasks(ped: int, p1: bool, p2: bool): void

_0x1a7d63cb1b0bb223

function native.task._0x1a7d63cb1b0bb223(p0: int): void

_0xb2d15d3551fe4fae

function native.task._0xb2d15d3551fe4fae(p0: int): void

_0xdf94844d474f31e5

function native.task._0xdf94844d474f31e5(ped: int): void

_0xeba2081e0a5f4d17

function native.task._0xeba2081e0a5f4d17(p0: int): void

_0x141bc64c8d7c5529

function native.task._0x141bc64c8d7c5529(vehicle: int): void

clear_ped_secondary_task

function native.task.clear_ped_secondary_task(ped: int): void

task_everyone_leave_vehicle_in_order

function native.task.task_everyone_leave_vehicle_in_order(vehicle: int, p1: bool): void

task_investigate

function native.task.task_investigate(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int): void

task_goto_entity_offset

function native.task.task_goto_entity_offset(ped: int, entity: int, p2: int, x: float, y: float, z: float, duration: int): void

task_goto_entity_offset_xy

function native.task.task_goto_entity_offset_xy(ped: int, entity: int, duration: int, target_radius: float, x_offset: float, y_offset: float, move_blend_ratio: float, offset_flags: int): void

task_goto_entity_offset_xyz

function native.task.task_goto_entity_offset_xyz(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): void

task_goto_entity_offset_xy_aiming

function native.task.task_goto_entity_offset_xy_aiming(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): void

task_goto_entity_offset_xyz_aiming

function native.task.task_goto_entity_offset_xyz_aiming(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int): void

task_follow_entity_while_aiming_at_entity

function native.task.task_follow_entity_while_aiming_at_entity(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int): void

task_turn_ped_to_face_coord

duration in milliseconds

function native.task.task_turn_ped_to_face_coord(ped: int, x: float, y: float, z: float, duration: int): void

task_vehicle_temp_action

Documentation from GTA V, might be the same in RDR:

'1 - brake '3 - brake + reverse '4 - turn left 90 + braking '5 - turn right 90 + braking '6 - brake strong (handbrake?) until time ends '7 - turn left + accelerate '7 - turn right + accelerate '9 - weak acceleration '10 - turn left + restore wheel pos to center in the end '11 - turn right + restore wheel pos to center in the end '13 - turn left + go reverse '14 - turn left + go reverse '16 - crash the game after like 2 seconds :) '17 - keep actual state, game crashed after few tries '18 - game crash '19 - strong brake + turn left/right '20 - weak brake + turn left then turn right '21 - weak brake + turn right then turn left '22 - brake + reverse '23 - accelerate fast '24 - brake '25 - brake turning left then when almost stopping it turns left more '26 - brake turning right then when almost stopping it turns right more '27 - brake until car stop or until time ends '28 - brake + strong reverse acceleration '30 - performs a burnout (brake until stop + brake and accelerate) '31 - accelerate + handbrake '32 - accelerate very strong

Seems to be this: Works on NPCs, but overrides their current task. If inside a task sequence (and not being the last task), "time" will work, otherwise the task will be performed forever until tasked with something else

function native.task.task_vehicle_temp_action(driver: int, vehicle: int, action: int, time: int): void

task_vehicle_mission

function native.task.task_vehicle_mission(driver: int, vehicle: int, vehicle_target: int, mission_type: int, p4: float, p5: int, p6: float, p7: float, drive_against_traffic: bool): void

task_vehicle_drive_to_destination

flags: 67108864, 2097152, 524564, 524675 (eDrivingFlags) p7 = 6 or 3 p8 = x coordinate p9 - 8.f p10 = false

function native.task.task_vehicle_drive_to_destination(driver: int, vehicle: int, x: float, y: float, z: float, speed: float, driving_flags: int, p7: int, stopping_range1: float, stopping_range2: float, p10: bool): void

_task_vehicle_drive_to_destination_2

Tasks vehicle towards owner

function native.task._task_vehicle_drive_to_destination_2(vehicle: int, x: float, y: float, z: float, speed: float, p5: int, p6: int, p7: float, p8: float): void

_task_vehicle_flee_on_cleanup

Vehicle Auto Drive (?) p1/p2/p3: usually 1f, 1f, 0f or 0f, 0f, 0f Speed: usually 8f Types: 1148979456 (task with flee), 1148979587 (dismissing the vehicle)

function native.task._task_vehicle_flee_on_cleanup(vehicle: int, p1: float, p2: float, p3: float, speed: float, type: int): void

task_vehicle_drive_straight_to_point

Old name: _TASK_VEHICLE_DRIVE_TO_POINT flag: 524419 and 0 in shop_horse_shop R* Script

function native.task.task_vehicle_drive_straight_to_point(driver: int, vehicle: int, x: float, y: float, z: float, p5: float, p6: float, flag: int): void

_task_vehicle_drive_to_point_2

Params: p4 = 3.f or 8.f, p5 = 0.25f, p6 = 0 in R* Scripts

function native.task._task_vehicle_drive_to_point_2(vehicle: int, x: float, y: float, z: float, p4: float, p5: float, p6: int): void

_0x1d125814ebc517eb

function native.task._0x1d125814ebc517eb(p0: int, p1: int, p2: int, p3: int): void

_0x583ae9af9cee0958

function native.task._0x583ae9af9cee0958(vehicle: int, x: float, y: float, z: float): bool

task_vehicle_mission_ped_target

See TASK_VEHICLE_MISSION

function native.task.task_vehicle_mission_ped_target(ped: int, vehicle: int, ped_target: int, mode: int, max_speed: float, driving_style: int, min_distance: float, p7: float, drive_against_traffic: bool): void

_0xa263adbbc8056214

function native.task._0xa263adbbc8056214(p0: int, p1: int): void

task_vehicle_escort

function native.task.task_vehicle_escort(ped: int, vehicle: int, target_vehicle: int, mode: int, speed: float, driving_style: int, min_distance: float, p7: int, no_roads_distance: float): void

task_boat_mission

function native.task.task_boat_mission(ped_driver: int, boat: int, p2: int, p3: int, x: float, y: float, z: float, p7: int, max_speed: float, driving_style: int, p10: float, p11: int): void

task_weapon

function native.task.task_weapon(ped: int): void

task_drive_by

function native.task.task_drive_by(driver_ped: int, target_ped: int, target_vehicle: int, target_x: float, target_y: float, target_z: float, distance_to_shoot: float, ped_accuracy: int, p8: bool, firing_pattern: int): void

set_driveby_task_target

function native.task.set_driveby_task_target(shooting_ped: int, target_ped: int, target_vehicle: int, x: float, y: float, z: float): void

clear_driveby_task_underneath_driving_task

function native.task.clear_driveby_task_underneath_driving_task(ped: int): void

is_driveby_task_underneath_driving_task

function native.task.is_driveby_task_underneath_driving_task(ped: int): bool

get_is_ped_aiming_in_the_air

function native.task.get_is_ped_aiming_in_the_air(ped: int): bool

_set_ped_clear_aiming_in_the_air

function native.task._set_ped_clear_aiming_in_the_air(ped: int, p1: int): void

is_mounted_weapon_task_underneath_driving_task

function native.task.is_mounted_weapon_task_underneath_driving_task(ped: int): bool

task_warp_ped_into_vehicle

function native.task.task_warp_ped_into_vehicle(ped: int, vehicle: int, seat: int): void

task_shoot_at_entity

function native.task.task_shoot_at_entity(entity: int, target_entity: int, duration: int, firing_pattern: int, affect_cocked_state: bool): void

task_shoot_with_weapon

function native.task.task_shoot_with_weapon(ped: int, args: ptr int): void

_0x2416ec2f31f75266

function native.task._0x2416ec2f31f75266(entity: int, target_entity: int, duration: int, p3: int, p4: int): void

_0x41323f4e0c4ae94b

function native.task._0x41323f4e0c4ae94b(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int): void

_0x5ea655f01d93667a

function native.task._0x5ea655f01d93667a(p0: int): int

task_climb

Climbs or vaults the nearest thing.

function native.task.task_climb(ped: int, unused: bool): void

_task_climb_2

function native.task._task_climb_2(ped: int, heading: float): void

task_climb_ladder

function native.task.task_climb_ladder(ped: int, p1: float, p2: bool, p3: bool): void

clear_ped_tasks_immediately

Immediately stops the pedestrian from whatever it's doing. They stop fighting, animations, etc. they forget what they were doing.

resetCrouch TRUE = ped will stand up if crouching, FALSE = ped will remain crouching if crouched

function native.task.clear_ped_tasks_immediately(ped: int, p1: bool, reset_crouch: bool): void

task_perform_sequence_from_progress

function native.task.task_perform_sequence_from_progress(ped: int, p1: int, p2: int, p3: int): void

set_ped_desired_move_blend_ratio

function native.task.set_ped_desired_move_blend_ratio(ped: int, p1: float): void

get_ped_desired_move_blend_ratio

function native.task.get_ped_desired_move_blend_ratio(ped: int): float

task_goto_entity_aiming

ped = Ped you want to perform this task. target = the Entity they should aim at. distanceToStopAt = distance from the target, where the ped should stop to aim. StartAimingDist = distance where the ped should start to aim.

function native.task.task_goto_entity_aiming(ped: int, target: int, distance_to_stop_at: float, start_aiming_dist: float): void

task_set_sphere_defensive_area

function native.task.task_set_sphere_defensive_area(ped: int, p1: float, p2: float, p3: float, p4: float): void

task_clear_defensive_area

function native.task.task_clear_defensive_area(ped: int): void

task_ped_slide_to_coord

function native.task.task_ped_slide_to_coord(ped: int, x: float, y: float, z: float, heading: float, p5: float): void

_0x9420fb11b8d77948

function native.task._0x9420fb11b8d77948(p0: int): int

_0x6ba606ab3a83bc4d

function native.task._0x6ba606ab3a83bc4d(p0: int): int

add_cover_point

function native.task.add_cover_point(p0: float, p1: float, p2: float, p3: float, p4: int, p5: int, p6: int, p7: bool): int

_0x59872ea4cbd11c56

function native.task._0x59872ea4cbd11c56(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): int

remove_cover_point

function native.task.remove_cover_point(coverpoint: int): void

does_scripted_cover_point_exist_at_coords

Checks if there is a cover point at position

function native.task.does_scripted_cover_point_exist_at_coords(p0: int, p1: int, p2: int, p3: int): bool

get_scripted_cover_point_coords

function native.task.get_scripted_cover_point_coords(coverpoint: int): vec3

_0xe116f6f2da2d777e

function native.task._0xe116f6f2da2d777e(p0: int): vec3

_0x50aa09a0da64e73c

function native.task._0x50aa09a0da64e73c(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int): void

_0xe5831aa1e2fd147c

function native.task._0xe5831aa1e2fd147c(p0: int): void

task_combat_ped

function native.task.task_combat_ped(ped: int, target_ped: int, p2: int, p3: int): void

task_combat_ped_timed

function native.task.task_combat_ped_timed(ped: int, target_ped: int, p2: int, p3: int): void

_task_combat_ped_3

function native.task._task_combat_ped_3(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int): void

task_seek_cover_from_pos

function native.task.task_seek_cover_from_pos(ped: int, x: float, y: float, z: float, duration: int, p5: int, p6: int, p7: int): void

task_seek_cover_from_ped

function native.task.task_seek_cover_from_ped(ped: int, from_ped: int, duration: int, p3: int, p4: int, p5: int): void

task_seek_cover_to_cover_point

function native.task.task_seek_cover_to_cover_point(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): void

task_seek_cover_to_coords

function native.task.task_seek_cover_to_coords(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int): void

task_put_ped_directly_into_cover

function native.task.task_put_ped_directly_into_cover(ped: int, x: float, y: float, z: float, timeout: int, p5: bool, p6: float, p7: int, p8: int, coverpoint: int, p10: bool, p11: bool, p12: int): void

_task_put_ped_directly_into_cover_from_coords

function native.task._task_put_ped_directly_into_cover_from_coords(ped: int, x: float, y: float, z: float, from_x: float, from_y: float, from_z: float, timeout: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int, p15: int, p16: int, p17: int): void

task_put_ped_directly_into_melee

meleeStyles: AR_GRAPPLE_BACK_FROM_BACK, AR_GRAPPLE_MOUNT_FACEDOWN_FROM_FRONT, AR_ALLIGATOR_LEAPKILL, AR_ALLIGATOR_WAIST_AUTOKILL_FRONT

function native.task.task_put_ped_directly_into_melee(ped: int, melee_target: int, melee_style: int, p3: float, anim_blend_ratio: float, p5: bool, p6: int): void

task_put_ped_directly_into_grapple

grappleStyle: AR_GRAPPLE_STRUGGLE, AR_ALLIGATOR_LEG_GRAB_CHALLENGE_FAIL, AR_GRAPPLE_BACK_FROM_BACK, AR_GRAPPLE_BACK_DEFEND, AR_GRAPPLE_FRONT_FROM_FRONT

function native.task.task_put_ped_directly_into_grapple(ped: int, grapple_target: int, grapple_style: int, p3: float, p4: float, p5: bool, p6: int): void

task_companion_ambient

function native.task.task_companion_ambient(ped: int, p1: int): void

_0x098036cab8373d36

function native.task._0x098036cab8373d36(p0: int): void

_0x10c44f633e2d6d9e

function native.task._0x10c44f633e2d6d9e(p0: int): void

_0x7fb78b2199c10e92

function native.task._0x7fb78b2199c10e92(p0: int): void

task_guard

function native.task.task_guard(ped: int, p1: int, p2: int): void

task_guard_current_position

function native.task.task_guard_current_position(ped: int, p1: float, p2: float, p3: bool): void

_task_guard_assigned_defensive_area_2

function native.task._task_guard_assigned_defensive_area_2(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int): void

task_guard_assigned_defensive_area

function native.task.task_guard_assigned_defensive_area(ped: int, p1: float, p2: float, p3: float, p4: float, p5: float, p6: int): void

task_stand_guard

function native.task.task_stand_guard(ped: int, x: float, y: float, z: float, heading: float, scenario_name: string): void

set_drive_task_cruise_speed

function native.task.set_drive_task_cruise_speed(driver: int, cruise_speed: float): void

set_drive_task_max_cruise_speed

Not implemented.

function native.task.set_drive_task_max_cruise_speed(ped: int, max_cruise_speed: float): void

add_cover_blocking_area

function native.task.add_cover_blocking_area(player_x: float, player_y: float, player_z: float, radius_x: float, radius_y: float, radius_z: float, p6: bool, p7: bool, p8: bool, p9: bool): void

_add_cover_blocking_volume

function native.task._add_cover_blocking_volume(volume: int, p1: bool, p2: bool, p3: bool, p4: bool): void

remove_all_cover_blocking_areas

function native.task.remove_all_cover_blocking_areas(): void

_0x2a10538d0a005e81

function native.task._0x2a10538d0a005e81(p0: int, p1: int): void

_0x4f57397388e1dff8

function native.task._0x4f57397388e1dff8(): void

task_rob_ped

function native.task.task_rob_ped(ped: int, p1: int, p2: int, p3: int, p4: int): void

_0xbedbe39b5fd98fd6

function native.task._0xbedbe39b5fd98fd6(ped: int): bool

create_scenario_point_hash

Returns scenario

function native.task.create_scenario_point_hash(scenario_hash: int, x: float, y: float, z: float, heading: float, p5: int, p6: int, p7: bool): int

create_scenario_point_hash_attached_to_entity

Returns scenario

function native.task.create_scenario_point_hash_attached_to_entity(entity: int, scenario_hash: int, x: float, y: float, z: float, heading: float, p6: int, p7: int, p8: bool): int

_does_scenario_point_have_props

function native.task._does_scenario_point_have_props(scenario: int): bool

get_prop_for_scenario_point

Old name: _GET_SCENARIO_POINT_ENTITY

function native.task.get_prop_for_scenario_point(scenario_point: int, name: string): int

_associate_prop_with_scenario

function native.task._associate_prop_with_scenario(scenario: int, entity: int, prop_name: string, p3: bool): bool

_set_scenario_point_flag

function native.task._set_scenario_point_flag(scenario: int, flag: int, value: bool): void

_is_scenario_point_flag_set

function native.task._is_scenario_point_flag_set(scenario: int, flag: int): bool

_0xadc45010bc17af0e

SET_SCENARIO_POINT*

function native.task._0xadc45010bc17af0e(p0: int, p1: int): void

_0x974da3408dec4e79

function native.task._0x974da3408dec4e79(p0: int): int

_disassociate_prop_from_scenario

function native.task._disassociate_prop_from_scenario(scenario: int, prop_name: string): bool

does_scenario_point_exist

function native.task.does_scenario_point_exist(scenario: int): bool

_0x22cd2c33ed4467a1

function native.task._0x22cd2c33ed4467a1(p0: int): int

_get_scenario_point_entity

Note: The current name for this native is the old name of 0x295514F198EFD0CA Old name for this native: _GET_ENTITY_SCENARIO_POINT_IS_ATTACHED_TO

function native.task._get_scenario_point_entity(scenario: int): int

_get_ped_using_scenario_point

function native.task._get_ped_using_scenario_point(scenario: int): int

_get_scenario_point_coords

Params: p1 is always true in R* Scripts

function native.task._get_scenario_point_coords(scenario: int, p1: bool): vec3

_0x91cb5e431f579ba1

function native.task._0x91cb5e431f579ba1(p0: int): vec3

_0x370f57c47f68ebca

function native.task._0x370f57c47f68ebca(p0: int): int

_get_scenario_point_heading

Params: p1 is always true in R* Scripts

function native.task._get_scenario_point_heading(scenario: int, p1: bool): float

_get_scenario_point_radius

function native.task._get_scenario_point_radius(scenario: int): float

_set_scenario_point_coords

function native.task._set_scenario_point_coords(scenario: int, x_pos: float, y_pos: float, z_pos: float, p4: bool): void

_set_scenario_point_heading

function native.task._set_scenario_point_heading(scenario: int, heading: float, p2: bool): void

_set_scenario_point_radius

function native.task._set_scenario_point_radius(scenario: int, radius: float): void

_0xa7479fb665361edb

SET_SCENARIO*

function native.task._0xa7479fb665361edb(p0: int, p1: int): void

_0xe69fda40aac3efc0

function native.task._0xe69fda40aac3efc0(p0: int, p1: int): void

get_scenario_points_in_area

Note: scenariosInRadius is an array, and its size and values should be aligned to 8 bytes.

function native.task.get_scenario_points_in_area(pos_x: float, pos_y: float, pos_z: float, radius: float, scenarios_in_radius: ptr int, size: int): int

_0xefd875c2791ebefd

function native.task._0xefd875c2791ebefd(p0: int, p1: int, p2: int, p3: int): int

_0x152664aa3188b193

function native.task._0x152664aa3188b193(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int): int

_0xe7bbc4e56b989449

function native.task._0xe7bbc4e56b989449(p0: int, p1: int, p2: int): int

_get_scenario_point_ped_is_using

function native.task._get_scenario_point_ped_is_using(ped: int, p1: bool): int

get_ransack_scenario_point_ped_is_using

function native.task.get_ransack_scenario_point_ped_is_using(ped: int): int

_set_scenario_container_opening_state

Opens/closes containers: ChestDugUp

function native.task._set_scenario_container_opening_state(entity: int, open: bool): void

_0xa9e7672f8c6c6f74

function native.task._0xa9e7672f8c6c6f74(p0: int): int

_0x0a98a362c5a19a43

function native.task._0x0a98a362c5a19a43(p0: int): int

_0x849791ebbdba0362

function native.task._0x849791ebbdba0362(p0: int): int

_0x640a602946a8c972

function native.task._0x640a602946a8c972(p0: int): int

_0x01af8a3729231a43

function native.task._0x01af8a3729231a43(p0: int): int

_get_scenario_container_opening_state

Returns m_eContainerState

function native.task._get_scenario_container_opening_state(entity: int): bool

_reset_scenario_for_entity

function native.task._reset_scenario_for_entity(scenario: int, entity: int): void

_0x4161648394262fdf

function native.task._0x4161648394262fdf(p0: int, p1: int, p2: int, p3: int): void

_0x9c8f42a5d1859dc1

function native.task._0x9c8f42a5d1859dc1(p0: int): void

_delete_scenario_point

function native.task._delete_scenario_point(scenario: int): void

task_use_scenario_point

function native.task.task_use_scenario_point(ped: int, scenario: int, conditional_anim: string, p3: int, p4: bool, p5: bool, p6: int, p7: bool, p8: float, p9: bool): void

_task_use_scenario_point_2

function native.task._task_use_scenario_point_2(ped: int, ped2: int, p2: int, p3: string, p4: int, p5: int, p6: float, p7: bool): void

task_start_scenario_in_place_hash

https://github.com/femga/rdr3_discoveries/blob/master/animations/scenarios Params: duration in milliseconds

conditionalHash (optionally): 0 = play random conditional anim. Every conditional anim has requirements to play it. If requirements are not met, ped plays random allowed conditional anim or can be stuck. For example, this scenario type has possible conditional anim WORLD_HUMAN_LEAN_BACK_WALL_SMOKING_MALE_D, but it can not be played by player, because condition is set to NOT be CAIConditionIsPlayer (check file amb_rest.meta and amb_rest_CA.meta with OPENIV to clarify requirements).

function native.task.task_start_scenario_in_place_hash(ped: int, scenario_hash: int, duration: int, play_enter_anim: bool, conditional_hash: int, heading: float, p6: bool): void

_task_start_scenario_in_place_2

Takes scenario point handle instead of hash

function native.task._task_start_scenario_in_place_2(ped: int, p1: int, p2: string, p3: int, p4: bool, p5: float, p6: bool): void

task_start_scenario_at_position

function native.task.task_start_scenario_at_position(ped: int, scenario_hash: int, x: float, y: float, z: float, heading: float, duration: int, sitting_scenario: bool, teleport: bool, p9: string, p10: float, p11: bool): void

_0xf97f462779b31786

function native.task._0xf97f462779b31786(p0: int): int

_0x6c269f673c47031e

function native.task._0x6c269f673c47031e(p0: int): int

_0x9667cce29bfa0780

function native.task._0x9667cce29bfa0780(p0: int): void

_0x00ffe0f85253c572

function native.task._0x00ffe0f85253c572(p0: int): int

_task_use_nearest_scenario_to_coord

function native.task._task_use_nearest_scenario_to_coord(ped: int, x: float, y: float, z: float, distance: float, duration: int, p6: bool, p7: bool, p8: bool, p9: bool): void

task_use_nearest_scenario_to_coord_warp

function native.task.task_use_nearest_scenario_to_coord_warp(ped: int, x: float, y: float, z: float, distance: float, duration: int, p6: bool, p7: bool, p8: bool, p9: bool): void

task_use_nearest_train_scenario_to_coord_warp

function native.task.task_use_nearest_train_scenario_to_coord_warp(ped: int, x: float, y: float, z: float, distance: float): void

task_use_nearest_scenario_chain_to_coord

function native.task.task_use_nearest_scenario_chain_to_coord(ped: int, x: float, y: float, z: float, distance: float, p5: bool, p6: bool, p7: bool, p8: bool): void

task_use_nearest_scenario_chain_to_coord_warp

function native.task.task_use_nearest_scenario_chain_to_coord_warp(ped: int, x: float, y: float, z: float, distance: float, p5: bool, p6: bool, p7: bool, p8: bool): void

_0xfdecca06e8b81346

function native.task._0xfdecca06e8b81346(ped: int): int

_0x2d657b10f211c572

function native.task._0x2d657b10f211c572(ped: int, p1: float): int

task_ride_train

function native.task.task_ride_train(ped: int, train: int, scenario_point: int, scenario_hash: int): void

_0x79197f7d2bb5e73a

function native.task._0x79197f7d2bb5e73a(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int): int

does_scenario_exist_in_area

function native.task.does_scenario_exist_in_area(x: float, y: float, z: float, radius: float, p4: bool, p5: int, p6: bool): bool

does_scenario_of_type_exist_in_area_hash

function native.task.does_scenario_of_type_exist_in_area_hash(x: float, y: float, z: float, type_hash: int, radius: float, p5: bool): bool

find_scenario_of_type_hash

function native.task.find_scenario_of_type_hash(x_pos: float, y_pos: float, z_pos: float, scenario_type: int, distance: float, p5: int, p6: bool): int

_0x0d322aef8878b8fe

function native.task._0x0d322aef8878b8fe(p0: int, p1: int): void

_0xd508fa229f1c4900

function native.task._0xd508fa229f1c4900(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int): int

_0xb8e213d02f37947d

function native.task._0xb8e213d02f37947d(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int): void

is_scenario_occupied

function native.task.is_scenario_occupied(p0: float, p1: float, p2: float, p3: float, p4: bool): bool

_0x1acbc313966c21f3

function native.task._0x1acbc313966c21f3(scenario: int): int

ped_has_use_scenario_task

function native.task.ped_has_use_scenario_task(ped: int): bool

_ped_is_in_scenario_base

function native.task._ped_is_in_scenario_base(ped: int): bool

_0x90703a8f75ee4abd

function native.task._0x90703a8f75ee4abd(p0: int, p1: int): int

_0xd999e379265a4501

function native.task._0xd999e379265a4501(p0: int, p1: int, p2: int): void

play_anim_on_running_scenario

function native.task.play_anim_on_running_scenario(ped: int, anim_dict: string, anim_name: string): void

_0x74f0209674864cbd

function native.task._0x74f0209674864cbd(): int

_0xe1c105e6bba48270

function native.task._0xe1c105e6bba48270(): int

_0x1ac5a8ab50cfaa33

function native.task._0x1ac5a8ab50cfaa33(p0: int): int

_0xbeefbb608d2aa68a

function native.task._0xbeefbb608d2aa68a(p0: int): void

_0x19bc99c678fba139

function native.task._0x19bc99c678fba139(p0: int, p1: int, p2: int): void

_0x5d9b0baaf04cf65b

function native.task._0x5d9b0baaf04cf65b(p0: int, p1: int, p2: int, p3: int): void

_0x9b6a58fdb0024f12

function native.task._0x9b6a58fdb0024f12(p0: int, p1: int): void

_0xbc3f847ae2c3dc65

function native.task._0xbc3f847ae2c3dc65(p0: int, p1: int): void

_0x450080ddedb91258

function native.task._0x450080ddedb91258(p0: int, p1: int): void

_0x954451ea2d2120fb

function native.task._0x954451ea2d2120fb(p0: int, p1: int): void

_0x0f4f6c4ce471259d

function native.task._0x0f4f6c4ce471259d(p0: int, p1: int): void

_0xb8e3486d107f4194

function native.task._0xb8e3486d107f4194(p0: int, p1: int): void

_0x827a58ced9d4d5b4

function native.task._0x827a58ced9d4d5b4(p0: int, p1: int): void

_0x4a7d73989f52eb37

function native.task._0x4a7d73989f52eb37(p0: int, p1: int): void

_0xb79817db31ff72b9

function native.task._0xb79817db31ff72b9(p0: int, p1: int): void

_0x65d281985f2bdfc2

function native.task._0x65d281985f2bdfc2(p0: int, p1: int): void

_0x885d19ac2b6fbff4

function native.task._0x885d19ac2b6fbff4(p0: int, p1: int): void

_0x2064b33f6e6b92d4

function native.task._0x2064b33f6e6b92d4(p0: int, p1: int, p2: int, p3: int): void

_0xce4e669400e5f8aa

function native.task._0xce4e669400e5f8aa(p0: int, p1: int, p2: int, p3: int): void

_0x2eb977293923c723

function native.task._0x2eb977293923c723(p0: int, p1: int): void

_0xe9225354fb7437a7

function native.task._0xe9225354fb7437a7(p0: int, p1: int): void

_0x764db5a48390fbad

function native.task._0x764db5a48390fbad(p0: int, p1: int): void

_0x8f8c84363810691a

function native.task._0x8f8c84363810691a(p0: int, p1: int): void

_0xff8afca532b500d4

function native.task._0xff8afca532b500d4(p0: int, p1: int): void

_0xfe5d28b9b7837cc1

function native.task._0xfe5d28b9b7837cc1(p0: int, p1: int, p2: int, p3: int): int

_0x2b8af29a78024bd3

function native.task._0x2b8af29a78024bd3(p0: int): void

_0x0365000d8bf86531

function native.task._0x0365000d8bf86531(p0: int): int

_0x865732725536ee39

function native.task._0x865732725536ee39(p0: int): vec3

_0x0e184495b27bb57d

function native.task._0x0e184495b27bb57d(): void

does_scenario_group_exist

function native.task.does_scenario_group_exist(scenario_group: string): bool

_does_scenario_group_exist_hash

function native.task._does_scenario_group_exist_hash(scenario_group: int): bool

is_scenario_group_enabled

function native.task.is_scenario_group_enabled(scenario_group: string): bool

_is_scenario_group_enabled_hash

function native.task._is_scenario_group_enabled_hash(scenario_group: int): bool

set_scenario_group_enabled

function native.task.set_scenario_group_enabled(scenario_group: string, toggle: bool): void

_set_scenario_group_enabled_hash

function native.task._set_scenario_group_enabled_hash(scenario_group: int, toggle: bool): void

reset_scenario_groups_enabled

function native.task.reset_scenario_groups_enabled(): void

_0x358a1a751b335a11

function native.task._0x358a1a751b335a11(p0: int): void

force_scenario_group_priority

function native.task.force_scenario_group_priority(p0: int, p1: int): void

_0xe55478c5edf70ac2

function native.task._0xe55478c5edf70ac2(p0: int): int

_is_scenario_point_active

function native.task._is_scenario_point_active(scenario: int): bool

_set_scenario_point_active

function native.task._set_scenario_point_active(scenario: int, active: bool): void

_reset_scenario_script

function native.task._reset_scenario_script(scenario: int): void

is_scenario_type_enabled

function native.task.is_scenario_type_enabled(scenario_type: string): bool

set_scenario_type_enabled

function native.task.set_scenario_type_enabled(scenario_type: string, toggle: bool): void

_set_scenario_type_enabled_hash

function native.task._set_scenario_type_enabled_hash(scenario_type: int, toggle: bool): void

reset_scenario_types_enabled

function native.task.reset_scenario_types_enabled(): void

_get_scenario_point_type_ped_is_using

function native.task._get_scenario_point_type_ped_is_using(ped: int): int

_get_scenario_point_type

function native.task._get_scenario_point_type(scenario: int): int

is_ped_active_in_scenario

function native.task.is_ped_active_in_scenario(ped: int, scenario: int): bool

is_ped_exiting_scenario

function native.task.is_ped_exiting_scenario(ped: int, p1: bool): bool

_0x2c497bdef897c6df

function native.task._0x2c497bdef897c6df(p0: int): int

task_combat_hated_targets_in_area

Despite its name, it only attacks ONE hated target. The one closest to the specified position.

function native.task.task_combat_hated_targets_in_area(ped: int, x: float, y: float, z: float, radius: float, flags: int, p6: int): void

task_combat_hated_targets_no_los_test

function native.task.task_combat_hated_targets_no_los_test(ped: int, radius: float): void

task_combat_hated_targets_around_ped

Despite its name, it only attacks ONE hated target. The one closest hated target.

function native.task.task_combat_hated_targets_around_ped(ped: int, radius: float, flags: int, p3: int): void

task_combat_hated_targets_around_ped_timed

function native.task.task_combat_hated_targets_around_ped_timed(ped: int, radius: float, time: int, flags: int): void

task_combat_hated_targets

function native.task.task_combat_hated_targets(ped: int, radius: float): void

_0x30b391915538ebe2

function native.task._0x30b391915538ebe2(p0: int): void

task_throw_projectile

function native.task.task_throw_projectile(ped: int, p1: int, p2: int, p3: int): void

_task_throw_projectile_2

function native.task._task_throw_projectile_2(p0: int, p1: int, p2: int, p3: int): void

task_whistle_anim

function native.task.task_whistle_anim(ped: int, aud_ped_whistle_type: int, p2: int): void

task_swap_weapon

function native.task.task_swap_weapon(ped: int, p1: int, p2: int, p3: int, p4: int): void

_0x0000a8acdc2e1b6a

function native.task._0x0000a8acdc2e1b6a(p0: int, p1: int): void

task_reload_weapon

function native.task.task_reload_weapon(ped: int, unused: bool): void

task_pick_up_weapon

function native.task.task_pick_up_weapon(ped: int, p1: int): void

is_ped_getting_up

function native.task.is_ped_getting_up(ped: int): bool

task_animal_writhe

function native.task.task_animal_writhe(ped: int, p1: int, p2: int): void

_task_animal_bleed_out

function native.task._task_animal_bleed_out(ped: int, killer: int, p2: bool, weapon_hash: int, p4: int, p5: int): void

is_ped_in_writhe

This native checks if a ped is on the ground, in pain from a (gunshot) wound.

function native.task.is_ped_in_writhe(ped: int): bool

_0x3f8387db1b9f31b7

function native.task._0x3f8387db1b9f31b7(p0: int, p1: int): int

_0x756c7b4c43df0422

function native.task._0x756c7b4c43df0422(p0: int): int

_0x351f74ed6177ebe7

function native.task._0x351f74ed6177ebe7(): int

_0x6c50b9dccca70023

function native.task._0x6c50b9dccca70023(p0: int): int

task_revive_target

function native.task.task_revive_target(ped: int, reviver: int, tool: int): void

open_patrol_route

Note: patrolRoute must be prefixed with 'miss_' for it to be valid

function native.task.open_patrol_route(patrol_route: string): void

close_patrol_route

function native.task.close_patrol_route(): void

add_patrol_route_node

function native.task.add_patrol_route_node(node_id: int, scenario_name: string, x: float, y: float, z: float, look_pos_x: float, look_pos_y: float, look_pos_z: float, duration: int, p9: bool): void
function native.task.add_patrol_route_link(node1: int, node2: int): void

create_patrol_route

function native.task.create_patrol_route(): void

delete_patrol_route

function native.task.delete_patrol_route(patrol_route: string): void

_0x643fd1556f621772

function native.task._0x643fd1556f621772(p0: int, p1: int, p2: int): int

task_patrol

function native.task.task_patrol(ped: int, patrol_route: string, p2: int, p3: bool, p4: bool): void

_task_patrol_2

function native.task._task_patrol_2(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int): void

task_stay_in_cover

Makes the ped run to take cover

function native.task.task_stay_in_cover(ped: int): void

task_vehicle_shoot_at_ped

function native.task.task_vehicle_shoot_at_ped(ped: int, target: int, p2: float): void

task_vehicle_aim_at_ped

function native.task.task_vehicle_aim_at_ped(ped: int, target: int): void

task_vehicle_shoot_at_coord

function native.task.task_vehicle_shoot_at_coord(ped: int, x: float, y: float, z: float, p4: float): void

_0xaf2ef28ce3084505

function native.task._0xaf2ef28ce3084505(p0: int, p1: int, p2: int, p3: int): void

task_vehicle_aim_at_coord

function native.task.task_vehicle_aim_at_coord(ped: int, x: float, y: float, z: float): void

task_vehicle_goto_navmesh

function native.task.task_vehicle_goto_navmesh(ped: int, vehicle: int, x: float, y: float, z: float, speed: float, behavior_flag: int, stopping_range: float): void

task_go_to_coord_while_aiming_at_coord

function native.task.task_go_to_coord_while_aiming_at_coord(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int, p15: int): void

task_go_to_coord_while_aiming_at_coord_using_combat_style

function native.task.task_go_to_coord_while_aiming_at_coord_using_combat_style(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int, p15: int): void

task_go_to_coord_while_aiming_at_entity

function native.task.task_go_to_coord_while_aiming_at_entity(ped1: int, x: float, y: float, z: float, ped2: int, p5: float, p6: int, p7: float, p8: float, p9: int, p10: int, p11: int, firing_pattern: int, p13: int, p14: int): void

task_go_to_coord_while_aiming_at_entity_using_combat_style

function native.task.task_go_to_coord_while_aiming_at_entity_using_combat_style(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int): void

task_go_to_entity_while_aiming_at_entity

shootatEntity: If true, peds will shoot at Entity till it is dead. If false, peds will just walk till they reach the entity and will cease shooting.

function native.task.task_go_to_entity_while_aiming_at_entity(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int): void

task_go_to_entity_while_aiming_at_entity_using_combat_style

function native.task.task_go_to_entity_while_aiming_at_entity_using_combat_style(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int): void

task_go_to_coord_and_aim_at_hated_entities_near_coord

function native.task.task_go_to_coord_and_aim_at_hated_entities_near_coord(ped: int, go_to_location_x: float, go_to_location_y: float, go_to_location_z: float, focus_location_x: float, focus_location_y: float, focus_location_z: float, speed: float, shoot_at_enemies: bool, distance_to_stop_at: float, no_roads_distance: float, unk_true: bool, unk_flag: int, aiming_flag: int, firing_pattern: int): void

task_go_to_coord_and_aim_at_hated_entities_near_coord_using_combat_style

function native.task.task_go_to_coord_and_aim_at_hated_entities_near_coord_using_combat_style(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int): void

set_high_fall_task

Makes the ped ragdoll like when falling from a great height

function native.task.set_high_fall_task(ped: int, p1: int, p2: int, p3: int): void

_0x5217b7b6db78e1f3

function native.task._0x5217b7b6db78e1f3(p0: int, p1: int, p2: int, p3: int, p4: int): void

request_waypoint_recording

function native.task.request_waypoint_recording(waypoint_recording: string): void

get_is_waypoint_recording_loaded

function native.task.get_is_waypoint_recording_loaded(waypoint_recording: string): bool

remove_waypoint_recording

function native.task.remove_waypoint_recording(waypoint_recording: string): void

_0xf718931a82eeb898

function native.task._0xf718931a82eeb898(): void

waypoint_recording_get_num_points

function native.task.waypoint_recording_get_num_points(waypoint_recording: string, points: ptr int): bool

waypoint_recording_get_coord

function native.task.waypoint_recording_get_coord(waypoint_recording: string, point: int, coord: ref vec3): bool

waypoint_recording_get_speed_at_point

function native.task.waypoint_recording_get_speed_at_point(waypoint_recording: string, point: int): float

waypoint_recording_get_closest_waypoint

function native.task.waypoint_recording_get_closest_waypoint(waypoint_recording: string, x: float, y: float, z: float, point: ptr int): bool

task_follow_waypoint_recording_advanced

function native.task.task_follow_waypoint_recording_advanced(ped: int, p1: int): void

task_follow_waypoint_recording

function native.task.task_follow_waypoint_recording(ped: int, waypoint_recording: string, p2: int, flag: int, p4: int, p5: bool, p6: int, p7: int): void

task_follow_waypoint_recording_at_offset

function native.task.task_follow_waypoint_recording_at_offset(ped: int, waypoint_recording: string, p2: float, p3: int, p4: int, p5: int, p6: bool): void

task_follow_entity_along_waypoint_recording_at_offset

function native.task.task_follow_entity_along_waypoint_recording_at_offset(ped0: int, ped1: int, waypoint_recording: string, p3: float, p4: float, p5: int, p6: int, p7: int, p8: bool): void

is_waypoint_playback_going_on_for_ped

function native.task.is_waypoint_playback_going_on_for_ped(ped: int, waypoint_recording: string): bool

get_ped_waypoint_progress

function native.task.get_ped_waypoint_progress(ped: int): int

get_ped_waypoint_distance

function native.task.get_ped_waypoint_distance(ped: int): float

set_ped_waypoint_route_offset

function native.task.set_ped_waypoint_route_offset(ped: int, p1: float, p2: float, p3: float): int

get_waypoint_distance_along_route

function native.task.get_waypoint_distance_along_route(waypoint_recording: string, p1: int): float

_0x3acc128510142b9d

function native.task._0x3acc128510142b9d(waypoint_recording: string, x: float, y: float, z: float): float

waypoint_playback_get_is_paused

function native.task.waypoint_playback_get_is_paused(ped: int): bool

waypoint_playback_get_is_aiming

function native.task.waypoint_playback_get_is_aiming(ped: int): bool

waypoint_playback_get_is_shooting

function native.task.waypoint_playback_get_is_shooting(ped: int): bool

waypoint_playback_pause

function native.task.waypoint_playback_pause(ped: int, p1: int, p2: int, p3: int): void

waypoint_playback_resume

function native.task.waypoint_playback_resume(ped: int, p1: bool, p2: int, p3: int): void

waypoint_playback_override_speed

function native.task.waypoint_playback_override_speed(ped: int, speed: float, p2: int, p3: int, p4: int): void

waypoint_playback_use_default_speed

function native.task.waypoint_playback_use_default_speed(ped: int): void

get_ped_waypoint_override_speed

function native.task.get_ped_waypoint_override_speed(ped: int): float

use_waypoint_recording_as_assisted_movement_route

function native.task.use_waypoint_recording_as_assisted_movement_route(waypoint_recording: string, p1: bool, p2: float, p3: float, p4: bool): void

waypoint_playback_start_aiming_at_ped

function native.task.waypoint_playback_start_aiming_at_ped(p0: int, p1: int, p2: int, p3: int): void

waypoint_playback_start_aiming_at_entity

function native.task.waypoint_playback_start_aiming_at_entity(p0: int, p1: int, p2: int, p3: int): void

waypoint_playback_start_aiming_at_coord

function native.task.waypoint_playback_start_aiming_at_coord(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int): void

waypoint_playback_start_shooting_at_ped

function native.task.waypoint_playback_start_shooting_at_ped(p0: int, p1: int, p2: int, p3: int, p4: int): void

waypoint_playback_start_shooting_at_entity

function native.task.waypoint_playback_start_shooting_at_entity(p0: int, p1: int, p2: int, p3: int, p4: int): void

waypoint_playback_start_shooting_at_coord

function native.task.waypoint_playback_start_shooting_at_coord(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int): void

waypoint_playback_stop_aiming_or_shooting

function native.task.waypoint_playback_stop_aiming_or_shooting(p0: int): void

assisted_movement_remove_route

function native.task.assisted_movement_remove_route(route: string): void

_create_waypoint_path

function native.task._create_waypoint_path(path_name: string, p1: ptr int, nodes: int, p3: int): bool

assisted_movement_is_route_loaded

function native.task.assisted_movement_is_route_loaded(route: string): bool

assisted_movement_set_route_properties

function native.task.assisted_movement_set_route_properties(route: string, props: int): void

set_enable_speed_restrain_for_waypoint_recording_leader

function native.task.set_enable_speed_restrain_for_waypoint_recording_leader(p0: int, p1: int): void

set_up_speed_restrain_information_for_player_follower

function native.task.set_up_speed_restrain_information_for_player_follower(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int): void

task_vehicle_follow_waypoint_recording

function native.task.task_vehicle_follow_waypoint_recording(ped: int, vehicle: int, waypoint_recording: string, driving_mode: int, p4: int, e_waypoint: int, flag: int, p7: float, p8: bool, stopping_dist: float, p10: int): void

_task_vehicle_follow_waypoint_recording_2

function native.task._task_vehicle_follow_waypoint_recording_2(p0: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int): void

is_waypoint_playback_going_on_for_vehicle

function native.task.is_waypoint_playback_going_on_for_vehicle(p0: int, p1: int): bool

get_vehicle_waypoint_progress

function native.task.get_vehicle_waypoint_progress(vehicle: int): int

get_vehicle_waypoint_target_point

function native.task.get_vehicle_waypoint_target_point(vehicle: int): int

vehicle_waypoint_playback_pause

function native.task.vehicle_waypoint_playback_pause(vehicle: int): void

vehicle_waypoint_playback_get_is_paused

function native.task.vehicle_waypoint_playback_get_is_paused(p0: int): int

vehicle_waypoint_playback_resume

function native.task.vehicle_waypoint_playback_resume(vehicle: int): void

vehicle_waypoint_playback_use_default_speed

function native.task.vehicle_waypoint_playback_use_default_speed(vehicle: int): void

vehicle_waypoint_playback_override_speed

function native.task.vehicle_waypoint_playback_override_speed(vehicle: int, speed: float): void

get_vehicle_waypoint_playback_override_speed

function native.task.get_vehicle_waypoint_playback_override_speed(p0: int): int

task_set_blocking_of_non_temporary_events

function native.task.task_set_blocking_of_non_temporary_events(ped: int, toggle: bool): void

task_set_stealth_movement

function native.task.task_set_stealth_movement(ped: int, p1: bool, p2: int, p3: bool): void

task_set_crouch_movement

function native.task.task_set_crouch_movement(ped: int, p1: bool, p2: int, p3: bool): void

task_force_motion_state

motionStateHash: see FORCE_PED_MOTION_STATE

function native.task.task_force_motion_state(ped: int, motion_state_hash: int, p2: bool): void

task_move_network_by_name

function native.task.task_move_network_by_name(ped: int, task: string, multiplier: float, p3: bool, anim_dict: string, flags: int): void

task_move_network_by_name_with_init_params

function native.task.task_move_network_by_name_with_init_params(ped: int, move_network_def_name: string, task_data: ptr int, p3: float, p4: bool, anim_dict: string, flags: int): void

task_move_network_advanced_by_name_with_init_params

function native.task.task_move_network_advanced_by_name_with_init_params(ped: int, move_network_def_name: string, task_data: ptr int, x_pos: float, y_pos: float, z_pos: float, x_rot: float, y_rot: float, z_rot: float, p9: int, p10: float, p11: int, p12: int, flag: int, p14: int): void

task_move_network_advanced_by_name_with_init_params_attached

function native.task.task_move_network_advanced_by_name_with_init_params_attached(ped: int, p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int, p15: int, p16: int, p17: int): void

is_task_move_network_active

function native.task.is_task_move_network_active(ped: int): bool

_get_task_move_network_id

Returns hash of the underlying move network def, see move_networks.xml https://alloc8or.re/rdr3/doc/misc/move_networks.txt

function native.task._get_task_move_network_id(ped: int): int

is_task_move_network_ready_for_transition

function native.task.is_task_move_network_ready_for_transition(ped: int): bool

request_task_move_network_state_transition

function native.task.request_task_move_network_state_transition(ped: int, name: string): void

get_task_move_network_state

function native.task.get_task_move_network_state(ped: int): string

_0xe9a6400d1a0e7a55

function native.task._0xe9a6400d1a0e7a55(p0: int): int

_0x615dc4a82e90bb48

function native.task._0x615dc4a82e90bb48(p0: int, p1: int, p2: int): void

set_task_move_network_signal_float

function native.task.set_task_move_network_signal_float(ped: int, signal_name: string, value: float): void

_set_task_move_network_signal_float_2

function native.task._set_task_move_network_signal_float_2(ped: int, signal_name: string, value: float): void

set_task_move_network_signal_bool

function native.task.set_task_move_network_signal_bool(ped: int, signal_name: string, value: bool): void

_set_task_move_network_signal_vector

function native.task._set_task_move_network_signal_vector(ped: int, signal_name: string, x: float, y: float, z: float): void

_get_task_move_network_phase_float

function native.task._get_task_move_network_phase_float(ped: int, phase_name: string): float

get_task_move_network_event

function native.task.get_task_move_network_event(ped: int, event_name: string): bool

_0x9585ff23c4b8ede0

function native.task._0x9585ff23c4b8ede0(p0: int, p1: int): void

_0xeaf87da2be78a15b

function native.task._0xeaf87da2be78a15b(p0: int, p1: int): void

_0x3bbeecc5b8f35318

function native.task._0x3bbeecc5b8f35318(p0: int, p1: int): void

is_move_blend_ratio_still

function native.task.is_move_blend_ratio_still(move_blend_ratio: float): bool

is_move_blend_ratio_walking

function native.task.is_move_blend_ratio_walking(move_blend_ratio: float): bool

is_move_blend_ratio_running

function native.task.is_move_blend_ratio_running(move_blend_ratio: float): bool

is_move_blend_ratio_sprinting

function native.task.is_move_blend_ratio_sprinting(move_blend_ratio: float): bool

is_ped_still

function native.task.is_ped_still(ped: int): bool

is_ped_walking

function native.task.is_ped_walking(ped: int): bool

is_ped_running

function native.task.is_ped_running(ped: int): bool

is_ped_sprinting

function native.task.is_ped_sprinting(ped: int): bool

is_ped_in_hit_react

function native.task.is_ped_in_hit_react(ped: int): bool

task_arrest_ped

function native.task.task_arrest_ped(ped: int, target: int): void

is_ped_being_arrested

This function is hard-coded to always return false.

function native.task.is_ped_being_arrested(ped: int): bool

_is_ped_arresting_any_ped

function native.task._is_ped_arresting_any_ped(ped: int): bool

_cuff_ped

function native.task._cuff_ped(ped: int): void

uncuff_ped

function native.task.uncuff_ped(ped: int): void

is_ped_cuffed

function native.task.is_ped_cuffed(ped: int): bool

_is_ped_duelling

function native.task._is_ped_duelling(ped: int): bool

task_duel

Params: p4 either 0.2f, 0.25f, 0.31f, 0.4f

function native.task.task_duel(ped: int, p1: int, p2: float, entity: int, p4: float, p5: int, v_pos_opponent_x: float, v_pos_opponent_y: float, v_pos_opponent_z: float, f_opponent_head: float, p10: int): void

_0x908bb14bce85c80e

function native.task._0x908bb14bce85c80e(p0: int): int

_0x1f7a9a9c38c13a56

function native.task._0x1f7a9a9c38c13a56(p0: int): int

_0x3feb770d8ed9047a

function native.task._0x3feb770d8ed9047a(p0: int): int

_0x30146c25686b7836

function native.task._0x30146c25686b7836(p0: int, p1: int): int

_0x59ae5ca4ffb4e378

function native.task._0x59ae5ca4ffb4e378(p0: int, p1: int): int

_0x748d5e0d2a1a4c61

function native.task._0x748d5e0d2a1a4c61(p0: int, p1: int, p2: int): void

end_duel

function native.task.end_duel(ped: int, p1: bool, p2: float): void

_0x651f0530083c0e5a

function native.task._0x651f0530083c0e5a(p0: int, p1: int): void

task_carriable

carriableSlot: 7 > Back of a horse 6 > Right side of a horse 5 > Left side of a horse flags: 512: enables the prompt being the name of the item when using a generic item

function native.task.task_carriable(entity: int, carry_config: int, carrier: int, carriable_slot: int, flags: int): void

_0x9ebd34958ab6f824

function native.task._0x9ebd34958ab6f824(p0: int): void

get_is_carriable_entity

function native.task.get_is_carriable_entity(entity: int): bool

_0x10adfdf07b7dffba

function native.task._0x10adfdf07b7dffba(p0: int, p1: int, p2: int): int

task_place_carried_entity_at_coord

function native.task.task_place_carried_entity_at_coord(ped: int, entity: int, x: float, y: float, z: float, p5: float, flags: int): void

task_place_carried_entity_on_mount

function native.task.task_place_carried_entity_on_mount(ped: int, entity: int, mount: int, p3: float): void

task_dump_carriable_from_parent

function native.task.task_dump_carriable_from_parent(ped: int, ped2: int, entity: int): void

_detach_carriable_ped

function native.task._detach_carriable_ped(ped: int): void

_0xe2cf104add49d4bf

function native.task._0xe2cf104add49d4bf(p0: int): void

task_pickup_carriable_entity

function native.task.task_pickup_carriable_entity(ped: int, entity: int): void

task_hogtie_target_ped

function native.task.task_hogtie_target_ped(ped: int, target_ped: int): void

_task_cut_free_hogtied_target_ped

function native.task._task_cut_free_hogtied_target_ped(ped: int, target_ped: int): void

_task_cut_free_hogtied_target_ped_2

function native.task._task_cut_free_hogtied_target_ped_2(ped: int, target_ped: int, p2: float): void

_set_hogtie_escape_timer

Sets the time it takes for a hogtied ped to escape -1.0f for ped to never escape

function native.task._set_hogtie_escape_timer(ped: int, time: float): void

_get_hogtie_escape_timer

function native.task._get_hogtie_escape_timer(ped: int): float

_0x03d741cb4052e26c

function native.task._0x03d741cb4052e26c(p0: int): int

_request_herb_composite_asset

function native.task._request_herb_composite_asset(asset: int): bool

are_composite_lootable_entity_def_assets_loaded

Returns true when requested asset is loaded

function native.task.are_composite_lootable_entity_def_assets_loaded(asset: int): bool

_create_herb_composites

groundSetting: 0: spawn on ground, 2 (1?): do not spawn on ground p7: -1 in R* Scripts Returns compositeId

function native.task._create_herb_composites(asset: int, x: float, y: float, z: float, heading: float, ground_setting: int, p6: ptr int, p7: int): int

_delete_patch_objects_from_herb_composites

Params: p1 is always false except in script nb_egg_protector

function native.task._delete_patch_objects_from_herb_composites(composite_id: int, p1: bool): void

_get_herb_composite_num_entities

Flowers, Stalks or whatever the composite has

function native.task._get_herb_composite_num_entities(composite_id: int, out_entities: ptr int): int

_0xdf56a2b50c04dea4

function native.task._0xdf56a2b50c04dea4(p0: int, p1: int): int

task_loot_entity

function native.task.task_loot_entity(ped: int, entity: int): void

task_break_vehicle_door_lock

function native.task.task_break_vehicle_door_lock(ped: int, vehicle: int): void

task_loot_nearest_entity

function native.task.task_loot_nearest_entity(ped: int, x: float, y: float, z: float, p4: int, p5: float): void

task_lasso_ped

function native.task.task_lasso_ped(ped: int, target_ped: int): void

task_hogtieable

function native.task.task_hogtieable(ped: int): void

unhogtie_ped

getupSetHash: see nm_blend_out_sets.meta

function native.task.unhogtie_ped(ped: int, flags: int, getup_set_hash: int, p3: string, p4: string, p5: float): void

_0x722d6a49200174fe

function native.task._0x722d6a49200174fe(p0: int, p1: int, p2: int, p3: int, p4: int): void

_make_object_carriable

function native.task._make_object_carriable(object: int): void

make_object_not_carriable

function native.task.make_object_not_carriable(object: int): void

_0x8e1dde26d270cc5e

function native.task._0x8e1dde26d270cc5e(p0: int, p1: int): void

_0xa6a76d666a281f2d

function native.task._0xa6a76d666a281f2d(p0: int, item: int): void

_0xa21aa2f0c2180125

function native.task._0xa21aa2f0c2180125(p0: int, p1: int): void

_find_model_for_item

function native.task._find_model_for_item(item: int): int

_0xff745b0346e19e2c

function native.task._0xff745b0346e19e2c(p0: int): void

_0xb8f52a3f84a7cc59

function native.task._0xb8f52a3f84a7cc59(p0: int): int

_0x6afda2264925bd11

function native.task._0x6afda2264925bd11(p0: int): void

_0x816a3acd265e2297

function native.task._0x816a3acd265e2297(p0: int, p1: int): void

_0x4e806a395d43a458

function native.task._0x4e806a395d43a458(p0: int): void

set_team_carriable_entity

function native.task.set_team_carriable_entity(p0: int, p1: int, p2: int): void

is_team_carriable_entity

function native.task.is_team_carriable_entity(p0: int, p1: int): bool

_is_hat_being_picked_up

Returns true while a hat is being picked up _IS_A* - _IS_D*

function native.task._is_hat_being_picked_up(hat_object: int): bool

_0x9addbb9242179d56

function native.task._0x9addbb9242179d56(object: int, ped: int): void

_is_hat_being_picked_up_2

Returns true while a hat is being picked up. Similar to 0x11CD066F54DA0133 _IS_A* - _IS_D*

function native.task._is_hat_being_picked_up_2(hat_object: int): bool

_task_equip_hat

_A*

function native.task._task_equip_hat(hat_object: int, ped: int): void

_0x7cb99fadde73cd1b

function native.task._0x7cb99fadde73cd1b(p0: int): int

_0xf3c3503276f4a034

function native.task._0xf3c3503276f4a034(entity: int, p1: int): void

_0x6dac799857ef3f11

function native.task._0x6dac799857ef3f11(p0: int, p1: int): int

_0x920684be432875b1

function native.task._0x920684be432875b1(p0: int): int

set_enhanced_break_free

clipset: CLIPSET

function native.task.set_enhanced_break_free(ped: int, p1: bool, clipset: string): bool

_0x6afd84aeaa3ea538

function native.task._0x6afd84aeaa3ea538(p0: int): int

_0xbd1c3c0f271c39d3

function native.task._0xbd1c3c0f271c39d3(p0: int, p1: int): void

_0x1ecf56c040fd839c

function native.task._0x1ecf56c040fd839c(p0: int, p1: int): void

_0xf40a109b4b79a848

function native.task._0xf40a109b4b79a848(p0: int, p1: int, p2: int): void

_is_ped_leading_horse

function native.task._is_ped_leading_horse(ped: int): bool

_0xac5045ab7f1a34fd

function native.task._0xac5045ab7f1a34fd(p0: int): int

_get_led_horse_from_ped

function native.task._get_led_horse_from_ped(ped: int): int

task_turn_to_face_closest_ped

function native.task.task_turn_to_face_closest_ped(ped: int, p1: float, p2: float, p3: int): void

task_confront

function native.task.task_confront(ped: int, target_ped: int, p2: int): bool

task_police

function native.task.task_police(ped: int, p1: bool): bool

task_melee

Params: p2: AR_TAKEDOWN_FRONT, AR_EXECUTION_FRONT, 0 in R* Scripts

function native.task.task_melee(ped: int, target_ped: int, p2: int, p3: int, p4: int, p5: float, p6: int, p7: float): bool

task_grapple

grappleStyle: AR_GRAPPLE_MOUNT_STANDING_FROM_FRONT, AR_GRAPPLE_MOUNT_STANDING_FROM_RIGHT, AR_GRAPPLE_MOUNT_STANDING_FROM_BACK, AR_GRAPPLE_MOUNT_STANDING_FROM_LEFT, AR_GRAPPLE_MOUNT_FROM_FRONT, AR_WOLF_EXECUTION_ENTER_FROM_BACK, AR_GRAPPLE_DRAG_FRONT_ON_ASS, AR_GRAPPLE_FRONT_FROM_LEFT_FAR, AR_BEAR_CHALLENGE_FRONT, AR_GRAPPLE_FRONT_FROM_FRONT, AR_GRAPPLE_MOUNT_FACEUP_FROM_FRONT

function native.task.task_grapple(ped: int, target_ped: int, grapple_style: int, p3: int, p4: float, p5: int, p6: int): bool

_task_intimidated

function native.task._task_intimidated(p0: int, p1: int, p2: int, p3: int, p4: int): bool

_task_intimidated_2

function native.task._task_intimidated_2(victim: int, attacker: int, p2: int, p3: bool, p4: bool, every_frame: bool, p6: bool, p7: bool, flag: int): bool

_0x2948235db2058e99

function native.task._0x2948235db2058e99(p0: int, p1: int): void

_0xb2f47a1afdfcc595

function native.task._0xb2f47a1afdfcc595(p0: int, p1: int): void

_0x41d1331afad5a091

SET_PED*

function native.task._0x41d1331afad5a091(ped: int, p1: int, p2: int): void

_0x801bd27403f3cba0

function native.task._0x801bd27403f3cba0(p0: int, p1: int, p2: int, p3: int): void

_0x0fe797dd9f70dfa6

function native.task._0x0fe797dd9f70dfa6(p0: int, p1: int, p2: int, p3: int): void

task_persistent_character

function native.task.task_persistent_character(ped: int): void

_0xfc7f71cf49f70b6b

function native.task._0xfc7f71cf49f70b6b(p0: int): void

_0xe01f55b2896f6b37

function native.task._0xe01f55b2896f6b37(p0: int, p1: int): void

_0xe62754d09354f6cf

function native.task._0xe62754d09354f6cf(p0: int): int

_0x4ba972d0e5ad8122

function native.task._0x4ba972d0e5ad8122(p0: int, p1: int): void

_get_task_fishing

Fishing Research: https://pastebin.com/NmK5ZLVs Only used in R* Scripts fishing_core and av_fishing_river

function native.task._get_task_fishing(ped: int, p1: ptr int): bool

_set_task_fishing

Only used in R* Scripts fishing_core and av_fishing_river

function native.task._set_task_fishing(ped: int, p1: ptr int): bool

task_swap_fishing_bait

Baits: see 0x9B0C7FA063E67629

function native.task.task_swap_fishing_bait(ped: int, bait: string, without_buoy: bool): void

_set_fishing_bait

Baits: p_fishHook02x, p_baitBread01x, p_baitCorn01x, p_baitCheese01x, p_baitWorm01x, p_baitCricket01x, p_crawdad01x, p_finisheDragonfly01x, p_finisdFishlure01x, p_finishdCrawd01x, p_finisheDragonflyLegendary01x, p_finisdFishlureLegendary01x, p_finishdCrawdLegendary01x, p_lgoc_spinner_v4

function native.task._set_fishing_bait(ped: int, bait: string, without_buoy: bool, instantly: bool): void

_0x1f298c7bd30d1240

function native.task._0x1f298c7bd30d1240(ped: int): void

_ped_fishingrod_hook_entity

function native.task._ped_fishingrod_hook_entity(ped: int, entity: int): void

_ped_fishingrod_hook_object

Used with 'P_BODYPARTARMFLOAT02X' model in fishing_core.c

function native.task._ped_fishingrod_hook_object(ped: int, object: int): void

_0xb520dbda7fcf573f

function native.task._0xb520dbda7fcf573f(ped: int): bool

_0x31bb338f64d5c861

function native.task._0x31bb338f64d5c861(ped: int, p1: bool): void

_0x517d01bf27b682d1

function native.task._0x517d01bf27b682d1(ped: int, entity: int, p2: float, p3: float, p4: float, p5: float, p6: int): void

_0x88fd60d846d9cd63

function native.task._0x88fd60d846d9cd63(ped: int): void

_0x9050df2c53801208

function native.task._0x9050df2c53801208(ped: int, p1: float): void

_0x22cdbf317c40a122

function native.task._0x22cdbf317c40a122(ped: int): void

_0x5952dfa38fa529fe

function native.task._0x5952dfa38fa529fe(): int

task_play_emote_with_hash

https://github.com/femga/rdr3_discoveries/blob/master/animations/kit_emotes_list.lua emote: https://alloc8or.re/rdr3/doc/enums/eEmote.txt

enum eEmoteType { EMOTE_TYPE_INVALID = -1, EMOTE_TYPE_REACT, EMOTE_TYPE_ACTION, EMOTE_TYPE_TAUNT, EMOTE_TYPE_GREET, EMOTE_TYPE_TWIRL_GUN, EMOTE_TYPE_DANCE_FLOOR };

enum eEmotePlaybackMode { EMOTE_PM_INVALID = -1, EMOTE_PM_UPPERBODY, EMOTE_PM_UPPERBODY_LOOP, EMOTE_PM_FULLBODY, };

function native.task.task_play_emote_with_hash(ped: int, emote_type: int, playback_mode: int, emote: int, is_secondary_task: bool, can_break_out: bool, disable_early_out_anim_tag: bool, ignore_invalid_main_task: bool, destroy_props: bool): void

_task_play_emote

Similar to 0xB31A277C1AC7B7FF but checks if the ped's inventory contains the specified emote kit.

function native.task._task_play_emote(ped: int, emote_type: int, playback_mode: int, emote: int, is_secondary_task: bool, can_break_out: bool, disable_early_out_anim_tag: bool, ignore_invalid_main_task: bool, destroy_props: bool): void

_0x6a1af481407bf6e9

function native.task._0x6a1af481407bf6e9(p0: int): void

_task_emote_outro

function native.task._task_emote_outro(ped: int): void

_0xec516fe805d2cb2d

function native.task._0xec516fe805d2cb2d(p0: int): void

_0x59aea4dc640814b9

function native.task._0x59aea4dc640814b9(p0: int, p1: int): void

_0x11c7ce1ae38911b5

function native.task._0x11c7ce1ae38911b5(p0: int): int

_0xd0abc4ea3b5e21a0

function native.task._0xd0abc4ea3b5e21a0(p0: int, p1: int): int

is_emote_task_running

function native.task.is_emote_task_running(ped: int, p1: int): bool