streaming

Methods

request_model

Request a model to be loaded into memory.

function native.streaming.request_model(model: int, p1: bool): void

has_model_loaded

Checks if the specified model has loaded into memory.

function native.streaming.has_model_loaded(model: int): bool

set_model_as_no_longer_needed

Marks the model as no longer needed.

function native.streaming.set_model_as_no_longer_needed(model: int): void

is_model_in_cdimage

Returns whether the specified model exists in the game.

function native.streaming.is_model_in_cdimage(model: int): bool

is_model_valid

Returns whether the specified model is valid

function native.streaming.is_model_valid(model: int): bool

is_model_a_ped

function native.streaming.is_model_a_ped(model: int): bool

is_model_a_vehicle

Returns whether the specified model represents a vehicle.

function native.streaming.is_model_a_vehicle(model: int): bool

_is_model_an_object

function native.streaming._is_model_an_object(model: int): bool

_has_collision_loaded_at_coord

function native.streaming._has_collision_loaded_at_coord(x: float, y: float, z: float): bool

_0x80b3e0597366adf1

function native.streaming._0x80b3e0597366adf1(): void

request_collision_at_coord

function native.streaming.request_collision_at_coord(x: float, y: float, z: float): void

_request_metadata_at_coord

function native.streaming._request_metadata_at_coord(x: float, y: float, z: float): void

request_collision_for_model

function native.streaming.request_collision_for_model(model: int): void

has_collision_for_model_loaded

function native.streaming.has_collision_for_model_loaded(model: int): bool

request_additional_collision_at_coord

function native.streaming.request_additional_collision_at_coord(x: float, y: float, z: float): void

does_anim_dict_exist

function native.streaming.does_anim_dict_exist(anim_dict: string): bool

request_anim_dict

function native.streaming.request_anim_dict(anim_dict: string): void

has_anim_dict_loaded

function native.streaming.has_anim_dict_loaded(anim_dict: string): bool

remove_anim_dict

function native.streaming.remove_anim_dict(anim_dict: string): void

request_move_network_def

function native.streaming.request_move_network_def(name: string): void

has_move_network_def_loaded

function native.streaming.has_move_network_def_loaded(name: string): bool

remove_move_network_def

function native.streaming.remove_move_network_def(name: string): void

request_clip_set

function native.streaming.request_clip_set(clip_set: string): void

has_clip_set_loaded

Alias for HAS_ANIM_SET_LOADED.

function native.streaming.has_clip_set_loaded(clip_set: string): bool

remove_clip_set

Alias for REMOVE_ANIM_SET.

function native.streaming.remove_clip_set(clip_set: string): void

_request_clip_set_by_hash

function native.streaming._request_clip_set_by_hash(clip_set_hash: int): void

_0x03ddbf2d73799f9e

function native.streaming._0x03ddbf2d73799f9e(p0: int): void

_0x85b8f04555ab49b8

function native.streaming._0x85b8f04555ab49b8(p0: int): int

_0x9f348de670423460

function native.streaming._0x9f348de670423460(p0: int): void

_0x5288b7f0690f7c1f

function native.streaming._0x5288b7f0690f7c1f(p0: int): int

_request_scenario_type

function native.streaming._request_scenario_type(scenario_type: int, p1: int, p2: int, p3: int): int

_has_scenario_type_loaded

function native.streaming._has_scenario_type_loaded(scenario_type: int, p1: bool): bool

_remove_scenario_asset

function native.streaming._remove_scenario_asset(scenario_type: int): int

_0xb223249b7798eeed

function native.streaming._0xb223249b7798eeed(p0: int, p1: int, p2: int, p3: int): int

_0xa0ae7653e8181725

function native.streaming._0xa0ae7653e8181725(p0: int): int

_0x66bc28e50e85270e

function native.streaming._0x66bc28e50e85270e(p0: int): int

_get_ipl_bounding_sphere

Outputs IPL position and radius (previously wrongly named heading) https://github.com/femga/rdr3_discoveries/blob/master/imaps/imaps_with_coords_and_heading.lua

function native.streaming._get_ipl_bounding_sphere(ipl_hash: int, position: ref vec3, radius: ptr int): bool

request_ipl_hash

Old name: _REQUEST_IMAP

function native.streaming.request_ipl_hash(ipl_hash: int): void

request_ipl_by_hash

Old name: _REQUEST_IMAP_2

function native.streaming.request_ipl_by_hash(ipl_hash: int): void

remove_ipl_hash

Old name: _REMOVE_IMAP

function native.streaming.remove_ipl_hash(ipl_hash: int): void

remove_ipl_by_hash

Old name: _REMOVE_IMAP_2

function native.streaming.remove_ipl_by_hash(ipl_hash: int): void

is_ipl_active_hash

Old name: _IS_IMAP_ACTIVE

function native.streaming.is_ipl_active_hash(ipl_hash: int): bool

is_ipl_active_by_hash

Old name: _IS_IMAP_ACTIVE_2

function native.streaming.is_ipl_active_by_hash(ipl_hash: int): bool

_is_position_inside_ipl_streaming_extents

Returns true if IPL is streamed in (?)

function native.streaming._is_position_inside_ipl_streaming_extents(ipl_hash: int, x: float, y: float, z: float): bool

_0xdeee1f265b7ecef5

function native.streaming._0xdeee1f265b7ecef5(): void

set_game_pauses_for_streaming

function native.streaming.set_game_pauses_for_streaming(toggle: bool): void

get_number_of_streaming_requests

function native.streaming.get_number_of_streaming_requests(): int

request_ptfx_asset

function native.streaming.request_ptfx_asset(): void

has_ptfx_asset_loaded

function native.streaming.has_ptfx_asset_loaded(): bool

remove_ptfx_asset

function native.streaming.remove_ptfx_asset(): void

request_named_ptfx_asset

function native.streaming.request_named_ptfx_asset(fx_name_hash: int): void

has_named_ptfx_asset_loaded

function native.streaming.has_named_ptfx_asset_loaded(fx_name_hash: int): bool

remove_named_ptfx_asset

function native.streaming.remove_named_ptfx_asset(fx_name_hash: int): void

set_population_budget_multiplier

function native.streaming.set_population_budget_multiplier(f_budget_multiplier: float): void

get_population_budget_multiplier

function native.streaming.get_population_budget_multiplier(): float

_0x071769bcb24379e5

function native.streaming._0x071769bcb24379e5(): int

clear_focus

function native.streaming.clear_focus(): void

set_focus_pos_and_vel

function native.streaming.set_focus_pos_and_vel(x: float, y: float, z: float, offset_x: float, offset_y: float, offset_z: float): void

set_focus_entity

It seems to make the entity's coords mark the point from which LOD-distances are measured. In my testing, setting a vehicle as the focus entity and moving that vehicle more than 300 distance units away from the player will make the level of detail around the player go down drastically (shadows disappear, textures go extremely low res, etc). The player seems to be the default focus entity.

function native.streaming.set_focus_entity(entity: int): void

is_entity_focus

function native.streaming.is_entity_focus(entity: int): bool

set_mapdatacullbox_enabled

function native.streaming.set_mapdatacullbox_enabled(name: string, toggle: bool): void

set_all_mapdata_culled

nullsub, doesn't do anything

function native.streaming.set_all_mapdata_culled(p0: int): void

_0xf01d21df39554115

function native.streaming._0xf01d21df39554115(p0: int): void

load_scene_start

function native.streaming.load_scene_start(pos_x: float, pos_y: float, pos_z: float, offset_x: float, offset_y: float, offset_z: float, radius: float, p7: int): bool

load_scene_start_sphere

function native.streaming.load_scene_start_sphere(x: float, y: float, z: float, radius: float, p4: int): bool

load_scene_stop

function native.streaming.load_scene_stop(): void

is_load_scene_active

function native.streaming.is_load_scene_active(): bool

is_load_scene_loaded

function native.streaming.is_load_scene_loaded(): bool

is_rendered_scene_loaded

function native.streaming.is_rendered_scene_loaded(): bool

is_player_switch_in_progress

function native.streaming.is_player_switch_in_progress(): bool

set_scene_streaming_tracks_cam_pos_this_frame

function native.streaming.set_scene_streaming_tracks_cam_pos_this_frame(): void

ipl_group_swap_start

function native.streaming.ipl_group_swap_start(ipl_name1: string, ipl_name2: string): void

ipl_group_swap_cancel

function native.streaming.ipl_group_swap_cancel(): void

ipl_group_swap_is_ready

function native.streaming.ipl_group_swap_is_ready(): bool

ipl_group_swap_finish

function native.streaming.ipl_group_swap_finish(): void

ipl_group_swap_is_active

function native.streaming.ipl_group_swap_is_active(): bool

prefetch_srl

function native.streaming.prefetch_srl(srl: string): void

_0xae00387e53b1e9fc

function native.streaming._0xae00387e53b1e9fc(): void

_0xef1a8a484118735e

function native.streaming._0xef1a8a484118735e(): void

_0xd9f2ff4af394d926

function native.streaming._0xd9f2ff4af394d926(): void

is_srl_loaded

function native.streaming.is_srl_loaded(): bool

begin_srl

function native.streaming.begin_srl(): void

end_srl

function native.streaming.end_srl(): void

set_srl_time

function native.streaming.set_srl_time(p0: float): void

set_srl_readahead_times

function native.streaming.set_srl_readahead_times(p0: int, p1: int, p2: int, p3: int): void

set_srl_long_jump_mode

function native.streaming.set_srl_long_jump_mode(p0: bool): void

set_hd_area

function native.streaming.set_hd_area(x: float, y: float, z: float, radius: float): void

clear_hd_area

function native.streaming.clear_hd_area(): void

_0x09fbf15d73efc900

function native.streaming._0x09fbf15d73efc900(): void

_0xf11d7cb962fcd747

function native.streaming._0xf11d7cb962fcd747(p0: int): void

_0xb9b9e47edb9d63db

Sorts some unknown data.

Likely SORT_*

function native.streaming._0xb9b9e47edb9d63db(): void

_0xbe8daa9d8d01da6a

function native.streaming._0xbe8daa9d8d01da6a(p0: int, p1: int, p2: int): void

_0x53764309c4618087

function native.streaming._0x53764309c4618087(p0: int): int

_0x032a14d082a9b269

_SET_E* or _SET_F*

function native.streaming._0x032a14d082a9b269(p0: int): void

_0xafa87a7d41ee346a

function native.streaming._0xafa87a7d41ee346a(p0: int): void

_0x6a6e79fbe8678c98

function native.streaming._0x6a6e79fbe8678c98(): void

_0xcc61d8d6c19d9f14

function native.streaming._0xcc61d8d6c19d9f14(p0: int): void

_0xda7fdeff4de86839

function native.streaming._0xda7fdeff4de86839(): int

_0x5d5e2102b174b8d2

function native.streaming._0x5d5e2102b174b8d2(): int

_0x7b8c2b846c05e5ad

function native.streaming._0x7b8c2b846c05e5ad(): int

_0x62d5f0588915b277

function native.streaming._0x62d5f0588915b277(): void

_0x2f4d53023f826ff0

function native.streaming._0x2f4d53023f826ff0(): int

_0xdabfe48ba0d457aa

function native.streaming._0xdabfe48ba0d457aa(): int

_0xe5b76e5b56cd77dd

function native.streaming._0xe5b76e5b56cd77dd(): int

_0x27af48c62b281341

function native.streaming._0x27af48c62b281341(): int

_0x99f92061efe908ba

function native.streaming._0x99f92061efe908ba(): int

_0x05dd384f39de1c8c

function native.streaming._0x05dd384f39de1c8c(p0: int, p1: int): int

_0x198b85cc3c7a4593

function native.streaming._0x198b85cc3c7a4593(p0: int, p1: int): int

_0x2a6d1daab9ebb262

function native.streaming._0x2a6d1daab9ebb262(p0: int): int

_0x07559b29950301ff

function native.streaming._0x07559b29950301ff(p0: int, p1: int): void

_0xd6e39dc5d46df4ab

function native.streaming._0xd6e39dc5d46df4ab(p0: int): int

_0x8d56bda343d9519f

function native.streaming._0x8d56bda343d9519f(p0: int): int

_0xd840c130d7aacfa5

function native.streaming._0xd840c130d7aacfa5(p0: int, p1: int, p2: int): void

_0x2e24c27b112b5b12

function native.streaming._0x2e24c27b112b5b12(p0: int): void

_set_guarma_worldhorizon_active

function native.streaming._set_guarma_worldhorizon_active(toggle: bool): void