gtav:natives
Table of Contents
GTA V Natives
SYSTEM
WAIT
void SYSTEM::WAIT(int ms) // 0x4EDE34FBADD967A6 0x7715C03B b323
Pauses execution of the current script, please note this behavior is only seen when called from one of the game script files(ysc). In order to wait an asi script use "static void WAIT(DWORD time);" found in main.h
START_NEW_SCRIPT
int SYSTEM::START_NEW_SCRIPT(const char* scriptName, int stackSize) // 0xE81651AD79516E48 0x3F166D0E b323
Examples: g_384A = SYSTEM::START_NEW_SCRIPT("cellphone_flashhand", 1424); l_10D = SYSTEM::START_NEW_SCRIPT("taxiService", 1828); SYSTEM::START_NEW_SCRIPT("AM_MP_YACHT", 5000); SYSTEM::START_NEW_SCRIPT("emergencycall", 512); SYSTEM::START_NEW_SCRIPT("emergencycall", 512); SYSTEM::START_NEW_SCRIPT("FM_maintain_cloud_header_data", 1424); SYSTEM::START_NEW_SCRIPT("FM_Mission_Controller", 31000); SYSTEM::START_NEW_SCRIPT("tennis_family", 3650); SYSTEM::START_NEW_SCRIPT("Celebrations", 3650); Decompiled examples of usage when starting a script: SCRIPT::REQUEST_SCRIPT(a_0); if (SCRIPT::HAS_SCRIPT_LOADED(a_0)) { SYSTEM::START_NEW_SCRIPT(a_0, v_3); SCRIPT::SET_SCRIPT_AS_NO_LONGER_NEEDED(a_0); return 1; } or: v_2 = "MrsPhilips2"; SCRIPT::REQUEST_SCRIPT(v_2); while (!SCRIPT::HAS_SCRIPT_LOADED(v_2)) { SCRIPT::REQUEST_SCRIPT(v_2); SYSTEM::WAIT(0); } sub_8792(36); SYSTEM::START_NEW_SCRIPT(v_2, 17000); SCRIPT::SET_SCRIPT_AS_NO_LONGER_NEEDED(v_2); All native script names: pastebin.com/K9adDsu4 and pastebin.com/yLNWicUi
START_NEW_SCRIPT_WITH_ARGS
int SYSTEM::START_NEW_SCRIPT_WITH_ARGS(const char* scriptName, Any* args, int argCount, int stackSize) // 0xB8BA7F44DF1575E1 0x4A2100E4 b323
return : script thread id, 0 if failed Pass pointer to struct of args in p1, size of struct goes into p2
START_NEW_SCRIPT_WITH_NAME_HASH
int SYSTEM::START_NEW_SCRIPT_WITH_NAME_HASH(Hash scriptHash, int stackSize) // 0xEB1C67C3A5333A92 0x8D15BE5D b323
START_NEW_SCRIPT_WITH_NAME_HASH_AND_ARGS
int SYSTEM::START_NEW_SCRIPT_WITH_NAME_HASH_AND_ARGS(Hash scriptHash, Any* args, int argCount, int stackSize) // 0xC4BB298BD441BE78 0xE38A3AD4 b323
TIMERA
int SYSTEM::TIMERA() // 0x83666F9FB8FEBD4B 0x45C8C188 b323
Counts up. Every 1000 is 1 real-time second. Use SETTIMERA(int value) to set the timer (e.g.: SETTIMERA(0)).
TIMERB
int SYSTEM::TIMERB() // 0xC9D9444186B5A374 0x330A9C0C b323
SETTIMERA
void SYSTEM::SETTIMERA(int value) // 0xC1B1E9A034A63A62 0x35785333 b323
SETTIMERB
void SYSTEM::SETTIMERB(int value) // 0x5AE11BC36633DE4E 0x27C1B7C6 b323
TIMESTEP
float SYSTEM::TIMESTEP() // 0x0000000050597EE2 0x50597EE2 b323
Gets the current frame time.
SIN
float SYSTEM::SIN(float value) // 0x0BADBFA3B172435F 0xBF987F58 b323
COS
float SYSTEM::COS(float value) // 0xD0FFB162F40A139C 0x00238FE9 b323
SQRT
float SYSTEM::SQRT(float value) // 0x71D93B57D07F9804 0x145C7701 b323
POW
float SYSTEM::POW(float base, float exponent) // 0xE3621CC40F31FE2E 0x85D134F8 b323
_LOG10
float SYSTEM::_LOG10(float value) // 0xE816E655DE37FE20 b1604
VMAG
float SYSTEM::VMAG(float x, float y, float z) // 0x652D2EEEF1D3E62C 0x1FCF1ECD b323
Calculates the magnitude of a vector.
VMAG2
float SYSTEM::VMAG2(float x, float y, float z) // 0xA8CEACB4F35AE058 0xE796E629 b323
Calculates the magnitude of a vector but does not perform Sqrt operations. (Its way faster)
VDIST
float SYSTEM::VDIST(float x1, float y1, float z1, float x2, float y2, float z2) // 0x2A488C176D52CCA5 0x3C08ECB7 b323
Calculates distance between vectors.
VDIST2
float SYSTEM::VDIST2(float x1, float y1, float z1, float x2, float y2, float z2) // 0xB7A628320EFF8E47 0xC85DEF1F b323
Calculates distance between vectors but does not perform Sqrt operations. (Its way faster)
SHIFT_LEFT
int SYSTEM::SHIFT_LEFT(int value, int bitShift) // 0xEDD95A39E5544DE8 0x314CC6CD b323
SHIFT_RIGHT
int SYSTEM::SHIFT_RIGHT(int value, int bitShift) // 0x97EF1E5BCE9DC075 0x352633CA b323
FLOOR
int SYSTEM::FLOOR(float value) // 0xF34EE736CF047844 0x32E9BE04 b323
CEIL
int SYSTEM::CEIL(float value) // 0x11E019C8F43ACC8A 0xD536A1DF b323
I'm guessing this rounds a float value up to the next whole number, and FLOOR rounds it down
ROUND
int SYSTEM::ROUND(float value) // 0xF2DB717A73826179 0x323B0E24 b323
TO_FLOAT
float SYSTEM::TO_FLOAT(int value) // 0xBBDA792448DB5A89 0x67116627 b323
SET_THREAD_PRIORITY
void SYSTEM::SET_THREAD_PRIORITY(int priority) // 0x42B65DEEF2EDF2A1 b877
0 = high 1 = normal 2 = low
APP
APP_DATA_VALID
BOOL APP::APP_DATA_VALID() // 0x846AA8E7D55EE5B6 0x72BDE002 b323
APP_GET_INT
int APP::APP_GET_INT(const char* property) // 0xD3A58A12C77D9D4B 0x2942AAD2 b323
APP_GET_FLOAT
float APP::APP_GET_FLOAT(const char* property) // 0x1514FB24C02C2322 0xD87F3A1C b323
APP_GET_STRING
const char* APP::APP_GET_STRING(const char* property) // 0x749B023950D2311C 0x849CEB80 b323
APP_SET_INT
void APP::APP_SET_INT(const char* property, int value) // 0x607E8E3D3E4F9611 0x1B509C32 b323
APP_SET_FLOAT
void APP::APP_SET_FLOAT(const char* property, float value) // 0x25D7687C68E0DAA4 0xF3076135 b323
APP_SET_STRING
void APP::APP_SET_STRING(const char* property, const char* value) // 0x3FF2FCEC4B7721B4 0x23DF19A8 b323
APP_SET_APP
void APP::APP_SET_APP(const char* appName) // 0xCFD0406ADAF90D2B 0x8BAC4146 b323
Called in the gamescripts like: APP::APP_SET_APP("car"); APP::APP_SET_APP("dog");
APP_SET_BLOCK
void APP::APP_SET_BLOCK(const char* blockName) // 0x262AB456A3D21F93 0xC2D54DD9 b323
APP_CLEAR_BLOCK
void APP::APP_CLEAR_BLOCK() // 0x5FE1DF3342DB7DBA 0xDAB86A18 b323
APP_CLOSE_APP
void APP::APP_CLOSE_APP() // 0xE41C65E07A5F05FC 0x03767C7A b323
APP_CLOSE_BLOCK
void APP::APP_CLOSE_BLOCK() // 0xE8E3FCF72EAC0EF8 0xED97B202 b323
APP_HAS_LINKED_SOCIAL_CLUB_ACCOUNT
BOOL APP::APP_HAS_LINKED_SOCIAL_CLUB_ACCOUNT() // 0x71EEE69745088DA0 0xD368BA15 b323
APP_HAS_SYNCED_DATA
BOOL APP::APP_HAS_SYNCED_DATA(const char* appName) // 0xCA52279A7271517F 0x1DE2A63D b323
APP_SAVE_DATA
void APP::APP_SAVE_DATA() // 0x95C5D356CDA6E85F 0x84A3918D b323
APP_GET_DELETED_FILE_STATUS
int APP::APP_GET_DELETED_FILE_STATUS() // 0xC9853A2BE3DED1A6 0x784D550B b323
APP_DELETE_APP_DATA
BOOL APP::APP_DELETE_APP_DATA(const char* appName) // 0x44151AEA95C8A003 0x2A2FBD1C b323
AUDIO
PLAY_PED_RINGTONE
void AUDIO::PLAY_PED_RINGTONE(const char* ringtoneName, Ped ped, BOOL p2) // 0xF9E56683CA8E11A5 0x1D530E47 b323
All found occurrences in b617d, sorted alphabetically and identical lines removed: pastebin.com/RFb4GTny AUDIO::PLAY_PED_RINGTONE("Remote_Ring", PLAYER::PLAYER_PED_ID(), 1); AUDIO::PLAY_PED_RINGTONE("Dial_and_Remote_Ring", PLAYER::PLAYER_PED_ID(), 1);
IS_PED_RINGTONE_PLAYING
BOOL AUDIO::IS_PED_RINGTONE_PLAYING(Ped ped) // 0x1E8E5E20937E3137 0xFE576EE4 b323
STOP_PED_RINGTONE
void AUDIO::STOP_PED_RINGTONE(Ped ped) // 0x6C5AE23EFA885092 0xFEEA107C b323
IS_MOBILE_PHONE_CALL_ONGOING
BOOL AUDIO::IS_MOBILE_PHONE_CALL_ONGOING() // 0x7497D2CE2C30D24C 0x4ED1400A b323
_0xC8B1B2425604CDD0
BOOL AUDIO::_0xC8B1B2425604CDD0() // 0xC8B1B2425604CDD0 0x16FB88B5 b323
IS_MOBILE_PHONE_*
CREATE_NEW_SCRIPTED_CONVERSATION
void AUDIO::CREATE_NEW_SCRIPTED_CONVERSATION() // 0xD2C91A0B572AAE56 0xB2BC25F8 b323
ADD_LINE_TO_CONVERSATION
void AUDIO::ADD_LINE_TO_CONVERSATION(int index, const char* p1, const char* p2, int p3, int p4, BOOL p5, BOOL p6, BOOL p7, BOOL p8, int p9, BOOL p10, BOOL p11, BOOL p12) // 0xC5EF963405593646 0x96CD0513 b323
NOTE: ones that are -1, 0 - 35 are determined by a function where it gets a TextLabel from a global then runs, _GET_TEXT_SUBSTRING and depending on what the result is it goes in check order of 0 - 9 then A - Z then z (lowercase). So it will then return 0 - 35 or -1 if it's 'z'. The func to handle that ^^ is func_67 in dialog_handler.c atleast in TU27 Xbox360 scripts. p0 is -1, 0 - 35 p1 is a char or string (whatever you wanna call it) p2 is Global 10597 + i * 6. 'i' is a while(i < 70) loop p3 is again -1, 0 - 35 p4 is again -1, 0 - 35 p5 is either 0 or 1 (bool ?) p6 is either 0 or 1 (The func to determine this is bool) p7 is either 0 or 1 (The func to determine this is bool) p8 is either 0 or 1 (The func to determine this is bool) p9 is 0 - 3 (Determined by func_60 in dialogue_handler.c) p10 is either 0 or 1 (The func to determine this is bool) p11 is either 0 or 1 (The func to determine this is bool) p12 is unknown as in TU27 X360 scripts it only goes to p11.
ADD_PED_TO_CONVERSATION
void AUDIO::ADD_PED_TO_CONVERSATION(int index, Ped ped, const char* p2) // 0x95D9F4BC443956E7 0xF8D5EB86 b323
4 calls in the b617d scripts. The only one with p0 and p2 in clear text: AUDIO::ADD_PED_TO_CONVERSATION(5, l_AF, "DINAPOLI"); ================================================= One of the 2 calls in dialogue_handler.c p0 is in a while-loop, and so is determined to also possibly be 0 - 15.
_0x33E3C6C6F2F0B506
void AUDIO::_0x33E3C6C6F2F0B506(Any p0, float p1, float p2, float p3) // 0x33E3C6C6F2F0B506 0x73C6F979 b323
_0x892B6AB8F33606F5
void AUDIO::_0x892B6AB8F33606F5(int p0, Entity entity) // 0x892B6AB8F33606F5 0x88203DDA b323
SET_MICROPHONE_POSITION
void AUDIO::SET_MICROPHONE_POSITION(BOOL p0, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3) // 0xB6AE90EDDE95C762 0xAD7BB191 b323
If this is the correct name, what microphone? I know your TV isn't going to reach out and adjust your headset so..
_0x0B568201DD99F0EB
void AUDIO::_0x0B568201DD99F0EB(BOOL p0) // 0x0B568201DD99F0EB 0x1193ED6E b323
_0x61631F5DF50D1C34
void AUDIO::_0x61631F5DF50D1C34(BOOL p0) // 0x61631F5DF50D1C34 b323
START_SCRIPT_PHONE_CONVERSATION
void AUDIO::START_SCRIPT_PHONE_CONVERSATION(BOOL p0, BOOL p1) // 0x252E5F915EABB675 0x38E42D07 b323
PRELOAD_SCRIPT_PHONE_CONVERSATION
void AUDIO::PRELOAD_SCRIPT_PHONE_CONVERSATION(BOOL p0, BOOL p1) // 0x6004BCB0E226AAEA 0x9ACB213A b323
START_SCRIPT_CONVERSATION
void AUDIO::START_SCRIPT_CONVERSATION(BOOL p0, BOOL p1, BOOL p2, BOOL p3) // 0x6B17C62C9635D2DC 0xE5DE7D9D b323
PRELOAD_SCRIPT_CONVERSATION
void AUDIO::PRELOAD_SCRIPT_CONVERSATION(BOOL p0, BOOL p1, BOOL p2, BOOL p3) // 0x3B3CAD6166916D87 0xDDF5C579 b323
START_PRELOADED_CONVERSATION
void AUDIO::START_PRELOADED_CONVERSATION() // 0x23641AFE870AF385 0xA170261B b323
GET_IS_PRELOADED_CONVERSATION_READY
BOOL AUDIO::GET_IS_PRELOADED_CONVERSATION_READY() // 0xE73364DB90778FFA 0x336F3D35 b323
IS_SCRIPTED_CONVERSATION_ONGOING
BOOL AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING() // 0x16754C556D2EDE3D 0xCB8FD96F b323
IS_SCRIPTED_CONVERSATION_LOADED
BOOL AUDIO::IS_SCRIPTED_CONVERSATION_LOADED() // 0xDF0D54BE7A776737 0xE1870EA9 b323
GET_CURRENT_SCRIPTED_CONVERSATION_LINE
int AUDIO::GET_CURRENT_SCRIPTED_CONVERSATION_LINE() // 0x480357EE890C295A 0x9620E41F b323
PAUSE_SCRIPTED_CONVERSATION
void AUDIO::PAUSE_SCRIPTED_CONVERSATION(BOOL p0) // 0x8530AD776CD72B12 0xE2C9C6F8 b323
RESTART_SCRIPTED_CONVERSATION
void AUDIO::RESTART_SCRIPTED_CONVERSATION() // 0x9AEB285D1818C9AC 0x6CB24B56 b323
STOP_SCRIPTED_CONVERSATION
int AUDIO::STOP_SCRIPTED_CONVERSATION(BOOL p0) // 0xD79DEEFB53455EBA 0xAB77DA7D b323
SKIP_TO_NEXT_SCRIPTED_CONVERSATION_LINE
void AUDIO::SKIP_TO_NEXT_SCRIPTED_CONVERSATION_LINE() // 0x9663FE6B7A61EB00 0x85C98304 b323
INTERRUPT_CONVERSATION
void AUDIO::INTERRUPT_CONVERSATION(Any p0, Any* p1, Any* p2) // 0xA018A12E5C5C2FA6 0xF3A67AF3 b323
INTERRUPT_CONVERSATION_AND_PAUSE
void AUDIO::INTERRUPT_CONVERSATION_AND_PAUSE(Ped ped, const char* p1, const char* p2) // 0x8A694D7A68F8DC38 0xDD4A3F1F b323
One call found in the b617d scripts: AUDIO::_8A694D7A68F8DC38(NETWORK::NET_TO_PED(l_3989._f26F[0/*1*/]), "CONV_INTERRUPT_QUIT_IT", "LESTER");
_0xAA19F5572C38B564
Any AUDIO::_0xAA19F5572C38B564(Any* p0) // 0xAA19F5572C38B564 0xB58B8FF3 b323
_0xB542DE8C3D1CB210
void AUDIO::_0xB542DE8C3D1CB210(BOOL p0) // 0xB542DE8C3D1CB210 0x789D8C6C b323
REGISTER_SCRIPT_WITH_AUDIO
void AUDIO::REGISTER_SCRIPT_WITH_AUDIO(int p0) // 0xC6ED9D5092438D91 0xA6203643 b323
This native does absolutely nothing, just a nullsub
UNREGISTER_SCRIPT_WITH_AUDIO
void AUDIO::UNREGISTER_SCRIPT_WITH_AUDIO() // 0xA8638BE228D4751A 0x66728EFE b323
This native does absolutely nothing, just a nullsub
REQUEST_MISSION_AUDIO_BANK
BOOL AUDIO::REQUEST_MISSION_AUDIO_BANK(const char* p0, BOOL p1, Any p2) // 0x7345BDD95E62E0F2 0x916E37CA b323
All occurrences and usages found in b617d: pastebin.com/NzZZ2Tmm
REQUEST_AMBIENT_AUDIO_BANK
BOOL AUDIO::REQUEST_AMBIENT_AUDIO_BANK(const char* p0, BOOL p1, Any p2) // 0xFE02FFBED8CA9D99 0x23C88BC7 b323
All occurrences and usages found in b617d, sorted alphabetically and identical lines removed: pastebin.com/XZ1tmGEz
REQUEST_SCRIPT_AUDIO_BANK
BOOL AUDIO::REQUEST_SCRIPT_AUDIO_BANK(const char* p0, BOOL p1, int p2) // 0x2F844A8B08D76685 0x21322887 b323
All occurrences and usages found in b617d, sorted alphabetically and identical lines removed: pastebin.com/AkmDAVn6
_0x40763EA7B9B783E7
Any AUDIO::_0x40763EA7B9B783E7(Any p0, Any p1, Any p2) // 0x40763EA7B9B783E7 b573
HINT_AMBIENT_AUDIO_BANK
Any AUDIO::HINT_AMBIENT_AUDIO_BANK(Any p0, Any p1, Any p2) // 0x8F8C0E370AE62F5C 0xF1850DDC b323
HINT_SCRIPT_AUDIO_BANK
Any AUDIO::HINT_SCRIPT_AUDIO_BANK(Any p0, Any p1, Any p2) // 0xFB380A29641EC31A 0x41FA0E51 b323
RELEASE_MISSION_AUDIO_BANK
void AUDIO::RELEASE_MISSION_AUDIO_BANK() // 0x0EC92A1BF0857187 0x8E8824C7 b323
RELEASE_AMBIENT_AUDIO_BANK
void AUDIO::RELEASE_AMBIENT_AUDIO_BANK() // 0x65475A218FFAA93D 0x8C938784 b323
RELEASE_NAMED_SCRIPT_AUDIO_BANK
void AUDIO::RELEASE_NAMED_SCRIPT_AUDIO_BANK(const char* audioBank) // 0x77ED170667F50170 0x16707ABC b323
RELEASE_SCRIPT_AUDIO_BANK
void AUDIO::RELEASE_SCRIPT_AUDIO_BANK() // 0x7A2D8AD0A9EB9C3F 0x22F865E5 b323
_0x19AF7ED9B9D23058
void AUDIO::_0x19AF7ED9B9D23058() // 0x19AF7ED9B9D23058 0xA58BBF4F b323
_0x9AC92EED5E4793AB
void AUDIO::_0x9AC92EED5E4793AB() // 0x9AC92EED5E4793AB 0xE67446E9 b323
_0x11579D940949C49E
void AUDIO::_0x11579D940949C49E(Any p0) // 0x11579D940949C49E b678
GET_SOUND_ID
int AUDIO::GET_SOUND_ID() // 0x430386FE9BF80B45 0x6AE0AD56 b323
RELEASE_SOUND_ID
void AUDIO::RELEASE_SOUND_ID(int soundId) // 0x353FC880830B88FA 0x9C080899 b323
PLAY_SOUND
void AUDIO::PLAY_SOUND(int soundId, const char* audioName, const char* audioRef, BOOL p3, Any p4, BOOL p5) // 0x7FF4944CC209192D 0xB6E1917F b323
All found occurrences in b617d, sorted alphabetically and identical lines removed: pastebin.com/A8Ny8AHZ Full list of audio / sound names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/soundNames.json
PLAY_SOUND_FRONTEND
void AUDIO::PLAY_SOUND_FRONTEND(int soundId, const char* audioName, const char* audioRef, BOOL p3) // 0x67C540AA08E4A6F5 0x2E458F74 b323
List: https://pastebin.com/DCeRiaLJ All occurrences as of Cayo Perico Heist DLC (b2189), sorted alphabetically and identical lines removed: https://git.io/JtLxM Full list of audio / sound names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/soundNames.json
PLAY_DEFERRED_SOUND_FRONTEND
void AUDIO::PLAY_DEFERRED_SOUND_FRONTEND(const char* soundName, const char* soundsetName) // 0xCADA5A0D0702381E 0xC70E6CFA b323
Only call found in the b617d scripts: AUDIO::PLAY_DEFERRED_SOUND_FRONTEND("BACK", "HUD_FREEMODE_SOUNDSET"); Full list of audio / sound names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/soundNames.json
PLAY_SOUND_FROM_ENTITY
void AUDIO::PLAY_SOUND_FROM_ENTITY(int soundId, const char* audioName, Entity entity, const char* audioRef, BOOL isNetwork, Any p5) // 0xE65F427EB70AB1ED 0x95AE00F8 b323
All found occurrences in b617d, sorted alphabetically and identical lines removed: pastebin.com/f2A7vTj0 No changes made in b678d. gtaforums.com/topic/795622-audio-for-mods Full list of audio / sound names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/soundNames.json
_0x5B9853296731E88D
void AUDIO::_0x5B9853296731E88D(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x5B9853296731E88D b877
PLAY_SOUND_FROM_COORD
void AUDIO::PLAY_SOUND_FROM_COORD(int soundId, const char* audioName, float x, float y, float z, const char* audioRef, BOOL isNetwork, int range, BOOL p8) // 0x8D8686B622B88120 0xCAD3E2D5 b323
All found occurrences in b617d, sorted alphabetically and identical lines removed: pastebin.com/eeFc5DiW gtaforums.com/topic/795622-audio-for-mods Full list of audio / sound names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/soundNames.json
_0x7EC3C679D0E7E46B
void AUDIO::_0x7EC3C679D0E7E46B(Any p0, Any p1, Any p2, Any p3) // 0x7EC3C679D0E7E46B b678
STOP_SOUND
void AUDIO::STOP_SOUND(int soundId) // 0xA3B0C41BA5CC0BB5 0xCD7F4030 b323
GET_NETWORK_ID_FROM_SOUND_ID
int AUDIO::GET_NETWORK_ID_FROM_SOUND_ID(int soundId) // 0x2DE3F0A134FFBC0D 0x2576F610 b323
Could this be used alongside either, SET_NETWORK_ID_EXISTS_ON_ALL_MACHINES or _SET_NETWORK_ID_SYNC_TO_PLAYER to make it so other players can hear the sound while online? It'd be a bit troll-fun to be able to play the Zancudo UFO creepy sounds globally.
GET_SOUND_ID_FROM_NETWORK_ID
int AUDIO::GET_SOUND_ID_FROM_NETWORK_ID(int netId) // 0x75262FD12D0A1C84 0xD064D4DC b323
SET_VARIABLE_ON_SOUND
void AUDIO::SET_VARIABLE_ON_SOUND(int soundId, Any* p1, float p2) // 0xAD6B3148A78AE9B6 0x606EE5FA b323
SET_VARIABLE_ON_STREAM
void AUDIO::SET_VARIABLE_ON_STREAM(const char* p0, float p1) // 0x2F9D3834AEB9EF79 0xF67BB44C b323
From the scripts, p0: "ArmWrestlingIntensity", "INOUT", "Monkey_Stream", "ZoomLevel"
OVERRIDE_UNDERWATER_STREAM
void AUDIO::OVERRIDE_UNDERWATER_STREAM(Any* p0, BOOL p1) // 0xF2A9CDABCEA04BD6 0x9A083B7E b323
SET_VARIABLE_ON_UNDER_WATER_STREAM
void AUDIO::SET_VARIABLE_ON_UNDER_WATER_STREAM(const char* variableName, float value) // 0x733ADF241531E5C2 0x62D026BE b323
AUDIO::SET_VARIABLE_ON_UNDER_WATER_STREAM("inTunnel", 1.0); AUDIO::SET_VARIABLE_ON_UNDER_WATER_STREAM("inTunnel", 0.0);
HAS_SOUND_FINISHED
BOOL AUDIO::HAS_SOUND_FINISHED(int soundId) // 0xFCBDCE714A7C88E5 0xE85AEC2E b323
PLAY_PED_AMBIENT_SPEECH_NATIVE
void AUDIO::PLAY_PED_AMBIENT_SPEECH_NATIVE(Ped ped, const char* speechName, const char* speechParam, Any p3) // 0x8E04FEDD28D42462 0x5C57B85D b323
Plays ambient speech. See also _0x444180DB. ped: The ped to play the ambient speech. speechName: Name of the speech to play, eg. "GENERIC_HI". speechParam: Can be one of the following: SPEECH_PARAMS_STANDARD SPEECH_PARAMS_ALLOW_REPEAT SPEECH_PARAMS_BEAT SPEECH_PARAMS_FORCE SPEECH_PARAMS_FORCE_FRONTEND SPEECH_PARAMS_FORCE_NO_REPEAT_FRONTEND SPEECH_PARAMS_FORCE_NORMAL SPEECH_PARAMS_FORCE_NORMAL_CLEAR SPEECH_PARAMS_FORCE_NORMAL_CRITICAL SPEECH_PARAMS_FORCE_SHOUTED SPEECH_PARAMS_FORCE_SHOUTED_CLEAR SPEECH_PARAMS_FORCE_SHOUTED_CRITICAL SPEECH_PARAMS_FORCE_PRELOAD_ONLY SPEECH_PARAMS_MEGAPHONE SPEECH_PARAMS_HELI SPEECH_PARAMS_FORCE_MEGAPHONE SPEECH_PARAMS_FORCE_HELI SPEECH_PARAMS_INTERRUPT SPEECH_PARAMS_INTERRUPT_SHOUTED SPEECH_PARAMS_INTERRUPT_SHOUTED_CLEAR SPEECH_PARAMS_INTERRUPT_SHOUTED_CRITICAL SPEECH_PARAMS_INTERRUPT_NO_FORCE SPEECH_PARAMS_INTERRUPT_FRONTEND SPEECH_PARAMS_INTERRUPT_NO_FORCE_FRONTEND SPEECH_PARAMS_ADD_BLIP SPEECH_PARAMS_ADD_BLIP_ALLOW_REPEAT SPEECH_PARAMS_ADD_BLIP_FORCE SPEECH_PARAMS_ADD_BLIP_SHOUTED SPEECH_PARAMS_ADD_BLIP_SHOUTED_FORCE SPEECH_PARAMS_ADD_BLIP_INTERRUPT SPEECH_PARAMS_ADD_BLIP_INTERRUPT_FORCE SPEECH_PARAMS_FORCE_PRELOAD_ONLY_SHOUTED SPEECH_PARAMS_FORCE_PRELOAD_ONLY_SHOUTED_CLEAR SPEECH_PARAMS_FORCE_PRELOAD_ONLY_SHOUTED_CRITICAL SPEECH_PARAMS_SHOUTED SPEECH_PARAMS_SHOUTED_CLEAR SPEECH_PARAMS_SHOUTED_CRITICAL Note: A list of Name and Parameters can be found here pastebin.com/1GZS5dCL Full list of speeches and voices names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/speeches.json Old name: _PLAY_AMBIENT_SPEECH1
PLAY_PED_AMBIENT_SPEECH_AND_CLONE_NATIVE
void AUDIO::PLAY_PED_AMBIENT_SPEECH_AND_CLONE_NATIVE(Ped ped, const char* speechName, const char* speechParam, Any p3) // 0xC6941B4A3A8FBBB9 0x444180DB b323
Plays ambient speech. See also _0x5C57B85D. See PLAY_PED_AMBIENT_SPEECH_NATIVE for parameter specifications. Full list of speeches and voices names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/speeches.json
PLAY_PED_AMBIENT_SPEECH_WITH_VOICE_NATIVE
void AUDIO::PLAY_PED_AMBIENT_SPEECH_WITH_VOICE_NATIVE(Ped ped, const char* speechName, const char* voiceName, const char* speechParam, BOOL p4) // 0x3523634255FC3318 0x8386AE28 b323
This is the same as PLAY_PED_AMBIENT_SPEECH_NATIVE and PLAY_PED_AMBIENT_SPEECH_AND_CLONE_NATIVE but it will allow you to play a speech file from a specific voice file. It works on players and all peds, even animals. EX (C#): GTA.Native.Function.Call(Hash._0x3523634255FC3318, Game.Player.Character, "GENERIC_INSULT_HIGH", "s_m_y_sheriff_01_white_full_01", "SPEECH_PARAMS_FORCE_SHOUTED", 0); The first param is the ped you want to play it on, the second is the speech name, the third is the voice name, the fourth is the speech param, and the last param is usually always 0. Full list of speeches and voices names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/speeches.json
PLAY_AMBIENT_SPEECH_FROM_POSITION_NATIVE
void AUDIO::PLAY_AMBIENT_SPEECH_FROM_POSITION_NATIVE(const char* speechName, const char* voiceName, float x, float y, float z, const char* speechParam) // 0xED640017ED337E45 0xA1A1402E b323
Full list of speeches and voices names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/speeches.json
OVERRIDE_TREVOR_RAGE
void AUDIO::OVERRIDE_TREVOR_RAGE(const char* voiceEffect) // 0x13AD665062541A7E 0x05B9B5CF b323
This native enables the audio flag "TrevorRageIsOverridden" and sets the voice effect to `voiceEffect`
RESET_TREVOR_RAGE
void AUDIO::RESET_TREVOR_RAGE() // 0xE78503B10C4314E0 0xE80CF0D4 b323
SET_PLAYER_ANGRY
void AUDIO::SET_PLAYER_ANGRY(Ped ped, BOOL toggle) // 0xEA241BB04110F091 0x782CA58D b323
PLAY_PAIN
void AUDIO::PLAY_PAIN(Ped ped, int painID, int p1, Any p3) // 0xBC9AE166038A5CEC 0x874BD6CB b323
Needs another parameter [int p2]. The signature is PED::PLAY_PAIN(Ped ped, int painID, int p1, int p2); Last 2 parameters always seem to be 0. EX: Function.Call(Hash.PLAY_PAIN, TestPed, 6, 0, 0); Known Pain IDs ________________________ 1 - Doesn't seem to do anything. Does NOT crash the game like previously said. (Latest patch) 6 - Scream (Short) 7 - Scared Scream (Kinda Long) 8 - On Fire
RELEASE_WEAPON_AUDIO
void AUDIO::RELEASE_WEAPON_AUDIO() // 0xCE4AC0439F607045 0x6096504C b323
ACTIVATE_AUDIO_SLOWMO_MODE
void AUDIO::ACTIVATE_AUDIO_SLOWMO_MODE(const char* p0) // 0xD01005D2BA2EB778 0x59A3A17D b323
DEACTIVATE_AUDIO_SLOWMO_MODE
void AUDIO::DEACTIVATE_AUDIO_SLOWMO_MODE(const char* p0) // 0xDDC635D5B3262C56 0x0E387BFE b323
SET_AMBIENT_VOICE_NAME
void AUDIO::SET_AMBIENT_VOICE_NAME(Ped ped, const char* name) // 0x6C8065A3B780185B 0xBD2EA1A1 b323
Audio List gtaforums.com/topic/795622-audio-for-mods/ All found occurrences in b617d, sorted alphabetically and identical lines removed: pastebin.com/FTeAj4yZ Yes
_SET_AMBIENT_VOICE_NAME_HASH
void AUDIO::_SET_AMBIENT_VOICE_NAME_HASH(Ped ped, Hash hash) // 0x9A53DED9921DE990 b463
_GET_AMBIENT_VOICE_NAME_HASH
Hash AUDIO::_GET_AMBIENT_VOICE_NAME_HASH(Ped ped) // 0x5E203DA2BA15D436 b463
_SET_PED_SCREAM
void AUDIO::_SET_PED_SCREAM(Ped ped) // 0x40CF0D12D142A9E8 b323
Assigns some ambient voice to the ped.
_0x1B7ABE26CBCBF8C7
void AUDIO::_0x1B7ABE26CBCBF8C7(Ped ped, Any p1, Any p2) // 0x1B7ABE26CBCBF8C7 b372
_SET_PED_VOICE_GROUP
void AUDIO::_SET_PED_VOICE_GROUP(Ped ped, Hash voiceGroupHash) // 0x7CDC8C3B89F661B3 b323
From the scripts: AUDIO::_SET_PED_VOICE_GROUP(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("PAIGE_PVG")); AUDIO::_SET_PED_VOICE_GROUP(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("TALINA_PVG")); AUDIO::_SET_PED_VOICE_GROUP(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("FEMALE_LOST_BLACK_PVG")); AUDIO::_SET_PED_VOICE_GROUP(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("FEMALE_LOST_WHITE_PVG"));
_SET_PED_AUDIO_GENDER
void AUDIO::_SET_PED_AUDIO_GENDER(Ped ped, BOOL p1) // 0xA5342D390CDA41D6 b323
STOP_CURRENT_PLAYING_SPEECH
void AUDIO::STOP_CURRENT_PLAYING_SPEECH(Ped ped) // 0x7A73D05A607734C7 0x5B7463F4 b323
STOP_CURRENT_PLAYING_AMBIENT_SPEECH
void AUDIO::STOP_CURRENT_PLAYING_AMBIENT_SPEECH(Ped ped) // 0xB8BEC0CA6F0EDB0F 0xBB8E64BF b323
IS_AMBIENT_SPEECH_PLAYING
BOOL AUDIO::IS_AMBIENT_SPEECH_PLAYING(Ped ped) // 0x9072C8B49907BFAD 0x1972E8AA b323
IS_SCRIPTED_SPEECH_PLAYING
BOOL AUDIO::IS_SCRIPTED_SPEECH_PLAYING(Any p0) // 0xCC9AA18DCC7084F4 0x2C653904 b323
IS_ANY_SPEECH_PLAYING
BOOL AUDIO::IS_ANY_SPEECH_PLAYING(Ped ped) // 0x729072355FA39EC9 0x2B74A6D6 b323
_0x30CA2EF91D15ADF8
Any AUDIO::_0x30CA2EF91D15ADF8() // 0x30CA2EF91D15ADF8 b2189
_CAN_PED_SPEAK
BOOL AUDIO::_CAN_PED_SPEAK(Ped ped, const char* speechName, BOOL unk) // 0x49B99BF3FDA89A7A 0x8BD5F11E b323
Checks if the ped can play the speech or has the speech file, last parameter is usually 0 DOES_C*
IS_PED_IN_CURRENT_CONVERSATION
BOOL AUDIO::IS_PED_IN_CURRENT_CONVERSATION(Ped ped) // 0x049E937F18F4020C 0x7B2F0743 b323
SET_PED_IS_DRUNK
void AUDIO::SET_PED_IS_DRUNK(Ped ped, BOOL toggle) // 0x95D2D383D5396B8A 0xD2EA77A3 b323
Sets the ped drunk sounds. Only works with PLAYER_PED_ID ==================================================== As mentioned above, this only sets the drunk sound to ped/player. To give the Ped a drunk effect with drunk walking animation try using SET_PED_MOVEMENT_CLIPSET Below is an example if (!Function.Call<bool>(Hash.HAS_ANIM_SET_LOADED, "move_m@drunk@verydrunk")) { Function.Call(Hash.REQUEST_ANIM_SET, "move_m@drunk@verydrunk"); } Function.Call(Hash.SET_PED_MOVEMENT_CLIPSET, Ped.Handle, "move_m@drunk@verydrunk", 0x3E800000); And to stop the effect use RESET_PED_MOVEMENT_CLIPSET
PLAY_ANIMAL_VOCALIZATION
void AUDIO::PLAY_ANIMAL_VOCALIZATION(Ped pedHandle, int p1, const char* speechName) // 0xEE066C7006C49C0A 0x498849F3 b323
Plays sounds from a ped with chop model. For example it used to play bark or sniff sounds. p1 is always 3 or 4294967295 in decompiled scripts. By a quick disassembling I can assume that this arg is unused. This native is works only when you call it on the ped with right model (ac_chop only ?) Speech Name can be: CHOP_SNIFF_SEQ CHOP_WHINE CHOP_LICKS_MOUTH CHOP_PANT bark GROWL SNARL BARK_SEQ
IS_ANIMAL_VOCALIZATION_PLAYING
BOOL AUDIO::IS_ANIMAL_VOCALIZATION_PLAYING(Ped pedHandle) // 0xC265DF9FB44A9FBD 0x0CBAF2EF b323
SET_ANIMAL_MOOD
void AUDIO::SET_ANIMAL_MOOD(Ped animal, int mood) // 0xCC97B29285B1DC3B 0x3EA7C6CB b323
mood can be 0 or 1 (it's not a boolean value!). Effects audio of the animal.
IS_MOBILE_PHONE_RADIO_ACTIVE
BOOL AUDIO::IS_MOBILE_PHONE_RADIO_ACTIVE() // 0xB35CE999E8EF317E 0x6E502A5B b323
SET_MOBILE_PHONE_RADIO_STATE
void AUDIO::SET_MOBILE_PHONE_RADIO_STATE(BOOL state) // 0xBF286C554784F3DF 0xE1E0ED34 b323
GET_PLAYER_RADIO_STATION_INDEX
int AUDIO::GET_PLAYER_RADIO_STATION_INDEX() // 0xE8AF77C4C06ADC93 0x1C4946AC b323
Returns 255 (radio off index) if the function fails.
GET_PLAYER_RADIO_STATION_NAME
const char* AUDIO::GET_PLAYER_RADIO_STATION_NAME() // 0xF6D733C32076AD03 0xD909C107 b323
Returns active radio station name
GET_RADIO_STATION_NAME
const char* AUDIO::GET_RADIO_STATION_NAME(int radioStation) // 0xB28ECA15046CA8B9 0x3DF493BC b323
Returns String with radio station name.
GET_PLAYER_RADIO_STATION_GENRE
int AUDIO::GET_PLAYER_RADIO_STATION_GENRE() // 0xA571991A7FE6CCEB 0x872CF0EA b323
IS_RADIO_RETUNING
BOOL AUDIO::IS_RADIO_RETUNING() // 0xA151A7394A214E65 0xCF29097B b323
IS_RADIO_FADED_OUT
BOOL AUDIO::IS_RADIO_FADED_OUT() // 0x0626A247D2405330 0x815CAE99 b323
_0xFF266D1D0EB1195D
void AUDIO::_0xFF266D1D0EB1195D() // 0xFF266D1D0EB1195D 0x53DB6994 b323
Tune Forward... ? SET_RADIO_*
_0xDD6BCF9E94425DF9
void AUDIO::_0xDD6BCF9E94425DF9() // 0xDD6BCF9E94425DF9 0xD70ECC80 b323
Tune Backwards... ? SET_RADIO_*
SET_RADIO_TO_STATION_NAME
void AUDIO::SET_RADIO_TO_STATION_NAME(const char* stationName) // 0xC69EDA28699D5107 0x7B36E35E b323
For a full list, see here: pastebin.com/Kj9t38KF
SET_VEH_RADIO_STATION
void AUDIO::SET_VEH_RADIO_STATION(Vehicle vehicle, const char* radioStation) // 0x1B9C0099CB942AC6 0xE391F55F b323
For a full list, see here: pastebin.com/Kj9t38KF
_0x0BE4BE946463F917
BOOL AUDIO::_0x0BE4BE946463F917(Vehicle vehicle) // 0x0BE4BE946463F917 b505
IS_VEHICLE_*
_0xC1805D05E6D4FE10
void AUDIO::_0xC1805D05E6D4FE10(Vehicle vehicle) // 0xC1805D05E6D4FE10 0x7ABB89D2 b323
SET_VEH*
SET_EMITTER_RADIO_STATION
void AUDIO::SET_EMITTER_RADIO_STATION(const char* emitterName, const char* radioStation) // 0xACF57305B12AF907 0x87431585 b323
Full list of static emitters by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/staticEmitters.json
SET_STATIC_EMITTER_ENABLED
void AUDIO::SET_STATIC_EMITTER_ENABLED(const char* emitterName, BOOL toggle) // 0x399D2D3B33F1B8EB 0x91F72E92 b323
Example: AUDIO::SET_STATIC_EMITTER_ENABLED((Any*)"LOS_SANTOS_VANILLA_UNICORN_01_STAGE", false); AUDIO::SET_STATIC_EMITTER_ENABLED((Any*)"LOS_SANTOS_VANILLA_UNICORN_02_MAIN_ROOM", false); AUDIO::SET_STATIC_EMITTER_ENABLED((Any*)"LOS_SANTOS_VANILLA_UNICORN_03_BACK_ROOM", false); This turns off surrounding sounds not connected directly to peds. Full list of static emitters by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/staticEmitters.json
_LINK_STATIC_EMITTER_TO_ENTITY
void AUDIO::_LINK_STATIC_EMITTER_TO_ENTITY(const char* emitterName, Entity entity) // 0x651D3228960D08AF b505
L* (LINK_*?) Full list of static emitters by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/staticEmitters.json
SET_RADIO_TO_STATION_INDEX
void AUDIO::SET_RADIO_TO_STATION_INDEX(int radioStation) // 0xA619B168B8A8570F 0x1D82766D b323
Sets radio station by index.
SET_FRONTEND_RADIO_ACTIVE
void AUDIO::SET_FRONTEND_RADIO_ACTIVE(BOOL active) // 0xF7F26C6E9CC9EBB8 0xB1172075 b323
UNLOCK_MISSION_NEWS_STORY
void AUDIO::UNLOCK_MISSION_NEWS_STORY(int newsStory) // 0xB165AB7C248B2DC1 0xCCD9ABE4 b323
I see this as a native that would of been used back in GTA III when you finally unlocked the bridge to the next island and such.
IS_MISSION_NEWS_STORY_UNLOCKED
BOOL AUDIO::IS_MISSION_NEWS_STORY_UNLOCKED(int newsStory) // 0x66E49BF55B4B1874 0x27305D37 b323
GET_AUDIBLE_MUSIC_TRACK_TEXT_ID
int AUDIO::GET_AUDIBLE_MUSIC_TRACK_TEXT_ID() // 0x50B196FC9ED6545B 0xA2B88CA7 b323
PLAY_END_CREDITS_MUSIC
void AUDIO::PLAY_END_CREDITS_MUSIC(BOOL play) // 0xCD536C4D33DCC900 0x8E88B3CC b323
SKIP_RADIO_FORWARD
void AUDIO::SKIP_RADIO_FORWARD() // 0x6DDBBDD98E2E9C25 0x10D36630 b323
FREEZE_RADIO_STATION
void AUDIO::FREEZE_RADIO_STATION(const char* radioStation) // 0x344F393B027E38C3 0x286BF543 b323
UNFREEZE_RADIO_STATION
void AUDIO::UNFREEZE_RADIO_STATION(const char* radioStation) // 0xFC00454CF60B91DD 0x4D46202C b323
SET_RADIO_AUTO_UNFREEZE
void AUDIO::SET_RADIO_AUTO_UNFREEZE(BOOL toggle) // 0xC1AA9F53CE982990 0xA40196BF b323
SET_INITIAL_PLAYER_STATION
void AUDIO::SET_INITIAL_PLAYER_STATION(const char* radioStation) // 0x88795F13FACDA88D 0x9B069233 b323
SET_USER_RADIO_CONTROL_ENABLED
void AUDIO::SET_USER_RADIO_CONTROL_ENABLED(BOOL toggle) // 0x19F21E63AE6EAE4E 0x52E054CE b323
SET_RADIO_TRACK
void AUDIO::SET_RADIO_TRACK(const char* radioStation, const char* radioTrack) // 0xB39786F201FEE30B 0x76E96212 b323
Only found this one in the decompiled scripts: AUDIO::SET_RADIO_TRACK("RADIO_03_HIPHOP_NEW", "ARM1_RADIO_STARTS");
_SET_RADIO_TRACK_MIX
void AUDIO::_SET_RADIO_TRACK_MIX(const char* radioStationName, const char* mixName, int p2) // 0x2CB0075110BE1E56 b1493
_0x55ECF4D13D9903B0
void AUDIO::_0x55ECF4D13D9903B0(Any p0, Any p1, Any p2, Any p3) // 0x55ECF4D13D9903B0 b1868
SET_VEHICLE_RADIO_LOUD
void AUDIO::SET_VEHICLE_RADIO_LOUD(Vehicle vehicle, BOOL toggle) // 0xBB6F1CAEC68B0BCE 0x8D9EDD99 b323
_IS_VEHICLE_RADIO_LOUD
BOOL AUDIO::_IS_VEHICLE_RADIO_LOUD(Vehicle vehicle) // 0x032A116663A4D5AC 0xCBA99F4A b323
SET_MOBILE_RADIO_ENABLED_DURING_GAMEPLAY
void AUDIO::SET_MOBILE_RADIO_ENABLED_DURING_GAMEPLAY(BOOL toggle) // 0x1098355A16064BB3 0x990085F0 b323
DOES_PLAYER_VEH_HAVE_RADIO
BOOL AUDIO::DOES_PLAYER_VEH_HAVE_RADIO() // 0x109697E2FFBAC8A1 0x46B0C696 b323
IS_PLAYER_VEH_RADIO_ENABLE
BOOL AUDIO::IS_PLAYER_VEH_RADIO_ENABLE() // 0x5F43D83FD6738741 0x2A3E5E8B b323
SET_VEHICLE_RADIO_ENABLED
void AUDIO::SET_VEHICLE_RADIO_ENABLED(Vehicle vehicle, BOOL toggle) // 0x3B988190C0AA6C0B 0x6F812CAB b323
can't seem to enable radio on cop cars etc
_0xDA07819E452FFE8F
void AUDIO::_0xDA07819E452FFE8F(Any p0) // 0xDA07819E452FFE8F b505
SET_CUSTOM_RADIO_TRACK_LIST
void AUDIO::SET_CUSTOM_RADIO_TRACK_LIST(const char* radioStation, const char* trackListName, BOOL p2) // 0x4E404A9361F75BB2 0x128C3873 b323
Examples: AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_01_CLASS_ROCK", "END_CREDITS_KILL_MICHAEL", 1); AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_01_CLASS_ROCK", "END_CREDITS_KILL_MICHAEL", 1); AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_01_CLASS_ROCK", "END_CREDITS_KILL_TREVOR", 1); AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_01_CLASS_ROCK", "END_CREDITS_SAVE_MICHAEL_TREVOR", 1); AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_01_CLASS_ROCK", "OFF_ROAD_RADIO_ROCK_LIST", 1); AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_06_COUNTRY", "MAGDEMO2_RADIO_DINGHY", 1); AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_16_SILVERLAKE", "SEA_RACE_RADIO_PLAYLIST", 1); AUDIO::SET_CUSTOM_RADIO_TRACK_LIST("RADIO_01_CLASS_ROCK", "OFF_ROAD_RADIO_ROCK_LIST", 1);
CLEAR_CUSTOM_RADIO_TRACK_LIST
void AUDIO::CLEAR_CUSTOM_RADIO_TRACK_LIST(const char* radioStation) // 0x1654F24A88A8E3FE 0x1D766976 b323
3 calls in the b617d scripts, removed duplicate. AUDIO::CLEAR_CUSTOM_RADIO_TRACK_LIST("RADIO_16_SILVERLAKE"); AUDIO::CLEAR_CUSTOM_RADIO_TRACK_LIST("RADIO_01_CLASS_ROCK");
GET_NUM_UNLOCKED_RADIO_STATIONS
int AUDIO::GET_NUM_UNLOCKED_RADIO_STATIONS() // 0xF1620ECB50E01DE7 0xCC91FCF5 b323
FIND_RADIO_STATION_INDEX
int AUDIO::FIND_RADIO_STATION_INDEX(int station) // 0x8D67489793FF428B 0xECA1512F b323
SET_RADIO_STATION_MUSIC_ONLY
void AUDIO::SET_RADIO_STATION_MUSIC_ONLY(const char* radioStation, BOOL toggle) // 0x774BD811F656A122 0xB1FF7137 b323
6 calls in the b617d scripts, removed identical lines: AUDIO::SET_RADIO_STATION_MUSIC_ONLY("RADIO_01_CLASS_ROCK", 1); AUDIO::SET_RADIO_STATION_MUSIC_ONLY(AUDIO::GET_RADIO_STATION_NAME(10), 0); AUDIO::SET_RADIO_STATION_MUSIC_ONLY(AUDIO::GET_RADIO_STATION_NAME(10), 1);
SET_RADIO_FRONTEND_FADE_TIME
void AUDIO::SET_RADIO_FRONTEND_FADE_TIME(float fadeTime) // 0x2C96CDB04FCA358E 0xC8B514E2 b323
UNLOCK_RADIO_STATION_TRACK_LIST
void AUDIO::UNLOCK_RADIO_STATION_TRACK_LIST(const char* radioStation, const char* trackListName) // 0x031ACB6ABA18C729 0xBE998184 b323
AUDIO::UNLOCK_RADIO_STATION_TRACK_LIST("RADIO_16_SILVERLAKE", "MIRRORPARK_LOCKED");
_UPDATE_LSUR
void AUDIO::_UPDATE_LSUR(BOOL enableMixes) // 0x47AED84213A47510 b1493
Just a nullsub (i.e. does absolutely nothing) since build 1604.
_LOCK_RADIO_STATION
void AUDIO::_LOCK_RADIO_STATION(const char* radioStationName, BOOL toggle) // 0x477D9DB48F889591 b1493
Disables the radio station (hides it from the radio wheel).
_0xC64A06D939F826F5
BOOL AUDIO::_0xC64A06D939F826F5(float* p0, float* p1, int* p2) // 0xC64A06D939F826F5 b1493
GET_NE* Gets values from the radio?
_GET_CURRENT_RADIO_STATION_HASH
int AUDIO::_GET_CURRENT_RADIO_STATION_HASH(const char* radioStationName) // 0x3E65CDE5215832C1 b1493
GET_CURRENT_* Seems to return hashed radio station name?
_0x34D66BC058019CE0
Hash AUDIO::_0x34D66BC058019CE0(const char* radioStationName) // 0x34D66BC058019CE0 b1493
GET_CURRENT_*
_0xF3365489E0DD50F9
void AUDIO::_0xF3365489E0DD50F9(Vehicle vehicle, BOOL toggle) // 0xF3365489E0DD50F9 0x8AFC488D b323
SET_VEHICLE_*
SET_AMBIENT_ZONE_STATE
void AUDIO::SET_AMBIENT_ZONE_STATE(const char* zoneName, BOOL p1, BOOL p2) // 0xBDA07E5950085E46 0x2849CAC9 b323
Full list of ambient zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ambientZones.json
CLEAR_AMBIENT_ZONE_STATE
void AUDIO::CLEAR_AMBIENT_ZONE_STATE(const char* zoneName, BOOL p1) // 0x218DD44AAAC964FF 0xCDFF3C82 b323
This function also has a p2, unknown. Signature AUDIO::CLEAR_AMBIENT_ZONE_STATE(const char* zoneName, bool p1, Any p2); Still needs more research. Full list of ambient zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ambientZones.json
SET_AMBIENT_ZONE_LIST_STATE
void AUDIO::SET_AMBIENT_ZONE_LIST_STATE(Any* p0, BOOL p1, BOOL p2) // 0x9748FA4DE50CCE3E 0xBF80B412 b323
CLEAR_AMBIENT_ZONE_LIST_STATE
void AUDIO::CLEAR_AMBIENT_ZONE_LIST_STATE(Any* p0, BOOL p1) // 0x120C48C614909FA4 0x38B9B8D4 b323
SET_AMBIENT_ZONE_STATE_PERSISTENT
void AUDIO::SET_AMBIENT_ZONE_STATE_PERSISTENT(const char* ambientZone, BOOL p1, BOOL p2) // 0x1D6650420CEC9D3B 0xC1FFB672 b323
Full list of ambient zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ambientZones.json
SET_AMBIENT_ZONE_LIST_STATE_PERSISTENT
void AUDIO::SET_AMBIENT_ZONE_LIST_STATE_PERSISTENT(const char* ambientZone, BOOL p1, BOOL p2) // 0xF3638DAE8C4045E1 0x5F5A2605 b323
Full list of ambient zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ambientZones.json
IS_AMBIENT_ZONE_ENABLED
BOOL AUDIO::IS_AMBIENT_ZONE_ENABLED(const char* ambientZone) // 0x01E2817A479A7F9B 0xBFABD872 b323
Full list of ambient zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ambientZones.json
_0x5D2BFAAB8D956E0E
void AUDIO::_0x5D2BFAAB8D956E0E() // 0x5D2BFAAB8D956E0E b573
SET_CUTSCENE_AUDIO_OVERRIDE
void AUDIO::SET_CUTSCENE_AUDIO_OVERRIDE(const char* name) // 0x3B4BF5F0859204D9 0xCE1332B7 b323
All occurrences found in b617d, sorted alphabetically and identical lines removed: AUDIO::SET_CUTSCENE_AUDIO_OVERRIDE("_AK"); AUDIO::SET_CUTSCENE_AUDIO_OVERRIDE("_CUSTOM"); AUDIO::SET_CUTSCENE_AUDIO_OVERRIDE("_TOOTHLESS");
_SET_VARIABLE_ON_CUTSCENE_AUDIO
void AUDIO::_SET_VARIABLE_ON_CUTSCENE_AUDIO(const char* variableName, float value) // 0xBCC29F935ED07688 0xD63CF33A b323
SET_VARIABLE_ON_*
PLAY_POLICE_REPORT
int AUDIO::PLAY_POLICE_REPORT(const char* name, float p1) // 0xDFEBD56D9BD1EB16 0x3F277B62 b323
Plays the given police radio message. All found occurrences in b617d, sorted alphabetically and identical lines removed: pastebin.com/GBnsQ5hr
_CANCEL_CURRENT_POLICE_REPORT
void AUDIO::_CANCEL_CURRENT_POLICE_REPORT() // 0xB4F90FAF7670B16F b323
BLIP_SIREN
void AUDIO::BLIP_SIREN(Vehicle vehicle) // 0x1B9025BDA76822B6 0xC0EB6924 b323
Plays the siren sound of a vehicle which is otherwise activated when fastly double-pressing the horn key. Only works on vehicles with a police siren.
OVERRIDE_VEH_HORN
void AUDIO::OVERRIDE_VEH_HORN(Vehicle vehicle, BOOL override, int hornHash) // 0x3CDC1E622CCE0356 0x2ACAB783 b323
Overrides the vehicle's horn hash. When changing this hash on a vehicle, it will not return the 'overwritten' hash. It will still always return the default horn hash (same as GET_VEHICLE_DEFAULT_HORN) vehicle - the vehicle whose horn should be overwritten mute - p1 seems to be an option for muting the horn p2 - maybe a horn id, since the function AUDIO::GET_VEHICLE_DEFAULT_HORN(veh) exists?
IS_HORN_ACTIVE
BOOL AUDIO::IS_HORN_ACTIVE(Vehicle vehicle) // 0x9D6BFC12B05C6121 0x20E2BDD0 b323
Checks whether the horn of a vehicle is currently played.
SET_AGGRESSIVE_HORNS
void AUDIO::SET_AGGRESSIVE_HORNS(BOOL toggle) // 0x395BF71085D1B1D9 0x01D6EABE b323
Makes pedestrians sound their horn longer, faster and more agressive when they use their horn.
_0x02E93C796ABD3A97
void AUDIO::_0x02E93C796ABD3A97(BOOL p0) // 0x02E93C796ABD3A97 0x3C395AEE b323
Does nothing (it's a nullsub).
_0x58BB377BEC7CD5F4
void AUDIO::_0x58BB377BEC7CD5F4(BOOL p0, BOOL p1) // 0x58BB377BEC7CD5F4 0x8CE63FA1 b323
_0x9BD7BD55E4533183
void AUDIO::_0x9BD7BD55E4533183(Any p0, Any p1, Any p2) // 0x9BD7BD55E4533183 b1290
IS_STREAM_PLAYING
BOOL AUDIO::IS_STREAM_PLAYING() // 0xD11FA52EB849D978 0xF1F51A14 b323
GET_STREAM_PLAY_TIME
int AUDIO::GET_STREAM_PLAY_TIME() // 0x4E72BBDBCA58A3DB 0xB4F0AD56 b323
LOAD_STREAM
BOOL AUDIO::LOAD_STREAM(const char* streamName, const char* soundSet) // 0x1F1F957154EC51DF 0x0D89599D b323
Example: AUDIO::LOAD_STREAM("CAR_STEAL_1_PASSBY", "CAR_STEAL_1_SOUNDSET"); All found occurrences in the b678d decompiled scripts: pastebin.com/3rma6w5w Stream names often ends with "_MASTER", "_SMALL" or "_STREAM". Also "_IN", "_OUT" and numbers. soundSet is often set to 0 in the scripts. These are common to end the soundSets: "_SOUNDS", "_SOUNDSET" and numbers. Full list of audio / sound names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/soundNames.json
LOAD_STREAM_WITH_START_OFFSET
BOOL AUDIO::LOAD_STREAM_WITH_START_OFFSET(const char* streamName, int startOffset, const char* soundSet) // 0x59C16B79F53B3712 0xE5B5745C b323
Example: AUDIO::LOAD_STREAM_WITH_START_OFFSET("STASH_TOXIN_STREAM", 2400, "FBI_05_SOUNDS"); Only called a few times in the scripts. Full list of audio / sound names by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/soundNames.json
PLAY_STREAM_FROM_PED
void AUDIO::PLAY_STREAM_FROM_PED(Ped ped) // 0x89049DD63C08B5D1 0xA1D7FABE b323
PLAY_STREAM_FROM_VEHICLE
void AUDIO::PLAY_STREAM_FROM_VEHICLE(Vehicle vehicle) // 0xB70374A758007DFA 0xF8E4BDA2 b323
PLAY_STREAM_FROM_OBJECT
void AUDIO::PLAY_STREAM_FROM_OBJECT(Object object) // 0xEBAA9B64D76356FD 0xC5266BF7 b323
Used with AUDIO::LOAD_STREAM Example from finale_heist2b.c4: TASK::TASK_SYNCHRONIZED_SCENE(l_4C8[2/*14*/], l_4C8[2/*14*/]._f7, l_30A, "push_out_vault_l", 4.0, -1.5, 5, 713, 4.0, 0); PED::SET_SYNCHRONIZED_SCENE_PHASE(l_4C8[2/*14*/]._f7, 0.0); PED::_2208438012482A1A(l_4C8[2/*14*/], 0, 0); PED::SET_PED_COMBAT_ATTRIBUTES(l_4C8[2/*14*/], 38, 1); PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(l_4C8[2/*14*/], 1); if (AUDIO::LOAD_STREAM("Gold_Cart_Push_Anim_01", "BIG_SCORE_3B_SOUNDS")) { AUDIO::PLAY_STREAM_FROM_OBJECT(l_36F[0/*1*/]); }
PLAY_STREAM_FRONTEND
void AUDIO::PLAY_STREAM_FRONTEND() // 0x58FCE43488F9F5F4 0x2C2A16BC b323
PLAY_STREAM_FROM_POSITION
void AUDIO::PLAY_STREAM_FROM_POSITION(float x, float y, float z) // 0x21442F412E8DE56B 0x6FE5D865 b323
STOP_STREAM
void AUDIO::STOP_STREAM() // 0xA4718A1419D18151 0xD1E364DE b323
STOP_PED_SPEAKING
void AUDIO::STOP_PED_SPEAKING(Ped ped, BOOL shaking) // 0x9D64D7405520E3D3 0xFF92B49D b323
_0xF8AD2EED7C47E8FE
void AUDIO::_0xF8AD2EED7C47E8FE(Ped ped, BOOL p1, BOOL p2) // 0xF8AD2EED7C47E8FE b1734
BL*
_0xAB6781A5F3101470
void AUDIO::_0xAB6781A5F3101470(Any p0, Any p1) // 0xAB6781A5F3101470 b1868
DISABLE_PED_PAIN_AUDIO
void AUDIO::DISABLE_PED_PAIN_AUDIO(Ped ped, BOOL toggle) // 0xA9A41C1E940FB0E8 0x3B8E2D5F b323
IS_AMBIENT_SPEECH_DISABLED
BOOL AUDIO::IS_AMBIENT_SPEECH_DISABLED(Ped ped) // 0x932C2D096A2C3FFF 0x109D1F89 b323
Common in the scripts: AUDIO::IS_AMBIENT_SPEECH_DISABLED(PLAYER::PLAYER_PED_ID());
_0xA8A7D434AFB4B97B
void AUDIO::_0xA8A7D434AFB4B97B(const char* p0, int p1) // 0xA8A7D434AFB4B97B b1493
_0x2ACABED337622DF2
void AUDIO::_0x2ACABED337622DF2(const char* p0) // 0x2ACABED337622DF2 b1493
SET_SIREN_WITH_NO_DRIVER
void AUDIO::SET_SIREN_WITH_NO_DRIVER(Vehicle vehicle, BOOL toggle) // 0x1FEF0683B96EBCF2 0x77182D58 b323
_TRIGGER_SIREN
void AUDIO::_TRIGGER_SIREN(Vehicle vehicle) // 0x66C3FB05206041BA b1290
_SOUND_VEHICLE_HORN_THIS_FRAME
void AUDIO::_SOUND_VEHICLE_HORN_THIS_FRAME(Vehicle vehicle) // 0x9C11908013EA4715 0xDE8BA3CD b323
SET_*
SET_HORN_ENABLED
void AUDIO::SET_HORN_ENABLED(Vehicle vehicle, BOOL toggle) // 0x76D683C108594D0E 0x6EB92D05 b323
SET_AUDIO_VEHICLE_PRIORITY
void AUDIO::SET_AUDIO_VEHICLE_PRIORITY(Vehicle vehicle, Any p1) // 0xE5564483E407F914 0x271A9766 b323
_0x9D3AF56E94C9AE98
void AUDIO::_0x9D3AF56E94C9AE98(Vehicle vehicle, float p1) // 0x9D3AF56E94C9AE98 0x2F0A16D1 b323
SET_H*
USE_SIREN_AS_HORN
void AUDIO::USE_SIREN_AS_HORN(Vehicle vehicle, BOOL toggle) // 0xFA932DE350266EF8 0xC6BC16F3 b323
_FORCE_VEHICLE_ENGINE_AUDIO
void AUDIO::_FORCE_VEHICLE_ENGINE_AUDIO(Vehicle vehicle, const char* audioName) // 0x4F0C413926060B38 0x33B0B007 b323
This native sets the audio of the specified vehicle to the audioName (p1). Use the audioNameHash found in vehicles.meta Example: _SET_VEHICLE_AUDIO(veh, "ADDER"); The selected vehicle will now have the audio of the Adder. FORCE_VEHICLE_???
_PRELOAD_VEHICLE_AUDIO
void AUDIO::_PRELOAD_VEHICLE_AUDIO(Hash vehicleModel) // 0xCA4CEA6AE0000A7E b1180
_0xF1F8157B8C3F171C
void AUDIO::_0xF1F8157B8C3F171C(Vehicle vehicle, const char* p1, const char* p2) // 0xF1F8157B8C3F171C 0x1C0C5E4C b323
2 calls found in the b617d scripts: AUDIO::_F1F8157B8C3F171C(l_A42, "Franklin_Bike_Rev", "BIG_SCORE_3A_SOUNDS"); AUDIO::_F1F8157B8C3F171C(l_166, "Trevor_Revs_Off", "PALETO_SCORE_SETUP_SOUNDS");
_0xD2DCCD8E16E20997
void AUDIO::_0xD2DCCD8E16E20997(Any p0) // 0xD2DCCD8E16E20997 b323
_0x5DB8010EE71FDEF2
BOOL AUDIO::_0x5DB8010EE71FDEF2(Vehicle vehicle) // 0x5DB8010EE71FDEF2 0x6E660D3F b323
SET_VEHICLE_AUDIO_ENGINE_DAMAGE_FACTOR
void AUDIO::SET_VEHICLE_AUDIO_ENGINE_DAMAGE_FACTOR(Vehicle vehicle, float damageFactor) // 0x59E7B488451F4D3A 0x23BE6432 b323
SET_VEHICLE_AUDIO_BODY_DAMAGE_FACTOR
void AUDIO::SET_VEHICLE_AUDIO_BODY_DAMAGE_FACTOR(Vehicle vehicle, float p1) // 0x01BB4D577D38BD9E 0xE81FAC68 b323
_0x1C073274E065C6D2
void AUDIO::_0x1C073274E065C6D2(Vehicle vehicle, BOOL toggle) // 0x1C073274E065C6D2 0x9365E042 b323
ENABLE_VEHICLE_*
ENABLE_VEHICLE_EXHAUST_POPS
void AUDIO::ENABLE_VEHICLE_EXHAUST_POPS(Vehicle vehicle, BOOL toggle) // 0x2BE4BC731D039D5A 0x2A60A90E b323
SET_VEHICLE_BOOST_ACTIVE
void AUDIO::SET_VEHICLE_BOOST_ACTIVE(Vehicle vehicle, BOOL toggle) // 0x4A04DE7CAB2739A1 0x072F15F2 b323
SET_VEHICLE_BOOST_ACTIVE(vehicle, 1, 0); SET_VEHICLE_BOOST_ACTIVE(vehicle, 0, 0); Will give a boost-soundeffect.
_0x6FDDAD856E36988A
void AUDIO::_0x6FDDAD856E36988A(Vehicle vehicle, BOOL toggle) // 0x6FDDAD856E36988A 0x934BE749 b323
SET_P*
SET_SCRIPT_UPDATE_DOOR_AUDIO
void AUDIO::SET_SCRIPT_UPDATE_DOOR_AUDIO(Hash doorHash, BOOL toggle) // 0x06C0023BED16DD6B 0xE61110A2 b323
PLAY_VEHICLE_DOOR_OPEN_SOUND
void AUDIO::PLAY_VEHICLE_DOOR_OPEN_SOUND(Vehicle vehicle, int doorIndex) // 0x3A539D52857EA82D 0x84930330 b323
PLAY_VEHICLE_DOOR_CLOSE_SOUND
void AUDIO::PLAY_VEHICLE_DOOR_CLOSE_SOUND(Vehicle vehicle, int doorIndex) // 0x62A456AA4769EF34 0xBA2CF407 b323
ENABLE_STALL_WARNING_SOUNDS
void AUDIO::ENABLE_STALL_WARNING_SOUNDS(Vehicle vehicle, BOOL toggle) // 0xC15907D667F7CFB2 0x563B635D b323
Works for planes only.
IS_GAME_IN_CONTROL_OF_MUSIC
BOOL AUDIO::IS_GAME_IN_CONTROL_OF_MUSIC() // 0x6D28DC1671E334FD 0x7643170D b323
Hardcoded to return 1
SET_GPS_ACTIVE
void AUDIO::SET_GPS_ACTIVE(BOOL active) // 0x3BD3F52BA9B1E4E8 0x0FC3379A b323
PLAY_MISSION_COMPLETE_AUDIO
void AUDIO::PLAY_MISSION_COMPLETE_AUDIO(const char* audioName) // 0xB138AAB8A70D3C69 0x3033EA1D b323
Called 38 times in the scripts. There are 5 different audioNames used. One unknown removed below. AUDIO::PLAY_MISSION_COMPLETE_AUDIO("DEAD"); AUDIO::PLAY_MISSION_COMPLETE_AUDIO("FRANKLIN_BIG_01"); AUDIO::PLAY_MISSION_COMPLETE_AUDIO("GENERIC_FAILED"); AUDIO::PLAY_MISSION_COMPLETE_AUDIO("TREVOR_SMALL_01");
IS_MISSION_COMPLETE_PLAYING
BOOL AUDIO::IS_MISSION_COMPLETE_PLAYING() // 0x19A30C23F5827F8A 0x939982A1 b323
IS_MISSION_COMPLETE_READY_FOR_UI
BOOL AUDIO::IS_MISSION_COMPLETE_READY_FOR_UI() // 0x6F259F82D873B8B8 0xCBE09AEC b323
BLOCK_DEATH_JINGLE
void AUDIO::BLOCK_DEATH_JINGLE(BOOL toggle) // 0xF154B8D1775B2DEC 0xD2858D8A b323
START_AUDIO_SCENE
BOOL AUDIO::START_AUDIO_SCENE(const char* scene) // 0x013A80FC08F6E4F2 0xE48D757B b323
Used to prepare a scene where the surrounding sound is muted or a bit changed. This does not play any sound. List of all usable scene names found in b617d. Sorted alphabetically and identical names removed: pastebin.com/MtM9N9CC
STOP_AUDIO_SCENE
void AUDIO::STOP_AUDIO_SCENE(const char* scene) // 0xDFE8422B3B94E688 0xA08D8C58 b323
STOP_AUDIO_SCENES
void AUDIO::STOP_AUDIO_SCENES() // 0xBAC7FC81A75EC1A1 0xF6C7342A b323
??
IS_AUDIO_SCENE_ACTIVE
BOOL AUDIO::IS_AUDIO_SCENE_ACTIVE(const char* scene) // 0xB65B60556E2A9225 0xACBED05C b323
SET_AUDIO_SCENE_VARIABLE
void AUDIO::SET_AUDIO_SCENE_VARIABLE(const char* scene, const char* variable, float value) // 0xEF21A9EF089A2668 0x19BB3CE8 b323
SET_AUDIO_SCRIPT_CLEANUP_TIME
void AUDIO::SET_AUDIO_SCRIPT_CLEANUP_TIME(int time) // 0xA5F377B175A699C5 0xE812925D b323
ADD_ENTITY_TO_AUDIO_MIX_GROUP
void AUDIO::ADD_ENTITY_TO_AUDIO_MIX_GROUP(Entity entity, const char* groupName, float p2) // 0x153973AB99FE8980 0x2BC93264 b323
All found occurrences in b678d: pastebin.com/ceu67jz8
REMOVE_ENTITY_FROM_AUDIO_MIX_GROUP
void AUDIO::REMOVE_ENTITY_FROM_AUDIO_MIX_GROUP(Entity entity, float p1) // 0x18EB48CFC41F2EA0 0x308ED0EC b323
AUDIO_IS_SCRIPTED_MUSIC_PLAYING
BOOL AUDIO::AUDIO_IS_SCRIPTED_MUSIC_PLAYING() // 0x845FFC3A4FEEFA3E 0x86E995D1 b323
_0x2DD39BF3E2F9C47F
Any AUDIO::_0x2DD39BF3E2F9C47F() // 0x2DD39BF3E2F9C47F b463
PREPARE_MUSIC_EVENT
BOOL AUDIO::PREPARE_MUSIC_EVENT(const char* eventName) // 0x1E5185B72EF5158A 0x534A5C1C b323
All music event names found in the b617d scripts: pastebin.com/GnYt0R3P
CANCEL_MUSIC_EVENT
BOOL AUDIO::CANCEL_MUSIC_EVENT(const char* eventName) // 0x5B17A90291133DA5 0x89FF942D b323
All music event names found in the b617d scripts: pastebin.com/GnYt0R3P
TRIGGER_MUSIC_EVENT
BOOL AUDIO::TRIGGER_MUSIC_EVENT(const char* eventName) // 0x706D57B0F50DA710 0xB6094948 b323
List of all usable event names found in b617d used with this native. Sorted alphabetically and identical names removed: pastebin.com/RzDFmB1W All music event names found in the b617d scripts: pastebin.com/GnYt0R3P
IS_MUSIC_ONESHOT_PLAYING
BOOL AUDIO::IS_MUSIC_ONESHOT_PLAYING() // 0xA097AB275061FB21 0x2705C4D5 b323
GET_MUSIC_PLAYTIME
int AUDIO::GET_MUSIC_PLAYTIME() // 0xE7A0D23DC414507B 0xD633C809 b323
_0x159B7318403A1CD8
void AUDIO::_0x159B7318403A1CD8(Any p0) // 0x159B7318403A1CD8 b1103
RECORD_BROKEN_GLASS
void AUDIO::RECORD_BROKEN_GLASS(float x, float y, float z, float radius) // 0xFBE20329593DEC9D 0x53FC3FEC b323
CLEAR_ALL_BROKEN_GLASS
void AUDIO::CLEAR_ALL_BROKEN_GLASS() // 0xB32209EFFDC04913 0xE6B033BF b323
_0x70B8EC8FC108A634
void AUDIO::_0x70B8EC8FC108A634(BOOL p0, Any p1) // 0x70B8EC8FC108A634 0x95050CAD b323
_0x149AEE66F0CB3A99
void AUDIO::_0x149AEE66F0CB3A99(float p0, float p1) // 0x149AEE66F0CB3A99 0xE64F97A0 b323
_0x8BF907833BE275DE
void AUDIO::_0x8BF907833BE275DE(float p0, float p1) // 0x8BF907833BE275DE b323
_0x062D5EAD4DA2FA6A
void AUDIO::_0x062D5EAD4DA2FA6A() // 0x062D5EAD4DA2FA6A 0xD87AF337 b323
FORCE_*
PREPARE_ALARM
BOOL AUDIO::PREPARE_ALARM(const char* alarmName) // 0x9D74AE343DB65533 0x084932E8 b323
Example: bool prepareAlarm = AUDIO::PREPARE_ALARM("PORT_OF_LS_HEIST_FORT_ZANCUDO_ALARMS");
START_ALARM
void AUDIO::START_ALARM(const char* alarmName, BOOL p2) // 0x0355EF116C4C97B2 0x703F524B b323
Example: This will start the alarm at Fort Zancudo. AUDIO::START_ALARM("PORT_OF_LS_HEIST_FORT_ZANCUDO_ALARMS", 1); First parameter (char) is the name of the alarm. Second parameter (bool) is unknown, it does not seem to make a difference if this one is 0 or 1. ---------- It DOES make a difference but it has to do with the duration or something I dunno yet ---------- Found in the b617d scripts: AUDIO::START_ALARM("AGENCY_HEIST_FIB_TOWER_ALARMS", 0); AUDIO::START_ALARM("AGENCY_HEIST_FIB_TOWER_ALARMS_UPPER", 1); AUDIO::START_ALARM("AGENCY_HEIST_FIB_TOWER_ALARMS_UPPER_B", 0); AUDIO::START_ALARM("BIG_SCORE_HEIST_VAULT_ALARMS", a_0); AUDIO::START_ALARM("FBI_01_MORGUE_ALARMS", 1); AUDIO::START_ALARM("FIB_05_BIOTECH_LAB_ALARMS", 0); AUDIO::START_ALARM("JEWEL_STORE_HEIST_ALARMS", 0); AUDIO::START_ALARM("PALETO_BAY_SCORE_ALARM", 1); AUDIO::START_ALARM("PALETO_BAY_SCORE_CHICKEN_FACTORY_ALARM", 0); AUDIO::START_ALARM("PORT_OF_LS_HEIST_FORT_ZANCUDO_ALARMS", 1); AUDIO::START_ALARM("PORT_OF_LS_HEIST_SHIP_ALARMS", 0); AUDIO::START_ALARM("PRISON_ALARMS", 0); AUDIO::START_ALARM("PROLOGUE_VAULT_ALARMS", 0);
STOP_ALARM
void AUDIO::STOP_ALARM(const char* alarmName, BOOL toggle) // 0xA1CADDCD98415A41 0xF987BE8C b323
Example: This will stop the alarm at Fort Zancudo. AUDIO::STOP_ALARM("PORT_OF_LS_HEIST_FORT_ZANCUDO_ALARMS", 1); First parameter (char) is the name of the alarm. Second parameter (bool) has to be true (1) to have any effect.
STOP_ALL_ALARMS
void AUDIO::STOP_ALL_ALARMS(BOOL stop) // 0x2F794A877ADD4C92 0xC3CB9DC6 b323
IS_ALARM_PLAYING
BOOL AUDIO::IS_ALARM_PLAYING(const char* alarmName) // 0x226435CB96CCFC8C 0x9D8E1D23 b323
Example: bool playing = AUDIO::IS_ALARM_PLAYING("PORT_OF_LS_HEIST_FORT_ZANCUDO_ALARMS");
GET_VEHICLE_DEFAULT_HORN
Hash AUDIO::GET_VEHICLE_DEFAULT_HORN(Vehicle vehicle) // 0x02165D55000219AC 0xE84ABC19 b323
Returns hash of default vehicle horn Hash is stored in audVehicleAudioEntity
GET_VEHICLE_DEFAULT_HORN_IGNORE_MODS
Hash AUDIO::GET_VEHICLE_DEFAULT_HORN_IGNORE_MODS(Vehicle vehicle) // 0xACB5DCCA1EC76840 0xFD4B5B3B b323
RESET_PED_AUDIO_FLAGS
void AUDIO::RESET_PED_AUDIO_FLAGS(Ped ped) // 0xF54BB7B61036F335 0xDF720C86 b323
_SET_PED_AUDIO_FOOTSTEP_LOUD
void AUDIO::_SET_PED_AUDIO_FOOTSTEP_LOUD(Ped ped, BOOL toggle) // 0x0653B735BFBDFE87 b1493
Enables/disables ped's "loud" footstep sound.
_SET_PED_AUDIO_FOOTSTEP_QUIET
void AUDIO::_SET_PED_AUDIO_FOOTSTEP_QUIET(Ped ped, BOOL toggle) // 0x29DA3CA8D8B2692D b1493
Enables/disables ped's "quiet" footstep sound.
OVERRIDE_PLAYER_GROUND_MATERIAL
void AUDIO::OVERRIDE_PLAYER_GROUND_MATERIAL(Hash hash, BOOL toggle) // 0xD2CC78CD3D0B50F9 0xC307D531 b323
Sets audio flag "OverridePlayerGroundMaterial"
_0xBF4DC1784BE94DFA
void AUDIO::_0xBF4DC1784BE94DFA(Ped ped, BOOL p1, Hash hash) // 0xBF4DC1784BE94DFA b323
Something like UPDATE_PED_*
_OVERRIDE_MICROPHONE_SETTINGS
void AUDIO::_OVERRIDE_MICROPHONE_SETTINGS(Hash hash, BOOL toggle) // 0x75773E11BA459E90 b323
Sets audio flag "OverrideMicrophoneSettings"
FREEZE_MICROPHONE
void AUDIO::FREEZE_MICROPHONE() // 0xD57AAAE0E2214D11 0x2B9D91E8 b323
DISTANT_COP_CAR_SIRENS
void AUDIO::DISTANT_COP_CAR_SIRENS(BOOL value) // 0x552369F549563AD5 0x13EB5861 b323
If value is set to true, and ambient siren sound will be played. Appears to enable/disable an audio flag.
_0x43FA0DFC5DF87815
void AUDIO::_0x43FA0DFC5DF87815(Vehicle vehicle, BOOL p1) // 0x43FA0DFC5DF87815 0x7BED1872 b323
_0xB81CF134AEB56FFB
void AUDIO::_0xB81CF134AEB56FFB() // 0xB81CF134AEB56FFB b791
SET_AUDIO_FLAG
void AUDIO::SET_AUDIO_FLAG(const char* flagName, BOOL toggle) // 0xB9EFD5C25018725A 0x1C09C9E0 b323
Possible flag names: "ActivateSwitchWheelAudio" "AllowAmbientSpeechInSlowMo" "AllowCutsceneOverScreenFade" "AllowForceRadioAfterRetune" "AllowPainAndAmbientSpeechToPlayDuringCutscene" "AllowPlayerAIOnMission" "AllowPoliceScannerWhenPlayerHasNoControl" "AllowRadioDuringSwitch" "AllowRadioOverScreenFade" "AllowScoreAndRadio" "AllowScriptedSpeechInSlowMo" "AvoidMissionCompleteDelay" "DisableAbortConversationForDeathAndInjury" "DisableAbortConversationForRagdoll" "DisableBarks" "DisableFlightMusic" "DisableReplayScriptStreamRecording" "EnableHeadsetBeep" "ForceConversationInterrupt" "ForceSeamlessRadioSwitch" "ForceSniperAudio" "FrontendRadioDisabled" "HoldMissionCompleteWhenPrepared" "IsDirectorModeActive" "IsPlayerOnMissionForSpeech" "ListenerReverbDisabled" "LoadMPData" "MobileRadioInGame" "OnlyAllowScriptTriggerPoliceScanner" "PlayMenuMusic" "PoliceScannerDisabled" "ScriptedConvListenerMaySpeak" "SpeechDucksScore" "SuppressPlayerScubaBreathing" "WantedMusicDisabled" "WantedMusicOnMission" ------------------------------- No added flag names between b393d and b573d, including b573d. ####################################################################### "IsDirectorModeActive" is an audio flag which will allow you to play speech infinitely without any pauses like in Director Mode. ----------------------------------------------------------------------- All flag IDs and hashes: ID: 00 | Hash: 0x0FED7A7F ID: 01 | Hash: 0x20A7858F ID: 02 | Hash: 0xA11C2259 ID: 03 | Hash: 0x08DE4700 ID: 04 | Hash: 0x989F652F ID: 05 | Hash: 0x3C9E76BA ID: 06 | Hash: 0xA805FEB0 ID: 07 | Hash: 0x4B94EA26 ID: 08 | Hash: 0x803ACD34 ID: 09 | Hash: 0x7C741226 ID: 10 | Hash: 0x31DB9EBD ID: 11 | Hash: 0xDF386F18 ID: 12 | Hash: 0x669CED42 ID: 13 | Hash: 0x51F22743 ID: 14 | Hash: 0x2052B35C ID: 15 | Hash: 0x071472DC ID: 16 | Hash: 0xF9928BCC ID: 17 | Hash: 0x7ADBDD48 ID: 18 | Hash: 0xA959BA1A ID: 19 | Hash: 0xBBE89B60 ID: 20 | Hash: 0x87A08871 ID: 21 | Hash: 0xED1057CE ID: 22 | Hash: 0x1584AD7A ID: 23 | Hash: 0x8582CFCB ID: 24 | Hash: 0x7E5E2FB0 ID: 25 | Hash: 0xAE4F72DB ID: 26 | Hash: 0x5D16D1FA ID: 27 | Hash: 0x06B2F4B8 ID: 28 | Hash: 0x5D4CDC96 ID: 29 | Hash: 0x8B5A48BA ID: 30 | Hash: 0x98FBD539 ID: 31 | Hash: 0xD8CB0473 ID: 32 | Hash: 0x5CBB4874 ID: 33 | Hash: 0x2E9F93A9 ID: 34 | Hash: 0xD93BEA86 ID: 35 | Hash: 0x92109B7D ID: 36 | Hash: 0xB7EC9E4D ID: 37 | Hash: 0xCABDBB1D ID: 38 | Hash: 0xB3FD4A52 ID: 39 | Hash: 0x370D94E5 ID: 40 | Hash: 0xA0F7938F ID: 41 | Hash: 0xCBE1CE81 ID: 42 | Hash: 0xC27F1271 ID: 43 | Hash: 0x9E3258EB ID: 44 | Hash: 0x551CDA5B ID: 45 | Hash: 0xCB6D663C ID: 46 | Hash: 0x7DACE87F ID: 47 | Hash: 0xF9DE416F ID: 48 | Hash: 0x882E6E9E ID: 49 | Hash: 0x16B447E7 ID: 50 | Hash: 0xBD867739 ID: 51 | Hash: 0xA3A58604 ID: 52 | Hash: 0x7E046BBC ID: 53 | Hash: 0xD95FDB98 ID: 54 | Hash: 0x5842C0ED ID: 55 | Hash: 0x285FECC6 ID: 56 | Hash: 0x9351AC43 ID: 57 | Hash: 0x50032E75 ID: 58 | Hash: 0xAE6D0D59 ID: 59 | Hash: 0xD6351785 ID: 60 | Hash: 0xD25D71BC ID: 61 | Hash: 0x1F7F6423 ID: 62 | Hash: 0xE24C3AA6 ID: 63 | Hash: 0xBFFDD2B7
PREPARE_SYNCHRONIZED_AUDIO_EVENT
Any AUDIO::PREPARE_SYNCHRONIZED_AUDIO_EVENT(const char* p0, Any p1) // 0xC7ABCACA4985A766 0xE1D91FD0 b323
PREPARE_SYNCHRONIZED_AUDIO_EVENT_FOR_SCENE
BOOL AUDIO::PREPARE_SYNCHRONIZED_AUDIO_EVENT_FOR_SCENE(Any p0, Any* p1) // 0x029FE7CD1B7E2E75 0x7652DD49 b323
PLAY_SYNCHRONIZED_AUDIO_EVENT
BOOL AUDIO::PLAY_SYNCHRONIZED_AUDIO_EVENT(Any p0) // 0x8B2FD4560E55DD2D 0x507F3241 b323
STOP_SYNCHRONIZED_AUDIO_EVENT
BOOL AUDIO::STOP_SYNCHRONIZED_AUDIO_EVENT(Any p0) // 0x92D6A88E64A94430 0xADEED2B4 b323
_0xC8EDE9BDBCCBA6D4
void AUDIO::_0xC8EDE9BDBCCBA6D4(Any* p0, float p1, float p2, float p3) // 0xC8EDE9BDBCCBA6D4 0x55A21772 b323
_SET_SYNCHRONIZED_AUDIO_EVENT_POSITION_THIS_FRAME
void AUDIO::_SET_SYNCHRONIZED_AUDIO_EVENT_POSITION_THIS_FRAME(const char* p0, Entity p1) // 0x950A154B8DAB6185 0xA17F9AB0 b323
Sets the position of the audio event to the entity's position for one frame(?) if (l_8C3 == 0) { sub_27fd1(0, -1, 1); if (PED::IS_SYNCHRONIZED_SCENE_RUNNING(l_87D)) { AUDIO::STOP_SYNCHRONIZED_AUDIO_EVENT(l_87D); } if (sub_7dd(l_A00)) { AUDIO::_950A154B8DAB6185("PAP2_IG1_POPPYSEX", l_A00); } sub_91c("TK************ SETTING SYNCH SCENE AUDIO POSITION THIS FRAME ************TK"); l_8C3 = 1; } -- Found in the b617d scripts, duplicates removed: AUDIO::_950A154B8DAB6185("CAR_5_IG_6", l_7FE[1/*1*/]); AUDIO::_950A154B8DAB6185("EX03_TRAIN_BIKE_LAND", PLAYER::PLAYER_PED_ID()); AUDIO::_950A154B8DAB6185("FBI_2_MCS_1_LeadIn", l_40[2/*1*/]); AUDIO::_950A154B8DAB6185("FIN_C2_MCS_1", l_24C[0/*1*/]); AUDIO::_950A154B8DAB6185("MNT_DNC", l_5F); AUDIO::_950A154B8DAB6185("PAP2_IG1_POPPYSEX", l_A00);
SET_AUDIO_SPECIAL_EFFECT_MODE
void AUDIO::SET_AUDIO_SPECIAL_EFFECT_MODE(int mode) // 0x12561FCBB62D5B9C 0x62B43677 b323
Needs to be called every frame. Audio mode to apply this frame: https://alloc8or.re/gta5/doc/enums/audSpecialEffectMode.txt
SET_PORTAL_SETTINGS_OVERRIDE
void AUDIO::SET_PORTAL_SETTINGS_OVERRIDE(const char* p0, const char* p1) // 0x044DBAD7A7FA2BE5 0x8AD670EC b323
Found in the b617d scripts, duplicates removed: AUDIO::_044DBAD7A7FA2BE5("V_CARSHOWROOM_PS_WINDOW_UNBROKEN", "V_CARSHOWROOM_PS_WINDOW_BROKEN"); AUDIO::_044DBAD7A7FA2BE5("V_CIA_PS_WINDOW_UNBROKEN", "V_CIA_PS_WINDOW_BROKEN"); AUDIO::_044DBAD7A7FA2BE5("V_DLC_HEIST_APARTMENT_DOOR_CLOSED", "V_DLC_HEIST_APARTMENT_DOOR_OPEN"); AUDIO::_044DBAD7A7FA2BE5("V_FINALEBANK_PS_VAULT_INTACT", "V_FINALEBANK_PS_VAULT_BLOWN"); AUDIO::_044DBAD7A7FA2BE5("V_MICHAEL_PS_BATHROOM_WITH_WINDOW", "V_MICHAEL_PS_BATHROOM_WITHOUT_WINDOW");
REMOVE_PORTAL_SETTINGS_OVERRIDE
void AUDIO::REMOVE_PORTAL_SETTINGS_OVERRIDE(const char* p0) // 0xB4BBFD9CD8B3922B 0xD24B4D0C b323
Found in the b617d scripts, duplicates removed: AUDIO::_B4BBFD9CD8B3922B("V_CARSHOWROOM_PS_WINDOW_UNBROKEN"); AUDIO::_B4BBFD9CD8B3922B("V_CIA_PS_WINDOW_UNBROKEN"); AUDIO::_B4BBFD9CD8B3922B("V_DLC_HEIST_APARTMENT_DOOR_CLOSED"); AUDIO::_B4BBFD9CD8B3922B("V_FINALEBANK_PS_VAULT_INTACT"); AUDIO::_B4BBFD9CD8B3922B("V_MICHAEL_PS_BATHROOM_WITH_WINDOW");
_0xE4E6DD5566D28C82
void AUDIO::_0xE4E6DD5566D28C82() // 0xE4E6DD5566D28C82 0x7262B5BA b323
STOP_S*
_0x3A48AB4445D499BE
Any AUDIO::_0x3A48AB4445D499BE() // 0x3A48AB4445D499BE 0x93A44A1F b323
_SET_PED_TALK
void AUDIO::_SET_PED_TALK(Ped ped) // 0x4ADA3F19BE4A6047 0x13777A0B b323
Speech related.
_0x0150B6FF25A9E2E5
void AUDIO::_0x0150B6FF25A9E2E5() // 0x0150B6FF25A9E2E5 0x1134F68B b323
_0xBEF34B1D9624D5DD
void AUDIO::_0xBEF34B1D9624D5DD(BOOL p0) // 0xBEF34B1D9624D5DD 0xE0047BFD b323
STOP_CUTSCENE_AUDIO
void AUDIO::STOP_CUTSCENE_AUDIO() // 0x806058BBDC136E06 0x55461BE6 b323
_HAS_MULTIPLAYER_AUDIO_DATA_LOADED
BOOL AUDIO::_HAS_MULTIPLAYER_AUDIO_DATA_LOADED() // 0x544810ED9DB6BBE6 b323
HAS_*
_HAS_MULTIPLAYER_AUDIO_DATA_UNLOADED
BOOL AUDIO::_HAS_MULTIPLAYER_AUDIO_DATA_UNLOADED() // 0x5B50ABB1FE3746F4 b323
HAS_*
_GET_VEHICLE_DEFAULT_HORN_VARIATION
int AUDIO::_GET_VEHICLE_DEFAULT_HORN_VARIATION(Vehicle vehicle) // 0xD53F3A29BCE2580E b1365
_SET_VEHICLE_HORN_VARIATION
void AUDIO::_SET_VEHICLE_HORN_VARIATION(Vehicle vehicle, int value) // 0x0350E7E17BA767D0 b1365
BRAIN
ADD_SCRIPT_TO_RANDOM_PED
void BRAIN::ADD_SCRIPT_TO_RANDOM_PED(const char* name, Hash model, float p2, float p3) // 0x4EE5367468A65CCC 0xECC76C3D b323
BRAIN::ADD_SCRIPT_TO_RANDOM_PED("pb_prostitute", ${s_f_y_hooker_01}, 100, 0); - Nacorpio ----- Hardcoded to not work in Multiplayer.
REGISTER_OBJECT_SCRIPT_BRAIN
void BRAIN::REGISTER_OBJECT_SCRIPT_BRAIN(const char* scriptName, Hash modelHash, int p2, float activationRange, int p4, int p5) // 0x0BE84C318BA6EC22 0xB6BCC608 b323
Registers a script for any object with a specific model hash. BRAIN::REGISTER_OBJECT_SCRIPT_BRAIN("ob_telescope", ${prop_telescope_01}, 100, 4.0, -1, 9); - Nacorpio
IS_OBJECT_WITHIN_BRAIN_ACTIVATION_RANGE
BOOL BRAIN::IS_OBJECT_WITHIN_BRAIN_ACTIVATION_RANGE(Object object) // 0xCCBA154209823057 0xBA4CAA56 b323
REGISTER_WORLD_POINT_SCRIPT_BRAIN
void BRAIN::REGISTER_WORLD_POINT_SCRIPT_BRAIN(const char* scriptName, float activationRange, int p2) // 0x3CDC7136613284BD 0x725D91F7 b323
IS_WORLD_POINT_WITHIN_BRAIN_ACTIVATION_RANGE
BOOL BRAIN::IS_WORLD_POINT_WITHIN_BRAIN_ACTIVATION_RANGE() // 0xC5042CC6F5E3D450 0x2CF305A0 b323
Gets whether the world point the calling script is registered to is within desired range of the player.
ENABLE_SCRIPT_BRAIN_SET
void BRAIN::ENABLE_SCRIPT_BRAIN_SET(int brainSet) // 0x67AA4D73F0CFA86B 0x2765919F b323
DISABLE_SCRIPT_BRAIN_SET
void BRAIN::DISABLE_SCRIPT_BRAIN_SET(int brainSet) // 0x14D8518E9760F08F 0xFBD13FAD b323
_0x0B40ED49D7D6FF84
void BRAIN::_0x0B40ED49D7D6FF84() // 0x0B40ED49D7D6FF84 0x19B27825 b323
_0x4D953DF78EBF8158
void BRAIN::_0x4D953DF78EBF8158() // 0x4D953DF78EBF8158 0xF3A3AB08 b323
Something like flush_all_scripts Most of time comes after NETWORK_END_TUTORIAL_SESSION() or before TERMINATE_THIS_THREAD()
_0x6D6840CEE8845831
void BRAIN::_0x6D6840CEE8845831(const char* action) // 0x6D6840CEE8845831 0x949FE53E b323
Possible values: act_cinema am_mp_carwash_launch am_mp_carwash_control am_mp_property_ext chop fairgroundHub launcher_BasejumpHeli launcher_BasejumpPack launcher_CarWash launcher_golf launcher_Hunting_Ambient launcher_MrsPhilips launcher_OffroadRacing launcher_pilotschool launcher_Racing launcher_rampage launcher_rampage launcher_range launcher_stunts launcher_stunts launcher_tennis launcher_Tonya launcher_Triathlon launcher_Yoga ob_mp_bed_low ob_mp_bed_med
_0x6E91B04E08773030
void BRAIN::_0x6E91B04E08773030(const char* action) // 0x6E91B04E08773030 0x29CE8BAA b323
Looks like a cousin of above function _6D6840CEE8845831 as it was found among them. Must be similar Here are possible values of argument - "ob_tv" "launcher_Darts"
CAM
RENDER_SCRIPT_CAMS
void CAM::RENDER_SCRIPT_CAMS(BOOL render, BOOL ease, int easeTime, BOOL p3, BOOL p4, Any p5) // 0x07E5B515DB0636FC 0x74337969 b323
ease - smooth transition between the camera's positions easeTime - Time in milliseconds for the transition to happen If you have created a script (rendering) camera, and want to go back to the character (gameplay) camera, call this native with render set to 0. Setting ease to 1 will smooth the transition.
STOP_RENDERING_SCRIPT_CAMS_USING_CATCH_UP
void CAM::STOP_RENDERING_SCRIPT_CAMS_USING_CATCH_UP(BOOL render, float p1, int p2, Any p3) // 0xC819F3CBB62BF692 0xD3C08183 b323
This native makes the gameplay camera zoom into first person/third person with a special effect.
CREATE_CAM
Cam CAM::CREATE_CAM(const char* camName, BOOL p1) // 0xC3981DCE61D9E13F 0xE9BF2A7D b323
"DEFAULT_SCRIPTED_CAMERA" "DEFAULT_ANIMATED_CAMERA" "DEFAULT_SPLINE_CAMERA" "DEFAULT_SCRIPTED_FLY_CAMERA" "TIMED_SPLINE_CAMERA"
CREATE_CAM_WITH_PARAMS
Cam CAM::CREATE_CAM_WITH_PARAMS(const char* camName, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, float fov, BOOL p8, int p9) // 0xB51194800B257161 0x23B02F15 b323
camName is always set to "DEFAULT_SCRIPTED_CAMERA" in Rockstar's scripts. ------------ Camera names found in the b617d scripts: "DEFAULT_ANIMATED_CAMERA" "DEFAULT_SCRIPTED_CAMERA" "DEFAULT_SCRIPTED_FLY_CAMERA" "DEFAULT_SPLINE_CAMERA" ------------ Side Note: It seems p8 is basically to represent what would be the bool p1 within CREATE_CAM native. As well as the p9 since it's always 2 in scripts seems to represent what would be the last param within SET_CAM_ROT native which normally would be 2.
CREATE_CAMERA
Cam CAM::CREATE_CAMERA(Hash camHash, BOOL p1) // 0x5E3CF89C6BCCA67D 0x5D6739AE b323
CREATE_CAMERA_WITH_PARAMS
Cam CAM::CREATE_CAMERA_WITH_PARAMS(Hash camHash, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, float fov, BOOL p8, Any p9) // 0x6ABFA3E16460F22D 0x0688BE9A b323
CAM::_GET_GAMEPLAY_CAM_COORDS can be used instead of posX,Y,Z CAM::_GET_GAMEPLAY_CAM_ROT can be used instead of rotX,Y,Z CAM::_80EC114669DAEFF4() can be used instead of p7 (Possible p7 is FOV parameter. ) p8 ??? p9 uses 2 by default
DESTROY_CAM
void CAM::DESTROY_CAM(Cam cam, BOOL bScriptHostCam) // 0x865908C81A2C22E9 0xC39302BD b323
BOOL param indicates whether the cam should be destroyed if it belongs to the calling script.
DESTROY_ALL_CAMS
void CAM::DESTROY_ALL_CAMS(BOOL bScriptHostCam) // 0x8E5FB15663F79120 0x10C151CE b323
BOOL param indicates whether the cam should be destroyed if it belongs to the calling script.
DOES_CAM_EXIST
BOOL CAM::DOES_CAM_EXIST(Cam cam) // 0xA7A932170592B50E 0x1EF89DC0 b323
Returns whether or not the passed camera handle exists.
SET_CAM_ACTIVE
void CAM::SET_CAM_ACTIVE(Cam cam, BOOL active) // 0x026FB97D0A425F84 0x064659C2 b323
Set camera as active/inactive.
IS_CAM_ACTIVE
BOOL CAM::IS_CAM_ACTIVE(Cam cam) // 0xDFB2B516207D3534 0x4B58F177 b323
Returns whether or not the passed camera handle is active.
IS_CAM_RENDERING
BOOL CAM::IS_CAM_RENDERING(Cam cam) // 0x02EC0AF5C5A49B7A 0x6EC6B5B2 b323
GET_RENDERING_CAM
Cam CAM::GET_RENDERING_CAM() // 0x5234F9F10919EABA 0x0FCF4DF1 b323
GET_CAM_COORD
Vector3 CAM::GET_CAM_COORD(Cam cam) // 0xBAC038F7459AE5AE 0x7C40F09C b323
GET_CAM_ROT
Vector3 CAM::GET_CAM_ROT(Cam cam, int rotationOrder) // 0x7D304C1C955E3E12 0xDAC84C9F b323
The last parameter, as in other "ROT" methods, is usually 2.
GET_CAM_FOV
float CAM::GET_CAM_FOV(Cam cam) // 0xC3330A45CCCDB26A 0xD6E9FCF5 b323
GET_CAM_NEAR_CLIP
float CAM::GET_CAM_NEAR_CLIP(Cam cam) // 0xC520A34DAFBF24B1 0xCFCD35EE b323
GET_CAM_FAR_CLIP
float CAM::GET_CAM_FAR_CLIP(Cam cam) // 0xB60A9CFEB21CA6AA 0x09F119B8 b323
GET_CAM_FAR_DOF
float CAM::GET_CAM_FAR_DOF(Cam cam) // 0x255F8DAFD540D397 0x98C5CCE9 b323
SET_CAM_PARAMS
void CAM::SET_CAM_PARAMS(Cam cam, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, float fieldOfView, Any p8, int p9, int p10, int p11) // 0xBFD8727AEA3CCEBA 0x2167CEBF b323
SET_CAM_COORD
void CAM::SET_CAM_COORD(Cam cam, float posX, float posY, float posZ) // 0x4D41783FB745E42E 0x7A8053AF b323
Sets the position of the cam.
SET_CAM_ROT
void CAM::SET_CAM_ROT(Cam cam, float rotX, float rotY, float rotZ, int rotationOrder) // 0x85973643155D0B07 0xEE38B3C1 b323
Sets the rotation of the cam. Last parameter unknown. Last parameter seems to always be set to 2.
SET_CAM_FOV
void CAM::SET_CAM_FOV(Cam cam, float fieldOfView) // 0xB13C14F66A00D047 0xD3D5D74F b323
Sets the field of view of the cam. --------------------------------------------- Min: 1.0f Max: 130.0f
SET_CAM_NEAR_CLIP
void CAM::SET_CAM_NEAR_CLIP(Cam cam, float nearClip) // 0xC7848EFCCC545182 0x46DB13B1 b323
SET_CAM_FAR_CLIP
void CAM::SET_CAM_FAR_CLIP(Cam cam, float farClip) // 0xAE306F2A904BF86E 0x0D23E381 b323
_0xAABD62873FFB1A33
void CAM::_0xAABD62873FFB1A33(Any p0, Any p1) // 0xAABD62873FFB1A33 b2189
SET_CAM_MOTION_BLUR_STRENGTH
void CAM::SET_CAM_MOTION_BLUR_STRENGTH(Cam cam, float strength) // 0x6F0F77FBA9A8F2E6 0xFD6E0D67 b323
SET_CAM_NEAR_DOF
void CAM::SET_CAM_NEAR_DOF(Cam cam, float nearDOF) // 0x3FA4BF0A7AB7DE2C 0xF28254DF b323
SET_CAM_FAR_DOF
void CAM::SET_CAM_FAR_DOF(Cam cam, float farDOF) // 0xEDD91296CD01AEE0 0x58515E8E b323
SET_CAM_DOF_STRENGTH
void CAM::SET_CAM_DOF_STRENGTH(Cam cam, float dofStrength) // 0x5EE29B4D7D5DF897 0x3CC4EB3F b323
SET_CAM_DOF_PLANES
void CAM::SET_CAM_DOF_PLANES(Cam cam, float p1, float p2, float p3, float p4) // 0x3CF48F6F96E749DC 0xAD6C2B8F b323
SET_CAM_USE_SHALLOW_DOF_MODE
void CAM::SET_CAM_USE_SHALLOW_DOF_MODE(Cam cam, BOOL toggle) // 0x16A96863A17552BB 0x8306C256 b323
SET_USE_HI_DOF
void CAM::SET_USE_HI_DOF() // 0xA13B0222F3D94A94 0x8BBF2950 b323
_0xF55E4046F6F831DC
void CAM::_0xF55E4046F6F831DC(Any p0, float p1) // 0xF55E4046F6F831DC b323
_0xE111A7C0D200CBC5
void CAM::_0xE111A7C0D200CBC5(Any p0, float p1) // 0xE111A7C0D200CBC5 b323
_SET_CAM_DOF_FNUMBER_OF_LENS
void CAM::_SET_CAM_DOF_FNUMBER_OF_LENS(Cam camera, float p1) // 0x7DD234D6F3914C5B b323
This native has its name defined inside its codE
_SET_CAM_DOF_FOCAL_LENGTH_MULTIPLIER
void CAM::_SET_CAM_DOF_FOCAL_LENGTH_MULTIPLIER(Cam camera, float multiplier) // 0x47B595D60664CFFA b1011
Native name labeled within its code
_SET_CAM_DOF_FOCUS_DISTANCE_BIAS
void CAM::_SET_CAM_DOF_FOCUS_DISTANCE_BIAS(Cam camera, float p1) // 0xC669EEA5D031B7DE b323
This native has a name defined inside its code
_SET_CAM_DOF_MAX_NEAR_IN_FOCUS_DISTANCE
void CAM::_SET_CAM_DOF_MAX_NEAR_IN_FOCUS_DISTANCE(Cam camera, float p1) // 0xC3654A441402562D b323
This native has a name defined inside its code
_SET_CAM_DOF_MAX_NEAR_IN_FOCUS_DISTANCE_BLEND_LEVEL
void CAM::_SET_CAM_DOF_MAX_NEAR_IN_FOCUS_DISTANCE_BLEND_LEVEL(Cam camera, float p1) // 0x2C654B4943BDDF7C b323
This native has a name defined inside its code
ATTACH_CAM_TO_ENTITY
void CAM::ATTACH_CAM_TO_ENTITY(Cam cam, Entity entity, float xOffset, float yOffset, float zOffset, BOOL isRelative) // 0xFEDB7D269E8C60E3 0xAD7C45F6 b323
Last param determines if its relative to the Entity
ATTACH_CAM_TO_PED_BONE
void CAM::ATTACH_CAM_TO_PED_BONE(Cam cam, Ped ped, int boneIndex, float x, float y, float z, BOOL heading) // 0x61A3DBA14AB7F411 0x506BB35C b323
_ATTACH_CAM_TO_PED_BONE_2
void CAM::_ATTACH_CAM_TO_PED_BONE_2(Cam cam, Ped ped, int boneIndex, float p3, float p4, float p5, float p6, float p7, float p8, BOOL p9) // 0x149916F50C34A40D b1180
_0x202A5ED9CE01D6E7
void CAM::_0x202A5ED9CE01D6E7(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8) // 0x202A5ED9CE01D6E7 b2189
_ATTACH_CAM_TO_VEHICLE_BONE
void CAM::_ATTACH_CAM_TO_VEHICLE_BONE(Cam cam, Vehicle vehicle, int boneIndex, BOOL relativeRotation, float rotX, float rotY, float rotZ, float offsetX, float offsetY, float offsetZ, BOOL fixedDirection) // 0x8DB3F12A02CAEF72 b1290
This native works with vehicles only. Bone indexes are usually given by this native GET_ENTITY_BONE_INDEX_BY_NAME.
DETACH_CAM
void CAM::DETACH_CAM(Cam cam) // 0xA2FABBE87F4BAD82 0xF4FBF14A b323
SET_CAM_INHERIT_ROLL_VEHICLE
void CAM::SET_CAM_INHERIT_ROLL_VEHICLE(Cam cam, BOOL p1) // 0x45F1DE9C34B93AE6 0xE4BD5342 b323
The native seems to only be called once. The native is used as so, CAM::SET_CAM_INHERIT_ROLL_VEHICLE(l_544, getElem(2, &l_525, 4)); In the exile1 script.
POINT_CAM_AT_COORD
void CAM::POINT_CAM_AT_COORD(Cam cam, float x, float y, float z) // 0xF75497BB865F0803 0x914BC21A b323
POINT_CAM_AT_ENTITY
void CAM::POINT_CAM_AT_ENTITY(Cam cam, Entity entity, float p2, float p3, float p4, BOOL p5) // 0x5640BFF86B16E8DC 0x7597A0F7 b323
p5 always seems to be 1 i.e TRUE
POINT_CAM_AT_PED_BONE
void CAM::POINT_CAM_AT_PED_BONE(Cam cam, Ped ped, int boneIndex, float x, float y, float z, BOOL p6) // 0x68B2B5F33BA63C41 0x09F47049 b323
Parameters p0-p5 seems correct. The bool p6 is unknown, but through every X360 script it's always 1. Please correct p0-p5 if any prove to be wrong.
STOP_CAM_POINTING
void CAM::STOP_CAM_POINTING(Cam cam) // 0xF33AB75780BA57DE 0x5435F6A5 b323
SET_CAM_AFFECTS_AIMING
void CAM::SET_CAM_AFFECTS_AIMING(Cam cam, BOOL toggle) // 0x8C1DC7770C51DC8D 0x0C74F9AF b323
Allows you to aim and shoot at the direction the camera is facing.
_0x661B5C8654ADD825
void CAM::_0x661B5C8654ADD825(Cam cam, BOOL p1) // 0x661B5C8654ADD825 0xE1A0B2F1 b323
SET_CAM_*
_0xA2767257A320FC82
void CAM::_0xA2767257A320FC82(Any p0, BOOL p1) // 0xA2767257A320FC82 b323
_0x271017B9BA825366
void CAM::_0x271017B9BA825366(Any p0, BOOL p1) // 0x271017B9BA825366 0x43220969 b323
SET_CAM_DEBUG_NAME
void CAM::SET_CAM_DEBUG_NAME(Cam camera, const char* name) // 0x1B93E0107865DD40 0x9B00DF3F b323
NOTE: Debugging functions are not present in the retail version of the game.
ADD_CAM_SPLINE_NODE
void CAM::ADD_CAM_SPLINE_NODE(Cam camera, float x, float y, float z, float xRot, float yRot, float zRot, int length, int p8, int p9) // 0x8609C75EC438FB3B 0xAD3C7EAA b323
I filled p1-p6 (the floats) as they are as other natives with 6 floats in a row are similar and I see no other method. So if a test from anyone proves them wrong please correct. p7 (length) determines the length of the spline, affects camera path and duration of transition between previous node and this one p8 big values ~100 will slow down the camera movement before reaching this node p9 != 0 seems to override the rotation/pitch (bool?)
ADD_CAM_SPLINE_NODE_USING_CAMERA_FRAME
void CAM::ADD_CAM_SPLINE_NODE_USING_CAMERA_FRAME(Cam cam, Cam cam2, int p2, int p3) // 0x0A9F2A468B328E74 0x30510511 b323
ADD_CAM_SPLINE_NODE_USING_CAMERA
void CAM::ADD_CAM_SPLINE_NODE_USING_CAMERA(Cam cam, Cam cam2, int p2, int p3) // 0x0FB82563989CF4FB 0xBA6C085B b323
ADD_CAM_SPLINE_NODE_USING_GAMEPLAY_FRAME
void CAM::ADD_CAM_SPLINE_NODE_USING_GAMEPLAY_FRAME(Cam cam, int p1, int p2) // 0x609278246A29CA34 0xB4737F03 b323
SET_CAM_SPLINE_PHASE
void CAM::SET_CAM_SPLINE_PHASE(Cam cam, float p1) // 0x242B5874F0A4E052 0xF0AED233 b323
GET_CAM_SPLINE_PHASE
float CAM::GET_CAM_SPLINE_PHASE(Cam cam) // 0xB5349E36C546509A 0x39784DD9 b323
Can use this with SET_CAM_SPLINE_PHASE to set the float it this native returns. (returns 1.0f when no nodes has been added, reached end of non existing spline)
GET_CAM_SPLINE_NODE_PHASE
float CAM::GET_CAM_SPLINE_NODE_PHASE(Cam cam) // 0xD9D0E694C8282C96 0x7B9522F6 b323
I'm pretty sure the parameter is the camera as usual, but I am not certain so I'm going to leave it as is.
SET_CAM_SPLINE_DURATION
void CAM::SET_CAM_SPLINE_DURATION(Cam cam, int timeDuration) // 0x1381539FEE034CDA 0x3E91FC8A b323
I named p1 as timeDuration as it is obvious. I'm assuming tho it is ran in ms(Milliseconds) as usual.
SET_CAM_SPLINE_SMOOTHING_STYLE
void CAM::SET_CAM_SPLINE_SMOOTHING_STYLE(Cam cam, int smoothingStyle) // 0xD1B0F412F109EA5D 0x15E141CE b323
GET_CAM_SPLINE_NODE_INDEX
int CAM::GET_CAM_SPLINE_NODE_INDEX(Cam cam) // 0xB22B17DF858716A6 0xF8AEB6BD b323
SET_CAM_SPLINE_NODE_EASE
void CAM::SET_CAM_SPLINE_NODE_EASE(Cam cam, int p1, int p2, float p3) // 0x83B8201ED82A9A2D 0x21D275DA b323
SET_CAM_SPLINE_NODE_VELOCITY_SCALE
void CAM::SET_CAM_SPLINE_NODE_VELOCITY_SCALE(Cam cam, int p1, float scale) // 0xA6385DEB180F319F 0xA3BD9E94 b323
OVERRIDE_CAM_SPLINE_VELOCITY
void CAM::OVERRIDE_CAM_SPLINE_VELOCITY(Cam cam, int p1, float p2, float p3) // 0x40B62FA033EB0346 0x326A17E2 b323
OVERRIDE_CAM_SPLINE_MOTION_BLUR
void CAM::OVERRIDE_CAM_SPLINE_MOTION_BLUR(Cam cam, int p1, float p2, float p3) // 0x7DCF7C708D292D55 0x633179E6 b323
Max value for p1 is 15.
SET_CAM_SPLINE_NODE_EXTRA_FLAGS
void CAM::SET_CAM_SPLINE_NODE_EXTRA_FLAGS(Cam cam, int p1, int flags) // 0x7BF1A54AE67AC070 0xC90B2DDC b323
IS_CAM_SPLINE_PAUSED
BOOL CAM::IS_CAM_SPLINE_PAUSED(Any p0) // 0x0290F35C0AD97864 0x60B34FF5 b323
SET_CAM_ACTIVE_WITH_INTERP
void CAM::SET_CAM_ACTIVE_WITH_INTERP(Cam camTo, Cam camFrom, int duration, int easeLocation, int easeRotation) // 0x9FBDA379383A52A4 0x7983E7F0 b323
Previous declaration void SET_CAM_ACTIVE_WITH_INTERP(Cam camTo, Cam camFrom, int duration, BOOL easeLocation, BOOL easeRotation) is completely wrong. The last two params are integers not BOOLs...
IS_CAM_INTERPOLATING
BOOL CAM::IS_CAM_INTERPOLATING(Cam cam) // 0x036F97C908C2B52C 0x7159CB5D b323
SHAKE_CAM
void CAM::SHAKE_CAM(Cam cam, const char* type, float amplitude) // 0x6A25241C340D3822 0x1D4211B0 b323
Possible shake types (updated b617d): DEATH_FAIL_IN_EFFECT_SHAKE DRUNK_SHAKE FAMILY5_DRUG_TRIP_SHAKE HAND_SHAKE JOLT_SHAKE LARGE_EXPLOSION_SHAKE MEDIUM_EXPLOSION_SHAKE SMALL_EXPLOSION_SHAKE ROAD_VIBRATION_SHAKE SKY_DIVING_SHAKE VIBRATE_SHAKE Full list of cam shake types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/camShakeTypesCompact.json
ANIMATED_SHAKE_CAM
void CAM::ANIMATED_SHAKE_CAM(Cam cam, const char* p1, const char* p2, const char* p3, float amplitude) // 0xA2746EEAE3E577CD 0xE1168767 b323
Example from michael2 script. CAM::ANIMATED_SHAKE_CAM(l_5069, "shake_cam_all@", "light", "", 1f);
IS_CAM_SHAKING
BOOL CAM::IS_CAM_SHAKING(Cam cam) // 0x6B24BFE83A2BE47B 0x0961FD9B b323
SET_CAM_SHAKE_AMPLITUDE
void CAM::SET_CAM_SHAKE_AMPLITUDE(Cam cam, float amplitude) // 0xD93DB43B82BC0D00 0x60FF6382 b323
STOP_CAM_SHAKING
void CAM::STOP_CAM_SHAKING(Cam cam, BOOL p1) // 0xBDECF64367884AC3 0x40D0EB87 b323
SHAKE_SCRIPT_GLOBAL
void CAM::SHAKE_SCRIPT_GLOBAL(const char* p0, float p1) // 0xF4C8CF9E353AFECA 0x2B0F05CD b323
CAM::SHAKE_SCRIPT_GLOBAL("HAND_SHAKE", 0.2); Full list of cam shake types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/camShakeTypesCompact.json
ANIMATED_SHAKE_SCRIPT_GLOBAL
void CAM::ANIMATED_SHAKE_SCRIPT_GLOBAL(const char* p0, const char* p1, const char* p2, float p3) // 0xC2EAE3FB8CDBED31 0xCB75BD9C b323
CAM::ANIMATED_SHAKE_SCRIPT_GLOBAL("SHAKE_CAM_medium", "medium", "", 0.5f); Full list of cam shake types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/camShakeTypesCompact.json
IS_SCRIPT_GLOBAL_SHAKING
BOOL CAM::IS_SCRIPT_GLOBAL_SHAKING() // 0xC912AF078AF19212 0x6AEFE6A5 b323
In drunk_controller.c4, sub_309 if (CAM::IS_SCRIPT_GLOBAL_SHAKING()) { CAM::STOP_SCRIPT_GLOBAL_SHAKING(0); }
STOP_SCRIPT_GLOBAL_SHAKING
void CAM::STOP_SCRIPT_GLOBAL_SHAKING(BOOL p0) // 0x1C9D7949FA533490 0x26FCFB96 b323
In drunk_controller.c4, sub_309 if (CAM::IS_SCRIPT_GLOBAL_SHAKING()) { CAM::STOP_SCRIPT_GLOBAL_SHAKING(0); }
_0x5D96CFB59DA076A0
void CAM::_0x5D96CFB59DA076A0(Vehicle vehicle, int p1, float p2) // 0x5D96CFB59DA076A0 b2060
p1: 0..16
PLAY_CAM_ANIM
BOOL CAM::PLAY_CAM_ANIM(Cam cam, const char* animName, const char* animDictionary, float x, float y, float z, float xRot, float yRot, float zRot, BOOL p9, int p10) // 0x9A2D0FB2E7852392 0xBCEFB87E b323
Atleast one time in a script for the zRot Rockstar uses GET_ENTITY_HEADING to help fill the parameter. p9 is unknown at this time. p10 throughout all the X360 Scripts is always 2. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
IS_CAM_PLAYING_ANIM
BOOL CAM::IS_CAM_PLAYING_ANIM(Cam cam, const char* animName, const char* animDictionary) // 0xC90621D8A0CEECF2 0xB998CB49 b323
SET_CAM_ANIM_CURRENT_PHASE
void CAM::SET_CAM_ANIM_CURRENT_PHASE(Cam cam, float phase) // 0x4145A4C44FF3B5A6 0x3CB1D17F b323
GET_CAM_ANIM_CURRENT_PHASE
float CAM::GET_CAM_ANIM_CURRENT_PHASE(Cam cam) // 0xA10B2DB49E92A6B0 0x345F72D0 b323
PLAY_SYNCHRONIZED_CAM_ANIM
BOOL CAM::PLAY_SYNCHRONIZED_CAM_ANIM(Any p0, Any p1, const char* animName, const char* animDictionary) // 0xE32EFE9AB4A9AA0C 0x9458459E b323
Examples: CAM::PLAY_SYNCHRONIZED_CAM_ANIM(l_2734, NETWORK::_02C40BF885C567B6(l_2739), "PLAYER_EXIT_L_CAM", "mp_doorbell"); CAM::PLAY_SYNCHRONIZED_CAM_ANIM(l_F0D[7/*1*/], l_F4D[15/*1*/], "ah3b_attackheli_cam2", "missheistfbi3b_helicrash");
SET_FLY_CAM_HORIZONTAL_RESPONSE
void CAM::SET_FLY_CAM_HORIZONTAL_RESPONSE(Cam cam, float p1, float p2, float p3) // 0x503F5920162365B2 0x56F9ED27 b323
_SET_FLY_CAM_VERTICAL_SPEED_MULTIPLIER
void CAM::_SET_FLY_CAM_VERTICAL_SPEED_MULTIPLIER(Cam cam, float p1, float p2, float p3) // 0xE827B9382CFB41BA b791
SET_FLY_CAM_MAX_HEIGHT
void CAM::SET_FLY_CAM_MAX_HEIGHT(Cam cam, float height) // 0xF9D02130ECDD1D77 0x71570DBA b323
SET_FLY_CAM_COORD_AND_CONSTRAIN
void CAM::SET_FLY_CAM_COORD_AND_CONSTRAIN(Cam cam, float x, float y, float z) // 0xC91C6C55199308CA 0x60B345DE b323
_0xC8B5C4A79CC18B94
void CAM::_0xC8B5C4A79CC18B94(Cam cam) // 0xC8B5C4A79CC18B94 0x44473EFC b323
_0x5C48A1D6E3B33179
BOOL CAM::_0x5C48A1D6E3B33179(Cam cam) // 0x5C48A1D6E3B33179 0xDA931D65 b323
W*
IS_SCREEN_FADED_OUT
BOOL CAM::IS_SCREEN_FADED_OUT() // 0xB16FCE9DDC7BA182 0x9CAA05FA b323
IS_SCREEN_FADED_IN
BOOL CAM::IS_SCREEN_FADED_IN() // 0x5A859503B0C08678 0x4F37276D b323
IS_SCREEN_FADING_OUT
BOOL CAM::IS_SCREEN_FADING_OUT() // 0x797AC7CB535BA28F 0x79275A57 b323
IS_SCREEN_FADING_IN
BOOL CAM::IS_SCREEN_FADING_IN() // 0x5C544BC6C57AC575 0xC7C82800 b323
DO_SCREEN_FADE_IN
void CAM::DO_SCREEN_FADE_IN(int duration) // 0xD4E8E24955024033 0x66C1BDEE b323
Fades the screen in. duration: The time the fade should take, in milliseconds.
DO_SCREEN_FADE_OUT
void CAM::DO_SCREEN_FADE_OUT(int duration) // 0x891B5B39AC6302AF 0x89D01805 b323
Fades the screen out. duration: The time the fade should take, in milliseconds.
SET_WIDESCREEN_BORDERS
void CAM::SET_WIDESCREEN_BORDERS(BOOL p0, int p1) // 0xDCD4EA924F42D01A 0x1A75DC9A b323
_0x4879E4FE39074CDF
BOOL CAM::_0x4879E4FE39074CDF() // 0x4879E4FE39074CDF b372
A*
GET_GAMEPLAY_CAM_COORD
Vector3 CAM::GET_GAMEPLAY_CAM_COORD() // 0x14D6F5678D8F1B37 0x9388CF79 b323
GET_GAMEPLAY_CAM_ROT
Vector3 CAM::GET_GAMEPLAY_CAM_ROT(int rotationOrder) // 0x837765A25378F0BB 0x13A010B5 b323
p0 dosen't seem to change much, I tried it with 0, 1, 2: 0-Pitch(X): -70.000092 0-Roll(Y): -0.000001 0-Yaw(Z): -43.886459 1-Pitch(X): -70.000092 1-Roll(Y): -0.000001 1-Yaw(Z): -43.886463 2-Pitch(X): -70.000092 2-Roll(Y): -0.000002 2-Yaw(Z): -43.886467
GET_GAMEPLAY_CAM_FOV
float CAM::GET_GAMEPLAY_CAM_FOV() // 0x65019750A0324133 0x4D6B3BFA b323
_0x487A82C650EB7799
void CAM::_0x487A82C650EB7799(float p0) // 0x487A82C650EB7799 0xA6E73135 b323
some camera effect that is used in the drunk-cheat, and turned off (by setting it to 0.0) along with the shaking effects once the drunk cheat is disabled.
_0x0225778816FDC28C
void CAM::_0x0225778816FDC28C(float p0) // 0x0225778816FDC28C 0x1126E37C b323
some camera effect that is (also) used in the drunk-cheat, and turned off (by setting it to 0.0) along with the shaking effects once the drunk cheat is disabled. Possibly a cinematic or script-cam version of _0x487A82C650EB7799
GET_GAMEPLAY_CAM_RELATIVE_HEADING
float CAM::GET_GAMEPLAY_CAM_RELATIVE_HEADING() // 0x743607648ADD4587 0xCAF839C2 b323
SET_GAMEPLAY_CAM_RELATIVE_HEADING
void CAM::SET_GAMEPLAY_CAM_RELATIVE_HEADING(float heading) // 0xB4EC2312F4E5B1F1 0x20C6217C b323
Sets the camera position relative to heading in float from -360 to +360. Heading is alwyas 0 in aiming camera.
GET_GAMEPLAY_CAM_RELATIVE_PITCH
float CAM::GET_GAMEPLAY_CAM_RELATIVE_PITCH() // 0x3A6867B4845BEDA2 0xFC5A4946 b323
SET_GAMEPLAY_CAM_RELATIVE_PITCH
void CAM::SET_GAMEPLAY_CAM_RELATIVE_PITCH(float angle, float scalingFactor) // 0x6D0858B8EDFD2B7D 0x6381B963 b323
This native sets the camera's pitch (rotation on the x-axis).
_SET_GAMEPLAY_CAM_RELATIVE_ROTATION
void CAM::_SET_GAMEPLAY_CAM_RELATIVE_ROTATION(float roll, float pitch, float yaw) // 0x48608C3464F58AB4 b505
_0x28B022A17B068A3A
void CAM::_0x28B022A17B068A3A(float p0, float p1) // 0x28B022A17B068A3A b1734
F*
_SET_GAMEPLAY_CAM_RAW_YAW
void CAM::_SET_GAMEPLAY_CAM_RAW_YAW(float yaw) // 0x103991D4A307D472 b323
Does nothing
_SET_GAMEPLAY_CAM_RAW_PITCH
void CAM::_SET_GAMEPLAY_CAM_RAW_PITCH(float pitch) // 0x759E13EBC1C15C5A b323
_0x469F2ECDEC046337
void CAM::_0x469F2ECDEC046337(BOOL p0) // 0x469F2ECDEC046337 b323
SHAKE_GAMEPLAY_CAM
void CAM::SHAKE_GAMEPLAY_CAM(const char* shakeName, float intensity) // 0xFD55E49555E017CF 0xF2EFE660 b323
Possible shake types (updated b617d): DEATH_FAIL_IN_EFFECT_SHAKE DRUNK_SHAKE FAMILY5_DRUG_TRIP_SHAKE HAND_SHAKE JOLT_SHAKE LARGE_EXPLOSION_SHAKE MEDIUM_EXPLOSION_SHAKE SMALL_EXPLOSION_SHAKE ROAD_VIBRATION_SHAKE SKY_DIVING_SHAKE VIBRATE_SHAKE Full list of cam shake types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/camShakeTypesCompact.json
IS_GAMEPLAY_CAM_SHAKING
BOOL CAM::IS_GAMEPLAY_CAM_SHAKING() // 0x016C090630DF1F89 0x3457D681 b323
SET_GAMEPLAY_CAM_SHAKE_AMPLITUDE
void CAM::SET_GAMEPLAY_CAM_SHAKE_AMPLITUDE(float amplitude) // 0xA87E00932DB4D85D 0x9219D44A b323
Sets the amplitude for the gameplay (i.e. 3rd or 1st) camera to shake. Used in script "drunk_controller.ysc.c4" to simulate making the player drunk.
STOP_GAMEPLAY_CAM_SHAKING
void CAM::STOP_GAMEPLAY_CAM_SHAKING(BOOL p0) // 0x0EF93E9F3D08C178 0xFD569E4E b323
SET_GAMEPLAY_CAM_FOLLOW_PED_THIS_UPDATE
void CAM::SET_GAMEPLAY_CAM_FOLLOW_PED_THIS_UPDATE(Ped ped) // 0x8BBACBF51DA047A8 0x7D3007A2 b323
IS_GAMEPLAY_CAM_RENDERING
BOOL CAM::IS_GAMEPLAY_CAM_RENDERING() // 0x39B5D1B10383F0C8 0x0EF276DA b323
Examples when this function will return 0 are: - During busted screen. - When player is coming out from a hospital. - When player is coming out from a police station. - When player is buying gun from AmmuNation.
_0x3044240D2E0FA842
BOOL CAM::_0x3044240D2E0FA842() // 0x3044240D2E0FA842 0xC0B00C20 b323
_0x705A276EBFF3133D
BOOL CAM::_0x705A276EBFF3133D() // 0x705A276EBFF3133D 0x60C23785 b323
_0xDB90C6CCA48940F1
void CAM::_0xDB90C6CCA48940F1(BOOL p0) // 0xDB90C6CCA48940F1 0x20BFF6E5 b323
_ENABLE_CROSSHAIR_THIS_FRAME
void CAM::_ENABLE_CROSSHAIR_THIS_FRAME() // 0xEA7F0AD7E9BA676F 0xA61FF9AC b323
Shows the crosshair even if it wouldn't show normally. Only works for one frame, so make sure to call it repeatedly. DISABLE_*
IS_GAMEPLAY_CAM_LOOKING_BEHIND
BOOL CAM::IS_GAMEPLAY_CAM_LOOKING_BEHIND() // 0x70FDA869F3317EA9 0x33C83F17 b323
_DISABLE_CAM_COLLISION_FOR_ENTITY
void CAM::_DISABLE_CAM_COLLISION_FOR_ENTITY(Entity entity) // 0x2AED6301F67007D5 0x2701A9AD b323
DISABLE_CAM_COLLISION_FOR_OBJECT
void CAM::DISABLE_CAM_COLLISION_FOR_OBJECT(Entity entity) // 0x49482F9FCD825AAA 0xC4736ED3 b323
_0xA7092AFE81944852
void CAM::_0xA7092AFE81944852() // 0xA7092AFE81944852 b2189
_0xFD3151CD37EA2245
void CAM::_0xFD3151CD37EA2245(Entity entity) // 0xFD3151CD37EA2245 b323
_0xB1381B97F70C7B30
void CAM::_0xB1381B97F70C7B30() // 0xB1381B97F70C7B30 b1180
Sets some flag on cinematic camera
_0xDD79DF9F4D26E1C9
void CAM::_0xDD79DF9F4D26E1C9() // 0xDD79DF9F4D26E1C9 0x6B0E9D57 b323
IS_SPHERE_VISIBLE
BOOL CAM::IS_SPHERE_VISIBLE(float x, float y, float z, float radius) // 0xE33D59DA70B58FDF 0xDD1329E2 b323
IS_FOLLOW_PED_CAM_ACTIVE
BOOL CAM::IS_FOLLOW_PED_CAM_ACTIVE() // 0xC6D3D26810C8E0F9 0x9F9E856C b323
SET_FOLLOW_PED_CAM_THIS_UPDATE
BOOL CAM::SET_FOLLOW_PED_CAM_THIS_UPDATE(const char* camName, int p1) // 0x44A113DD6FFC48D1 0x1425F6AC b323
From the scripts: CAM::SET_FOLLOW_PED_CAM_THIS_UPDATE("FOLLOW_PED_ATTACHED_TO_ROPE_CAMERA", 0); CAM::SET_FOLLOW_PED_CAM_THIS_UPDATE("FOLLOW_PED_ON_EXILE1_LADDER_CAMERA", 1500); CAM::SET_FOLLOW_PED_CAM_THIS_UPDATE("FOLLOW_PED_SKY_DIVING_CAMERA", 0); CAM::SET_FOLLOW_PED_CAM_THIS_UPDATE("FOLLOW_PED_SKY_DIVING_CAMERA", 3000); CAM::SET_FOLLOW_PED_CAM_THIS_UPDATE("FOLLOW_PED_SKY_DIVING_FAMILY5_CAMERA", 0); CAM::SET_FOLLOW_PED_CAM_THIS_UPDATE("FOLLOW_PED_SKY_DIVING_CAMERA", 0);
_0x271401846BD26E92
void CAM::_0x271401846BD26E92(BOOL p0, BOOL p1) // 0x271401846BD26E92 0x8DC53629 b323
_0xC8391C309684595A
void CAM::_0xC8391C309684595A() // 0xC8391C309684595A 0x1F9DE6E4 b323
_CLAMP_GAMEPLAY_CAM_YAW
void CAM::_CLAMP_GAMEPLAY_CAM_YAW(float minimum, float maximum) // 0x8F993D26E0CA5E8E 0x749909AC b323
minimum: Degrees between -180f and 180f. maximum: Degrees between -180f and 180f. Clamps the gameplay camera's current yaw. Eg. _CLAMP_GAMEPLAY_CAM_YAW(0.0f, 0.0f) will set the horizontal angle directly behind the player.
_CLAMP_GAMEPLAY_CAM_PITCH
void CAM::_CLAMP_GAMEPLAY_CAM_PITCH(float minimum, float maximum) // 0xA516C198B7DCA1E1 0xFA3A16E7 b323
minimum: Degrees between -90f and 90f. maximum: Degrees between -90f and 90f. Clamps the gameplay camera's current pitch. Eg. _CLAMP_GAMEPLAY_CAM_PITCH(0.0f, 0.0f) will set the vertical angle directly behind the player.
_ANIMATE_GAMEPLAY_CAM_ZOOM
void CAM::_ANIMATE_GAMEPLAY_CAM_ZOOM(float p0, float distance) // 0xDF2E1F7742402E81 0x77340650 b323
Seems to animate the gameplay camera zoom. Eg. _ANIMATE_GAMEPLAY_CAM_ZOOM(1f, 1000f); will animate the camera zooming in from 1000 meters away. Game scripts use it like this: // Setting this to 1 prevents V key from changing zoom PLAYER::SET_PLAYER_FORCED_ZOOM(PLAYER::PLAYER_ID(), 1); // These restrict how far you can move cam up/down left/right CAM::_CLAMP_GAMEPLAY_CAM_YAW(-20f, 50f); CAM::_CLAMP_GAMEPLAY_CAM_PITCH(-60f, 0f); CAM::_ANIMATE_GAMEPLAY_CAM_ZOOM(1f, 1f);
SET_IN_VEHICLE_CAM_STATE_THIS_UPDATE
void CAM::SET_IN_VEHICLE_CAM_STATE_THIS_UPDATE(Vehicle p0, int p1) // 0xE9EA16D6E54CDCA4 0x4B22C5CB b323
_DISABLE_FIRST_PERSON_CAM_THIS_FRAME
void CAM::_DISABLE_FIRST_PERSON_CAM_THIS_FRAME() // 0xDE2EF5DA284CC8DF b323
Disables first person camera for the current frame. Found in decompiled scripts: GRAPHICS::DRAW_DEBUG_TEXT_2D("Disabling First Person Cam", 0.5, 0.8, 0.0, 0, 0, 255, 255); CAM::_DE2EF5DA284CC8DF();
_0x59424BD75174C9B1
void CAM::_0x59424BD75174C9B1() // 0x59424BD75174C9B1 b323
_0x9F97DA93681F87EA
void CAM::_0x9F97DA93681F87EA() // 0x9F97DA93681F87EA b1734
B*
GET_FOLLOW_PED_CAM_ZOOM_LEVEL
int CAM::GET_FOLLOW_PED_CAM_ZOOM_LEVEL() // 0x33E6C8EFD0CD93E9 0x57583DF1 b323
GET_FOLLOW_PED_CAM_VIEW_MODE
int CAM::GET_FOLLOW_PED_CAM_VIEW_MODE() // 0x8D4D46230B2C353A 0xA65FF946 b323
Returns 0 - Third Person Close 1 - Third Person Mid 2 - Third Person Far 4 - First Person
SET_FOLLOW_PED_CAM_VIEW_MODE
void CAM::SET_FOLLOW_PED_CAM_VIEW_MODE(int viewMode) // 0x5A4F9EDF1673F704 0x495DBE8D b323
Sets the type of Player camera: 0 - Third Person Close 1 - Third Person Mid 2 - Third Person Far 4 - First Person
IS_FOLLOW_VEHICLE_CAM_ACTIVE
BOOL CAM::IS_FOLLOW_VEHICLE_CAM_ACTIVE() // 0xCBBDE6D335D6D496 0x8DD49B77 b323
_0x91EF6EE6419E5B97
void CAM::_0x91EF6EE6419E5B97(BOOL p0) // 0x91EF6EE6419E5B97 0x9DB5D391 b323
_0x9DFE13ECDC1EC196
void CAM::_0x9DFE13ECDC1EC196(BOOL p0, BOOL p1) // 0x9DFE13ECDC1EC196 0x92302899 b323
SET_FOLLOW_*
_0x79C0E43EB9B944E2
BOOL CAM::_0x79C0E43EB9B944E2(Hash hash) // 0x79C0E43EB9B944E2 b1734
GET_FOLLOW_VEHICLE_CAM_ZOOM_LEVEL
int CAM::GET_FOLLOW_VEHICLE_CAM_ZOOM_LEVEL() // 0xEE82280AB767B690 0x8CD67DE3 b323
SET_FOLLOW_VEHICLE_CAM_ZOOM_LEVEL
void CAM::SET_FOLLOW_VEHICLE_CAM_ZOOM_LEVEL(int zoomLevel) // 0x19464CB6E4078C8A 0x8F55EBBE b323
GET_FOLLOW_VEHICLE_CAM_VIEW_MODE
int CAM::GET_FOLLOW_VEHICLE_CAM_VIEW_MODE() // 0xA4FF579AC0E3AAAE 0xA4B4DB03 b323
Returns the type of camera: 0 - Third Person Close 1 - Third Person Mid 2 - Third Person Far 4 - First Person
SET_FOLLOW_VEHICLE_CAM_VIEW_MODE
void CAM::SET_FOLLOW_VEHICLE_CAM_VIEW_MODE(int viewMode) // 0xAC253D7842768F48 0xC4FBBBD3 b323
Sets the type of Player camera in vehicles: 0 - Third Person Close 1 - Third Person Mid 2 - Third Person Far 4 - First Person
_0xEE778F8C7E1142E2
Any CAM::_0xEE778F8C7E1142E2(Any p0) // 0xEE778F8C7E1142E2 0xF3B148A6 b323
interprets the result of CAM::_0x19CAFA3C87F7C2FF() example: // checks if you're currently in first person if ((CAM::_EE778F8C7E1142E2(CAM::_19CAFA3C87F7C2FF()) == 4) && (!__463_$28ED382849B17AFC())) { HUD::_FDEC055AB549E328(); HUD::_SET_NOTIFICATION_TEXT_ENTRY("REC_FEED_WAR"); l_CE[0/*1*/] = HUD::_DRAW_NOTIFICATION(0, 1); }
_0x2A2173E46DAECD12
void CAM::_0x2A2173E46DAECD12(Any p0, Any p1) // 0x2A2173E46DAECD12 0x1DEBCB45 b323
_0x19CAFA3C87F7C2FF
Any CAM::_0x19CAFA3C87F7C2FF() // 0x19CAFA3C87F7C2FF b323
Seems to return the current type of view example: // checks if you're currently in first person if ((CAM::_EE778F8C7E1142E2(CAM::_19CAFA3C87F7C2FF()) == 4) && (!__463_$28ED382849B17AFC())) { HUD::_FDEC055AB549E328(); HUD::_SET_NOTIFICATION_TEXT_ENTRY("REC_FEED_WAR"); l_CE[0/*1*/] = HUD::_DRAW_NOTIFICATION(0, 1); }
_USE_STUNT_CAMERA_THIS_FRAME
void CAM::_USE_STUNT_CAMERA_THIS_FRAME() // 0x6493CF69859B116A b791
_SET_GAMEPLAY_CAM_HASH
void CAM::_SET_GAMEPLAY_CAM_HASH(const char* camName) // 0x425A920FDB9A0DDA b1180
Sets gameplay camera to hash
_0x0AA27680A0BD43FA
void CAM::_0x0AA27680A0BD43FA() // 0x0AA27680A0BD43FA b1103
_SET_FOLLOW_TURRET_SEAT_CAM
void CAM::_SET_FOLLOW_TURRET_SEAT_CAM(int seatIndex) // 0x5C90CAB09951A12F b1365
IS_AIM_CAM_ACTIVE
BOOL CAM::IS_AIM_CAM_ACTIVE() // 0x68EDDA28A5976D07 0xC24B4F6F b323
_IS_AIM_CAM_THIRD_PERSON_ACTIVE
BOOL CAM::_IS_AIM_CAM_THIRD_PERSON_ACTIVE() // 0x74BD83EA840F6BC9 0x8F320DE4 b323
IS_A*
IS_FIRST_PERSON_AIM_CAM_ACTIVE
BOOL CAM::IS_FIRST_PERSON_AIM_CAM_ACTIVE() // 0x5E346D934122613F 0xD6280468 b323
DISABLE_AIM_CAM_THIS_UPDATE
void CAM::DISABLE_AIM_CAM_THIS_UPDATE() // 0x1A31FE0049E542F6 0x1BAA7182 b323
GET_FIRST_PERSON_AIM_CAM_ZOOM_FACTOR
float CAM::GET_FIRST_PERSON_AIM_CAM_ZOOM_FACTOR() // 0x7EC52CC40597D170 0x33951005 b323
SET_FIRST_PERSON_AIM_CAM_ZOOM_FACTOR
void CAM::SET_FIRST_PERSON_AIM_CAM_ZOOM_FACTOR(float zoomFactor) // 0x70894BD0915C5BCA 0x9F4AF763 b323
_0xCED08CBE8EBB97C7
void CAM::_0xCED08CBE8EBB97C7(float p0, float p1) // 0xCED08CBE8EBB97C7 0x68BA0730 b323
_0x2F7F2B26DD3F18EE
void CAM::_0x2F7F2B26DD3F18EE(float p0, float p1) // 0x2F7F2B26DD3F18EE 0x2F29F0D5 b323
_SET_FIRST_PERSON_CAM_PITCH_RANGE
void CAM::_SET_FIRST_PERSON_CAM_PITCH_RANGE(float p0, float p1) // 0xBCFC632DB7673BF0 0x76DAC96C b323
SET_FIRST_PERSON_AIM_CAM_NEAR_CLIP_THIS_UPDATE
void CAM::SET_FIRST_PERSON_AIM_CAM_NEAR_CLIP_THIS_UPDATE(float p0) // 0x0AF7B437918103B3 0x0E21069D b323
SET_THIRD_PERSON_AIM_CAM_NEAR_CLIP_THIS_UPDATE
void CAM::SET_THIRD_PERSON_AIM_CAM_NEAR_CLIP_THIS_UPDATE(float p0) // 0x42156508606DE65E 0x71E9C63E b323
_0x4008EDF7D6E48175
void CAM::_0x4008EDF7D6E48175(BOOL p0) // 0x4008EDF7D6E48175 0xD1EEBC45 b323
_0x380B4968D1E09E55
void CAM::_0x380B4968D1E09E55() // 0x380B4968D1E09E55 b1290
GET_FINAL_RENDERED_CAM_COORD
Vector3 CAM::GET_FINAL_RENDERED_CAM_COORD() // 0xA200EB1EE790F448 0x9C84BDA0 b323
GET_FINAL_RENDERED_CAM_ROT
Vector3 CAM::GET_FINAL_RENDERED_CAM_ROT(int rotationOrder) // 0x5B4E4C817FCC2DFB 0x1FFBEFC5 b323
p0 seems to consistently be 2 across scripts Function is called faily often by CAM::CREATE_CAM_WITH_PARAMS
GET_FINAL_RENDERED_IN_WHEN_FRIENDLY_ROT
Vector3 CAM::GET_FINAL_RENDERED_IN_WHEN_FRIENDLY_ROT(Player player, int rotationOrder) // 0x26903D9CD1175F2C 0xACADF916 b323
GET_FINAL_RENDERED_CAM_FOV
float CAM::GET_FINAL_RENDERED_CAM_FOV() // 0x80EC114669DAEFF4 0x721B763B b323
Gets some camera fov
GET_FINAL_RENDERED_IN_WHEN_FRIENDLY_FOV
float CAM::GET_FINAL_RENDERED_IN_WHEN_FRIENDLY_FOV(Player player) // 0x5F35F6732C3FBBA0 0x23E3F106 b323
GET_FINAL_RENDERED_CAM_NEAR_CLIP
float CAM::GET_FINAL_RENDERED_CAM_NEAR_CLIP() // 0xD0082607100D7193 0x457AE195 b323
GET_FINAL_RENDERED_CAM_FAR_CLIP
float CAM::GET_FINAL_RENDERED_CAM_FAR_CLIP() // 0xDFC8CBC606FDB0FC 0x46CB3A49 b323
GET_FINAL_RENDERED_CAM_NEAR_DOF
float CAM::GET_FINAL_RENDERED_CAM_NEAR_DOF() // 0xA03502FC581F7D9B 0x19297A7A b323
GET_FINAL_RENDERED_CAM_FAR_DOF
float CAM::GET_FINAL_RENDERED_CAM_FAR_DOF() // 0x9780F32BCAF72431 0xF24777CA b323
GET_FINAL_RENDERED_CAM_MOTION_BLUR_STRENGTH
float CAM::GET_FINAL_RENDERED_CAM_MOTION_BLUR_STRENGTH() // 0x162F9D995753DC19 0x38992E83 b323
SET_GAMEPLAY_COORD_HINT
void CAM::SET_GAMEPLAY_COORD_HINT(float x, float y, float z, int duration, int blendOutDuration, int blendInDuration, int unk) // 0xD51ADCD2D8BC0FB3 0xF27483C9 b323
SET_GAMEPLAY_PED_HINT
void CAM::SET_GAMEPLAY_PED_HINT(Ped p0, float x1, float y1, float z1, BOOL p4, Any p5, Any p6, Any p7) // 0x2B486269ACD548D3 0x7C27343E b323
SET_GAMEPLAY_VEHICLE_HINT
void CAM::SET_GAMEPLAY_VEHICLE_HINT(Vehicle vehicle, float offsetX, float offsetY, float offsetZ, BOOL p4, int time, int easeInTime, int easeOutTime) // 0xA2297E18F3E71C2E 0x2C9A11D8 b323
Focuses the camera on the specified vehicle.
SET_GAMEPLAY_OBJECT_HINT
void CAM::SET_GAMEPLAY_OBJECT_HINT(Any p0, float p1, float p2, float p3, BOOL p4, Any p5, Any p6, Any p7) // 0x83E87508A2CA2AC6 0x2ED5E2F8 b323
SET_GAMEPLAY_ENTITY_HINT
void CAM::SET_GAMEPLAY_ENTITY_HINT(Entity entity, float xOffset, float yOffset, float zOffset, BOOL p4, int p5, int p6, int p7, Any p8) // 0x189E955A8313E298 0x66C32306 b323
p6 & p7 - possibly length or time
IS_GAMEPLAY_HINT_ACTIVE
BOOL CAM::IS_GAMEPLAY_HINT_ACTIVE() // 0xE520FF1AD2785B40 0xAD8DA205 b323
STOP_GAMEPLAY_HINT
void CAM::STOP_GAMEPLAY_HINT(BOOL p0) // 0xF46C581C61718916 0x1BC28B7B b323
_0xCCD078C2665D2973
void CAM::_0xCCD078C2665D2973(BOOL p0) // 0xCCD078C2665D2973 0xCAFEE798 b323
This native does absolutely nothing, just a nullsub
_0x247ACBC4ABBC9D1C
void CAM::_0x247ACBC4ABBC9D1C(BOOL p0) // 0x247ACBC4ABBC9D1C b323
_0xBF72910D0F26F025
Any CAM::_0xBF72910D0F26F025() // 0xBF72910D0F26F025 b323
SET_GAMEPLAY_HINT_FOV
void CAM::SET_GAMEPLAY_HINT_FOV(float FOV) // 0x513403FB9C56211F 0x96FD173B b323
SET_GAMEPLAY_HINT_FOLLOW_DISTANCE_SCALAR
void CAM::SET_GAMEPLAY_HINT_FOLLOW_DISTANCE_SCALAR(float value) // 0xF8BDBF3D573049A1 0x72E8CD3A b323
Old name: _SET_GAMEPLAY_HINT_ANIM_OFFSETZ
SET_GAMEPLAY_HINT_BASE_ORBIT_PITCH_OFFSET
void CAM::SET_GAMEPLAY_HINT_BASE_ORBIT_PITCH_OFFSET(float value) // 0xD1F8363DFAD03848 0x79472AE3 b323
Old name: _SET_GAMEPLAY_HINT_ANGLE
_SET_GAMEPLAY_HINT_ANIM_OFFSETX
void CAM::_SET_GAMEPLAY_HINT_ANIM_OFFSETX(float xOffset) // 0x5D7B620DAE436138 0xFC7464A0 b323
_SET_GAMEPLAY_HINT_ANIM_OFFSETY
void CAM::_SET_GAMEPLAY_HINT_ANIM_OFFSETY(float yOffset) // 0xC92717EF615B6704 0x3554AA0E b323
_SET_GAMEPLAY_HINT_ANIM_CLOSEUP
void CAM::_SET_GAMEPLAY_HINT_ANIM_CLOSEUP(BOOL toggle) // 0xE3433EADAAF7EE40 0x2F0CE859 b323
SET_CINEMATIC_BUTTON_ACTIVE
void CAM::SET_CINEMATIC_BUTTON_ACTIVE(BOOL p0) // 0x51669F7D1FB53D9F 0x3FBC5D00 b323
IS_CINEMATIC_CAM_RENDERING
BOOL CAM::IS_CINEMATIC_CAM_RENDERING() // 0xB15162CB5826E9E8 0x80471AD9 b323
SHAKE_CINEMATIC_CAM
void CAM::SHAKE_CINEMATIC_CAM(const char* p0, float p1) // 0xDCE214D9ED58F3CF 0x61815F31 b323
p0 argument found in the b617d scripts: "DRUNK_SHAKE" Full list of cam shake types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/camShakeTypesCompact.json
IS_CINEMATIC_CAM_SHAKING
BOOL CAM::IS_CINEMATIC_CAM_SHAKING() // 0xBBC08F6B4CB8FF0A 0x8376D939 b323
SET_CINEMATIC_CAM_SHAKE_AMPLITUDE
void CAM::SET_CINEMATIC_CAM_SHAKE_AMPLITUDE(float p0) // 0xC724C701C30B2FE7 0x67510C4B b323
STOP_CINEMATIC_CAM_SHAKING
void CAM::STOP_CINEMATIC_CAM_SHAKING(BOOL p0) // 0x2238E588E588A6D7 0x71C12904 b323
_DISABLE_VEHICLE_FIRST_PERSON_CAM_THIS_FRAME
void CAM::_DISABLE_VEHICLE_FIRST_PERSON_CAM_THIS_FRAME() // 0xADFF1B2A555F5FBA 0x5AC6DAC9 b323
_0x62ECFCFDEE7885D6
void CAM::_0x62ECFCFDEE7885D6() // 0x62ECFCFDEE7885D6 0x837F8581 b323
_INVALIDATE_VEHICLE_IDLE_CAM
void CAM::_INVALIDATE_VEHICLE_IDLE_CAM() // 0x9E4CFFF989258472 0x65DDE8AF b323
Resets the vehicle idle camera timer. Calling this in a loop will disable the idle camera.
INVALIDATE_IDLE_CAM
void CAM::INVALIDATE_IDLE_CAM() // 0xF4F2C0D4EE209E20 0xD75CDD75 b323
Resets the idle camera timer. Calling that in a loop once every few seconds is enough to disable the idle cinematic camera.
IS_CINEMATIC_IDLE_CAM_RENDERING
BOOL CAM::IS_CINEMATIC_IDLE_CAM_RENDERING() // 0xCA9D2AA3E326D720 0x96A07066 b323
_IS_IN_VEHICLE_CAM_DISABLED
BOOL CAM::_IS_IN_VEHICLE_CAM_DISABLED() // 0x4F32C0D5A90A9B40 b323
CREATE_CINEMATIC_SHOT
void CAM::CREATE_CINEMATIC_SHOT(Any p0, int p1, Any p2, Entity entity) // 0x741B0129D4560F31 0xAC494E35 b323
IS_CINEMATIC_SHOT_ACTIVE
BOOL CAM::IS_CINEMATIC_SHOT_ACTIVE(Any p0) // 0xCC9F3371A7C28BC9 0xA4049042 b323
STOP_CINEMATIC_SHOT
void CAM::STOP_CINEMATIC_SHOT(Hash p0) // 0x7660C6E75D3A078E 0xD78358C5 b323
Only used once in carsteal3 with p0 set to -1096069633 (CAMERA_MAN_SHOT)
FORCE_CINEMATIC_RENDERING_THIS_UPDATE
void CAM::FORCE_CINEMATIC_RENDERING_THIS_UPDATE(BOOL p0) // 0xA41BCD7213805AAC 0xFBB85E02 b323
_0xDC9DA9E8789F5246
void CAM::_0xDC9DA9E8789F5246() // 0xDC9DA9E8789F5246 0x4938C82F b323
SET_CINEMATIC_MODE_ACTIVE
void CAM::SET_CINEMATIC_MODE_ACTIVE(BOOL toggle) // 0xDCF0754AC3D6FD4E 0x2009E747 b323
Toggles the vehicle cinematic cam; requires the player ped to be in a vehicle to work.
_0x1F2300CB7FA7B7F6
Any CAM::_0x1F2300CB7FA7B7F6() // 0x1F2300CB7FA7B7F6 0x6739AD55 b323
_0x17FCA7199A530203
Any CAM::_0x17FCA7199A530203() // 0x17FCA7199A530203 b323
_0xD7360051C885628B
Any CAM::_0xD7360051C885628B() // 0xD7360051C885628B b372
_IS_CINEMATIC_CAM_ACTIVE
BOOL CAM::_IS_CINEMATIC_CAM_ACTIVE() // 0xF5F1E89A970B7796 b1493
Tests some cinematic camera flags
_0x7B8A361C1813FBEF
void CAM::_0x7B8A361C1813FBEF() // 0x7B8A361C1813FBEF b573
STOP_CUTSCENE_CAM_SHAKING
void CAM::STOP_CUTSCENE_CAM_SHAKING() // 0xDB629FFD9285FA06 0xF07D603D b323
_0x324C5AA411DA7737
void CAM::_0x324C5AA411DA7737(Any p0) // 0x324C5AA411DA7737 b323
_0x12DED8CA53D47EA5
void CAM::_0x12DED8CA53D47EA5(float p0) // 0x12DED8CA53D47EA5 0x067BA6F5 b323
Hardcoded to only work in multiplayer.
GET_FOCUS_PED_ON_SCREEN
Ped CAM::GET_FOCUS_PED_ON_SCREEN(float p0, int p1, float p2, float p3, float p4, float p5, float p6, int p7, int p8) // 0x89215EC747DF244A 0xFD99BE2B b323
_0x5A43C76F7FC7BA5F
void CAM::_0x5A43C76F7FC7BA5F() // 0x5A43C76F7FC7BA5F 0xE206C450 b323
_SET_CAM_EFFECT
void CAM::_SET_CAM_EFFECT(int p0) // 0x80C8B1846639BB19 0xB06CCD38 b323
if p0 is 0, effect is cancelled if p0 is 1, effect zooms in, gradually tilts cam clockwise apx 30 degrees, wobbles slowly. Motion blur is active until cancelled. if p0 is 2, effect immediately tilts cam clockwise apx 30 degrees, begins to wobble slowly, then gradually tilts cam back to normal. The wobbling will continue until the effect is cancelled.
_0x5C41E6BABC9E2112
void CAM::_0x5C41E6BABC9E2112(Any p0) // 0x5C41E6BABC9E2112 b323
_SET_GAMEPLAY_CAM_VEHICLE_CAMERA
void CAM::_SET_GAMEPLAY_CAM_VEHICLE_CAMERA(const char* vehicleName) // 0x21E253A7F8DA5DFB b323
From b617 scripts: CAM::_21E253A7F8DA5DFB("DINGHY"); CAM::_21E253A7F8DA5DFB("ISSI2"); CAM::_21E253A7F8DA5DFB("SPEEDO");
_SET_GAMEPLAY_CAM_VEHICLE_CAMERA_NAME
void CAM::_SET_GAMEPLAY_CAM_VEHICLE_CAMERA_NAME(Hash vehicleModel) // 0x11FA5D3479C7DD47 b323
_0xEAF0FA793D05C592
Any CAM::_0xEAF0FA793D05C592() // 0xEAF0FA793D05C592 b323
_0x62374889A4D59F72
void CAM::_0x62374889A4D59F72() // 0x62374889A4D59F72 b877
_REPLAY_FREE_CAM_GET_MAX_RANGE
float CAM::_REPLAY_FREE_CAM_GET_MAX_RANGE() // 0x8BFCEB5EA1B161B6 b323
CLOCK
SET_CLOCK_TIME
void CLOCK::SET_CLOCK_TIME(int hour, int minute, int second) // 0x47C3B5848C3E45D8 0x26F6AF14 b323
SET_CLOCK_TIME(12, 34, 56);
PAUSE_CLOCK
void CLOCK::PAUSE_CLOCK(BOOL toggle) // 0x4055E40BD2DBEC1D 0xB02D6124 b323
ADVANCE_CLOCK_TIME_TO
void CLOCK::ADVANCE_CLOCK_TIME_TO(int hour, int minute, int second) // 0xC8CA9670B9D83B3B 0x57B8DA7C b323
ADD_TO_CLOCK_TIME
void CLOCK::ADD_TO_CLOCK_TIME(int hours, int minutes, int seconds) // 0xD716F30D8C8980E2 0xCC40D20D b323
GET_CLOCK_HOURS
int CLOCK::GET_CLOCK_HOURS() // 0x25223CA6B4D20B7F 0x7EF8316F b323
Gets the current ingame hour, expressed without zeros. (09:34 will be represented as 9)
GET_CLOCK_MINUTES
int CLOCK::GET_CLOCK_MINUTES() // 0x13D2B8ADD79640F2 0x94AAC486 b323
Gets the current ingame clock minute.
GET_CLOCK_SECONDS
int CLOCK::GET_CLOCK_SECONDS() // 0x494E97C2EF27C470 0x099C927E b323
Gets the current ingame clock second. Note that ingame clock seconds change really fast since a day in GTA is only 48 minutes in real life.
SET_CLOCK_DATE
void CLOCK::SET_CLOCK_DATE(int day, int month, int year) // 0xB096419DF0D06CE7 0x96891C94 b323
GET_CLOCK_DAY_OF_WEEK
int CLOCK::GET_CLOCK_DAY_OF_WEEK() // 0xD972E4BD7AEB235F 0x84E4A289 b323
Gets the current day of the week. 0: Sunday 1: Monday 2: Tuesday 3: Wednesday 4: Thursday 5: Friday 6: Saturday
GET_CLOCK_DAY_OF_MONTH
int CLOCK::GET_CLOCK_DAY_OF_MONTH() // 0x3D10BC92A4DB1D35 0xC7A5ACB7 b323
GET_CLOCK_MONTH
int CLOCK::GET_CLOCK_MONTH() // 0xBBC72712E80257A1 0x3C48A3D5 b323
GET_CLOCK_YEAR
int CLOCK::GET_CLOCK_YEAR() // 0x961777E64BDAF717 0xB8BECF15 b323
GET_MILLISECONDS_PER_GAME_MINUTE
int CLOCK::GET_MILLISECONDS_PER_GAME_MINUTE() // 0x2F8B4D1C595B11DB 0x3B74095C b323
GET_POSIX_TIME
void CLOCK::GET_POSIX_TIME(int* year, int* month, int* day, int* hour, int* minute, int* second) // 0xDA488F299A5B164E 0xE15A5281 b323
Gets system time as year, month, day, hour, minute and second. Example usage: int year; int month; int day; int hour; int minute; int second; TIME::GET_POSIX_TIME(&year, &month, &day, &hour, &minute, &second);
GET_UTC_TIME
void CLOCK::GET_UTC_TIME(int* year, int* month, int* day, int* hour, int* minute, int* second) // 0x8117E09A19EEF4D3 0xC589CD7D b323
Gets current UTC time
GET_LOCAL_TIME
void CLOCK::GET_LOCAL_TIME(int* year, int* month, int* day, int* hour, int* minute, int* second) // 0x50C7A99057A69748 0x124BCFA2 b323
Gets local system time as year, month, day, hour, minute and second. Example usage: int year; int month; int day; int hour; int minute; int second; or use std::tm struct TIME::GET_LOCAL_TIME(&year, &month, &day, &hour, &minute, &second);
CUTSCENE
REQUEST_CUTSCENE
void CUTSCENE::REQUEST_CUTSCENE(const char* cutsceneName, int flags) // 0x7A86743F475D9E09 0xB5977853 b323
flags: Usually 8
REQUEST_CUTSCENE_WITH_PLAYBACK_LIST
void CUTSCENE::REQUEST_CUTSCENE_WITH_PLAYBACK_LIST(const char* cutsceneName, int playbackFlags, int flags) // 0xC23DE0E91C30B58C 0xD98F656A b323
flags: Usually 8 playbackFlags: Which scenes should be played. Example: 0x105 (bit 0, 2 and 8 set) will enable scene 1, 3 and 9.
REMOVE_CUTSCENE
void CUTSCENE::REMOVE_CUTSCENE() // 0x440AF51A3462B86F 0x8052F533 b323
HAS_CUTSCENE_LOADED
BOOL CUTSCENE::HAS_CUTSCENE_LOADED() // 0xC59F528E9AB9F339 0xF9998582 b323
HAS_THIS_CUTSCENE_LOADED
BOOL CUTSCENE::HAS_THIS_CUTSCENE_LOADED(const char* cutsceneName) // 0x228D3D94F8A11C3C 0x3C5619F2 b323
_0x8D9DF6ECA8768583
void CUTSCENE::_0x8D9DF6ECA8768583(int threadId) // 0x8D9DF6ECA8768583 0x25A2CABC b323
SET_SCRIPT_* Sets the cutscene's owning thread ID.
CAN_REQUEST_ASSETS_FOR_CUTSCENE_ENTITY
BOOL CUTSCENE::CAN_REQUEST_ASSETS_FOR_CUTSCENE_ENTITY() // 0xB56BBBCC2955D9CB 0xDD8878E9 b323
IS_CUTSCENE_PLAYBACK_FLAG_SET
BOOL CUTSCENE::IS_CUTSCENE_PLAYBACK_FLAG_SET(int flag) // 0x71B74D2AE19338D0 0x7B93CDAA b323
SET_CUTSCENE_ENTITY_STREAMING_FLAGS
void CUTSCENE::SET_CUTSCENE_ENTITY_STREAMING_FLAGS(const char* cutsceneEntName, int p1, int p2) // 0x4C61C75BEE8184C2 0x47DB08A9 b323
REQUEST_CUT_FILE
void CUTSCENE::REQUEST_CUT_FILE(const char* cutsceneName) // 0x06A3524161C502BA 0x0D732CD6 b323
Simply loads the cutscene and doesn't do extra stuff that REQUEST_CUTSCENE does.
HAS_CUT_FILE_LOADED
BOOL CUTSCENE::HAS_CUT_FILE_LOADED(const char* cutsceneName) // 0xA1C996C2A744262E 0x56D5B144 b323
Simply checks if the cutscene has loaded and doesn't check via CutSceneManager as opposed to HAS_[THIS]_CUTSCENE_LOADED.
REMOVE_CUT_FILE
void CUTSCENE::REMOVE_CUT_FILE(const char* cutsceneName) // 0xD00D76A7DFC9D852 0xB70D7C6D b323
Simply unloads the cutscene and doesn't do extra stuff that REMOVE_CUTSCENE does.
_GET_CUT_FILE_NUM_SECTIONS
int CUTSCENE::_GET_CUT_FILE_NUM_SECTIONS(const char* cutsceneName) // 0x0ABC54DE641DC0FC b323
Jenkins hash probably is 0xFD8B1AC2
START_CUTSCENE
void CUTSCENE::START_CUTSCENE(int flags) // 0x186D5CB5E7B0FF7B 0x210106F6 b323
flags: Usually 0.
START_CUTSCENE_AT_COORDS
void CUTSCENE::START_CUTSCENE_AT_COORDS(float x, float y, float z, int flags) // 0x1C9ADDA3244A1FBF 0x58BEA436 b323
flags: Usually 0.
STOP_CUTSCENE
void CUTSCENE::STOP_CUTSCENE(BOOL p0) // 0xC7272775B4DC786E 0x5EE84DC7 b323
STOP_CUTSCENE_IMMEDIATELY
void CUTSCENE::STOP_CUTSCENE_IMMEDIATELY() // 0xD220BDD222AC4A1E 0xF528A2AD b323
SET_CUTSCENE_ORIGIN
void CUTSCENE::SET_CUTSCENE_ORIGIN(float x, float y, float z, float p3, int p4) // 0xB812B3FD1C01CF27 0xB0AD7792 b323
p3 could be heading. Needs more research.
_0x011883F41211432A
void CUTSCENE::_0x011883F41211432A(float x1, float y1, float z1, float x2, float y2, float z2, int p6) // 0x011883F41211432A b323
GET_CUTSCENE_TIME
int CUTSCENE::GET_CUTSCENE_TIME() // 0xE625BEABBAFFDAB9 0x53F5B5AB b323
GET_CUTSCENE_TOTAL_DURATION
int CUTSCENE::GET_CUTSCENE_TOTAL_DURATION() // 0xEE53B14A19E480D4 0x0824EBE8 b323
_0x971D7B15BCDBEF99
int CUTSCENE::_0x971D7B15BCDBEF99() // 0x971D7B15BCDBEF99 b1734
GET_CUTSCENE_*
WAS_CUTSCENE_SKIPPED
BOOL CUTSCENE::WAS_CUTSCENE_SKIPPED() // 0x40C8656EDAEDD569 0xC9B6949D b323
HAS_CUTSCENE_FINISHED
BOOL CUTSCENE::HAS_CUTSCENE_FINISHED() // 0x7C0A893088881D57 0x5DED14B4 b323
IS_CUTSCENE_ACTIVE
BOOL CUTSCENE::IS_CUTSCENE_ACTIVE() // 0x991251AFC3981F84 0xCCE2FE9D b323
IS_CUTSCENE_PLAYING
BOOL CUTSCENE::IS_CUTSCENE_PLAYING() // 0xD3C2E180A40F031E 0xA3A78392 b323
GET_CUTSCENE_SECTION_PLAYING
int CUTSCENE::GET_CUTSCENE_SECTION_PLAYING() // 0x49010A6A396553D8 0x1026F0D6 b323
GET_ENTITY_INDEX_OF_CUTSCENE_ENTITY
Entity CUTSCENE::GET_ENTITY_INDEX_OF_CUTSCENE_ENTITY(const char* cutsceneEntName, Hash modelHash) // 0x0A2E9FDB9A8C62F6 0x1D09ABC7 b323
_0x583DF8E3D4AFBD98
int CUTSCENE::_0x583DF8E3D4AFBD98() // 0x583DF8E3D4AFBD98 0x5AE68AE6 b323
_0x4CEBC1ED31E8925E
BOOL CUTSCENE::_0x4CEBC1ED31E8925E(const char* cutsceneName) // 0x4CEBC1ED31E8925E b323
This function is hard-coded to always return 1.
_0x4FCD976DA686580C
Any CUTSCENE::_0x4FCD976DA686580C(Any p0) // 0x4FCD976DA686580C b1290
REGISTER_ENTITY_FOR_CUTSCENE
void CUTSCENE::REGISTER_ENTITY_FOR_CUTSCENE(Ped cutscenePed, const char* cutsceneEntName, int p2, Hash modelHash, int p4) // 0xE40C1C56DF95C2E8 0x7CBC3EC7 b323
GET_ENTITY_INDEX_OF_REGISTERED_ENTITY
Entity CUTSCENE::GET_ENTITY_INDEX_OF_REGISTERED_ENTITY(const char* cutsceneEntName, Hash modelHash) // 0xC0741A26499654CD 0x46D18755 b323
_0x7F96F23FA9B73327
void CUTSCENE::_0x7F96F23FA9B73327(Hash modelHash) // 0x7F96F23FA9B73327 b323
SET_VEHICLE_* Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
SET_CUTSCENE_TRIGGER_AREA
void CUTSCENE::SET_CUTSCENE_TRIGGER_AREA(float p0, float p1, float p2, float p3, float p4, float p5) // 0x9896CE4721BE84BA 0x9D76D9DE b323
Only used twice in R* scripts
CAN_SET_ENTER_STATE_FOR_REGISTERED_ENTITY
BOOL CUTSCENE::CAN_SET_ENTER_STATE_FOR_REGISTERED_ENTITY(const char* cutsceneEntName, Hash modelHash) // 0x645D0B458D8E17B5 0x55C30B26 b323
modelHash (p1) was always 0 in R* scripts
CAN_SET_EXIT_STATE_FOR_REGISTERED_ENTITY
BOOL CUTSCENE::CAN_SET_EXIT_STATE_FOR_REGISTERED_ENTITY(const char* cutsceneEntName, Hash modelHash) // 0x4C6A6451C79E4662 0x8FF5D3C4 b323
CAN_SET_EXIT_STATE_FOR_CAMERA
BOOL CUTSCENE::CAN_SET_EXIT_STATE_FOR_CAMERA(BOOL p0) // 0xB2CBCD0930DFB420 0xEDAE6C02 b323
_0xC61B86C9F61EB404
void CUTSCENE::_0xC61B86C9F61EB404(BOOL toggle) // 0xC61B86C9F61EB404 0x35721A08 b323
Toggles a value (bool) for cutscenes. SET_*
SET_CUTSCENE_FADE_VALUES
void CUTSCENE::SET_CUTSCENE_FADE_VALUES(BOOL p0, BOOL p1, BOOL p2, BOOL p3) // 0x8093F23ABACCC7D4 0xD19EF0DD b323
_0x20746F7B1032A3C7
void CUTSCENE::_0x20746F7B1032A3C7(BOOL p0, BOOL p1, BOOL p2, BOOL p3) // 0x20746F7B1032A3C7 b323
_0x06EE9048FD080382
void CUTSCENE::_0x06EE9048FD080382(BOOL p0) // 0x06EE9048FD080382 b323
_0xA0FE76168A189DDB
int CUTSCENE::_0xA0FE76168A189DDB() // 0xA0FE76168A189DDB b323
_0x2F137B508DE238F2
void CUTSCENE::_0x2F137B508DE238F2(BOOL p0) // 0x2F137B508DE238F2 0x8338DA1D b323
_0xE36A98D8AB3D3C66
void CUTSCENE::_0xE36A98D8AB3D3C66(BOOL p0) // 0xE36A98D8AB3D3C66 0x04377C10 b323
_0x5EDEF0CF8C1DAB3C
Any CUTSCENE::_0x5EDEF0CF8C1DAB3C() // 0x5EDEF0CF8C1DAB3C 0xDBD88708 b323
SET_CUTSCENE_CAN_BE_SKIPPED
void CUTSCENE::SET_CUTSCENE_CAN_BE_SKIPPED(BOOL p0) // 0x41FAA8FB2ECE8720 0x28D54A7F b323
REGISTER_SYNCHRONISED_SCRIPT_SPEECH
void CUTSCENE::REGISTER_SYNCHRONISED_SCRIPT_SPEECH() // 0x2131046957F31B04 0xB60CFBB9 b323
SET_CUTSCENE_PED_COMPONENT_VARIATION
void CUTSCENE::SET_CUTSCENE_PED_COMPONENT_VARIATION(const char* cutsceneEntName, int p1, int p2, int p3, Hash modelHash) // 0xBA01E7B6DEEFBBC9 0x6AF994A1 b323
Full list of ped components by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedComponentVariations.json
SET_CUTSCENE_PED_COMPONENT_VARIATION_FROM_PED
void CUTSCENE::SET_CUTSCENE_PED_COMPONENT_VARIATION_FROM_PED(const char* cutsceneEntName, Ped ped, Hash modelHash) // 0x2A56C06EBEF2B0D9 0x1E7DA95E b323
DOES_CUTSCENE_ENTITY_EXIST
BOOL CUTSCENE::DOES_CUTSCENE_ENTITY_EXIST(const char* cutsceneEntName, Hash modelHash) // 0x499EF20C5DB25C59 0x58E67409 b323
SET_CUTSCENE_PED_PROP_VARIATION
void CUTSCENE::SET_CUTSCENE_PED_PROP_VARIATION(const char* cutsceneEntName, int p1, int p2, int p3, Hash modelHash) // 0x0546524ADE2E9723 0x22E9A9DE b323
Thanks R*! ;) if ((l_161 == 0) || (l_161 == 2)) { sub_2ea27("Trying to set Jimmy prop variation"); CUTSCENE::_0546524ADE2E9723("Jimmy_Boston", 1, 0, 0, 0); } Full list of ped components by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedComponentVariations.json
_HAS_CUTSCENE_CUT_THIS_FRAME
BOOL CUTSCENE::_HAS_CUTSCENE_CUT_THIS_FRAME() // 0x708BDD8CD795B043 0x4315A7C5 b323
HAS_CUTSCENE_* Possibly HAS_CUTSCENE_CUT_THIS_FRAME, needs more research.
DATAFILE
DATAFILE_WATCH_REQUEST_ID
void DATAFILE::DATAFILE_WATCH_REQUEST_ID(int id) // 0xAD6875BBC0FC899C 0x621388FF b323
Adds the given request ID to the watch list.
DATAFILE_CLEAR_WATCH_LIST
void DATAFILE::DATAFILE_CLEAR_WATCH_LIST() // 0x6CC86E78358D5119 0x5B39D0AC b323
DATAFILE_IS_VALID_REQUEST_ID
BOOL DATAFILE::DATAFILE_IS_VALID_REQUEST_ID(int index) // 0xFCCAE5B92A830878 0x01393D16 b323
DATAFILE_HAS_LOADED_FILE_DATA
BOOL DATAFILE::DATAFILE_HAS_LOADED_FILE_DATA(Any p0) // 0x15FF52B809DB2353 0x36FB8B3F b323
DATAFILE_HAS_VALID_FILE_DATA
BOOL DATAFILE::DATAFILE_HAS_VALID_FILE_DATA(Any p0) // 0xF8CC1EBE0B62E29F 0x2A9411DA b323
DATAFILE_SELECT_ACTIVE_FILE
BOOL DATAFILE::DATAFILE_SELECT_ACTIVE_FILE(Any p0) // 0x22DA66936E0FFF37 0xB41064A4 b323
DATAFILE_DELETE_REQUESTED_FILE
BOOL DATAFILE::DATAFILE_DELETE_REQUESTED_FILE(Any p0) // 0x8F5EA1C01D65A100 0x9DB63CFF b323
UGC_CREATE_CONTENT
BOOL DATAFILE::UGC_CREATE_CONTENT(Any* data, int dataCount, const char* contentName, const char* description, const char* tagsCsv, const char* contentTypeName, BOOL publish) // 0xC84527E235FCA219 0xF09157B0 b323
UGC_CREATE_MISSION
BOOL DATAFILE::UGC_CREATE_MISSION(const char* contentName, const char* description, const char* tagsCsv, const char* contentTypeName, BOOL publish) // 0xA5EFC3E847D60507 0xD96860FC b323
UGC_UPDATE_CONTENT
BOOL DATAFILE::UGC_UPDATE_CONTENT(const char* contentId, Any* data, int dataCount, const char* contentName, const char* description, const char* tagsCsv, const char* contentTypeName) // 0x648E7A5434AF7969 0x459F2683 b323
UGC_UPDATE_MISSION
BOOL DATAFILE::UGC_UPDATE_MISSION(const char* contentId, const char* contentName, const char* description, const char* tagsCsv, const char* contentTypeName) // 0x4645DE9980999E93 0xDBB83E2B b323
UGC_SET_PLAYER_DATA
BOOL DATAFILE::UGC_SET_PLAYER_DATA(const char* contentId, float rating, const char* contentTypeName) // 0x692D808C34A82143 0xBB6321BD b323
DATAFILE_SELECT_UGC_DATA
BOOL DATAFILE::DATAFILE_SELECT_UGC_DATA(int p0) // 0xA69AC4ADE82B57A4 0xE8D56DA2 b323
DATAFILE_SELECT_UGC_STATS
BOOL DATAFILE::DATAFILE_SELECT_UGC_STATS(int p0, BOOL p1) // 0x9CB0BFA7A9342C3D 0xCB6A351E b323
DATAFILE_SELECT_UGC_PLAYER_DATA
BOOL DATAFILE::DATAFILE_SELECT_UGC_PLAYER_DATA(int p0) // 0x52818819057F2B40 0xA4D1B30E b323
DATAFILE_SELECT_CREATOR_STATS
BOOL DATAFILE::DATAFILE_SELECT_CREATOR_STATS(int p0) // 0x01095C95CD46B624 0xB8515B2F b323
if ((NETWORK::_597F8DBA9B206FC7() > 0) && DATAFILE::_01095C95CD46B624(0)) { v_10 = DATAFILE::_GET_ROOT_OBJECT(); v_11 = DATAFILE::_OBJECT_VALUE_GET_INTEGER(v_10, "pt"); sub_20202(2, v_11); a_0 += 1; } else { a_0 += 1; }
DATAFILE_LOAD_OFFLINE_UGC
BOOL DATAFILE::DATAFILE_LOAD_OFFLINE_UGC(const char* filename) // 0xC5238C011AF405E4 0x660C468E b323
Loads a User-Generated Content (UGC) file. These files can be found in "[GTA5]\data\ugc" and "[GTA5]\common\patch\ugc". They seem to follow a naming convention, most likely of "[name]_[part].ugc". See example below for usage. Returns whether or not the file was successfully loaded. Example: DATAFILE::_LOAD_UGC_FILE("RockstarPlaylists") // loads "rockstarplaylists_00.ugc"
DATAFILE_CREATE
void DATAFILE::DATAFILE_CREATE() // 0xD27058A1CA2B13EE 0x95F8A221 b323
DATAFILE_DELETE
void DATAFILE::DATAFILE_DELETE() // 0x9AB9C1CFC8862DFB 0xDEF31B0A b323
DATAFILE_STORE_MISSION_HEADER
void DATAFILE::DATAFILE_STORE_MISSION_HEADER() // 0x2ED61456317B8178 0x4E03F632 b323
DATAFILE_FLUSH_MISSION_HEADER
void DATAFILE::DATAFILE_FLUSH_MISSION_HEADER() // 0xC55854C7D7274882 0xF11F956F b323
DATAFILE_GET_FILE_DICT
const char* DATAFILE::DATAFILE_GET_FILE_DICT() // 0x906B778CA1DC72B6 0x86DDF9C2 b323
DATAFILE_START_SAVE_TO_CLOUD
BOOL DATAFILE::DATAFILE_START_SAVE_TO_CLOUD(const char* filename) // 0x83BCCE3224735F05 0x768CBB35 b323
DATAFILE_UPDATE_SAVE_TO_CLOUD
BOOL DATAFILE::DATAFILE_UPDATE_SAVE_TO_CLOUD(BOOL* p0) // 0x4DFDD9EB705F8140 0x0B4087F7 b323
DATAFILE_IS_SAVE_PENDING
BOOL DATAFILE::DATAFILE_IS_SAVE_PENDING() // 0xBEDB96A7584AA8CF 0x5DCD0796 b323
Example: if (!DATAFILE::_BEDB96A7584AA8CF()) { if (!g_109E3) { if (((sub_d4f() == 2) == 0) && (!NETWORK::NETWORK_IS_GAME_IN_PROGRESS())) { if (NETWORK::NETWORK_IS_CLOUD_AVAILABLE()) { g_17A8B = 0; } if (!g_D52C) { sub_730(); } } } }
_0xA6EEF01087181EDD
Any DATAFILE::_0xA6EEF01087181EDD(Any p0, Any p1) // 0xA6EEF01087181EDD b2189
_0x6AD0BD5E087866CB
void DATAFILE::_0x6AD0BD5E087866CB(Any p0) // 0x6AD0BD5E087866CB b2189
_0xDBF860CF1DB8E599
Any DATAFILE::_0xDBF860CF1DB8E599(Any p0) // 0xDBF860CF1DB8E599 b2189
DATADICT_SET_BOOL
void DATAFILE::DATADICT_SET_BOOL(Any* objectData, const char* key, BOOL value) // 0x35124302A556A325 0x9B29D99B b323
DATADICT_SET_INT
void DATAFILE::DATADICT_SET_INT(Any* objectData, const char* key, int value) // 0xE7E035450A7948D5 0xEFCF554A b323
DATADICT_SET_FLOAT
void DATAFILE::DATADICT_SET_FLOAT(Any* objectData, const char* key, float value) // 0xC27E1CC2D795105E 0xE972CACF b323
DATADICT_SET_STRING
void DATAFILE::DATADICT_SET_STRING(Any* objectData, const char* key, const char* value) // 0x8FF3847DADD8E30C 0xD437615C b323
DATADICT_SET_VECTOR
void DATAFILE::DATADICT_SET_VECTOR(Any* objectData, const char* key, float valueX, float valueY, float valueZ) // 0x4CD49B76338C7DEE 0x75FC6C3C b323
DATADICT_CREATE_DICT
Any* DATAFILE::DATADICT_CREATE_DICT(Any* objectData, const char* key) // 0xA358F56F10732EE1 0x96A8E05F b323
DATADICT_CREATE_ARRAY
Any* DATAFILE::DATADICT_CREATE_ARRAY(Any* objectData, const char* key) // 0x5B11728527CA6E5F 0x03939B8D b323
DATADICT_GET_BOOL
BOOL DATAFILE::DATADICT_GET_BOOL(Any* objectData, const char* key) // 0x1186940ED72FFEEC 0x8876C872 b323
DATADICT_GET_INT
int DATAFILE::DATADICT_GET_INT(Any* objectData, const char* key) // 0x78F06F6B1FB5A80C 0xA6C68693 b323
DATADICT_GET_FLOAT
float DATAFILE::DATADICT_GET_FLOAT(Any* objectData, const char* key) // 0x06610343E73B9727 0xA92C1AF4 b323
DATADICT_GET_STRING
const char* DATAFILE::DATADICT_GET_STRING(Any* objectData, const char* key) // 0x3D2FD9E763B24472 0x942160EC b323
DATADICT_GET_VECTOR
Vector3 DATAFILE::DATADICT_GET_VECTOR(Any* objectData, const char* key) // 0x46CD3CB66E0825CC 0xE84A127A b323
DATADICT_GET_DICT
Any* DATAFILE::DATADICT_GET_DICT(Any* objectData, const char* key) // 0xB6B9DDC412FCEEE2 0xC9C13D8D b323
DATADICT_GET_ARRAY
Any* DATAFILE::DATADICT_GET_ARRAY(Any* objectData, const char* key) // 0x7A983AA9DA2659ED 0x1F2F7D00 b323
DATADICT_GET_TYPE
int DATAFILE::DATADICT_GET_TYPE(Any* objectData, const char* key) // 0x031C55ED33227371 0x2678342A b323
Types: 1 = Boolean 2 = Integer 3 = Float 4 = String 5 = Vector3 6 = Object 7 = Array
DATAARRAY_ADD_BOOL
void DATAFILE::DATAARRAY_ADD_BOOL(Any* arrayData, BOOL value) // 0xF8B0F5A43E928C76 0x08174B90 b323
DATAARRAY_ADD_INT
void DATAFILE::DATAARRAY_ADD_INT(Any* arrayData, int value) // 0xCABDB751D86FE93B 0xF29C0B36 b323
DATAARRAY_ADD_FLOAT
void DATAFILE::DATAARRAY_ADD_FLOAT(Any* arrayData, float value) // 0x57A995FD75D37F56 0xE4302123 b323
DATAARRAY_ADD_STRING
void DATAFILE::DATAARRAY_ADD_STRING(Any* arrayData, const char* value) // 0x2F0661C155AEEEAA 0xF3C01350 b323
DATAARRAY_ADD_VECTOR
void DATAFILE::DATAARRAY_ADD_VECTOR(Any* arrayData, float valueX, float valueY, float valueZ) // 0x407F8D034F70F0C2 0x16F464B6 b323
DATAARRAY_ADD_DICT
Any* DATAFILE::DATAARRAY_ADD_DICT(Any* arrayData) // 0x6889498B3E19C797 0xC174C71B b323
DATAARRAY_GET_BOOL
BOOL DATAFILE::DATAARRAY_GET_BOOL(Any* arrayData, int arrayIndex) // 0x50C1B2874E50C114 0xA2E5F921 b323
DATAARRAY_GET_INT
int DATAFILE::DATAARRAY_GET_INT(Any* arrayData, int arrayIndex) // 0x3E5AE19425CD74BE 0xBB120CFC b323
DATAARRAY_GET_FLOAT
float DATAFILE::DATAARRAY_GET_FLOAT(Any* arrayData, int arrayIndex) // 0xC0C527B525D7CFB5 0x08AD2CC2 b323
DATAARRAY_GET_STRING
const char* DATAFILE::DATAARRAY_GET_STRING(Any* arrayData, int arrayIndex) // 0xD3F2FFEB8D836F52 0x93F985A6 b323
DATAARRAY_GET_VECTOR
Vector3 DATAFILE::DATAARRAY_GET_VECTOR(Any* arrayData, int arrayIndex) // 0x8D2064E5B64A628A 0x80E3DA55 b323
DATAARRAY_GET_DICT
Any* DATAFILE::DATAARRAY_GET_DICT(Any* arrayData, int arrayIndex) // 0x8B5FADCC4E3A145F 0xECE81278 b323
DATAARRAY_GET_COUNT
int DATAFILE::DATAARRAY_GET_COUNT(Any* arrayData) // 0x065DB281590CEA2D 0xA8A21766 b323
DATAARRAY_GET_TYPE
int DATAFILE::DATAARRAY_GET_TYPE(Any* arrayData, int arrayIndex) // 0x3A0014ADB172A3C5 0xFA2402C8 b323
Types: 1 = Boolean 2 = Integer 3 = Float 4 = String 5 = Vector3 6 = Object 7 = Array
DECORATOR
DECOR_SET_TIME
BOOL DECORATOR::DECOR_SET_TIME(Entity entity, const char* propertyName, int timestamp) // 0x95AED7B8E39ECAA4 0xBBAEEF94 b323
DECOR_SET_BOOL
BOOL DECORATOR::DECOR_SET_BOOL(Entity entity, const char* propertyName, BOOL value) // 0x6B1E8E2ED1335B71 0x8E101F5C b323
This function sets metadata of type bool to specified entity.
DECOR_SET_FLOAT
BOOL DECORATOR::DECOR_SET_FLOAT(Entity entity, const char* propertyName, float value) // 0x211AB1DD8D0F363A 0xBC7BD5CB b323
DECOR_SET_INT
BOOL DECORATOR::DECOR_SET_INT(Entity entity, const char* propertyName, int value) // 0x0CE3AA5E1CA19E10 0xDB718B21 b323
Sets property to int.
DECOR_GET_BOOL
BOOL DECORATOR::DECOR_GET_BOOL(Entity entity, const char* propertyName) // 0xDACE671663F2F5DB 0xDBCE51E0 b323
DECOR_GET_FLOAT
float DECORATOR::DECOR_GET_FLOAT(Entity entity, const char* propertyName) // 0x6524A2F114706F43 0x8DE5382F b323
DECOR_GET_INT
int DECORATOR::DECOR_GET_INT(Entity entity, const char* propertyName) // 0xA06C969B02A97298 0xDDDE59B5 b323
DECOR_EXIST_ON
BOOL DECORATOR::DECOR_EXIST_ON(Entity entity, const char* propertyName) // 0x05661B80A8C9165F 0x74EF9C40 b323
Returns whether or not the specified property is set for the entity.
DECOR_REMOVE
BOOL DECORATOR::DECOR_REMOVE(Entity entity, const char* propertyName) // 0x00EE9F297C738720 0xE0E2640B b323
DECOR_REGISTER
void DECORATOR::DECOR_REGISTER(const char* propertyName, int type) // 0x9FD90732F56403CE 0x68BD42A9 b323
https://alloc8or.re/gta5/doc/enums/eDecorType.txt
DECOR_IS_REGISTERED_AS_TYPE
BOOL DECORATOR::DECOR_IS_REGISTERED_AS_TYPE(const char* propertyName, int type) // 0x4F14F9F870D6FBC8 0x7CF0971D b323
type: see DECOR_REGISTER
DECOR_REGISTER_LOCK
void DECORATOR::DECOR_REGISTER_LOCK() // 0xA9D14EEA259F9248 0x7F3F1C02 b323
Called after all decorator type initializations.
DLC
_0x241FCA5B1AA14F75
BOOL DLC::_0x241FCA5B1AA14F75() // 0x241FCA5B1AA14F75 0x0AF83036 b323
Only used once in scripts, in maintransition. maintransition.c4, line ~82432: if (PED::_7350823473013C02(PLAYER::PLAYER_PED_ID()) && (DECORATOR::_241FCA5B1AA14F75() == 0)) { g_2542A5 = a_1; // 'g_2542A5' used in 'building_controller.ysc' for IPL stuff? return 1; } Likely used solely for the players ped. The function it's in seems to only be used for initialization/quitting. Called among natives to discard scaleforms, disable frontend, fading in/out, etc. Neighboring strings to some calls include "HUD_JOINING", "HUD_QUITTING". Most likely ARE_*
IS_DLC_PRESENT
BOOL DLC::IS_DLC_PRESENT(Hash dlcHash) // 0x812595A0644CE1DE 0x1F321943 b323
Example: DLC::IS_DLC_PRESENT($\mpbusiness2\); ($ = gethashkey) bruteforce these: 0xB119F6D 0x96F02EE6
_0xF2E07819EF1A5289
BOOL DLC::_0xF2E07819EF1A5289() // 0xF2E07819EF1A5289 0x881B1FDB b323
MulleDK19: This function is hard-coded to always return 1.
_0x9489659372A81585
BOOL DLC::_0x9489659372A81585() // 0x9489659372A81585 0xC2169164 b323
MulleDK19: This function is hard-coded to always return 0.
_0xA213B11DFF526300
BOOL DLC::_0xA213B11DFF526300() // 0xA213B11DFF526300 0xF79A97F5 b323
MulleDK19: This function is hard-coded to always return 1.
_GET_EXTRA_CONTENT_PACK_HAS_BEEN_INSTALLED
BOOL DLC::_GET_EXTRA_CONTENT_PACK_HAS_BEEN_INSTALLED() // 0x8D30F648014A92B5 0xF69B729C b323
GET_IS_LOADING_SCREEN_ACTIVE
BOOL DLC::GET_IS_LOADING_SCREEN_ACTIVE() // 0x10D0A8F259E93EC9 0x517B601B b323
_0xC4637A6D03C24CC3
BOOL DLC::_0xC4637A6D03C24CC3() // 0xC4637A6D03C24CC3 b1734
GET_IS_LOADING_*
HAS_CLOUD_REQUESTS_FINISHED
BOOL DLC::HAS_CLOUD_REQUESTS_FINISHED(BOOL* p0, Any unused) // 0x46E2B844905BC5F0 0x6087C10C b323
Sets the value of the specified variable to 0. Always returns true.
ON_ENTER_SP
void DLC::ON_ENTER_SP() // 0xD7C10C4A637992C9 0x8BF60FC3 b323
Unloads GROUP_MAP (GTAO/MP) DLC data and loads GROUP_MAP_SP DLC. Neither are loaded by default, 0888C3502DBBEEF5 is a cognate to this function and loads MP DLC (and unloads SP DLC by extension). The original (and wrong) definition is below: This unload the GTA:O DLC map parts (like high end garages/apartments). Works in singleplayer.
ON_ENTER_MP
void DLC::ON_ENTER_MP() // 0x0888C3502DBBEEF5 0xC65586A9 b323
This loads the GTA:O dlc map parts (high end garages, apartments). Works in singleplayer. In order to use GTA:O heist IPL's you have to call this native with the following params: SET_INSTANCE_PRIORITY_MODE(1);
ENTITY
DOES_ENTITY_EXIST
BOOL ENTITY::DOES_ENTITY_EXIST(Entity entity) // 0x7239B21A38F536BA 0x3AC90869 b323
Checks whether an entity exists in the game world.
DOES_ENTITY_BELONG_TO_THIS_SCRIPT
BOOL ENTITY::DOES_ENTITY_BELONG_TO_THIS_SCRIPT(Entity entity, BOOL p1) // 0xDDE6DF5AE89981D2 0xACFEB3F9 b323
DOES_ENTITY_HAVE_DRAWABLE
BOOL ENTITY::DOES_ENTITY_HAVE_DRAWABLE(Entity entity) // 0x060D6E96F8B8E48D 0xA5B33300 b323
DOES_ENTITY_HAVE_PHYSICS
BOOL ENTITY::DOES_ENTITY_HAVE_PHYSICS(Entity entity) // 0xDA95EA3317CC5064 0x9BCD2979 b323
HAS_ENTITY_ANIM_FINISHED
BOOL ENTITY::HAS_ENTITY_ANIM_FINISHED(Entity entity, const char* animDict, const char* animName, int p3) // 0x20B711662962B472 0x1D9CAB92 b323
P3 is always 3 as far as i cant tell Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
HAS_ENTITY_BEEN_DAMAGED_BY_ANY_OBJECT
BOOL ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ANY_OBJECT(Entity entity) // 0x95EB9964FF5C5C65 0x6B74582E b323
HAS_ENTITY_BEEN_DAMAGED_BY_ANY_PED
BOOL ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ANY_PED(Entity entity) // 0x605F5A140F202491 0x53FD4A25 b323
HAS_ENTITY_BEEN_DAMAGED_BY_ANY_VEHICLE
BOOL ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ANY_VEHICLE(Entity entity) // 0xDFD5033FDBA0A9C8 0x878C2CE0 b323
HAS_ENTITY_BEEN_DAMAGED_BY_ENTITY
BOOL ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ENTITY(Entity entity1, Entity entity2, BOOL p2) // 0xC86D67D52A707CF8 0x07FC77E0 b323
Entity 1 = Victim Entity 2 = Attacker p2 seems to always be 1
HAS_ENTITY_CLEAR_LOS_TO_ENTITY
BOOL ENTITY::HAS_ENTITY_CLEAR_LOS_TO_ENTITY(Entity entity1, Entity entity2, int traceType) // 0xFCDFF7B72D23A1AC 0x53576FA7 b323
traceType is always 17 in the scripts. There is other codes used for traceType: 19 - in jewelry_prep1a 126 - in am_hunt_the_beast 256 & 287 - in fm_mission_controller
_HAS_ENTITY_CLEAR_LOS_TO_ENTITY_2
Any ENTITY::_HAS_ENTITY_CLEAR_LOS_TO_ENTITY_2(Entity entity1, Entity entity2, int traceType) // 0x394BDE2A7BBA031E b1868
HAS_ENTITY_CLEAR_LOS_TO_ENTITY_IN_FRONT
BOOL ENTITY::HAS_ENTITY_CLEAR_LOS_TO_ENTITY_IN_FRONT(Entity entity1, Entity entity2) // 0x0267D00AF114F17A 0x210D87C8 b323
Has the entity1 got a clear line of sight to the other entity2 from the direction entity1 is facing. This is one of the most CPU demanding BOOL natives in the game; avoid calling this in things like nested for-loops
HAS_ENTITY_COLLIDED_WITH_ANYTHING
BOOL ENTITY::HAS_ENTITY_COLLIDED_WITH_ANYTHING(Entity entity) // 0x8BAD02F0368D9E14 0x662A2F41 b323
Called on tick. Tested with vehicles, returns true whenever the vehicle is touching any entity. Note: for vehicles, the wheels can touch the ground and it will still return false, but if the body of the vehicle touches the ground, it will return true.
GET_LAST_MATERIAL_HIT_BY_ENTITY
Hash ENTITY::GET_LAST_MATERIAL_HIT_BY_ENTITY(Entity entity) // 0x5C3D0A935F535C4C 0xC0E3AA47 b323
GET_COLLISION_NORMAL_OF_LAST_HIT_FOR_ENTITY
Vector3 ENTITY::GET_COLLISION_NORMAL_OF_LAST_HIT_FOR_ENTITY(Entity entity) // 0xE465D4AB7CA6AE72 0xAB415C07 b323
FORCE_ENTITY_AI_AND_ANIMATION_UPDATE
void ENTITY::FORCE_ENTITY_AI_AND_ANIMATION_UPDATE(Entity entity) // 0x40FDEDB72F8293B2 0x58D9775F b323
Based on carmod_shop script decompile this takes a vehicle parameter. It is called when repair is done on initial enter.
GET_ENTITY_ANIM_CURRENT_TIME
float ENTITY::GET_ENTITY_ANIM_CURRENT_TIME(Entity entity, const char* animDict, const char* animName) // 0x346D81500D088F42 0x83943F41 b323
Returns a float value representing animation's current playtime with respect to its total playtime. This value increasing in a range from [0 to 1] and wrap back to 0 when it reach 1. Example: 0.000000 - mark the starting of animation. 0.500000 - mark the midpoint of the animation. 1.000000 - mark the end of animation. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
GET_ENTITY_ANIM_TOTAL_TIME
float ENTITY::GET_ENTITY_ANIM_TOTAL_TIME(Entity entity, const char* animDict, const char* animName) // 0x50BD2730B191E360 0x433A9D18 b323
Returns a float value representing animation's total playtime in milliseconds. Example: GET_ENTITY_ANIM_TOTAL_TIME(PLAYER_ID(),"amb@world_human_yoga@female@base","base_b") return 20800.000000 Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
GET_ANIM_DURATION
float ENTITY::GET_ANIM_DURATION(const char* animDict, const char* animName) // 0xFEDDF04D62B8D790 0x8B5E3E3D b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
GET_ENTITY_ATTACHED_TO
Entity ENTITY::GET_ENTITY_ATTACHED_TO(Entity entity) // 0x48C2BED9180FE123 0xFE1589F9 b323
GET_ENTITY_COORDS
Vector3 ENTITY::GET_ENTITY_COORDS(Entity entity, BOOL alive) // 0x3FEF770D40960D5A 0x1647F1CB b323
Gets the current coordinates for a specified entity. `entity` = The entity to get the coordinates from. `alive` = Unused by the game, potentially used by debug builds of GTA in order to assert whether or not an entity was alive.
GET_ENTITY_FORWARD_VECTOR
Vector3 ENTITY::GET_ENTITY_FORWARD_VECTOR(Entity entity) // 0x0A794A5A57F8DF91 0x84DCECBF b323
Gets the entity's forward vector.
GET_ENTITY_FORWARD_X
float ENTITY::GET_ENTITY_FORWARD_X(Entity entity) // 0x8BB4EF4214E0E6D5 0x49FAE914 b323
Gets the X-component of the entity's forward vector.
GET_ENTITY_FORWARD_Y
float ENTITY::GET_ENTITY_FORWARD_Y(Entity entity) // 0x866A4A5FAE349510 0x9E2F917C b323
Gets the Y-component of the entity's forward vector.
GET_ENTITY_HEADING
float ENTITY::GET_ENTITY_HEADING(Entity entity) // 0xE83D4F9BA2A38914 0x972CC383 b323
Returns the heading of the entity in degrees. Also know as the "Yaw" of an entity.
_GET_ENTITY_PHYSICS_HEADING
float ENTITY::_GET_ENTITY_PHYSICS_HEADING(Entity entity) // 0x846BF6291198A71E 0x9320E642 b323
Gets the heading of the entity physics in degrees, which tends to be more accurate than just "GET_ENTITY_HEADING". This can be clearly seen while, for example, ragdolling a ped/player. NOTE: The name and description of this native are based on independent research. If you find this native to be more suitable under a different name and/or described differently, please feel free to do so. GET_ENTITY_HEADING_*
GET_ENTITY_HEALTH
int ENTITY::GET_ENTITY_HEALTH(Entity entity) // 0xEEF059FAD016D209 0x8E3222B7 b323
Returns an integer value of entity's current health. Example of range for ped: - Player [0 to 200] - Ped [100 to 200] - Vehicle [0 to 1000] - Object [0 to 1000] Health is actually a float value but this native casts it to int. In order to get the actual value, do: float health = *(float *)(entityAddress + 0x280);
GET_ENTITY_MAX_HEALTH
int ENTITY::GET_ENTITY_MAX_HEALTH(Entity entity) // 0x15D757606D170C3C 0xC7AE6AA1 b323
Return an integer value of entity's maximum health. Example: - Player = 200 - Ped = 150
SET_ENTITY_MAX_HEALTH
void ENTITY::SET_ENTITY_MAX_HEALTH(Entity entity, int value) // 0x166E7CF68597D8B5 0x96F84DF8 b323
For instance: ENTITY::SET_ENTITY_MAX_HEALTH(PLAYER::PLAYER_PED_ID(), 200); // director_mode.c4: 67849
GET_ENTITY_HEIGHT
float ENTITY::GET_ENTITY_HEIGHT(Entity entity, float X, float Y, float Z, BOOL atTop, BOOL inWorldCoords) // 0x5A504562485944DD 0xEE443481 b323
GET_ENTITY_HEIGHT_ABOVE_GROUND
float ENTITY::GET_ENTITY_HEIGHT_ABOVE_GROUND(Entity entity) // 0x1DD55701034110E5 0x57F56A4D b323
Return height (z-dimension) above ground. Example: The pilot in a titan plane is 1.844176 above ground. How can i convert it to meters? Everything seems to be in meters, probably this too.
GET_ENTITY_MATRIX
void ENTITY::GET_ENTITY_MATRIX(Entity entity, Vector3* forwardVector, Vector3* rightVector, Vector3* upVector, Vector3* position) // 0xECB2FC7235A7D137 0xEB9EB001 b323
GET_ENTITY_MODEL
Hash ENTITY::GET_ENTITY_MODEL(Entity entity) // 0x9F47B058362C84B5 0xDAFCB3EC b323
Returns the model hash from the entity
GET_OFFSET_FROM_ENTITY_GIVEN_WORLD_COORDS
Vector3 ENTITY::GET_OFFSET_FROM_ENTITY_GIVEN_WORLD_COORDS(Entity entity, float posX, float posY, float posZ) // 0x2274BC1C4885E333 0x6477EC9E b323
Converts world coords (posX - Z) to coords relative to the entity Example: posX is given as 50 entity's x coord is 40 the returned x coord will then be 10 or -10, not sure haven't used this in a while (think it is 10 though).
GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS
Vector3 ENTITY::GET_OFFSET_FROM_ENTITY_IN_WORLD_COORDS(Entity entity, float offsetX, float offsetY, float offsetZ) // 0x1899F328B0E12848 0xABCF043A b323
Offset values are relative to the entity. x = left/right y = forward/backward z = up/down
GET_ENTITY_PITCH
float ENTITY::GET_ENTITY_PITCH(Entity entity) // 0xD45DC2893621E1FE 0xFCE6ECE5 b323
GET_ENTITY_QUATERNION
void ENTITY::GET_ENTITY_QUATERNION(Entity entity, float* x, float* y, float* z, float* w) // 0x7B3703D2D32DFA18 0x5154EC90 b323
w is the correct parameter name!
GET_ENTITY_ROLL
float ENTITY::GET_ENTITY_ROLL(Entity entity) // 0x831E0242595560DF 0x36610842 b323
Displays the current ROLL axis of the entity [-180.0000/180.0000+] (Sideways Roll) such as a vehicle tipped on its side
GET_ENTITY_ROTATION
Vector3 ENTITY::GET_ENTITY_ROTATION(Entity entity, int rotationOrder) // 0xAFBD61CC738D9EB9 0x8FF45B04 b323
rotationOrder is the order yaw, pitch and roll is applied. Usually 2. Returns a vector where the Z coordinate is the yaw. rotationOrder refers to the order yaw pitch roll is applied; value ranges from 0 to 5 and is usually *2* in scripts. What you use for rotationOrder when getting must be the same as rotationOrder when setting the rotation. What it returns is the yaw on the z part of the vector, which makes sense considering R* considers z as vertical. Here's a picture for those of you who don't understand pitch, yaw, and roll: www.allstar.fiu.edu/aero/images/pic5-1.gif Rotation Orders: 0: ZYX - Rotate around the z-axis, then the y-axis and finally the x-axis. 1: YZX - Rotate around the y-axis, then the z-axis and finally the x-axis. 2: ZXY - Rotate around the z-axis, then the x-axis and finally the y-axis. 3: XZY - Rotate around the x-axis, then the z-axis and finally the y-axis. 4: YXZ - Rotate around the y-axis, then the x-axis and finally the z-axis. 5: XYZ - Rotate around the x-axis, then the y-axis and finally the z-axis.
GET_ENTITY_ROTATION_VELOCITY
Vector3 ENTITY::GET_ENTITY_ROTATION_VELOCITY(Entity entity) // 0x213B91045D09B983 0x9BF8A73F b323
GET_ENTITY_SCRIPT
const char* ENTITY::GET_ENTITY_SCRIPT(Entity entity, ScrHandle* script) // 0xA6E9C38DB51D7748 0xB7F70784 b323
All ambient entities in-world seem to have the same value for the second argument (Any *script), depending on when the scripthook was activated/re-activated. I've seen numbers from ~5 to almost 70 when the value was translated with to_string. The function return value seems to always be 0.
GET_ENTITY_SPEED
float ENTITY::GET_ENTITY_SPEED(Entity entity) // 0xD5037BA82E12416F 0x9E1E4798 b323
result is in meters per second ------------------------------------------------------------ So would the conversion to mph and km/h, be along the lines of this. float speed = GET_ENTITY_SPEED(veh); float kmh = (speed * 3.6); float mph = (speed * 2.236936); ------------------------------------------------------------
GET_ENTITY_SPEED_VECTOR
Vector3 ENTITY::GET_ENTITY_SPEED_VECTOR(Entity entity, BOOL relative) // 0x9A8D700A51CB7B0D 0x3ED2B997 b323
Relative can be used for getting speed relative to the frame of the vehicle, to determine for example, if you are going in reverse (-y speed) or not (+y speed).
GET_ENTITY_UPRIGHT_VALUE
float ENTITY::GET_ENTITY_UPRIGHT_VALUE(Entity entity) // 0x95EED5A694951F9F 0xF4268190 b323
GET_ENTITY_VELOCITY
Vector3 ENTITY::GET_ENTITY_VELOCITY(Entity entity) // 0x4805D2B1D8CF94A9 0xC14C9B6B b323
GET_OBJECT_INDEX_FROM_ENTITY_INDEX
Object ENTITY::GET_OBJECT_INDEX_FROM_ENTITY_INDEX(Entity entity) // 0xD7E3B9735C0F89D6 0xBC5A9C58 b323
Simply returns whatever is passed to it (Regardless of whether the handle is valid or not).
GET_PED_INDEX_FROM_ENTITY_INDEX
Ped ENTITY::GET_PED_INDEX_FROM_ENTITY_INDEX(Entity entity) // 0x04A2A40C73395041 0xC46F74AC b323
Simply returns whatever is passed to it (Regardless of whether the handle is valid or not).
GET_VEHICLE_INDEX_FROM_ENTITY_INDEX
Vehicle ENTITY::GET_VEHICLE_INDEX_FROM_ENTITY_INDEX(Entity entity) // 0x4B53F92932ADFAC0 0xC69CF43D b323
Simply returns whatever is passed to it (Regardless of whether the handle is valid or not).
GET_WORLD_POSITION_OF_ENTITY_BONE
Vector3 ENTITY::GET_WORLD_POSITION_OF_ENTITY_BONE(Entity entity, int boneIndex) // 0x44A8FCB8ED227738 0x7C6339DF b323
Returns the coordinates of an entity-bone.
GET_NEAREST_PLAYER_TO_ENTITY
Player ENTITY::GET_NEAREST_PLAYER_TO_ENTITY(Entity entity) // 0x7196842CB375CDB3 0xCE17FDEC b323
GET_NEAREST_PLAYER_TO_ENTITY_ON_TEAM
Player ENTITY::GET_NEAREST_PLAYER_TO_ENTITY_ON_TEAM(Entity entity, int team) // 0x4DC9A62F844D9337 0xB1808F56 b323
GET_ENTITY_TYPE
int ENTITY::GET_ENTITY_TYPE(Entity entity) // 0x8ACD366038D14505 0x0B1BD08D b323
Returns: 0 = no entity 1 = ped 2 = vehicle 3 = object
GET_ENTITY_POPULATION_TYPE
int ENTITY::GET_ENTITY_POPULATION_TYPE(Entity entity) // 0xF6F5161F4534EDFF 0xFC30DDFF b323
A population type, from the following enum: https://alloc8or.re/gta5/doc/enums/ePopulationType.txt
IS_AN_ENTITY
BOOL ENTITY::IS_AN_ENTITY(int handle) // 0x731EC8A916BD11A1 0xD4B9715A b323
IS_ENTITY_A_PED
BOOL ENTITY::IS_ENTITY_A_PED(Entity entity) // 0x524AC5ECEA15343E 0x55D33EAB b323
IS_ENTITY_A_MISSION_ENTITY
BOOL ENTITY::IS_ENTITY_A_MISSION_ENTITY(Entity entity) // 0x0A7B270912999B3C 0x2632E124 b323
IS_ENTITY_A_VEHICLE
BOOL ENTITY::IS_ENTITY_A_VEHICLE(Entity entity) // 0x6AC7003FA6E5575E 0xBE800B01 b323
IS_ENTITY_AN_OBJECT
BOOL ENTITY::IS_ENTITY_AN_OBJECT(Entity entity) // 0x8D68C8FD0FACA94E 0x3F52E561 b323
IS_ENTITY_AT_COORD
BOOL ENTITY::IS_ENTITY_AT_COORD(Entity entity, float xPos, float yPos, float zPos, float xSize, float ySize, float zSize, BOOL p7, BOOL p8, int p9) // 0x20B60995556D004F 0xD749B606 b323
Checks if entity is within x/y/zSize distance of x/y/z. Last three are unknown ints, almost always p7 = 0, p8 = 1, p9 = 0
IS_ENTITY_AT_ENTITY
BOOL ENTITY::IS_ENTITY_AT_ENTITY(Entity entity1, Entity entity2, float xSize, float ySize, float zSize, BOOL p5, BOOL p6, int p7) // 0x751B70C3D034E187 0xDABDCB52 b323
Checks if entity1 is within the box defined by x/y/zSize of entity2. Last three parameters are almost alwasy p5 = 0, p6 = 1, p7 = 0
IS_ENTITY_ATTACHED
BOOL ENTITY::IS_ENTITY_ATTACHED(Entity entity) // 0xB346476EF1A64897 0xEC1479D5 b323
Whether the entity is attached to any other entity.
IS_ENTITY_ATTACHED_TO_ANY_OBJECT
BOOL ENTITY::IS_ENTITY_ATTACHED_TO_ANY_OBJECT(Entity entity) // 0xCF511840CEEDE0CC 0x0B5DE340 b323
IS_ENTITY_ATTACHED_TO_ANY_PED
BOOL ENTITY::IS_ENTITY_ATTACHED_TO_ANY_PED(Entity entity) // 0xB1632E9A5F988D11 0x9D7A609C b323
IS_ENTITY_ATTACHED_TO_ANY_VEHICLE
BOOL ENTITY::IS_ENTITY_ATTACHED_TO_ANY_VEHICLE(Entity entity) // 0x26AA915AD89BFB4B 0xDE5C995E b323
IS_ENTITY_ATTACHED_TO_ENTITY
BOOL ENTITY::IS_ENTITY_ATTACHED_TO_ENTITY(Entity from, Entity to) // 0xEFBE71898A993728 0xB0ABFEA8 b323
IS_ENTITY_DEAD
BOOL ENTITY::IS_ENTITY_DEAD(Entity entity, BOOL p1) // 0x5F9532F3B5CC2551 0xB6F7CBAC b323
IS_ENTITY_IN_AIR
BOOL ENTITY::IS_ENTITY_IN_AIR(Entity entity) // 0x886E37EC497200B6 0xA4157987 b323
IS_ENTITY_IN_ANGLED_AREA
BOOL ENTITY::IS_ENTITY_IN_ANGLED_AREA(Entity entity, float x1, float y1, float z1, float x2, float y2, float z2, float width, BOOL debug, BOOL includeZ, Any p10) // 0x51210CED3DA1C78A 0x883622FA b323
`p8` is a debug flag invoking functions in the same path as ``DRAW_MARKER`` `p10` is some entity flag check, also used in `IS_ENTITY_AT_ENTITY`, `IS_ENTITY_IN_AREA`, and `IS_ENTITY_AT_COORD`. See IS_POINT_IN_ANGLED_AREA for the definition of an angled area.
IS_ENTITY_IN_AREA
BOOL ENTITY::IS_ENTITY_IN_AREA(Entity entity, float x1, float y1, float z1, float x2, float y2, float z2, BOOL p7, BOOL p8, Any p9) // 0x54736AA40E271165 0x8C2DFA9D b323
IS_ENTITY_IN_ZONE
BOOL ENTITY::IS_ENTITY_IN_ZONE(Entity entity, const char* zone) // 0xB6463CF6AF527071 0x45C82B21 b323
Full list of zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/zones.json
IS_ENTITY_IN_WATER
BOOL ENTITY::IS_ENTITY_IN_WATER(Entity entity) // 0xCFB0A0D8EDD145A3 0x4C3C2508 b323
GET_ENTITY_SUBMERGED_LEVEL
float ENTITY::GET_ENTITY_SUBMERGED_LEVEL(Entity entity) // 0xE81AFC1BC4CC41CE 0x0170F68C b323
Get how much of the entity is submerged. 1.0f is whole entity.
_0x694E00132F2823ED
void ENTITY::_0x694E00132F2823ED(Entity entity, BOOL toggle) // 0x694E00132F2823ED 0x40C84A74 b323
SET_ENTITY_R*
IS_ENTITY_ON_SCREEN
BOOL ENTITY::IS_ENTITY_ON_SCREEN(Entity entity) // 0xE659E47AF827484B 0xC1FEC5ED b323
Returns true if the entity is in between the minimum and maximum values for the 2d screen coords. This means that it will return true even if the entity is behind a wall for example, as long as you're looking at their location. Chipping
IS_ENTITY_PLAYING_ANIM
BOOL ENTITY::IS_ENTITY_PLAYING_ANIM(Entity entity, const char* animDict, const char* animName, int taskFlag) // 0x1F0B79228E461EC9 0x0D130D34 b323
See also PED::IS_SCRIPTED_SCENARIO_PED_USING_CONDITIONAL_ANIM 0x6EC47A344923E1ED 0x3C30B447 Taken from ENTITY::IS_ENTITY_PLAYING_ANIM(PLAYER::PLAYER_PED_ID(), "creatures@shark@move", "attack_player", 3) p4 is always 3 in the scripts. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
IS_ENTITY_STATIC
BOOL ENTITY::IS_ENTITY_STATIC(Entity entity) // 0x1218E6886D3D8327 0x928E12E9 b323
a static ped will not react to natives like "APPLY_FORCE_TO_ENTITY" or "SET_ENTITY_VELOCITY" and oftentimes will not react to task-natives like "TASK::TASK_COMBAT_PED". The only way I know of to make one of these peds react is to ragdoll them (or sometimes to use CLEAR_PED_TASKS_IMMEDIATELY(). Static peds include almost all far-away peds, beach-combers, peds in certain scenarios, peds crossing a crosswalk, peds walking to get back into their cars, and others. If anyone knows how to make a ped non-static without ragdolling them, please edit this with the solution. how can I make an entity static???
IS_ENTITY_TOUCHING_ENTITY
BOOL ENTITY::IS_ENTITY_TOUCHING_ENTITY(Entity entity, Entity targetEntity) // 0x17FFC1B2BA35A494 0x6B931477 b323
IS_ENTITY_TOUCHING_MODEL
BOOL ENTITY::IS_ENTITY_TOUCHING_MODEL(Entity entity, Hash modelHash) // 0x0F42323798A58C8C 0x307E7611 b323
IS_ENTITY_UPRIGHT
BOOL ENTITY::IS_ENTITY_UPRIGHT(Entity entity, float angle) // 0x5333F526F6AB19AA 0x3BCDF4E1 b323
IS_ENTITY_UPSIDEDOWN
BOOL ENTITY::IS_ENTITY_UPSIDEDOWN(Entity entity) // 0x1DBD58820FA61D71 0x5ACAA48F b323
IS_ENTITY_VISIBLE
BOOL ENTITY::IS_ENTITY_VISIBLE(Entity entity) // 0x47D6F43D77935C75 0x120B4ED5 b323
IS_ENTITY_VISIBLE_TO_SCRIPT
BOOL ENTITY::IS_ENTITY_VISIBLE_TO_SCRIPT(Entity entity) // 0xD796CB5BA8F20E32 0x5D240E9D b323
IS_ENTITY_OCCLUDED
BOOL ENTITY::IS_ENTITY_OCCLUDED(Entity entity) // 0xE31C2C72B8692B64 0x46BC5B40 b323
WOULD_ENTITY_BE_OCCLUDED
BOOL ENTITY::WOULD_ENTITY_BE_OCCLUDED(Hash entityModelHash, float x, float y, float z, BOOL p4) // 0xEE5D2A122E09EC42 0xEA127CBC b323
IS_ENTITY_WAITING_FOR_WORLD_COLLISION
BOOL ENTITY::IS_ENTITY_WAITING_FOR_WORLD_COLLISION(Entity entity) // 0xD05BFF0C0A12C68F 0x00AB7A4A b323
APPLY_FORCE_TO_ENTITY_CENTER_OF_MASS
void ENTITY::APPLY_FORCE_TO_ENTITY_CENTER_OF_MASS(Entity entity, int forceType, float x, float y, float z, BOOL p5, BOOL isDirectionRel, BOOL isForceRel, BOOL p8) // 0x18FF00FC7EFF559E 0x28924E98 b323
Applies a force to the specified entity. **List of force types (p1)**: public enum ForceType { MinForce = 0, MaxForceRot = 1, MinForce2 = 2, MaxForceRot2 = 3, ForceNoRot = 4, ForceRotPlusForce = 5 } Research/documentation on the gtaforums can be found here https://gtaforums.com/topic/885669-precisely-define-object-physics/) and here https://gtaforums.com/topic/887362-apply-forces-and-momentums-to-entityobject/. p6/relative - makes the xyz force not relative to world coords, but to something else p7/highForce - setting false will make the force really low
APPLY_FORCE_TO_ENTITY
void ENTITY::APPLY_FORCE_TO_ENTITY(Entity entity, int forceFlags, float x, float y, float z, float offX, float offY, float offZ, int boneIndex, BOOL isDirectionRel, BOOL ignoreUpVec, BOOL isForceRel, BOOL p12, BOOL p13) // 0xC5F68BE9613E2D18 0xC1C0855A b323
Documented here: gtaforums.com/topic/885669-precisely-define-object-physics/ gtaforums.com/topic/887362-apply-forces-and-momentums-to-entityobject/ forceFlags: First bit (lowest): Strong force flag, factor 100 Second bit: Unkown flag Third bit: Momentum flag=1 (vector (x,y,z) is a momentum, more research needed) If higher bits are unequal 0 the function doesn't applay any forces at all. (As integer possible values are 0-7) 0: weak force 1: strong force 2: same as 0 (2nd bit?) 3: same as 1 4: weak momentum 5: strong momentum 6: same as 4 7: same as 5 isLocal: vector defined in local (body-fixed) coordinate frame isMassRel: if true the force gets multiplied with the objects mass (this is why it was known as highForce) and different objects will have the same acceleration. p8 !!! Whenever I set this !=0, my script stopped.
ATTACH_ENTITY_TO_ENTITY
void ENTITY::ATTACH_ENTITY_TO_ENTITY(Entity entity1, Entity entity2, int boneIndex, float xPos, float yPos, float zPos, float xRot, float yRot, float zRot, BOOL p9, BOOL useSoftPinning, BOOL collision, BOOL isPed, int vertexIndex, BOOL fixedRot) // 0x6B9BBD38AB0796DF 0xEC024237 b323
Attaches entity1 to bone (boneIndex) of entity2. boneIndex - this is different to boneID, use GET_PED_BONE_INDEX to get the index from the ID. use the index for attaching to specific bones. entity1 will be attached to entity2's centre if bone index given doesn't correspond to bone indexes for that entity type. useSoftPinning - if set to false attached entity will not detach when fixed collision - controls collision between the two entities (FALSE disables collision). isPed - pitch doesnt work when false and roll will only work on negative numbers (only peds) vertexIndex - position of vertex fixedRot - if false it ignores entity vector
_ATTACH_ENTITY_BONE_TO_ENTITY_BONE
void ENTITY::_ATTACH_ENTITY_BONE_TO_ENTITY_BONE(Entity entity1, Entity entity2, int boneIndex1, int boneIndex2, BOOL p4, BOOL p5) // 0x5C48B75732C8456C b791
_ATTACH_ENTITY_BONE_TO_ENTITY_BONE_PHYSICALLY
void ENTITY::_ATTACH_ENTITY_BONE_TO_ENTITY_BONE_PHYSICALLY(Entity entity1, Entity entity2, int boneIndex1, int boneIndex2, BOOL p4, BOOL p5) // 0xFD1695C5D3B05439 b791
ATTACH_ENTITY_TO_ENTITY_PHYSICALLY
void ENTITY::ATTACH_ENTITY_TO_ENTITY_PHYSICALLY(Entity entity1, Entity entity2, int boneIndex1, int boneIndex2, float xPos1, float yPos1, float zPos1, float xPos2, float yPos2, float zPos2, float xRot, float yRot, float zRot, float breakForce, BOOL fixedRot, BOOL p15, BOOL collision, BOOL p17, int p18) // 0xC3675780C92F90F9 0x0547417F b323
breakForce is the amount of force required to break the bond. p14 - is always 1 in scripts p15 - is 1 or 0 in scripts - unknoun what it does p16 - controls collision between the two entities (FALSE disables collision). p17 - do not teleport entity to be attached to the position of the bone Index of the target entity (if 1, entity will not be teleported to target bone) p18 - is always 2 in scripts.
PROCESS_ENTITY_ATTACHMENTS
void ENTITY::PROCESS_ENTITY_ATTACHMENTS(Entity entity) // 0xF4080490ADC51C6F 0x6909BA59 b323
Called to update entity attachments.
GET_ENTITY_BONE_INDEX_BY_NAME
int ENTITY::GET_ENTITY_BONE_INDEX_BY_NAME(Entity entity, const char* boneName) // 0xFB71170B7E76ACBA 0xE4ECAC22 b323
Returns the index of the bone. If the bone was not found, -1 will be returned. list: pastebin.com/D7JMnX1g BoneNames: chassis, windscreen, seat_pside_r, seat_dside_r, bodyshell, suspension_lm, suspension_lr, platelight, attach_female, attach_male, bonnet, boot, chassis_dummy, //Center of the dummy chassis_Control, //Not found yet door_dside_f, //Door left, front door_dside_r, //Door left, back door_pside_f, //Door right, front door_pside_r, //Door right, back Gun_GripR, windscreen_f, platelight, //Position where the light above the numberplate is located VFX_Emitter, window_lf, //Window left, front window_lr, //Window left, back window_rf, //Window right, front window_rr, //Window right, back engine, //Position of the engine gun_ammo, ROPE_ATTATCH, //Not misspelled. In script "finale_heist2b.c4". wheel_lf, //Wheel left, front wheel_lr, //Wheel left, back wheel_rf, //Wheel right, front wheel_rr, //Wheel right, back exhaust, //Exhaust. shows only the position of the stock-exhaust overheat, //A position on the engine(not exactly sure, how to name it) misc_e, //Not a car-bone. seat_dside_f, //Driver-seat seat_pside_f, //Seat next to driver Gun_Nuzzle, seat_r I doubt that the function is case-sensitive, since I found a "Chassis" and a "chassis". - Just tested: Definitely not case-sensitive.
CLEAR_ENTITY_LAST_DAMAGE_ENTITY
void ENTITY::CLEAR_ENTITY_LAST_DAMAGE_ENTITY(Entity entity) // 0xA72CD9CA74A5ECBA 0x2B83F43B b323
DELETE_ENTITY
void ENTITY::DELETE_ENTITY(Entity* entity) // 0xAE3CBE5BF394C9C9 0xFAA3D236 b323
Deletes the specified entity, then sets the handle pointed to by the pointer to NULL.
DETACH_ENTITY
void ENTITY::DETACH_ENTITY(Entity entity, BOOL dynamic, BOOL collision) // 0x961AC54BF0613F5D 0xC8EFCB41 b323
If `collision` is set to true, both entities won't collide with the other until the distance between them is above 4 meters. Set `dynamic` to true to keep velocity after dettaching
FREEZE_ENTITY_POSITION
void ENTITY::FREEZE_ENTITY_POSITION(Entity entity, BOOL toggle) // 0x428CA6DBD1094446 0x65C16D57 b323
Freezes or unfreezes an entity preventing its coordinates to change by the player if set to `true`. You can still change the entity position using SET_ENTITY_COORDS.
_SET_ENTITY_CLEANUP_BY_ENGINE
void ENTITY::_SET_ENTITY_CLEANUP_BY_ENGINE(Entity entity, BOOL toggle) // 0x3910051CCECDB00C 0xD3850671 b323
True means it can be deleted by the engine when switching lobbies/missions/etc, false means the script is expected to clean it up.
PLAY_ENTITY_ANIM
BOOL ENTITY::PLAY_ENTITY_ANIM(Entity entity, const char* animName, const char* animDict, float p3, BOOL loop, BOOL stayInAnim, BOOL p6, float delta, Any bitset) // 0x7FB218262B810701 0x878753D5 b323
delta and bitset are guessed fields. They are based on the fact that most of the calls have 0 or nil field types passed in. The only time bitset has a value is 0x4000 and the only time delta has a value is during stealth with usually <1.0f values. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
PLAY_SYNCHRONIZED_ENTITY_ANIM
BOOL ENTITY::PLAY_SYNCHRONIZED_ENTITY_ANIM(Entity entity, int syncedScene, const char* animation, const char* propName, float p4, float p5, Any p6, float p7) // 0xC77720A12FE14A86 0x012760AA b323
p4 and p7 are usually 1000.0f. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
PLAY_SYNCHRONIZED_MAP_ENTITY_ANIM
BOOL ENTITY::PLAY_SYNCHRONIZED_MAP_ENTITY_ANIM(float p0, float p1, float p2, float p3, Any p4, Any p5, Any* p6, Any* p7, float p8, float p9, Any p10, float p11) // 0xB9C54555ED30FBC4 0xEB4CBA74 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
STOP_SYNCHRONIZED_MAP_ENTITY_ANIM
BOOL ENTITY::STOP_SYNCHRONIZED_MAP_ENTITY_ANIM(float p0, float p1, float p2, float p3, Any p4, float p5) // 0x11E79CAB7183B6F5 0x7253D5B2 b323
STOP_ENTITY_ANIM
Any ENTITY::STOP_ENTITY_ANIM(Entity entity, const char* animation, const char* animGroup, float p3) // 0x28004F88151E03E0 0xC4769830 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json RAGEPluginHook list: docs.ragepluginhook.net/html/62951c37-a440-478c-b389-c471230ddfc5.htm
STOP_SYNCHRONIZED_ENTITY_ANIM
BOOL ENTITY::STOP_SYNCHRONIZED_ENTITY_ANIM(Entity entity, float p1, BOOL p2) // 0x43D3807C077261E3 0xE27D2FC1 b323
p1 sync task id?
HAS_ANIM_EVENT_FIRED
BOOL ENTITY::HAS_ANIM_EVENT_FIRED(Entity entity, Hash actionHash) // 0xEAF4CD9EA3E7E922 0x66571CA0 b323
if (ENTITY::HAS_ANIM_EVENT_FIRED(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("CreateObject")))
FIND_ANIM_EVENT_PHASE
BOOL ENTITY::FIND_ANIM_EVENT_PHASE(const char* animDictionary, const char* animName, const char* p2, Any* p3, Any* p4) // 0x07F1BE2BCCAA27A7 0xC41DDA62 b323
In the script "player_scene_t_bbfight.c4": "if (ENTITY::FIND_ANIM_EVENT_PHASE(&l_16E, &l_19F[v_4/*16*/], v_9, &v_A, &v_B))" -- &l_16E (p0) is requested as an anim dictionary earlier in the script. -- &l_19F[v_4/*16*/] (p1) is used in other natives in the script as the "animation" param. -- v_9 (p2) is instantiated as "victim_fall"; I'm guessing that's another anim --v_A and v_B (p3 & p4) are both set as -1.0, but v_A is used immediately after this native for: "if (v_A < ENTITY::GET_ENTITY_ANIM_CURRENT_TIME(...))" Both v_A and v_B are seemingly used to contain both Vector3's and floats, so I can't say what either really is other than that they are both output parameters. p4 looks more like a *Vector3 though -alphazolam Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
SET_ENTITY_ANIM_CURRENT_TIME
void ENTITY::SET_ENTITY_ANIM_CURRENT_TIME(Entity entity, const char* animDictionary, const char* animName, float time) // 0x4487C259F0F70977 0x99D90735 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
SET_ENTITY_ANIM_SPEED
void ENTITY::SET_ENTITY_ANIM_SPEED(Entity entity, const char* animDictionary, const char* animName, float speedMultiplier) // 0x28D1A16553C51776 0x3990C90A b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
SET_ENTITY_AS_MISSION_ENTITY
void ENTITY::SET_ENTITY_AS_MISSION_ENTITY(Entity entity, BOOL p1, BOOL p2) // 0xAD738C3085FE7E11 0x5D1F9E0F b323
Makes the specified entity (ped, vehicle or object) persistent. Persistent entities will not automatically be removed by the engine. p1 has no effect when either its on or off maybe a quick disassembly will tell us what it does p2 has no effect when either its on or off maybe a quick disassembly will tell us what it does
SET_ENTITY_AS_NO_LONGER_NEEDED
void ENTITY::SET_ENTITY_AS_NO_LONGER_NEEDED(Entity* entity) // 0xB736A491E64A32CF 0xADF2267C b323
Marks the specified entity (ped, vehicle or object) as no longer needed. Entities marked as no longer needed, will be deleted as the engine sees fit.
SET_PED_AS_NO_LONGER_NEEDED
void ENTITY::SET_PED_AS_NO_LONGER_NEEDED(Ped* ped) // 0x2595DD4236549CE3 0x9A388380 b323
This is an alias of SET_ENTITY_AS_NO_LONGER_NEEDED.
SET_VEHICLE_AS_NO_LONGER_NEEDED
void ENTITY::SET_VEHICLE_AS_NO_LONGER_NEEDED(Vehicle* vehicle) // 0x629BFA74418D6239 0x9B0E10BE b323
This is an alias of SET_ENTITY_AS_NO_LONGER_NEEDED.
SET_OBJECT_AS_NO_LONGER_NEEDED
void ENTITY::SET_OBJECT_AS_NO_LONGER_NEEDED(Object* object) // 0x3AE22DEB5BA5A3E6 0x3F6B949F b323
This is an alias of SET_ENTITY_AS_NO_LONGER_NEEDED.
SET_ENTITY_CAN_BE_DAMAGED
void ENTITY::SET_ENTITY_CAN_BE_DAMAGED(Entity entity, BOOL toggle) // 0x1760FFA8AB074D66 0x60B6E744 b323
_GET_ENTITY_CAN_BE_DAMAGED
BOOL ENTITY::_GET_ENTITY_CAN_BE_DAMAGED(Entity entity) // 0xD95CC5D2AB15A09F b757
SET_ENTITY_CAN_BE_DAMAGED_BY_RELATIONSHIP_GROUP
void ENTITY::SET_ENTITY_CAN_BE_DAMAGED_BY_RELATIONSHIP_GROUP(Entity entity, BOOL bCanBeDamaged, int relGroup) // 0xE22D8FDE858B8119 0x34165B5D b323
_0x352E2B5CF420BF3B
void ENTITY::_0x352E2B5CF420BF3B(Any p0, Any p1) // 0x352E2B5CF420BF3B b573
SET_ENTITY_CAN_BE_TARGETED_WITHOUT_LOS
void ENTITY::SET_ENTITY_CAN_BE_TARGETED_WITHOUT_LOS(Entity entity, BOOL toggle) // 0xD3997889736FD899 0x3B13797C b323
Sets whether the entity can be targeted without being in line-of-sight.
SET_ENTITY_COLLISION
void ENTITY::SET_ENTITY_COLLISION(Entity entity, BOOL toggle, BOOL keepPhysics) // 0x1A9205C1B9EE827F 0x139FD37D b323
GET_ENTITY_COLLISION_DISABLED
BOOL ENTITY::GET_ENTITY_COLLISION_DISABLED(Entity entity) // 0xCCF1E97BEFDAE480 0xE8C0C629 b323
SET_ENTITY_COMPLETELY_DISABLE_COLLISION
void ENTITY::SET_ENTITY_COMPLETELY_DISABLE_COLLISION(Entity entity, BOOL toggle, BOOL keepPhysics) // 0x9EBC85ED0FFFE51C 0xBD0D4831 b323
SET_ENTITY_COORDS
void ENTITY::SET_ENTITY_COORDS(Entity entity, float xPos, float yPos, float zPos, BOOL xAxis, BOOL yAxis, BOOL zAxis, BOOL clearArea) // 0x06843DA7060A026B 0xDF70B41B b323
p7 is always 1 in the scripts. Set to 1, an area around the destination coords for the moved entity is cleared from other entities. Often ends with 1, 0, 0, 1); in the scripts. It works. Axis - Invert Axis Flags
SET_ENTITY_COORDS_WITHOUT_PLANTS_RESET
void ENTITY::SET_ENTITY_COORDS_WITHOUT_PLANTS_RESET(Entity entity, float xPos, float yPos, float zPos, BOOL alive, BOOL deadFlag, BOOL ragdollFlag, BOOL clearArea) // 0x621873ECE1178967 0x749B282E b323
SET_ENTITY_COORDS_NO_OFFSET
void ENTITY::SET_ENTITY_COORDS_NO_OFFSET(Entity entity, float xPos, float yPos, float zPos, BOOL xAxis, BOOL yAxis, BOOL zAxis) // 0x239A3351AC1DA385 0x4C83DE8D b323
Axis - Invert Axis Flags
SET_ENTITY_DYNAMIC
void ENTITY::SET_ENTITY_DYNAMIC(Entity entity, BOOL toggle) // 0x1718DE8E3F2823CA 0x236F525B b323
SET_ENTITY_HEADING
void ENTITY::SET_ENTITY_HEADING(Entity entity, float heading) // 0x8E2530AA8ADA980E 0xE0FF064D b323
Set the heading of an entity in degrees also known as "Yaw".
SET_ENTITY_HEALTH
void ENTITY::SET_ENTITY_HEALTH(Entity entity, int health, int p2) // 0x6B76DC1F3AE6E6A3 0xFBCD1831 b323
health >= 0 male ped ~= 100 - 200 female ped ~= 0 - 100
SET_ENTITY_INVINCIBLE
void ENTITY::SET_ENTITY_INVINCIBLE(Entity entity, BOOL toggle) // 0x3882114BDE571AD4 0xC1213A21 b323
Sets a ped or an object totally invincible. It doesn't take any kind of damage. Peds will not ragdoll on explosions and the tazer animation won't apply either. If you use this for a ped and you want Ragdoll to stay enabled, then do: *(DWORD *)(pedAddress + 0x188) |= (1 << 9); Use this if you want to get the invincibility status: bool IsPedInvincible(Ped ped) { auto addr = getScriptHandleBaseAddress(ped); if (addr) { DWORD flag = *(DWORD *)(addr + 0x188); return ((flag & (1 << 8)) != 0) || ((flag & (1 << 9)) != 0); } return false; }
SET_ENTITY_IS_TARGET_PRIORITY
void ENTITY::SET_ENTITY_IS_TARGET_PRIORITY(Entity entity, BOOL p1, float p2) // 0xEA02E132F5C68722 0x9729EE32 b323
SET_ENTITY_LIGHTS
void ENTITY::SET_ENTITY_LIGHTS(Entity entity, BOOL toggle) // 0x7CFBA6A80BDF3874 0xE8FC85AF b323
SET_ENTITY_LOAD_COLLISION_FLAG
void ENTITY::SET_ENTITY_LOAD_COLLISION_FLAG(Entity entity, BOOL toggle, Any p2) // 0x0DC7CABAB1E9B67E 0xC52F295B b323
Loads collision grid for an entity spawned outside of a player's loaded area. This allows peds to execute tasks rather than sit dormant because of a lack of a physics grid. Certainly not the main usage of this native but when set to true for a Vehicle, it will prevent the vehicle to explode if it is spawned far away from the player.
HAS_COLLISION_LOADED_AROUND_ENTITY
BOOL ENTITY::HAS_COLLISION_LOADED_AROUND_ENTITY(Entity entity) // 0xE9676F61BC0B3321 0x851687F9 b323
SET_ENTITY_MAX_SPEED
void ENTITY::SET_ENTITY_MAX_SPEED(Entity entity, float speed) // 0x0E46A3FCBDE2A1B1 0x46AFFED3 b323
SET_ENTITY_ONLY_DAMAGED_BY_PLAYER
void ENTITY::SET_ENTITY_ONLY_DAMAGED_BY_PLAYER(Entity entity, BOOL toggle) // 0x79F020FF9EDC0748 0x4B707F50 b323
SET_ENTITY_ONLY_DAMAGED_BY_RELATIONSHIP_GROUP
void ENTITY::SET_ENTITY_ONLY_DAMAGED_BY_RELATIONSHIP_GROUP(Entity entity, BOOL p1, Any p2) // 0x7022BD828FA0B082 0x202237E2 b323
SET_ENTITY_PROOFS
void ENTITY::SET_ENTITY_PROOFS(Entity entity, BOOL bulletProof, BOOL fireProof, BOOL explosionProof, BOOL collisionProof, BOOL meleeProof, BOOL p6, BOOL p7, BOOL drownProof) // 0xFAEE099C6F890BB8 0x7E9EAB66 b323
Enable / disable each type of damage. Can't get drownProof to work. -------------- p7 is to to '1' in am_mp_property_ext/int: entity::set_entity_proofs(uParam0->f_19, true, true, true, true, true, true, 1, true);
_GET_ENTITY_PROOFS
BOOL ENTITY::_GET_ENTITY_PROOFS(Entity entity, BOOL* bulletProof, BOOL* fireProof, BOOL* explosionProof, BOOL* collisionProof, BOOL* meleeProof, BOOL* steamProof, BOOL* p7, BOOL* drownProof) // 0xBE8CD9BE829BBEBF b1604
SET_ENTITY_QUATERNION
void ENTITY::SET_ENTITY_QUATERNION(Entity entity, float x, float y, float z, float w) // 0x77B21BE7AC540F07 0x83B6046F b323
w is the correct parameter name!
SET_ENTITY_RECORDS_COLLISIONS
void ENTITY::SET_ENTITY_RECORDS_COLLISIONS(Entity entity, BOOL toggle) // 0x0A50A1EEDAD01E65 0x6B189A1A b323
SET_ENTITY_ROTATION
void ENTITY::SET_ENTITY_ROTATION(Entity entity, float pitch, float roll, float yaw, int rotationOrder, BOOL p5) // 0x8524A8B0171D5E07 0x0A345EFE b323
rotationOrder refers to the order yaw pitch roll is applied value ranges from 0 to 5. What you use for rotationOrder when setting must be the same as rotationOrder when getting the rotation. Unsure what value corresponds to what rotation order, more testing will be needed for that. For the most part R* uses 1 or 2 as the order. p5 is usually set as true
SET_ENTITY_VISIBLE
void ENTITY::SET_ENTITY_VISIBLE(Entity entity, BOOL toggle, BOOL unk) // 0xEA1C610A04DB6BBB 0xD043E8E1 b323
unk was always 0.
_0xC34BC448DA29F5E9
void ENTITY::_0xC34BC448DA29F5E9(Entity entity, BOOL toggle) // 0xC34BC448DA29F5E9 b573
SET_ENTITY_*
_0xE66377CDDADA4810
void ENTITY::_0xE66377CDDADA4810(Entity entity, BOOL p1) // 0xE66377CDDADA4810 b1734
SET_ENTITY_M*
SET_ENTITY_VELOCITY
void ENTITY::SET_ENTITY_VELOCITY(Entity entity, float x, float y, float z) // 0x1C99BB7B6E96D16F 0xFF5A1988 b323
Note that the third parameter(denoted as z) is "up and down" with positive numbers encouraging upwards movement.
SET_ENTITY_HAS_GRAVITY
void ENTITY::SET_ENTITY_HAS_GRAVITY(Entity entity, BOOL toggle) // 0x4A4722448F18EEF5 0xE2F262BF b323
SET_ENTITY_LOD_DIST
void ENTITY::SET_ENTITY_LOD_DIST(Entity entity, int value) // 0x5927F96A78577363 0xD7ACC7AD b323
LOD distance can be 0 to 0xFFFF (higher values will result in 0xFFFF) as it is actually stored as a 16-bit value (aka uint16_t).
GET_ENTITY_LOD_DIST
int ENTITY::GET_ENTITY_LOD_DIST(Entity entity) // 0x4159C2762B5791D6 0x4DA3D51F b323
Returns the LOD distance of an entity.
SET_ENTITY_ALPHA
void ENTITY::SET_ENTITY_ALPHA(Entity entity, int alphaLevel, BOOL skin) // 0x44A0870B7E92D7C0 0xAE667CB0 b323
skin - everything alpha except skin Set entity alpha level. Ranging from 0 to 255 but chnages occur after every 20 percent (after every 51).
GET_ENTITY_ALPHA
int ENTITY::GET_ENTITY_ALPHA(Entity entity) // 0x5A47B3B5E63E94C6 0x1560B017 b323
RESET_ENTITY_ALPHA
void ENTITY::RESET_ENTITY_ALPHA(Entity entity) // 0x9B1E824FFBB7027A 0x8A30761C b323
_0x490861B88F4FD846
void ENTITY::_0x490861B88F4FD846(Any p0) // 0x490861B88F4FD846 b944
_0xCEA7C8E1B48FF68C
void ENTITY::_0xCEA7C8E1B48FF68C(Any p0, Any p1) // 0xCEA7C8E1B48FF68C b678
_0x5C3B791D580E0BC2
void ENTITY::_0x5C3B791D580E0BC2(Entity entity, float p1) // 0x5C3B791D580E0BC2 b323
Only called once in the scripts. Related to weapon objects.
SET_ENTITY_ALWAYS_PRERENDER
void ENTITY::SET_ENTITY_ALWAYS_PRERENDER(Entity entity, BOOL toggle) // 0xACAD101E1FB66689 0xD8FF798A b323
SET_ENTITY_RENDER_SCORCHED
void ENTITY::SET_ENTITY_RENDER_SCORCHED(Entity entity, BOOL toggle) // 0x730F5F8D3F0F2050 0xAAC9317B b323
SET_ENTITY_TRAFFICLIGHT_OVERRIDE
void ENTITY::SET_ENTITY_TRAFFICLIGHT_OVERRIDE(Entity entity, int state) // 0x57C5DB656185EAC4 0xC47F5B91 b323
Example here: www.gtaforums.com/topic/830463-help-with-turning-lights-green-and-causing-peds-to-crash-into-each-other/#entry1068211340 0 = green 1 = red 2 = yellow 3 = reset changes changing lights may not change the behavior of vehicles
_0x78E8E3A640178255
void ENTITY::_0x78E8E3A640178255(Entity entity) // 0x78E8E3A640178255 b323
Related to cutscene entities. Unsure about the use. SET_ENTITY_*
CREATE_MODEL_SWAP
void ENTITY::CREATE_MODEL_SWAP(float x, float y, float z, float radius, Hash originalModel, Hash newModel, BOOL p6) // 0x92C47782FDA8B2A3 0x0BC12F9E b323
Only works with objects! Network players do not see changes done with this. - Did ya try modifying p6 lol
REMOVE_MODEL_SWAP
void ENTITY::REMOVE_MODEL_SWAP(float x, float y, float z, float radius, Hash originalModel, Hash newModel, BOOL p6) // 0x033C0F9A64E229AE 0xCE0AA8BC b323
CREATE_MODEL_HIDE
void ENTITY::CREATE_MODEL_HIDE(float x, float y, float z, float radius, Hash modelHash, BOOL p5) // 0x8A97BCA30A0CE478 0x7BD5CF2F b323
p5 = sets as true in scripts Same as the comment for CREATE_MODEL_SWAP unless for some reason p5 affects it this only works with objects as well. Network players do not see changes done with this.
CREATE_MODEL_HIDE_EXCLUDING_SCRIPT_OBJECTS
void ENTITY::CREATE_MODEL_HIDE_EXCLUDING_SCRIPT_OBJECTS(float x, float y, float z, float radius, Hash modelHash, BOOL p5) // 0x3A52AE588830BF7F 0x07AAF22C b323
REMOVE_MODEL_HIDE
void ENTITY::REMOVE_MODEL_HIDE(float x, float y, float z, float radius, Hash modelHash, BOOL p5) // 0xD9E3006FB3CBD765 0x993DBC10 b323
This native makes entities visible that are hidden by the native CREATE_MODEL_HIDE. p5 should be false, true does nothing
CREATE_FORCED_OBJECT
void ENTITY::CREATE_FORCED_OBJECT(float x, float y, float z, Any p3, Hash modelHash, BOOL p5) // 0x150E808B375A385A 0x335190A2 b323
REMOVE_FORCED_OBJECT
void ENTITY::REMOVE_FORCED_OBJECT(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x61B6775E83C0DB6F 0xAED73ADD b323
SET_ENTITY_NO_COLLISION_ENTITY
void ENTITY::SET_ENTITY_NO_COLLISION_ENTITY(Entity entity1, Entity entity2, BOOL thisFrameOnly) // 0xA53ED5520C07654A 0x1E11BFE9 b323
Calling this function disables collision between two entities. The importance of the order for entity1 and entity2 is unclear. The third parameter, `thisFrame`, decides whether the collision is to be disabled until it is turned back on, or if it's just this frame.
SET_ENTITY_MOTION_BLUR
void ENTITY::SET_ENTITY_MOTION_BLUR(Entity entity, BOOL toggle) // 0x295D82A8559F9150 0xE90005B8 b323
SET_CAN_AUTO_VAULT_ON_ENTITY
void ENTITY::SET_CAN_AUTO_VAULT_ON_ENTITY(Entity entity, BOOL toggle) // 0xE12ABE5E3A389A6C 0x44767B31 b323
p1 always false.
SET_CAN_CLIMB_ON_ENTITY
void ENTITY::SET_CAN_CLIMB_ON_ENTITY(Entity entity, BOOL toggle) // 0xA80AE305E0A3044F 0xE224A6A5 b323
p1 always false.
_0xDC6F8601FAF2E893
void ENTITY::_0xDC6F8601FAF2E893(Entity entity, BOOL toggle) // 0xDC6F8601FAF2E893 0xA0466A69 b323
SET_* Only called within 1 script for x360. 'fm_mission_controller' and it used on an object. Ran after these 2 natives, set_object_targettable(uParam0, 0); set_entity_invincible(uParam0, 1);
_SET_ENTITY_DECALS_DISABLED
void ENTITY::_SET_ENTITY_DECALS_DISABLED(Entity entity, BOOL p1) // 0x2C2E3DC128F44309 b323
SET_ENTITY_*
_0x1A092BB0C3808B96
void ENTITY::_0x1A092BB0C3808B96(Entity entity, BOOL p1) // 0x1A092BB0C3808B96 b323
SET_ENTITY_*
_GET_ENTITY_BONE_ROTATION
Vector3 ENTITY::_GET_ENTITY_BONE_ROTATION(Entity entity, int boneIndex) // 0xCE6294A232D03786 b791
Gets the world rotation of the specified bone of the specified entity.
_GET_ENTITY_BONE_POSITION_2
Vector3 ENTITY::_GET_ENTITY_BONE_POSITION_2(Entity entity, int boneIndex) // 0x46F8696933A63C9B b877
Gets the world rotation of the specified bone of the specified entity. This native is used in casinoroulette.c but I don't know yet what is the difference with _GET_ENTITY_BONE_ROTATION
_GET_ENTITY_BONE_ROTATION_LOCAL
Vector3 ENTITY::_GET_ENTITY_BONE_ROTATION_LOCAL(Entity entity, int boneIndex) // 0xBD8D32550E5CEBFE b1734
Gets the local rotation of the specified bone of the specified entity.
_GET_ENTITY_BONE_COUNT
int ENTITY::_GET_ENTITY_BONE_COUNT(Entity entity) // 0xB328DCC3A3AA401B b791
_ENABLE_ENTITY_UNK
void ENTITY::_ENABLE_ENTITY_UNK(Entity entity) // 0x6CE177D014502E8A b877
ENABLE_*
_0xB17BC6453F6CF5AC
void ENTITY::_0xB17BC6453F6CF5AC(Any p0, Any p1) // 0xB17BC6453F6CF5AC b944
_0x68B562E124CC0AEF
void ENTITY::_0x68B562E124CC0AEF(Pickup pickup, Pickup pickup2) // 0x68B562E124CC0AEF b1180
Puts pickup2 ptr somewhere in pickup?
_0x36F32DE87082343E
void ENTITY::_0x36F32DE87082343E(Any p0, Any p1) // 0x36F32DE87082343E b1011
_GET_ENTITY_PICKUP
Entity ENTITY::_GET_ENTITY_PICKUP(Entity entity, Hash modelHash) // 0x1F922734E259BD26 b1180
GET_ENTITY_* Seems to return the handle of the entity's portable pickup.
_0xD7B80E7C3BEFC396
void ENTITY::_0xD7B80E7C3BEFC396(Pickup pickup, BOOL toggle) // 0xD7B80E7C3BEFC396 b1180
Sets 32nd bit of pickup+188 SET_PICKUP_??
EVENT
SET_DECISION_MAKER
void EVENT::SET_DECISION_MAKER(Ped ped, Hash name) // 0xB604A2942ADED0EE 0x19CEAC9E b323
CLEAR_DECISION_MAKER_EVENT_RESPONSE
void EVENT::CLEAR_DECISION_MAKER_EVENT_RESPONSE(Hash name, int eventType) // 0x4FC9381A7AEE8968 0x07ABD94D b323
eventType: https://alloc8or.re/gta5/doc/enums/eEventType.txt
BLOCK_DECISION_MAKER_EVENT
void EVENT::BLOCK_DECISION_MAKER_EVENT(Hash name, int eventType) // 0xE42FCDFD0E4196F7 0x57506EA6 b323
eventType: https://alloc8or.re/gta5/doc/enums/eEventType.txt This is limited to 4 blocked events at a time.
UNBLOCK_DECISION_MAKER_EVENT
void EVENT::UNBLOCK_DECISION_MAKER_EVENT(Hash name, int eventType) // 0xD7CD9CF34F2C99E8 0x62A3161D b323
eventType: https://alloc8or.re/gta5/doc/enums/eEventType.txt
ADD_SHOCKING_EVENT_AT_POSITION
ScrHandle EVENT::ADD_SHOCKING_EVENT_AT_POSITION(int eventType, float x, float y, float z, float duration) // 0xD9F8455409B525E9 0x0B30F779 b323
eventType: https://alloc8or.re/gta5/doc/enums/eEventType.txt
ADD_SHOCKING_EVENT_FOR_ENTITY
ScrHandle EVENT::ADD_SHOCKING_EVENT_FOR_ENTITY(int eventType, Entity entity, float duration) // 0x7FD8F3BE76F89422 0xA81B5B71 b323
eventType: https://alloc8or.re/gta5/doc/enums/eEventType.txt
IS_SHOCKING_EVENT_IN_SPHERE
BOOL EVENT::IS_SHOCKING_EVENT_IN_SPHERE(int eventType, float x, float y, float z, float radius) // 0x1374ABB7C15BAB92 0x2F98823E b323
eventType: https://alloc8or.re/gta5/doc/enums/eEventType.txt
REMOVE_SHOCKING_EVENT
BOOL EVENT::REMOVE_SHOCKING_EVENT(ScrHandle event) // 0x2CDA538C44C6CCE5 0xF82D5A87 b323
REMOVE_ALL_SHOCKING_EVENTS
void EVENT::REMOVE_ALL_SHOCKING_EVENTS(BOOL p0) // 0xEAABE8FDFA21274C 0x64DF6282 b323
REMOVE_SHOCKING_EVENT_SPAWN_BLOCKING_AREAS
void EVENT::REMOVE_SHOCKING_EVENT_SPAWN_BLOCKING_AREAS() // 0x340F1415B68AEADE 0xA0CE89C8 b323
SUPPRESS_SHOCKING_EVENTS_NEXT_FRAME
void EVENT::SUPPRESS_SHOCKING_EVENTS_NEXT_FRAME() // 0x2F9A292AD0A3BD89 0x4CC674B5 b323
SUPPRESS_SHOCKING_EVENT_TYPE_NEXT_FRAME
void EVENT::SUPPRESS_SHOCKING_EVENT_TYPE_NEXT_FRAME(int eventType) // 0x3FD2EC8BF1F1CF30 0xA0FDCB82 b323
eventType: https://alloc8or.re/gta5/doc/enums/eEventType.txt
SUPPRESS_AGITATION_EVENTS_NEXT_FRAME
void EVENT::SUPPRESS_AGITATION_EVENTS_NEXT_FRAME() // 0x5F3B7749C112D552 0x80340396 b323
FILES
GET_NUM_TATTOO_SHOP_DLC_ITEMS
int FILES::GET_NUM_TATTOO_SHOP_DLC_ITEMS(int character) // 0x278F76C3B0A8F109 0x71D0CF3E b323
Character types: 0 = Michael, 1 = Franklin, 2 = Trevor, 3 = MPMale, 4 = MPFemale
GET_TATTOO_SHOP_DLC_ITEM_DATA
BOOL FILES::GET_TATTOO_SHOP_DLC_ITEM_DATA(int characterType, int decorationIndex, Any* outComponent) // 0xFF56381874F82086 0x2E9D628C b323
Character types: 0 = Michael, 1 = Franklin, 2 = Trevor, 3 = MPMale, 4 = MPFemale enum TattooZoneData { ZONE_TORSO = 0, ZONE_HEAD = 1, ZONE_LEFT_ARM = 2, ZONE_RIGHT_ARM = 3, ZONE_LEFT_LEG = 4, ZONE_RIGHT_LEG = 5, ZONE_UNKNOWN = 6, ZONE_NONE = 7, }; struct outComponent { // these vars are suffixed with 4 bytes of padding each. uint unk; int unk2; uint tattooCollectionHash; uint tattooNameHash; int unk3; TattooZoneData zoneId; uint unk4; uint unk5; // maybe more, not sure exactly, decompiled scripts are very vague around this part. }
_0x10144267DD22866C
int FILES::_0x10144267DD22866C(Hash overlayHash, Any p1, int character) // 0x10144267DD22866C b2189
Returns some sort of index/offset for overlays/decorations. Character types: 0 = Michael, 1 = Franklin, 2 = Trevor, 3 = MPMale, 4 = MPFemale
INIT_SHOP_PED_COMPONENT
void FILES::INIT_SHOP_PED_COMPONENT(Any* outComponent) // 0x1E8C308FD312C036 0xB818C7FC b323
INIT_SHOP_PED_PROP
void FILES::INIT_SHOP_PED_PROP(Any* outProp) // 0xEB0A2B758F7B850F 0xF5659E50 b323
SETUP_SHOP_PED_APPAREL_QUERY
int FILES::SETUP_SHOP_PED_APPAREL_QUERY(int p0, int p1, int p2, int p3) // 0x50F457823CE6EB5F 0xC937FF3D b323
SETUP_SHOP_PED_APPAREL_QUERY_TU
int FILES::SETUP_SHOP_PED_APPAREL_QUERY_TU(int character, int p1, int p2, BOOL p3, int p4, int componentId) // 0x9BDF59818B1E38C1 0x594E862C b323
character is 0 for Michael, 1 for Franklin, 2 for Trevor, 3 for freemode male, and 4 for freemode female. componentId is between 0 and 11 and corresponds to the usual component slots. p1 could be the outfit number; unsure. p2 is usually -1; unknown function. p3 appears to be for selecting between clothes and props; false is used with components/clothes, true is used with props. p4 is usually -1; unknown function. componentId is -1 when p3 is true in decompiled scripts.
GET_SHOP_PED_QUERY_COMPONENT
void FILES::GET_SHOP_PED_QUERY_COMPONENT(int componentId, Any* outComponent) // 0x249E310B2D920699 0xC0718904 b323
See https://git.io/JtcRf for example and structs.
_0x96E2929292A4DB77
int FILES::_0x96E2929292A4DB77(Hash componentHash) // 0x96E2929292A4DB77 b2189
Returns some sort of index/offset for components. Needs _GET_NUM_PROPS_FROM_OUTFIT to be called with p3 = false and componentId with the drawable's component slot first, returns -1 otherwise.
GET_SHOP_PED_COMPONENT
void FILES::GET_SHOP_PED_COMPONENT(Hash componentHash, Any* outComponent) // 0x74C0E2A57EC66760 0xB39677C5 b323
More info here: https://gist.github.com/root-cause/3b80234367b0c856d60bf5cb4b826f86
GET_SHOP_PED_QUERY_PROP
void FILES::GET_SHOP_PED_QUERY_PROP(int componentId, Any* outProp) // 0xDE44A00999B2837D 0x1D3C1466 b323
See https://git.io/JtcRf for example and structs.
_0x6CEBE002E58DEE97
int FILES::_0x6CEBE002E58DEE97(Hash componentHash) // 0x6CEBE002E58DEE97 b2189
Returns some sort of index/offset for props. Needs _GET_NUM_PROPS_FROM_OUTFIT to be called with p3 = true and componentId = -1 first, returns -1 otherwise.
GET_SHOP_PED_PROP
void FILES::GET_SHOP_PED_PROP(Hash componentHash, Any* outProp) // 0x5D5CAFF661DDF6FC 0xDB0A7A58 b323
More info here: https://gist.github.com/root-cause/3b80234367b0c856d60bf5cb4b826f86
GET_HASH_NAME_FOR_COMPONENT
Hash FILES::GET_HASH_NAME_FOR_COMPONENT(Entity entity, int componentId, int drawableVariant, int textureVariant) // 0x0368B3A838070348 0xC8A4BF12 b323
GET_HASH_NAME_FOR_PROP
Hash FILES::GET_HASH_NAME_FOR_PROP(Entity entity, int componentId, int propIndex, int propTextureIndex) // 0x5D6160275CAEC8DD 0x7D876DC0 b323
GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT
int FILES::GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(Hash componentHash) // 0xC17AD0E5752BECDA 0x159751B4 b323
_GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT
int FILES::_GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(Hash propHash) // 0xD40AAC51E8E4C663 b791
`propHash`: Ped helmet prop hash? This native returns 1 when the player helmet has a visor (there is another prop index for the same helmet with closed/opened visor variant) that can be toggled. 0 if there's no alternative version with a visor for this helmet prop.
GET_VARIANT_COMPONENT
void FILES::GET_VARIANT_COMPONENT(Hash componentHash, int variantComponentIndex, Hash* nameHash, int* enumValue, int* componentType) // 0x6E11F282F11863B6 0xE4FF7103 b323
_GET_VARIANT_PROP
void FILES::_GET_VARIANT_PROP(Hash componentHash, int variantPropIndex, Hash* nameHash, int* enumValue, int* anchorPoint) // 0xD81B7F27BC773E66 b791
GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT
int FILES::GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(Hash componentHash) // 0xC6B9DB42C04DD8C3 0xCE70F183 b323
Returns number of possible values of the forcedComponentIndex argument of GET_FORCED_COMPONENT.
GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT
int FILES::GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(Hash componentHash) // 0x017568A8182D98A6 0xC560D7C0 b323
Returns number of possible values of the forcedPropIndex argument of GET_FORCED_PROP.
GET_FORCED_COMPONENT
void FILES::GET_FORCED_COMPONENT(Hash componentHash, int forcedComponentIndex, Hash* nameHash, int* enumValue, int* componentType) // 0x6C93ED8C2F74859B 0x382C70BE b323
GET_FORCED_PROP
void FILES::GET_FORCED_PROP(Hash componentHash, int forcedPropIndex, Hash* nameHash, int* enumValue, int* anchorPoint) // 0xE1CA84EBF72E691D 0x22DAE257 b323
DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG
BOOL FILES::DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(Hash componentHash, Hash restrictionTagHash, int componentId) // 0x341DE7ED1D2A1BFD 0x8E2C7FD5 b323
Full list of restriction tags by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedApparelRestrictionTags.json componentId/last parameter seems to be unused.
SETUP_SHOP_PED_OUTFIT_QUERY
int FILES::SETUP_SHOP_PED_OUTFIT_QUERY(int character, BOOL p1) // 0xF3FBE2D50A6A8C28 0x1ECD23E7 b323
characters 0: Michael 1: Franklin 2: Trevor 3: MPMale 4: MPFemale
GET_SHOP_PED_QUERY_OUTFIT
void FILES::GET_SHOP_PED_QUERY_OUTFIT(int outfitIndex, Any* outfit) // 0x6D793F03A631FE56 0x2F8013A1 b323
outfitIndex: from 0 to _GET_NUM_SHOP_PED_OUTFITS(characterIndex, false) - 1. See https://git.io/JtcB8 for example and outfit struct.
GET_SHOP_PED_OUTFIT
void FILES::GET_SHOP_PED_OUTFIT(Any p0, Any* p1) // 0xB7952076E444979D 0xCAFE9209 b323
GET_SHOP_PED_OUTFIT_LOCATE
int FILES::GET_SHOP_PED_OUTFIT_LOCATE(Any p0) // 0x073CA26B079F956E 0x2798F56F b323
GET_SHOP_PED_OUTFIT_PROP_VARIANT
BOOL FILES::GET_SHOP_PED_OUTFIT_PROP_VARIANT(Hash outfitHash, int variantIndex, Any* outPropVariant) // 0xA9F9C2E0FDE11CBB 0x6641A864 b323
See https://git.io/JtcBH for example and structs.
GET_SHOP_PED_OUTFIT_COMPONENT_VARIANT
BOOL FILES::GET_SHOP_PED_OUTFIT_COMPONENT_VARIANT(Hash outfitHash, int variantIndex, Any* outComponentVariant) // 0x19F2A026EDF0013F 0x818534AC b323
See https://git.io/JtcBH for example and structs.
GET_NUM_DLC_VEHICLES
int FILES::GET_NUM_DLC_VEHICLES() // 0xA7A866D21CD2329B 0x8EAF9CF6 b323
GET_DLC_VEHICLE_MODEL
Hash FILES::GET_DLC_VEHICLE_MODEL(int dlcVehicleIndex) // 0xECC01B7C5763333C 0xA2201E09 b323
dlcVehicleIndex is 0 to GET_NUM_DLC_VEHICLS() - 1
GET_DLC_VEHICLE_DATA
BOOL FILES::GET_DLC_VEHICLE_DATA(int dlcVehicleIndex, int* outData) // 0x33468EDC08E371F6 0xCF428FA4 b323
dlcVehicleIndex takes a number from 0 - GET_NUM_DLC_VEHICLES() - 1. outData is a struct of 3 8-byte items. The Second item in the struct *(Hash *)(outData + 1) is the vehicle hash.
GET_DLC_VEHICLE_FLAGS
int FILES::GET_DLC_VEHICLE_FLAGS(int dlcVehicleIndex) // 0x5549EE11FA22FCF2 0xAB12738C b323
GET_NUM_DLC_WEAPONS
int FILES::GET_NUM_DLC_WEAPONS() // 0xEE47635F352DA367 0x2B757E6C b323
Returns the total number of DLC weapons.
_GET_NUM_DLC_WEAPONS_SP
int FILES::_GET_NUM_DLC_WEAPONS_SP() // 0x4160B65AE085B5A9 b2060
Returns the total number of DLC weapons that are available in SP (availableInSP field in shop_weapon.meta).
GET_DLC_WEAPON_DATA
BOOL FILES::GET_DLC_WEAPON_DATA(int dlcWeaponIndex, int* outData) // 0x79923CD21BECE14E 0xD88EC8EA b323
dlcWeaponIndex takes a number from 0 - GET_NUM_DLC_WEAPONS() - 1. struct DlcWeaponData { int emptyCheck; //use DLC1::_IS_DLC_DATA_EMPTY on this int padding1; int weaponHash; int padding2; int unk; int padding3; int weaponCost; int padding4; int ammoCost; int padding5; int ammoType; int padding6; int defaultClipSize; int padding7; char nameLabel[64]; char descLabel[64]; char desc2Label[64]; // usually "the" + name char upperCaseNameLabel[64]; };
_GET_DLC_WEAPON_DATA_SP
BOOL FILES::_GET_DLC_WEAPON_DATA_SP(int dlcWeaponIndex, int* outData) // 0x310836EE7129BA33 b2060
Same as GET_DLC_WEAPON_DATA but only works for DLC weapons that are available in SP.
GET_NUM_DLC_WEAPON_COMPONENTS
int FILES::GET_NUM_DLC_WEAPON_COMPONENTS(int dlcWeaponIndex) // 0x405425358A7D61FE 0x476B23A9 b323
Returns the total number of DLC weapon components.
_GET_NUM_DLC_WEAPON_COMPONENTS_SP
int FILES::_GET_NUM_DLC_WEAPON_COMPONENTS_SP(int dlcWeaponIndex) // 0xAD2A7A6DFF55841B b2060
Returns the total number of DLC weapon components that are available in SP.
GET_DLC_WEAPON_COMPONENT_DATA
BOOL FILES::GET_DLC_WEAPON_COMPONENT_DATA(int dlcWeaponIndex, int dlcWeapCompIndex, int* ComponentDataPtr) // 0x6CF598A2957C2BF8 0x4B83FCAF b323
p0 seems to be the weapon index p1 seems to be the weapon component index struct DlcComponentData{ int attachBone; int padding1; int bActiveByDefault; int padding2; int unk; int padding3; int componentHash; int padding4; int unk2; int padding5; int componentCost; int padding6; char nameLabel[64]; char descLabel[64]; };
_GET_DLC_WEAPON_COMPONENT_DATA_SP
BOOL FILES::_GET_DLC_WEAPON_COMPONENT_DATA_SP(int dlcWeaponIndex, int dlcWeapCompIndex, int* ComponentDataPtr) // 0x31D5E073B6F93CDC b2060
Same as GET_DLC_WEAPON_COMPONENT_DATA but only works for DLC components that are available in SP.
IS_CONTENT_ITEM_LOCKED
BOOL FILES::IS_CONTENT_ITEM_LOCKED(Hash itemHash) // 0xD4D7B033C3AA243C 0x06396058 b323
IS_DLC_VEHICLE_MOD
BOOL FILES::IS_DLC_VEHICLE_MOD(Hash hash) // 0x0564B9FF9631B82C 0x35BCA844 b323
GET_DLC_VEHICLE_MOD_LOCK_HASH
Hash FILES::GET_DLC_VEHICLE_MOD_LOCK_HASH(Hash hash) // 0xC098810437312FFF 0x59352658 b323
_LOAD_CONTENT_CHANGE_SET_GROUP
void FILES::_LOAD_CONTENT_CHANGE_SET_GROUP(Hash hash) // 0x6BEDF5769AC2DC07 b1604
From fm_deathmatch_creator and fm_race_creator: FILES::_UNLOAD_CONTENT_CHANGE_SET_GROUP(joaat("GROUP_MAP_SP")); FILES::_LOAD_CONTENT_CHANGE_SET_GROUP(joaat("GROUP_MAP"));
_UNLOAD_CONTENT_CHANGE_SET_GROUP
void FILES::_UNLOAD_CONTENT_CHANGE_SET_GROUP(Hash hash) // 0x3C1978285B036B25 b1604
From fm_deathmatch_creator and fm_race_creator: FILES::_UNLOAD_CONTENT_CHANGE_SET_GROUP(joaat("GROUP_MAP_SP")); FILES::_LOAD_CONTENT_CHANGE_SET_GROUP(joaat("GROUP_MAP"));
FIRE
START_SCRIPT_FIRE
FireId FIRE::START_SCRIPT_FIRE(float X, float Y, float Z, int maxChildren, BOOL isGasFire) // 0x6B83617E04503888 0xE7529357 b323
Starts a fire: xyz: Location of fire maxChildren: The max amount of times a fire can spread to other objects. Must be 25 or less, or the function will do nothing. isGasFire: Whether or not the fire is powered by gasoline.
REMOVE_SCRIPT_FIRE
void FIRE::REMOVE_SCRIPT_FIRE(FireId fireHandle) // 0x7FF548385680673F 0x6B21FE26 b323
START_ENTITY_FIRE
FireId FIRE::START_ENTITY_FIRE(Entity entity) // 0xF6A9D9708F6F23DF 0x8928428E b323
STOP_ENTITY_FIRE
void FIRE::STOP_ENTITY_FIRE(Entity entity) // 0x7F0DD2EBBB651AFF 0xCE8C9066 b323
IS_ENTITY_ON_FIRE
BOOL FIRE::IS_ENTITY_ON_FIRE(Entity entity) // 0x28D3FED7190D3A0B 0x8C73E64F b323
GET_NUMBER_OF_FIRES_IN_RANGE
int FIRE::GET_NUMBER_OF_FIRES_IN_RANGE(float x, float y, float z, float radius) // 0x50CAD495A460B305 0x654D93B7 b323
_SET_FIRE_SPREAD_RATE
void FIRE::_SET_FIRE_SPREAD_RATE(float p0) // 0x8F390AC4155099BA b1734
SET_FIRE_*
STOP_FIRE_IN_RANGE
void FIRE::STOP_FIRE_IN_RANGE(float x, float y, float z, float radius) // 0x056A8A219B8E829F 0x725C7205 b323
GET_CLOSEST_FIRE_POS
BOOL FIRE::GET_CLOSEST_FIRE_POS(Vector3* outPosition, float x, float y, float z) // 0x352A9F6BCF90081F 0xC4977B47 b323
Returns TRUE if it found something. FALSE if not.
ADD_EXPLOSION
void FIRE::ADD_EXPLOSION(float x, float y, float z, int explosionType, float damageScale, BOOL isAudible, BOOL isInvisible, float cameraShake, BOOL noDamage) // 0xE3AD2BDBAEE269AC 0x10AF5258 b323
BOOL isAudible = If explosion makes a sound. BOOL isInvisible = If the explosion is invisible or not. explosionType: https://alloc8or.re/gta5/doc/enums/eExplosionTag.txt
ADD_OWNED_EXPLOSION
void FIRE::ADD_OWNED_EXPLOSION(Ped ped, float x, float y, float z, int explosionType, float damageScale, BOOL isAudible, BOOL isInvisible, float cameraShake) // 0x172AA1B624FA1013 0x27EE0D67 b323
isAudible: If explosion makes a sound. isInvisible: If the explosion is invisible or not. explosionType: See ADD_EXPLOSION.
ADD_EXPLOSION_WITH_USER_VFX
void FIRE::ADD_EXPLOSION_WITH_USER_VFX(float x, float y, float z, int explosionType, Hash explosionFx, float damageScale, BOOL isAudible, BOOL isInvisible, float cameraShake) // 0x36DD3FE58B5E5212 0xCF358946 b323
isAudible: If explosion makes a sound. isInvisible: If the explosion is invisible or not. explosionType: See ADD_EXPLOSION.
IS_EXPLOSION_IN_AREA
BOOL FIRE::IS_EXPLOSION_IN_AREA(int explosionType, float x1, float y1, float z1, float x2, float y2, float z2) // 0x2E2EBA0EE7CED0E0 0xFB40075B b323
explosionType: See ADD_EXPLOSION.
IS_EXPLOSION_ACTIVE_IN_AREA
BOOL FIRE::IS_EXPLOSION_ACTIVE_IN_AREA(int explosionType, float x1, float y1, float z1, float x2, float y2, float z2) // 0x6070104B699B2EF4 0x37C388DB b323
explosionType: See ADD_EXPLOSION.
IS_EXPLOSION_IN_SPHERE
BOOL FIRE::IS_EXPLOSION_IN_SPHERE(int explosionType, float x, float y, float z, float radius) // 0xAB0F816885B0E483 0xD455A7F3 b323
explosionType: See ADD_EXPLOSION.
_GET_ENTITY_INSIDE_EXPLOSION_SPHERE
Entity FIRE::_GET_ENTITY_INSIDE_EXPLOSION_SPHERE(int explosionType, float x, float y, float z, float radius) // 0xB3CD51E3DB86F176 b1290
explosionType: See ADD_EXPLOSION.
IS_EXPLOSION_IN_ANGLED_AREA
BOOL FIRE::IS_EXPLOSION_IN_ANGLED_AREA(int explosionType, float x1, float y1, float z1, float x2, float y2, float z2, float width) // 0xA079A6C51525DC4B 0x0128FED9 b323
explosionType: See ADD_EXPLOSION, -1 for any explosion type
_GET_ENTITY_INSIDE_EXPLOSION_AREA
Entity FIRE::_GET_ENTITY_INSIDE_EXPLOSION_AREA(int explosionType, float x1, float y1, float z1, float x2, float y2, float z2, float radius) // 0x14BA4BA137AF6CEC 0xAEC0D176 b323
Returns a handle to the first entity within the a circle spawned inside the 2 points from a radius. explosionType: See ADD_EXPLOSION.
GRAPHICS
SET_DEBUG_LINES_AND_SPHERES_DRAWING_ACTIVE
void GRAPHICS::SET_DEBUG_LINES_AND_SPHERES_DRAWING_ACTIVE(BOOL enabled) // 0x175B6BFC15CDD0C5 0x1418CA37 b323
NOTE: Debugging functions are not present in the retail version of the game.
DRAW_DEBUG_LINE
void GRAPHICS::DRAW_DEBUG_LINE(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0x7FDFADE676AA3CB0 0xABF783AB b323
DRAW_DEBUG_LINE_WITH_TWO_COLOURS
void GRAPHICS::DRAW_DEBUG_LINE_WITH_TWO_COLOURS(float x1, float y1, float z1, float x2, float y2, float z2, int r1, int g1, int b1, int r2, int g2, int b2, int alpha1, int alpha2) // 0xD8B9A8AC5608FF94 0xE8BFF632 b323
NOTE: Debugging functions are not present in the retail version of the game.
DRAW_DEBUG_SPHERE
void GRAPHICS::DRAW_DEBUG_SPHERE(float x, float y, float z, float radius, int red, int green, int blue, int alpha) // 0xAAD68E1AB39DA632 0x304D0EEF b323
NOTE: Debugging functions are not present in the retail version of the game.
DRAW_DEBUG_BOX
void GRAPHICS::DRAW_DEBUG_BOX(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0x083A2CA4F2E573BD 0x8524A848 b323
DRAW_DEBUG_CROSS
void GRAPHICS::DRAW_DEBUG_CROSS(float x, float y, float z, float size, int red, int green, int blue, int alpha) // 0x73B1189623049839 0xB6DF3709 b323
NOTE: Debugging functions are not present in the retail version of the game.
DRAW_DEBUG_TEXT
void GRAPHICS::DRAW_DEBUG_TEXT(const char* text, float x, float y, float z, int red, int green, int blue, int alpha) // 0x3903E216620488E8 0x269B006F b323
NOTE: Debugging functions are not present in the retail version of the game.
DRAW_DEBUG_TEXT_2D
void GRAPHICS::DRAW_DEBUG_TEXT_2D(const char* text, float x, float y, float z, int red, int green, int blue, int alpha) // 0xA3BB2E9555C05A8F 0x528B973B b323
NOTE: Debugging functions are not present in the retail version of the game.
DRAW_LINE
void GRAPHICS::DRAW_LINE(float x1, float y1, float z1, float x2, float y2, float z2, int red, int green, int blue, int alpha) // 0x6B7256074AE34680 0xB3426BCC b323
Draws a depth-tested line from one point to another. ---------------- x1, y1, z1 : Coordinates for the first point x2, y2, z2 : Coordinates for the second point r, g, b, alpha : Color with RGBA-Values I recommend using a predefined function to call this. [VB.NET] Public Sub DrawLine(from As Vector3, [to] As Vector3, col As Color) [Function].Call(Hash.DRAW_LINE, from.X, from.Y, from.Z, [to].X, [to].Y, [to].Z, col.R, col.G, col.B, col.A) End Sub [C#] public void DrawLine(Vector3 from, Vector3 to, Color col) { Function.Call(Hash.DRAW_LINE, from.X, from.Y, from.Z, to.X, to.Y, to.Z, col.R, col.G, col.B, col.A); }
DRAW_POLY
void GRAPHICS::DRAW_POLY(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, int red, int green, int blue, int alpha) // 0xAC26716048436851 0xABD19253 b323
x/y/z - Location of a vertex (in world coords), presumably. ---------------- x1, y1, z1 : Coordinates for the first point x2, y2, z2 : Coordinates for the second point x3, y3, z3 : Coordinates for the third point r, g, b, alpha : Color with RGBA-Values Keep in mind that only one side of the drawn triangle is visible: It's the side, in which the vector-product of the vectors heads to: (b-a)x(c-a) Or (b-a)x(c-b). But be aware: The function seems to work somehow differently. I have trouble having them drawn in rotated orientation. Try it yourself and if you somehow succeed, please edit this and post your solution. I recommend using a predefined function to call this. [VB.NET] Public Sub DrawPoly(a As Vector3, b As Vector3, c As Vector3, col As Color) [Function].Call(Hash.DRAW_POLY, a.X, a.Y, a.Z, b.X, b.Y, b.Z, c.X, c.Y, c.Z, col.R, col.G, col.B, col.A) End Sub [C#] public void DrawPoly(Vector3 a, Vector3 b, Vector3 c, Color col) { Function.Call(Hash.DRAW_POLY, a.X, a.Y, a.Z, b.X, b.Y, b.Z, c.X, c.Y, c.Z, col.R, col.G, col.B, col.A); } BTW: Intersecting triangles are not supported: They overlap in the order they were called.
_DRAW_SPRITE_POLY
void GRAPHICS::_DRAW_SPRITE_POLY(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, int red, int green, int blue, int alpha, const char* textureDict, const char* textureName, float u1, float v1, float w1, float u2, float v2, float w2, float u3, float v3, float w3) // 0x29280002282F1928 b877
Used for drawling Deadline trailing lights, see deadline.ytd p15 through p23 are values that appear to be related to illiumation, scaling, and rotation; more testing required. For UVW mapping (u,v,w parameters), reference your favourite internet resource for more details.
_DRAW_SPRITE_POLY_2
void GRAPHICS::_DRAW_SPRITE_POLY_2(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float red1, float green1, float blue1, int alpha1, float red2, float green2, float blue2, int alpha2, float red3, float green3, float blue3, int alpha3, const char* textureDict, const char* textureName, float u1, float v1, float w1, float u2, float v2, float w2, float u3, float v3, float w3) // 0x736D7AA1B750856B b877
Used for drawling Deadline trailing lights, see deadline.ytd Each vertex has its own colour that is blended/illuminated on the texture. Additionally, the R, G, and B components are floats that are int-casted internally. For UVW mapping (u,v,w parameters), reference your favourite internet resource for more details.
DRAW_BOX
void GRAPHICS::DRAW_BOX(float x1, float y1, float z1, float x2, float y2, float z2, int red, int green, int blue, int alpha) // 0xD3A9971CADAC7252 0xCD4D9DD5 b323
x,y,z = start pos x2,y2,z2 = end pos Draw's a 3D Box between the two x,y,z coords. -------------- Keep in mind that the edges of the box do only align to the worlds base-vectors. Therefore something like rotation cannot be applied. That means this function is pretty much useless, unless you want a static unicolor box somewhere. I recommend using a predefined function to call this. [VB.NET] Public Sub DrawBox(a As Vector3, b As Vector3, col As Color) [Function].Call(Hash.DRAW_BOX,a.X, a.Y, a.Z,b.X, b.Y, b.Z,col.R, col.G, col.B, col.A) End Sub [C#] public void DrawBox(Vector3 a, Vector3 b, Color col) { Function.Call(Hash.DRAW_BOX,a.X, a.Y, a.Z,b.X, b.Y, b.Z,col.R, col.G, col.B, col.A); }
SET_BACKFACECULLING
void GRAPHICS::SET_BACKFACECULLING(BOOL toggle) // 0x23BA6B0C2AD7B0D3 0xC44C2F44 b323
_0xC5C8F970D4EDFF71
void GRAPHICS::_0xC5C8F970D4EDFF71(Any p0) // 0xC5C8F970D4EDFF71 b877
BEGIN_TAKE_MISSION_CREATOR_PHOTO
Any GRAPHICS::BEGIN_TAKE_MISSION_CREATOR_PHOTO() // 0x1DD2139A9A20DCE8 0xBA9AD458 b323
GET_STATUS_OF_TAKE_MISSION_CREATOR_PHOTO
Any GRAPHICS::GET_STATUS_OF_TAKE_MISSION_CREATOR_PHOTO() // 0x90A78ECAA4E78453 0xADBBA287 b323
FREE_MEMORY_FOR_MISSION_CREATOR_PHOTO
void GRAPHICS::FREE_MEMORY_FOR_MISSION_CREATOR_PHOTO() // 0x0A46AF8A78DC5E0A 0x9E553002 b323
LOAD_MISSION_CREATOR_PHOTO
BOOL GRAPHICS::LOAD_MISSION_CREATOR_PHOTO(Any* p0, Any p1, Any p2, Any p3) // 0x4862437A486F91B0 0x56C1E488 b323
GET_STATUS_OF_LOAD_MISSION_CREATOR_PHOTO
int GRAPHICS::GET_STATUS_OF_LOAD_MISSION_CREATOR_PHOTO(Any* p0) // 0x1670F8D05056F257 0x226B08EA b323
_0x7FA5D82B8F58EC06
Any GRAPHICS::_0x7FA5D82B8F58EC06() // 0x7FA5D82B8F58EC06 0x1F3CADB0 b323
_0x5B0316762AFD4A64
Any GRAPHICS::_0x5B0316762AFD4A64() // 0x5B0316762AFD4A64 0xA9DC8558 b323
_0x346EF3ECAAAB149E
void GRAPHICS::_0x346EF3ECAAAB149E() // 0x346EF3ECAAAB149E 0x88EAF398 b323
BEGIN_TAKE_HIGH_QUALITY_PHOTO
BOOL GRAPHICS::BEGIN_TAKE_HIGH_QUALITY_PHOTO() // 0xA67C35C56EB1BD9D 0x47B0C137 b323
GET_STATUS_OF_TAKE_HIGH_QUALITY_PHOTO
int GRAPHICS::GET_STATUS_OF_TAKE_HIGH_QUALITY_PHOTO() // 0x0D6CA79EEEBD8CA3 0x65376C9B b323
FREE_MEMORY_FOR_HIGH_QUALITY_PHOTO
void GRAPHICS::FREE_MEMORY_FOR_HIGH_QUALITY_PHOTO() // 0xD801CC02177FA3F1 0x9CBA682A b323
_0x1BBC135A4D25EDDE
void GRAPHICS::_0x1BBC135A4D25EDDE(BOOL p0) // 0x1BBC135A4D25EDDE b323
_0xF3F776ADA161E47D
void GRAPHICS::_0xF3F776ADA161E47D(Any p0, Any p1) // 0xF3F776ADA161E47D b1604
_0xADD6627C4D325458
void GRAPHICS::_0xADD6627C4D325458(Any p0) // 0xADD6627C4D325458 b2189
SAVE_HIGH_QUALITY_PHOTO
BOOL GRAPHICS::SAVE_HIGH_QUALITY_PHOTO(int unused) // 0x3DEC726C25A11BAC 0x3B15D33C b323
1 match in 1 script. cellphone_controller. p0 is -1 in scripts.
GET_STATUS_OF_SAVE_HIGH_QUALITY_PHOTO
int GRAPHICS::GET_STATUS_OF_SAVE_HIGH_QUALITY_PHOTO() // 0x0C0C4E81E1AC60A0 0xEC5D0317 b323
_0x759650634F07B6B4
BOOL GRAPHICS::_0x759650634F07B6B4(Any p0) // 0x759650634F07B6B4 0x25D569EB b323
_0xCB82A0BF0E3E3265
Any GRAPHICS::_0xCB82A0BF0E3E3265(Any p0) // 0xCB82A0BF0E3E3265 0xCFCDC518 b323
FREE_MEMORY_FOR_LOW_QUALITY_PHOTO
void GRAPHICS::FREE_MEMORY_FOR_LOW_QUALITY_PHOTO() // 0x6A12D88881435DCA 0x108F36CC b323
DRAW_LOW_QUALITY_PHOTO_TO_PHONE
void GRAPHICS::DRAW_LOW_QUALITY_PHOTO_TO_PHONE(BOOL p0, BOOL p1) // 0x1072F115DAB0717E 0xE9F2B68F b323
GET_MAXIMUM_NUMBER_OF_PHOTOS
int GRAPHICS::GET_MAXIMUM_NUMBER_OF_PHOTOS() // 0x34D23450F028B0BF 0x727AA63F b323
This function is hard-coded to always return 0.
GET_MAXIMUM_NUMBER_OF_CLOUD_PHOTOS
int GRAPHICS::GET_MAXIMUM_NUMBER_OF_CLOUD_PHOTOS() // 0xDC54A7AF8B3A14EF 0x239272BD b323
This function is hard-coded to always return 96.
GET_CURRENT_NUMBER_OF_CLOUD_PHOTOS
int GRAPHICS::GET_CURRENT_NUMBER_OF_CLOUD_PHOTOS() // 0x473151EBC762C6DA 0x21DBF0C9 b323
_0x2A893980E96B659A
Any GRAPHICS::_0x2A893980E96B659A(Any p0) // 0x2A893980E96B659A 0x199FABF0 b323
2 matches across 2 scripts. Only showed in appcamera & appmedia. Both were 0.
GET_STATUS_OF_SORTED_LIST_OPERATION
Any GRAPHICS::GET_STATUS_OF_SORTED_LIST_OPERATION(Any p0) // 0xF5BED327CEA362B1 0x596B900D b323
3 matches across 3 scripts. First 2 were 0, 3rd was 1. Possibly a bool. appcamera, appmedia, and cellphone_controller.
_0x4AF92ACD3141D96C
void GRAPHICS::_0x4AF92ACD3141D96C() // 0x4AF92ACD3141D96C 0xC9EF81ED b323
_0xE791DF1F73ED2C8B
Any GRAPHICS::_0xE791DF1F73ED2C8B(Any p0) // 0xE791DF1F73ED2C8B 0x9D84554C b323
This function is hard-coded to always return 0.
_0xEC72C258667BE5EA
Any GRAPHICS::_0xEC72C258667BE5EA(Any p0) // 0xEC72C258667BE5EA 0x9C106AD9 b323
This function is hard-coded to always return 0.
_RETURN_TWO
int GRAPHICS::_RETURN_TWO(int p0) // 0x40AFB081F8ADD4EE 0x762E5C5F b323
GET_L* Hardcoded to always return 2.
_DRAW_LIGHT_WITH_RANGE_AND_SHADOW
void GRAPHICS::_DRAW_LIGHT_WITH_RANGE_AND_SHADOW(float x, float y, float z, int r, int g, int b, float range, float intensity, float shadow) // 0xF49E9A9716A04595 b323
DRAW_LIGHT_WITH_RANGE
void GRAPHICS::DRAW_LIGHT_WITH_RANGE(float posX, float posY, float posZ, int colorR, int colorG, int colorB, float range, float intensity) // 0xF2A1B2771A01DBD4 0x6A396E9A b323
DRAW_SPOT_LIGHT
void GRAPHICS::DRAW_SPOT_LIGHT(float posX, float posY, float posZ, float dirX, float dirY, float dirZ, int colorR, int colorG, int colorB, float distance, float brightness, float hardness, float radius, float falloff) // 0xD0F64B265C8C8B33 0xBDBC410C b323
Parameters: * pos - coordinate where the spotlight is located * dir - the direction vector the spotlight should aim at from its current position * r,g,b - color of the spotlight * distance - the maximum distance the light can reach * brightness - the brightness of the light * roundness - "smoothness" of the circle edge * radius - the radius size of the spotlight * falloff - the falloff size of the light's edge (example: www.i.imgur.com/DemAWeO.jpg) Example in C# (spotlight aims at the closest vehicle): Vector3 myPos = Game.Player.Character.Position; Vehicle nearest = World.GetClosestVehicle(myPos , 1000f); Vector3 destinationCoords = nearest.Position; Vector3 dirVector = destinationCoords - myPos; dirVector.Normalize(); Function.Call(Hash.DRAW_SPOT_LIGHT, pos.X, pos.Y, pos.Z, dirVector.X, dirVector.Y, dirVector.Z, 255, 255, 255, 100.0f, 1f, 0.0f, 13.0f, 1f);
_DRAW_SPOT_LIGHT_WITH_SHADOW
void GRAPHICS::_DRAW_SPOT_LIGHT_WITH_SHADOW(float posX, float posY, float posZ, float dirX, float dirY, float dirZ, int colorR, int colorG, int colorB, float distance, float brightness, float roundness, float radius, float falloff, int shadowId) // 0x5BCA583A583194DB 0x32BF9598 b323
FADE_UP_PED_LIGHT
void GRAPHICS::FADE_UP_PED_LIGHT(float p0) // 0xC9B18B4619F48F7B 0x93628786 b323
UPDATE_LIGHTS_ON_ENTITY
void GRAPHICS::UPDATE_LIGHTS_ON_ENTITY(Entity entity) // 0xDEADC0DEDEADC0DE 0xC12AC47A b323
_0x9641588DAB93B4B5
void GRAPHICS::_0x9641588DAB93B4B5(Any p0) // 0x9641588DAB93B4B5 b877
_0x393BD2275CEB7793
Any GRAPHICS::_0x393BD2275CEB7793() // 0x393BD2275CEB7793 b1103
DRAW_MARKER
void GRAPHICS::DRAW_MARKER(int type, float posX, float posY, float posZ, float dirX, float dirY, float dirZ, float rotX, float rotY, float rotZ, float scaleX, float scaleY, float scaleZ, int red, int green, int blue, int alpha, BOOL bobUpAndDown, BOOL faceCamera, int p19, BOOL rotate, const char* textureDict, const char* textureName, BOOL drawOnEnts) // 0x28477EC23D892089 0x48D84A02 b323
enum MarkerTypes { MarkerTypeUpsideDownCone = 0, MarkerTypeVerticalCylinder = 1, MarkerTypeThickChevronUp = 2, MarkerTypeThinChevronUp = 3, MarkerTypeCheckeredFlagRect = 4, MarkerTypeCheckeredFlagCircle = 5, MarkerTypeVerticleCircle = 6, MarkerTypePlaneModel = 7, MarkerTypeLostMCDark = 8, MarkerTypeLostMCLight = 9, MarkerTypeNumber0 = 10, MarkerTypeNumber1 = 11, MarkerTypeNumber2 = 12, MarkerTypeNumber3 = 13, MarkerTypeNumber4 = 14, MarkerTypeNumber5 = 15, MarkerTypeNumber6 = 16, MarkerTypeNumber7 = 17, MarkerTypeNumber8 = 18, MarkerTypeNumber9 = 19, MarkerTypeChevronUpx1 = 20, MarkerTypeChevronUpx2 = 21, MarkerTypeChevronUpx3 = 22, MarkerTypeHorizontalCircleFat = 23, MarkerTypeReplayIcon = 24, MarkerTypeHorizontalCircleSkinny = 25, MarkerTypeHorizontalCircleSkinny_Arrow = 26, MarkerTypeHorizontalSplitArrowCircle = 27, MarkerTypeDebugSphere = 28, MarkerTypeDallorSign = 29, MarkerTypeHorizontalBars = 30, MarkerTypeWolfHead = 31 }; dirX/Y/Z represent a heading on each axis in which the marker should face, alternatively you can rotate each axis independently with rotX/Y/Z (and set dirX/Y/Z all to 0). faceCamera - Rotates only the y-axis (the heading) towards the camera p19 - no effect, default value in script is 2 rotate - Rotates only on the y-axis (the heading) textureDict - Name of texture dictionary to load texture from (e.g. "GolfPutting") textureName - Name of texture inside dictionary to load (e.g. "PuttingMarker") drawOnEnts - Draws the marker onto any entities that intersect it basically what he said, except textureDict and textureName are totally not const char*, or if so, then they are always set to 0/NULL/nullptr in every script I checked, eg: bj.c: graphics::draw_marker(6, vParam0, 0f, 0f, 1f, 0f, 0f, 0f, 4f, 4f, 4f, 240, 200, 80, iVar1, 0, 0, 2, 0, 0, 0, false); his is what I used to draw an amber downward pointing chevron "V", has to be redrawn every frame. The 180 is for 180 degrees rotation around the Y axis, the 50 is alpha, assuming max is 100, but it will accept 255. GRAPHICS::DRAW_MARKER(2, v.x, v.y, v.z + 2, 0, 0, 0, 0, 180, 0, 2, 2, 2, 255, 128, 0, 50, 0, 1, 1, 0, 0, 0, 0);
_DRAW_MARKER_2
void GRAPHICS::_DRAW_MARKER_2(int type, float posX, float posY, float posZ, float dirX, float dirY, float dirZ, float rotX, float rotY, float rotZ, float scaleX, float scaleY, float scaleZ, int red, int green, int blue, int alpha, BOOL bobUpAndDown, BOOL faceCamera, Any p19, BOOL rotate, const char* textureDict, const char* textureName, BOOL drawOnEnts, BOOL p24, BOOL p25) // 0xE82728F0DE75D13A b573
_DRAW_SPHERE
void GRAPHICS::_DRAW_SPHERE(float x, float y, float z, float radius, int red, int green, int blue, float alpha) // 0x799017F9E3B10112 b463
Draws a 3D sphere, typically seen in the GTA:O freemode event "Penned In". Example https://imgur.com/nCbtS4H
CREATE_CHECKPOINT
int GRAPHICS::CREATE_CHECKPOINT(int type, float posX1, float posY1, float posZ1, float posX2, float posY2, float posZ2, float diameter, int red, int green, int blue, int alpha, int reserved) // 0x0134F0835AB6BFCB 0xF541B690 b323
Creates a checkpoint. Returns the handle of the checkpoint. 20/03/17 : Attention, checkpoints are already handled by the game itself, so you must not loop it like markers. Parameters: * type - The type of checkpoint to create. See below for a list of checkpoint types. * pos1 - The position of the checkpoint. * pos2 - The position of the next checkpoint to point to. * radius - The radius of the checkpoint. * color - The color of the checkpoint. * reserved - Special parameter, see below for details. Usually set to 0 in the scripts. Checkpoint types: 0-4---------Cylinder: 1 arrow, 2 arrow, 3 arrows, CycleArrow, Checker 5-9---------Cylinder: 1 arrow, 2 arrow, 3 arrows, CycleArrow, Checker 10-14-------Ring: 1 arrow, 2 arrow, 3 arrows, CycleArrow, Checker 15-19-------1 arrow, 2 arrow, 3 arrows, CycleArrow, Checker 20-24-------Cylinder: 1 arrow, 2 arrow, 3 arrows, CycleArrow, Checker 25-29-------Cylinder: 1 arrow, 2 arrow, 3 arrows, CycleArrow, Checker 30-34-------Cylinder: 1 arrow, 2 arrow, 3 arrows, CycleArrow, Checker 35-38-------Ring: Airplane Up, Left, Right, UpsideDown 39----------? 40----------Ring: just a ring 41----------? 42-44-------Cylinder w/ number (uses 'reserved' parameter) 45-47-------Cylinder no arrow or number If using type 42-44, reserved sets number / number and shape to display 0-99------------Just numbers (0-99) 100-109-----------------Arrow (0-9) 110-119------------Two arrows (0-9) 120-129----------Three arrows (0-9) 130-139----------------Circle (0-9) 140-149------------CycleArrow (0-9) 150-159----------------Circle (0-9) 160-169----Circle w/ pointer (0-9) 170-179-------Perforated ring (0-9) 180-189----------------Sphere (0-9)
_SET_CHECKPOINT_SCALE
void GRAPHICS::_SET_CHECKPOINT_SCALE(int checkpoint, float p0) // 0x4B5B4DA5D79F1943 0x80151CCF b323
p0 - Scale? Looks to be a normalized value (0.0 - 1.0) offroad_races.c4, line ~67407: a_3._f7 = GRAPHICS::CREATE_CHECKPOINT(v_D, v_A, a_4, a_7, v_E, v_F, v_10, sub_62b2(v_A, 220, 255), 0); HUD::GET_HUD_COLOUR(134, &v_E, &v_F, &v_10, &v_11); GRAPHICS::_SET_CHECKPOINT_ICON_RGBA(a_3._f7, v_E, v_F, v_10, sub_62b2(v_A, 70, 210)); GRAPHICS::_4B5B4DA5D79F1943(a_3._f7, 0.95); GRAPHICS::SET_CHECKPOINT_CYLINDER_HEIGHT(a_3._f7, 4.0, 4.0, 100.0);
_SET_CHECKPOINT_ICON_SCALE
void GRAPHICS::_SET_CHECKPOINT_ICON_SCALE(int checkpoint, float scale) // 0x44621483FF966526 b877
SET_CHECKPOINT_CYLINDER_HEIGHT
void GRAPHICS::SET_CHECKPOINT_CYLINDER_HEIGHT(int checkpoint, float nearHeight, float farHeight, float radius) // 0x2707AAE9D9297D89 0xFF0F9B22 b323
Sets the cylinder height of the checkpoint. Parameters: * nearHeight - The height of the checkpoint when inside of the radius. * farHeight - The height of the checkpoint when outside of the radius. * radius - The radius of the checkpoint.
SET_CHECKPOINT_RGBA
void GRAPHICS::SET_CHECKPOINT_RGBA(int checkpoint, int red, int green, int blue, int alpha) // 0x7167371E8AD747F7 0xEF9C8CB3 b323
Sets the checkpoint color.
SET_CHECKPOINT_RGBA2
void GRAPHICS::SET_CHECKPOINT_RGBA2(int checkpoint, int red, int green, int blue, int alpha) // 0xB9EA40907C680580 0xA5456DBB b323
Sets the checkpoint icon color.
_0xF51D36185993515D
void GRAPHICS::_0xF51D36185993515D(int checkpoint, float posX, float posY, float posZ, float unkX, float unkY, float unkZ) // 0xF51D36185993515D 0x20EABD0F b323
This does not move an existing checkpoint... so wtf.
_0xFCF6788FC4860CD4
void GRAPHICS::_0xFCF6788FC4860CD4(int checkpoint) // 0xFCF6788FC4860CD4 b1734
SET_CHECKPOINT_*
_0x615D3925E87A3B26
void GRAPHICS::_0x615D3925E87A3B26(int checkpoint) // 0x615D3925E87A3B26 0x1E3A3126 b323
Unknown. Called after creating a checkpoint (type: 51) in the creators.
_0xDB1EA9411C8911EC
void GRAPHICS::_0xDB1EA9411C8911EC(Any p0) // 0xDB1EA9411C8911EC b1180
_0x3C788E7F6438754D
void GRAPHICS::_0x3C788E7F6438754D(Any p0, Any p1, Any p2, Any p3) // 0x3C788E7F6438754D b1180
DELETE_CHECKPOINT
void GRAPHICS::DELETE_CHECKPOINT(int checkpoint) // 0xF5ED37F54CD4D52E 0xB66CF3CA b323
DONT_RENDER_IN_GAME_UI
void GRAPHICS::DONT_RENDER_IN_GAME_UI(BOOL p0) // 0x22A249A53034450A 0x932FDB81 b323
FORCE_RENDER_IN_GAME_UI
void GRAPHICS::FORCE_RENDER_IN_GAME_UI(BOOL toggle) // 0xDC459CFA0CCE245B 0x7E946E87 b323
REQUEST_STREAMED_TEXTURE_DICT
void GRAPHICS::REQUEST_STREAMED_TEXTURE_DICT(const char* textureDict, BOOL p1) // 0xDFA2EF8E04127DD5 0x4C9B035F b323
This function can requests texture dictonaries from following RPFs: scaleform_generic.rpf scaleform_minigames.rpf scaleform_minimap.rpf scaleform_web.rpf last param isnt a toggle
HAS_STREAMED_TEXTURE_DICT_LOADED
BOOL GRAPHICS::HAS_STREAMED_TEXTURE_DICT_LOADED(const char* textureDict) // 0x0145F696AAAAD2E4 0x3F436EEF b323
SET_STREAMED_TEXTURE_DICT_AS_NO_LONGER_NEEDED
void GRAPHICS::SET_STREAMED_TEXTURE_DICT_AS_NO_LONGER_NEEDED(const char* textureDict) // 0xBE2CACCF5A8AA805 0xF07DDA38 b323
DRAW_RECT
void GRAPHICS::DRAW_RECT(float x, float y, float width, float height, int r, int g, int b, int a, BOOL p8) // 0x3A618A217E5154F0 0xDD2BFC77 b323
Draws a rectangle on the screen. -x: The relative X point of the center of the rectangle. (0.0-1.0, 0.0 is the left edge of the screen, 1.0 is the right edge of the screen) -y: The relative Y point of the center of the rectangle. (0.0-1.0, 0.0 is the top edge of the screen, 1.0 is the bottom edge of the screen) -width: The relative width of the rectangle. (0.0-1.0, 1.0 means the whole screen width) -height: The relative height of the rectangle. (0.0-1.0, 1.0 means the whole screen height) -R: Red part of the color. (0-255) -G: Green part of the color. (0-255) -B: Blue part of the color. (0-255) -A: Alpha part of the color. (0-255, 0 means totally transparent, 255 means totally opaque) The total number of rectangles to be drawn in one frame is apparently limited to 399.
SET_SCRIPT_GFX_DRAW_BEHIND_PAUSEMENU
void GRAPHICS::SET_SCRIPT_GFX_DRAW_BEHIND_PAUSEMENU(BOOL toggle) // 0xC6372ECD45D73BCD 0xF8FBCC25 b323
Sets a flag defining whether or not script draw commands should continue being drawn behind the pause menu. This is usually used for TV channels and other draw commands that are used with a world render target.
SET_SCRIPT_GFX_DRAW_ORDER
void GRAPHICS::SET_SCRIPT_GFX_DRAW_ORDER(int drawOrder) // 0x61BB1D9B3A95D802 0xADF81D24 b323
Sets the draw order for script draw commands. Examples from decompiled scripts: GRAPHICS::SET_SCRIPT_GFX_DRAW_ORDER(7); GRAPHICS::DRAW_RECT(0.5, 0.5, 3.0, 3.0, v_4, v_5, v_6, a_0._f172, 0); GRAPHICS::SET_SCRIPT_GFX_DRAW_ORDER(1); GRAPHICS::DRAW_RECT(0.5, 0.5, 1.5, 1.5, 0, 0, 0, 255, 0);
SET_SCRIPT_GFX_ALIGN
void GRAPHICS::SET_SCRIPT_GFX_ALIGN(int horizontalAlign, int verticalAlign) // 0xB8A850F20A067EB6 0x228A2598 b323
horizontalAlign: The horizontal alignment. This can be 67 ('C'), 76 ('L'), or 82 ('R'). verticalAlign: The vertical alignment. This can be 67 ('C'), 66 ('B'), or 84 ('T'). This function anchors script draws to a side of the safe zone. This needs to be called to make the interface independent of the player's safe zone configuration. These values are equivalent to alignX and alignY in common:/data/ui/frontend.xml, which can be used as a baseline for default alignment. Using any other value (including 0) will result in the safe zone not being taken into account for this draw. The canonical value for this is 'I' (73). For example, you can use SET_SCRIPT_GFX_ALIGN(0, 84) to only scale on the Y axis (to the top), but not change the X axis. To reset the value, use RESET_SCRIPT_GFX_ALIGN.
RESET_SCRIPT_GFX_ALIGN
void GRAPHICS::RESET_SCRIPT_GFX_ALIGN() // 0xE3A3DB414A373DAB 0x3FE33BD6 b323
This function resets the alignment set using SET_SCRIPT_GFX_ALIGN and SET_SCRIPT_GFX_ALIGN_PARAMS to the default values ('I', 'I'; 0, 0, 0, 0). This should be used after having used the aforementioned functions in order to not affect any other scripts attempting to draw.
SET_SCRIPT_GFX_ALIGN_PARAMS
void GRAPHICS::SET_SCRIPT_GFX_ALIGN_PARAMS(float x, float y, float w, float h) // 0xF5A2C681787E579D 0x76C641E4 b323
Sets the draw offset/calculated size for SET_SCRIPT_GFX_ALIGN. If using any alignment other than left/top, the game expects the width/height to be configured using this native in order to get a proper starting position for the draw command.
_GET_SCRIPT_GFX_POSITION
void GRAPHICS::_GET_SCRIPT_GFX_POSITION(float x, float y, float* calculatedX, float* calculatedY) // 0x6DD8F5AA635EB4B2 b323
Calculates the effective X/Y fractions when applying the values set by SET_SCRIPT_GFX_ALIGN and SET_SCRIPT_GFX_ALIGN_PARAMS
GET_SAFE_ZONE_SIZE
float GRAPHICS::GET_SAFE_ZONE_SIZE() // 0xBAF107B6BB2C97F0 0x3F0D1A6F b323
Gets the scale of safe zone. if the safe zone size scale is max, it will return 1.0.
DRAW_SPRITE
void GRAPHICS::DRAW_SPRITE(const char* textureDict, const char* textureName, float screenX, float screenY, float width, float height, float heading, int red, int green, int blue, int alpha, BOOL p11) // 0xE7FFAE5EBF23D890 0x1FEC16B0 b323
Draws a 2D sprite on the screen. Parameters: textureDict - Name of texture dictionary to load texture from (e.g. "CommonMenu", "MPWeaponsCommon", etc.) textureName - Name of texture to load from texture dictionary (e.g. "last_team_standing_icon", "tennis_icon", etc.) screenX/Y - Screen offset (0.5 = center) scaleX/Y - Texture scaling. Negative values can be used to flip the texture on that axis. (0.5 = half) heading - Texture rotation in degrees (default = 0.0) positive is clockwise, measured in degrees red,green,blue - Sprite color (default = 255/255/255) alpha - opacity level
_0x2D3B147AFAD49DE0
void GRAPHICS::_0x2D3B147AFAD49DE0(const char* textureDict, const char* textureName, float x, float y, float width, float height, float p6, int red, int green, int blue, int alpha, Any p11) // 0x2D3B147AFAD49DE0 b1290
Used in arcade games and Beam hack minigame in Doomsday Heist. I will most certainly dive into this to try replicate arcade games. x position must be between 0.0 and 1.0 (1.0 being the most right side of the screen) y position must be between 0.0 and 1.0 (1.0 being the most bottom side of the screen) width 0.0 - 1.0 is the reasonable amount generally height 0.0 - 1.0 is the reasonable amount generally p6 almost always 0.0 p11 seems to be unknown but almost always 0 int
_DRAW_INTERACTIVE_SPRITE
void GRAPHICS::_DRAW_INTERACTIVE_SPRITE(const char* textureDict, const char* textureName, float screenX, float screenY, float width, float height, float heading, int red, int green, int blue, int alpha) // 0x2BC54A8188768488 b877
Similar to _DRAW_SPRITE, but seems to be some kind of "interactive" sprite, at least used by render targets. These seem to be the only dicts ever requested by this native: prop_screen_biker_laptop Prop_Screen_GR_Disruption Prop_Screen_TaleOfUs prop_screen_nightclub Prop_Screen_IE_Adhawk prop_screen_sm_free_trade_shipping prop_screen_hacker_truck MPDesktop Prop_Screen_Nightclub And a few others
_DRAW_SPRITE_UV
void GRAPHICS::_DRAW_SPRITE_UV(const char* textureDict, const char* textureName, float x, float y, float width, float height, float u1, float v1, float u2, float v2, float heading, int red, int green, int blue, int alpha) // 0x95812F9B26074726 b1868
Similar to DRAW_SPRITE, but allows to specify the texture coordinates used to draw the sprite. u1, v1 - texture coordinates for the top-left corner u2, v2 - texture coordinates for the bottom-right corner
ADD_ENTITY_ICON
Any GRAPHICS::ADD_ENTITY_ICON(Entity entity, const char* icon) // 0x9CD43EEE12BF4DD0 0xF3027D21 b323
Example: GRAPHICS::ADD_ENTITY_ICON(a_0, "MP_Arrow"); I tried this and nothing happened...
SET_ENTITY_ICON_VISIBILITY
void GRAPHICS::SET_ENTITY_ICON_VISIBILITY(Entity entity, BOOL toggle) // 0xE0E8BEECCA96BA31 0xD1D2FD52 b323
SET_ENTITY_ICON_COLOR
void GRAPHICS::SET_ENTITY_ICON_COLOR(Entity entity, int red, int green, int blue, int alpha) // 0x1D5F595CCAE2E238 0x6EE1E946 b323
SET_DRAW_ORIGIN
void GRAPHICS::SET_DRAW_ORIGIN(float x, float y, float z, Any p3) // 0xAA0008F3BBB8F416 0xE10198D5 b323
Sets the on-screen drawing origin for draw-functions (which is normally x=0,y=0 in the upper left corner of the screen) to a world coordinate. From now on, the screen coordinate which displays the given world coordinate on the screen is seen as x=0,y=0. Example in C#: Vector3 boneCoord = somePed.GetBoneCoord(Bone.SKEL_Head); Function.Call(Hash.SET_DRAW_ORIGIN, boneCoord.X, boneCoord.Y, boneCoord.Z, 0); Function.Call(Hash.DRAW_SPRITE, "helicopterhud", "hud_corner", -0.01, -0.015, 0.013, 0.013, 0.0, 255, 0, 0, 200); Function.Call(Hash.DRAW_SPRITE, "helicopterhud", "hud_corner", 0.01, -0.015, 0.013, 0.013, 90.0, 255, 0, 0, 200); Function.Call(Hash.DRAW_SPRITE, "helicopterhud", "hud_corner", -0.01, 0.015, 0.013, 0.013, 270.0, 255, 0, 0, 200); Function.Call(Hash.DRAW_SPRITE, "helicopterhud", "hud_corner", 0.01, 0.015, 0.013, 0.013, 180.0, 255, 0, 0, 200); Function.Call(Hash.CLEAR_DRAW_ORIGIN); Result: www11.pic-upload.de/19.06.15/bkqohvil2uao.jpg If the pedestrian starts walking around now, the sprites are always around her head, no matter where the head is displayed on the screen. This function also effects the drawing of texts and other UI-elements. The effect can be reset by calling GRAPHICS::CLEAR_DRAW_ORIGIN().
CLEAR_DRAW_ORIGIN
void GRAPHICS::CLEAR_DRAW_ORIGIN() // 0xFF0B610F6BE0D7AF 0xDD76B263 b323
Resets the screen's draw-origin which was changed by the function GRAPHICS::SET_DRAW_ORIGIN(...) back to x=0,y=0. See GRAPHICS::SET_DRAW_ORIGIN(...) for further information.
_SET_BINK_MOVIE
int GRAPHICS::_SET_BINK_MOVIE(const char* name) // 0x338D9F609FD632DB b1290
_PLAY_BINK_MOVIE
void GRAPHICS::_PLAY_BINK_MOVIE(int binkMovie) // 0x70D2CC8A542A973C b1290
_STOP_BINK_MOVIE
void GRAPHICS::_STOP_BINK_MOVIE(int binkMovie) // 0x63606A61DE68898A b1290
_RELEASE_BINK_MOVIE
void GRAPHICS::_RELEASE_BINK_MOVIE(int binkMovie) // 0x04D950EEFA4EED8C b1290
_DRAW_BINK_MOVIE
void GRAPHICS::_DRAW_BINK_MOVIE(int binkMovie, float p1, float p2, float p3, float p4, float p5, int r, int g, int b, int a) // 0x7118E83EEB9F7238 b1290
_SET_BINK_MOVIE_TIME
void GRAPHICS::_SET_BINK_MOVIE_TIME(int binkMovie, float progress) // 0x0CB6B3446855B57A b1290
In percentage: 0.0 - 100.0
_GET_BINK_MOVIE_TIME
float GRAPHICS::_GET_BINK_MOVIE_TIME(int binkMovie) // 0x8E17DDD6B9D5BF29 b1734
In percentage: 0.0 - 100.0
_SET_BINK_MOVIE_VOLUME
void GRAPHICS::_SET_BINK_MOVIE_VOLUME(int binkMovie, float value) // 0xAFF33B1178172223 b1290
binkMovie: Is return value from _SET_BINK_MOVIE. Has something to do with bink volume? (audRequestedSettings::SetVolumeCurveScale)
ATTACH_TV_AUDIO_TO_ENTITY
void GRAPHICS::ATTACH_TV_AUDIO_TO_ENTITY(Entity entity) // 0x845BAD77CC770633 0x784944DB b323
Might be more appropriate in AUDIO?
_SET_BINK_MOVIE_UNK_2
void GRAPHICS::_SET_BINK_MOVIE_UNK_2(int binkMovie, BOOL p1) // 0xF816F2933752322D b1868
SET_TV_AUDIO_FRONTEND
void GRAPHICS::SET_TV_AUDIO_FRONTEND(BOOL toggle) // 0x113D2C5DC57E1774 0x2E0DFA35 b323
Probably changes tvs from being a 3d audio to being "global" audio
_SET_BINK_SHOULD_SKIP
void GRAPHICS::_SET_BINK_SHOULD_SKIP(int binkMovie, BOOL bShouldSkip) // 0x6805D58CAA427B72 b1290
LOAD_MOVIE_MESH_SET
int GRAPHICS::LOAD_MOVIE_MESH_SET(const char* movieMeshSetName) // 0xB66064452270E8F1 0x9627905C b323
RELEASE_MOVIE_MESH_SET
void GRAPHICS::RELEASE_MOVIE_MESH_SET(int movieMeshSet) // 0xEB119AA014E89183 0x4FA5501D b323
QUERY_MOVIE_MESH_SET_STATE
Any GRAPHICS::QUERY_MOVIE_MESH_SET_STATE(Any p0) // 0x9B6E70C5CEEF4EEB 0x9D5D9B38 b323
GET_SCREEN_RESOLUTION
void GRAPHICS::GET_SCREEN_RESOLUTION(int* x, int* y) // 0x888D57E407E63624 0x29F3572F b323
int screenresx,screenresy; GET_SCREEN_RESOLUTION(&screenresx,&screenresy);
_GET_ACTIVE_SCREEN_RESOLUTION
void GRAPHICS::_GET_ACTIVE_SCREEN_RESOLUTION(int* x, int* y) // 0x873C9F3104101DD3 b323
Returns current screen resolution.
_GET_ASPECT_RATIO
float GRAPHICS::_GET_ASPECT_RATIO(BOOL b) // 0xF1307EF624A80D87 b323
_0xB2EBE8CBC58B90E9
Any GRAPHICS::_0xB2EBE8CBC58B90E9() // 0xB2EBE8CBC58B90E9 b323
GET_IS_WIDESCREEN
BOOL GRAPHICS::GET_IS_WIDESCREEN() // 0x30CF4BDA4FCB1905 0xEC717AEF b323
Setting Aspect Ratio Manually in game will return: false - for Narrow format Aspect Ratios (3:2, 4:3, 5:4, etc. ) true - for Wide format Aspect Ratios (5:3, 16:9, 16:10, etc. ) Setting Aspect Ratio to "Auto" in game will return "false" or "true" based on the actual set Resolution Ratio.
GET_IS_HIDEF
BOOL GRAPHICS::GET_IS_HIDEF() // 0x84ED31191CC5D2C9 0x1C340359 b323
false = Any resolution < 1280x720 true = Any resolution >= 1280x720
_0xEFABC7722293DA7C
void GRAPHICS::_0xEFABC7722293DA7C() // 0xEFABC7722293DA7C b323
AD*
SET_NIGHTVISION
void GRAPHICS::SET_NIGHTVISION(BOOL toggle) // 0x18F621F7A5B1F85D 0xD1E5565F b323
Enables Night Vision. Example: C#: Function.Call(Hash.SET_NIGHTVISION, true); C++: GRAPHICS::SET_NIGHTVISION(true); BOOL toggle: true = turns night vision on for your player. false = turns night vision off for your player.
GET_REQUESTINGNIGHTVISION
BOOL GRAPHICS::GET_REQUESTINGNIGHTVISION() // 0x35FB78DC42B7BD21 0xF3A6309E b323
GET_USINGNIGHTVISION
BOOL GRAPHICS::GET_USINGNIGHTVISION() // 0x2202A3F42C8E5F79 0x62619061 b323
_0xEF398BEEE4EF45F9
void GRAPHICS::_0xEF398BEEE4EF45F9(BOOL p0) // 0xEF398BEEE4EF45F9 b323
_0x814AF7DCAACC597B
void GRAPHICS::_0x814AF7DCAACC597B(Any p0) // 0x814AF7DCAACC597B b372
_0x43FA7CBE20DAB219
void GRAPHICS::_0x43FA7CBE20DAB219(Any p0) // 0x43FA7CBE20DAB219 b1290
SET_NOISEOVERIDE
void GRAPHICS::SET_NOISEOVERIDE(BOOL toggle) // 0xE787BF1C5CF823C9 0xD576F5DD b323
SET_NOISINESSOVERIDE
void GRAPHICS::SET_NOISINESSOVERIDE(float value) // 0xCB6A7C3BB17A0C67 0x046B62D9 b323
GET_SCREEN_COORD_FROM_WORLD_COORD
BOOL GRAPHICS::GET_SCREEN_COORD_FROM_WORLD_COORD(float worldX, float worldY, float worldZ, float* screenX, float* screenY) // 0x34E82F05DF2974F5 0x1F950E4B b323
Convert a world coordinate into its relative screen coordinate. (WorldToScreen) Returns a boolean; whether or not the operation was successful. It will return false if the coordinates given are not visible to the rendering camera. For .NET users... VB: Public Shared Function World3DToScreen2d(pos as vector3) As Vector2 Dim x2dp, y2dp As New Native.OutputArgument Native.Function.Call(Of Boolean)(Native.Hash.GET_SCREEN_COORD_FROM_WORLD_COORD , pos.x, pos.y, pos.z, x2dp, y2dp) Return New Vector2(x2dp.GetResult(Of Single), y2dp.GetResult(Of Single)) End Function C#: Vector2 World3DToScreen2d(Vector3 pos) { var x2dp = new OutputArgument(); var y2dp = new OutputArgument(); Function.Call<bool>(Hash.GET_SCREEN_COORD_FROM_WORLD_COORD , pos.X, pos.Y, pos.Z, x2dp, y2dp); return new Vector2(x2dp.GetResult<float>(), y2dp.GetResult<float>()); } //USE VERY SMALL VALUES FOR THE SCALE OF RECTS/TEXT because it is dramatically larger on screen than in 3D, e.g '0.05' small. Used to be called _WORLD3D_TO_SCREEN2D I thought we lost you from the scene forever. It does seem however that calling SET_DRAW_ORIGIN then your natives, then ending it. Seems to work better for certain things such as keeping boxes around people for a predator missile e.g.
GET_TEXTURE_RESOLUTION
Vector3 GRAPHICS::GET_TEXTURE_RESOLUTION(const char* textureDict, const char* textureName) // 0x35736EE65BD00C11 0x096DAA4D b323
Returns the texture resolution of the passed texture dict+name. Note: Most texture resolutions are doubled compared to the console version of the game.
_OVERRIDE_PED_BADGE_TEXTURE
BOOL GRAPHICS::_OVERRIDE_PED_BADGE_TEXTURE(Ped ped, const char* txd, const char* txn) // 0x95EB5E34F821BABE b877
Overriding ped badge texture to a passed texture. It's synced between players (even custom textures!), don't forget to request used dict on *all* clients to make it sync properly. Can be removed by passing empty strings.
_0xE2892E7E55D7073A
void GRAPHICS::_0xE2892E7E55D7073A(float p0) // 0xE2892E7E55D7073A 0x455F1084 b323
SET_FLASH
void GRAPHICS::SET_FLASH(float p0, float p1, float fadeIn, float duration, float fadeOut) // 0x0AB84296FED9CFC6 0x7E55A1EE b323
Purpose of p0 and p1 unknown.
DISABLE_OCCLUSION_THIS_FRAME
void GRAPHICS::DISABLE_OCCLUSION_THIS_FRAME() // 0x3669F1B198DCAA4F 0x0DCC0B8B b323
SET_ARTIFICIAL_LIGHTS_STATE
void GRAPHICS::SET_ARTIFICIAL_LIGHTS_STATE(BOOL state) // 0x1268615ACE24D504 0xAA2A0EAF b323
Does not affect weapons, particles, fire/explosions, flashlights or the sun. When set to true, all emissive textures (including ped components that have light effects), street lights, building lights, vehicle lights, etc will all be turned off. Used in Humane Labs Heist for EMP. state: True turns off all artificial light sources in the map: buildings, street lights, car lights, etc. False turns them back on.
_SET_ARTIFICIAL_LIGHTS_STATE_AFFECTS_VEHICLES
void GRAPHICS::_SET_ARTIFICIAL_LIGHTS_STATE_AFFECTS_VEHICLES(BOOL toggle) // 0xE2B187C0939B3D32 b2060
If "blackout" is enabled, this native allows you to ignore "blackout" for vehicles.
_0xC35A6D07C93802B2
void GRAPHICS::_0xC35A6D07C93802B2() // 0xC35A6D07C93802B2 b323
CREATE_TRACKED_POINT
int GRAPHICS::CREATE_TRACKED_POINT() // 0xE2C9439ED45DEA60 0x3129C31A b323
Creates a tracked point, useful for checking the visibility of a 3D point on screen.
SET_TRACKED_POINT_INFO
void GRAPHICS::SET_TRACKED_POINT_INFO(int point, float x, float y, float z, float radius) // 0x164ECBB3CF750CB0 0x28689AA4 b323
IS_TRACKED_POINT_VISIBLE
BOOL GRAPHICS::IS_TRACKED_POINT_VISIBLE(int point) // 0xC45CCDAAC9221CA8 0x0BFC4F64 b323
DESTROY_TRACKED_POINT
void GRAPHICS::DESTROY_TRACKED_POINT(int point) // 0xB25DC90BAD56CA42 0x14AC675F b323
_0xBE197EAA669238F4
Any GRAPHICS::_0xBE197EAA669238F4(Any p0, Any p1, Any p2, Any p3) // 0xBE197EAA669238F4 b323
This function is hard-coded to always return 0.
_0x61F95E5BB3E0A8C6
void GRAPHICS::_0x61F95E5BB3E0A8C6(Any p0) // 0x61F95E5BB3E0A8C6 b323
This native does absolutely nothing, just a nullsub
_0xAE51BC858F32BA66
void GRAPHICS::_0xAE51BC858F32BA66(Any p0, float p1, float p2, float p3, float p4) // 0xAE51BC858F32BA66 b323
_0x649C97D52332341A
void GRAPHICS::_0x649C97D52332341A(Any p0) // 0x649C97D52332341A b323
_0x2C42340F916C5930
Any GRAPHICS::_0x2C42340F916C5930(Any p0) // 0x2C42340F916C5930 b323
_0x14FC5833464340A8
void GRAPHICS::_0x14FC5833464340A8() // 0x14FC5833464340A8 b323
_0x0218BA067D249DEA
void GRAPHICS::_0x0218BA067D249DEA() // 0x0218BA067D249DEA b323
_0x1612C45F9E3E0D44
void GRAPHICS::_0x1612C45F9E3E0D44() // 0x1612C45F9E3E0D44 b323
_0x5DEBD9C4DC995692
void GRAPHICS::_0x5DEBD9C4DC995692() // 0x5DEBD9C4DC995692 b323
_0xAAE9BE70EC7C69AB
void GRAPHICS::_0xAAE9BE70EC7C69AB(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7) // 0xAAE9BE70EC7C69AB b1290
_GRASS_LOD_SHRINK_SCRIPT_AREAS
void GRAPHICS::_GRASS_LOD_SHRINK_SCRIPT_AREAS(float x, float y, float z, float radius, float p4, float p5, float p6) // 0x6D955F6A9E0295B1 b323
Wraps 0xAAE9BE70EC7C69AB with FLT_MAX as p7, Jenkins: 0x73E96210?
_GRASS_LOD_RESET_SCRIPT_AREAS
void GRAPHICS::_GRASS_LOD_RESET_SCRIPT_AREAS() // 0x302C91AB2D477F7E b323
CASCADE_SHADOWS_INIT_SESSION
void GRAPHICS::CASCADE_SHADOWS_INIT_SESSION() // 0x03FC694AE06C5A20 0x48F16186 b323
CASCADE_SHADOWS_SET_CASCADE_BOUNDS
void GRAPHICS::CASCADE_SHADOWS_SET_CASCADE_BOUNDS(Any p0, BOOL p1, float p2, float p3, float p4, float p5, BOOL p6, float p7) // 0xD2936CAB8B58FCBD 0x84F05943 b323
CASCADE_SHADOWS_SET_CASCADE_BOUNDS_SCALE
void GRAPHICS::CASCADE_SHADOWS_SET_CASCADE_BOUNDS_SCALE(float p0) // 0x5F0F3F56635809EF 0x13D4ABC0 b323
CASCADE_SHADOWS_SET_ENTITY_TRACKER_SCALE
void GRAPHICS::CASCADE_SHADOWS_SET_ENTITY_TRACKER_SCALE(float p0) // 0x5E9DAF5A20F15908 0xD2157428 b323
_0x36F6626459D91457
void GRAPHICS::_0x36F6626459D91457(float p0) // 0x36F6626459D91457 0xC07C64C9 b323
_0x259BA6D4E6F808F1
void GRAPHICS::_0x259BA6D4E6F808F1(Any p0) // 0x259BA6D4E6F808F1 b1011
CASCADE_SHADOWS_ENABLE_ENTITY_TRACKER
void GRAPHICS::CASCADE_SHADOWS_ENABLE_ENTITY_TRACKER(BOOL toggle) // 0x80ECBC0C856D3B0B 0xFE903D0F b323
When this is set to ON, shadows only draw as you get nearer. When OFF, they draw from a further distance.
_0x25FC3E33A31AD0C9
void GRAPHICS::_0x25FC3E33A31AD0C9(BOOL p0) // 0x25FC3E33A31AD0C9 b323
CASCADE_SHADOWS_SET_SHADOW_SAMPLE_TYPE
void GRAPHICS::CASCADE_SHADOWS_SET_SHADOW_SAMPLE_TYPE(const char* type) // 0xB11D94BC55F41932 0xDE10BA1F b323
Possible values: "CSM_ST_POINT" "CSM_ST_LINEAR" "CSM_ST_TWOTAP" "CSM_ST_BOX3x3" "CSM_ST_BOX4x4" "CSM_ST_DITHER2_LINEAR" "CSM_ST_CUBIC" "CSM_ST_DITHER4" "CSM_ST_DITHER16" "CSM_ST_SOFT16" "CSM_ST_DITHER16_RPDB" "CSM_ST_POISSON16_RPDB_GNORM" "CSM_ST_HIGHRES_BOX4x4" "CSM_ST_CLOUDS_SIMPLE" "CSM_ST_CLOUDS_LINEAR" "CSM_ST_CLOUDS_TWOTAP" "CSM_ST_CLOUDS_BOX3x3" "CSM_ST_CLOUDS_BOX4x4" "CSM_ST_CLOUDS_DITHER2_LINEAR" "CSM_ST_CLOUDS_SOFT16" "CSM_ST_CLOUDS_DITHER16_RPDB" "CSM_ST_CLOUDS_POISSON16_RPDB_GNORM"
_CASCADE_SHADOWS_CLEAR_SHADOW_SAMPLE_TYPE
void GRAPHICS::_CASCADE_SHADOWS_CLEAR_SHADOW_SAMPLE_TYPE() // 0x27CB772218215325 b323
CASCADE_SHADOWS_SET_AIRCRAFT_MODE
void GRAPHICS::CASCADE_SHADOWS_SET_AIRCRAFT_MODE(BOOL p0) // 0x6DDBF9DFFC4AC080 0x9F470BE3 b323
CASCADE_SHADOWS_SET_DYNAMIC_DEPTH_MODE
void GRAPHICS::CASCADE_SHADOWS_SET_DYNAMIC_DEPTH_MODE(BOOL p0) // 0xD39D13C9FEBF0511 0x4A124267 b323
CASCADE_SHADOWS_SET_DYNAMIC_DEPTH_VALUE
void GRAPHICS::CASCADE_SHADOWS_SET_DYNAMIC_DEPTH_VALUE(float p0) // 0x02AC28F3A01FA04A 0xB19B2764 b323
_0x0AE73D8DF3A762B2
void GRAPHICS::_0x0AE73D8DF3A762B2(BOOL p0) // 0x0AE73D8DF3A762B2 0x342FA2B4 b323
_0xCA465D9CC0D231BA
void GRAPHICS::_0xCA465D9CC0D231BA(Any p0) // 0xCA465D9CC0D231BA b1011
GOLF_TRAIL_SET_ENABLED
void GRAPHICS::GOLF_TRAIL_SET_ENABLED(BOOL toggle) // 0xA51C4B86B71652AE 0x5D3BFFC9 b323
GOLF_TRAIL_SET_PATH
void GRAPHICS::GOLF_TRAIL_SET_PATH(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7, BOOL p8) // 0x312342E1A4874F3F 0xD9653728 b323
p8 seems to always be false.
GOLF_TRAIL_SET_RADIUS
void GRAPHICS::GOLF_TRAIL_SET_RADIUS(float p0, float p1, float p2) // 0x2485D34E50A22E84 0x72BA8A14 b323
GOLF_TRAIL_SET_COLOUR
void GRAPHICS::GOLF_TRAIL_SET_COLOUR(int p0, int p1, int p2, int p3, int p4, int p5, int p6, int p7, int p8, int p9, int p10, int p11) // 0x12995F2E53FFA601 0x804F444C b323
GOLF_TRAIL_SET_TESSELLATION
void GRAPHICS::GOLF_TRAIL_SET_TESSELLATION(int p0, int p1) // 0xDBAA5EC848BA2D46 0xBB1A1294 b323
_0xC0416B061F2B7E5E
void GRAPHICS::_0xC0416B061F2B7E5E(BOOL p0) // 0xC0416B061F2B7E5E 0x1A1A72EF b323
GOLF_TRAIL_SET_*
GOLF_TRAIL_SET_FIXED_CONTROL_POINT
void GRAPHICS::GOLF_TRAIL_SET_FIXED_CONTROL_POINT(int type, float xPos, float yPos, float zPos, float p4, int red, int green, int blue, int alpha) // 0xB1BB03742917A5D6 0x3BB12B75 b323
12 matches across 4 scripts. All 4 scripts were job creators. type ranged from 0 - 2. p4 was always 0.2f. Likely scale. assuming p5 - p8 is RGBA, the graphic is always yellow (255, 255, 0, 255). Tested but noticed nothing.
GOLF_TRAIL_SET_SHADER_PARAMS
void GRAPHICS::GOLF_TRAIL_SET_SHADER_PARAMS(float p0, float p1, float p2, float p3, float p4) // 0x9CFDD90B2B844BF7 0x4EA70FB4 b323
Only appeared in Golf & Golf_mp. Parameters were all ptrs
GOLF_TRAIL_SET_FACING
void GRAPHICS::GOLF_TRAIL_SET_FACING(BOOL p0) // 0x06F761EA47C1D3ED 0x0D830DC7 b323
GOLF_TRAIL_GET_MAX_HEIGHT
float GRAPHICS::GOLF_TRAIL_GET_MAX_HEIGHT() // 0xA4819F5E23E2FFAD 0xA08B46AD b323
GOLF_TRAIL_GET_VISUAL_CONTROL_POINT
Vector3 GRAPHICS::GOLF_TRAIL_GET_VISUAL_CONTROL_POINT(int p0) // 0xA4664972A9B8F8BA 0xECD470F0 b323
SET_SEETHROUGH
void GRAPHICS::SET_SEETHROUGH(BOOL toggle) // 0x7E08924259E08CE0 0x74D4995C b323
Toggles Heatvision on/off.
GET_USINGSEETHROUGH
BOOL GRAPHICS::GET_USINGSEETHROUGH() // 0x44B80ABAB9D80BD3 0x1FE547F2 b323
SEETHROUGH_RESET
void GRAPHICS::SEETHROUGH_RESET() // 0x70A64C0234EF522C 0x310E9B67 b323
_SEETHROUGH_SET_FADE_START_DISTANCE
void GRAPHICS::_SEETHROUGH_SET_FADE_START_DISTANCE(float distance) // 0xA78DE25577300BA1 b573
_SEETHROUGH_SET_FADE_END_DISTANCE
void GRAPHICS::_SEETHROUGH_SET_FADE_END_DISTANCE(float distance) // 0x9D75795B9DC6EBBF b573
_SEETHROUGH_GET_MAX_THICKNESS
float GRAPHICS::_SEETHROUGH_GET_MAX_THICKNESS() // 0x43DBAE39626CE83F b1290
_SEETHROUGH_SET_MAX_THICKNESS
void GRAPHICS::_SEETHROUGH_SET_MAX_THICKNESS(float thickness) // 0x0C8FAC83902A62DF b573
0.0 = you will not be able to see people behind the walls. 50.0 and more = you will see everyone through the walls. More value is "better" view. See https://gfycat.com/FirmFlippantGourami min: 1.0 max: 10000.0
_SEETHROUGH_SET_NOISE_AMOUNT_MIN
void GRAPHICS::_SEETHROUGH_SET_NOISE_AMOUNT_MIN(float amount) // 0xFF5992E1C9E65D05 b573
_SEETHROUGH_SET_NOISE_AMOUNT_MAX
void GRAPHICS::_SEETHROUGH_SET_NOISE_AMOUNT_MAX(float amount) // 0xFEBFBFDFB66039DE b573
_SEETHROUGH_SET_HI_LIGHT_INTENSITY
void GRAPHICS::_SEETHROUGH_SET_HI_LIGHT_INTENSITY(float intensity) // 0x19E50EB6E33E1D28 b573
_SEETHROUGH_SET_HI_LIGHT_NOISE
void GRAPHICS::_SEETHROUGH_SET_HI_LIGHT_NOISE(float noise) // 0x1636D7FC127B10D2 b573
SEETHROUGH_SET_HEATSCALE
void GRAPHICS::SEETHROUGH_SET_HEATSCALE(int index, float heatScale) // 0xD7D0B00177485411 0x654F0287 b323
min: 0.0 max: 0.75
_SEETHROUGH_SET_COLOR_NEAR
void GRAPHICS::_SEETHROUGH_SET_COLOR_NEAR(int red, int green, int blue) // 0x1086127B3A63505E b573
_0xB3C641F3630BF6DA
void GRAPHICS::_0xB3C641F3630BF6DA(float p0) // 0xB3C641F3630BF6DA 0xF6B837F0 b323
Setter for 0xE59343E9E96529E7 SET_M*
_0xE59343E9E96529E7
float GRAPHICS::_0xE59343E9E96529E7() // 0xE59343E9E96529E7 0xD906A3A9 b323
Getter for 0xB3C641F3630BF6DA GET_M*
_0x6A51F78772175A51
void GRAPHICS::_0x6A51F78772175A51(BOOL toggle) // 0x6A51F78772175A51 b1011
SET_F*
_0xE63D7C6EECECB66B
void GRAPHICS::_0xE63D7C6EECECB66B(BOOL toggle) // 0xE63D7C6EECECB66B 0xD34A6CBA b323
TOGGLE_*
_0xE3E2C1B4C59DBC77
void GRAPHICS::_0xE3E2C1B4C59DBC77(int unk) // 0xE3E2C1B4C59DBC77 0xD8CC7221 b323
Sets an unknown value related to timecycles.
TRIGGER_SCREENBLUR_FADE_IN
BOOL GRAPHICS::TRIGGER_SCREENBLUR_FADE_IN(float transitionTime) // 0xA328A24AAA6B7FDC 0x5604B890 b323
time in ms to transition to fully blurred screen
TRIGGER_SCREENBLUR_FADE_OUT
BOOL GRAPHICS::TRIGGER_SCREENBLUR_FADE_OUT(float transitionTime) // 0xEFACC8AEF94430D5 0x46617502 b323
time in ms to transition from fully blurred to normal
DISABLE_SCREENBLUR_FADE
void GRAPHICS::DISABLE_SCREENBLUR_FADE() // 0xDE81239437E8C5A8 0xDB7AECDA b323
GET_SCREENBLUR_FADE_CURRENT_TIME
float GRAPHICS::GET_SCREENBLUR_FADE_CURRENT_TIME() // 0x5CCABFFCA31DDE33 0xEA432A94 b323
IS_SCREENBLUR_FADE_RUNNING
BOOL GRAPHICS::IS_SCREENBLUR_FADE_RUNNING() // 0x7B226C785A52A0A9 0x926B8734 b323
Returns whether screen transition to blur/from blur is running.
TOGGLE_PAUSED_RENDERPHASES
void GRAPHICS::TOGGLE_PAUSED_RENDERPHASES(BOOL toggle) // 0xDFC252D8A3E15AB7 0x30ADE541 b323
GET_TOGGLE_PAUSED_RENDERPHASES_STATUS
BOOL GRAPHICS::GET_TOGGLE_PAUSED_RENDERPHASES_STATUS() // 0xEB3DAC2C86001E5E 0xD4F5D07D b323
RESET_PAUSED_RENDERPHASES
void GRAPHICS::RESET_PAUSED_RENDERPHASES() // 0xE1C8709406F2C41C 0x0113EAE4 b323
_0x851CD923176EBA7C
void GRAPHICS::_0x851CD923176EBA7C() // 0x851CD923176EBA7C 0xDCBA251B b323
_SET_HIDOF_ENV_BLUR_PARAMS
void GRAPHICS::_SET_HIDOF_ENV_BLUR_PARAMS(BOOL p0, BOOL p1, float nearplaneOut, float nearplaneIn, float farplaneOut, float farplaneIn) // 0xBA3D65906822BED5 0x513D444B b323
Every p2 - p5 occurrence was 0f.
_0xB569F41F3E7E83A4
void GRAPHICS::_0xB569F41F3E7E83A4(Any p0) // 0xB569F41F3E7E83A4 b1103
_0x7AC24EAB6D74118D
BOOL GRAPHICS::_0x7AC24EAB6D74118D(BOOL p0) // 0x7AC24EAB6D74118D 0xB2410EAB b323
_0xBCEDB009461DA156
Any GRAPHICS::_0xBCEDB009461DA156() // 0xBCEDB009461DA156 0x5AB94128 b323
_0x27FEB5254759CDE3
BOOL GRAPHICS::_0x27FEB5254759CDE3(const char* textureDict, BOOL p1) // 0x27FEB5254759CDE3 0xD63FCB3E b323
START_PARTICLE_FX_NON_LOOPED_AT_COORD
int GRAPHICS::START_PARTICLE_FX_NON_LOOPED_AT_COORD(const char* effectName, float xPos, float yPos, float zPos, float xRot, float yRot, float zRot, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis) // 0x25129531F77B9ED3 0xDD79D679 b323
GRAPHICS::START_PARTICLE_FX_NON_LOOPED_AT_COORD("scr_paleto_roof_impact", -140.8576f, 6420.789f, 41.1391f, 0f, 0f, 267.3957f, 0x3F800000, 0, 0, 0); Axis - Invert Axis Flags Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json ------------------------------------------------------------------- C# Function.Call<int>(Hash.START_PARTICLE_FX_NON_LOOPED_AT_COORD, = you are calling this function. char *effectname = This is an in-game effect name, for e.g. "scr_fbi4_trucks_crash" is used to give the effects when truck crashes etc float x, y, z pos = this one is Simple, you just have to declare, where do you want this effect to take place at, so declare the ordinates float xrot, yrot, zrot = Again simple? just mention the value in case if you want the effect to rotate. float scale = is declare the scale of the effect, this may vary as per the effects for e.g 1.0f bool xaxis, yaxis, zaxis = To bool the axis values. example: Function.Call<int>(Hash.START_PARTICLE_FX_NON_LOOPED_AT_COORD, "scr_fbi4_trucks_crash", GTA.Game.Player.Character.Position.X, GTA.Game.Player.Character.Position.Y, GTA.Game.Player.Character.Position.Z + 4f, 0, 0, 0, 5.5f, 0, 0, 0);
START_NETWORKED_PARTICLE_FX_NON_LOOPED_AT_COORD
BOOL GRAPHICS::START_NETWORKED_PARTICLE_FX_NON_LOOPED_AT_COORD(const char* effectName, float xPos, float yPos, float zPos, float xRot, float yRot, float zRot, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis, BOOL p11) // 0xF56B8137DF10135D 0x633F8C48 b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_PARTICLE_FX_NON_LOOPED_ON_PED_BONE
BOOL GRAPHICS::START_PARTICLE_FX_NON_LOOPED_ON_PED_BONE(const char* effectName, Ped ped, float offsetX, float offsetY, float offsetZ, float rotX, float rotY, float rotZ, int boneIndex, float scale, BOOL axisX, BOOL axisY, BOOL axisZ) // 0x0E7E72961BA18619 0x53DAEF4E b323
GRAPHICS::START_PARTICLE_FX_NON_LOOPED_ON_PED_BONE("scr_sh_bong_smoke", PLAYER::PLAYER_PED_ID(), -0.025f, 0.13f, 0f, 0f, 0f, 0f, 31086, 0x3F800000, 0, 0, 0); Axis - Invert Axis Flags Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_NETWORKED_PARTICLE_FX_NON_LOOPED_ON_PED_BONE
BOOL GRAPHICS::START_NETWORKED_PARTICLE_FX_NON_LOOPED_ON_PED_BONE(const char* effectName, Ped ped, float offsetX, float offsetY, float offsetZ, float rotX, float rotY, float rotZ, int boneIndex, float scale, BOOL axisX, BOOL axisY, BOOL axisZ) // 0xA41B6A43642AC2CF 0x161780C1 b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_PARTICLE_FX_NON_LOOPED_ON_ENTITY
BOOL GRAPHICS::START_PARTICLE_FX_NON_LOOPED_ON_ENTITY(const char* effectName, Entity entity, float offsetX, float offsetY, float offsetZ, float rotX, float rotY, float rotZ, float scale, BOOL axisX, BOOL axisY, BOOL axisZ) // 0x0D53A3B8DA0809D2 0x9604DAD4 b323
Starts a particle effect on an entity for example your player. Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json Example: C#: Function.Call(Hash.REQUEST_NAMED_PTFX_ASSET, "scr_rcbarry2"); Function.Call(Hash._SET_PTFX_ASSET_NEXT_CALL, "scr_rcbarry2"); Function.Call(Hash.START_PARTICLE_FX_NON_LOOPED_ON_ENTITY, "scr_clown_appears", Game.Player.Character, 0.0, 0.0, -0.5, 0.0, 0.0, 0.0, 1.0, false, false, false); Internally this calls the same function as GRAPHICS::START_PARTICLE_FX_NON_LOOPED_ON_PED_BONE however it uses -1 for the specified bone index, so it should be possible to start a non looped fx on an entity bone using that native -can confirm START_PARTICLE_FX_NON_LOOPED_ON_PED_BONE does NOT work on vehicle bones.
START_NETWORKED_PARTICLE_FX_NON_LOOPED_ON_ENTITY
BOOL GRAPHICS::START_NETWORKED_PARTICLE_FX_NON_LOOPED_ON_ENTITY(const char* effectName, Entity entity, float offsetX, float offsetY, float offsetZ, float rotX, float rotY, float rotZ, float scale, BOOL axisX, BOOL axisY, BOOL axisZ) // 0xC95EB1DB6E92113D 0x469A2B4A b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
_START_NETWORKED_PARTICLE_FX_NON_LOOPED_ON_ENTITY_BONE
BOOL GRAPHICS::_START_NETWORKED_PARTICLE_FX_NON_LOOPED_ON_ENTITY_BONE(const char* effectName, Entity entity, float offsetX, float offsetY, float offsetZ, float rotX, float rotY, float rotZ, int boneIndex, float scale, BOOL axisX, BOOL axisY, BOOL axisZ) // 0x02B1F2A72E0F5325 b2189
SET_PARTICLE_FX_NON_LOOPED_COLOUR
void GRAPHICS::SET_PARTICLE_FX_NON_LOOPED_COLOUR(float r, float g, float b) // 0x26143A59EF48B262 0x7B689E20 b323
only works on some fx's, not networked
SET_PARTICLE_FX_NON_LOOPED_ALPHA
void GRAPHICS::SET_PARTICLE_FX_NON_LOOPED_ALPHA(float alpha) // 0x77168D722C58B2FC 0x497EAFF2 b323
Usage example for C#: Function.Call(Hash.SET_PARTICLE_FX_NON_LOOPED_ALPHA, new InputArgument[] { 0.1f }); Note: the argument alpha ranges from 0.0f-1.0f !
_0x8CDE909A0370BB3A
void GRAPHICS::_0x8CDE909A0370BB3A(BOOL toggle) // 0x8CDE909A0370BB3A b323
Used only once in the scripts (taxi_clowncar) SET_PARTICLE_FX_*
START_PARTICLE_FX_LOOPED_AT_COORD
int GRAPHICS::START_PARTICLE_FX_LOOPED_AT_COORD(const char* effectName, float x, float y, float z, float xRot, float yRot, float zRot, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis, BOOL p11) // 0xE184F4F0DC5910E7 0xD348E3E6 b323
GRAPHICS::START_PARTICLE_FX_LOOPED_AT_COORD("scr_fbi_falling_debris", 93.7743f, -749.4572f, 70.86904f, 0f, 0f, 0f, 0x3F800000, 0, 0, 0, 0) p11 seems to be always 0 Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_PARTICLE_FX_LOOPED_ON_PED_BONE
int GRAPHICS::START_PARTICLE_FX_LOOPED_ON_PED_BONE(const char* effectName, Ped ped, float xOffset, float yOffset, float zOffset, float xRot, float yRot, float zRot, int boneIndex, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis) // 0xF28DA9F38CD1787C 0xF8FC196F b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_PARTICLE_FX_LOOPED_ON_ENTITY
int GRAPHICS::START_PARTICLE_FX_LOOPED_ON_ENTITY(const char* effectName, Entity entity, float xOffset, float yOffset, float zOffset, float xRot, float yRot, float zRot, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis) // 0x1AE42C1660FD6517 0x0D06FF62 b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_PARTICLE_FX_LOOPED_ON_ENTITY_BONE
int GRAPHICS::START_PARTICLE_FX_LOOPED_ON_ENTITY_BONE(const char* effectName, Entity entity, float xOffset, float yOffset, float zOffset, float xRot, float yRot, float zRot, int boneIndex, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis) // 0xC6EB449E33977F0B 0x23BF0F9B b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_NETWORKED_PARTICLE_FX_LOOPED_ON_ENTITY
int GRAPHICS::START_NETWORKED_PARTICLE_FX_LOOPED_ON_ENTITY(const char* effectName, Entity entity, float xOffset, float yOffset, float zOffset, float xRot, float yRot, float zRot, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis, Any p12, Any p13, Any p14, Any p15) // 0x6F60E89A7B64EE1D 0x110752B2 b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
START_NETWORKED_PARTICLE_FX_LOOPED_ON_ENTITY_BONE
int GRAPHICS::START_NETWORKED_PARTICLE_FX_LOOPED_ON_ENTITY_BONE(const char* effectName, Entity entity, float xOffset, float yOffset, float zOffset, float xRot, float yRot, float zRot, int boneIndex, float scale, BOOL xAxis, BOOL yAxis, BOOL zAxis, Any p13, Any p14, Any p15, Any p16) // 0xDDE23F30CC5A0F03 0xF478EFCF b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
STOP_PARTICLE_FX_LOOPED
void GRAPHICS::STOP_PARTICLE_FX_LOOPED(int ptfxHandle, BOOL p1) // 0x8F75998877616996 0xD245455B b323
p1 is always 0 in the native scripts
REMOVE_PARTICLE_FX
void GRAPHICS::REMOVE_PARTICLE_FX(int ptfxHandle, BOOL p1) // 0xC401503DFE8D53CF 0x6BA48C7E b323
REMOVE_PARTICLE_FX_FROM_ENTITY
void GRAPHICS::REMOVE_PARTICLE_FX_FROM_ENTITY(Entity entity) // 0xB8FEAEEBCC127425 0xCEDE52E9 b323
REMOVE_PARTICLE_FX_IN_RANGE
void GRAPHICS::REMOVE_PARTICLE_FX_IN_RANGE(float X, float Y, float Z, float radius) // 0xDD19FA1C6D657305 0x7EB8F275 b323
_0xBA0127DA25FD54C9
void GRAPHICS::_0xBA0127DA25FD54C9(Any p0, Any p1) // 0xBA0127DA25FD54C9 b372
DOES_PARTICLE_FX_LOOPED_EXIST
BOOL GRAPHICS::DOES_PARTICLE_FX_LOOPED_EXIST(int ptfxHandle) // 0x74AFEF0D2E1E409B 0xCBF91D2A b323
SET_PARTICLE_FX_LOOPED_OFFSETS
void GRAPHICS::SET_PARTICLE_FX_LOOPED_OFFSETS(int ptfxHandle, float x, float y, float z, float rotX, float rotY, float rotZ) // 0xF7DDEBEC43483C43 0x641F7790 b323
SET_PARTICLE_FX_LOOPED_EVOLUTION
void GRAPHICS::SET_PARTICLE_FX_LOOPED_EVOLUTION(int ptfxHandle, const char* propertyName, float amount, BOOL noNetwork) // 0x5F0C4B5B1C393BE2 0x1CBC1373 b323
SET_PARTICLE_FX_LOOPED_COLOUR
void GRAPHICS::SET_PARTICLE_FX_LOOPED_COLOUR(int ptfxHandle, float r, float g, float b, BOOL p4) // 0x7F8F65877F88783B 0x5219D530 b323
only works on some fx's p4 = 0
SET_PARTICLE_FX_LOOPED_ALPHA
void GRAPHICS::SET_PARTICLE_FX_LOOPED_ALPHA(int ptfxHandle, float alpha) // 0x726845132380142E 0x5ED49BE1 b323
SET_PARTICLE_FX_LOOPED_SCALE
void GRAPHICS::SET_PARTICLE_FX_LOOPED_SCALE(int ptfxHandle, float scale) // 0xB44250AAA456492D 0x099B8B49 b323
SET_PARTICLE_FX_LOOPED_FAR_CLIP_DIST
void GRAPHICS::SET_PARTICLE_FX_LOOPED_FAR_CLIP_DIST(int ptfxHandle, float range) // 0xDCB194B85EF7B541 0x233DE879 b323
SET_PARTICLE_FX_CAM_INSIDE_VEHICLE
void GRAPHICS::SET_PARTICLE_FX_CAM_INSIDE_VEHICLE(BOOL p0) // 0xEEC4047028426510 0x19EC0001 b323
SET_PARTICLE_FX_CAM_INSIDE_NONPLAYER_VEHICLE
void GRAPHICS::SET_PARTICLE_FX_CAM_INSIDE_NONPLAYER_VEHICLE(Vehicle vehicle, BOOL p1) // 0xACEE6F360FC1F6B6 0x6B125A02 b323
SET_PARTICLE_FX_SHOOTOUT_BOAT
void GRAPHICS::SET_PARTICLE_FX_SHOOTOUT_BOAT(Any p0) // 0x96EF97DAEB89BEF5 0xD938DEE0 b323
_0x2A251AA48B2B46DB
void GRAPHICS::_0x2A251AA48B2B46DB() // 0x2A251AA48B2B46DB b323
_0x908311265D42A820
void GRAPHICS::_0x908311265D42A820(Any p0) // 0x908311265D42A820 b323
_0xCFD16F0DB5A3535C
void GRAPHICS::_0xCFD16F0DB5A3535C(BOOL toggle) // 0xCFD16F0DB5A3535C b2060
_0x5F6DF3D92271E8A1
void GRAPHICS::_0x5F6DF3D92271E8A1(BOOL toggle) // 0x5F6DF3D92271E8A1 0x18136DE0 b323
DISABLE_*
_0x2B40A97646381508
void GRAPHICS::_0x2B40A97646381508(Any p0) // 0x2B40A97646381508 b1011
ENABLE_CLOWN_BLOOD_VFX
void GRAPHICS::ENABLE_CLOWN_BLOOD_VFX(BOOL toggle) // 0xD821490579791273 0xC61C75E9 b323
Creates cartoon effect when Michel smokes the weed
ENABLE_ALIEN_BLOOD_VFX
void GRAPHICS::ENABLE_ALIEN_BLOOD_VFX(BOOL toggle) // 0x9DCE1F0F78260875 0xCE8B8748 b323
Creates a motion-blur sort of effect, this native does not seem to work, however by using the `START_SCREEN_EFFECT` native with `DrugsMichaelAliensFight` as the effect parameter, you should be able to get the effect.
SET_PARTICLE_FX_BULLET_IMPACT_SCALE
void GRAPHICS::SET_PARTICLE_FX_BULLET_IMPACT_SCALE(float scale) // 0x27E32866E9A5C416 0xC1AD5DDF b323
_0xBB90E12CAC1DAB25
void GRAPHICS::_0xBB90E12CAC1DAB25(float p0) // 0xBB90E12CAC1DAB25 0x3968E915 b323
_0xCA4AE345A153D573
void GRAPHICS::_0xCA4AE345A153D573(BOOL p0) // 0xCA4AE345A153D573 0x64BA4648 b323
_0x54E22EA2C1956A8D
void GRAPHICS::_0x54E22EA2C1956A8D(float p0) // 0x54E22EA2C1956A8D 0x8BE3D47F b323
_0x949F397A288B28B3
void GRAPHICS::_0x949F397A288B28B3(float p0) // 0x949F397A288B28B3 0xE3880F5A b323
_0xBA3D194057C79A7B
void GRAPHICS::_0xBA3D194057C79A7B(const char* p0) // 0xBA3D194057C79A7B b877
SET_PARTICLE_FX_* Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
_0x5DBF05DB5926D089
void GRAPHICS::_0x5DBF05DB5926D089(Any p0) // 0x5DBF05DB5926D089 b1011
_0x9B079E5221D984D3
void GRAPHICS::_0x9B079E5221D984D3(BOOL p0) // 0x9B079E5221D984D3 0x447A9EB9 b323
FORCE_*
USE_PARTICLE_FX_ASSET
void GRAPHICS::USE_PARTICLE_FX_ASSET(const char* name) // 0x6C38AF3693A69A91 0x9C720B61 b323
From the b678d decompiled scripts: GRAPHICS::_SET_PTFX_ASSET_NEXT_CALL("FM_Mission_Controler"); GRAPHICS::_SET_PTFX_ASSET_NEXT_CALL("scr_apartment_mp"); GRAPHICS::_SET_PTFX_ASSET_NEXT_CALL("scr_indep_fireworks"); GRAPHICS::_SET_PTFX_ASSET_NEXT_CALL("scr_mp_cig_plane"); GRAPHICS::_SET_PTFX_ASSET_NEXT_CALL("scr_mp_creator"); GRAPHICS::_SET_PTFX_ASSET_NEXT_CALL("scr_ornate_heist"); GRAPHICS::_SET_PTFX_ASSET_NEXT_CALL("scr_prison_break_heist_station"); Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
SET_PARTICLE_FX_OVERRIDE
void GRAPHICS::SET_PARTICLE_FX_OVERRIDE(const char* oldAsset, const char* newAsset) // 0xEA1E2D93F6F75ED9 0xC92719A7 b323
Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
RESET_PARTICLE_FX_OVERRIDE
void GRAPHICS::RESET_PARTICLE_FX_OVERRIDE(const char* name) // 0x89C8553DD3274AAE 0x9E8D8B72 b323
Resets the effect of SET_PARTICLE_FX_OVERRIDE Full list of particle effect dictionaries and effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/particleEffectsCompact.json
_0xA46B73FAA3460AE1
void GRAPHICS::_0xA46B73FAA3460AE1(BOOL p0) // 0xA46B73FAA3460AE1 b323
_0xF78B803082D4386F
void GRAPHICS::_0xF78B803082D4386F(float p0) // 0xF78B803082D4386F b323
WASH_DECALS_IN_RANGE
void GRAPHICS::WASH_DECALS_IN_RANGE(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x9C30613D50A6ADEF 0xDEECBC57 b323
WASH_DECALS_FROM_VEHICLE
void GRAPHICS::WASH_DECALS_FROM_VEHICLE(Vehicle vehicle, float p1) // 0x5B712761429DBC14 0x2929F11A b323
FADE_DECALS_IN_RANGE
void GRAPHICS::FADE_DECALS_IN_RANGE(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xD77EDADB0420E6E0 0xF81E884A b323
Fades nearby decals within the range specified
REMOVE_DECALS_IN_RANGE
void GRAPHICS::REMOVE_DECALS_IN_RANGE(float x, float y, float z, float range) // 0x5D6B2D4830A67C62 0x06A619A0 b323
Removes all decals in range from a position, it includes the bullet holes, blood pools, petrol...
REMOVE_DECALS_FROM_OBJECT
void GRAPHICS::REMOVE_DECALS_FROM_OBJECT(Object obj) // 0xCCF71CBDDF5B6CB9 0x8B67DCA7 b323
REMOVE_DECALS_FROM_OBJECT_FACING
void GRAPHICS::REMOVE_DECALS_FROM_OBJECT_FACING(Object obj, float x, float y, float z) // 0xA6F6F70FDC6D144C 0xF4999A55 b323
REMOVE_DECALS_FROM_VEHICLE
void GRAPHICS::REMOVE_DECALS_FROM_VEHICLE(Vehicle vehicle) // 0xE91F1B65F2B48D57 0x831D06CA b323
ADD_DECAL
int GRAPHICS::ADD_DECAL(int decalType, float posX, float posY, float posZ, float p4, float p5, float p6, float p7, float p8, float p9, float width, float height, float rCoef, float gCoef, float bCoef, float opacity, float timeout, BOOL p17, BOOL p18, BOOL p19) // 0xB302244A1839BDAD 0xEAD0C412 b323
decal types: public enum DecalTypes { splatters_blood = 1010, splatters_blood_dir = 1015, splatters_blood_mist = 1017, splatters_mud = 1020, splatters_paint = 1030, splatters_water = 1040, splatters_water_hydrant = 1050, splatters_blood2 = 1110, weapImpact_metal = 4010, weapImpact_concrete = 4020, weapImpact_mattress = 4030, weapImpact_mud = 4032, weapImpact_wood = 4050, weapImpact_sand = 4053, weapImpact_cardboard = 4040, weapImpact_melee_glass = 4100, weapImpact_glass_blood = 4102, weapImpact_glass_blood2 = 4104, weapImpact_shotgun_paper = 4200, weapImpact_shotgun_mattress, weapImpact_shotgun_metal, weapImpact_shotgun_wood, weapImpact_shotgun_dirt, weapImpact_shotgun_tvscreen, weapImpact_shotgun_tvscreen2, weapImpact_shotgun_tvscreen3, weapImpact_melee_concrete = 4310, weapImpact_melee_wood = 4312, weapImpact_melee_metal = 4314, burn1 = 4421, burn2, burn3, burn4, burn5, bang_concrete_bang = 5000, bang_concrete_bang2, bang_bullet_bang, bang_bullet_bang2 = 5004, bang_glass = 5031, bang_glass2, solidPool_water = 9000, solidPool_blood, solidPool_oil, solidPool_petrol, solidPool_mud, porousPool_water, porousPool_blood, porousPool_oil, porousPool_petrol, porousPool_mud, porousPool_water_ped_drip, liquidTrail_water = 9050 }
ADD_PETROL_DECAL
int GRAPHICS::ADD_PETROL_DECAL(float x, float y, float z, float groundLvl, float width, float transparency) // 0x4F5212C7AD880DF8 0x1259DF42 b323
START_PETROL_TRAIL_DECALS
void GRAPHICS::START_PETROL_TRAIL_DECALS(float p0) // 0x99AC7F0D8B9C893D 0xE3938B0B b323
ADD_PETROL_TRAIL_DECAL_INFO
void GRAPHICS::ADD_PETROL_TRAIL_DECAL_INFO(float x, float y, float z, float p3) // 0x967278682CB6967A 0xBAEC6ADD b323
END_PETROL_TRAIL_DECALS
void GRAPHICS::END_PETROL_TRAIL_DECALS() // 0x0A123435A26C36CD 0xCCCA6855 b323
REMOVE_DECAL
void GRAPHICS::REMOVE_DECAL(int decal) // 0xED3F346429CCD659 0xA4363188 b323
IS_DECAL_ALIVE
BOOL GRAPHICS::IS_DECAL_ALIVE(int decal) // 0xC694D74949CAFD0C 0xCDD4A61A b323
GET_DECAL_WASH_LEVEL
float GRAPHICS::GET_DECAL_WASH_LEVEL(int decal) // 0x323F647679A09103 0x054448EF b323
_0xD9454B5752C857DC
void GRAPHICS::_0xD9454B5752C857DC() // 0xD9454B5752C857DC 0xEAB6417C b323
_0x27CFB1B1E078CB2D
void GRAPHICS::_0x27CFB1B1E078CB2D() // 0x27CFB1B1E078CB2D 0xC2703B88 b323
SET_DISABLE_DECAL_RENDERING_THIS_FRAME
void GRAPHICS::SET_DISABLE_DECAL_RENDERING_THIS_FRAME() // 0x4B5CFC83122DF602 0xA706E84D b323
GET_IS_PETROL_DECAL_IN_RANGE
BOOL GRAPHICS::GET_IS_PETROL_DECAL_IN_RANGE(float xCoord, float yCoord, float zCoord, float radius) // 0x2F09F7976C512404 0x242C6A04 b323
PATCH_DECAL_DIFFUSE_MAP
void GRAPHICS::PATCH_DECAL_DIFFUSE_MAP(int decalType, const char* textureDict, const char* textureName) // 0x8A35C742130C6080 0x335695CF b323
Old name: _OVERRIDE_DECAL_TEXTURE
UNPATCH_DECAL_DIFFUSE_MAP
void GRAPHICS::UNPATCH_DECAL_DIFFUSE_MAP(int decalType) // 0xB7ED70C49521A61D 0x7B786555 b323
Old name: _UNDO_DECAL_TEXTURE_OVERRIDE
MOVE_VEHICLE_DECALS
void GRAPHICS::MOVE_VEHICLE_DECALS(Any p0, Any p1) // 0x84C8D7C2D30D3280 0xCE9E6CF2 b323
ADD_VEHICLE_CREW_EMBLEM
BOOL GRAPHICS::ADD_VEHICLE_CREW_EMBLEM(Vehicle vehicle, Ped ped, int boneIndex, float x1, float x2, float x3, float y1, float y2, float y3, float z1, float z2, float z3, float scale, Any p13, int alpha) // 0x428BDCB9DA58DA53 0x12077738 b323
boneIndex is always chassis_dummy in the scripts. The x/y/z params are location relative to the chassis bone.
_0x82ACC484FFA3B05F
Any GRAPHICS::_0x82ACC484FFA3B05F(Any p0) // 0x82ACC484FFA3B05F b372
REMOVE_VEHICLE_CREW_EMBLEM
void GRAPHICS::REMOVE_VEHICLE_CREW_EMBLEM(Vehicle vehicle, int p1) // 0xD2300034310557E4 0x667046A8 b323
GET_VEHICLE_CREW_EMBLEM_REQUEST_STATE
int GRAPHICS::GET_VEHICLE_CREW_EMBLEM_REQUEST_STATE(Vehicle vehicle, int p1) // 0xFE26117A5841B2FF 0x4F4D76E8 b323
DOES_VEHICLE_HAVE_CREW_EMBLEM
BOOL GRAPHICS::DOES_VEHICLE_HAVE_CREW_EMBLEM(Vehicle vehicle, int p1) // 0x060D935D3981A275 0x6D58F73B b323
_0x0E4299C549F0D1F1
void GRAPHICS::_0x0E4299C549F0D1F1(BOOL toggle) // 0x0E4299C549F0D1F1 0x9BABCBA4 b323
_0x02369D5C8A51FDCF
void GRAPHICS::_0x02369D5C8A51FDCF(BOOL toggle) // 0x02369D5C8A51FDCF 0xFDF6D8DA b323
DISABLE_S*
_0x46D1A61A21F566FC
void GRAPHICS::_0x46D1A61A21F566FC(float p0) // 0x46D1A61A21F566FC 0x2056A015 b323
OVERRIDE_INTERIOR_SMOKE_NAME
void GRAPHICS::OVERRIDE_INTERIOR_SMOKE_NAME(const char* name) // 0x2A2A52824DB96700 0x0F486429 b323
OVERRIDE_INTERIOR_SMOKE_LEVEL
void GRAPHICS::OVERRIDE_INTERIOR_SMOKE_LEVEL(float level) // 0x1600FD8CF72EBC12 0xD87CC710 b323
OVERRIDE_INTERIOR_SMOKE_END
void GRAPHICS::OVERRIDE_INTERIOR_SMOKE_END() // 0xEFB55E7C25D3B3BE 0xE29EE145 b323
_REGISTER_NOIR_SCREEN_EFFECT_THIS_FRAME
void GRAPHICS::_REGISTER_NOIR_SCREEN_EFFECT_THIS_FRAME() // 0xA44FF770DFBC5DAE b323
Used with 'NG_filmnoir_BW{01,02}' timecycles and the "NOIR_FILTER_SOUNDS" audioref.
DISABLE_VEHICLE_DISTANTLIGHTS
void GRAPHICS::DISABLE_VEHICLE_DISTANTLIGHTS(BOOL toggle) // 0xC9F98AC1884E73A2 0x7CFAE36F b323
_0x03300B57FCAC6DDB
void GRAPHICS::_0x03300B57FCAC6DDB(BOOL p0) // 0x03300B57FCAC6DDB 0x60F72371 b323
_0x98EDF76A7271E4F2
void GRAPHICS::_0x98EDF76A7271E4F2() // 0x98EDF76A7271E4F2 b323
REQUEST_*
_SET_FORCE_PED_FOOTSTEPS_TRACKS
void GRAPHICS::_SET_FORCE_PED_FOOTSTEPS_TRACKS(BOOL toggle) // 0xAEEDAD1420C65CC0 0xC53576CA b323
Forces footstep tracks on all surfaces. USE_/USING_*
_SET_FORCE_VEHICLE_TRAILS
void GRAPHICS::_SET_FORCE_VEHICLE_TRAILS(BOOL toggle) // 0x4CC7F0FEA5283FE0 0x7158B1EA b323
Forces vehicle trails on all surfaces. USE_/USING_*
_DISABLE_SCRIPT_AMBIENT_EFFECTS
void GRAPHICS::_DISABLE_SCRIPT_AMBIENT_EFFECTS(Any p0) // 0xEFD97FF47B745B8D b791
PRESET_INTERIOR_AMBIENT_CACHE
void GRAPHICS::PRESET_INTERIOR_AMBIENT_CACHE(const char* timecycleModifierName) // 0xD7021272EB0A451E 0x137E3E24 b323
Only one match in the scripts: GRAPHICS::PRESET_INTERIOR_AMBIENT_CACHE("int_carrier_hanger");
SET_TIMECYCLE_MODIFIER
void GRAPHICS::SET_TIMECYCLE_MODIFIER(const char* modifierName) // 0x2C933ABF17A1DF41 0xA81F3638 b323
Loads the specified timecycle modifier. Modifiers are defined separately in another file (e.g. "timecycle_mods_1.xml") Parameters: modifierName - The modifier to load (e.g. "V_FIB_IT3", "scanline_cam", etc.) Full list of timecycle modifiers by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/timecycleModifiers.json
SET_TIMECYCLE_MODIFIER_STRENGTH
void GRAPHICS::SET_TIMECYCLE_MODIFIER_STRENGTH(float strength) // 0x82E7FFCD5B2326B3 0x458F4F45 b323
SET_TRANSITION_TIMECYCLE_MODIFIER
void GRAPHICS::SET_TRANSITION_TIMECYCLE_MODIFIER(const char* modifierName, float transition) // 0x3BCF567485E1971C 0xBB2BA72A b323
Full list of timecycle modifiers by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/timecycleModifiers.json
_0x1CBA05AE7BD7EE05
void GRAPHICS::_0x1CBA05AE7BD7EE05(float p0) // 0x1CBA05AE7BD7EE05 0x56345F6B b323
SET_TRA*
CLEAR_TIMECYCLE_MODIFIER
void GRAPHICS::CLEAR_TIMECYCLE_MODIFIER() // 0x0F07E7745A236711 0x8D8DF8EE b323
GET_TIMECYCLE_MODIFIER_INDEX
int GRAPHICS::GET_TIMECYCLE_MODIFIER_INDEX() // 0xFDF3D97C674AFB66 0x594FEEC4 b323
Only use for this in the PC scripts is: if (GRAPHICS::GET_TIMECYCLE_MODIFIER_INDEX() != -1) For a full list, see here: pastebin.com/cnk7FTF2
GET_TIMECYCLE_TRANSITION_MODIFIER_INDEX
int GRAPHICS::GET_TIMECYCLE_TRANSITION_MODIFIER_INDEX() // 0x459FD2C8D0AB78BC 0x03C44E4B b323
_0x98D18905BF723B99
Any GRAPHICS::_0x98D18905BF723B99() // 0x98D18905BF723B99 b1493
PUSH_TIMECYCLE_MODIFIER
void GRAPHICS::PUSH_TIMECYCLE_MODIFIER() // 0x58F735290861E6B4 0x7E082045 b323
POP_TIMECYCLE_MODIFIER
void GRAPHICS::POP_TIMECYCLE_MODIFIER() // 0x3C8938D7D872211E 0x79D7D235 b323
SET_CURRENT_PLAYER_TCMODIFIER
void GRAPHICS::SET_CURRENT_PLAYER_TCMODIFIER(const char* modifierName) // 0xBBF327DED94E4DEB 0x85BA15A4 b323
SET_PLAYER_TCMODIFIER_TRANSITION
void GRAPHICS::SET_PLAYER_TCMODIFIER_TRANSITION(float value) // 0xBDEB86F4D5809204 0x9559BB38 b323
SET_NEXT_PLAYER_TCMODIFIER
void GRAPHICS::SET_NEXT_PLAYER_TCMODIFIER(const char* modifierName) // 0xBF59707B3E5ED531 0x554BA16E b323
ADD_TCMODIFIER_OVERRIDE
void GRAPHICS::ADD_TCMODIFIER_OVERRIDE(const char* modifierName1, const char* modifierName2) // 0x1A8E2C8B9CF4549C 0xE8F538B5 b323
REMOVE_TCMODIFIER_OVERRIDE
void GRAPHICS::REMOVE_TCMODIFIER_OVERRIDE(const char* p0) // 0x15E33297C3E8DC60 0x805BAB08 b323
_SET_EXTRA_TIMECYCLE_MODIFIER
void GRAPHICS::_SET_EXTRA_TIMECYCLE_MODIFIER(const char* modifierName) // 0x5096FD9CCB49056D 0x908A335E b323
Full list of timecycle modifiers by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/timecycleModifiers.json
_CLEAR_EXTRA_TIMECYCLE_MODIFIER
void GRAPHICS::_CLEAR_EXTRA_TIMECYCLE_MODIFIER() // 0x92CCC17A7A2285DA 0x6776720A b323
Clears the secondary timecycle modifier usually set with _SET_EXTRA_TIMECYCLE_MODIFIER
_GET_EXTRA_TIMECYCLE_MODIFIER_INDEX
int GRAPHICS::_GET_EXTRA_TIMECYCLE_MODIFIER_INDEX() // 0xBB0527EC6341496D b323
See _0xFDF3D97C674AFB66 for use, works the same just for the secondary timecycle modifier. Returns an integer representing the Timecycle modifier
_SET_EXTRA_TIMECYCLE_MODIFIER_STRENGTH
void GRAPHICS::_SET_EXTRA_TIMECYCLE_MODIFIER_STRENGTH(float strength) // 0x2C328AF17210F009 b323
ENABLE_* The same as SET_TIMECYCLE_MODIFIER_STRENGTH but for the secondary timecycle modifier.
_RESET_EXTRA_TIMECYCLE_MODIFIER_STRENGTH
void GRAPHICS::_RESET_EXTRA_TIMECYCLE_MODIFIER_STRENGTH() // 0x2BF72AD5B41AA739 b323
Resets the extra timecycle modifier strength normally set with 0x2C328AF17210F009
REQUEST_SCALEFORM_MOVIE
int GRAPHICS::REQUEST_SCALEFORM_MOVIE(const char* scaleformName) // 0x11FE353CF9733E6F 0xC67E3DCB b323
_REQUEST_SCALEFORM_MOVIE_2
int GRAPHICS::_REQUEST_SCALEFORM_MOVIE_2(const char* scaleformName) // 0x65E7E78842E74CDB b372
Another REQUEST_SCALEFORM_MOVIE equivalent.
REQUEST_SCALEFORM_MOVIE_INSTANCE
int GRAPHICS::REQUEST_SCALEFORM_MOVIE_INSTANCE(const char* scaleformName) // 0xC514489CFB8AF806 0x7CC8057D b323
_REQUEST_SCALEFORM_MOVIE_INTERACTIVE
int GRAPHICS::_REQUEST_SCALEFORM_MOVIE_INTERACTIVE(const char* scaleformName) // 0xBD06C611BB9048C2 b323
Similar to REQUEST_SCALEFORM_MOVIE, but seems to be some kind of "interactive" scaleform movie? These seem to be the only scaleforms ever requested by this native: "breaking_news" "desktop_pc" "ECG_MONITOR" "Hacking_PC" "TEETH_PULLING" Note: Unless this hash is out-of-order, this native is next-gen only.
HAS_SCALEFORM_MOVIE_LOADED
BOOL GRAPHICS::HAS_SCALEFORM_MOVIE_LOADED(int scaleformHandle) // 0x85F01B8D5B90570E 0xDDFB6448 b323
_0x2FCB133CA50A49EB
BOOL GRAPHICS::_0x2FCB133CA50A49EB(int val) // 0x2FCB133CA50A49EB b1290
val is 1-20 (0 will return false) SET_???
_0x86255B1FC929E33E
BOOL GRAPHICS::_0x86255B1FC929E33E(int val) // 0x86255B1FC929E33E b1290
val is 1-20. Return is related to INSTRUCTIONAL_BUTTONS, COLOUR_SWITCHER_02, etc?
HAS_SCALEFORM_MOVIE_FILENAME_LOADED
BOOL GRAPHICS::HAS_SCALEFORM_MOVIE_FILENAME_LOADED(const char* scaleformName) // 0x0C1C5D756FB5F337 0x494A9E50 b323
Only values used in the scripts are: "heist_mp" "heistmap_mp" "instructional_buttons" "heist_pre"
HAS_SCALEFORM_CONTAINER_MOVIE_LOADED_INTO_PARENT
BOOL GRAPHICS::HAS_SCALEFORM_CONTAINER_MOVIE_LOADED_INTO_PARENT(int scaleformHandle) // 0x8217150E1217EBFD 0x1DFE8D8A b323
SET_SCALEFORM_MOVIE_AS_NO_LONGER_NEEDED
void GRAPHICS::SET_SCALEFORM_MOVIE_AS_NO_LONGER_NEEDED(int* scaleformHandle) // 0x1D132D614DD86811 0x5FED3BA1 b323
SET_SCALEFORM_MOVIE_TO_USE_SYSTEM_TIME
void GRAPHICS::SET_SCALEFORM_MOVIE_TO_USE_SYSTEM_TIME(int scaleform, BOOL toggle) // 0x6D8EB211944DCE08 0x18C9DE8D b323
_0x32F34FF7F617643B
void GRAPHICS::_0x32F34FF7F617643B(Any p0, Any p1) // 0x32F34FF7F617643B b573
_SET_SCALEFORM_FIT_RENDERTARGET
void GRAPHICS::_SET_SCALEFORM_FIT_RENDERTARGET(int scaleformHandle, BOOL toggle) // 0xE6A9F00D4240B519 b877
This native is used in some casino scripts to fit the scaleform in the rendertarget.
DRAW_SCALEFORM_MOVIE
void GRAPHICS::DRAW_SCALEFORM_MOVIE(int scaleformHandle, float x, float y, float width, float height, int red, int green, int blue, int alpha, int unk) // 0x54972ADAF0294A93 0x48DA6A58 b323
DRAW_SCALEFORM_MOVIE_FULLSCREEN
void GRAPHICS::DRAW_SCALEFORM_MOVIE_FULLSCREEN(int scaleform, int red, int green, int blue, int alpha, int unk) // 0x0DF606929C105BE1 0x7B48E696 b323
unk is not used so no need
DRAW_SCALEFORM_MOVIE_FULLSCREEN_MASKED
void GRAPHICS::DRAW_SCALEFORM_MOVIE_FULLSCREEN_MASKED(int scaleform1, int scaleform2, int red, int green, int blue, int alpha) // 0xCF537FDE4FBD4CE5 0x9C59FC06 b323
DRAW_SCALEFORM_MOVIE_3D
void GRAPHICS::DRAW_SCALEFORM_MOVIE_3D(int scaleform, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, float p7, float p8, float p9, float scaleX, float scaleY, float scaleZ, Any p13) // 0x87D51D72255D4E78 0xC4F63A89 b323
DRAW_SCALEFORM_MOVIE_3D_SOLID
void GRAPHICS::DRAW_SCALEFORM_MOVIE_3D_SOLID(int scaleform, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, float p7, float p8, float p9, float scaleX, float scaleY, float scaleZ, Any p13) // 0x1CE592FDC749D6F5 0x899933C8 b323
CALL_SCALEFORM_MOVIE_METHOD
void GRAPHICS::CALL_SCALEFORM_MOVIE_METHOD(int scaleform, const char* method) // 0xFBD96D87AC96D533 0x7AB77B57 b323
Calls the Scaleform function.
CALL_SCALEFORM_MOVIE_METHOD_WITH_NUMBER
void GRAPHICS::CALL_SCALEFORM_MOVIE_METHOD_WITH_NUMBER(int scaleform, const char* methodName, float param1, float param2, float param3, float param4, float param5) // 0xD0837058AE2E4BEE 0x557EDA1D b323
Calls the Scaleform function and passes the parameters as floats. The number of parameters passed to the function varies, so the end of the parameter list is represented by -1.0.
CALL_SCALEFORM_MOVIE_METHOD_WITH_STRING
void GRAPHICS::CALL_SCALEFORM_MOVIE_METHOD_WITH_STRING(int scaleform, const char* methodName, const char* param1, const char* param2, const char* param3, const char* param4, const char* param5) // 0x51BC1ED3CC44E8F7 0x91A7FCEB b323
Calls the Scaleform function and passes the parameters as strings. The number of parameters passed to the function varies, so the end of the parameter list is represented by 0 (NULL).
CALL_SCALEFORM_MOVIE_METHOD_WITH_NUMBER_AND_STRING
void GRAPHICS::CALL_SCALEFORM_MOVIE_METHOD_WITH_NUMBER_AND_STRING(int scaleform, const char* methodName, float floatParam1, float floatParam2, float floatParam3, float floatParam4, float floatParam5, const char* stringParam1, const char* stringParam2, const char* stringParam3, const char* stringParam4, const char* stringParam5) // 0xEF662D8D57E290B1 0x6EAF56DE b323
Calls the Scaleform function and passes both float and string parameters (in their respective order). The number of parameters passed to the function varies, so the end of the float parameters is represented by -1.0, and the end of the string parameters is represented by 0 (NULL). NOTE: The order of parameters in the function prototype is important! All float parameters must come first, followed by the string parameters. Examples: // function MY_FUNCTION(floatParam1, floatParam2, stringParam) GRAPHICS::_CALL_SCALEFORM_MOVIE_FUNCTION_MIXED_PARAMS(scaleform, "MY_FUNCTION", 10.0, 20.0, -1.0, -1.0, -1.0, "String param", 0, 0, 0, 0); // function MY_FUNCTION_2(floatParam, stringParam1, stringParam2) GRAPHICS::_CALL_SCALEFORM_MOVIE_FUNCTION_MIXED_PARAMS(scaleform, "MY_FUNCTION_2", 10.0, -1.0, -1.0, -1.0, -1.0, "String param #1", "String param #2", 0, 0, 0);
BEGIN_SCALEFORM_SCRIPT_HUD_MOVIE_METHOD
BOOL GRAPHICS::BEGIN_SCALEFORM_SCRIPT_HUD_MOVIE_METHOD(int hudComponent, const char* methodName) // 0x98C494FD5BDFBFD5 0x5D66CE1E b323
Pushes a function from the Hud component Scaleform onto the stack. Same behavior as GRAPHICS::BEGIN_SCALEFORM_MOVIE_METHOD, just a hud component id instead of a Scaleform. Known components: 19 - MP_RANK_BAR 20 - HUD_DIRECTOR_MODE This native requires more research - all information can be found inside of 'hud.gfx'. Using a decompiler, the different components are located under "scripts\__Packages\com\rockstargames\gtav\hud\hudComponents" and "scripts\__Packages\com\rockstargames\gtav\Multiplayer".
BEGIN_SCALEFORM_MOVIE_METHOD
BOOL GRAPHICS::BEGIN_SCALEFORM_MOVIE_METHOD(int scaleform, const char* methodName) // 0xF6E48914C7A8694E 0x215ABBE8 b323
Push a function from the Scaleform onto the stack
BEGIN_SCALEFORM_MOVIE_METHOD_ON_FRONTEND
BOOL GRAPHICS::BEGIN_SCALEFORM_MOVIE_METHOD_ON_FRONTEND(const char* methodName) // 0xAB58C27C2E6123C6 0xF6015178 b323
Starts frontend (pause menu) scaleform movie methods. This can be used when you want to make custom frontend menus, and customize things like images or text in the menus etc. Use `BEGIN_SCALEFORM_MOVIE_METHOD_ON_FRONTEND_HEADER` for header scaleform functions.
BEGIN_SCALEFORM_MOVIE_METHOD_ON_FRONTEND_HEADER
BOOL GRAPHICS::BEGIN_SCALEFORM_MOVIE_METHOD_ON_FRONTEND_HEADER(const char* methodName) // 0xB9449845F73F5E9C 0x5E219B67 b323
Starts frontend (pause menu) scaleform movie methods for header options. Use `BEGIN_SCALEFORM_MOVIE_METHOD_ON_FRONTEND` to customize the content inside the frontend menus.
END_SCALEFORM_MOVIE_METHOD
void GRAPHICS::END_SCALEFORM_MOVIE_METHOD() // 0xC6796A8FFA375E53 0x02DBF2D7 b323
Pops and calls the Scaleform function on the stack
END_SCALEFORM_MOVIE_METHOD_RETURN_VALUE
Any GRAPHICS::END_SCALEFORM_MOVIE_METHOD_RETURN_VALUE() // 0xC50AA39A577AF886 0x2F38B526 b323
IS_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_READY
BOOL GRAPHICS::IS_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_READY(int methodReturn) // 0x768FF8961BA904D6 0x5CD7C3C0 b323
methodReturn: The return value of this native: END_SCALEFORM_MOVIE_METHOD_RETURN_VALUE Returns true if the return value of a scaleform function is ready to be collected (using GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_STRING or GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_INT).
GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_INT
int GRAPHICS::GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_INT(int methodReturn) // 0x2DE7EFA66B906036 0x2CFB0E6D b323
methodReturn: The return value of this native: END_SCALEFORM_MOVIE_METHOD_RETURN_VALUE Used to get a return value from a scaleform function. Returns an int in the same way GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_STRING returns a string.
_GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_BOOL
BOOL GRAPHICS::_GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_BOOL(int methodReturn) // 0xD80A80346A45D761 b757
methodReturn: The return value of this native: END_SCALEFORM_MOVIE_METHOD_RETURN_VALUE
GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_STRING
const char* GRAPHICS::GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_STRING(int methodReturn) // 0xE1E258829A885245 0x516862EB b323
methodReturn: The return value of this native: END_SCALEFORM_MOVIE_METHOD_RETURN_VALUE Used to get a return value from a scaleform function. Returns a string in the same way GET_SCALEFORM_MOVIE_METHOD_RETURN_VALUE_INT returns an int.
SCALEFORM_MOVIE_METHOD_ADD_PARAM_INT
void GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_INT(int value) // 0xC3D0841A0CC546A6 0x716777CB b323
Pushes an integer for the Scaleform function onto the stack.
SCALEFORM_MOVIE_METHOD_ADD_PARAM_FLOAT
void GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_FLOAT(float value) // 0xD69736AAE04DB51A 0x9A01FFDA b323
Pushes a float for the Scaleform function onto the stack.
SCALEFORM_MOVIE_METHOD_ADD_PARAM_BOOL
void GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_BOOL(BOOL value) // 0xC58424BA936EB458 0x0D4AE8CB b323
Pushes a boolean for the Scaleform function onto the stack.
BEGIN_TEXT_COMMAND_SCALEFORM_STRING
void GRAPHICS::BEGIN_TEXT_COMMAND_SCALEFORM_STRING(const char* componentType) // 0x80338406F3475E55 0x3AC9CB55 b323
Called prior to adding a text component to the UI. After doing so, GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING is called. Examples: GRAPHICS::BEGIN_TEXT_COMMAND_SCALEFORM_STRING("NUMBER"); HUD::ADD_TEXT_COMPONENT_INTEGER(MISC::ABSI(a_1)); GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING(); GRAPHICS::BEGIN_TEXT_COMMAND_SCALEFORM_STRING("STRING"); HUD::_ADD_TEXT_COMPONENT_STRING(a_2); GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING(); GRAPHICS::BEGIN_TEXT_COMMAND_SCALEFORM_STRING("STRTNM2"); HUD::_0x17299B63C7683A2B(v_3); HUD::_0x17299B63C7683A2B(v_4); GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING(); GRAPHICS::BEGIN_TEXT_COMMAND_SCALEFORM_STRING("STRTNM1"); HUD::_0x17299B63C7683A2B(v_3); GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING();
END_TEXT_COMMAND_SCALEFORM_STRING
void GRAPHICS::END_TEXT_COMMAND_SCALEFORM_STRING() // 0x362E2D3FE93A9959 0x386CE0B8 b323
_END_TEXT_COMMAND_SCALEFORM_STRING_2
void GRAPHICS::_END_TEXT_COMMAND_SCALEFORM_STRING_2() // 0xAE4E8157D9ECF087 0x2E80DB52 b323
Same as END_TEXT_COMMAND_SCALEFORM_STRING but does not perform HTML conversion for text tokens.
_SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING_2
void GRAPHICS::_SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING_2(const char* string) // 0x77FE3402004CD1B0 b573
Same as SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING Both SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING / _SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING_2 works, but _SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING_2 is usually used for "name" (organisation, players..).
SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING
void GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_TEXTURE_NAME_STRING(const char* string) // 0xBA7148484BD90365 0x4DAAD55B b323
SCALEFORM_MOVIE_METHOD_ADD_PARAM_PLAYER_NAME_STRING
void GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_PLAYER_NAME_STRING(const char* string) // 0xE83A3E3557A56640 0xCCBF0334 b323
_0x5E657EF1099EDD65
BOOL GRAPHICS::_0x5E657EF1099EDD65(Any p0) // 0x5E657EF1099EDD65 0x91A081A1 b323
DOES_*
SCALEFORM_MOVIE_METHOD_ADD_PARAM_LATEST_BRIEF_STRING
void GRAPHICS::SCALEFORM_MOVIE_METHOD_ADD_PARAM_LATEST_BRIEF_STRING(int value) // 0xEC52C631A1831C03 0x83A9811D b323
REQUEST_SCALEFORM_SCRIPT_HUD_MOVIE
void GRAPHICS::REQUEST_SCALEFORM_SCRIPT_HUD_MOVIE(int hudComponent) // 0x9304881D6F6537EA 0x7AF85862 b323
HAS_SCALEFORM_SCRIPT_HUD_MOVIE_LOADED
BOOL GRAPHICS::HAS_SCALEFORM_SCRIPT_HUD_MOVIE_LOADED(int hudComponent) // 0xDF6E5987D2B4D140 0x79B43255 b323
REMOVE_SCALEFORM_SCRIPT_HUD_MOVIE
void GRAPHICS::REMOVE_SCALEFORM_SCRIPT_HUD_MOVIE(int hudComponent) // 0xF44A5456AC3F4F97 0x03D87600 b323
_0xD1C7CB175E012964
BOOL GRAPHICS::_0xD1C7CB175E012964(int scaleformHandle) // 0xD1C7CB175E012964 0xE9183D3A b323
SET_TV_CHANNEL
void GRAPHICS::SET_TV_CHANNEL(int channel) // 0xBAABBB23EB6E484E 0x41A8A627 b323
GET_TV_CHANNEL
int GRAPHICS::GET_TV_CHANNEL() // 0xFC1E275A90D39995 0x6B96145A b323
SET_TV_VOLUME
void GRAPHICS::SET_TV_VOLUME(float volume) // 0x2982BF73F66E9DDC 0xF3504F4D b323
GET_TV_VOLUME
float GRAPHICS::GET_TV_VOLUME() // 0x2170813D3DD8661B 0x39555CF0 b323
DRAW_TV_CHANNEL
void GRAPHICS::DRAW_TV_CHANNEL(float xPos, float yPos, float xScale, float yScale, float rotation, int red, int green, int blue, int alpha) // 0xFDDC2B4ED3C69DF0 0x8129EF89 b323
All calls to this native are preceded by calls to GRAPHICS::_0x61BB1D9B3A95D802 and GRAPHICS::_0xC6372ECD45D73BCD, respectively. "act_cinema.ysc", line 1483: HUD::SET_HUD_COMPONENT_POSITION(15, 0.0, -0.0375); HUD::SET_TEXT_RENDER_ID(l_AE); GRAPHICS::_0x61BB1D9B3A95D802(4); GRAPHICS::_0xC6372ECD45D73BCD(1); if (GRAPHICS::_0x0AD973CA1E077B60(${movie_arthouse})) { GRAPHICS::DRAW_TV_CHANNEL(0.5, 0.5, 0.7375, 1.0, 0.0, 255, 255, 255, 255); } else { GRAPHICS::DRAW_TV_CHANNEL(0.5, 0.5, 1.0, 1.0, 0.0, 255, 255, 255, 255); } "am_mp_property_int.ysc", line 102545: if (ENTITY::DOES_ENTITY_EXIST(a_2._f3)) { if (HUD::IS_NAMED_RENDERTARGET_LINKED(ENTITY::GET_ENTITY_MODEL(a_2._f3))) { HUD::SET_TEXT_RENDER_ID(a_2._f1); GRAPHICS::_0x61BB1D9B3A95D802(4); GRAPHICS::_0xC6372ECD45D73BCD(1); GRAPHICS::DRAW_TV_CHANNEL(0.5, 0.5, 1.0, 1.0, 0.0, 255, 255, 255, 255); if (GRAPHICS::GET_TV_CHANNEL() == -1) { sub_a8fa5(a_2, 1); } else { sub_a8fa5(a_2, 1); GRAPHICS::ATTACH_TV_AUDIO_TO_ENTITY(a_2._f3); } HUD::SET_TEXT_RENDER_ID(HUD::GET_DEFAULT_SCRIPT_RENDERTARGET_RENDER_ID()); } }
SET_TV_CHANNEL_PLAYLIST
void GRAPHICS::SET_TV_CHANNEL_PLAYLIST(int tvChannel, const char* playlistName, BOOL restart) // 0xF7B38B8305F1FE8B 0xB262DE67 b323
Loads specified video sequence into the TV Channel TV_Channel ranges from 0-2 VideoSequence can be any of the following: "PL_STD_CNT" CNT Standard Channel "PL_STD_WZL" Weazel Standard Channel "PL_LO_CNT" "PL_LO_WZL" "PL_SP_WORKOUT" "PL_SP_INV" - Jay Norris Assassination Mission Fail "PL_SP_INV_EXP" - Jay Norris Assassination Mission Success "PL_LO_RS" - Righteous Slaughter Ad "PL_LO_RS_CUTSCENE" - Righteous Slaughter Cut-scene "PL_SP_PLSH1_INTRO" "PL_LES1_FAME_OR_SHAME" "PL_STD_WZL_FOS_EP2" "PL_MP_WEAZEL" - Weazel Logo on loop "PL_MP_CCTV" - Generic CCTV loop Restart: 0=video sequence continues as normal 1=sequence restarts from beginning every time that channel is selected The above playlists work as intended, and are commonly used, but there are many more playlists, as seen in `tvplaylists.xml`. A pastebin below outlines all playlists, they will be surronded by the name tag I.E. (<Name>PL_STD_CNT</Name> = PL_STD_CNT). https://pastebin.com/zUzGB6h7
SET_TV_CHANNEL_PLAYLIST_AT_HOUR
void GRAPHICS::SET_TV_CHANNEL_PLAYLIST_AT_HOUR(int tvChannel, const char* playlistName, int hour) // 0x2201C576FACAEBE8 0x78C4DCBE b323
CLEAR_TV_CHANNEL_PLAYLIST
void GRAPHICS::CLEAR_TV_CHANNEL_PLAYLIST(int tvChannel) // 0xBEB3D46BB7F043C0 0xCBE7068F b323
_IS_PLAYLIST_UNK
BOOL GRAPHICS::_IS_PLAYLIST_UNK(int tvChannel, Any p1) // 0x1F710BFF7DAE6261 b1604
_IS_TV_PLAYLIST_ITEM_PLAYING
BOOL GRAPHICS::_IS_TV_PLAYLIST_ITEM_PLAYING(Hash videoCliphash) // 0x0AD973CA1E077B60 0x4D1EB0FB b323
IS_*
ENABLE_MOVIE_KEYFRAME_WAIT
void GRAPHICS::ENABLE_MOVIE_KEYFRAME_WAIT(BOOL toggle) // 0x74C180030FDE4B69 0x796DE696 b323
_0xD1C55B110E4DF534
void GRAPHICS::_0xD1C55B110E4DF534(Any p0) // 0xD1C55B110E4DF534 0xD99EC000 b323
SET_TV_???
_0x30432A0118736E00
Hash GRAPHICS::_0x30432A0118736E00() // 0x30432A0118736E00 b1493
GET_CURRENT_*
ENABLE_MOVIE_SUBTITLES
void GRAPHICS::ENABLE_MOVIE_SUBTITLES(BOOL toggle) // 0x873FA65C778AD970 0xC2DEBA3D b323
UI3DSCENE_IS_AVAILABLE
BOOL GRAPHICS::UI3DSCENE_IS_AVAILABLE() // 0xD3A10FC7FD8D98CD 0xE40A0F1A b323
UI3DSCENE_PUSH_PRESET
BOOL GRAPHICS::UI3DSCENE_PUSH_PRESET(const char* presetName) // 0xF1CEA8A4198D8E9A 0x2E7D9B98 b323
All presets can be found in common\data\ui\uiscenes.meta
_0x98C4FE6EC34154CA
BOOL GRAPHICS::_0x98C4FE6EC34154CA(const char* presetName, Ped ped, int p2, float posX, float posY, float posZ) // 0x98C4FE6EC34154CA 0x9A0E3BFE b323
It's called after 0xD3A10FC7FD8D98CD and 0xF1CEA8A4198D8E9A presetName was always "CELEBRATION_WINNER" All presets can be found in common\data\ui\uiscenes.meta UI3DSCENE_*
_0x7A42B2E236E71415
void GRAPHICS::_0x7A42B2E236E71415() // 0x7A42B2E236E71415 0x431AA036 b323
UI3DSCENE_*
_0x108BE26959A9D9BB
void GRAPHICS::_0x108BE26959A9D9BB(BOOL toggle) // 0x108BE26959A9D9BB 0x24A7A7F6 b323
UI3DSCENE_*
TERRAINGRID_ACTIVATE
void GRAPHICS::TERRAINGRID_ACTIVATE(BOOL toggle) // 0xA356990E161C9E65 0xA1CB6C94 b323
This native enables/disables the gold putting grid display (https://i.imgur.com/TC6cku6.png). This requires these two natives to be called as well to configure the grid: `0x1c4fc5752bcd8e48` and `0x5ce62918f8d703c7`.
TERRAINGRID_SET_PARAMS
void GRAPHICS::TERRAINGRID_SET_PARAMS(float x, float y, float z, float p3, float rotation, float p5, float width, float height, float p8, float scale, float glowIntensity, float normalHeight, float heightDiff) // 0x1C4FC5752BCD8E48 0x3B637AA7 b323
This native is used along with these two natives: `0xa356990e161c9e65` and `0x5ce62918f8d703c7`. This native configures the location, size, rotation, normal height, and the difference ratio between min, normal and max. All those natives combined they will output something like this: https://i.imgur.com/TC6cku6.png
TERRAINGRID_SET_COLOURS
void GRAPHICS::TERRAINGRID_SET_COLOURS(int lowR, int lowG, int lowB, int lowAlpha, int r, int g, int b, int alpha, int highR, int highG, int highB, int highAlpha) // 0x5CE62918F8D703C7 0xDF552973 b323
This native is used along with these two natives: `0xa356990e161c9e65` and `0x1c4fc5752bcd8e48`. This native sets the colors for the golf putting grid. the 'min...' values are for the lower areas that the grid covers, the 'max...' values are for the higher areas that the grid covers, all remaining values are for the 'normal' ground height. All those natives combined they will output something like this: https://i.imgur.com/TC6cku6.png
ANIMPOSTFX_PLAY
void GRAPHICS::ANIMPOSTFX_PLAY(const char* effectName, int duration, BOOL looped) // 0x2206BF9A37B7F724 0x1D980479 b323
duration - is how long to play the effect for in milliseconds. If 0, it plays the default length if loop is true, the effect won't stop until you call ANIMPOSTFX_STOP on it. (only loopable effects) Full list of animpostFX / screen effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animPostFxNamesCompact.json
ANIMPOSTFX_STOP
void GRAPHICS::ANIMPOSTFX_STOP(const char* effectName) // 0x068E835A1D0DC0E3 0x06BB5CDA b323
See ANIMPOSTFX_PLAY Full list of animpostFX / screen effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animPostFxNamesCompact.json
_ANIMPOSTFX_GET_UNK
float GRAPHICS::_ANIMPOSTFX_GET_UNK(const char* effectName) // 0xE35B38A27E8E7179 b877
See ANIMPOSTFX_PLAY Full list of animpostFX / screen effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animPostFxNamesCompact.json
ANIMPOSTFX_IS_RUNNING
BOOL GRAPHICS::ANIMPOSTFX_IS_RUNNING(const char* effectName) // 0x36AD3E690DA5ACEB 0x089D5921 b323
Returns whether the specified effect is active. See ANIMPOSTFX_PLAY Full list of animpostFX / screen effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animPostFxNamesCompact.json
ANIMPOSTFX_STOP_ALL
void GRAPHICS::ANIMPOSTFX_STOP_ALL() // 0xB4EDDC19532BFB85 0x4E6D875B b323
Stops ALL currently playing effects.
_ANIMPOSTFX_STOP_AND_DO_UNK
void GRAPHICS::_ANIMPOSTFX_STOP_AND_DO_UNK(const char* effectName) // 0xD2209BE128B5418C b323
Stops the effect and sets a value (bool) in its data (+0x199) to false. See ANIMPOSTFX_PLAY Full list of animpostFX / screen effects by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animPostFxNamesCompact.json
HUD
BEGIN_TEXT_COMMAND_BUSYSPINNER_ON
void HUD::BEGIN_TEXT_COMMAND_BUSYSPINNER_ON(const char* string) // 0xABA17D7CE615ADBF 0xCB7C8994 b323
Initializes the text entry for the the text next to a loading prompt. All natives for building UI texts can be used here e.g void StartLoadingMessage(char *text, int spinnerType = 3) { _SET_LOADING_PROMPT_TEXT_ENTRY("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); _SHOW_LOADING_PROMPT(spinnerType); } /*OR*/ void ShowLoadingMessage(char *text, int spinnerType = 3, int timeMs = 10000) { _SET_LOADING_PROMPT_TEXT_ENTRY("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); _SHOW_LOADING_PROMPT(spinnerType); WAIT(timeMs); _REMOVE_LOADING_PROMPT(); } These are some localized strings used in the loading spinner. "PM_WAIT" = Please Wait "CELEB_WPLYRS" = Waiting For Players. "CELL_SPINNER2" = Scanning storage. "ERROR_CHECKYACHTNAME" = Registering your yacht's name. Please wait. "ERROR_CHECKPROFANITY" = Checking your text for profanity. Please wait. "FM_COR_AUTOD" = Just spinner no text "FM_IHELP_WAT2" = Waiting for other players "FM_JIP_WAITO" = Game options are being set "FMMC_DOWNLOAD" = Downloading "FMMC_PLYLOAD" = Loading "FMMC_STARTTRAN" = Launching session "HUD_QUITTING" = Quiting session "KILL_STRIP_IDM" = Waiting for to accept "MP_SPINLOADING" = Loading
END_TEXT_COMMAND_BUSYSPINNER_ON
void HUD::END_TEXT_COMMAND_BUSYSPINNER_ON(int busySpinnerType) // 0xBD12F8228410D9B4 0x903F5EE4 b323
enum eBusySpinnerType { BUSY_SPINNER_LEFT, BUSY_SPINNER_LEFT_2, BUSY_SPINNER_LEFT_3, BUSY_SPINNER_SAVE, BUSY_SPINNER_RIGHT, };
BUSYSPINNER_OFF
void HUD::BUSYSPINNER_OFF() // 0x10D373323E5B9C0D 0x94119534 b323
Removes the loading prompt at the bottom right of the screen.
PRELOAD_BUSYSPINNER
void HUD::PRELOAD_BUSYSPINNER() // 0xC65AB383CD91DF98 0x71077FBD b323
BUSYSPINNER_IS_ON
BOOL HUD::BUSYSPINNER_IS_ON() // 0xD422FCC5F239A915 0xB8B3A5D0 b323
BUSYSPINNER_IS_DISPLAYING
BOOL HUD::BUSYSPINNER_IS_DISPLAYING() // 0xB2A592B04648A9CB 0x3AF34DEF b323
_0x9245E81072704B8A
void HUD::_0x9245E81072704B8A(BOOL p0) // 0x9245E81072704B8A b323
DISABLE_*
_SET_MOUSE_CURSOR_ACTIVE_THIS_FRAME
void HUD::_SET_MOUSE_CURSOR_ACTIVE_THIS_FRAME() // 0xAAE7CE1D63167423 b323
Shows the cursor on screen for one frame.
_SET_MOUSE_CURSOR_SPRITE
void HUD::_SET_MOUSE_CURSOR_SPRITE(int spriteId) // 0x8DB8CFFD58B62552 b323
Changes the mouse cursor's sprite. 1 = Normal 6 = Left Arrow 7 = Right Arrow
_SET_MOUSE_CURSOR_VISIBLE_IN_MENUS
void HUD::_SET_MOUSE_CURSOR_VISIBLE_IN_MENUS(BOOL toggle) // 0x98215325A695E78A b323
Shows/hides the frontend cursor on the pause menu or similar menus. Clicking off and then on the game window will show it again.
_0x3D9ACB1EB139E702
Any HUD::_0x3D9ACB1EB139E702() // 0x3D9ACB1EB139E702 b323
_0x632B2940C67F4EA9
BOOL HUD::_0x632B2940C67F4EA9(int scaleformHandle, Any* p1, Any* p2, Any* p3) // 0x632B2940C67F4EA9 b323
THEFEED_ONLY_SHOW_TOOLTIPS
void HUD::THEFEED_ONLY_SHOW_TOOLTIPS(BOOL toggle) // 0x6F1554B0CC2089FA 0xA7C8594B b323
THEFEED_SET_SCRIPTED_MENU_HEIGHT
void HUD::THEFEED_SET_SCRIPTED_MENU_HEIGHT(float pos) // 0x55598D21339CB998 0x1DA7E41A b323
_THEFEED_DISABLE_LOADING_SCREEN_TIPS
void HUD::_THEFEED_DISABLE_LOADING_SCREEN_TIPS() // 0x32888337579A5970 b463
Stops loading screen tips shown by invoking either `0x488043841BBE156F` or `0x15CFA549788D35EF`
THEFEED_HIDE_THIS_FRAME
void HUD::THEFEED_HIDE_THIS_FRAME() // 0x25F87B30C382FCA7 0x1E63088A b323
Once called each frame hides all above radar notifications.
_THEFEED_DISPLAY_LOADING_SCREEN_TIPS
void HUD::_THEFEED_DISPLAY_LOADING_SCREEN_TIPS() // 0x15CFA549788D35EF b463
Displays loading screen tips, requires `0x56C8B608CFD49854` to be called beforehand.
THEFEED_FLUSH_QUEUE
void HUD::THEFEED_FLUSH_QUEUE() // 0xA8FDB297A8D25FBA 0x5205C6F5 b323
THEFEED_REMOVE_ITEM
void HUD::THEFEED_REMOVE_ITEM(int notificationId) // 0xBE4390CB40B3E627 0xECA8ACB9 b323
Removes a notification instantly instead of waiting for it to disappear
THEFEED_FORCE_RENDER_ON
void HUD::THEFEED_FORCE_RENDER_ON() // 0xA13C11E1B5C06BFC 0x520FCB6D b323
THEFEED_FORCE_RENDER_OFF
void HUD::THEFEED_FORCE_RENDER_OFF() // 0x583049884A2EEE3C 0xC8BAB2F2 b323
Enables loading screen tips to be be shown (`_0x15CFA549788D35EF` and `_0x488043841BBE156F`), blocks other kinds of notifications from being displayed (at least from current script). Call `0xADED7F5748ACAFE6` to display those again.
THEFEED_PAUSE
void HUD::THEFEED_PAUSE() // 0xFDB423997FA30340 0x4D0449C6 b323
THEFEED_RESUME
void HUD::THEFEED_RESUME() // 0xE1CD1E48E025E661 0xD3F40140 b323
THEFEED_IS_PAUSED
BOOL HUD::THEFEED_IS_PAUSED() // 0xA9CBFD40B3FA3010 0xC5223796 b323
THEFEED_SPS_EXTEND_WIDESCREEN_ON
void HUD::THEFEED_SPS_EXTEND_WIDESCREEN_ON() // 0xD4438C0564490E63 0x709B4BCB b323
THEFEED_SPS_EXTEND_WIDESCREEN_OFF
void HUD::THEFEED_SPS_EXTEND_WIDESCREEN_OFF() // 0xB695E2CD0A2DA9EE 0x4A4A40A4 b323
THEFEED_GET_FIRST_VISIBLE_DELETE_REMAINING
int HUD::THEFEED_GET_FIRST_VISIBLE_DELETE_REMAINING() // 0x82352748437638CA 0x294405D4 b323
Returns the handle for the notification currently displayed on the screen. Name may be a hash collision, but describes the function accurately.
THEFEED_COMMENT_TELEPORT_POOL_ON
void HUD::THEFEED_COMMENT_TELEPORT_POOL_ON() // 0x56C8B608CFD49854 0xF881AB87 b323
Enables loading screen tips to be be shown (`_0x15CFA549788D35EF` and `_0x488043841BBE156F`), blocks other kinds of notifications from being displayed (at least from current script). Call `0xADED7F5748ACAFE6` to display those again.
THEFEED_COMMENT_TELEPORT_POOL_OFF
void HUD::THEFEED_COMMENT_TELEPORT_POOL_OFF() // 0xADED7F5748ACAFE6 0x1D6859CA b323
Displays "normal" notifications again after calling `_0x56C8B608CFD49854` (those that were drawn before calling this native too), though those will have a weird offset and stay on screen forever (tested with notifications created from same script).
_THEFEED_SET_NEXT_POST_BACKGROUND_COLOR
void HUD::_THEFEED_SET_NEXT_POST_BACKGROUND_COLOR(int hudColorIndex) // 0x92F0DA1E27DB96DC 0x07CE2EA4 b323
From the decompiled scripts: HUD::_92F0DA1E27DB96DC(6); HUD::_92F0DA1E27DB96DC(184); HUD::_92F0DA1E27DB96DC(190); sets background color for the next notification 6 = red 184 = green 190 = yellow Here is a list of some colors that can be used: gyazo.com/68bd384455fceb0a85a8729e48216e15
_THEFEED_SET_ANIMPOSTFX_COLOR
void HUD::_THEFEED_SET_ANIMPOSTFX_COLOR(int red, int green, int blue, int alpha) // 0x17430B918701C342 0xCF14D7F2 b323
_THEFEED_SET_ANIMPOSTFX_COUNT
void HUD::_THEFEED_SET_ANIMPOSTFX_COUNT(int count) // 0x17AD8C9706BDD88A 0x24A97AF8 b323
Related to notification color flashing, setting p0 to 0 invalidates a `_SET_NOTIFICATION_FLASH_COLOR` call for the target notification.
_THEFEED_SET_ANIMPOSTFX_SOUND
void HUD::_THEFEED_SET_ANIMPOSTFX_SOUND(BOOL toggle) // 0x4A0C7C9BB10ABB36 0x44018EDB b323
THEFEED_RESET_ALL_PARAMETERS
void HUD::THEFEED_RESET_ALL_PARAMETERS() // 0xFDD85225B2DEA55E 0xA4524B23 b323
THEFEED_FREEZE_NEXT_POST
void HUD::THEFEED_FREEZE_NEXT_POST() // 0xFDEC055AB549E328 0xAFA1148B b323
Requires manual management of game stream handles (i.e., 0xBE4390CB40B3E627).
THEFEED_CLEAR_FROZEN_POST
void HUD::THEFEED_CLEAR_FROZEN_POST() // 0x80FE4F3AB4E1B62A 0x3CD4307C b323
_THEFEED_SET_FLUSH_ANIMPOSTFX
void HUD::_THEFEED_SET_FLUSH_ANIMPOSTFX(BOOL p0) // 0xBAE4F9B97CD43B30 b323
_THEFEED_ADD_TXD_REF
void HUD::_THEFEED_ADD_TXD_REF(Any* p0, Any* p1, Any* p2, Any* p3) // 0x317EBA71D7543F52 b323
From the decompiled scripts, called 61 times: HUD::_317EBA71D7543F52(&v_13, &v_13, &v_3, &v_3);
BEGIN_TEXT_COMMAND_THEFEED_POST
void HUD::BEGIN_TEXT_COMMAND_THEFEED_POST(const char* text) // 0x202709F4C58A0424 0x574EE85C b323
Declares the entry type of a notification, for example "STRING". int ShowNotification(char *text) { BEGIN_TEXT_COMMAND_THEFEED_POST("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); return _DRAW_NOTIFICATION(1, 1); }
END_TEXT_COMMAND_THEFEED_POST_STATS
int HUD::END_TEXT_COMMAND_THEFEED_POST_STATS(const char* statTitle, int iconEnum, BOOL stepVal, int barValue, BOOL isImportant, const char* pictureTextureDict, const char* pictureTextureName) // 0x2B7E9A4EAAA93C89 0xED130FA1 b323
List of picture names: https://pastebin.com/XdpJVbHz Example result: https://i.imgur.com/SdEZ22m.png
END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT
int HUD::END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT(const char* txdName, const char* textureName, BOOL flash, int iconType, const char* sender, const char* subject) // 0x1CCD9A37359072CF 0xE7E3C98B b323
This function can show pictures of every texture that can be requested by REQUEST_STREAMED_TEXTURE_DICT. List of picNames: pastebin.com/XdpJVbHz flash is a bool for fading in. iconTypes: 1 : Chat Box 2 : Email 3 : Add Friend Request 4 : Nothing 5 : Nothing 6 : Nothing 7 : Right Jumping Arrow 8 : RP Icon 9 : $ Icon "sender" is the very top header. This can be any old string. "subject" is the header under the sender.
_END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_GXT_ENTRY
int HUD::_END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_GXT_ENTRY(const char* txdName, const char* textureName, BOOL flash, int iconType, const char* sender, const char* subject) // 0xC6F580E4C94926AC b323
This function can show pictures of every texture that can be requested by REQUEST_STREAMED_TEXTURE_DICT. Needs more research. Only one type of usage in the scripts: HUD::_C6F580E4C94926AC("CHAR_ACTING_UP", "CHAR_ACTING_UP", 0, 0, "DI_FEED_CHAR", a_0);
END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_TU
int HUD::END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_TU(const char* txdName, const char* textureName, BOOL flash, int iconType, const char* sender, const char* subject, float duration) // 0x1E6611149DB3DB6B 0x0EB382B7 b323
This function can show pictures of every texture that can be requested by REQUEST_STREAMED_TEXTURE_DICT. NOTE: 'duration' is a multiplier, so 1.0 is normal, 2.0 is twice as long (very slow), and 0.5 is half as long. Example, only occurrence in the scripts: v_8 = HUD::_1E6611149DB3DB6B("CHAR_SOCIAL_CLUB", "CHAR_SOCIAL_CLUB", 0, 0, &v_9, "", a_5);
END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_WITH_CREW_TAG
int HUD::END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_WITH_CREW_TAG(const char* txdName, const char* textureName, BOOL flash, int iconType, const char* sender, const char* subject, float duration, const char* clanTag) // 0x5CBF7BADE20DB93E 0x3E807FE3 b323
This function can show pictures of every texture that can be requested by REQUEST_STREAMED_TEXTURE_DICT. List of picNames pastebin.com/XdpJVbHz flash is a bool for fading in. iconTypes: 1 : Chat Box 2 : Email 3 : Add Friend Request 4 : Nothing 5 : Nothing 6 : Nothing 7 : Right Jumping Arrow 8 : RP Icon 9 : $ Icon "sender" is the very top header. This can be any old string. "subject" is the header under the sender. "duration" is a multiplier, so 1.0 is normal, 2.0 is twice as long (very slow), and 0.5 is half as long. "clanTag" shows a crew tag in the "sender" header, after the text. You need to use 3 underscores as padding. Maximum length of this field seems to be 7. (e.g. "MK" becomes "___MK", "ACE" becomes "___ACE", etc.)
END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_WITH_CREW_TAG_AND_ADDITIONAL_ICON
int HUD::END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_WITH_CREW_TAG_AND_ADDITIONAL_ICON(const char* txdName, const char* textureName, BOOL flash, int iconType1, const char* sender, const char* subject, float duration, const char* clanTag, int iconType2, int p9) // 0x531B84E7DA981FB6 0xDEB491C8 b323
This function can show pictures of every texture that can be requested by REQUEST_STREAMED_TEXTURE_DICT. List of picNames: pastebin.com/XdpJVbHz flash is a bool for fading in. iconTypes: 1 : Chat Box 2 : Email 3 : Add Friend Request 4 : Nothing 5 : Nothing 6 : Nothing 7 : Right Jumping Arrow 8 : RP Icon 9 : $ Icon "sender" is the very top header. This can be any old string. "subject" is the header under the sender. "duration" is a multiplier, so 1.0 is normal, 2.0 is twice as long (very slow), and 0.5 is half as long. "clanTag" shows a crew tag in the "sender" header, after the text. You need to use 3 underscores as padding. Maximum length of this field seems to be 7. (e.g. "MK" becomes "___MK", "ACE" becomes "___ACE", etc.) iconType2 is a mirror of iconType. It shows in the "subject" line, right under the original iconType. int IconNotification(char *text, char *text2, char *Subject) { _SET_NOTIFICATION_TEXT_ENTRY("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); _SET_NOTIFICATION_MESSAGE_CLAN_TAG_2("CHAR_SOCIAL_CLUB", "CHAR_SOCIAL_CLUB", 1, 7, text2, Subject, 1.0f, "__EXAMPLE", 7); return _DRAW_NOTIFICATION(1, 1); }
END_TEXT_COMMAND_THEFEED_POST_TICKER
int HUD::END_TEXT_COMMAND_THEFEED_POST_TICKER(BOOL blink, BOOL p1) // 0x2ED7843F8F801023 0x08F7AF78 b323
END_TEXT_COMMAND_THEFEED_POST_TICKER_FORCED
int HUD::END_TEXT_COMMAND_THEFEED_POST_TICKER_FORCED(BOOL blink, BOOL p1) // 0x44FA03975424A0EE 0x57B8D0D4 b323
END_TEXT_COMMAND_THEFEED_POST_TICKER_WITH_TOKENS
int HUD::END_TEXT_COMMAND_THEFEED_POST_TICKER_WITH_TOKENS(BOOL blink, BOOL p1) // 0x378E809BF61EC840 0x02BCAF9B b323
END_TEXT_COMMAND_THEFEED_POST_AWARD
int HUD::END_TEXT_COMMAND_THEFEED_POST_AWARD(const char* textureDict, const char* textureName, int rpBonus, int colorOverlay, const char* titleLabel) // 0xAA295B6F28BD587D 0x02DED2B8 b323
Shows an "award" notification above the minimap, example: https://i.imgur.com/e2DNaKX.png Example: HUD::_SET_NOTIFICATION_TEXT_ENTRY("HUNT"); HUD::_0xAA295B6F28BD587D("Hunting", "Hunting_Gold_128", 0, 109, "HUD_MED_UNLKED");
END_TEXT_COMMAND_THEFEED_POST_CREWTAG
int HUD::END_TEXT_COMMAND_THEFEED_POST_CREWTAG(BOOL p0, BOOL p1, int* p2, int p3, BOOL isLeader, BOOL unk0, int clanDesc, int R, int G, int B) // 0x97C9E4E7024A8F2C 0xA9CCEF66 b323
END_TEXT_COMMAND_THEFEED_POST_CREWTAG_WITH_GAME_NAME
int HUD::END_TEXT_COMMAND_THEFEED_POST_CREWTAG_WITH_GAME_NAME(BOOL p0, BOOL p1, int* p2, int p3, BOOL isLeader, BOOL unk0, int clanDesc, const char* playerName, int R, int G, int B) // 0x137BC35589E34E1E 0x88B9B909 b323
p0 = 1 or 0 crashes my game... this is for sending invites to network players - jobs/apartment/ect... return notification handle int invite(Player player) { networkHandleMgr netHandle; networkClanMgr clan; char *playerName = GET_PLAYER_NAME(player); _SET_NOTIFICATION_TEXT_ENTRY("STRING"); _SET_NOTIFACTION_COLOR_NEXT(1); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(playerName); NETWORK_HANDLE_FROM_PLAYER(player, &netHandle.netHandle, 13); if (NETWORK_CLAN_PLAYER_IS_ACTIVE(&netHandle.netHandle)) { NETWORK_CLAN_PLAYER_GET_DESC(&clan.clanHandle, 35, &netHandle.netHandle); _DRAW_NOTIFICATION_CLAN_INVITE(0, _0x54E79E9C(&clan.clanHandle, 35), &clan.unk17, clan.isLeader, 0, 0, clan.clanHandle, playerName, 0, 0, 0); } }
END_TEXT_COMMAND_THEFEED_POST_UNLOCK
Any HUD::END_TEXT_COMMAND_THEFEED_POST_UNLOCK(Any p0, Any p1, Any p2) // 0x33EE12743CCD6343 0xE05E7052 b323
END_TEXT_COMMAND_THEFEED_POST_UNLOCK_TU
Any HUD::END_TEXT_COMMAND_THEFEED_POST_UNLOCK_TU(Any p0, Any p1, Any p2, Any p3) // 0xC8F3AAF93D0600BF 0x4FA43BA4 b323
END_TEXT_COMMAND_THEFEED_POST_UNLOCK_TU_WITH_COLOR
Any HUD::END_TEXT_COMMAND_THEFEED_POST_UNLOCK_TU_WITH_COLOR(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x7AE0589093A2E088 0x8C90D22F b323
END_TEXT_COMMAND_THEFEED_POST_MPTICKER
int HUD::END_TEXT_COMMAND_THEFEED_POST_MPTICKER(BOOL blink, BOOL p1) // 0xF020C96915705B3A 0x8E319AB8 b323
END_TEXT_COMMAND_THEFEED_POST_CREW_RANKUP
int HUD::END_TEXT_COMMAND_THEFEED_POST_CREW_RANKUP(const char* p0, const char* p1, const char* p2, BOOL p3, BOOL p4) // 0x8EFCCF6EC66D85E4 0x76FB0F21 b323
END_TEXT_COMMAND_THEFEED_POST_VERSUS_TU
Any HUD::END_TEXT_COMMAND_THEFEED_POST_VERSUS_TU(Any* p0, Any* p1, Any p2, Any* p3, Any* p4, Any p5, Any p6, Any p7) // 0xB6871B0555B02996 0x5E93FBFA b323
_END_TEXT_COMMAND_THEFEED_POST_REPLAY_ICON
int HUD::_END_TEXT_COMMAND_THEFEED_POST_REPLAY_ICON(int type, int image, const char* text) // 0xD202B92CBF1D816F b323
returns a notification handle, prints out a notification like below: type range: 0 - 2 if you set type to 1, image goes from 0 - 39 - Xbox you can add text to example: HUD::_0xD202B92CBF1D816F(1, 20, "Who you trynna get crazy with, ese? Don't you know I'm LOCO?!"); - imgur.com/lGBPCz3
_END_TEXT_COMMAND_THEFEED_POST_REPLAY_INPUT
int HUD::_END_TEXT_COMMAND_THEFEED_POST_REPLAY_INPUT(int type, const char* button, const char* text) // 0xDD6CB2CCE7C2735C b323
returns a notification handle, prints out a notification like below: type range: 0 - 2 if you set type to 1, button accepts "~INPUT_SOMETHING~" example: HUD::_0xDD6CB2CCE7C2735C(1, "~INPUT_TALK~", "Who you trynna get crazy with, ese? Don't you know I'm LOCO?!"); - imgur.com/UPy0Ial Examples from the scripts: l_D1[1/*1*/]=HUD::_DD6CB2CCE7C2735C(1,"~INPUT_REPLAY_START_STOP_RECORDING~",""); l_D1[2/*1*/]=HUD::_DD6CB2CCE7C2735C(1,"~INPUT_SAVE_REPLAY_CLIP~",""); l_D1[1/*1*/]=HUD::_DD6CB2CCE7C2735C(1,"~INPUT_REPLAY_START_STOP_RECORDING~",""); l_D1[2/*1*/]=HUD::_DD6CB2CCE7C2735C(1,"~INPUT_REPLAY_START_STOP_RECORDING_SECONDARY~","");
BEGIN_TEXT_COMMAND_PRINT
void HUD::BEGIN_TEXT_COMMAND_PRINT(const char* GxtEntry) // 0xB87A37EEB7FAA67D 0xF42C43C7 b323
Used to be known as _SET_TEXT_ENTRY_2 void ShowSubtitle(char *text) { BEGIN_TEXT_COMMAND_PRINT("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); END_TEXT_COMMAND_PRINT(2000, 1); }
END_TEXT_COMMAND_PRINT
void HUD::END_TEXT_COMMAND_PRINT(int duration, BOOL drawImmediately) // 0x9D77056A530643F6 0x38F82261 b323
Draws the subtitle at middle center of the screen. int duration = time in milliseconds to show text on screen before disappearing drawImmediately = If true, the text will be drawn immediately, if false, the text will be drawn after the previous subtitle has finished Used to be known as _DRAW_SUBTITLE_TIMED
BEGIN_TEXT_COMMAND_IS_MESSAGE_DISPLAYED
void HUD::BEGIN_TEXT_COMMAND_IS_MESSAGE_DISPLAYED(const char* text) // 0x853648FD1063A213 0xDD524A11 b323
nothin doin. BOOL Message(const char* text) { BEGIN_TEXT_COMMAND_IS_MESSAGE_DISPLAYED("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); return END_TEXT_COMMAND_IS_MESSAGE_DISPLAYED(); }
END_TEXT_COMMAND_IS_MESSAGE_DISPLAYED
BOOL HUD::END_TEXT_COMMAND_IS_MESSAGE_DISPLAYED() // 0x8A9BA1AB3E237613 0x672EFB45 b323
BEGIN_TEXT_COMMAND_DISPLAY_TEXT
void HUD::BEGIN_TEXT_COMMAND_DISPLAY_TEXT(const char* text) // 0x25FBB336DF1804CB 0x3E35563E b323
The following were found in the decompiled script files: STRING, TWOSTRINGS, NUMBER, PERCENTAGE, FO_TWO_NUM, ESMINDOLLA, ESDOLLA, MTPHPER_XPNO, AHD_DIST, CMOD_STAT_0, CMOD_STAT_1, CMOD_STAT_2, CMOD_STAT_3, DFLT_MNU_OPT, F3A_TRAFDEST, ES_HELP_SOC3 ESDOLLA - cash ESMINDOLLA - cash (negative) Used to be known as _SET_TEXT_ENTRY
END_TEXT_COMMAND_DISPLAY_TEXT
void HUD::END_TEXT_COMMAND_DISPLAY_TEXT(float x, float y, int p2) // 0xCD015E5BB0D96A57 0x6F8350CE b323
After applying the properties to the text (See HUD::SET_TEXT_), this will draw the text in the applied position. Also 0.0f < x, y < 1.0f, percentage of the axis. Used to be known as _DRAW_TEXT
_BEGIN_TEXT_COMMAND_GET_WIDTH
void HUD::_BEGIN_TEXT_COMMAND_GET_WIDTH(const char* text) // 0x54CE8AC98E120CAB 0x51E7A037 b323
BEGIN_TEXT_COMMAND_* Example: _BEGIN_TEXT_COMMAND_GET_WIDTH("NUMBER"); ADD_TEXT_COMPONENT_FLOAT(69.420f, 2); float width = _END_TEXT_COMMAND_GET_WIDTH(1);
_END_TEXT_COMMAND_GET_WIDTH
float HUD::_END_TEXT_COMMAND_GET_WIDTH(BOOL p0) // 0x85F061DA64ED2F67 0xD12A643A b323
END_TEXT_COMMAND_* In scripts font most of the time is passed as 1. Use _BEGIN_TEXT_GET_COMMAND_GET_WIDTH param is not font from what i've tested
_BEGIN_TEXT_COMMAND_LINE_COUNT
void HUD::_BEGIN_TEXT_COMMAND_LINE_COUNT(const char* entry) // 0x521FB041D93DD0E4 0x94B82066 b323
BEGIN_TEXT_COMMAND_* get's line count int GetLineCount(char *text, float x, float y) { _BEGIN_TEXT_COMMAND_LINE_COUNT("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); return _END_TEXT_COMMAND_GET_LINE_COUNT(x, y); }
_END_TEXT_COMMAND_LINE_COUNT
int HUD::_END_TEXT_COMMAND_LINE_COUNT(float x, float y) // 0x9040DFB09BE75706 0xAA318785 b323
END_TEXT_COMMAND_* Determines how many lines the text string will use when drawn on screen. Must use 0x521FB041D93DD0E4 for setting up
BEGIN_TEXT_COMMAND_DISPLAY_HELP
void HUD::BEGIN_TEXT_COMMAND_DISPLAY_HELP(const char* inputType) // 0x8509B634FBE7DA11 0xB245FC10 b323
Used to be known as _SET_TEXT_COMPONENT_FORMAT
END_TEXT_COMMAND_DISPLAY_HELP
void HUD::END_TEXT_COMMAND_DISPLAY_HELP(int p0, BOOL loop, BOOL beep, int shape) // 0x238FFE5C7B0498A6 0xB59B530D b323
shape goes from -1 to 50 (may be more). p0 is always 0. Example: void FloatingHelpText(const char* text) { BEGIN_TEXT_COMMAND_DISPLAY_HELP("STRING"); ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(text); END_TEXT_COMMAND_DISPLAY_HELP (0, 0, 1, -1); } Image: - imgbin.org/images/26209.jpg more inputs/icons: - pastebin.com/nqNYWMSB Used to be known as _DISPLAY_HELP_TEXT_FROM_STRING_LABEL
BEGIN_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED
void HUD::BEGIN_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED(const char* labelName) // 0x0A24DA3A41B718F5 0x00E20F2D b323
BOOL IsContextActive(char *ctx) { BEGIN_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED(ctx); return END_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED(0); }
END_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED
BOOL HUD::END_TEXT_COMMAND_IS_THIS_HELP_MESSAGE_BEING_DISPLAYED(int p0) // 0x10BDDBFC529428DD 0xF63A13EC b323
BEGIN_TEXT_COMMAND_SET_BLIP_NAME
void HUD::BEGIN_TEXT_COMMAND_SET_BLIP_NAME(const char* textLabel) // 0xF9113A30DE5C6670 0xF4C211F6 b323
Starts a text command to change the name of a blip displayed in the pause menu. This should be paired with `END_TEXT_COMMAND_SET_BLIP_NAME`, once adding all required text components. Example: HUD::BEGIN_TEXT_COMMAND_SET_BLIP_NAME("STRING"); HUD::_ADD_TEXT_COMPONENT_STRING("Name"); HUD::END_TEXT_COMMAND_SET_BLIP_NAME(blip);
END_TEXT_COMMAND_SET_BLIP_NAME
void HUD::END_TEXT_COMMAND_SET_BLIP_NAME(Blip blip) // 0xBC38B49BCB83BC9B 0xE8E59820 b323
Finalizes a text command started with BEGIN_TEXT_COMMAND_SET_BLIP_NAME, setting the name of the specified blip.
_BEGIN_TEXT_COMMAND_OBJECTIVE
void HUD::_BEGIN_TEXT_COMMAND_OBJECTIVE(const char* p0) // 0x23D69E0465570028 0x0E103475 b323
_END_TEXT_COMMAND_OBJECTIVE
void HUD::_END_TEXT_COMMAND_OBJECTIVE(BOOL p0) // 0xCFDBDF5AE59BA0F4 0x2944A6C5 b323
BEGIN_TEXT_COMMAND_CLEAR_PRINT
void HUD::BEGIN_TEXT_COMMAND_CLEAR_PRINT(const char* text) // 0xE124FA80A759019C 0x550665AE b323
clears a print text command with this text
END_TEXT_COMMAND_CLEAR_PRINT
void HUD::END_TEXT_COMMAND_CLEAR_PRINT() // 0xFCC75460ABA29378 0x67785AF2 b323
BEGIN_TEXT_COMMAND_OVERRIDE_BUTTON_TEXT
void HUD::BEGIN_TEXT_COMMAND_OVERRIDE_BUTTON_TEXT(const char* gxtEntry) // 0x8F9EE5687F8EECCD 0xBF855650 b323
END_TEXT_COMMAND_OVERRIDE_BUTTON_TEXT
void HUD::END_TEXT_COMMAND_OVERRIDE_BUTTON_TEXT(int p0) // 0xA86911979638106F 0x6E7FDA1C b323
ADD_TEXT_COMPONENT_INTEGER
void HUD::ADD_TEXT_COMPONENT_INTEGER(int value) // 0x03B504CF259931BC 0xFE272A57 b323
ADD_TEXT_COMPONENT_FLOAT
void HUD::ADD_TEXT_COMPONENT_FLOAT(float value, int decimalPlaces) // 0xE7DCB5B874BCD96E 0x24D78013 b323
ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL(const char* labelName) // 0xC63CD5D2920ACBE7 0xDCE05406 b323
ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL_HASH_KEY
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_TEXT_LABEL_HASH_KEY(Hash gxtEntryHash) // 0x17299B63C7683A2B 0x150E03B6 b323
It adds the localized text of the specified GXT entry name. Eg. if the argument is GET_HASH_KEY("ES_HELP"), adds "Continue". Just uses a text labels hash key
ADD_TEXT_COMPONENT_SUBSTRING_BLIP_NAME
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_BLIP_NAME(Blip blip) // 0x80EAD8E2E1D5D52E 0x5DE98F0A b323
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(const char* text) // 0x6C188BE134E074AA 0x27A244D8 b323
ADD_TEXT_COMPONENT_SUBSTRING_TIME
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_TIME(int timestamp, int flags) // 0x1115F16B8AB9E8BF 0x135B3CD0 b323
Adds a timer (e.g. "00:00:00:000"). The appearance of the timer depends on the flags, which needs more research.
ADD_TEXT_COMPONENT_FORMATTED_INTEGER
void HUD::ADD_TEXT_COMPONENT_FORMATTED_INTEGER(int value, BOOL commaSeparated) // 0x0E4C749FF9DE9CC4 0x12929BDF b323
ADD_TEXT_COMPONENT_SUBSTRING_PHONE_NUMBER
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_PHONE_NUMBER(const char* p0, int p1) // 0x761B77454205A61D 0x65E1D404 b323
p1 was always -1
ADD_TEXT_COMPONENT_SUBSTRING_WEBSITE
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_WEBSITE(const char* website) // 0x94CF4AC034C9C986 0xC736999E b323
This native (along with 0x5F68520888E69014 and 0x6C188BE134E074AA) do not actually filter anything. They simply add the provided text (as of 944)
ADD_TEXT_COMPONENT_SUBSTRING_KEYBOARD_DISPLAY
void HUD::ADD_TEXT_COMPONENT_SUBSTRING_KEYBOARD_DISPLAY(const char* string) // 0x5F68520888E69014 0x0829A799 b323
SET_COLOUR_OF_NEXT_TEXT_COMPONENT
void HUD::SET_COLOUR_OF_NEXT_TEXT_COMPONENT(int hudColor) // 0x39BBF623FC803EAC 0x6F1A1901 b323
_GET_TEXT_SUBSTRING
const char* HUD::_GET_TEXT_SUBSTRING(const char* text, int position, int length) // 0x169BD9382084C8C0 0x34A396EE b323
Returns a substring of a specified length starting at a specified position. Example: // Get "STRING" text from "MY_STRING" subStr = HUD::_GET_TEXT_SUBSTRING("MY_STRING", 3, 6);
_GET_TEXT_SUBSTRING_SAFE
const char* HUD::_GET_TEXT_SUBSTRING_SAFE(const char* text, int position, int length, int maxLength) // 0xB2798643312205C5 0x0183A66C b323
Returns a substring of a specified length starting at a specified position. The result is guaranteed not to exceed the specified max length. NOTE: The 'maxLength' parameter might actually be the size of the buffer that is returned. More research is needed. -CL69 Example: // Condensed example of how Rockstar uses this function strLen = HUD::GET_LENGTH_OF_LITERAL_STRING(MISC::GET_ONSCREEN_KEYBOARD_RESULT()); subStr = HUD::_GET_TEXT_SUBSTRING_SAFE(MISC::GET_ONSCREEN_KEYBOARD_RESULT(), 0, strLen, 63); -- "fm_race_creator.ysc", line 85115: // parameters modified for clarity BOOL sub_8e5aa(char *text, int length) { for (i = 0; i <= (length - 2); i += 1) { if (!MISC::ARE_STRINGS_EQUAL(HUD::_GET_TEXT_SUBSTRING_SAFE(text, i, i + 1, 1), " ")) { return FALSE; } } return TRUE; }
_GET_TEXT_SUBSTRING_SLICE
const char* HUD::_GET_TEXT_SUBSTRING_SLICE(const char* text, int startPosition, int endPosition) // 0xCE94AEBA5D82908A 0xFA6373BB b323
Returns a substring that is between two specified positions. The length of the string will be calculated using (endPosition - startPosition). Example: // Get "STRING" text from "MY_STRING" subStr = HUD::_GET_TEXT_SUBSTRING_SLICE("MY_STRING", 3, 9); // Overflows are possibly replaced with underscores (needs verification) subStr = HUD::_GET_TEXT_SUBSTRING_SLICE("MY_STRING", 3, 10); // "STRING_"?
_GET_LABEL_TEXT
const char* HUD::_GET_LABEL_TEXT(const char* labelName) // 0x7B5280EBA9840C72 0x95C4B5AD b323
Gets a string literal from a label name. GET_F*
CLEAR_PRINTS
void HUD::CLEAR_PRINTS() // 0xCC33FA791322B9D9 0x216CB1C5 b323
CLEAR_BRIEF
void HUD::CLEAR_BRIEF() // 0x9D292F73ADBD9313 0x9F75A929 b323
CLEAR_ALL_HELP_MESSAGES
void HUD::CLEAR_ALL_HELP_MESSAGES() // 0x6178F68A87A4D3A0 0x9E5D9198 b323
CLEAR_THIS_PRINT
void HUD::CLEAR_THIS_PRINT(const char* p0) // 0xCF708001E1E536DD 0x06878327 b323
p0: found arguments in the b617d scripts: pastebin.com/X5akCN7z
CLEAR_SMALL_PRINTS
void HUD::CLEAR_SMALL_PRINTS() // 0x2CEA2839313C09AC 0xA869A238 b323
DOES_TEXT_BLOCK_EXIST
BOOL HUD::DOES_TEXT_BLOCK_EXIST(const char* gxt) // 0x1C7302E725259789 0x96F74838 b323
REQUEST_ADDITIONAL_TEXT
void HUD::REQUEST_ADDITIONAL_TEXT(const char* gxt, int slot) // 0x71A78003C8E71424 0x9FA9175B b323
Request a gxt into the passed slot.
REQUEST_ADDITIONAL_TEXT_FOR_DLC
void HUD::REQUEST_ADDITIONAL_TEXT_FOR_DLC(const char* gxt, int slot) // 0x6009F9F1AE90D8A6 0xF4D27EBE b323
HAS_ADDITIONAL_TEXT_LOADED
BOOL HUD::HAS_ADDITIONAL_TEXT_LOADED(int slot) // 0x02245FE4BED318B8 0xB0E56045 b323
CLEAR_ADDITIONAL_TEXT
void HUD::CLEAR_ADDITIONAL_TEXT(int p0, BOOL p1) // 0x2A179DF17CCF04CD 0x518141E0 b323
IS_STREAMING_ADDITIONAL_TEXT
BOOL HUD::IS_STREAMING_ADDITIONAL_TEXT(int p0) // 0x8B6817B71B85EBF0 0xF079E4EB b323
HAS_THIS_ADDITIONAL_TEXT_LOADED
BOOL HUD::HAS_THIS_ADDITIONAL_TEXT_LOADED(const char* gxt, int slot) // 0xADBF060E2B30C5BC 0x80A52040 b323
Checks if the specified gxt has loaded into the passed slot.
IS_MESSAGE_BEING_DISPLAYED
BOOL HUD::IS_MESSAGE_BEING_DISPLAYED() // 0x7984C03AA5CC2F41 0x6A77FE8D b323
DOES_TEXT_LABEL_EXIST
BOOL HUD::DOES_TEXT_LABEL_EXIST(const char* gxt) // 0xAC09CA973C564252 0x6ECAE560 b323
Checks if the passed gxt name exists in the game files.
_0x98C3CF913D895111
const char* HUD::_0x98C3CF913D895111(const char* string, int length) // 0x98C3CF913D895111 b505
GET_F*
GET_LENGTH_OF_STRING_WITH_THIS_TEXT_LABEL
int HUD::GET_LENGTH_OF_STRING_WITH_THIS_TEXT_LABEL(const char* gxt) // 0x801BD273D3A23F74 0xA4CA7BE5 b323
Returns the string length of the string from the gxt string .
GET_LENGTH_OF_LITERAL_STRING
int HUD::GET_LENGTH_OF_LITERAL_STRING(const char* string) // 0xF030907CCBB8A9FD 0x99379D55 b323
Returns the length of the string passed (much like strlen).
GET_LENGTH_OF_LITERAL_STRING_IN_BYTES
int HUD::GET_LENGTH_OF_LITERAL_STRING_IN_BYTES(const char* string) // 0x43E4111189E54F0E 0x7DBC0764 b323
GET_STREET_NAME_FROM_HASH_KEY
const char* HUD::GET_STREET_NAME_FROM_HASH_KEY(Hash hash) // 0xD0EF8A959B8A4CB9 0x1E8E310C b323
This functions converts the hash of a street name into a readable string. For how to get the hashes, see PATHFIND::GET_STREET_NAME_AT_COORD.
IS_HUD_PREFERENCE_SWITCHED_ON
BOOL HUD::IS_HUD_PREFERENCE_SWITCHED_ON() // 0x1930DFA731813EC4 0xC3BC1B4F b323
IS_RADAR_PREFERENCE_SWITCHED_ON
BOOL HUD::IS_RADAR_PREFERENCE_SWITCHED_ON() // 0x9EB6522EA68F22FE 0x14AEAA28 b323
IS_SUBTITLE_PREFERENCE_SWITCHED_ON
BOOL HUD::IS_SUBTITLE_PREFERENCE_SWITCHED_ON() // 0xAD6DACA4BA53E0A4 0x63BA19F5 b323
DISPLAY_HUD
void HUD::DISPLAY_HUD(BOOL toggle) // 0xA6294919E56FF02A 0xD10E4E31 b323
If Hud should be displayed
_DISPLAY_HUD_WHEN_DEAD_THIS_FRAME
void HUD::_DISPLAY_HUD_WHEN_DEAD_THIS_FRAME() // 0x7669F9E39DC17063 0xC380AC85 b323
Enables drawing some hud components, such as help labels, this frame, when the player is dead.
DISPLAY_HUD_WHEN_PAUSED_THIS_FRAME
void HUD::DISPLAY_HUD_WHEN_PAUSED_THIS_FRAME() // 0x402F9ED62087E898 0xC47AB1B0 b323
DISPLAY_RADAR
void HUD::DISPLAY_RADAR(BOOL toggle) // 0xA0EBB943C300E693 0x52816BD4 b323
If Minimap / Radar should be displayed.
_0xCD74233600C4EA6B
void HUD::_0xCD74233600C4EA6B(BOOL toggle) // 0xCD74233600C4EA6B b505
Setter for 0xC2D2AD9EAAE265B8 SET_*
_0xC2D2AD9EAAE265B8
BOOL HUD::_0xC2D2AD9EAAE265B8() // 0xC2D2AD9EAAE265B8 b505
Getter for 0xCD74233600C4EA6B GET_*
IS_HUD_HIDDEN
BOOL HUD::IS_HUD_HIDDEN() // 0xA86478C6958735C5 0x40BADA1D b323
IS_RADAR_HIDDEN
BOOL HUD::IS_RADAR_HIDDEN() // 0x157F93B036700462 0x1AB3B954 b323
IS_MINIMAP_RENDERING
BOOL HUD::IS_MINIMAP_RENDERING() // 0xAF754F20EB5CD51A 0x9CD18314 b323
_0x0C698D8F099174C7
void HUD::_0x0C698D8F099174C7(Any p0) // 0x0C698D8F099174C7 b1180
_0xE4C3B169876D33D7
void HUD::_0xE4C3B169876D33D7(Any p0) // 0xE4C3B169876D33D7 b1290
_0xEB81A3DADD503187
void HUD::_0xEB81A3DADD503187() // 0xEB81A3DADD503187 b1290
SET_BLIP_ROUTE
void HUD::SET_BLIP_ROUTE(Blip blip, BOOL enabled) // 0x4F7D8A9BFB0B43E9 0x3E160C90 b323
Enable / disable showing route for the Blip-object.
_CLEAR_ALL_BLIP_ROUTES
void HUD::_CLEAR_ALL_BLIP_ROUTES() // 0xD12882D3FF82BF11 b877
SET_BLIP_ROUTE_COLOUR
void HUD::SET_BLIP_ROUTE_COLOUR(Blip blip, int colour) // 0x837155CD2F63DA09 0xDDE7C65C b323
_0x2790F4B17D098E26
void HUD::_0x2790F4B17D098E26(BOOL toggle) // 0x2790F4B17D098E26 b573
SET_F*
_0x6CDD58146A436083
void HUD::_0x6CDD58146A436083(Any p0) // 0x6CDD58146A436083 b573
_0xD1942374085C8469
void HUD::_0xD1942374085C8469(Any p0) // 0xD1942374085C8469 b505
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS
void HUD::ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(BOOL p0) // 0x60296AF4BA14ABC5 0xB58B25BD b323
_0x57D760D55F54E071
void HUD::_0x57D760D55F54E071(int p0) // 0x57D760D55F54E071 0x9854485F b323
FORCE_*
SET_RADAR_ZOOM_PRECISE
void HUD::SET_RADAR_ZOOM_PRECISE(float zoom) // 0xBD12C5EEE184C337 0xDCA3F423 b323
SET_RADAR_ZOOM
void HUD::SET_RADAR_ZOOM(int zoomLevel) // 0x096EF57A0C999BBA 0x2A50D1A6 b323
zoomLevel ranges from 0 to 200
SET_RADAR_ZOOM_TO_BLIP
void HUD::SET_RADAR_ZOOM_TO_BLIP(Blip blip, float zoom) // 0xF98E4B3E56AFC7B1 0x25EC28C0 b323
SET_RADAR_ZOOM_TO_DISTANCE
void HUD::SET_RADAR_ZOOM_TO_DISTANCE(float zoom) // 0xCB7CC0D58405AD41 0x09CF1CE5 b323
_0xD2049635DEB9C375
void HUD::_0xD2049635DEB9C375() // 0xD2049635DEB9C375 0xE8D3A910 b323
Does nothing (it's a nullsub).
GET_HUD_COLOUR
void HUD::GET_HUD_COLOUR(int hudColorIndex, int* r, int* g, int* b, int* a) // 0x7C9C91AB74A0360F 0x63F66A0B b323
HUD colors and their values: pastebin.com/d9aHPbXN
SET_SCRIPT_VARIABLE_HUD_COLOUR
void HUD::SET_SCRIPT_VARIABLE_HUD_COLOUR(int r, int g, int b, int a) // 0xD68A5FF8A3A89874 0x0E41E45C b323
Sets the color of HUD_COLOUR_SCRIPT_VARIABLE
_SET_SCRIPT_VARIABLE_2_HUD_COLOUR
void HUD::_SET_SCRIPT_VARIABLE_2_HUD_COLOUR(int r, int g, int b, int a) // 0x16A304E6CB2BFAB9 0x6BE3ACA8 b323
Sets the color of HUD_COLOUR_SCRIPT_VARIABLE_2
REPLACE_HUD_COLOUR
void HUD::REPLACE_HUD_COLOUR(int hudColorIndex, int hudColorIndex2) // 0x1CCC708F0F850613 0x3B216749 b323
HUD colors and their values: pastebin.com/d9aHPbXN -------------------------------------------------- makes hudColorIndex2 color into hudColorIndex color
REPLACE_HUD_COLOUR_WITH_RGBA
void HUD::REPLACE_HUD_COLOUR_WITH_RGBA(int hudColorIndex, int r, int g, int b, int a) // 0xF314CF4F0211894E 0xF6E7E92B b323
HUD colors and their values: pastebin.com/d9aHPbXN
_SET_ABILITY_BAR_VISIBILITY_IN_MULTIPLAYER
void HUD::_SET_ABILITY_BAR_VISIBILITY_IN_MULTIPLAYER(BOOL visible) // 0x1DFEDD15019315A9 b1493
_SET_ALLOW_ABILITY_BAR_IN_MULTIPLAYER
void HUD::_SET_ALLOW_ABILITY_BAR_IN_MULTIPLAYER(BOOL toggle) // 0x889329C80FE5963C b1868
FLASH_ABILITY_BAR
void HUD::FLASH_ABILITY_BAR(int millisecondsToFlash) // 0x02CFBA0C9E9275CE 0x3648960D b323
SET_ABILITY_BAR_VALUE
void HUD::SET_ABILITY_BAR_VALUE(float p0, float p1) // 0x9969599CCFF5D85E 0x24E53FD8 b323
FLASH_WANTED_DISPLAY
void HUD::FLASH_WANTED_DISPLAY(BOOL p0) // 0xA18AFB39081B6A1F 0x629F866B b323
_0xBA8D65C1C65702E5
void HUD::_0xBA8D65C1C65702E5(BOOL toggle) // 0xBA8D65C1C65702E5 0x58612465 b323
FORCE_*
GET_RENDERED_CHARACTER_HEIGHT
float HUD::GET_RENDERED_CHARACTER_HEIGHT(float size, int font) // 0xDB88A37483346780 0x3330175B b323
This gets the height of the FONT and not the total text. You need to get the number of lines your text uses, and get the height of a newline (I'm using a smaller value) to get the total text height. Old name: _GET_TEXT_SCALE_HEIGHT
SET_TEXT_SCALE
void HUD::SET_TEXT_SCALE(float scale, float size) // 0x07C837F9A01C34C9 0xB6E15B23 b323
Size range : 0F to 1.0F p0 is unknown and doesn't seem to have an effect, yet in the game scripts it changes to 1.0F sometimes.
SET_TEXT_COLOUR
void HUD::SET_TEXT_COLOUR(int red, int green, int blue, int alpha) // 0xBE6B23FFA53FB442 0xE54DD2C8 b323
colors you input not same as you think? A: for some reason its R B G A
SET_TEXT_CENTRE
void HUD::SET_TEXT_CENTRE(BOOL align) // 0xC02F4DBFB51D988B 0xE26D39A1 b323
SET_TEXT_RIGHT_JUSTIFY
void HUD::SET_TEXT_RIGHT_JUSTIFY(BOOL toggle) // 0x6B3C4650BC8BEE47 0x45B60520 b323
SET_TEXT_JUSTIFICATION
void HUD::SET_TEXT_JUSTIFICATION(int justifyType) // 0x4E096588B13FFECA 0x68CDFA60 b323
Types - 0: Center-Justify 1: Left-Justify 2: Right-Justify Right-Justify requires SET_TEXT_WRAP, otherwise it will draw to the far right of the screen
SET_TEXT_WRAP
void HUD::SET_TEXT_WRAP(float start, float end) // 0x63145D9C883A1A70 0x6F60AB54 b323
It sets the text in a specified box and wraps the text if it exceeds the boundries. Both values are for X axis. Useful when positioning text set to center or aligned to the right. start - left boundry on screen position (0.0 - 1.0) end - right boundry on screen position (0.0 - 1.0)
SET_TEXT_LEADING
void HUD::SET_TEXT_LEADING(int p0) // 0xA50ABC31E3CDFAFF 0x98CE21D4 b323
SET_TEXT_PROPORTIONAL
void HUD::SET_TEXT_PROPORTIONAL(BOOL p0) // 0x038C1F517D7FDCF8 0xF49D8A08 b323
This native does absolutely nothing, just a nullsub
SET_TEXT_FONT
void HUD::SET_TEXT_FONT(int fontType) // 0x66E0276CC5F6B9DA 0x80BC530D b323
fonts that mess up your text where made for number values/misc stuff
SET_TEXT_DROP_SHADOW
void HUD::SET_TEXT_DROP_SHADOW() // 0x1CA3E9EAC9D93E5E 0xE2A11511 b323
SET_TEXT_DROPSHADOW
void HUD::SET_TEXT_DROPSHADOW(int distance, int r, int g, int b, int a) // 0x465C84BC39F1C351 0xE6587517 b323
distance - shadow distance in pixels, both horizontal and vertical r, g, b, a - color
SET_TEXT_OUTLINE
void HUD::SET_TEXT_OUTLINE() // 0x2513DFB0FB8400FE 0xC753412F b323
SET_TEXT_EDGE
void HUD::SET_TEXT_EDGE(int p0, int r, int g, int b, int a) // 0x441603240D202FA6 0x3F1A5DAB b323
This native does absolutely nothing, just a nullsub
SET_TEXT_RENDER_ID
void HUD::SET_TEXT_RENDER_ID(int renderId) // 0x5F15302936E07111 0xC5C3B7F3 b323
GET_DEFAULT_SCRIPT_RENDERTARGET_RENDER_ID
int HUD::GET_DEFAULT_SCRIPT_RENDERTARGET_RENDER_ID() // 0x52F0982D7FD156B6 0x8188935F b323
This function is hard-coded to always return 1.
REGISTER_NAMED_RENDERTARGET
BOOL HUD::REGISTER_NAMED_RENDERTARGET(const char* name, BOOL p1) // 0x57D9C12635E25CE3 0xFAE5D6F0 b323
IS_NAMED_RENDERTARGET_REGISTERED
BOOL HUD::IS_NAMED_RENDERTARGET_REGISTERED(const char* name) // 0x78DCDC15C9F116B4 0x284057F5 b323
RELEASE_NAMED_RENDERTARGET
BOOL HUD::RELEASE_NAMED_RENDERTARGET(const char* name) // 0xE9F6FFE837354DD4 0xD3F6C892 b323
LINK_NAMED_RENDERTARGET
void HUD::LINK_NAMED_RENDERTARGET(Hash modelHash) // 0xF6C09E276AEB3F2D 0x6844C4B9 b323
GET_NAMED_RENDERTARGET_RENDER_ID
int HUD::GET_NAMED_RENDERTARGET_RENDER_ID(const char* name) // 0x1A6478B61C6BDC3B 0xF9D7A401 b323
IS_NAMED_RENDERTARGET_LINKED
BOOL HUD::IS_NAMED_RENDERTARGET_LINKED(Hash modelHash) // 0x113750538FA31298 0x8B52601F b323
CLEAR_HELP
void HUD::CLEAR_HELP(BOOL toggle) // 0x8DFCED7A656F8802 0xE6D85741 b323
IS_HELP_MESSAGE_ON_SCREEN
BOOL HUD::IS_HELP_MESSAGE_ON_SCREEN() // 0xDAD37F45428801AE 0x4B3C9CA9 b323
_0x214CD562A939246A
BOOL HUD::_0x214CD562A939246A() // 0x214CD562A939246A 0x812CBE0E b323
HAS_S*
IS_HELP_MESSAGE_BEING_DISPLAYED
BOOL HUD::IS_HELP_MESSAGE_BEING_DISPLAYED() // 0x4D79439A6B55AC67 0xA65F262A b323
IS_HELP_MESSAGE_FADING_OUT
BOOL HUD::IS_HELP_MESSAGE_FADING_OUT() // 0x327EDEEEAC55C369 0x3E50AE92 b323
_SET_HELP_MESSAGE_TEXT_STYLE
void HUD::_SET_HELP_MESSAGE_TEXT_STYLE(int style, int hudColor, int alpha, int p3, int p4) // 0xB9C362BABECDDC7A b463
GET_STANDARD_BLIP_ENUM_ID
BOOL HUD::GET_STANDARD_BLIP_ENUM_ID() // 0x4A9923385BDB9DAD 0x87871CE0 b323
This function is hard-coded to always return 1.
GET_WAYPOINT_BLIP_ENUM_ID
int HUD::GET_WAYPOINT_BLIP_ENUM_ID() // 0x186E5D252FA50E7D 0xB9827942 b323
GET_NUMBER_OF_ACTIVE_BLIPS
int HUD::GET_NUMBER_OF_ACTIVE_BLIPS() // 0x9A3FF3DE163034E8 0x144020FA b323
GET_NEXT_BLIP_INFO_ID
Blip HUD::GET_NEXT_BLIP_INFO_ID(int blipSprite) // 0x14F96AA50D6FBEA7 0x9356E92F b323
GET_FIRST_BLIP_INFO_ID
Blip HUD::GET_FIRST_BLIP_INFO_ID(int blipSprite) // 0x1BEDE233E6CD2A1F 0x64C0273D b323
_GET_CLOSEST_BLIP_OF_TYPE
Blip HUD::_GET_CLOSEST_BLIP_OF_TYPE(int blipSprite) // 0xD484BF71050CA1EE b1180
GET_BLIP_INFO_ID_COORD
Vector3 HUD::GET_BLIP_INFO_ID_COORD(Blip blip) // 0xFA7C7F0AADF25D09 0xB7374A66 b323
GET_BLIP_INFO_ID_DISPLAY
int HUD::GET_BLIP_INFO_ID_DISPLAY(Blip blip) // 0x1E314167F701DC3B 0xD0FC19F4 b323
GET_BLIP_INFO_ID_TYPE
int HUD::GET_BLIP_INFO_ID_TYPE(Blip blip) // 0xBE9B0959FFD0779B 0x501D7B4E b323
Returns a value based on what the blip is attached to 1 - Vehicle 2 - Ped 3 - Object 4 - Coord 5 - unk 6 - Pickup 7 - Radius
GET_BLIP_INFO_ID_ENTITY_INDEX
Entity HUD::GET_BLIP_INFO_ID_ENTITY_INDEX(Blip blip) // 0x4BA4E2553AFEDC2C 0xA068C40B b323
GET_BLIP_INFO_ID_PICKUP_INDEX
Pickup HUD::GET_BLIP_INFO_ID_PICKUP_INDEX(Blip blip) // 0x9B6786E4C03DD382 0x86913D37 b323
This function is hard-coded to always return 0.
GET_BLIP_FROM_ENTITY
Blip HUD::GET_BLIP_FROM_ENTITY(Entity entity) // 0xBC8DBDCA2436F7E8 0x005A2A47 b323
Returns the Blip handle of given Entity.
ADD_BLIP_FOR_RADIUS
Blip HUD::ADD_BLIP_FOR_RADIUS(float posX, float posY, float posZ, float radius) // 0x46818D79B1F7499A 0x4626756C b323
_ADD_BLIP_FOR_AREA
Blip HUD::_ADD_BLIP_FOR_AREA(float x, float y, float z, float width, float height) // 0xCE5D0E5E315DB238 b463
Adds a rectangular blip for the specified coordinates/area. It is recommended to use SET_BLIP_ROTATION and SET_BLIP_COLOUR to make the blip not rotate along with the camera. By default, the blip will show as a _regular_ blip with the specified color/sprite if it is outside of the minimap view. Example image: minimap https://w.wew.wtf/pdcjig.png big map https://w.wew.wtf/zgcjcm.png (Native name is _likely_ to actually be ADD_BLIP_FOR_AREA, but due to the usual reasons this can't be confirmed)
ADD_BLIP_FOR_ENTITY
Blip HUD::ADD_BLIP_FOR_ENTITY(Entity entity) // 0x5CDE92C702A8FCE7 0x30822554 b323
Returns red ( default ) blip attached to entity. Example: Blip blip; //Put this outside your case or option blip = HUD::ADD_BLIP_FOR_ENTITY(YourPedOrBodyguardName); HUD::SET_BLIP_AS_FRIENDLY(blip, true);
ADD_BLIP_FOR_PICKUP
Blip HUD::ADD_BLIP_FOR_PICKUP(Pickup pickup) // 0xBE339365C863BD36 0x16693C3A b323
ADD_BLIP_FOR_COORD
Blip HUD::ADD_BLIP_FOR_COORD(float x, float y, float z) // 0x5A039BB0BCA604B6 0xC6F43D0E b323
Creates an orange ( default ) Blip-object. Returns a Blip-object which can then be modified.
TRIGGER_SONAR_BLIP
void HUD::TRIGGER_SONAR_BLIP(float posX, float posY, float posZ, float radius, int p4) // 0x72DD432F3CDFC0EE 0xBF25E7B2 b323
ALLOW_SONAR_BLIPS
void HUD::ALLOW_SONAR_BLIPS(BOOL toggle) // 0x60734CC207C9833C 0xE7E1E32B b323
SET_BLIP_COORDS
void HUD::SET_BLIP_COORDS(Blip blip, float posX, float posY, float posZ) // 0xAE2AF67E9D9AF65D 0x680A34D4 b323
GET_BLIP_COORDS
Vector3 HUD::GET_BLIP_COORDS(Blip blip) // 0x586AFE3FF72D996E 0xEF6FF47B b323
SET_BLIP_SPRITE
void HUD::SET_BLIP_SPRITE(Blip blip, int spriteId) // 0xDF735600A4696DAF 0x8DBBB0B9 b323
Sets the displayed sprite for a specific blip.. You may have your own list, but since dev-c didn't show it I was bored and started looking through scripts and functions to get a presumable almost positive list of a majority of blip IDs h t t p://pastebin.com/Bpj9Sfft Blips Images + IDs: gtaxscripting.blogspot.com/2016/05/gta-v-blips-id-and-image.html
GET_BLIP_SPRITE
int HUD::GET_BLIP_SPRITE(Blip blip) // 0x1FC877464A04FC4F 0x72FF2E73 b323
Blips Images + IDs: gtaxscripting.blogspot.com/2016/05/gta-v-blips-id-and-image.html
_0x9FCB3CBFB3EAD69A
void HUD::_0x9FCB3CBFB3EAD69A(int p0, float p1) // 0x9FCB3CBFB3EAD69A b1734
SET_C*
_0xB7B873520C84C118
void HUD::_0xB7B873520C84C118() // 0xB7B873520C84C118 b1734
SET_C*
SET_BLIP_NAME_FROM_TEXT_FILE
void HUD::SET_BLIP_NAME_FROM_TEXT_FILE(Blip blip, const char* gxtEntry) // 0xEAA0FFE120D92784 0xAC8A5461 b323
Doesn't work if the label text of gxtEntry is >= 80.
SET_BLIP_NAME_TO_PLAYER_NAME
void HUD::SET_BLIP_NAME_TO_PLAYER_NAME(Blip blip, Player player) // 0x127DE7B20C60A6A3 0x03A0B8F9 b323
SET_BLIP_ALPHA
void HUD::SET_BLIP_ALPHA(Blip blip, int alpha) // 0x45FF974EEE1C8734 0xA791FCCD b323
Sets alpha-channel for blip color. Example: Blip blip = HUD::ADD_BLIP_FOR_ENTITY(entity); HUD::SET_BLIP_COLOUR(blip , 3); HUD::SET_BLIP_ALPHA(blip , 64);
GET_BLIP_ALPHA
int HUD::GET_BLIP_ALPHA(Blip blip) // 0x970F608F0EE6C885 0x297AF6C8 b323
SET_BLIP_FADE
void HUD::SET_BLIP_FADE(Blip blip, int opacity, int duration) // 0x2AEE8F8390D2298C 0xA5999031 b323
_0x2C173AE2BDB9385E
int HUD::_0x2C173AE2BDB9385E(Blip blip) // 0x2C173AE2BDB9385E b463
GET_BLIP_* Seems to always return 0 from what I can tell. I've tried a lot of different blip related natives and it always seems to return 0. Decompiled scripts always pass a blip handle as p0.
SET_BLIP_ROTATION
void HUD::SET_BLIP_ROTATION(Blip blip, int rotation) // 0xF87683CDF73C3F6E 0x6B8F44FE b323
After some testing, looks like you need to use CEIL() on the rotation (vehicle/ped heading) before using it there.
_SET_BLIP_SQUARED_ROTATION
void HUD::_SET_BLIP_SQUARED_ROTATION(Blip blip, float heading) // 0xA8B6AFDAC320AC87 b877
Does not require whole number/integer rotations.
_0x003E92BA477F9D7F
int HUD::_0x003E92BA477F9D7F(Blip blip) // 0x003E92BA477F9D7F b2060
SET_BLIP_FLASH_TIMER
void HUD::SET_BLIP_FLASH_TIMER(Blip blip, int duration) // 0xD3CD6FD297AE87CC 0x8D5DF611 b323
Adds up after viewing multiple R* scripts. I believe that the duration is in miliseconds.
SET_BLIP_FLASH_INTERVAL
void HUD::SET_BLIP_FLASH_INTERVAL(Blip blip, Any p1) // 0xAA51DB313C010A7E 0xEAF67377 b323
SET_BLIP_COLOUR
void HUD::SET_BLIP_COLOUR(Blip blip, int color) // 0x03D7FB09E75D6B7E 0xBB3C5A41 b323
https://gtaforums.com/topic/864881-all-blip-color-ids-pictured/
SET_BLIP_SECONDARY_COLOUR
void HUD::SET_BLIP_SECONDARY_COLOUR(Blip blip, int r, int g, int b) // 0x14892474891E09EB 0xC6384D32 b323
GET_BLIP_COLOUR
int HUD::GET_BLIP_COLOUR(Blip blip) // 0xDF729E8D20CF7327 0xDD6A1E54 b323
GET_BLIP_HUD_COLOUR
int HUD::GET_BLIP_HUD_COLOUR(Blip blip) // 0x729B5F1EFBC0AAEE 0xE88B4BC2 b323
IS_BLIP_SHORT_RANGE
BOOL HUD::IS_BLIP_SHORT_RANGE(Blip blip) // 0xDA5F8727EB75B926 0x1226765A b323
IS_BLIP_ON_MINIMAP
BOOL HUD::IS_BLIP_ON_MINIMAP(Blip blip) // 0xE41CA53051197A27 0x258CBA3A b323
DOES_BLIP_HAVE_GPS_ROUTE
BOOL HUD::DOES_BLIP_HAVE_GPS_ROUTE(Blip blip) // 0xDD2238F57B977751 0x3E47F357 b323
SET_BLIP_HIDDEN_ON_LEGEND
void HUD::SET_BLIP_HIDDEN_ON_LEGEND(Blip blip, BOOL toggle) // 0x54318C915D27E4CE 0x43996428 b323
SET_BLIP_HIGH_DETAIL
void HUD::SET_BLIP_HIGH_DETAIL(Blip blip, BOOL toggle) // 0xE2590BC29220CEBB 0xD5842BFF b323
SET_BLIP_AS_MISSION_CREATOR_BLIP
void HUD::SET_BLIP_AS_MISSION_CREATOR_BLIP(Blip blip, BOOL toggle) // 0x24AC0137444F9FD5 0x802FB686 b323
IS_MISSION_CREATOR_BLIP
BOOL HUD::IS_MISSION_CREATOR_BLIP(Blip blip) // 0x26F49BF3381D933D 0x24ACC4E9 b323
GET_NEW_SELECTED_MISSION_CREATOR_BLIP
Blip HUD::GET_NEW_SELECTED_MISSION_CREATOR_BLIP() // 0x5C90988E7C8E1AF4 0xFFD7476C b323
IS_HOVERING_OVER_MISSION_CREATOR_BLIP
BOOL HUD::IS_HOVERING_OVER_MISSION_CREATOR_BLIP() // 0x4167EFE0527D706E 0xC5EB849A b323
SHOW_START_MISSION_INSTRUCTIONAL_BUTTON
void HUD::SHOW_START_MISSION_INSTRUCTIONAL_BUTTON(BOOL p0) // 0xF1A6C18B35BCADE6 0xA2CAAB4F b323
_0x2916A928514C9827
void HUD::_0x2916A928514C9827() // 0x2916A928514C9827 b573
_0xB552929B85FC27EC
void HUD::_0xB552929B85FC27EC(Any p0, Any p1) // 0xB552929B85FC27EC b573
SET_BLIP_FLASHES
void HUD::SET_BLIP_FLASHES(Blip blip, BOOL toggle) // 0xB14552383D39CE3E 0xC0047F15 b323
SET_BLIP_FLASHES_ALTERNATE
void HUD::SET_BLIP_FLASHES_ALTERNATE(Blip blip, BOOL toggle) // 0x2E8D9498C56DD0D1 0x1A81202B b323
IS_BLIP_FLASHING
BOOL HUD::IS_BLIP_FLASHING(Blip blip) // 0xA5E41FD83AD6CEF0 0x52E111D7 b323
SET_BLIP_AS_SHORT_RANGE
void HUD::SET_BLIP_AS_SHORT_RANGE(Blip blip, BOOL toggle) // 0xBE8BE4FE60E27B72 0x5C67725E b323
Sets whether or not the specified blip should only be displayed when nearby, or on the minimap.
SET_BLIP_SCALE
void HUD::SET_BLIP_SCALE(Blip blip, float scale) // 0xD38744167B2FA257 0x1E6EC434 b323
_SET_BLIP_SCALE_TRANSFORMATION
void HUD::_SET_BLIP_SCALE_TRANSFORMATION(Blip blip, float xScale, float yScale) // 0xCD6524439909C979 b1734
See https://imgur.com/a/lLkEsMN
SET_BLIP_PRIORITY
void HUD::SET_BLIP_PRIORITY(Blip blip, int priority) // 0xAE9FC9EF6A9FAC79 0xCE87DA6F b323
See this topic for more details : gtaforums.com/topic/717612-v-scriptnative-documentation-and-research/page-35?p=1069477935
SET_BLIP_DISPLAY
void HUD::SET_BLIP_DISPLAY(Blip blip, int displayId) // 0x9029B2F3DA924928 0x2B521F91 b323
Display Id behaviours: 0 = Doesn't show up, ever, anywhere. 1 = Doesn't show up, ever, anywhere. 2 = Shows on both main map and minimap. (Selectable on map) 3 = Shows on main map only. (Selectable on map) 4 = Shows on main map only. (Selectable on map) 5 = Shows on minimap only. 6 = Shows on both main map and minimap. (Selectable on map) 7 = Doesn't show up, ever, anywhere. 8 = Shows on both main map and minimap. (Not selectable on map) 9 = Shows on minimap only. 10 = Shows on both main map and minimap. (Not selectable on map) Anything higher than 10 seems to be exactly the same as 10.
SET_BLIP_CATEGORY
void HUD::SET_BLIP_CATEGORY(Blip blip, int index) // 0x234CDD44D996FD9A 0xEF72F533 b323
Example: https://i.imgur.com/skY6vAJ.png Index: 1 = No distance shown in legend 2 = Distance shown in legend 7 = "Other Players" category, also shows distance in legend 10 = "Property" category 11 = "Owned Property" category Any other value behaves like index = 1, index wraps around after 255 Blips with categories 7, 10 or 11 will all show under the specific categories listing in the map legend, regardless of sprite or name. Legend entries: 7 = Other Players (BLIP_OTHPLYR) 10 = Property (BLIP_PROPCAT) 11 = Owned Property (BLIP_APARTCAT) Category needs to be `7` in order for blip names to show on the expanded minimap when using DISPLAY_PLAYER_NAME_TAGS_ON_BLIPS.
REMOVE_BLIP
void HUD::REMOVE_BLIP(Blip* blip) // 0x86A652570E5F25DD 0xD8C3C1CD b323
In the C++ SDK, this seems not to work-- the blip isn't removed immediately. I use it for saving cars. E.g.: Ped pped = PLAYER::PLAYER_PED_ID(); Vehicle v = PED::GET_VEHICLE_PED_IS_USING(pped); Blip b = HUD::ADD_BLIP_FOR_ENTITY(v); works fine. But later attempting to delete it with: Blip b = HUD::GET_BLIP_FROM_ENTITY(v); if (HUD::DOES_BLIP_EXIST(b)) HUD::REMOVE_BLIP(&b); doesn't work. And yes, doesn't work without the DOES_BLIP_EXIST check either. Also, if you attach multiple blips to the same thing (say, a vehicle), and that thing disappears, the blips randomly attach to other things (in my case, a vehicle). Thus for me, HUD::REMOVE_BLIP(&b) only works if there's one blip, (in my case) the vehicle is marked as no longer needed, you drive away from it and it eventually despawns, AND there is only one blip attached to it. I never intentionally attach multiple blips but if the user saves the car, this adds a blip. Then if they delete it, it is supposed to remove the blip, but it doesn't. Then they can immediately save it again, causing another blip to re-appear. ------------- Passing the address of the variable instead of the value works for me. e.g. int blip = HUD::ADD_BLIP_FOR_ENTITY(ped); HUD::REMOVE_BLIP(&blip); Remove blip will currently crash your game, just artificially remove the blip by setting the sprite to a id that is 'invisible'. -- It crashes my game.
SET_BLIP_AS_FRIENDLY
void HUD::SET_BLIP_AS_FRIENDLY(Blip blip, BOOL toggle) // 0x6F6F290102C02AB4 0xF290CFD8 b323
false for enemy true for friendly
PULSE_BLIP
void HUD::PULSE_BLIP(Blip blip) // 0x742D6FD43115AF73 0x44253855 b323
SHOW_NUMBER_ON_BLIP
void HUD::SHOW_NUMBER_ON_BLIP(Blip blip, int number) // 0xA3C0B359DCB848B6 0x7BFC66C6 b323
HIDE_NUMBER_ON_BLIP
void HUD::HIDE_NUMBER_ON_BLIP(Blip blip) // 0x532CFF637EF80148 0x0B6D610D b323
SHOW_HEIGHT_ON_BLIP
void HUD::SHOW_HEIGHT_ON_BLIP(Blip blip, BOOL toggle) // 0x75A16C3DA34F1245 0x1D99F676 b323
SHOW_TICK_ON_BLIP
void HUD::SHOW_TICK_ON_BLIP(Blip blip, BOOL toggle) // 0x74513EA3E505181E 0x3DCF0092 b323
Adds a green checkmark on top of a blip.
SHOW_HEADING_INDICATOR_ON_BLIP
void HUD::SHOW_HEADING_INDICATOR_ON_BLIP(Blip blip, BOOL toggle) // 0x5FBCA48327B914DF 0xD1C3D71B b323
Adds the GTA: Online player heading indicator to a blip.
SHOW_OUTLINE_INDICATOR_ON_BLIP
void HUD::SHOW_OUTLINE_INDICATOR_ON_BLIP(Blip blip, BOOL toggle) // 0xB81656BC81FE24D1 0x8DE82C15 b323
Highlights a blip by a cyan color circle. Color can be changed with SET_BLIP_SECONDARY_COLOUR
SHOW_FRIEND_INDICATOR_ON_BLIP
void HUD::SHOW_FRIEND_INDICATOR_ON_BLIP(Blip blip, BOOL toggle) // 0x23C3EB807312F01A 0x4C8F02B4 b323
Highlights a blip by a half cyan circle on the right side of the blip. https://i.imgur.com/FrV9M4e.png .Indicating that that player is a friend (in GTA:O). This color can not be changed. To toggle the left side (crew member indicator) of the half circle around the blip, use: `SHOW_CREW_INDICATOR_ON_BLIP`
SHOW_CREW_INDICATOR_ON_BLIP
void HUD::SHOW_CREW_INDICATOR_ON_BLIP(Blip blip, BOOL toggle) // 0xDCFB5D4DB8BF367E 0xABBE1E45 b323
Enables or disables the blue half circle https://i.imgur.com/iZes9Ec.png around the specified blip on the left side of the blip. This is used to indicate that the player is in your crew in GTA:O. Color is changeable by using `SET_BLIP_SECONDARY_COLOUR`.
_SET_BLIP_DISPLAY_INDICATOR_ON_BLIP
void HUD::_SET_BLIP_DISPLAY_INDICATOR_ON_BLIP(Blip blip, BOOL toggle) // 0xC4278F70131BAA6D 0x6AA6A1CC b323
Must be toggled before being queued for animation
_0x4B5B620C9B59ED34
void HUD::_0x4B5B620C9B59ED34(Any p0, Any p1) // 0x4B5B620C9B59ED34 b678
_0x2C9F302398E13141
void HUD::_0x2C9F302398E13141(Any p0, Any p1) // 0x2C9F302398E13141 b1103
_SET_BLIP_SHRINK
void HUD::_SET_BLIP_SHRINK(Blip blip, BOOL toggle) // 0x2B6D467DAB714E8D 0xC575F0BC b323
Makes a blip go small when off the minimap. SET_BLIP_AS_*
SET_RADIUS_BLIP_EDGE
void HUD::SET_RADIUS_BLIP_EDGE(Blip blip, BOOL toggle) // 0x25615540D894B814 0x40E25DB8 b323
Enabling this on a radius blip will make it outline only. See https://cdn.discordapp.com/attachments/553235301632573459/575132227935928330/unknown.png
DOES_BLIP_EXIST
BOOL HUD::DOES_BLIP_EXIST(Blip blip) // 0xA6DB27D19ECBB7DA 0xAE92DD96 b323
SET_WAYPOINT_OFF
void HUD::SET_WAYPOINT_OFF() // 0xA7E4E2D361C2627F 0xB3496E1B b323
This native removes the current waypoint from the map. Example: C#: Function.Call(Hash.SET_WAYPOINT_OFF); C++: HUD::SET_WAYPOINT_OFF();
_DELETE_WAYPOINT
void HUD::_DELETE_WAYPOINT() // 0xD8E694757BCEA8E9 0x62BABF2C b323
REFRESH_WAYPOINT
void HUD::REFRESH_WAYPOINT() // 0x81FA173F170560D1 0xB395D753 b323
IS_WAYPOINT_ACTIVE
BOOL HUD::IS_WAYPOINT_ACTIVE() // 0x1DD1F58F493F1DA5 0x5E4DF47B b323
SET_NEW_WAYPOINT
void HUD::SET_NEW_WAYPOINT(float x, float y) // 0xFE43368D2AA4F2FC 0x8444E1F0 b323
SET_BLIP_BRIGHT
void HUD::SET_BLIP_BRIGHT(Blip blip, BOOL toggle) // 0xB203913733F27884 0x72BEE6DF b323
SET_BLIP_SHOW_CONE
void HUD::SET_BLIP_SHOW_CONE(Blip blip, BOOL toggle, Any p2) // 0x13127EC3665E8EE1 0xFF545AD8 b323
_0xC594B315EDF2D4AF
void HUD::_0xC594B315EDF2D4AF(Ped ped) // 0xC594B315EDF2D4AF 0x41B0D022 b323
Interesting fact: A hash collision for this is RESET_JETPACK_MODEL_SETTINGS
_0xF83D0FEBE75E62C9
void HUD::_0xF83D0FEBE75E62C9(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8) // 0xF83D0FEBE75E62C9 b1290
_0x35A3CD97B2C0A6D2
void HUD::_0x35A3CD97B2C0A6D2(Blip blip) // 0x35A3CD97B2C0A6D2 b1290
_0x8410C5E0CD847B9D
void HUD::_0x8410C5E0CD847B9D() // 0x8410C5E0CD847B9D b1290
SET_MINIMAP_COMPONENT
Any HUD::SET_MINIMAP_COMPONENT(int componentId, BOOL toggle, int overrideColor) // 0x75A9A10948D1DEA6 0x419DCDC4 b323
This native is used to colorize certain map components like the army base at the top of the map. p2 appears to be always -1. If p2 is -1 then native wouldn't change the color. See https://gfycat.com/SkinnyPinkChupacabra
_SET_MINIMAP_SONAR_ENABLED
void HUD::_SET_MINIMAP_SONAR_ENABLED(BOOL toggle) // 0x6B50FC8749632EC1 b2189
_SHOW_SIGNIN_UI
void HUD::_SHOW_SIGNIN_UI() // 0x60E892BA4F5BDCA4 b323
GET_MAIN_PLAYER_BLIP_ID
Blip HUD::GET_MAIN_PLAYER_BLIP_ID() // 0xDCD4EC3F419D02FA 0xAB93F020 b323
_0x41350B4FC28E3941
void HUD::_0x41350B4FC28E3941(BOOL p0) // 0x41350B4FC28E3941 b323
HIDE_LOADING_ON_FADE_THIS_FRAME
void HUD::HIDE_LOADING_ON_FADE_THIS_FRAME() // 0x4B0311D3CDC4648F 0x35087963 b323
SET_RADAR_AS_INTERIOR_THIS_FRAME
void HUD::SET_RADAR_AS_INTERIOR_THIS_FRAME(Hash interior, float x, float y, int z, int zoom) // 0x59E727A1C9D3E31A 0x6F2626E1 b323
List of interior hashes: pastebin.com/1FUyXNqY Not for every interior zoom > 0 available.
_0x504DFE62A1692296
void HUD::_0x504DFE62A1692296(BOOL toggle) // 0x504DFE62A1692296 b1493
SET_RADAR_AS_EXTERIOR_THIS_FRAME
void HUD::SET_RADAR_AS_EXTERIOR_THIS_FRAME() // 0xE81B7D2A3DAB2D81 0x39ABB10E b323
_SET_PLAYER_BLIP_POSITION_THIS_FRAME
void HUD::_SET_PLAYER_BLIP_POSITION_THIS_FRAME(float x, float y) // 0x77E2DD177910E1CF 0x54E75C7D b323
Sets the position of the arrow icon representing the player on both the minimap and world map. Too bad this wouldn't work over the network (obviously not). Could spoof where we would be.
_0xA17784FCA9548D15
void HUD::_0xA17784FCA9548D15(Any p0, Any p1, Any p2) // 0xA17784FCA9548D15 b877
_IS_MINIMAP_IN_INTERIOR
BOOL HUD::_IS_MINIMAP_IN_INTERIOR() // 0x9049FE339D5F6F6F 0x199DED14 b323
HIDE_MINIMAP_EXTERIOR_MAP_THIS_FRAME
void HUD::HIDE_MINIMAP_EXTERIOR_MAP_THIS_FRAME() // 0x5FBAE526203990C9 0x1A4318F7 b323
HIDE_MINIMAP_INTERIOR_MAP_THIS_FRAME
void HUD::HIDE_MINIMAP_INTERIOR_MAP_THIS_FRAME() // 0x20FE7FDFEEAD38C0 0xCE36E3FE b323
_SET_TOGGLE_MINIMAP_HEIST_ISLAND
void HUD::_SET_TOGGLE_MINIMAP_HEIST_ISLAND(BOOL toggle) // 0x5E1460624D194A38 b2189
Toggles the Cayo Perico map.
DONT_TILT_MINIMAP_THIS_FRAME
void HUD::DONT_TILT_MINIMAP_THIS_FRAME() // 0x6D14BFDC33B34F55 0x334EFD46 b323
When calling this, the current frame will have the players "arrow icon" be focused on the dead center of the radar.
_0x55F5A5F07134DE60
void HUD::_0x55F5A5F07134DE60() // 0x55F5A5F07134DE60 b1180
SET_WIDESCREEN_FORMAT
void HUD::SET_WIDESCREEN_FORMAT(Any p0) // 0xC3B07BA00A83B0F1 0xF016E08F b323
DISPLAY_AREA_NAME
void HUD::DISPLAY_AREA_NAME(BOOL toggle) // 0x276B6CE369C33678 0x489FDD41 b323
DISPLAY_CASH
void HUD::DISPLAY_CASH(BOOL toggle) // 0x96DEC8D5430208B7 0x0049DF83 b323
"DISPLAY_CASH(false);" makes the cash amount render on the screen when appropriate "DISPLAY_CASH(true);" disables cash amount rendering
_0x170F541E1CADD1DE
void HUD::_0x170F541E1CADD1DE(BOOL p0) // 0x170F541E1CADD1DE b323
Related to displaying cash on the HUD Always called before HUD::_SET_SINGLEPLAYER_HUD_CASH in decompiled scripts
_SET_PLAYER_CASH_CHANGE
void HUD::_SET_PLAYER_CASH_CHANGE(int cash, int bank) // 0x0772DF77852C2E30 b323
Displays cash change notifications on HUD.
DISPLAY_AMMO_THIS_FRAME
void HUD::DISPLAY_AMMO_THIS_FRAME(BOOL display) // 0xA5E78BA2B1331C55 0x60693CEE b323
DISPLAY_SNIPER_SCOPE_THIS_FRAME
void HUD::DISPLAY_SNIPER_SCOPE_THIS_FRAME() // 0x73115226F4814E62 0xBC6C73CB b323
Displays the crosshair for this frame.
HIDE_HUD_AND_RADAR_THIS_FRAME
void HUD::HIDE_HUD_AND_RADAR_THIS_FRAME() // 0x719FF505F097FD20 0xB75D4AD2 b323
I think this works, but seems to prohibit switching to other weapons (or accessing the weapon wheel)
_0xE67C6DFD386EA5E7
void HUD::_0xE67C6DFD386EA5E7(BOOL p0) // 0xE67C6DFD386EA5E7 0x5476B9FD b323
SET_MULTIPLAYER_WALLET_CASH
void HUD::SET_MULTIPLAYER_WALLET_CASH() // 0xC2D15BEF167E27BC 0xF4F3C796 b323
REMOVE_MULTIPLAYER_WALLET_CASH
void HUD::REMOVE_MULTIPLAYER_WALLET_CASH() // 0x95CF81BD06EE1887 0x7BFFE82F b323
SET_MULTIPLAYER_BANK_CASH
void HUD::SET_MULTIPLAYER_BANK_CASH() // 0xDD21B55DF695CD0A 0x2C842D03 b323
REMOVE_MULTIPLAYER_BANK_CASH
void HUD::REMOVE_MULTIPLAYER_BANK_CASH() // 0xC7C6789AA1CFEDD0 0x728B4EF4 b323
SET_MULTIPLAYER_HUD_CASH
void HUD::SET_MULTIPLAYER_HUD_CASH(int p0, int p1) // 0xFD1D220394BCB824 0xA8DB435E b323
This native does absolutely nothing, just a nullsub
REMOVE_MULTIPLAYER_HUD_CASH
void HUD::REMOVE_MULTIPLAYER_HUD_CASH() // 0x968F270E39141ECA 0x07BF4A7D b323
Removes multiplayer cash hud each frame
HIDE_HELP_TEXT_THIS_FRAME
void HUD::HIDE_HELP_TEXT_THIS_FRAME() // 0xD46923FC481CA285 0xF3807BED b323
_0x801879A9B4F4B2FB
BOOL HUD::_0x801879A9B4F4B2FB() // 0x801879A9B4F4B2FB b372
IS_*
DISPLAY_HELP_TEXT_THIS_FRAME
void HUD::DISPLAY_HELP_TEXT_THIS_FRAME(const char* message, BOOL p1) // 0x960C9FF8F616E41C 0x18E3360A b323
The messages are localized strings. Examples: "No_bus_money" "Enter_bus" "Tour_help" "LETTERS_HELP2" "Dummy" **The bool appears to always be false (if it even is a bool, as it's represented by a zero)** -------- p1 doesn't seem to make a difference, regardless of the state it's in. picture of where on the screen this is displayed?
HUD_FORCE_WEAPON_WHEEL
void HUD::HUD_FORCE_WEAPON_WHEEL(BOOL show) // 0xEB354E5376BC81A7 0x1EFFB02A b323
Forces the weapon wheel to show/hide.
_HUD_DISPLAY_LOADING_SCREEN_TIPS
void HUD::_HUD_DISPLAY_LOADING_SCREEN_TIPS() // 0x488043841BBE156F b1011
Displays loading screen tips, requires `_0x56C8B608CFD49854` to be called beforehand.
_HUD_WEAPON_WHEEL_IGNORE_SELECTION
void HUD::_HUD_WEAPON_WHEEL_IGNORE_SELECTION() // 0x0AFC4AF510774B47 0xB26FED2B b323
Calling this each frame, stops the player from receiving a weapon via the weapon wheel.
_HUD_WEAPON_WHEEL_GET_SELECTED_HASH
Hash HUD::_HUD_WEAPON_WHEEL_GET_SELECTED_HASH() // 0xA48931185F0536FE 0x22E9F555 b323
Returns the weapon hash to the selected/highlighted weapon in the wheel
HUD_SET_WEAPON_WHEEL_TOP_SLOT
void HUD::HUD_SET_WEAPON_WHEEL_TOP_SLOT(Hash weaponHash) // 0x72C1056D678BB7D8 0x83B608A0 b323
Set the active slotIndex in the wheel weapon to the slot associated with the provided Weapon hash
_HUD_WEAPON_WHEEL_GET_SLOT_HASH
Hash HUD::_HUD_WEAPON_WHEEL_GET_SLOT_HASH(int weaponTypeIndex) // 0xA13E93403F26C812 b323
Returns the weapon hash active in a specific weapon wheel slotList
_HUD_WEAPON_WHEEL_IGNORE_CONTROL_INPUT
void HUD::_HUD_WEAPON_WHEEL_IGNORE_CONTROL_INPUT(BOOL toggle) // 0x14C9FDCC41F81F63 0xE70D1F43 b323
Sets a global that disables many weapon input tasks (shooting, aiming, etc.). Does not work with vehicle weapons, only used in selector.ysc
SET_GPS_FLAGS
void HUD::SET_GPS_FLAGS(int p0, float p1) // 0x5B440763A4C8D15B 0x60539BAB b323
Only the script that originally called SET_GPS_FLAGS can set them again. Another script cannot set the flags, until the first script that called it has called CLEAR_GPS_FLAGS. Doesn't seem like the flags are actually read by the game at all.
CLEAR_GPS_FLAGS
void HUD::CLEAR_GPS_FLAGS() // 0x21986729D6A3A830 0x056AFCE6 b323
Clears the GPS flags. Only the script that originally called SET_GPS_FLAGS can clear them. Doesn't seem like the flags are actually read by the game at all.
SET_RACE_TRACK_RENDER
void HUD::SET_RACE_TRACK_RENDER(BOOL toggle) // 0x1EAC5F91BCBC5073 0xFB9BABF5 b323
CLEAR_GPS_RACE_TRACK
void HUD::CLEAR_GPS_RACE_TRACK() // 0x7AA5B4CE533C858B 0x40C59829 b323
Does the same as SET_RACE_TRACK_RENDER(false);
START_GPS_CUSTOM_ROUTE
void HUD::START_GPS_CUSTOM_ROUTE(int hudColor, BOOL displayOnFoot, BOOL followPlayer) // 0xDB34E8D56FC13B08 0x7F93799B b323
Starts a new GPS custom-route, allowing you to plot lines on the map. Lines are drawn directly between points. The GPS custom route works like the GPS multi route, except it does not follow roads. Example result: https://i.imgur.com/BDm5pzt.png hudColor: The HUD color of the GPS path. displayOnFoot: Draws the path regardless if the player is in a vehicle or not. followPlayer: Draw the path partially between the previous and next point based on the players position between them. When false, the GPS appears to not disappear after the last leg is completed.
ADD_POINT_TO_GPS_CUSTOM_ROUTE
void HUD::ADD_POINT_TO_GPS_CUSTOM_ROUTE(float x, float y, float z) // 0x311438A071DD9B1A 0xEEBDFE55 b323
SET_GPS_CUSTOM_ROUTE_RENDER
void HUD::SET_GPS_CUSTOM_ROUTE_RENDER(BOOL toggle, int radarThickness, int mapThickness) // 0x900086F371220B6F 0xDA0AF00E b323
radarThickness: The width of the GPS route on the radar mapThickness: The width of the GPS route on the map
CLEAR_GPS_CUSTOM_ROUTE
void HUD::CLEAR_GPS_CUSTOM_ROUTE() // 0xE6DE0561D9232A64 0xCF2E3E24 b323
START_GPS_MULTI_ROUTE
void HUD::START_GPS_MULTI_ROUTE(int hudColor, BOOL routeFromPlayer, BOOL displayOnFoot) // 0x3D3D15AF7BCAAF83 0xC3DCBEDB b323
Starts a new GPS multi-route, allowing you to create custom GPS paths. GPS functions like the waypoint, except it can contain multiple points it's forced to go through. Once the player has passed a point, the GPS will no longer force its path through it. Works independently from the player-placed waypoint and blip routes. Example result: https://i.imgur.com/ZZHQatX.png hudColor: The HUD color of the GPS path. routeFromPlayer: Makes the GPS draw a path from the player to the next point, rather than the original path from the previous point. displayOnFoot: Draws the GPS path regardless if the player is in a vehicle or not.
ADD_POINT_TO_GPS_MULTI_ROUTE
void HUD::ADD_POINT_TO_GPS_MULTI_ROUTE(float x, float y, float z) // 0xA905192A6781C41B 0xFE485135 b323
SET_GPS_MULTI_ROUTE_RENDER
void HUD::SET_GPS_MULTI_ROUTE_RENDER(BOOL toggle) // 0x3DDA37128DD1ACA8 0xE87CBE4C b323
CLEAR_GPS_MULTI_ROUTE
void HUD::CLEAR_GPS_MULTI_ROUTE() // 0x67EEDEA1B9BAFD94 0x0D9969E4 b323
Does the same as SET_GPS_MULTI_ROUTE_RENDER(false);
CLEAR_GPS_PLAYER_WAYPOINT
void HUD::CLEAR_GPS_PLAYER_WAYPOINT() // 0xFF4FB7C8CDFA3DA7 0x0B9C7FC2 b323
SET_GPS_FLASHES
void HUD::SET_GPS_FLASHES(BOOL toggle) // 0x320D0E0D936A0E9B 0xE991F733 b323
_0x7B21E0BB01E8224A
void HUD::_0x7B21E0BB01E8224A(Any p0) // 0x7B21E0BB01E8224A b323
FLASH_MINIMAP_DISPLAY
void HUD::FLASH_MINIMAP_DISPLAY() // 0xF2DD778C22B15BDA 0xB8359952 b323
adds a short flash to the Radar/Minimap Usage: UI.FLASH_MINIMAP_DISPLAY
FLASH_MINIMAP_DISPLAY_WITH_COLOR
void HUD::FLASH_MINIMAP_DISPLAY_WITH_COLOR(int hudColorIndex) // 0x6B1DE27EE78E6A19 0x79A6CAF6 b323
TOGGLE_STEALTH_RADAR
void HUD::TOGGLE_STEALTH_RADAR(BOOL toggle) // 0x6AFDFB93754950C7 0xC68D47C4 b323
SET_MINIMAP_IN_SPECTATOR_MODE
void HUD::SET_MINIMAP_IN_SPECTATOR_MODE(BOOL toggle, Ped ped) // 0x1A5CD7752DD28CD3 0xD5BFCADB b323
SET_MISSION_NAME
void HUD::SET_MISSION_NAME(BOOL p0, const char* name) // 0x5F28ECF5FC84772F 0x68DCAE10 b323
_SET_MISSION_NAME_2
void HUD::_SET_MISSION_NAME_2(BOOL p0, const char* name) // 0xE45087D85F468BC2 0x8D9A1734 b323
_0x817B86108EB94E51
void HUD::_0x817B86108EB94E51(BOOL p0, Any* p1, Any* p2, Any* p3, Any* p4, Any* p5, Any* p6, Any* p7, Any* p8) // 0x817B86108EB94E51 0xD2161E77 b323
HUD::_817B86108EB94E51(1, &g_189F36._f10CD1[0/*16*/], &g_189F36._f10CD1[1/*16*/], &g_189F36._f10CD1[2/*16*/], &g_189F36._f10CD1[3/*16*/], &g_189F36._f10CD1[4/*16*/], &g_189F36._f10CD1[5/*16*/], &g_189F36._f10CD1[6/*16*/], &g_189F36._f10CD1[7/*16*/]);
SET_MINIMAP_BLOCK_WAYPOINT
void HUD::SET_MINIMAP_BLOCK_WAYPOINT(BOOL toggle) // 0x58FADDED207897DC 0xA41C3B62 b323
SET_MINIMAP_IN_PROLOGUE
void HUD::SET_MINIMAP_IN_PROLOGUE(BOOL toggle) // 0x9133955F1A2DA957 0x02F5F1D1 b323
Toggles the North Yankton map
SET_MINIMAP_HIDE_FOW
void HUD::SET_MINIMAP_HIDE_FOW(BOOL toggle) // 0xF8DEE0A5600CBB93 0xD8D77733 b323
If true, the entire map will be revealed. FOW = Fog of War
GET_MINIMAP_FOW_DISCOVERY_RATIO
float HUD::GET_MINIMAP_FOW_DISCOVERY_RATIO() // 0xE0130B41D3CF4574 0xA4098ACC b323
GET_MINIMAP_FOW_COORDINATE_IS_REVEALED
BOOL HUD::GET_MINIMAP_FOW_COORDINATE_IS_REVEALED(float x, float y, float z) // 0x6E31B91145873922 0x65B705F6 b323
_0x62E849B7EB28E770
void HUD::_0x62E849B7EB28E770(BOOL p0) // 0x62E849B7EB28E770 b323
SET_MINIMAP_FOW_REVEAL_COORDINATE
void HUD::SET_MINIMAP_FOW_REVEAL_COORDINATE(float x, float y, float z) // 0x0923DBF87DFF735E 0xE010F081 b323
SET_MINIMAP_GOLF_COURSE
void HUD::SET_MINIMAP_GOLF_COURSE(int hole) // 0x71BDB63DBAF8DA59 0x5133A750 b323
Not much is known so far on what it does _exactly_. All I know for sure is that it draws the specified hole ID on the pause menu map as well as on the mini-map/radar. This native also seems to change some other things related to the pause menu map's behaviour, for example: you can no longer set waypoints, the pause menu map starts up in a 'zoomed in' state. This native does not need to be executed every tick. You need to center the minimap manually as well as change/lock it's zoom and angle in order for it to appear correctly on the minimap. You'll also need to use the `GOLF` scaleform in order to get the correct minmap border to show up. Use `0x35edd5b2e3ff01c0` to reset the map when you no longer want to display any golf holes (you still need to unlock zoom, position and angle of the radar manually after calling this).
SET_MINIMAP_GOLF_COURSE_OFF
void HUD::SET_MINIMAP_GOLF_COURSE_OFF() // 0x35EDD5B2E3FF01C0 0x20FD3E87 b323
LOCK_MINIMAP_ANGLE
void HUD::LOCK_MINIMAP_ANGLE(int angle) // 0x299FAEBB108AE05B 0xDEC733E4 b323
Locks the minimap to the specified angle in integer degrees. angle: The angle in whole degrees. If less than 0 or greater than 360, unlocks the angle.
UNLOCK_MINIMAP_ANGLE
void HUD::UNLOCK_MINIMAP_ANGLE() // 0x8183455E16C42E3A 0x742043F9 b323
LOCK_MINIMAP_POSITION
void HUD::LOCK_MINIMAP_POSITION(float x, float y) // 0x1279E861A329E73F 0xB9632A91 b323
Locks the minimap to the specified world position.
UNLOCK_MINIMAP_POSITION
void HUD::UNLOCK_MINIMAP_POSITION() // 0x3E93E06DB8EF1F30 0x5E8E6F54 b323
_SET_MINIMAP_ALTITUDE_INDICATOR_LEVEL
void HUD::_SET_MINIMAP_ALTITUDE_INDICATOR_LEVEL(float altitude, BOOL p1, Any p2) // 0xD201F3FF917A506D 0x0308EDF6 b323
Argument must be 0.0f or above 38.0f, or it will be ignored.
SET_HEALTH_HUD_DISPLAY_VALUES
void HUD::SET_HEALTH_HUD_DISPLAY_VALUES(int health, int capacity, BOOL wasAdded) // 0x3F5CC444DCAAA8F2 0x7FB6FB2A b323
SET_MAX_HEALTH_HUD_DISPLAY
void HUD::SET_MAX_HEALTH_HUD_DISPLAY(int maximumValue) // 0x975D66A0BC17064C 0xF07D8CEF b323
SET_MAX_ARMOUR_HUD_DISPLAY
void HUD::SET_MAX_ARMOUR_HUD_DISPLAY(int maximumValue) // 0x06A320535F5F0248 0x827F14DE b323
SET_BIGMAP_ACTIVE
void HUD::SET_BIGMAP_ACTIVE(BOOL toggleBigMap, BOOL showFullMap) // 0x231C8F89D0539D8F 0x08EB83D2 b323
Toggles the big minimap state like in GTA:Online.
IS_HUD_COMPONENT_ACTIVE
BOOL HUD::IS_HUD_COMPONENT_ACTIVE(int id) // 0xBC4C9EA5391ECC0D 0x6214631F b323
Full list of components below HUD = 0; HUD_WANTED_STARS = 1; HUD_WEAPON_ICON = 2; HUD_CASH = 3; HUD_MP_CASH = 4; HUD_MP_MESSAGE = 5; HUD_VEHICLE_NAME = 6; HUD_AREA_NAME = 7; HUD_VEHICLE_CLASS = 8; HUD_STREET_NAME = 9; HUD_HELP_TEXT = 10; HUD_FLOATING_HELP_TEXT_1 = 11; HUD_FLOATING_HELP_TEXT_2 = 12; HUD_CASH_CHANGE = 13; HUD_RETICLE = 14; HUD_SUBTITLE_TEXT = 15; HUD_RADIO_STATIONS = 16; HUD_SAVING_GAME = 17; HUD_GAME_STREAM = 18; HUD_WEAPON_WHEEL = 19; HUD_WEAPON_WHEEL_STATS = 20; MAX_HUD_COMPONENTS = 21; MAX_HUD_WEAPONS = 22; MAX_SCRIPTED_HUD_COMPONENTS = 141;
IS_SCRIPTED_HUD_COMPONENT_ACTIVE
BOOL HUD::IS_SCRIPTED_HUD_COMPONENT_ACTIVE(int id) // 0xDD100EB17A94FF65 0x2B86F382 b323
HIDE_SCRIPTED_HUD_COMPONENT_THIS_FRAME
void HUD::HIDE_SCRIPTED_HUD_COMPONENT_THIS_FRAME(int id) // 0xE374C498D8BADC14 0x31ABA127 b323
_SHOW_SCRIPTED_HUD_COMPONENT_THIS_FRAME
void HUD::_SHOW_SCRIPTED_HUD_COMPONENT_THIS_FRAME(int id) // 0x4F38DCA127DAAEA2 b1734
SHOW_*
IS_SCRIPTED_HUD_COMPONENT_HIDDEN_THIS_FRAME
BOOL HUD::IS_SCRIPTED_HUD_COMPONENT_HIDDEN_THIS_FRAME(int id) // 0x09C0403ED9A751C2 0xE8C8E535 b323
HIDE_HUD_COMPONENT_THIS_FRAME
void HUD::HIDE_HUD_COMPONENT_THIS_FRAME(int id) // 0x6806C51AD12B83B8 0xDB2D0762 b323
This function hides various HUD (Heads-up Display) components. Listed below are the integers and the corresponding HUD component. - 1 : WANTED_STARS - 2 : WEAPON_ICON - 3 : CASH - 4 : MP_CASH - 5 : MP_MESSAGE - 6 : VEHICLE_NAME - 7 : AREA_NAME - 8 : VEHICLE_CLASS - 9 : STREET_NAME - 10 : HELP_TEXT - 11 : FLOATING_HELP_TEXT_1 - 12 : FLOATING_HELP_TEXT_2 - 13 : CASH_CHANGE - 14 : RETICLE - 15 : SUBTITLE_TEXT - 16 : RADIO_STATIONS - 17 : SAVING_GAME - 18 : GAME_STREAM - 19 : WEAPON_WHEEL - 20 : WEAPON_WHEEL_STATS - 21 : HUD_COMPONENTS - 22 : HUD_WEAPONS These integers also work for the `SHOW_HUD_COMPONENT_THIS_FRAME` native, but instead shows the HUD Component.
SHOW_HUD_COMPONENT_THIS_FRAME
void HUD::SHOW_HUD_COMPONENT_THIS_FRAME(int id) // 0x0B4DF1FA60C0E664 0x95E1546E b323
This function hides various HUD (Heads-up Display) components. Listed below are the integers and the corresponding HUD component. - 1 : WANTED_STARS - 2 : WEAPON_ICON - 3 : CASH - 4 : MP_CASH - 5 : MP_MESSAGE - 6 : VEHICLE_NAME - 7 : AREA_NAME - 8 : VEHICLE_CLASS - 9 : STREET_NAME - 10 : HELP_TEXT - 11 : FLOATING_HELP_TEXT_1 - 12 : FLOATING_HELP_TEXT_2 - 13 : CASH_CHANGE - 14 : RETICLE - 15 : SUBTITLE_TEXT - 16 : RADIO_STATIONS - 17 : SAVING_GAME - 18 : GAME_STREAM - 19 : WEAPON_WHEEL - 20 : WEAPON_WHEEL_STATS - 21 : HUD_COMPONENTS - 22 : HUD_WEAPONS These integers also work for the `HIDE_HUD_COMPONENT_THIS_FRAME` native, but instead hides the HUD Component.
_HIDE_AREA_AND_VEHICLE_NAME_THIS_FRAME
void HUD::_HIDE_AREA_AND_VEHICLE_NAME_THIS_FRAME() // 0xA4DEDE28B1814289 0x52746FE1 b323
HIDE_*_THIS_FRAME Hides area and vehicle name HUD components for one frame.
RESET_RETICULE_VALUES
void HUD::RESET_RETICULE_VALUES() // 0x12782CE0A636E9F0 0xBE27AA3F b323
RESET_HUD_COMPONENT_VALUES
void HUD::RESET_HUD_COMPONENT_VALUES(int id) // 0x450930E616475D0D 0xD15B46DA b323
SET_HUD_COMPONENT_POSITION
void HUD::SET_HUD_COMPONENT_POSITION(int id, float x, float y) // 0xAABB1F56E2A17CED 0x2F3A0D15 b323
GET_HUD_COMPONENT_POSITION
Vector3 HUD::GET_HUD_COMPONENT_POSITION(int id) // 0x223CA69A8C4417FD 0x080DCED6 b323
CLEAR_REMINDER_MESSAGE
void HUD::CLEAR_REMINDER_MESSAGE() // 0xB57D8DD645CFA2CF 0x5BBCC934 b323
This native does absolutely nothing, just a nullsub
GET_HUD_SCREEN_POSITION_FROM_WORLD_POSITION
BOOL HUD::GET_HUD_SCREEN_POSITION_FROM_WORLD_POSITION(float worldX, float worldY, float worldZ, float* screenX, float* screenY) // 0xF9904D11F1ACBEC3 0xFE9A39F8 b323
World to relative screen coords, this world to screen will keep the text on screen. Was named _GET_SCREEN_COORD_FROM_WORLD_COORD, but this conflicts with 0x34E82F05DF2974F5. As that hash actually matches GET_SCREEN_COORD_FROM_WORLD_COORD that one supercedes and this one was renamed to _GET_2D_COORD_FROM_3D_COORD
OPEN_REPORTUGC_MENU
void HUD::OPEN_REPORTUGC_MENU() // 0x523A590C1A3CC0D3 0x10DE5150 b323
Shows a menu for reporting UGC content.
FORCE_CLOSE_REPORTUGC_MENU
void HUD::FORCE_CLOSE_REPORTUGC_MENU() // 0xEE4C0E6DBC6F2C6F 0x67649EE0 b323
IS_REPORTUGC_MENU_OPEN
BOOL HUD::IS_REPORTUGC_MENU_OPEN() // 0x9135584D09A3437E 0x9D2C94FA b323
IS_FLOATING_HELP_TEXT_ON_SCREEN
BOOL HUD::IS_FLOATING_HELP_TEXT_ON_SCREEN(int hudIndex) // 0x2432784ACA090DA4 0x45472FD5 b323
SET_FLOATING_HELP_TEXT_SCREEN_POSITION
void HUD::SET_FLOATING_HELP_TEXT_SCREEN_POSITION(int hudIndex, float x, float y) // 0x7679CC1BCEBE3D4C 0x198F32D7 b323
SET_FLOATING_HELP_TEXT_WORLD_POSITION
void HUD::SET_FLOATING_HELP_TEXT_WORLD_POSITION(int hudIndex, float x, float y, float z) // 0x784BA7E0ECEB4178 0x93045157 b323
SET_FLOATING_HELP_TEXT_TO_ENTITY
void HUD::SET_FLOATING_HELP_TEXT_TO_ENTITY(int hudIndex, Entity entity, float offsetX, float offsetY) // 0xB094BC1DB4018240 0x18B012B7 b323
SET_FLOATING_HELP_TEXT_STYLE
void HUD::SET_FLOATING_HELP_TEXT_STYLE(int hudIndex, int p1, int p2, int p3, int p4, int p5) // 0x788E7FD431BD67F1 0x97852A82 b323
CLEAR_FLOATING_HELP
void HUD::CLEAR_FLOATING_HELP(int hudIndex, BOOL p1) // 0x50085246ABD3FEFA 0xB181F88F b323
CREATE_MP_GAMER_TAG_WITH_CREW_COLOR
void HUD::CREATE_MP_GAMER_TAG_WITH_CREW_COLOR(Player player, const char* username, BOOL pointedClanTag, BOOL isRockstarClan, const char* clanTag, int clanFlag, int r, int g, int b) // 0x6DD05E9D83EFA4C9 0xC969F2D0 b323
clanFlag: takes a number 0-5
IS_MP_GAMER_TAG_MOVIE_ACTIVE
BOOL HUD::IS_MP_GAMER_TAG_MOVIE_ACTIVE() // 0x6E0EB3EB47C8D7AA 0xEFD2564A b323
CREATE_FAKE_MP_GAMER_TAG
int HUD::CREATE_FAKE_MP_GAMER_TAG(Ped ped, const char* username, BOOL pointedClanTag, BOOL isRockstarClan, const char* clanTag, int clanFlag) // 0xBFEFE3321A3F5015 0xF5CD2AA4 b323
clanFlag: takes a number 0-5
REMOVE_MP_GAMER_TAG
void HUD::REMOVE_MP_GAMER_TAG(int gamerTagId) // 0x31698AA80E0223F8 0x3D081FE4 b323
IS_MP_GAMER_TAG_ACTIVE
BOOL HUD::IS_MP_GAMER_TAG_ACTIVE(int gamerTagId) // 0x4E929E7A5796FD26 0x60118951 b323
IS_MP_GAMER_TAG_FREE
BOOL HUD::IS_MP_GAMER_TAG_FREE(int gamerTagId) // 0x595B5178E412E199 0x63959059 b323
SET_MP_GAMER_TAG_VISIBILITY
void HUD::SET_MP_GAMER_TAG_VISIBILITY(int gamerTagId, int component, BOOL toggle, Any p3) // 0x63BB75ABEDC1F6A0 0xD41DF479 b323
enum eMpGamerTagComponent { MP_TAG_GAMER_NAME, MP_TAG_CREW_TAG, MP_TAG_HEALTH_ARMOUR, MP_TAG_BIG_TEXT, MP_TAG_AUDIO_ICON, MP_TAG_USING_MENU, MP_TAG_PASSIVE_MODE, MP_TAG_WANTED_STARS, MP_TAG_DRIVER, MP_TAG_CO_DRIVER, MP_TAG_TAGGED, MP_TAG_GAMER_NAME_NEARBY, MP_TAG_ARROW, MP_TAG_PACKAGES, MP_TAG_INV_IF_PED_FOLLOWING, MP_TAG_RANK_TEXT, MP_TAG_TYPING, MP_TAG_BAG_LARGE, MP_TAG_ARROW, MP_TAG_GANG_CEO, MP_TAG_GANG_BIKER, MP_TAG_BIKER_ARROW, MP_TAG_MC_ROLE_PRESIDENT, MP_TAG_MC_ROLE_VICE_PRESIDENT, MP_TAG_MC_ROLE_ROAD_CAPTAIN, MP_TAG_MC_ROLE_SARGEANT, MP_TAG_MC_ROLE_ENFORCER, MP_TAG_MC_ROLE_PROSPECT, MP_TAG_TRANSMITTER, MP_TAG_BOMB };
_SET_MP_GAMER_TAG_ENABLED
void HUD::_SET_MP_GAMER_TAG_ENABLED(int gamerTagId, BOOL toggle) // 0xEE76FF7E6A0166B0 0x767DED29 b323
_SET_MP_GAMER_TAG_ICONS
void HUD::_SET_MP_GAMER_TAG_ICONS(int gamerTagId, BOOL toggle) // 0xA67F9C46D612B6F1 0xB01A5434 b323
Displays a bunch of icons above the players name, and level, and their name twice
_SET_MP_GAMER_HEALTH_BAR_DISPLAY
void HUD::_SET_MP_GAMER_HEALTH_BAR_DISPLAY(int gamerTagId, BOOL toggle) // 0xD29EC58C2F6B5014 b1365
_SET_MP_GAMER_HEALTH_BAR_MAX
void HUD::_SET_MP_GAMER_HEALTH_BAR_MAX(int gamerTagId, int value, int maximumValue) // 0x1563FE35E9928E67 b1365
SET_MP_GAMER_TAG_COLOUR
void HUD::SET_MP_GAMER_TAG_COLOUR(int gamerTagId, int component, int hudColorIndex) // 0x613ED644950626AE 0x7E3AA40A b323
Sets a gamer tag's component colour gamerTagId is obtained using for example CREATE_FAKE_MP_GAMER_TAG Ranges from 0 to 255. 0 is grey health bar, ~50 yellow, 200 purple.
SET_MP_GAMER_TAG_HEALTH_BAR_COLOUR
void HUD::SET_MP_GAMER_TAG_HEALTH_BAR_COLOUR(int gamerTagId, int hudColorIndex) // 0x3158C77A7E888AB4 0x5777EC77 b323
Ranges from 0 to 255. 0 is grey health bar, ~50 yellow, 200 purple. Should be enabled as flag (2). Has 0 opacity by default. - This was _SET_MP_GAMER_TAG_HEALTH_BAR_COLOR, -> Rockstar use the EU spelling of 'color' so I hashed the same name with COLOUR and it came back as the correct hash, so it has been corrected above.
SET_MP_GAMER_TAG_ALPHA
void HUD::SET_MP_GAMER_TAG_ALPHA(int gamerTagId, int component, int alpha) // 0xD48FE545CD46F857 0xF4418611 b323
Sets flag's sprite transparency. 0-255.
SET_MP_GAMER_TAG_WANTED_LEVEL
void HUD::SET_MP_GAMER_TAG_WANTED_LEVEL(int gamerTagId, int wantedlvl) // 0xCF228E2AA03099C3 0x0EBB003F b323
displays wanted star above head
_SET_MP_GAMER_TAG_UNK
void HUD::_SET_MP_GAMER_TAG_UNK(int gamerTagId, int p1) // 0x9C16459B2324B2CF b877
SET_MP_GAMER_TAG_NAME
void HUD::SET_MP_GAMER_TAG_NAME(int gamerTagId, const char* string) // 0xDEA2B8283BAA3944 0x627A559B b323
_IS_VALID_MP_GAMER_TAG_MOVIE
BOOL HUD::_IS_VALID_MP_GAMER_TAG_MOVIE(int gamerTagId) // 0xEB709A36958ABE0D 0xF11414C4 b323
IS_*
SET_MP_GAMER_TAG_BIG_TEXT
void HUD::SET_MP_GAMER_TAG_BIG_TEXT(int gamerTagId, const char* string) // 0x7B7723747CCB55B6 0x939218AB b323
GET_CURRENT_WEBPAGE_ID
int HUD::GET_CURRENT_WEBPAGE_ID() // 0x01A358D9128B7A86 0xAB5B7C18 b323
GET_CURRENT_WEBSITE_ID
int HUD::GET_CURRENT_WEBSITE_ID() // 0x97D47996FC48CBAD 0x42A55B14 b323
GET_GLOBAL_ACTIONSCRIPT_FLAG
int HUD::GET_GLOBAL_ACTIONSCRIPT_FLAG(int flagIndex) // 0xE3B05614DCE1D014 0xD217EE7E b323
Returns the ActionScript flagValue. ActionScript flags are global flags that scaleforms use Flags found during testing 0: Returns 1 if the web_browser keyboard is open, otherwise 0 1: Returns 1 if the player has clicked back twice on the opening page, otherwise 0 (web_browser) 2: Returns how many links the player has clicked in the web_browser scaleform, returns 0 when the browser gets closed 9: Returns the current selection on the mobile phone scaleform There are 20 flags in total.
RESET_GLOBAL_ACTIONSCRIPT_FLAG
void HUD::RESET_GLOBAL_ACTIONSCRIPT_FLAG(int flagIndex) // 0xB99C4E4D9499DF29 0x4C4C10CF b323
_IS_WARNING_MESSAGE_ACTIVE_2
BOOL HUD::_IS_WARNING_MESSAGE_ACTIVE_2() // 0xAF42195A42C63BBA b323
IS_WARNING_MESSAGE_*
SET_WARNING_MESSAGE
void HUD::SET_WARNING_MESSAGE(const char* titleMsg, int flags, const char* promptMsg, BOOL p3, int p4, const char* p5, const char* p6, BOOL showBackground, Any p8) // 0x7B1776B3B53F8D74 0xBE699BDE b323
You can only use text entries. No custom text. Example: SET_WARNING_MESSAGE("t20", 3, "adder", false, -1, 0, 0, true);
SET_WARNING_MESSAGE_WITH_HEADER
void HUD::SET_WARNING_MESSAGE_WITH_HEADER(const char* entryHeader, const char* entryLine1, int instructionalKey, const char* entryLine2, BOOL p4, Any p5, Any* showBackground, Any* p7, BOOL p8, Any p9) // 0xDC38CC1E35B6A5D7 0x2DB9EAB5 b323
Shows a warning message on screen with a header. Note: You can only use text entries. No custom text. You can recreate this easily with scaleforms. Example: https://i.imgur.com/ITJt8bJ.png
SET_WARNING_MESSAGE_WITH_HEADER_AND_SUBSTRING_FLAGS
void HUD::SET_WARNING_MESSAGE_WITH_HEADER_AND_SUBSTRING_FLAGS(const char* entryHeader, const char* entryLine1, Any instructionalKey, const char* entryLine2, BOOL p4, Any p5, Any p6, Any* p7, Any* p8, BOOL p9, Any p10) // 0x701919482C74B5AB 0x749929D3 b323
You can only use text entries. No custom text.
_SET_WARNING_MESSAGE_WITH_HEADER_UNK
void HUD::_SET_WARNING_MESSAGE_WITH_HEADER_UNK(const char* entryHeader, const char* entryLine1, int flags, const char* entryLine2, BOOL p4, Any p5, Any* p6, Any* p7, BOOL showBg, Any p9, Any p10) // 0x38B55259C2E078ED b1493
_SET_WARNING_MESSAGE_WITH_ALERT
void HUD::_SET_WARNING_MESSAGE_WITH_ALERT(const char* labelTitle, const char* labelMessage, int p2, int p3, const char* labelMessage2, BOOL p5, int p6, int p7, const char* p8, const char* p9, BOOL background, int errorCode) // 0x15803FEC3B9A872B b573
labelTitle: Label of the alert's title. labelMsg: Label of the alert's message. p2: This is an enum, check the description for a list. p3: This is an enum, check the description for a list. labelMsg2: Label of another message line p5: usually 0 p6: usually -1 p7: usually 0 p8: unknown label p9: unknown label background: Set to anything other than 0 or false (even any string) and it will draw a background. Setting it to 0 or false will draw no background. errorCode: Error code, shown at the bottom left if set to value other than 0. instructionalKey enum list: Buttons = { Empty = 0, Select = 1, -- (RETURN) Ok = 2, -- (RETURN) Yes = 4, -- (RETURN) Back = 8, -- (ESC) Cancel = 16, -- (ESC) No = 32, -- (ESC) RetrySpace = 64, -- (SPACE) Restart = 128, -- (SPACE) Skip = 256, -- (SPACE) Quit = 512, -- (ESC) Adjust = 1024, -- (ARROWS) SpaceKey = 2048, -- (SPACE) Share = 4096, -- (SPACE) SignIn = 8192, -- (SPACE) Continue = 16384, -- (RETURN) AdjustLeftRight = 32768, -- (SCROLL L/R) AdjustUpDown = 65536, -- (SCROLL U/D) Overwrite = 131072, -- (SPACE) SocialClubSignup = 262144, -- (RETURN) Confirm = 524288, -- (RETURN) Queue = 1048576, -- (RETURN) RetryReturn = 2097152, -- (RETURN) BackEsc = 4194304, -- (ESC) SocialClub = 8388608, -- (RETURN) Spectate = 16777216, -- (SPACE) OkEsc = 33554432, -- (ESC) CancelTransfer = 67108864, -- (ESC) LoadingSpinner = 134217728, NoReturnToGTA = 268435456, -- (ESC) CancelEsc = 536870912, -- (ESC) } Alt = { Empty = 0, No = 1, -- (SPACE) Host = 2, -- (ESC) SearchForJob = 4, -- (RETURN) ReturnKey = 8, -- (TURN) Freemode = 16, -- (ESC) } Example: https://i.imgur.com/TvmNF4k.png
_GET_WARNING_MESSAGE_TITLE_HASH
Hash HUD::_GET_WARNING_MESSAGE_TITLE_HASH() // 0x81DF9ABA6C83DFF9 b1290
Has to do with the confirmation overlay (E.g. confirm exit)
_SET_WARNING_MESSAGE_LIST_ROW
BOOL HUD::_SET_WARNING_MESSAGE_LIST_ROW(int index, const char* name, int cash, int rp, int lvl, int colour) // 0x0C5A80A9E096D529 b323
Some sort of list displayed in a warning message. Yet unknown how to prevent repeating. Param names copied from the corresponding scaleform function "SET_LIST_ROW". Example: https://i.imgur.com/arKvOYx.png
_0xDAF87174BE7454FF
BOOL HUD::_0xDAF87174BE7454FF(Any p0) // 0xDAF87174BE7454FF b323
_REMOVE_WARNING_MESSAGE_LIST_ITEMS
void HUD::_REMOVE_WARNING_MESSAGE_LIST_ITEMS() // 0x6EF54AB721DC6242 b323
IS_WARNING_MESSAGE_ACTIVE
BOOL HUD::IS_WARNING_MESSAGE_ACTIVE() // 0xE18B138FABC53103 0x94C834AD b323
CLEAR_DYNAMIC_PAUSE_MENU_ERROR_MESSAGE
void HUD::CLEAR_DYNAMIC_PAUSE_MENU_ERROR_MESSAGE() // 0x7792424AA0EAC32E 0x2F9A309C b323
_RACE_GALLERY_FULLSCREEN
void HUD::_RACE_GALLERY_FULLSCREEN(BOOL toggle) // 0x5354C5BA2EA868A4 0xE4FD20D8 b323
If toggle is true, the map is shown in full screen If toggle is false, the map is shown in normal mode
_RACE_GALLERY_NEXT_BLIP_SPRITE
void HUD::_RACE_GALLERY_NEXT_BLIP_SPRITE(int spriteId) // 0x1EAE6DD17B7A5EFA 0x13E7A5A9 b323
Sets the sprite of the next BLIP_GALLERY blip, values used in the native scripts: 143 (ObjectiveBlue), 144 (ObjectiveGreen), 145 (ObjectiveRed), 146 (ObjectiveYellow).
_RACE_GALLERY_ADD_BLIP
Any HUD::_RACE_GALLERY_ADD_BLIP(float x, float y, float z) // 0x551DF99658DB6EE8 0x786CA0A2 b323
Add a BLIP_GALLERY at the specific coordinate. Used in fm_maintain_transition_players to display race track points.
_CLEAR_RACE_GALLERY_BLIPS
void HUD::_CLEAR_RACE_GALLERY_BLIPS() // 0x2708FC083123F9FF 0xCBEC9369 b323
FORCE_SONAR_BLIPS_THIS_FRAME
Any HUD::FORCE_SONAR_BLIPS_THIS_FRAME() // 0x1121BFA1A1A522A8 0x3F4AFB13 b323
Doesn't actually return anything.
_GET_NORTH_RADAR_BLIP
Blip HUD::_GET_NORTH_RADAR_BLIP() // 0x3F0CF9CB7E589B88 b463
DISPLAY_PLAYER_NAME_TAGS_ON_BLIPS
void HUD::DISPLAY_PLAYER_NAME_TAGS_ON_BLIPS(BOOL toggle) // 0x82CEDC33687E1F50 0x2F28F0A6 b323
Toggles whether or not name labels are shown on the expanded minimap next to player blips, like in GTA:O. Doesn't need to be called every frame. Preview: https://i.imgur.com/DfqKWfJ.png Make sure to call SET_BLIP_CATEGORY with index 7 for this to work on the desired blip.
_0x211C4EF450086857
void HUD::_0x211C4EF450086857() // 0x211C4EF450086857 0x801D0D86 b323
This native does absolutely nothing, just a nullsub
_0xBF4F34A85CA2970C
void HUD::_0xBF4F34A85CA2970C() // 0xBF4F34A85CA2970C 0x317775DF b323
ACTIVATE_FRONTEND_MENU
void HUD::ACTIVATE_FRONTEND_MENU(Hash menuhash, BOOL togglePause, int component) // 0xEF01D36B9C9D0C7B 0x01D83872 b323
Does stuff like this: gyazo.com/7fcb78ea3520e3dbc5b2c0c0f3712617 Example: int GetHash = GET_HASH_KEY("fe_menu_version_corona_lobby"); ACTIVATE_FRONTEND_MENU(GetHash, 0, -1); BOOL p1 is a toggle to define the game in pause. int p2 is unknown but -1 always works, not sure why though. [30/03/2017] ins1de : the int p2 is actually a component variable. When the pause menu is visible, it opens the tab related to it. Example : Function.Call(Hash.ACTIVATE_FRONTEND_MENU,-1171018317, 0, 42); Result : Opens the "Online" tab without pausing the menu, with -1 it opens the map.Below is a list of all known Frontend Menu Hashes. - FE_MENU_VERSION_SP_PAUSE - FE_MENU_VERSION_MP_PAUSE - FE_MENU_VERSION_CREATOR_PAUSE - FE_MENU_VERSION_CUTSCENE_PAUSE - FE_MENU_VERSION_SAVEGAME - FE_MENU_VERSION_PRE_LOBBY - FE_MENU_VERSION_LOBBY - FE_MENU_VERSION_MP_CHARACTER_SELECT - FE_MENU_VERSION_MP_CHARACTER_CREATION - FE_MENU_VERSION_EMPTY - FE_MENU_VERSION_EMPTY_NO_BACKGROUND - FE_MENU_VERSION_TEXT_SELECTION - FE_MENU_VERSION_CORONA - FE_MENU_VERSION_CORONA_LOBBY - FE_MENU_VERSION_CORONA_JOINED_PLAYERS - FE_MENU_VERSION_CORONA_INVITE_PLAYERS - FE_MENU_VERSION_CORONA_INVITE_FRIENDS - FE_MENU_VERSION_CORONA_INVITE_CREWS - FE_MENU_VERSION_CORONA_INVITE_MATCHED_PLAYERS - FE_MENU_VERSION_CORONA_INVITE_LAST_JOB_PLAYERS - FE_MENU_VERSION_CORONA_RACE - FE_MENU_VERSION_CORONA_BETTING - FE_MENU_VERSION_JOINING_SCREEN - FE_MENU_VERSION_LANDING_MENU - FE_MENU_VERSION_LANDING_KEYMAPPING_MENU
RESTART_FRONTEND_MENU
void HUD::RESTART_FRONTEND_MENU(Hash menuHash, int p1) // 0x10706DC6AD2D49C0 0xB07DAF98 b323
Before using this native click the native above and look at the decription. Example: int GetHash = Function.Call<int>(Hash.GET_HASH_KEY, "fe_menu_version_corona_lobby"); Function.Call(Hash.ACTIVATE_FRONTEND_MENU, GetHash, 0, -1); Function.Call(Hash.RESTART_FRONTEND_MENU(GetHash, -1); This native refreshes the frontend menu. p1 = Hash of Menu p2 = Unknown but always works with -1.
GET_CURRENT_FRONTEND_MENU_VERSION
Hash HUD::GET_CURRENT_FRONTEND_MENU_VERSION() // 0x2309595AD6145265 0x33D6868F b323
if (HUD::GET_CURRENT_FRONTEND_MENU_VERSION() == joaat("fe_menu_version_empty_no_background"))
SET_PAUSE_MENU_ACTIVE
void HUD::SET_PAUSE_MENU_ACTIVE(BOOL toggle) // 0xDF47FC56C71569CF 0x1DCD878E b323
DISABLE_FRONTEND_THIS_FRAME
void HUD::DISABLE_FRONTEND_THIS_FRAME() // 0x6D3465A73092F0E6 0xD86A029E b323
SUPPRESS_FRONTEND_RENDERING_THIS_FRAME
void HUD::SUPPRESS_FRONTEND_RENDERING_THIS_FRAME() // 0xBA751764F0821256 0x7F349900 b323
_ALLOW_PAUSE_MENU_WHEN_DEAD_THIS_FRAME
void HUD::_ALLOW_PAUSE_MENU_WHEN_DEAD_THIS_FRAME() // 0xCC3FDDED67BCFC63 0x630CD8EE b323
Allows opening the pause menu this frame, when the player is dead.
SET_FRONTEND_ACTIVE
void HUD::SET_FRONTEND_ACTIVE(BOOL active) // 0x745711A75AB09277 0x81E1AD32 b323
IS_PAUSE_MENU_ACTIVE
BOOL HUD::IS_PAUSE_MENU_ACTIVE() // 0xB0034A223497FFCB 0xD3600591 b323
_0x2F057596F2BD0061
BOOL HUD::_0x2F057596F2BD0061() // 0x2F057596F2BD0061 0xC85C4487 b323
Returns something related to the store. IS_S* IS_STORE_EXIT_PURCHASE_CAPABILITY_ACTIVATED ?
GET_PAUSE_MENU_STATE
int HUD::GET_PAUSE_MENU_STATE() // 0x272ACD84970869C5 0x92F50134 b323
Returns: 0 5 10 15 20 25 30 35
_0x5BFF36D6ED83E0AE
Vector3 HUD::_0x5BFF36D6ED83E0AE() // 0x5BFF36D6ED83E0AE b323
GET_PAUSE_MENU_*
IS_PAUSE_MENU_RESTARTING
BOOL HUD::IS_PAUSE_MENU_RESTARTING() // 0x1C491717107431C7 0x3C4CF4D9 b323
_LOG_DEBUG_INFO
void HUD::_LOG_DEBUG_INFO(const char* p0) // 0x2162C446DFDF38FD 0x2DFD35C7 b323
Not present in retail version of the game, actual definiton seems to be _LOG_DEBUG_INFO(const char* category, const char* debugText);
_0x77F16B447824DA6C
void HUD::_0x77F16B447824DA6C(Any p0) // 0x77F16B447824DA6C 0x0A89336C b323
_0xCDCA26E80FAECB8F
void HUD::_0xCDCA26E80FAECB8F() // 0xCDCA26E80FAECB8F 0xC84BE309 b323
_0x2DE6C5E2E996F178
void HUD::_0x2DE6C5E2E996F178(Any p0) // 0x2DE6C5E2E996F178 b372
PAUSE_MENU_ACTIVATE_CONTEXT
void HUD::PAUSE_MENU_ACTIVATE_CONTEXT(Hash contextHash) // 0xDD564BDD0472C936 0x9FE8FD5E b323
Activates the specified frontend menu context. pausemenu.xml defines some specific menu options using 'context'. Context is basically a 'condition'. The `*ALL*` part of the context means that whatever is being defined, will be active when any or all of those conditions after `*ALL*` are met. The `*NONE*` part of the context section means that whatever is being defined, will NOT be active if any or all of the conditions after `*NONE*` are met. This basically allows you to hide certain menu sections, or things like instructional buttons.
PAUSE_MENU_DEACTIVATE_CONTEXT
void HUD::PAUSE_MENU_DEACTIVATE_CONTEXT(Hash contextHash) // 0x444D8CF241EC25C5 0x0029046E b323
PAUSE_MENU_IS_CONTEXT_ACTIVE
BOOL HUD::PAUSE_MENU_IS_CONTEXT_ACTIVE(Hash contextHash) // 0x84698AB38D0C6636 0xC51BC42F b323
PAUSE_MENU_IS_CONTEXT_MENU_ACTIVE
Any HUD::PAUSE_MENU_IS_CONTEXT_MENU_ACTIVE() // 0x2A25ADC48F87841F 0x016D7AF9 b323
_0xDE03620F8703A9DF
Any HUD::_0xDE03620F8703A9DF() // 0xDE03620F8703A9DF b323
_0x359AF31A4B52F5ED
Any HUD::_0x359AF31A4B52F5ED() // 0x359AF31A4B52F5ED b323
_0x13C4B962653A5280
Any HUD::_0x13C4B962653A5280() // 0x13C4B962653A5280 b323
_0xC8E1071177A23BE5
BOOL HUD::_0xC8E1071177A23BE5(Any* p0, Any* p1, Any* p2) // 0xC8E1071177A23BE5 b323
_0x4895BDEA16E7C080
void HUD::_0x4895BDEA16E7C080(int p0) // 0x4895BDEA16E7C080 0x15B24768 b323
PAUSE_MENU_SET_BUSY_SPINNER
void HUD::PAUSE_MENU_SET_BUSY_SPINNER(BOOL p0, Any p1, Any p2) // 0xC78E239AC5B2DDB9 0x6C67131A b323
_0xF06EBB91A81E09E3
void HUD::_0xF06EBB91A81E09E3(BOOL p0) // 0xF06EBB91A81E09E3 0x11D09737 b323
IS_FRONTEND_READY_FOR_CONTROL
BOOL HUD::IS_FRONTEND_READY_FOR_CONTROL() // 0x3BAB9A4E4F2FF5C7 0xD3BF3ABD b323
TAKE_CONTROL_OF_FRONTEND
void HUD::TAKE_CONTROL_OF_FRONTEND() // 0xEC9264727EEC0F28 0xC06B763D b323
Disables frontend (works in custom frontends, not sure about regular pause menu) navigation keys on keyboard. Not sure about controller. Does not disable mouse controls. No need to call this every tick. To enable the keys again, use `0x14621BB1DF14E2B2`.
RELEASE_CONTROL_OF_FRONTEND
void HUD::RELEASE_CONTROL_OF_FRONTEND() // 0x14621BB1DF14E2B2 0xB9392CE7 b323
Enables frontend (works in custom frontends, not sure about regular pause menu) navigation keys on keyboard if they were disabled using the native below. To disable the keys, use `0xEC9264727EEC0F28`
_0x66E7CB63C97B7D20
Any HUD::_0x66E7CB63C97B7D20() // 0x66E7CB63C97B7D20 0x92DAFA78 b323
_0x593FEAE1F73392D4
Any HUD::_0x593FEAE1F73392D4() // 0x593FEAE1F73392D4 0x22CA9F2A b323
IS_NAVIGATING_MENU_CONTENT
Any HUD::IS_NAVIGATING_MENU_CONTENT() // 0x4E3CD0EF8A489541 0xDA7951A2 b323
_0xF284AC67940C6812
Any HUD::_0xF284AC67940C6812() // 0xF284AC67940C6812 0x7D95AFFF b323
_0x2E22FEFA0100275E
BOOL HUD::_0x2E22FEFA0100275E() // 0x2E22FEFA0100275E 0x96863460 b323
Returns true when the menu state(?) changed this frame. HAS_*? _GET_MENU_STATE_CHANGED_THIS_FRAME?
_0x0CF54F20DE43879C
void HUD::_0x0CF54F20DE43879C(Any p0) // 0x0CF54F20DE43879C b323
_GET_PAUSE_MENU_SELECTION
void HUD::_GET_PAUSE_MENU_SELECTION(int* lastItemMenuId, int* selectedItemUniqueId) // 0x36C1451A88A09630 0x8543AAC8 b323
_GET_PAUSE_MENU_SELECTION_DATA
void HUD::_GET_PAUSE_MENU_SELECTION_DATA(int* lastItemMenuId, int* selectedItemMenuId, int* selectedItemUniqueId) // 0x7E17BE53E1AAABAF 0x6025AA2F b323
lastItemMenuId: this is the menuID of the last selected item minus 1000 (lastItem.menuID - 1000) selectedItemMenuId: same as lastItemMenuId except for the currently selected menu item selectedItemUniqueId: this is uniqueID of the currently selected menu item when the pausemenu is closed: lastItemMenuId = -1 selectedItemMenuId = -1 selectedItemUniqueId = 0 when the header gains focus: lastItemMenuId updates as normal or 0 if the pausemenu was just opened selectedItemMenuId becomes a unique id for the pausemenu page that focus was taken from (?) or 0 if the pausemenu was just opened selectedItemUniqueId = -1 when focus is moved from the header to a pausemenu page: lastItemMenuId becomes a unique id for the pausemenu page that focus was moved to (?) selectedItemMenuId = -1 selectedItemUniqueId updates as normal
_0xA238192F33110615
BOOL HUD::_0xA238192F33110615(int* p0, int* p1, int* p2) // 0xA238192F33110615 0x46794EB2 b323
GET_MENU_PED_INT_STAT
BOOL HUD::GET_MENU_PED_INT_STAT(Any p0, Any* p1) // 0xEF4CED81CEBEDC6D 0x4370999E b323
_0xCA6B2F7CE32AB653
BOOL HUD::_0xCA6B2F7CE32AB653(Any p0, Any* p1, Any p2) // 0xCA6B2F7CE32AB653 b323
GET_MENU_PED_MASKED_INT_STAT
BOOL HUD::GET_MENU_PED_MASKED_INT_STAT(Any p0, Any* p1, Any p2, Any p3) // 0x90A6526CF0381030 0xD6CC4766 b323
_0x24A49BEAF468DC90
BOOL HUD::_0x24A49BEAF468DC90(Any p0, Any* p1, Any p2, Any p3, Any p4) // 0x24A49BEAF468DC90 b323
GET_MENU_PED_FLOAT_STAT
BOOL HUD::GET_MENU_PED_FLOAT_STAT(Any p0, float* p1) // 0x5FBD7095FE7AE57F 0x51972B04 b323
_0x8F08017F9D7C47BD
BOOL HUD::_0x8F08017F9D7C47BD(Any p0, Any* p1, Any p2) // 0x8F08017F9D7C47BD b323
GET_MENU_PED_BOOL_STAT
BOOL HUD::GET_MENU_PED_BOOL_STAT(Hash p0, Any* p1) // 0x052991E59076E4E4 0xD43BB56D b323
p0 was always 0xAE2602A3.
CLEAR_PED_IN_PAUSE_MENU
void HUD::CLEAR_PED_IN_PAUSE_MENU() // 0x5E62BE5DC58E9E06 0x28058ACF b323
GIVE_PED_TO_PAUSE_MENU
void HUD::GIVE_PED_TO_PAUSE_MENU(Ped ped, int p1) // 0xAC0BFBDC3BE00E14 0x2AD2C9CE b323
p1 is either 1 or 2 in the PC scripts.
SET_PAUSE_MENU_PED_LIGHTING
void HUD::SET_PAUSE_MENU_PED_LIGHTING(BOOL state) // 0x3CA6050692BC61B0 0x127310EB b323
Toggles the light state for the pause menu ped in frontend menus. This is used by R* in combination with `SET_PAUSE_MENU_PED_SLEEP_STATE` to toggle the "offline" or "online" state in the "friends" tab of the pause menu in GTA Online. Example: Lights On: https://vespura.com/hi/i/2019-04-01_16-09_540ee_1015.png Lights Off: https://vespura.com/hi/i/2019-04-01_16-10_8b5e7_1016.png
SET_PAUSE_MENU_PED_SLEEP_STATE
void HUD::SET_PAUSE_MENU_PED_SLEEP_STATE(BOOL state) // 0xECF128344E9FF9F1 0x8F45D327 b323
Toggles the pause menu ped sleep state for frontend menus. Example: https://vespura.com/hi/i/2019-04-01_15-51_8ed38_1014.gif `state` 0 will make the ped slowly fall asleep, 1 will slowly wake the ped up.
OPEN_ONLINE_POLICIES_MENU
void HUD::OPEN_ONLINE_POLICIES_MENU() // 0x805D7CBB36FD6C4C 0x19FCBBB2 b323
_0xF13FE2A80C05C561
BOOL HUD::_0xF13FE2A80C05C561() // 0xF13FE2A80C05C561 0x850690FF b323
IS_ONLINE_POLICIES_MENU_ACTIVE
BOOL HUD::IS_ONLINE_POLICIES_MENU_ACTIVE() // 0x6F72CD94F7B5B68C 0x9D4934F4 b323
Returns the same as IS_SOCIAL_CLUB_ACTIVE
OPEN_SOCIAL_CLUB_MENU
void HUD::OPEN_SOCIAL_CLUB_MENU() // 0x75D3691713C3B05A 0x57218529 b323
Uses the `SOCIAL_CLUB2` scaleform.
CLOSE_SOCIAL_CLUB_MENU
void HUD::CLOSE_SOCIAL_CLUB_MENU() // 0xD2B32BE3FC1626C6 0x5F86AA39 b323
SET_SOCIAL_CLUB_TOUR
void HUD::SET_SOCIAL_CLUB_TOUR(const char* name) // 0x9E778248D6685FE0 0x7AD67C95 b323
HUD::SET_SOCIAL_CLUB_TOUR("Gallery"); HUD::SET_SOCIAL_CLUB_TOUR("Missions"); HUD::SET_SOCIAL_CLUB_TOUR("General"); HUD::SET_SOCIAL_CLUB_TOUR("Playlists");
IS_SOCIAL_CLUB_ACTIVE
BOOL HUD::IS_SOCIAL_CLUB_ACTIVE() // 0xC406BE343FC4B9AF 0xD4DA14EF b323
_0x1185A8087587322C
void HUD::_0x1185A8087587322C(BOOL p0) // 0x1185A8087587322C b323
SET_TEXT_??? - Used in golf and golf_mp
_FORCE_CLOSE_TEXT_INPUT_BOX
void HUD::_FORCE_CLOSE_TEXT_INPUT_BOX() // 0x8817605C2BA76200 b323
_0x577599CCED639CA2
void HUD::_0x577599CCED639CA2(Any p0) // 0x577599CCED639CA2 b505
_OVERRIDE_MULTIPLAYER_CHAT_PREFIX
void HUD::_OVERRIDE_MULTIPLAYER_CHAT_PREFIX(Hash gxtEntryHash) // 0x6A1738B4323FE2D9 b573
_IS_MULTIPLAYER_CHAT_ACTIVE
BOOL HUD::_IS_MULTIPLAYER_CHAT_ACTIVE() // 0xB118AF58B5F332A1 b323
Returns whether or not the text chat (MULTIPLAYER_CHAT Scaleform component) is active.
_CLOSE_MULTIPLAYER_CHAT
void HUD::_CLOSE_MULTIPLAYER_CHAT() // 0x1AC8F4AD40E22127 b323
_0x7C226D5346D4D10A
void HUD::_0x7C226D5346D4D10A(Any p0) // 0x7C226D5346D4D10A b372
_OVERRIDE_MULTIPLAYER_CHAT_COLOUR
void HUD::_OVERRIDE_MULTIPLAYER_CHAT_COLOUR(int p0, int hudColor) // 0xF47E567B3630DD12 b678
_SET_TEXT_CHAT_UNK
void HUD::_SET_TEXT_CHAT_UNK(BOOL p0) // 0x1DB21A44B09E8BA3 b323
Sets an unknown boolean value in the text chat.
FLAG_PLAYER_CONTEXT_IN_TOURNAMENT
void HUD::FLAG_PLAYER_CONTEXT_IN_TOURNAMENT(BOOL toggle) // 0xCEF214315D276FD1 0xFF06772A b323
SET_PED_HAS_AI_BLIP
void HUD::SET_PED_HAS_AI_BLIP(Ped ped, BOOL hasCone) // 0xD30C50DF888D58B5 0x96C4C4DD b323
This native turns on the AI blip on the specified ped. It also disappears automatically when the ped is too far or if the ped is dead. You don't need to control it with other natives. See gtaforums.com/topic/884370-native-research-ai-blips for further information.
_SET_PED_HAS_AI_BLIP_WITH_COLOR
void HUD::_SET_PED_HAS_AI_BLIP_WITH_COLOR(Ped ped, BOOL hasCone, int color) // 0xB13DCB4C6FAAD238 b505
color: see SET_BLIP_COLOUR
DOES_PED_HAVE_AI_BLIP
BOOL HUD::DOES_PED_HAVE_AI_BLIP(Ped ped) // 0x15B8ECF844EE67ED 0x3BE1257F b323
SET_PED_AI_BLIP_GANG_ID
void HUD::SET_PED_AI_BLIP_GANG_ID(Ped ped, int gangId) // 0xE52B8E7F85D39A08 0xD8E31B1A b323
SET_PED_AI_BLIP_HAS_CONE
void HUD::SET_PED_AI_BLIP_HAS_CONE(Ped ped, BOOL toggle) // 0x3EED80DFF7325CAA 0x872C2CFB b323
SET_PED_AI_BLIP_FORCED_ON
void HUD::SET_PED_AI_BLIP_FORCED_ON(Ped ped, BOOL toggle) // 0x0C4BBF625CA98C4E 0xFFDF46F0 b323
SET_PED_AI_BLIP_NOTICE_RANGE
void HUD::SET_PED_AI_BLIP_NOTICE_RANGE(Ped ped, float range) // 0x97C65887D4B37FA9 0xF9DC2AF7 b323
_SET_PED_AI_BLIP_SPRITE
void HUD::_SET_PED_AI_BLIP_SPRITE(Ped ped, int spriteId) // 0xFCFACD0DB9D7A57D b877
_GET_AI_BLIP_2
Blip HUD::_GET_AI_BLIP_2(Ped ped) // 0x7CD934010E115C2C 0x06349065 b323
_GET_AI_BLIP
Blip HUD::_GET_AI_BLIP(Ped ped) // 0x56176892826A4FE8 0xCA52CF43 b323
Returns the current AI BLIP for the specified ped
_HAS_DIRECTOR_MODE_BEEN_TRIGGERED
BOOL HUD::_HAS_DIRECTOR_MODE_BEEN_TRIGGERED() // 0xA277800A9EAE340E b323
HAS_*
_SET_DIRECTOR_MODE_CLEAR_TRIGGERED_FLAG
void HUD::_SET_DIRECTOR_MODE_CLEAR_TRIGGERED_FLAG() // 0x2632482FD6B9AB87 b323
SET_*
_SET_PLAYER_IS_IN_DIRECTOR_MODE
void HUD::_SET_PLAYER_IS_IN_DIRECTOR_MODE(BOOL toggle) // 0x808519373FD336A3 b323
If toggle is true, hides special ability bar / character name in the pause menu If toggle is false, shows special ability bar / character name in the pause menu SET_PLAYER_*
_0x04655F9D075D0AE5
void HUD::_0x04655F9D075D0AE5(BOOL toggle) // 0x04655F9D075D0AE5 b323
SET_*
_0x243296A510B562B6
void HUD::_0x243296A510B562B6() // 0x243296A510B562B6 b2060
INTERIOR
_GET_INTERIOR_HEADING
float INTERIOR::_GET_INTERIOR_HEADING(Interior interior) // 0xF49B58631D9E22D9 b1493
GET_INTERIOR_*
_GET_INTERIOR_INFO
void INTERIOR::_GET_INTERIOR_INFO(Interior interior, Vector3* position, Hash* nameHash) // 0x252BDC06B73FA6EA b1290
GET_INTERIOR_*
GET_INTERIOR_GROUP_ID
int INTERIOR::GET_INTERIOR_GROUP_ID(Interior interior) // 0xE4A84ABF135EF91A 0x09D6376F b323
Returns the group ID of the specified interior. For example, regular interiors have group 0, subway interiors have group 1. There are a few other groups too.
GET_OFFSET_FROM_INTERIOR_IN_WORLD_COORDS
Vector3 INTERIOR::GET_OFFSET_FROM_INTERIOR_IN_WORLD_COORDS(Interior interior, float x, float y, float z) // 0x9E3B3E6D66F6E22F 0x7D8F26A1 b323
IS_INTERIOR_SCENE
BOOL INTERIOR::IS_INTERIOR_SCENE() // 0xBC72B5D7A1CBD54D 0x55226C13 b323
IS_VALID_INTERIOR
BOOL INTERIOR::IS_VALID_INTERIOR(Interior interior) // 0x26B0E73D7EAAF4D3 0x39C0B635 b323
CLEAR_ROOM_FOR_ENTITY
void INTERIOR::CLEAR_ROOM_FOR_ENTITY(Entity entity) // 0xB365FC0C4E27FFA7 0x7DDADB92 b323
FORCE_ROOM_FOR_ENTITY
void INTERIOR::FORCE_ROOM_FOR_ENTITY(Entity entity, Interior interior, Hash roomHashKey) // 0x52923C4710DD9907 0x10BD4435 b323
Does anyone know what this does? I know online modding isn't generally supported especially by the owner of this db, but I first thought this could be used to force ourselves into someones apartment, but I see now that isn't possible.
GET_ROOM_KEY_FROM_ENTITY
Hash INTERIOR::GET_ROOM_KEY_FROM_ENTITY(Entity entity) // 0x47C2A06D4F5F424B 0xE4ACF8C3 b323
Gets the room hash key from the room that the specified entity is in. Each room in every interior has a unique key. Returns 0 if the entity is outside.
GET_KEY_FOR_ENTITY_IN_ROOM
Hash INTERIOR::GET_KEY_FOR_ENTITY_IN_ROOM(Entity entity) // 0x399685DB942336BC 0x91EA80EF b323
Seems to do the exact same as INTERIOR::GET_ROOM_KEY_FROM_ENTITY
GET_INTERIOR_FROM_ENTITY
Interior INTERIOR::GET_INTERIOR_FROM_ENTITY(Entity entity) // 0x2107BA504071A6BB 0x5C644614 b323
Returns the handle of the interior that the entity is in. Returns 0 if outside.
_0x82EBB79E258FA2B7
void INTERIOR::_0x82EBB79E258FA2B7(Entity entity, Interior interior) // 0x82EBB79E258FA2B7 0xE645E162 b323
_CLEAR_INTERIOR_FOR_ENTITY
void INTERIOR::_CLEAR_INTERIOR_FOR_ENTITY(Entity entity) // 0x85D5422B2039A70D b2189
Immediately removes entity from an interior. Like sets entity to `limbo` room.
_0x38C1CB1CB119A016
void INTERIOR::_0x38C1CB1CB119A016(Any p0, Any p1) // 0x38C1CB1CB119A016 b1493
FORCE_ROOM_FOR_GAME_VIEWPORT
void INTERIOR::FORCE_ROOM_FOR_GAME_VIEWPORT(int interiorID, Hash roomHashKey) // 0x920D853F3E17F1DA 0xD79803B5 b323
_0xAF348AFCB575A441
void INTERIOR::_0xAF348AFCB575A441(const char* roomName) // 0xAF348AFCB575A441 0x1F6B4B13 b323
Exemple of use(carmod_shop.c4) INTERIOR::_AF348AFCB575A441("V_CarModRoom");
_0x405DC2AEF6AF95B9
void INTERIOR::_0x405DC2AEF6AF95B9(Hash roomHashKey) // 0x405DC2AEF6AF95B9 0x0E9529CC b323
Usage: INTERIOR::_0x405DC2AEF6AF95B9(INTERIOR::GET_KEY_FOR_ENTITY_IN_ROOM(PLAYER::PLAYER_PED_ID()));
GET_ROOM_KEY_FOR_GAME_VIEWPORT
Hash INTERIOR::GET_ROOM_KEY_FOR_GAME_VIEWPORT() // 0xA6575914D2A0B450 0x4FF3D3F5 b323
CLEAR_ROOM_FOR_GAME_VIEWPORT
void INTERIOR::CLEAR_ROOM_FOR_GAME_VIEWPORT() // 0x23B59D8912F94246 0x617DC75D b323
_GET_INTERIOR_FROM_GAMEPLAY_CAM
Interior INTERIOR::_GET_INTERIOR_FROM_GAMEPLAY_CAM() // 0xE7D267EC6CA966C3 b1604
Returns the current interior id from gameplay camera
GET_INTERIOR_AT_COORDS
Interior INTERIOR::GET_INTERIOR_AT_COORDS(float x, float y, float z) // 0xB0F7F8663821D9C3 0xA17FBF37 b323
Returns interior ID from specified coordinates. If coordinates are outside, then it returns 0. Example for VB.NET Dim interiorID As Integer = Native.Function.Call(Of Integer)(Hash.GET_INTERIOR_AT_COORDS, X, Y, Z)
ADD_PICKUP_TO_INTERIOR_ROOM_BY_NAME
void INTERIOR::ADD_PICKUP_TO_INTERIOR_ROOM_BY_NAME(Pickup pickup, const char* roomName) // 0x3F6167F351168730 0xA2A73564 b323
PIN_INTERIOR_IN_MEMORY
void INTERIOR::PIN_INTERIOR_IN_MEMORY(Interior interior) // 0x2CA429C029CCF247 0x3ADA414E b323
UNPIN_INTERIOR
void INTERIOR::UNPIN_INTERIOR(Interior interior) // 0x261CCE7EED010641 0xFCFF792A b323
Does something similar to INTERIOR::DISABLE_INTERIOR. You don't fall through the floor but everything is invisible inside and looks the same as when INTERIOR::DISABLE_INTERIOR is used. Peds behaves normally inside.
IS_INTERIOR_READY
BOOL INTERIOR::IS_INTERIOR_READY(Interior interior) // 0x6726BDCCC1932F0E 0xE1EF6450 b323
_0x4C2330E61D3DEB56
Any INTERIOR::_0x4C2330E61D3DEB56(Interior interior) // 0x4C2330E61D3DEB56 b323
Only used once in the entire game scripts. Does not actually return anything.
GET_INTERIOR_AT_COORDS_WITH_TYPE
Interior INTERIOR::GET_INTERIOR_AT_COORDS_WITH_TYPE(float x, float y, float z, const char* interiorType) // 0x05B7A89BD78797FC 0x96525B06 b323
Returns the interior ID representing the requested interior at that location (if found?). The supplied interior string is not the same as the one used to load the interior. Use: INTERIOR::UNPIN_INTERIOR(INTERIOR::GET_INTERIOR_AT_COORDS_WITH_TYPE(x, y, z, interior)) Interior types include: "V_Michael", "V_Franklins", "V_Franklinshouse", etc.. you can find them in the scripts. Not a very useful native as you could just use GET_INTERIOR_AT_COORDS instead and get the same result, without even having to specify the interior type.
GET_INTERIOR_AT_COORDS_WITH_TYPEHASH
Interior INTERIOR::GET_INTERIOR_AT_COORDS_WITH_TYPEHASH(float x, float y, float z, Hash typeHash) // 0xF0F77ADB9F67E79D 0x11718507 b323
Hashed version of GET_INTERIOR_AT_COORDS_WITH_TYPE
_0x483ACA1176CA93F1
void INTERIOR::_0x483ACA1176CA93F1() // 0x483ACA1176CA93F1 b1103
IS_COLLISION_MARKED_OUTSIDE
BOOL INTERIOR::IS_COLLISION_MARKED_OUTSIDE(float x, float y, float z) // 0xEEA5AC2EDA7C33E8 0x7762249C b323
Returns true if the collision at the specified coords is marked as being outside (false if there's an interior)
GET_INTERIOR_FROM_COLLISION
int INTERIOR::GET_INTERIOR_FROM_COLLISION(float x, float y, float z) // 0xEC4CF9FCB29A4424 0x7ED33DC1 b323
_0x7ECDF98587E92DEC
void INTERIOR::_0x7ECDF98587E92DEC(Any p0) // 0x7ECDF98587E92DEC b1604
ACTIVATE_INTERIOR_ENTITY_SET
void INTERIOR::ACTIVATE_INTERIOR_ENTITY_SET(Interior interior, const char* entitySetName) // 0x55E86AF2712B36A1 0xC80A5DDF b323
More info: http://gtaforums.com/topic/836367-adding-props-to-interiors/ Full list of IPLs and interior entity sets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ipls.json
DEACTIVATE_INTERIOR_ENTITY_SET
void INTERIOR::DEACTIVATE_INTERIOR_ENTITY_SET(Interior interior, const char* entitySetName) // 0x420BD37289EEE162 0xDBA768A1 b323
Full list of IPLs and interior entity sets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ipls.json
IS_INTERIOR_ENTITY_SET_ACTIVE
BOOL INTERIOR::IS_INTERIOR_ENTITY_SET_ACTIVE(Interior interior, const char* entitySetName) // 0x35F7DD45E8C0A16D 0x39A3CC6F b323
Full list of IPLs and interior entity sets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ipls.json
_SET_INTERIOR_ENTITY_SET_COLOR
void INTERIOR::_SET_INTERIOR_ENTITY_SET_COLOR(Interior interior, const char* entitySetName, int color) // 0xC1F1920BAF281317 b877
Full list of IPLs and interior entity sets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ipls.json
REFRESH_INTERIOR
void INTERIOR::REFRESH_INTERIOR(Interior interior) // 0x41F37C3427C75AE0 0x9A29ACE6 b323
ENABLE_EXTERIOR_CULL_MODEL_THIS_FRAME
void INTERIOR::ENABLE_EXTERIOR_CULL_MODEL_THIS_FRAME(Hash mapObjectHash) // 0xA97F257D0151A6AB 0x1F375B4C b323
This is the native that is used to hide the exterior of GTA Online apartment buildings when you are inside an apartment. More info: http://gtaforums.com/topic/836301-hiding-gta-online-apartment-exteriors/
_ENABLE_SCRIPT_CULL_MODEL_THIS_FRAME
void INTERIOR::_ENABLE_SCRIPT_CULL_MODEL_THIS_FRAME(Hash mapObjectHash) // 0x50C375537449F369 b757
DISABLE_INTERIOR
void INTERIOR::DISABLE_INTERIOR(Interior interior, BOOL toggle) // 0x6170941419D7D8EC 0x093ADEA5 b323
Example: This removes the interior from the strip club and when trying to walk inside the player just falls: INTERIOR::DISABLE_INTERIOR(118018, true);
IS_INTERIOR_DISABLED
BOOL INTERIOR::IS_INTERIOR_DISABLED(Interior interior) // 0xBC5115A5A939DD15 0x81F34C71 b323
CAP_INTERIOR
void INTERIOR::CAP_INTERIOR(Interior interior, BOOL toggle) // 0xD9175F941610DB54 0x34E735A6 b323
Does something similar to INTERIOR::DISABLE_INTERIOR
IS_INTERIOR_CAPPED
BOOL INTERIOR::IS_INTERIOR_CAPPED(Interior interior) // 0x92BAC8ACF88CEC26 0x18B17C80 b323
_0x9E6542F0CE8E70A3
void INTERIOR::_0x9E6542F0CE8E70A3(BOOL toggle) // 0x9E6542F0CE8E70A3 0x5EF9C5C2 b323
DISABLE_*
_0x7241CCB7D020DB69
void INTERIOR::_0x7241CCB7D020DB69(Entity entity, BOOL toggle) // 0x7241CCB7D020DB69 b791
Jenkins hash _might_ be 0xFC227584.
ITEMSET
CREATE_ITEMSET
Vehicle ITEMSET::CREATE_ITEMSET(BOOL p0) // 0x35AD299F50D91B24 0x0A113B2C b323
DESTROY_ITEMSET
void ITEMSET::DESTROY_ITEMSET(Any p0) // 0xDE18220B1C183EDA 0x83CE1A4C b323
IS_ITEMSET_VALID
BOOL ITEMSET::IS_ITEMSET_VALID(Any p0) // 0xB1B1EA596344DFAB 0xD201FC29 b323
ADD_TO_ITEMSET
BOOL ITEMSET::ADD_TO_ITEMSET(Any p0, Any p1) // 0xE3945201F14637DD 0x6B0FE61B b323
REMOVE_FROM_ITEMSET
void ITEMSET::REMOVE_FROM_ITEMSET(Any p0, Any p1) // 0x25E68244B0177686 0xA9565228 b323
GET_ITEMSET_SIZE
Any ITEMSET::GET_ITEMSET_SIZE(ScrHandle x) // 0xD9127E83ABF7C631 0x2B31F41A b323
GET_INDEXED_ITEM_IN_ITEMSET
Any ITEMSET::GET_INDEXED_ITEM_IN_ITEMSET(Any p0, Any p1) // 0x7A197E2521EE2BAB 0x3F712874 b323
IS_IN_ITEMSET
BOOL ITEMSET::IS_IN_ITEMSET(Any p0, Any p1) // 0x2D0FC594D1E9C107 0x0D4B9730 b323
CLEAN_ITEMSET
void ITEMSET::CLEAN_ITEMSET(Any p0) // 0x41BC0D722FC04221 0x919A4858 b323
LOADINGSCREEN
_0xF2CA003F167E21D2
int LOADINGSCREEN::_0xF2CA003F167E21D2() // 0xF2CA003F167E21D2 0x106C8317 b323
MulleDK19: This function is hard-coded to always return 0.
_LOADINGSCREEN_GET_LOAD_FREEMODE
BOOL LOADINGSCREEN::_LOADINGSCREEN_GET_LOAD_FREEMODE() // 0xEF7D17BC6C85264C 0xD87F3A9E b323
_LOADINGSCREEN_SET_LOAD_FREEMODE
void LOADINGSCREEN::_LOADINGSCREEN_SET_LOAD_FREEMODE(BOOL toggle) // 0xB0C56BD3D808D863 0xC0B971EA b323
_LOADINGSCREEN_GET_LOAD_FREEMODE_WITH_EVENT_NAME
BOOL LOADINGSCREEN::_LOADINGSCREEN_GET_LOAD_FREEMODE_WITH_EVENT_NAME() // 0x8AA464D4E0F6ACCD 0x94BCAC7C b323
_LOADINGSCREEN_SET_LOAD_FREEMODE_WITH_EVENT_NAME
void LOADINGSCREEN::_LOADINGSCREEN_SET_LOAD_FREEMODE_WITH_EVENT_NAME(BOOL toggle) // 0xFC309E94546FCDB5 0x7D90EEE5 b323
_LOADINGSCREEN_IS_LOADING_FREEMODE
BOOL LOADINGSCREEN::_LOADINGSCREEN_IS_LOADING_FREEMODE() // 0xC6DC823253FBB366 0x734CFEDA b323
_LOADINGSCREEN_SET_IS_LOADING_FREEMODE
void LOADINGSCREEN::_LOADINGSCREEN_SET_IS_LOADING_FREEMODE(BOOL toggle) // 0xC7E7181C09F33B69 0x8C227332 b323
_0xFA1E0E893D915215
void LOADINGSCREEN::_0xFA1E0E893D915215(BOOL toggle) // 0xFA1E0E893D915215 0x5C350D78 b323
LOCALIZATION
_LOCALIZATION_GET_SYSTEM_LANGUAGE
int LOCALIZATION::_LOCALIZATION_GET_SYSTEM_LANGUAGE() // 0x497420E022796B3F b877
Same return values as GET_CURRENT_LANGUAGE
GET_CURRENT_LANGUAGE
int LOCALIZATION::GET_CURRENT_LANGUAGE() // 0x2BDD44CC428A7EAE 0x761BE00B b323
0 = american (en-US) 1 = french (fr-FR) 2 = german (de-DE) 3 = italian (it-IT) 4 = spanish (es-ES) 5 = brazilian (pt-BR) 6 = polish (pl-PL) 7 = russian (ru-RU) 8 = korean (ko-KR) 9 = chinesetrad (zh-TW) 10 = japanese (ja-JP) 11 = mexican (es-MX) 12 = chinesesimp (zh-CN)
_LOCALIZATION_GET_SYSTEM_DATE_FORMAT
int LOCALIZATION::_LOCALIZATION_GET_SYSTEM_DATE_FORMAT() // 0xA8AE43AEC1A61314 b323
Possible return values: 0, 1, 2
MISC
GET_ALLOCATED_STACK_SIZE
int MISC::GET_ALLOCATED_STACK_SIZE() // 0x8B3CA62B1EF19B62 0x4E9CA30A b323
GET_NUMBER_OF_FREE_STACKS_OF_THIS_SIZE
int MISC::GET_NUMBER_OF_FREE_STACKS_OF_THIS_SIZE(int stackSize) // 0xFEAD16FC8F9DFC0F 0x11A178B8 b323
SET_RANDOM_SEED
void MISC::SET_RANDOM_SEED(int seed) // 0x444D98F98C11F3EC 0xDB3FEB5C b323
SET_TIME_SCALE
void MISC::SET_TIME_SCALE(float timeScale) // 0x1D408577D440E81E 0xA7F84694 b323
Maximum value is 1. At a value of 0 the game will still run at a minimum time scale. Slow Motion 1: 0.6 Slow Motion 2: 0.4 Slow Motion 3: 0.2
SET_MISSION_FLAG
void MISC::SET_MISSION_FLAG(BOOL toggle) // 0xC4301E5121A0ED73 0x57592D52 b323
If true, the player can't save the game. If the parameter is true, sets the mission flag to true, if the parameter is false, the function does nothing at all. ^ also, if the mission flag is already set, the function does nothing at all
GET_MISSION_FLAG
BOOL MISC::GET_MISSION_FLAG() // 0xA33CDCCDA663159E 0x95115F97 b323
SET_RANDOM_EVENT_FLAG
void MISC::SET_RANDOM_EVENT_FLAG(BOOL toggle) // 0x971927086CFD2158 0xA77F31E8 b323
If the parameter is true, sets the random event flag to true, if the parameter is false, the function does nothing at all. Does nothing if the mission flag is set.
GET_RANDOM_EVENT_FLAG
BOOL MISC::GET_RANDOM_EVENT_FLAG() // 0xD2D57F1D764117B1 0x794CC92C b323
_GET_GLOBAL_CHAR_BUFFER
const char* MISC::_GET_GLOBAL_CHAR_BUFFER() // 0x24DA7D7667FD7B09 b323
Returns pointer to an empty string. GET_C*
_0x4DCDF92BF64236CD
void MISC::_0x4DCDF92BF64236CD(const char* p0, const char* p1) // 0x4DCDF92BF64236CD b323
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0x31125FD509D9043F
void MISC::_0x31125FD509D9043F(const char* p0) // 0x31125FD509D9043F b323
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0xEBD3205A207939ED
void MISC::_0xEBD3205A207939ED(const char* p0) // 0xEBD3205A207939ED b323
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0x97E7E2C04245115B
void MISC::_0x97E7E2C04245115B(Any p0) // 0x97E7E2C04245115B b323
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0x916CA67D26FD1E37
void MISC::_0x916CA67D26FD1E37(const char* p0) // 0x916CA67D26FD1E37 b2060
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0xEB078CA2B5E82ADD
void MISC::_0xEB078CA2B5E82ADD(const char* p0, const char* p1) // 0xEB078CA2B5E82ADD b323
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0x703CC7F60CBB2B57
void MISC::_0x703CC7F60CBB2B57(const char* p0) // 0x703CC7F60CBB2B57 b323
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0x8951EB9C6906D3C8
void MISC::_0x8951EB9C6906D3C8() // 0x8951EB9C6906D3C8 b323
Does nothing (it's a nullsub). Seems to be PS4 specific.
_0xBA4B8D83BDC75551
void MISC::_0xBA4B8D83BDC75551(const char* p0) // 0xBA4B8D83BDC75551 b323
Does nothing (it's a nullsub). Seems to be PS4 specific. Used only once in the scripts (ingamehud) with p0 = "AF_GAMEMODE"
_HAS_RESUMED_FROM_SUSPEND
BOOL MISC::_HAS_RESUMED_FROM_SUSPEND() // 0xE8B9C0EC9E183F35 b323
Hardcoded to return false.
_0x65D2EBB47E1CEC21
void MISC::_0x65D2EBB47E1CEC21(BOOL toggle) // 0x65D2EBB47E1CEC21 b323
Sets GtaThread+0x14A SET_S*
_0x6F2135B6129620C1
void MISC::_0x6F2135B6129620C1(BOOL toggle) // 0x6F2135B6129620C1 0x8B2DE971 b323
Sets bit 3 in GtaThread+0x150 SET_T*
_0x8D74E26F54B4E5C3
void MISC::_0x8D74E26F54B4E5C3(const char* p0) // 0x8D74E26F54B4E5C3 0xE77199F7 b323
I*
_GET_BASE_ELEMENT_METADATA
BOOL MISC::_GET_BASE_ELEMENT_METADATA(Any* p0, Any* p1, Any p2, BOOL p3) // 0xB335F761606DB47C 0xE23416C1 b323
GET_PREV_WEATHER_TYPE_HASH_NAME
Hash MISC::GET_PREV_WEATHER_TYPE_HASH_NAME() // 0x564B884A05EC45A3 0xA8171E9E b323
Returns current weather name hash
GET_NEXT_WEATHER_TYPE_HASH_NAME
Hash MISC::GET_NEXT_WEATHER_TYPE_HASH_NAME() // 0x711327CD09C8F162 0x353E8056 b323
Returns weather name hash
IS_PREV_WEATHER_TYPE
BOOL MISC::IS_PREV_WEATHER_TYPE(const char* weatherType) // 0x44F28F86433B10A9 0x250ADA61 b323
IS_NEXT_WEATHER_TYPE
BOOL MISC::IS_NEXT_WEATHER_TYPE(const char* weatherType) // 0x2FAA3A30BEC0F25D 0x99CB167F b323
SET_WEATHER_TYPE_PERSIST
void MISC::SET_WEATHER_TYPE_PERSIST(const char* weatherType) // 0x704983DF373B198F 0xC6C04C75 b323
The following weatherTypes are used in the scripts: "CLEAR" "EXTRASUNNY" "CLOUDS" "OVERCAST" "RAIN" "CLEARING" "THUNDER" "SMOG" "FOGGY" "XMAS" "SNOWLIGHT" "BLIZZARD"
SET_WEATHER_TYPE_NOW_PERSIST
void MISC::SET_WEATHER_TYPE_NOW_PERSIST(const char* weatherType) // 0xED712CA327900C8A 0xC869FE97 b323
The following weatherTypes are used in the scripts: "CLEAR" "EXTRASUNNY" "CLOUDS" "OVERCAST" "RAIN" "CLEARING" "THUNDER" "SMOG" "FOGGY" "XMAS" "SNOWLIGHT" "BLIZZARD"
SET_WEATHER_TYPE_NOW
void MISC::SET_WEATHER_TYPE_NOW(const char* weatherType) // 0x29B487C359E19889 0x361E9EAC b323
The following weatherTypes are used in the scripts: "CLEAR" "EXTRASUNNY" "CLOUDS" "OVERCAST" "RAIN" "CLEARING" "THUNDER" "SMOG" "FOGGY" "XMAS" "SNOWLIGHT" "BLIZZARD"
SET_WEATHER_TYPE_OVERTIME_PERSIST
void MISC::SET_WEATHER_TYPE_OVERTIME_PERSIST(const char* weatherType, float time) // 0xFB5045B7C42B75BF 0x386F0D25 b323
SET_RANDOM_WEATHER_TYPE
void MISC::SET_RANDOM_WEATHER_TYPE() // 0x8B05F884CF7E8020 0xE7AA1BC9 b323
CLEAR_WEATHER_TYPE_PERSIST
void MISC::CLEAR_WEATHER_TYPE_PERSIST() // 0xCCC39339BEF76CF5 0x6AB757D8 b323
_0x0CF97F497FE7D048
void MISC::_0x0CF97F497FE7D048(float p0) // 0x0CF97F497FE7D048 b1103
0 as param = weird black and green screen 0.1 - 0.99 = Prevent rain effect from falling (still sound and effects on puddles) and prevent puddles from increase/decrease, seems than it prevent any weather change too 1 and more = "Unfreeze" rain puddles but clear weather too When 'freezing' is enabled, it seem to also freeze value getted with GetRainLevel
_GET_WEATHER_TYPE_TRANSITION
void MISC::_GET_WEATHER_TYPE_TRANSITION(Hash* weatherType1, Hash* weatherType2, float* percentWeather2) // 0xF3BBE884A14BB413 0x9A5C1D56 b323
_SET_WEATHER_TYPE_TRANSITION
void MISC::_SET_WEATHER_TYPE_TRANSITION(Hash weatherType1, Hash weatherType2, float percentWeather2) // 0x578C752848ECFA0C 0x5CA74040 b323
Mixes two weather types. If percentWeather2 is set to 0.0f, then the weather will be entirely of weatherType1, if it is set to 1.0f it will be entirely of weatherType2. If it's set somewhere in between, there will be a mixture of weather behaviors. To test, try this in the RPH console, and change the float to different values between 0 and 1: execute "NativeFunction.Natives.x578C752848ECFA0C(Game.GetHashKey(""RAIN""), Game.GetHashKey(""SMOG""), 0.50f); Note that unlike most of the other weather natives, this native takes the hash of the weather name, not the plain string. These are the weather names and their hashes: CLEAR 0x36A83D84 EXTRASUNNY 0x97AA0A79 CLOUDS 0x30FDAF5C OVERCAST 0xBB898D2D RAIN 0x54A69840 CLEARING 0x6DB1A50D THUNDER 0xB677829F SMOG 0x10DCF4B5 FOGGY 0xAE737644 XMAS 0xAAC9C895 SNOWLIGHT 0x23FB812B BLIZZARD 0x27EA2814 /* OLD INVALID INFO BELOW */ Not tested. Based purely on disassembly. Instantly sets the weather to sourceWeather, then transitions to targetWeather over the specified transitionTime in seconds. If an invalid hash is specified for sourceWeather, the current weather type will be used. If an invalid hash is specified for targetWeather, the next weather type will be used. If an invalid hash is specified for both sourceWeather and targetWeather, the function just changes the transition time of the current transition.
SET_OVERRIDE_WEATHER
void MISC::SET_OVERRIDE_WEATHER(const char* weatherType) // 0xA43D5C6FE51ADBEF 0xD9082BB5 b323
Appears to have an optional bool parameter that is unused in the scripts. If you pass true, something will be set to zero.
_0x1178E104409FE58C
void MISC::_0x1178E104409FE58C(Any p0, Any p1) // 0x1178E104409FE58C b2189
CLEAR_OVERRIDE_WEATHER
void MISC::CLEAR_OVERRIDE_WEATHER() // 0x338D2E3477711050 0x7740EA4E b323
WATER_OVERRIDE_SET_SHOREWAVEAMPLITUDE
void MISC::WATER_OVERRIDE_SET_SHOREWAVEAMPLITUDE(float amplitude) // 0xB8F87EAD7533B176 0x625181DC b323
WATER_OVERRIDE_SET_SHOREWAVEMINAMPLITUDE
void MISC::WATER_OVERRIDE_SET_SHOREWAVEMINAMPLITUDE(float minAmplitude) // 0xC3EAD29AB273ECE8 0xBEBBFDC8 b323
WATER_OVERRIDE_SET_SHOREWAVEMAXAMPLITUDE
void MISC::WATER_OVERRIDE_SET_SHOREWAVEMAXAMPLITUDE(float maxAmplitude) // 0xA7A1127490312C36 0x6926AB03 b323
WATER_OVERRIDE_SET_OCEANNOISEMINAMPLITUDE
void MISC::WATER_OVERRIDE_SET_OCEANNOISEMINAMPLITUDE(float minAmplitude) // 0x31727907B2C43C55 0xD447439D b323
WATER_OVERRIDE_SET_OCEANWAVEAMPLITUDE
void MISC::WATER_OVERRIDE_SET_OCEANWAVEAMPLITUDE(float amplitude) // 0x405591EC8FD9096D 0x584E9C59 b323
WATER_OVERRIDE_SET_OCEANWAVEMINAMPLITUDE
void MISC::WATER_OVERRIDE_SET_OCEANWAVEMINAMPLITUDE(float minAmplitude) // 0xF751B16FB32ABC1D 0x5656D578 b323
WATER_OVERRIDE_SET_OCEANWAVEMAXAMPLITUDE
void MISC::WATER_OVERRIDE_SET_OCEANWAVEMAXAMPLITUDE(float maxAmplitude) // 0xB3E6360DDE733E82 0x0DE40C28 b323
WATER_OVERRIDE_SET_RIPPLEBUMPINESS
void MISC::WATER_OVERRIDE_SET_RIPPLEBUMPINESS(float bumpiness) // 0x7C9C0B1EEB1F9072 0x98C9138B b323
WATER_OVERRIDE_SET_RIPPLEMINBUMPINESS
void MISC::WATER_OVERRIDE_SET_RIPPLEMINBUMPINESS(float minBumpiness) // 0x6216B116083A7CB4 0xFB1A9CDE b323
WATER_OVERRIDE_SET_RIPPLEMAXBUMPINESS
void MISC::WATER_OVERRIDE_SET_RIPPLEMAXBUMPINESS(float maxBumpiness) // 0x9F5E6BB6B34540DA 0x1C0CAE89 b323
WATER_OVERRIDE_SET_RIPPLEDISTURB
void MISC::WATER_OVERRIDE_SET_RIPPLEDISTURB(float disturb) // 0xB9854DFDE0D833D6 0x4671AC2E b323
WATER_OVERRIDE_SET_STRENGTH
void MISC::WATER_OVERRIDE_SET_STRENGTH(float strength) // 0xC54A08C85AE4D410 0xDA02F415 b323
This seems to edit the water wave, intensity around your current location. 0.0f = Normal 1.0f = So Calm and Smooth, a boat will stay still. 3.0f = Really Intense.
WATER_OVERRIDE_FADE_IN
void MISC::WATER_OVERRIDE_FADE_IN(float p0) // 0xA8434F1DFF41D6E7 0x5F3DDEC0 b323
WATER_OVERRIDE_FADE_OUT
void MISC::WATER_OVERRIDE_FADE_OUT(float p0) // 0xC3C221ADDDE31A11 0x63A89684 b323
SET_WIND
void MISC::SET_WIND(float speed) // 0xAC3A74E8384A9919 0xC6294698 b323
Sets the the raw wind speed value.
SET_WIND_SPEED
void MISC::SET_WIND_SPEED(float speed) // 0xEE09ECEDBABE47FC 0x45705F94 b323
Using this native will clamp the wind speed value to a range of 0.0- 12.0. Using SET_WIND sets the same value but without the restriction.
GET_WIND_SPEED
float MISC::GET_WIND_SPEED() // 0xA8CF1CC0AFCD3F12 0x098F0F3C b323
SET_WIND_DIRECTION
void MISC::SET_WIND_DIRECTION(float direction) // 0xEB0F4468467B4528 0x381AEEE9 b323
The wind direction in radians 180 degrees, wind will blow from the south
GET_WIND_DIRECTION
Vector3 MISC::GET_WIND_DIRECTION() // 0x1F400FEF721170DA 0x89499A0D b323
_SET_RAIN_LEVEL
void MISC::_SET_RAIN_LEVEL(float intensity) // 0x643E26EA6E024D92 b323
With an `intensity` higher than `0.5f`, only the creation of puddles gets faster, rain and rain sound won't increase after that. With an `intensity` of `0.0f` rain and rain sounds are disabled and there won't be any new puddles. To use the rain intensity of the current weather, call this native with `-1f` as `intensity`.
GET_RAIN_LEVEL
float MISC::GET_RAIN_LEVEL() // 0x96695E368AD855F3 0xC9F67F28 b323
_SET_SNOW_LEVEL
void MISC::_SET_SNOW_LEVEL(float level) // 0x7F06937B0CDCBC1A b1868
GET_SNOW_LEVEL
float MISC::GET_SNOW_LEVEL() // 0xC5868A966E5BE3AE 0x1B09184F b323
FORCE_LIGHTNING_FLASH
void MISC::FORCE_LIGHTNING_FLASH() // 0xF6062E089251C898 0xDF38165E b323
creates single lightning+thunder at random position
_0x02DEAAC8F8EA7FE7
void MISC::_0x02DEAAC8F8EA7FE7(const char* p0) // 0x02DEAAC8F8EA7FE7 b323
Found in the scripts: MISC::_02DEAAC8F8EA7FE7("");
PRELOAD_CLOUD_HAT
void MISC::PRELOAD_CLOUD_HAT(const char* name) // 0x11B56FBBF7224868 0x8727A4C5 b323
Found in the scripts: MISC::_11B56FBBF7224868("CONTRAILS");
LOAD_CLOUD_HAT
void MISC::LOAD_CLOUD_HAT(const char* name, float transitionTime) // 0xFC4842A34657BFCB 0xED88FC61 b323
The following cloudhats are useable: altostratus Cirrus cirrocumulus Clear 01 Cloudy 01 Contrails Horizon horizonband1 horizonband2 horizonband3 horsey Nimbus Puffs RAIN Snowy 01 Stormy 01 stratoscumulus Stripey shower Wispy
UNLOAD_CLOUD_HAT
void MISC::UNLOAD_CLOUD_HAT(const char* name, float p1) // 0xA74802FB8D0B7814 0xC9FA6E07 b323
Called 4 times in the b617d scripts: MISC::_A74802FB8D0B7814("CONTRAILS", 0);
_CLEAR_CLOUD_HAT
void MISC::_CLEAR_CLOUD_HAT() // 0x957E790EA1727B64 0x2D7787BC b323
_SET_CLOUD_HAT_OPACITY
void MISC::_SET_CLOUD_HAT_OPACITY(float opacity) // 0xF36199225D6D8C86 b323
_GET_CLOUD_HAT_OPACITY
float MISC::_GET_CLOUD_HAT_OPACITY() // 0x20AC25E781AE4A84 b323
GET_GAME_TIMER
int MISC::GET_GAME_TIMER() // 0x9CD27B0045628463 0xA4EA0691 b323
GET_FRAME_TIME
float MISC::GET_FRAME_TIME() // 0x15C40837039FFAF7 0x96374262 b323
_GET_BENCHMARK_TIME
float MISC::_GET_BENCHMARK_TIME() // 0xE599A503B3837E1B b323
GET_FRAME_COUNT
int MISC::GET_FRAME_COUNT() // 0xFC8202EFC642E6F2 0xB477A015 b323
GET_RANDOM_FLOAT_IN_RANGE
float MISC::GET_RANDOM_FLOAT_IN_RANGE(float startRange, float endRange) // 0x313CE5879CEB6FCD 0x0562C4D0 b323
GET_RANDOM_INT_IN_RANGE
int MISC::GET_RANDOM_INT_IN_RANGE(int startRange, int endRange) // 0xD53343AA4FB7DD28 0x4051115B b323
_GET_RANDOM_INT_IN_RANGE_2
int MISC::_GET_RANDOM_INT_IN_RANGE_2(int startRange, int endRange) // 0xF2D49816A804D134 b1734
GET_GROUND_Z_FOR_3D_COORD
BOOL MISC::GET_GROUND_Z_FOR_3D_COORD(float x, float y, float z, float* groundZ, BOOL ignoreWater, BOOL p5) // 0xC906A7DAB05C8D2B 0xA1BFD5E0 b323
Gets the ground elevation at the specified position. Note that if the specified position is below ground level, the function will output zero! x: Position on the X-axis to get ground elevation at. y: Position on the Y-axis to get ground elevation at. z: Position on the Z-axis to get ground elevation at. groundZ: The ground elevation at the specified position. ignoreWater: Nearly always 0, very rarely 1 in the scripts: https://gfycat.com/NiftyTatteredCricket Bear in mind this native can only calculate the elevation when the coordinates are within the client's render distance.
GET_GROUND_Z_AND_NORMAL_FOR_3D_COORD
BOOL MISC::GET_GROUND_Z_AND_NORMAL_FOR_3D_COORD(float x, float y, float z, float* groundZ, Vector3* normal) // 0x8BDC7BFC57A81E76 0x64D91CED b323
_GET_GROUND_Z_FOR_3D_COORD_2
BOOL MISC::_GET_GROUND_Z_FOR_3D_COORD_2(float x, float y, float z, float* groundZ, BOOL p4, BOOL p5) // 0x9E82F0F362881B29 b505
ASIN
float MISC::ASIN(float p0) // 0xC843060B5765DCE7 0x998E5CAD b323
ACOS
float MISC::ACOS(float p0) // 0x1D08B970013C34B6 0xF4038776 b323
TAN
float MISC::TAN(float p0) // 0x632106CC96E82E91 0xD320CE5E b323
ATAN
float MISC::ATAN(float p0) // 0xA9D1795CD5043663 0x7A03CC8E b323
ATAN2
float MISC::ATAN2(float p0, float p1) // 0x8927CBF9D22261A4 0x2508AC81 b323
GET_DISTANCE_BETWEEN_COORDS
float MISC::GET_DISTANCE_BETWEEN_COORDS(float x1, float y1, float z1, float x2, float y2, float z2, BOOL useZ) // 0xF1B760881820C952 0xF698765E b323
Returns the distance between two three-dimensional points, optionally ignoring the Z values. If useZ is false, only the 2D plane (X-Y) will be considered for calculating the distance. Consider using this faster native instead: SYSTEM::VDIST - DVIST always takes in consideration the 3D coordinates.
GET_ANGLE_BETWEEN_2D_VECTORS
float MISC::GET_ANGLE_BETWEEN_2D_VECTORS(float x1, float y1, float x2, float y2) // 0x186FC4BE848E1C92 0xDBF75E58 b323
GET_HEADING_FROM_VECTOR_2D
float MISC::GET_HEADING_FROM_VECTOR_2D(float dx, float dy) // 0x2FFB6B224F4B2926 0xD209D52B b323
dx = x1 - x2 dy = y1 - y2
_0x7F8F6405F4777AF6
float MISC::_0x7F8F6405F4777AF6(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7, float p8, BOOL p9) // 0x7F8F6405F4777AF6 0x89459F0A b323
_0x21C235BC64831E5A
Vector3 MISC::_0x21C235BC64831E5A(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7, float p8, BOOL p9) // 0x21C235BC64831E5A 0xCAECF37E b323
GET_C*
_0xF56DFB7B61BE7276
BOOL MISC::_0xF56DFB7B61BE7276(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7, float p8, float p9, float p10, float p11, float* p12) // 0xF56DFB7B61BE7276 0xC6CC812C b323
_0xA0AD167E4B39D9A2
Any MISC::_0xA0AD167E4B39D9A2(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9, Any p10, Any p11, Any p12, Any p13) // 0xA0AD167E4B39D9A2 b2189
SET_BIT
void MISC::SET_BIT(int* address, int offset) // 0x933D6A9EEC1BACD0 0x4EFE7E6B b323
This sets bit [offset] of [address] to on. The offsets used are different bits to be toggled on and off, typically there is only one address used in a script. Example: MISC::SET_BIT(&bitAddress, 1); To check if this bit has been enabled: MISC::IS_BIT_SET(bitAddress, 1); // will return 1 afterwards Please note, this method may assign a value to [address] when used.
CLEAR_BIT
void MISC::CLEAR_BIT(int* address, int offset) // 0xE80492A9AC099A93 0x8BC9E618 b323
This sets bit [offset] of [address] to off. Example: MISC::CLEAR_BIT(&bitAddress, 1); To check if this bit has been enabled: MISC::IS_BIT_SET(bitAddress, 1); // will return 0 afterwards
GET_HASH_KEY
Hash MISC::GET_HASH_KEY(const char* string) // 0xD24D37CC275948CC 0x98EFF6F1 b323
This native converts its past string to hash. It is hashed using jenkins one at a time method.
SLERP_NEAR_QUATERNION
void MISC::SLERP_NEAR_QUATERNION(float t, float x, float y, float z, float w, float x1, float y1, float z1, float w1, float* outX, float* outY, float* outZ, float* outW) // 0xF2F6A2FA49278625 0x87B92190 b323
This native always come right before SET_ENTITY_QUATERNION where its final 4 parameters are SLERP_NEAR_QUATERNION p9 to p12
IS_AREA_OCCUPIED
BOOL MISC::IS_AREA_OCCUPIED(float p0, float p1, float p2, float p3, float p4, float p5, BOOL p6, BOOL p7, BOOL p8, BOOL p9, BOOL p10, Any p11, BOOL p12) // 0xA61B4DF533DCB56E 0xC013972F b323
_0x39455BF4F4F55186
Any MISC::_0x39455BF4F4F55186(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9, Any p10, Any p11, Any p12) // 0x39455BF4F4F55186 b1868
IS_POSITION_OCCUPIED
BOOL MISC::IS_POSITION_OCCUPIED(float x, float y, float z, float range, BOOL p4, BOOL checkVehicles, BOOL checkPeds, BOOL p7, BOOL p8, Entity ignoreEntity, BOOL p10) // 0xADCDE75E1C60F32D 0x452E8D9E b323
`range`: The range, seems to not be very accurate during testing. `p4`: Unknown, when set to true it seems to always return true no matter what I try. `checkVehicle`: Check for any vehicles in that area. `checkPeds`: Check for any peds in that area. `ignoreEntity`: This entity will be ignored if it's in the area. Set to 0 if you don't want to exclude any entities. The BOOL parameters that are documented have not been confirmed. They are just documented from what I've found during testing. They may not work as expected in all cases. Returns true if there is anything in that location matching the provided parameters.
IS_POINT_OBSCURED_BY_A_MISSION_ENTITY
BOOL MISC::IS_POINT_OBSCURED_BY_A_MISSION_ENTITY(float p0, float p1, float p2, float p3, float p4, float p5, Any p6) // 0xE54E209C35FFA18D 0xC161558D b323
CLEAR_AREA
void MISC::CLEAR_AREA(float X, float Y, float Z, float radius, BOOL p4, BOOL ignoreCopCars, BOOL ignoreObjects, BOOL p7) // 0xA56F01F3765B93A0 0x854E9AB8 b323
Example: CLEAR_AREA(0, 0, 0, 30, true, false, false, false);
CLEAR_AREA_LEAVE_VEHICLE_HEALTH
void MISC::CLEAR_AREA_LEAVE_VEHICLE_HEALTH(float x, float y, float z, float radius, BOOL p4, BOOL p5, BOOL p6, BOOL p7) // 0x957838AAF91BD12D 0x20E4FFD9 b323
MISC::_0x957838AAF91BD12D(x, y, z, radius, false, false, false, false); seem to make all objects go away, peds, vehicles etc. All booleans set to true doesn't seem to change anything.
CLEAR_AREA_OF_VEHICLES
void MISC::CLEAR_AREA_OF_VEHICLES(float x, float y, float z, float radius, BOOL p4, BOOL p5, BOOL p6, BOOL p7, BOOL p8, BOOL p9) // 0x01C7B9B38428AEB6 0x63320F3C b323
Example: CLEAR_AREA_OF_VEHICLES(0.0f, 0.0f, 0.0f, 10000.0f, false, false, false, false, false, false);
CLEAR_ANGLED_AREA_OF_VEHICLES
void MISC::CLEAR_ANGLED_AREA_OF_VEHICLES(float x1, float y1, float z1, float x2, float y2, float z2, float width, BOOL p7, BOOL p8, BOOL p9, BOOL p10, BOOL p11, Any p12) // 0x11DB3500F042A8AA 0xF11A3018 b323
CLEAR_AREA_OF_OBJECTS
void MISC::CLEAR_AREA_OF_OBJECTS(float x, float y, float z, float radius, int flags) // 0xDD9B9B385AAC7F5B 0xBB720FE7 b323
I looked through the PC scripts that this site provides you with a link to find. It shows the last param mainly uses, (0, 2, 6, 16, and 17) so I am going to assume it is a type of flag.
CLEAR_AREA_OF_PEDS
void MISC::CLEAR_AREA_OF_PEDS(float x, float y, float z, float radius, int flags) // 0xBE31FD6CE464AC59 0x25BE7FA8 b323
Example: CLEAR_AREA_OF_PEDS(0, 0, 0, 10000, 1);
CLEAR_AREA_OF_COPS
void MISC::CLEAR_AREA_OF_COPS(float x, float y, float z, float radius, int flags) // 0x04F8FC8FCF58F88D 0x95C53824 b323
flags appears to always be 0
CLEAR_AREA_OF_PROJECTILES
void MISC::CLEAR_AREA_OF_PROJECTILES(float x, float y, float z, float radius, int flags) // 0x0A1CB9094635D1A6 0x18DB5434 b323
flags is usually 0 in the scripts.
_0x7EC6F9A478A6A512
void MISC::_0x7EC6F9A478A6A512() // 0x7EC6F9A478A6A512 b323
Possibly used to clear scenario points. CLEAR_*
SET_SAVE_MENU_ACTIVE
void MISC::SET_SAVE_MENU_ACTIVE(BOOL ignoreVehicle) // 0xC9BF75D28165FF77 0xF5CCF164 b323
ignoreVehicle - bypasses vehicle check of the local player (it will not open if you are in a vehicle and this is set to false)
_0x397BAA01068BAA96
int MISC::_0x397BAA01068BAA96() // 0x397BAA01068BAA96 0x39771F21 b323
SET_CREDITS_ACTIVE
void MISC::SET_CREDITS_ACTIVE(BOOL toggle) // 0xB938B7E6D3C0620C 0xEC2A0ECF b323
_0xB51B9AB9EF81868C
void MISC::_0xB51B9AB9EF81868C(BOOL toggle) // 0xB51B9AB9EF81868C 0x75B06B5A b323
HAVE_CREDITS_REACHED_END
BOOL MISC::HAVE_CREDITS_REACHED_END() // 0x075F1D57402C93BA 0x2569C9A7 b323
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME
void MISC::TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME(const char* scriptName) // 0x9DC711BC69C548DF 0x9F861FD4 b323
For a full list, see here: pastebin.com/yLNWicUi
NETWORK_SET_SCRIPT_IS_SAFE_FOR_NETWORK_GAME
void MISC::NETWORK_SET_SCRIPT_IS_SAFE_FOR_NETWORK_GAME() // 0x9243BAC96D64C050 0x878486CE b323
ADD_HOSPITAL_RESTART
int MISC::ADD_HOSPITAL_RESTART(float x, float y, float z, float p3, Any p4) // 0x1F464EF988465A81 0x4F3E3104 b323
Returns the index of the newly created hospital spawn point. p3 might be radius?
DISABLE_HOSPITAL_RESTART
void MISC::DISABLE_HOSPITAL_RESTART(int hospitalIndex, BOOL toggle) // 0xC8535819C450EBA8 0x09F49C72 b323
The game by default has 5 hospital respawn points. Disabling them all will cause the player to respawn at the last position they were.
ADD_POLICE_RESTART
Any MISC::ADD_POLICE_RESTART(float p0, float p1, float p2, float p3, Any p4) // 0x452736765B31FC4B 0xE96C29FE b323
DISABLE_POLICE_RESTART
void MISC::DISABLE_POLICE_RESTART(int policeIndex, BOOL toggle) // 0x23285DED6EBD7EA3 0x0A280324 b323
Disables the spawn point at the police house on the specified index. policeIndex: The police house index. toggle: true to enable the spawn point, false to disable. - Nacorpio
_SET_RESTART_CUSTOM_POSITION
void MISC::_SET_RESTART_CUSTOM_POSITION(float x, float y, float z, float heading) // 0x706B5EDCAA7FA663 b323
_CLEAR_RESTART_CUSTOM_POSITION
void MISC::_CLEAR_RESTART_CUSTOM_POSITION() // 0xA2716D40842EAF79 b323
PAUSE_DEATH_ARREST_RESTART
void MISC::PAUSE_DEATH_ARREST_RESTART(BOOL toggle) // 0x2C2B3493FBF51C71 0x296574AE b323
IGNORE_NEXT_RESTART
void MISC::IGNORE_NEXT_RESTART(BOOL toggle) // 0x21FFB63D8C615361 0xDA13A4B6 b323
SET_FADE_OUT_AFTER_DEATH
void MISC::SET_FADE_OUT_AFTER_DEATH(BOOL toggle) // 0x4A18E01DF2C87B86 0xC9F6F0BC b323
Sets whether the game should fade out after the player dies.
SET_FADE_OUT_AFTER_ARREST
void MISC::SET_FADE_OUT_AFTER_ARREST(BOOL toggle) // 0x1E0B4DC0D990A4E7 0xCB074B9D b323
Sets whether the game should fade out after the player is arrested.
SET_FADE_IN_AFTER_DEATH_ARREST
void MISC::SET_FADE_IN_AFTER_DEATH_ARREST(BOOL toggle) // 0xDA66D2796BA33F12 0xACDE6985 b323
Sets whether the game should fade in after the player dies or is arrested.
SET_FADE_IN_AFTER_LOAD
void MISC::SET_FADE_IN_AFTER_LOAD(BOOL toggle) // 0xF3D78F59DFE18D79 0x6E00EB0B b323
REGISTER_SAVE_HOUSE
Any MISC::REGISTER_SAVE_HOUSE(float p0, float p1, float p2, float p3, Any* p4, Any p5, Any p6) // 0xC0714D0A7EEECA54 0x39C1849A b323
SET_SAVE_HOUSE
void MISC::SET_SAVE_HOUSE(Any p0, BOOL p1, BOOL p2) // 0x4F548CABEAE553BC 0xC3240BB4 b323
OVERRIDE_SAVE_HOUSE
BOOL MISC::OVERRIDE_SAVE_HOUSE(BOOL p0, float p1, float p2, float p3, float p4, BOOL p5, float p6, float p7) // 0x1162EA8AE9D24EEA 0x47436C12 b323
_0xA4A0065E39C9F25C
BOOL MISC::_0xA4A0065E39C9F25C(Vector3* p0, float* p1, BOOL* fadeInAfterLoad, BOOL* p3) // 0xA4A0065E39C9F25C 0xC4D71AB4 b323
GET_SAVE_* GET_SAVE_UNLESS_CUSTOM_DOT ?
DO_AUTO_SAVE
void MISC::DO_AUTO_SAVE() // 0x50EEAAD86232EE55 0x54C44B1A b323
GET_IS_AUTO_SAVE_OFF
BOOL MISC::GET_IS_AUTO_SAVE_OFF() // 0x6E04F06094C87047 0xA8546914 b323
Returns true if profile setting 208 is equal to 0.
IS_AUTO_SAVE_IN_PROGRESS
BOOL MISC::IS_AUTO_SAVE_IN_PROGRESS() // 0x69240733738C19A0 0x36F75399 b323
_0x2107A3773771186D
BOOL MISC::_0x2107A3773771186D() // 0x2107A3773771186D 0x78350773 b323
HAS_*
_0x06462A961E94B67C
void MISC::_0x06462A961E94B67C() // 0x06462A961E94B67C 0x5A45B11A b323
CLEAR_*
BEGIN_REPLAY_STATS
void MISC::BEGIN_REPLAY_STATS(Any p0, Any p1) // 0xE0E500246FF73D66 0x17F4F44D b323
ADD_REPLAY_STAT_VALUE
void MISC::ADD_REPLAY_STAT_VALUE(Any value) // 0x69FE6DC87BD2A5E9 0x81216EE0 b323
END_REPLAY_STATS
void MISC::END_REPLAY_STATS() // 0xA23E821FBDF8A5F2 0xCB570185 b323
_0xD642319C54AADEB6
Any MISC::_0xD642319C54AADEB6() // 0xD642319C54AADEB6 0xC58250F1 b323
_0x5B1F2E327B6B6FE1
Any MISC::_0x5B1F2E327B6B6FE1() // 0x5B1F2E327B6B6FE1 0x50C39926 b323
GET_REPLAY_STAT_MISSION_TYPE
int MISC::GET_REPLAY_STAT_MISSION_TYPE() // 0x2B626A0150E4D449 0x710E5D1E b323
GET_REPLAY_STAT_COUNT
int MISC::GET_REPLAY_STAT_COUNT() // 0xDC9274A7EF6B2867 0xC7BD1AF0 b323
GET_REPLAY_STAT_AT_INDEX
int MISC::GET_REPLAY_STAT_AT_INDEX(int index) // 0x8098C8D6597AAE18 0x22BE2423 b323
CLEAR_REPLAY_STATS
void MISC::CLEAR_REPLAY_STATS() // 0x1B1AB132A16FDA55 0xC47DFF02 b323
_0x72DE52178C291CB5
Any MISC::_0x72DE52178C291CB5() // 0x72DE52178C291CB5 0xF62B3C48 b323
_0x44A0BDC559B35F6E
BOOL MISC::_0x44A0BDC559B35F6E() // 0x44A0BDC559B35F6E 0x3589452B b323
Shows the screen which is visible before you redo a mission? The game will make a restoration point where you will cameback when the mission is over. Returns 1 if the message isn't currently on screen
_0xEB2104E905C6F2E9
Any MISC::_0xEB2104E905C6F2E9() // 0xEB2104E905C6F2E9 b323
_0x2B5E102E4A42F2BF
Any MISC::_0x2B5E102E4A42F2BF() // 0x2B5E102E4A42F2BF 0x144AAF22 b323
IS_MEMORY_CARD_IN_USE
BOOL MISC::IS_MEMORY_CARD_IN_USE() // 0x8A75CE2956274ADD 0x40CE4DFD b323
SHOOT_SINGLE_BULLET_BETWEEN_COORDS
void MISC::SHOOT_SINGLE_BULLET_BETWEEN_COORDS(float x1, float y1, float z1, float x2, float y2, float z2, int damage, BOOL p7, Hash weaponHash, Ped ownerPed, BOOL isAudible, BOOL isInvisible, float speed) // 0x867654CBC7606F2C 0xCB7415AC b323
SHOOT_SINGLE_BULLET_BETWEEN_COORDS_IGNORE_ENTITY
void MISC::SHOOT_SINGLE_BULLET_BETWEEN_COORDS_IGNORE_ENTITY(float x1, float y1, float z1, float x2, float y2, float z2, int damage, BOOL p7, Hash weaponHash, Ped ownerPed, BOOL isAudible, BOOL isInvisible, float speed, Entity entity, Any p14) // 0xE3A7742E0B7A2F8B 0x52ACCB7B b323
entity - entity to ignore
SHOOT_SINGLE_BULLET_BETWEEN_COORDS_IGNORE_ENTITY_NEW
void MISC::SHOOT_SINGLE_BULLET_BETWEEN_COORDS_IGNORE_ENTITY_NEW(float x1, float y1, float z1, float x2, float y2, float z2, int damage, BOOL p7, Hash weaponHash, Ped ownerPed, BOOL isAudible, BOOL isInvisible, float speed, Entity entity, BOOL p14, BOOL p15, BOOL p16, BOOL p17, Any p18, Any p19, Any p20) // 0xBFE5756E7407064A 0xCCDC33CC b323
entity - entity to ignore
GET_MODEL_DIMENSIONS
void MISC::GET_MODEL_DIMENSIONS(Hash modelHash, Vector3* minimum, Vector3* maximum) // 0x03E8D3D5F549087A 0x91ABB8E0 b323
Gets the dimensions of a model. Calculate (maximum - minimum) to get the size, in which case, Y will be how long the model is. Example from the scripts: MISC::GET_MODEL_DIMENSIONS(ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()), &v_1A, &v_17);
SET_FAKE_WANTED_LEVEL
void MISC::SET_FAKE_WANTED_LEVEL(int fakeWantedLevel) // 0x1454F2448DE30163 0x85B1C9FA b323
Sets a visually fake wanted level on the user interface. Used by Rockstar's scripts to "override" regular wanted levels and make custom ones while the real wanted level and multipliers are still in effect. Max is 6, anything above this makes it just 6. Also the mini-map gets the red & blue flashing effect.
GET_FAKE_WANTED_LEVEL
int MISC::GET_FAKE_WANTED_LEVEL() // 0x4C9296CBCD1B971E 0x0022A430 b323
IS_BIT_SET
BOOL MISC::IS_BIT_SET(int address, int offset) // 0xA921AA820C25702F 0x902E26AC b323
Returns bit's boolean state from [offset] of [address]. Example: MISC::IS_BIT_SET(bitAddress, 1); To enable and disable bits, see: MISC::SET_BIT(&bitAddress, 1); // enable MISC::CLEAR_BIT(&bitAddress, 1); // disable
USING_MISSION_CREATOR
void MISC::USING_MISSION_CREATOR(BOOL toggle) // 0xF14878FC50BEC6EE 0x20AB0B6B b323
ALLOW_MISSION_CREATOR_WARP
void MISC::ALLOW_MISSION_CREATOR_WARP(BOOL toggle) // 0xDEA36202FC3382DF 0x082BA6F2 b323
SET_MINIGAME_IN_PROGRESS
void MISC::SET_MINIGAME_IN_PROGRESS(BOOL toggle) // 0x19E00D7322C6F85B 0x348B9046 b323
IS_MINIGAME_IN_PROGRESS
BOOL MISC::IS_MINIGAME_IN_PROGRESS() // 0x2B4A15E44DE0F478 0x53A95E13 b323
IS_THIS_A_MINIGAME_SCRIPT
BOOL MISC::IS_THIS_A_MINIGAME_SCRIPT() // 0x7B30F65D7B710098 0x7605EF6F b323
IS_SNIPER_INVERTED
BOOL MISC::IS_SNIPER_INVERTED() // 0x61A23B7EDA9BDA24 0x5C3BF51B b323
This function is hard-coded to always return 0.
SHOULD_USE_METRIC_MEASUREMENTS
BOOL MISC::SHOULD_USE_METRIC_MEASUREMENTS() // 0xD3D15555431AB793 0xBAF17315 b323
Returns true if the game is using the metric measurement system (profile setting 227), false if imperial is used.
GET_PROFILE_SETTING
int MISC::GET_PROFILE_SETTING(int profileSetting) // 0xC488FF2356EA7791 0xD374BEBC b323
ARE_STRINGS_EQUAL
BOOL MISC::ARE_STRINGS_EQUAL(const char* string1, const char* string2) // 0x0C515FAB3FF9EA92 0x877C0BC5 b323
COMPARE_STRINGS
int MISC::COMPARE_STRINGS(const char* str1, const char* str2, BOOL matchCase, int maxLength) // 0x1E34710ECD4AB0EB 0xFE25A58F b323
Compares two strings up to a specified number of characters. Parameters: str1 - String to be compared. str2 - String to be compared. matchCase - Comparison will be case-sensitive. maxLength - Maximum number of characters to compare. A value of -1 indicates an infinite length. Returns: A value indicating the relationship between the strings: <0 - The first non-matching character in 'str1' is less than the one in 'str2'. (e.g. 'A' < 'B', so result = -1) 0 - The contents of both strings are equal. >0 - The first non-matching character in 'str1' is less than the one in 'str2'. (e.g. 'B' > 'A', so result = 1) Examples: MISC::COMPARE_STRINGS("STRING", "string", false, -1); // 0; equal MISC::COMPARE_STRINGS("TESTING", "test", false, 4); // 0; equal MISC::COMPARE_STRINGS("R2D2", "R2xx", false, 2); // 0; equal MISC::COMPARE_STRINGS("foo", "bar", false, -1); // 4; 'f' > 'b' MISC::COMPARE_STRINGS("A", "A", true, 1); // 0; equal When comparing case-sensitive strings, lower-case characters are greater than upper-case characters: MISC::COMPARE_STRINGS("A", "a", true, 1); // -1; 'A' < 'a' MISC::COMPARE_STRINGS("a", "A", true, 1); // 1; 'a' > 'A'
ABSI
int MISC::ABSI(int value) // 0xF0D31AD191A74F87 0xB44677C5 b323
ABSF
float MISC::ABSF(float value) // 0x73D57CFFDD12C355 0xAF6F6E0B b323
IS_SNIPER_BULLET_IN_AREA
BOOL MISC::IS_SNIPER_BULLET_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2) // 0xFEFCF11B01287125 0x0483715C b323
Determines whether there is a sniper bullet within the specified coordinates. The coordinates form an axis-aligned bounding box.
IS_PROJECTILE_IN_AREA
BOOL MISC::IS_PROJECTILE_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, BOOL ownedByPlayer) // 0x5270A8FBC098C3F8 0x78E1A557 b323
Determines whether there is a projectile within the specified coordinates. The coordinates form a rectangle. - Nacorpio ownedByPlayer = only projectiles fired by the player will be detected.
IS_PROJECTILE_TYPE_IN_AREA
BOOL MISC::IS_PROJECTILE_TYPE_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, int type, BOOL ownedByPlayer) // 0x2E0DC353342C4A6D 0x2B73BCF6 b323
Determines whether there is a projectile of a specific type within the specified coordinates. The coordinates form a axis-aligned bounding box.
IS_PROJECTILE_TYPE_IN_ANGLED_AREA
BOOL MISC::IS_PROJECTILE_TYPE_IN_ANGLED_AREA(float x1, float y1, float z1, float x2, float y2, float z2, float width, Any p7, BOOL ownedByPlayer) // 0xF0BC12401061DEA0 0xD1AE2681 b323
See IS_POINT_IN_ANGLED_AREA for the definition of an angled area.
IS_PROJECTILE_TYPE_WITHIN_DISTANCE
BOOL MISC::IS_PROJECTILE_TYPE_WITHIN_DISTANCE(float x, float y, float z, Hash projectileHash, float radius, BOOL ownedByPlayer) // 0x34318593248C8FB2 0xBE81F1E2 b323
GET_COORDS_OF_PROJECTILE_TYPE_IN_AREA
BOOL MISC::GET_COORDS_OF_PROJECTILE_TYPE_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, Hash projectileHash, Vector3* projectilePos, BOOL ownedByPlayer) // 0x8D7A43EC6A5FEA45 0x1A40454B b323
GET_COORDS_OF_PROJECTILE_TYPE_WITHIN_DISTANCE
Vector3 MISC::GET_COORDS_OF_PROJECTILE_TYPE_WITHIN_DISTANCE(Ped ped, Hash weaponHash, float radius, Entity* entity, BOOL ownedByPlayer) // 0xDFB4138EEFED7B81 0x6BDE5CE4 b323
_GET_PROJECTILE_NEAR_PED
BOOL MISC::_GET_PROJECTILE_NEAR_PED(Ped ped, Hash weaponhash, float p2, float p3, float p4, BOOL p5) // 0x82FDE6A57EE4EE44 0x507BC6F7 b323
GET_PROJECTILE_*
IS_BULLET_IN_ANGLED_AREA
BOOL MISC::IS_BULLET_IN_ANGLED_AREA(float x1, float y1, float z1, float x2, float y2, float z2, float width, BOOL ownedByPlayer) // 0x1A8B5F3C01E2B477 0xE2DB58F7 b323
For projectiles, see: IS_PROJECTILE_TYPE_IN_ANGLED_AREA See IS_POINT_IN_ANGLED_AREA for the definition of an angled area. Returns True if a bullet, as maintained by a pool within CWeaponManager, has been fired into the defined angled area.
IS_BULLET_IN_AREA
BOOL MISC::IS_BULLET_IN_AREA(float x, float y, float z, float radius, BOOL ownedByPlayer) // 0x3F2023999AD51C1F 0xB54F46CA b323
IS_BULLET_IN_BOX
BOOL MISC::IS_BULLET_IN_BOX(float x1, float y1, float z1, float x2, float y2, float z2, BOOL ownedByPlayer) // 0xDE0F6D7450D37351 0xAB73ED26 b323
HAS_BULLET_IMPACTED_IN_AREA
BOOL MISC::HAS_BULLET_IMPACTED_IN_AREA(float x, float y, float z, float p3, BOOL p4, BOOL p5) // 0x9870ACFB89A90995 0x902BC7D9 b323
p3 - possibly radius?
HAS_BULLET_IMPACTED_IN_BOX
BOOL MISC::HAS_BULLET_IMPACTED_IN_BOX(float p0, float p1, float p2, float p3, float p4, float p5, BOOL p6, BOOL p7) // 0xDC8C5D7CFEAB8394 0x2C2618CC b323
IS_ORBIS_VERSION
BOOL MISC::IS_ORBIS_VERSION() // 0xA72BC0B675B1519E 0x40282018 b323
PS4
IS_DURANGO_VERSION
BOOL MISC::IS_DURANGO_VERSION() // 0x4D982ADB1978442D 0x46FB06A5 b323
XBOX ONE
IS_XBOX360_VERSION
BOOL MISC::IS_XBOX360_VERSION() // 0xF6201B4DAF662A9D 0x24005CC8 b323
IS_PS3_VERSION
BOOL MISC::IS_PS3_VERSION() // 0xCCA1072C29D096C2 0x4C0D5303 b323
IS_PC_VERSION
BOOL MISC::IS_PC_VERSION() // 0x48AF36444B965238 0x4D5D9EE3 b323
IS_AUSSIE_VERSION
BOOL MISC::IS_AUSSIE_VERSION() // 0x9F1935CA1F724008 0x944BA1DC b323
if (MISC::IS_AUSSIE_VERSION()) { sub_127a9(&l_31, 1024); // l_31 |= 1024 l_129 = 3; sub_129d2("AUSSIE VERSION IS TRUE!?!?!"); // DEBUG } Used to block some of the prostitute stuff due to laws in Australia.
IS_STRING_NULL
BOOL MISC::IS_STRING_NULL(const char* string) // 0xF22B6C47C6EAB066 0x8E71E00F b323
IS_STRING_NULL_OR_EMPTY
BOOL MISC::IS_STRING_NULL_OR_EMPTY(const char* string) // 0xCA042B6957743895 0x42E9F2CA b323
STRING_TO_INT
BOOL MISC::STRING_TO_INT(const char* string, int* outInteger) // 0x5A5F40FE637EB584 0x590A8160 b323
Returns false if it's a null or empty string or if the string is too long. outInteger will be set to -999 in that case. If all checks have passed successfully, the return value will be set to whatever strtol(string, 0i64, 10); returns.
SET_BITS_IN_RANGE
void MISC::SET_BITS_IN_RANGE(int* var, int rangeStart, int rangeEnd, int p3) // 0x8EF07E15701D61ED 0x32094719 b323
GET_BITS_IN_RANGE
int MISC::GET_BITS_IN_RANGE(int var, int rangeStart, int rangeEnd) // 0x53158863FCC0893A 0xCA03A1E5 b323
ADD_STUNT_JUMP
int MISC::ADD_STUNT_JUMP(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4, float camX, float camY, float camZ, int p15, int p16, int p17) // 0x1A992DA297A4630C 0xB630E5FF b323
See description of `ADD_STUNT_JUMP_ANGLED` for detailed info. The only difference really is this one does not have the radius (or angle, not sure) floats parameters for entry and landing zones.
ADD_STUNT_JUMP_ANGLED
int MISC::ADD_STUNT_JUMP_ANGLED(float x1, float y1, float z1, float x2, float y2, float z2, float radius1, float x3, float y3, float z3, float x4, float y4, float z4, float radius2, float camX, float camY, float camZ, int p17, int p18, int p19) // 0xBBE5D803A5360CBF 0xB9B7E777 b323
Creates a new stunt jump. The radius1 and radius2 might actually not be a radius at all, but that's what it seems to me testing them in-game. But they may be 'angle' floats instead, considering this native is named ADD_STUNT_JUMP_**ANGLED**. Info about the specific 'parameter sections': **x1, y1, z1, x2, y2, z2 and radius1:** First coordinates are for the jump entry area, and the radius that will be checked around that area. So if you're not exactly within the coordinates, but you are within the outter radius limit then it will still register as entering the stunt jump. Note as mentioned above, the radius is just a guess, I'm not really sure about it's exact purpose. **x3, y3, z3, x4, y4, z4 and radius2:** Next part is the landing area, again starting with the left bottom (nearest to the stunt jump entry zone) coordinate, and the second one being the top right furthest away part of the landing area. Followed by another (most likely) radius float, this is usually slightly larger than the entry zone 'radius' float value, just because you have quite a lot of places where you can land (I'm guessing). **camX, camY and camZ:** The final coordinate in this native is the Camera position. Rotation and zoom/FOV is managed by the game itself, you just need to provide the camera location. **unk1, unk2 and unk3:** Not sure what these are for, but they're always `150, 0, 0` in decompiled scripts. Visualized example in-game: https://d.fivem.dev/2019-03-15_18-24_c7802_846.png Here is a list of almost all of the stunt jumps from GTA V (taken from decompiled scripts): https://pastebin.com/EW1jBPkY
_0xFB80AB299D2EE1BD
void MISC::_0xFB80AB299D2EE1BD(BOOL toggle) // 0xFB80AB299D2EE1BD b757
Toggles some stunt jump stuff.
DELETE_STUNT_JUMP
void MISC::DELETE_STUNT_JUMP(int p0) // 0xDC518000E39DAE1F 0x840CB5DA b323
ENABLE_STUNT_JUMP_SET
void MISC::ENABLE_STUNT_JUMP_SET(int p0) // 0xE369A5783B866016 0x9D1E7785 b323
DISABLE_STUNT_JUMP_SET
void MISC::DISABLE_STUNT_JUMP_SET(int p0) // 0xA5272EBEDD4747F6 0x644C9FA4 b323
SET_STUNT_JUMPS_CAN_TRIGGER
void MISC::SET_STUNT_JUMPS_CAN_TRIGGER(BOOL toggle) // 0xD79185689F8FD5DF 0x3C806A2D b323
IS_STUNT_JUMP_IN_PROGRESS
BOOL MISC::IS_STUNT_JUMP_IN_PROGRESS() // 0x7A3F19700A4D0525 0xF477D0B1 b323
IS_STUNT_JUMP_MESSAGE_SHOWING
BOOL MISC::IS_STUNT_JUMP_MESSAGE_SHOWING() // 0x2272B0A1343129F4 0x021636EE b323
GET_NUM_SUCCESSFUL_STUNT_JUMPS
int MISC::GET_NUM_SUCCESSFUL_STUNT_JUMPS() // 0x996DD1E1E02F1008 0x006F9BA2 b323
GET_TOTAL_SUCCESSFUL_STUNT_JUMPS
int MISC::GET_TOTAL_SUCCESSFUL_STUNT_JUMPS() // 0x6856EC3D35C81EA4 0x495BE324 b323
CANCEL_STUNT_JUMP
void MISC::CANCEL_STUNT_JUMP() // 0xE6B7B0ACD4E4B75E 0xF43D9821 b323
SET_GAME_PAUSED
void MISC::SET_GAME_PAUSED(BOOL toggle) // 0x577D1284D6873711 0x8230FF6C b323
Make sure to call this from the correct thread if you're using multiple threads because all other threads except the one which is calling SET_GAME_PAUSED will be paused which means you will lose control and the game remains in paused mode until you exit GTA5.exe
SET_THIS_SCRIPT_CAN_BE_PAUSED
void MISC::SET_THIS_SCRIPT_CAN_BE_PAUSED(BOOL toggle) // 0xAA391C728106F7AF 0xA0C3CE29 b323
SET_THIS_SCRIPT_CAN_REMOVE_BLIPS_CREATED_BY_ANY_SCRIPT
void MISC::SET_THIS_SCRIPT_CAN_REMOVE_BLIPS_CREATED_BY_ANY_SCRIPT(BOOL toggle) // 0xB98236CAAECEF897 0xD06F1720 b323
_HAS_BUTTON_COMBINATION_JUST_BEEN_ENTERED
BOOL MISC::_HAS_BUTTON_COMBINATION_JUST_BEEN_ENTERED(Hash hash, int amount) // 0x071E2A839DE82D90 0xFF6191E1 b323
This native appears on the cheat_controller script and tracks a combination of buttons, which may be used to toggle cheats in-game. Credits to ThreeSocks for the info. The hash contains the combination, while the "amount" represents the amount of buttons used in a combination. The following page can be used to make a button combination: gta5offset.com/ts/hash/ INT_SCORES_SCORTED was a hash collision
_HAS_CHEAT_STRING_JUST_BEEN_ENTERED
BOOL MISC::_HAS_CHEAT_STRING_JUST_BEEN_ENTERED(Hash hash) // 0x557E43C447E700A8 b323
Get inputted "Cheat code", for example: while (TRUE) { if (MISC::_557E43C447E700A8(${fugitive})) { // Do something. } SYSTEM::WAIT(0); } Calling this will also set the last saved string hash to zero.
_0xFA3FFB0EEBC288A3
void MISC::_0xFA3FFB0EEBC288A3(BOOL p0) // 0xFA3FFB0EEBC288A3 b2060
SET_INSTANCE_PRIORITY_MODE
void MISC::SET_INSTANCE_PRIORITY_MODE(int p0) // 0x9BAE5AD2508DF078 0x721B2492 b323
Formerly known as _LOWER_MAP_PROP_DENSITY and wrongly due to idiots as _ENABLE_MP_DLC_MAPS. Sets the maximum prop density and changes a loading screen flag from 'loading story mode' to 'loading GTA Online'. Does not touch DLC map data at all. In fact, I doubt this changes the flag whatsoever, that's the OTHER native idiots use together with this that does so, this one only causes a loading screen to show as it reloads map data.
SET_INSTANCE_PRIORITY_HINT
void MISC::SET_INSTANCE_PRIORITY_HINT(int flag) // 0xC5F0A8EBD3F361CE 0xE202879D b323
Sets an unknown flag used by CScene in determining which entities from CMapData scene nodes to draw, similar to SET_INSTANCE_PRIORITY_MODE.
IS_FRONTEND_FADING
BOOL MISC::IS_FRONTEND_FADING() // 0x7EA2B6AF97ECA6ED 0x8FF6232C b323
This function is hard-coded to always return 0.
POPULATE_NOW
void MISC::POPULATE_NOW() // 0x7472BB270D7B4F3E 0x72C20700 b323
spawns a few distant/out-of-sight peds, vehicles, animals etc each time it is called
GET_INDEX_OF_CURRENT_LEVEL
int MISC::GET_INDEX_OF_CURRENT_LEVEL() // 0xCBAD6729F7B1F4FC 0x6F203C6E b323
SET_GRAVITY_LEVEL
void MISC::SET_GRAVITY_LEVEL(int level) // 0x740E14FAD5842351 0x2D833F4A b323
level can be from 0 to 3 0: 9.8 - normal 1: 2.4 - low 2: 0.1 - very low 3: 0.0 - off //SuckMyCoke
START_SAVE_DATA
void MISC::START_SAVE_DATA(Any* p0, Any p1, BOOL p2) // 0xA9575F812C6A7997 0x881A694D b323
STOP_SAVE_DATA
void MISC::STOP_SAVE_DATA() // 0x74E20C9145FB66FD 0x3B1C07C8 b323
GET_SIZE_OF_SAVE_DATA
int MISC::GET_SIZE_OF_SAVE_DATA(BOOL p0) // 0xA09F896CE912481F 0x9EF0BC64 b323
REGISTER_INT_TO_SAVE
void MISC::REGISTER_INT_TO_SAVE(Any* p0, const char* name) // 0x34C9EE5986258415 0xB930956F b323
_REGISTER_INT64_TO_SAVE
void MISC::_REGISTER_INT64_TO_SAVE(Any* p0, const char* name) // 0xA735353C77334EA0 b323
REGISTER_ENUM_TO_SAVE
void MISC::REGISTER_ENUM_TO_SAVE(Any* p0, const char* name) // 0x10C2FA78D0E128A1 0x9B38374A b323
REGISTER_FLOAT_TO_SAVE
void MISC::REGISTER_FLOAT_TO_SAVE(Any* p0, const char* name) // 0x7CAEC29ECB5DFEBB 0xDB06F7AD b323
REGISTER_BOOL_TO_SAVE
void MISC::REGISTER_BOOL_TO_SAVE(Any* p0, const char* name) // 0xC8F4131414C835A1 0x5417E0E0 b323
REGISTER_TEXT_LABEL_TO_SAVE
void MISC::REGISTER_TEXT_LABEL_TO_SAVE(Any* p0, const char* name) // 0xEDB1232C5BEAE62F 0x284352C4 b323
_REGISTER_TEXT_LABEL_TO_SAVE_2
void MISC::_REGISTER_TEXT_LABEL_TO_SAVE_2(Any* p0, const char* name) // 0x6F7794F28C6B2535 0xE2089749 b323
Seems to have the same functionality as REGISTER_TEXT_LABEL_TO_SAVE? MISC::_6F7794F28C6B2535(&a_0._f1, "tlPlateText"); MISC::_6F7794F28C6B2535(&a_0._f1C, "tlPlateText_pending"); MISC::_6F7794F28C6B2535(&a_0._f10B, "tlCarAppPlateText"); "tl" prefix sounds like "Text Label"
_0x48F069265A0E4BEC
void MISC::_0x48F069265A0E4BEC(Any* p0, const char* name) // 0x48F069265A0E4BEC 0xF91B8C33 b323
Only found 3 times in decompiled scripts. Not a whole lot to go off of. MISC::_48F069265A0E4BEC(a_0, "Movie_Name_For_This_Player"); MISC::_48F069265A0E4BEC(&a_0._fB, "Ringtone_For_This_Player"); MISC::_48F069265A0E4BEC(&a_0._f1EC4._f12[v_A/*6*/], &v_13); // where v_13 is "MPATMLOGSCRS0" thru "MPATMLOGSCRS15"
_0x8269816F6CFD40F8
void MISC::_0x8269816F6CFD40F8(Any* p0, const char* name) // 0x8269816F6CFD40F8 0x74E8FAD9 b323
Only found 2 times in decompiled scripts. Not a whole lot to go off of. MISC::_8269816F6CFD40F8(&a_0._f1F5A._f6[0/*8*/], "TEMPSTAT_LABEL"); // gets saved in a struct called "g_SaveData_STRING_ScriptSaves" MISC::_8269816F6CFD40F8(&a_0._f4B4[v_1A/*8*/], &v_5); // where v_5 is "Name0" thru "Name9", gets saved in a struct called "OUTFIT_Name"
_0xFAA457EF263E8763
void MISC::_0xFAA457EF263E8763(Any* p0, const char* name) // 0xFAA457EF263E8763 0x6B4335DD b323
Another unknown label type... MISC::_FAA457EF263E8763(a_0, "Thumb_label"); MISC::_FAA457EF263E8763(&a_0._f10, "Photo_label"); MISC::_FAA457EF263E8763(a_0, "GXTlabel"); MISC::_FAA457EF263E8763(&a_0._f21, "StringComp"); MISC::_FAA457EF263E8763(&a_0._f43, "SecondStringComp"); MISC::_FAA457EF263E8763(&a_0._f53, "ThirdStringComp"); MISC::_FAA457EF263E8763(&a_0._f32, "SenderStringComp"); MISC::_FAA457EF263E8763(&a_0._f726[v_1A/*16*/], &v_20); // where v_20 is "LastJobTL_0_1" thru "LastJobTL_2_1", gets saved in a struct called "LAST_JobGamer_TL" MISC::_FAA457EF263E8763(&a_0._f4B, "PAID_PLAYER"); MISC::_FAA457EF263E8763(&a_0._f5B, "RADIO_STATION");
START_SAVE_STRUCT_WITH_SIZE
void MISC::START_SAVE_STRUCT_WITH_SIZE(Any* p0, int size, const char* structName) // 0xBF737600CDDBEADD 0xFB45728E b323
STOP_SAVE_STRUCT
void MISC::STOP_SAVE_STRUCT() // 0xEB1774DF12BB9F12 0xC2624A28 b323
START_SAVE_ARRAY_WITH_SIZE
void MISC::START_SAVE_ARRAY_WITH_SIZE(Any* p0, int size, const char* arrayName) // 0x60FE567DF1B1AF9D 0x893A342C b323
STOP_SAVE_ARRAY
void MISC::STOP_SAVE_ARRAY() // 0x04456F95153C6BE4 0x0CAD8217 b323
_COPY_MEMORY
void MISC::_COPY_MEMORY(Any* dst, Any* src, int size) // 0x213AEB2B90CBA7AC b877
ENABLE_DISPATCH_SERVICE
void MISC::ENABLE_DISPATCH_SERVICE(int dispatchService, BOOL toggle) // 0xDC0F817884CDD856 0x0B710A51 b323
https://alloc8or.re/gta5/doc/enums/DispatchType.txt
BLOCK_DISPATCH_SERVICE_RESOURCE_CREATION
void MISC::BLOCK_DISPATCH_SERVICE_RESOURCE_CREATION(int dispatchService, BOOL toggle) // 0x9B2BD3773123EA2F 0xE0F0684F b323
_GET_NUM_DISPATCHED_UNITS_FOR_PLAYER
int MISC::_GET_NUM_DISPATCHED_UNITS_FOR_PLAYER(int dispatchService) // 0xEB4A0C2D56441717 0x3CE5BF6B b323
CREATE_INCIDENT
BOOL MISC::CREATE_INCIDENT(int dispatchService, float x, float y, float z, int numUnits, float radius, int* outIncidentID, Any p7, Any p8) // 0x3F892CAF67444AE7 0xFC5FF7B3 b323
As for the 'police' incident, it will call police cars to you, but unlike PedsInCavalcades & Merryweather they won't start shooting at you unless you shoot first or shoot at them. The top 2 however seem to cancel theirselves if there is noone dead around you or a fire. I only figured them out as I found out the 3rd param is definately the amountOfPeople and they called incident 3 in scripts with 4 people (which the firetruck has) and incident 5 with 2 people (which the ambulence has). The 4 param I cant say is radius, but for the pedsInCavalcades and Merryweather R* uses 0.0f and for the top 3 (Emergency Services) they use 3.0f. Side Note: It seems calling the pedsInCavalcades or Merryweather then removing it seems to break you from calling the EmergencyEvents and I also believe pedsInCavalcades. (The V cavalcades of course not IV). Side Note 2: I say it breaks as if you call this proper, if(CREATE_INCIDENT) etc it will return false if you do as I said above. =====================================================
CREATE_INCIDENT_WITH_ENTITY
BOOL MISC::CREATE_INCIDENT_WITH_ENTITY(int dispatchService, Ped ped, int numUnits, float radius, int* outIncidentID, Any p5, Any p6) // 0x05983472F0494E60 0xBBC35B03 b323
As for the 'police' incident, it will call police cars to you, but unlike PedsInCavalcades & Merryweather they won't start shooting at you unless you shoot first or shoot at them. The top 2 however seem to cancel theirselves if there is noone dead around you or a fire. I only figured them out as I found out the 3rd param is definately the amountOfPeople and they called incident 3 in scripts with 4 people (which the firetruck has) and incident 5 with 2 people (which the ambulence has). The 4 param I cant say is radius, but for the pedsInCavalcades and Merryweather R* uses 0.0f and for the top 3 (Emergency Services) they use 3.0f. Side Note: It seems calling the pedsInCavalcades or Merryweather then removing it seems to break you from calling the EmergencyEvents and I also believe pedsInCavalcades. (The V cavalcades of course not IV). Side Note 2: I say it breaks as if you call this proper, if(CREATE_INCIDENT) etc it will return false if you do as I said above. =====================================================
DELETE_INCIDENT
void MISC::DELETE_INCIDENT(int incidentId) // 0x556C1AA270D5A207 0x212BD0DC b323
Delete an incident with a given id. ======================================================= Correction, I have change this to int, instead of int* as it doesn't use a pointer to the createdIncident. If you try it you will crash (or) freeze. =======================================================
IS_INCIDENT_VALID
BOOL MISC::IS_INCIDENT_VALID(int incidentId) // 0xC8BC6461E629BEAA 0x31FD0BA4 b323
======================================================= Correction, I have change this to int, instead of int* as it doesn't use a pointer to the createdIncident. If you try it you will crash (or) freeze. =======================================================
SET_INCIDENT_REQUESTED_UNITS
void MISC::SET_INCIDENT_REQUESTED_UNITS(int incidentId, int dispatchService, int numUnits) // 0xB08B85D860E7BA3C 0x0242D88E b323
_SET_INCIDENT_UNK
void MISC::_SET_INCIDENT_UNK(int incidentId, float p1) // 0xD261BA3E7E998072 0x1F38102E b323
SET_INCIDENT_*
FIND_SPAWN_POINT_IN_DIRECTION
BOOL MISC::FIND_SPAWN_POINT_IN_DIRECTION(float x1, float y1, float z1, float x2, float y2, float z2, float distance, Vector3* spawnPoint) // 0x6874E2190B0C1972 0x71AEFD77 b323
Finds a position ahead of the player by predicting the players next actions. The positions match path finding node positions. When roads diverge, the position may rapidly change between two or more positions. This is due to the engine not being certain of which path the player will take. ======================================================= I may sort this with alter research, but if someone already knows please tell what the difference in X2, Y2, Z2 is. I doubt it's rotation. Is it like checkpoints where X1, Y1, Z1 is your/a position and X2, Y2, Z2 is a given position ahead of that position? =======================================================
ADD_POP_MULTIPLIER_AREA
int MISC::ADD_POP_MULTIPLIER_AREA(float x1, float y1, float z1, float x2, float y2, float z2, float p6, float p7, BOOL p8, BOOL p9) // 0x67F6413D3220E18D 0x42BF09B3 b323
DOES_POP_MULTIPLIER_AREA_EXIST
BOOL MISC::DOES_POP_MULTIPLIER_AREA_EXIST(int id) // 0x1327E2FE9746BAEE 0xE933B34A b323
REMOVE_POP_MULTIPLIER_AREA
void MISC::REMOVE_POP_MULTIPLIER_AREA(int id, BOOL p1) // 0xB129E447A2EDA4BF 0xFBDBE374 b323
_IS_POP_MULTIPLIER_AREA_UNK
BOOL MISC::_IS_POP_MULTIPLIER_AREA_UNK(int id) // 0x1312F4B242609CE3 b1290
ADD_POP_MULTIPLIER_SPHERE
int MISC::ADD_POP_MULTIPLIER_SPHERE(float x, float y, float z, float radius, float pedMultiplier, float vehicleMultiplier, BOOL p6, BOOL p7) // 0x32C7A7E8C43A1F80 0xCE4A3D20 b323
This native is adding a zone, where you can change density settings. For example, you can add a zone on 0.0, 0.0, 0.0 with radius 900.0 and vehicleMultiplier 0.0, and you will not see any new population vehicle spawned in a radius of 900.0 from 0.0, 0.0, 0.0. Returns the id. You can have only 15 zones at the same time. You can remove zone using REMOVE_POP_MULTIPLIER_SPHERE
DOES_POP_MULTIPLIER_SPHERE_EXIST
BOOL MISC::DOES_POP_MULTIPLIER_SPHERE_EXIST(int id) // 0x171BAFB3C60389F4 0xD2B7A5A0 b791
REMOVE_POP_MULTIPLIER_SPHERE
void MISC::REMOVE_POP_MULTIPLIER_SPHERE(int id, BOOL p1) // 0xE6869BECDD8F2403 0x92E7E4EB b323
Removes population multiplier sphere
ENABLE_TENNIS_MODE
void MISC::ENABLE_TENNIS_MODE(Ped ped, BOOL toggle, BOOL p2) // 0x28A04B411933F8A6 0x0BD3F9EC b323
Makes the ped jump around like they're in a tennis match
IS_TENNIS_MODE
BOOL MISC::IS_TENNIS_MODE(Ped ped) // 0x5D5479D115290C3F 0x04A947BA b323
PLAY_TENNIS_SWING_ANIM
void MISC::PLAY_TENNIS_SWING_ANIM(Ped ped, const char* animDict, const char* animName, float p3, float p4, BOOL p5) // 0xE266ED23311F24D4 0xC20A7D2B b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
GET_TENNIS_SWING_ANIM_COMPLETE
BOOL MISC::GET_TENNIS_SWING_ANIM_COMPLETE(Ped ped) // 0x17DF68D720AA77F8 0x8501E727 b323
_0x19BFED045C647C49
BOOL MISC::_0x19BFED045C647C49(Ped ped) // 0x19BFED045C647C49 0x1A332D2D b323
Related to tennis mode. GET_TENNIS_*
_0xE95B0C7D5BA3B96B
BOOL MISC::_0xE95B0C7D5BA3B96B(Ped ped) // 0xE95B0C7D5BA3B96B b323
Related to tennis mode. GET_TENNIS_*
PLAY_TENNIS_DIVE_ANIM
void MISC::PLAY_TENNIS_DIVE_ANIM(Ped ped, int p1, float p2, float p3, float p4, BOOL p5) // 0x8FA9C42FC5D7C64B 0x0C8865DF b323
_0x54F157E0336A3822
void MISC::_0x54F157E0336A3822(Ped ped, const char* p1, float p2) // 0x54F157E0336A3822 0x49F977A9 b323
From the scripts: MISC::_54F157E0336A3822(sub_aa49(a_0), "ForcedStopDirection", v_E); Related to tennis mode. SET_*
_RESET_DISPATCH_SPAWN_LOCATION
void MISC::_RESET_DISPATCH_SPAWN_LOCATION() // 0x5896F2BD5683A4E1 b1868
SET_DISPATCH_SPAWN_LOCATION
void MISC::SET_DISPATCH_SPAWN_LOCATION(float x, float y, float z) // 0xD10F442036302D50 0x6F009E33 b323
RESET_DISPATCH_IDEAL_SPAWN_DISTANCE
void MISC::RESET_DISPATCH_IDEAL_SPAWN_DISTANCE() // 0x77A84429DD9F0A15 0xDA65ECAA b323
SET_DISPATCH_IDEAL_SPAWN_DISTANCE
void MISC::SET_DISPATCH_IDEAL_SPAWN_DISTANCE(float p0) // 0x6FE601A64180D423 0x6283BE32 b323
RESET_DISPATCH_TIME_BETWEEN_SPAWN_ATTEMPTS
void MISC::RESET_DISPATCH_TIME_BETWEEN_SPAWN_ATTEMPTS(Any p0) // 0xEB2DB0CAD13154B3 0x1479E85A b323
SET_DISPATCH_TIME_BETWEEN_SPAWN_ATTEMPTS
void MISC::SET_DISPATCH_TIME_BETWEEN_SPAWN_ATTEMPTS(Any p0, float p1) // 0x44F7CBC1BEB3327D 0xABADB709 b323
SET_DISPATCH_TIME_BETWEEN_SPAWN_ATTEMPTS_MULTIPLIER
void MISC::SET_DISPATCH_TIME_BETWEEN_SPAWN_ATTEMPTS_MULTIPLIER(Any p0, float p1) // 0x48838ED9937A15D1 0x1C996BCD b323
_ADD_DISPATCH_SPAWN_BLOCKING_ANGLED_AREA
Any MISC::_ADD_DISPATCH_SPAWN_BLOCKING_ANGLED_AREA(float x1, float y1, float z1, float x2, float y2, float z2, float width) // 0x918C7B2D2FF3928B 0xF557BAF9 b323
To remove, see: REMOVE_DISPATCH_SPAWN_BLOCKING_AREA See IS_POINT_IN_ANGLED_AREA for the definition of an angled area.
_ADD_DISPATCH_SPAWN_BLOCKING_AREA
Any MISC::_ADD_DISPATCH_SPAWN_BLOCKING_AREA(float x1, float y1, float x2, float y2) // 0x2D4259F1FEB81DA9 b323
REMOVE_DISPATCH_SPAWN_BLOCKING_AREA
void MISC::REMOVE_DISPATCH_SPAWN_BLOCKING_AREA(Any p0) // 0x264AC28B01B353A5 0xA8D2FB92 b323
RESET_DISPATCH_SPAWN_BLOCKING_AREAS
void MISC::RESET_DISPATCH_SPAWN_BLOCKING_AREAS() // 0xAC7BFD5C1D83EA75 0x9A17F835 b323
_0xD9F692D349249528
void MISC::_0xD9F692D349249528() // 0xD9F692D349249528 0xE0C9307E b323
RESET_*
_0xE532EC1A63231B4F
void MISC::_0xE532EC1A63231B4F(int p0, int p1) // 0xE532EC1A63231B4F 0xA0D8C749 b323
SET_*
_ADD_TACTICAL_ANALYSIS_POINT
void MISC::_ADD_TACTICAL_ANALYSIS_POINT(float x, float y, float z) // 0xB8721407EE9C3FF6 0x24A4E0B2 b323
Adds a point related to CTacticalAnalysis
_CLEAR_TACTICAL_ANALYSIS_POINTS
void MISC::_CLEAR_TACTICAL_ANALYSIS_POINTS() // 0xB3CD58CCA6CDA852 0x66C3C59C b323
SET_RIOT_MODE_ENABLED
void MISC::SET_RIOT_MODE_ENABLED(BOOL toggle) // 0x2587A48BC88DFADF 0xD9660339 b323
Activates (usused?) riot mode. All NPCs are being hostile to each other (including player). Also the game will give weapons (pistols, smgs) to random NPCs.
DISPLAY_ONSCREEN_KEYBOARD_WITH_LONGER_INITIAL_STRING
void MISC::DISPLAY_ONSCREEN_KEYBOARD_WITH_LONGER_INITIAL_STRING(int p0, const char* windowTitle, Any* p2, const char* defaultText, const char* defaultConcat1, const char* defaultConcat2, const char* defaultConcat3, const char* defaultConcat4, const char* defaultConcat5, const char* defaultConcat6, const char* defaultConcat7, int maxInputLength) // 0xCA78CFA0366592FE 0xD2688412 b323
DISPLAY_ONSCREEN_KEYBOARD
void MISC::DISPLAY_ONSCREEN_KEYBOARD(int p0, const char* windowTitle, const char* p2, const char* defaultText, const char* defaultConcat1, const char* defaultConcat2, const char* defaultConcat3, int maxInputLength) // 0x00DC833F2568DBF6 0xAD99F2CE b323
sfink: note, p0 is set to 6 for PC platform in at least 1 script, or to `unk::_get_ui_language_id() == 0` otherwise. NOTE: windowTitle uses text labels, and an invalid value will display nothing. www.gtaforums.com/topic/788343-vrel-script-hook-v/?p=1067380474 windowTitle's ----------------- CELL_EMAIL_BOD = "Enter your Eyefind message" CELL_EMAIL_BODE = "Message too long. Try again" CELL_EMAIL_BODF = "Forbidden message. Try again" CELL_EMAIL_SOD = "Enter your Eyefind subject" CELL_EMAIL_SODE = "Subject too long. Try again" CELL_EMAIL_SODF = "Forbidden text. Try again" CELL_EMASH_BOD = "Enter your Eyefind message" CELL_EMASH_BODE = "Message too long. Try again" CELL_EMASH_BODF = "Forbidden message. Try again" CELL_EMASH_SOD = "Enter your Eyefind subject" CELL_EMASH_SODE = "Subject too long. Try again" CELL_EMASH_SODF = "Forbidden Text. Try again" FMMC_KEY_TIP10 = "Enter Synopsis" FMMC_KEY_TIP12 = "Enter Custom Team Name" FMMC_KEY_TIP12F = "Forbidden Text. Try again" FMMC_KEY_TIP12N = "Custom Team Name" FMMC_KEY_TIP8 = "Enter Message" FMMC_KEY_TIP8F = "Forbidden Text. Try again" FMMC_KEY_TIP8FS = "Invalid Message. Try again" FMMC_KEY_TIP8S = "Enter Message" FMMC_KEY_TIP9 = "Enter Outfit Name" FMMC_KEY_TIP9F = "Invalid Outfit Name. Try again" FMMC_KEY_TIP9N = "Outfit Name" PM_NAME_CHALL = "Enter Challenge Name"
UPDATE_ONSCREEN_KEYBOARD
int MISC::UPDATE_ONSCREEN_KEYBOARD() // 0x0CF2B696BBF945AE 0x23D0A1CE b323
Returns the current status of the onscreen keyboard, and updates the output. Status Codes: -1: Keyboard isn't active 0: User still editing 1: User has finished editing 2: User has canceled editing
GET_ONSCREEN_KEYBOARD_RESULT
const char* MISC::GET_ONSCREEN_KEYBOARD_RESULT() // 0x8362B09B91893647 0x44828FB3 b323
Returns NULL unless UPDATE_ONSCREEN_KEYBOARD() returns 1 in the same tick.
_CANCEL_ONSCREEN_KEYBOARD
void MISC::_CANCEL_ONSCREEN_KEYBOARD() // 0x58A39BE597CE99CD 0x196444BB b757
DO NOT use this as it doesn't clean up the text input box properly and your script will get stuck in the UPDATE_ONSCREEN_KEYBOARD() loop. Use _FORCE_CLOSE_TEXT_INPUT_BOX instead. CANCEL_*
NEXT_ONSCREEN_KEYBOARD_RESULT_WILL_DISPLAY_USING_THESE_FONTS
void MISC::NEXT_ONSCREEN_KEYBOARD_RESULT_WILL_DISPLAY_USING_THESE_FONTS(int p0) // 0x3ED1438C1F5C6612 0x3301EA47 b323
p0 was always 2 in R* scripts. Called before calling DISPLAY_ONSCREEN_KEYBOARD if the input needs to be saved.
_REMOVE_STEALTH_KILL
void MISC::_REMOVE_STEALTH_KILL(Hash hash, BOOL p1) // 0xA6A12939F16D85BE 0x42B484ED b323
Appears to remove stealth kill action from memory
_0x1EAE0A6E978894A2
void MISC::_0x1EAE0A6E978894A2(int p0, BOOL p1) // 0x1EAE0A6E978894A2 0x8F60366E b323
Unsure about the use of this native but here's an example: void sub_8709() { MISC::_1EAE0A6E978894A2(0, 1); MISC::_1EAE0A6E978894A2(1, 1); MISC::_1EAE0A6E978894A2(2, 1); MISC::_1EAE0A6E978894A2(3, 1); MISC::_1EAE0A6E978894A2(4, 1); MISC::_1EAE0A6E978894A2(5, 1); MISC::_1EAE0A6E978894A2(6, 1); MISC::_1EAE0A6E978894A2(7, 1); MISC::_1EAE0A6E978894A2(8, 1); } So it appears that p0 ranges from 0 to 8. ENABLE_DISPATCH_SERVICE, seems to have a similar layout.
SET_EXPLOSIVE_AMMO_THIS_FRAME
void MISC::SET_EXPLOSIVE_AMMO_THIS_FRAME(Player player) // 0xA66C71C98D5F2CFB 0x2EAFA1D1 b323
SET_FIRE_AMMO_THIS_FRAME
void MISC::SET_FIRE_AMMO_THIS_FRAME(Player player) // 0x11879CDD803D30F4 0x7C18FC8A b323
SET_EXPLOSIVE_MELEE_THIS_FRAME
void MISC::SET_EXPLOSIVE_MELEE_THIS_FRAME(Player player) // 0xFF1BED81BFDC0FE0 0x96663D56 b323
SET_SUPER_JUMP_THIS_FRAME
void MISC::SET_SUPER_JUMP_THIS_FRAME(Player player) // 0x57FFF03E423A4C0B 0x86745EF3 b323
_SET_BEAST_MODE_ACTIVE
void MISC::_SET_BEAST_MODE_ACTIVE(Player player) // 0x438822C279B73B93 b573
_SET_FORCE_PLAYER_TO_JUMP
void MISC::_SET_FORCE_PLAYER_TO_JUMP(Player player) // 0xA1183BCFEE0F93D1 b1180
_0x6FDDF453C0C756EC
BOOL MISC::_0x6FDDF453C0C756EC() // 0x6FDDF453C0C756EC 0xC3C10FCC b323
HAS_* Probably something like "has game been started for the first time".
_0xFB00CA71DA386228
void MISC::_0xFB00CA71DA386228() // 0xFB00CA71DA386228 0x054EC103 b323
ARE_PROFILE_SETTINGS_VALID
BOOL MISC::ARE_PROFILE_SETTINGS_VALID() // 0x5AA3BEFA29F03AD4 0x46B5A15C b323
_0xE3D969D2785FFB5E
void MISC::_0xE3D969D2785FFB5E() // 0xE3D969D2785FFB5E b323
sets something to 1
FORCE_GAME_STATE_PLAYING
void MISC::FORCE_GAME_STATE_PLAYING() // 0xC0AA53F866B3134D 0x5D209F25 b323
Sets the localplayer playerinfo state back to playing (State 0) States are: -1: "Invalid" 0: "Playing" 1: "Died" 2: "Arrested" 3: "Failed Mission" 4: "Left Game" 5: "Respawn" 6: "In MP Cutscene"
SCRIPT_RACE_INIT
void MISC::SCRIPT_RACE_INIT(Any p0, Any p1, Any p2, Any p3) // 0x0A60017F841A54F2 0x2D33F15A b323
SCRIPT_RACE_SHUTDOWN
void MISC::SCRIPT_RACE_SHUTDOWN() // 0x1FF6BF9A63E5757F 0xDF99925C b323
_0x1BB299305C3E8C13
void MISC::_0x1BB299305C3E8C13(Any p0, Any p1, Any p2, Any p3) // 0x1BB299305C3E8C13 0xA27F4472 b323
SCRIPT_RACE_*
SCRIPT_RACE_GET_PLAYER_SPLIT_TIME
BOOL MISC::SCRIPT_RACE_GET_PLAYER_SPLIT_TIME(Player player, int* p1, int* p2) // 0x8EF5573A1F801A5C 0x07FF553F b323
_START_BENCHMARK_RECORDING
void MISC::_START_BENCHMARK_RECORDING() // 0x92790862E36C2ADA b323
Begins with START_*. Next character in the name is either D or E.
_STOP_BENCHMARK_RECORDING
void MISC::_STOP_BENCHMARK_RECORDING() // 0xC7DB36C24634F52B b323
Begins with STOP_*. Next character in the name is either D or E.
_RESET_BENCHMARK_RECORDING
void MISC::_RESET_BENCHMARK_RECORDING() // 0x437138B6A830166A b323
Begins with RESET_*. Next character in the name is either D or E.
_SAVE_BENCHMARK_RECORDING
void MISC::_SAVE_BENCHMARK_RECORDING() // 0x37DEB0AA183FB6D8 b323
Saves the benchmark recording to %USERPROFILE%\Documents\Rockstar Games\GTA V\Benchmarks and submits some metrics.
_UI_IS_SINGLEPLAYER_PAUSE_MENU_ACTIVE
BOOL MISC::_UI_IS_SINGLEPLAYER_PAUSE_MENU_ACTIVE() // 0xEA2F2061875EED90 b323
Returns true if the current frontend menu is FE_MENU_VERSION_SP_PAUSE U*
_LANDING_MENU_IS_ACTIVE
BOOL MISC::_LANDING_MENU_IS_ACTIVE() // 0x3BBBD13E5041A79E b323
Returns true if the current frontend menu is FE_MENU_VERSION_LANDING_MENU
_IS_COMMAND_LINE_BENCHMARK_VALUE_SET
BOOL MISC::_IS_COMMAND_LINE_BENCHMARK_VALUE_SET() // 0xA049A5BE0F04F2F8 b323
Returns true if command line option '-benchmark' is set.
_GET_BENCHMARK_ITERATIONS_FROM_COMMAND_LINE
int MISC::_GET_BENCHMARK_ITERATIONS_FROM_COMMAND_LINE() // 0x4750FC27570311EC b323
Returns value of the '-benchmarkIterations' command line option.
_GET_BENCHMARK_PASS_FROM_COMMAND_LINE
int MISC::_GET_BENCHMARK_PASS_FROM_COMMAND_LINE() // 0x1B2366C3F2A5C8DF b323
Returns value of the '-benchmarkPass' command line option.
_RESTART_GAME
void MISC::_RESTART_GAME() // 0xE574A662ACAEFBB1 b372
In singleplayer it does exactly what the name implies. In FiveM / GTA:Online it shows `Disconnecting from GTA Online` HUD and then quits the game.
_FORCE_SOCIAL_CLUB_UPDATE
void MISC::_FORCE_SOCIAL_CLUB_UPDATE() // 0xEB6891F03362FB12 b323
Exits the game and downloads a fresh social club update on next restart.
_HAS_ASYNC_INSTALL_FINISHED
BOOL MISC::_HAS_ASYNC_INSTALL_FINISHED() // 0x14832BF2ABA53FC5 b323
Hardcoded to always return true.
_CLEANUP_ASYNC_INSTALL
void MISC::_CLEANUP_ASYNC_INSTALL() // 0xC79AE21974B01FB2 b323
_IS_IN_POWER_SAVING_MODE
BOOL MISC::_IS_IN_POWER_SAVING_MODE() // 0x684A41975F077262 b323
aka "constrained"
_GET_POWER_SAVING_MODE_DURATION
int MISC::_GET_POWER_SAVING_MODE_DURATION() // 0xABB2FA71C83A1B72 b323
Returns duration of how long the game has been in power-saving mode (aka "constrained") in milliseconds.
_SET_PLAYER_IS_IN_ANIMAL_FORM
void MISC::_SET_PLAYER_IS_IN_ANIMAL_FORM(BOOL toggle) // 0x4EBB7E87AA0DBED4 b323
If toggle is true, the ped's head is shown in the pause menu If toggle is false, the ped's head is not shown in the pause menu
GET_IS_PLAYER_IN_ANIMAL_FORM
BOOL MISC::GET_IS_PLAYER_IN_ANIMAL_FORM() // 0x9689123E3F213AA5 b323
Although we don't have a jenkins hash for this one, the name is 100% confirmed.
_SET_PLAYER_ROCKSTAR_EDITOR_DISABLED
void MISC::_SET_PLAYER_ROCKSTAR_EDITOR_DISABLED(BOOL toggle) // 0x9D8D44ADBBA61EF2 b323
SET_PLAYER_*
_0x23227DF0B2115469
void MISC::_0x23227DF0B2115469() // 0x23227DF0B2115469 b323
Does nothing (it's a nullsub).
_0xD10282B6E3751BA0
Any MISC::_0xD10282B6E3751BA0() // 0xD10282B6E3751BA0 b323
_0x693478ACBD7F18E7
void MISC::_0x693478ACBD7F18E7() // 0x693478ACBD7F18E7 b1103
MOBILE
CREATE_MOBILE_PHONE
void MOBILE::CREATE_MOBILE_PHONE(int phoneType) // 0xA4E8E696C532FBC7 0x5BBC5E23 b323
Creates a mobile phone of the specified type. Possible phone types: 0 - Default phone / Michael's phone 1 - Trevor's phone 2 - Franklin's phone 4 - Prologue phone These values represent bit flags, so a value of '3' would toggle Trevor and Franklin's phones together, causing unexpected behavior and most likely crash the game.
DESTROY_MOBILE_PHONE
void MOBILE::DESTROY_MOBILE_PHONE() // 0x3BC861DF703E5097 0x1A65037B b323
Destroys the currently active mobile phone.
SET_MOBILE_PHONE_SCALE
void MOBILE::SET_MOBILE_PHONE_SCALE(float scale) // 0xCBDD322A73D6D932 0x09BCF1BE b323
The minimum/default is 500.0f. If you plan to make it bigger set it's position as well. Also this seems to need to be called in a loop as when you close the phone the scale is reset. If not in a loop you'd need to call it everytime before you re-open the phone.
SET_MOBILE_PHONE_ROTATION
void MOBILE::SET_MOBILE_PHONE_ROTATION(float rotX, float rotY, float rotZ, Any p3) // 0xBB779C0CA917E865 0x209C28CF b323
Last parameter is unknown and always zero.
GET_MOBILE_PHONE_ROTATION
void MOBILE::GET_MOBILE_PHONE_ROTATION(Vector3* rotation, Vehicle p1) // 0x1CEFB61F193070AE 0x17A29F23 b323
SET_MOBILE_PHONE_POSITION
void MOBILE::SET_MOBILE_PHONE_POSITION(float posX, float posY, float posZ) // 0x693A5C6D6734085B 0x841800B3 b323
GET_MOBILE_PHONE_POSITION
void MOBILE::GET_MOBILE_PHONE_POSITION(Vector3* position) // 0x584FDFDA48805B86 0xB2E1E1A0 b323
SCRIPT_IS_MOVING_MOBILE_PHONE_OFFSCREEN
void MOBILE::SCRIPT_IS_MOVING_MOBILE_PHONE_OFFSCREEN(BOOL toggle) // 0xF511F759238A5122 0x29828690 b323
If bool Toggle = true so the mobile is hide to screen. If bool Toggle = false so the mobile is show to screen.
CAN_PHONE_BE_SEEN_ON_SCREEN
BOOL MOBILE::CAN_PHONE_BE_SEEN_ON_SCREEN() // 0xC4E2813898C97A4B 0x5F978584 b323
This one is weird and seems to return a TRUE state regardless of whether the phone is visible on screen or tucked away. I can confirm the above. This function is hard-coded to always return 1.
_SET_MOBILE_PHONE_UNK
void MOBILE::_SET_MOBILE_PHONE_UNK(BOOL toggle) // 0x375A706A5C2FD084 b372
_CELL_CAM_MOVE_FINGER
void MOBILE::_CELL_CAM_MOVE_FINGER(int direction) // 0x95C9E72F3D7DEC9B b323
For move the finger of player, the value of int goes 1 at 5.
_CELL_CAM_SET_LEAN
void MOBILE::_CELL_CAM_SET_LEAN(BOOL toggle) // 0x44E44169EF70138E b323
if the bool "Toggle" is "true" so the phone is lean. if the bool "Toggle" is "false" so the phone is not lean.
CELL_CAM_ACTIVATE
void MOBILE::CELL_CAM_ACTIVATE(BOOL p0, BOOL p1) // 0xFDE8F069C542D126 0x234C1AE9 b323
_CELL_CAM_DISABLE_THIS_FRAME
void MOBILE::_CELL_CAM_DISABLE_THIS_FRAME(BOOL toggle) // 0x015C49A93E3E086E 0x4479B304 b323
Disables the phone up-button, oddly enough. i.e.: When the phone is out, and this method is called with false as it's parameter, the phone will not be able to scroll up. However, when you use the down arrow key, it's functionality still, works on the phone. When the phone is not out, and this method is called with false as it's parameter, you will not be able to bring up the phone. Although the up arrow key still works for whatever functionality it's used for, just not for the phone. This can be used for creating menu's when trying to disable the phone from being used. You do not have to call the function again with false as a parameter, as soon as the function stops being called, the phone will again be usable.
_0xA2CCBE62CD4C91A4
void MOBILE::_0xA2CCBE62CD4C91A4(int* toggle) // 0xA2CCBE62CD4C91A4 0xC273BB4D b323
Needs more research. If the "phone_cam12" filter is applied, this function is called with "TRUE"; otherwise, "FALSE". Example (XBOX 360): // check current filter selection if (MISC::ARE_STRINGS_EQUAL(getElem(g_2471024, &l_17, 4), "phone_cam12") != 0) { MOBILE::_0xC273BB4D(0); // FALSE } else { MOBILE::_0xC273BB4D(1); // TRUE }
_0x1B0B4AEED5B9B41C
void MOBILE::_0x1B0B4AEED5B9B41C(float p0) // 0x1B0B4AEED5B9B41C b323
_0x53F4892D18EC90A4
void MOBILE::_0x53F4892D18EC90A4(float p0) // 0x53F4892D18EC90A4 b323
_0x3117D84EFA60F77B
void MOBILE::_0x3117D84EFA60F77B(float p0) // 0x3117D84EFA60F77B b323
_0x15E69E2802C24B8D
void MOBILE::_0x15E69E2802C24B8D(float p0) // 0x15E69E2802C24B8D b323
_0xAC2890471901861C
void MOBILE::_0xAC2890471901861C(float p0) // 0xAC2890471901861C b323
_0xD6ADE981781FCA09
void MOBILE::_0xD6ADE981781FCA09(float p0) // 0xD6ADE981781FCA09 b323
_0xF1E22DC13F5EEBAD
void MOBILE::_0xF1E22DC13F5EEBAD(float p0) // 0xF1E22DC13F5EEBAD b323
_0x466DA42C89865553
void MOBILE::_0x466DA42C89865553(float p0) // 0x466DA42C89865553 0x66DCD9D2 b323
CELL_CAM_IS_CHAR_VISIBLE_NO_FACE_CHECK
BOOL MOBILE::CELL_CAM_IS_CHAR_VISIBLE_NO_FACE_CHECK(Entity entity) // 0x439E9BC95B7E7FBE 0xBEA88097 b323
GET_MOBILE_PHONE_RENDER_ID
void MOBILE::GET_MOBILE_PHONE_RENDER_ID(int* renderId) // 0xB4A53E05F68B6FA1 0x88E4FECE b323
MONEY
NETWORK_INITIALIZE_CASH
void MONEY::NETWORK_INITIALIZE_CASH(int wallet, int bank) // 0x3DA5ECD1A56CBA6D 0x66DA9935 b323
NETWORK_DELETE_CHARACTER
void MONEY::NETWORK_DELETE_CHARACTER(int characterSlot, BOOL p1, BOOL p2) // 0x05A50AF38947EB8D 0xA9F7E9C3 b323
Note the 2nd parameters are always 1, 0. I have a feeling it deals with your money, wallet, bank. So when you delete the character it of course wipes the wallet cash at that time. So if that was the case, it would be eg, NETWORK_DELETE_CHARACTER(characterIndex, deleteWalletCash, deleteBankCash);
_NETWORK_MANUAL_DELETE_CHARACTER
void MONEY::_NETWORK_MANUAL_DELETE_CHARACTER(int characterSlot) // 0x821418C727FCACD7 b791
_NETWORK_GET_IS_HIGH_EARNER
BOOL MONEY::_NETWORK_GET_IS_HIGH_EARNER() // 0xFB2456B2040A6A67 0x63F093A6 b323
NETWORK_CLEAR_CHARACTER_WALLET
void MONEY::NETWORK_CLEAR_CHARACTER_WALLET(int characterSlot) // 0xA921DED15FDF28F5 0x19F0C471 b323
NETWORK_GIVE_PLAYER_JOBSHARE_CASH
void MONEY::NETWORK_GIVE_PLAYER_JOBSHARE_CASH(int amount, int* networkHandle) // 0xFB18DF9CB95E0105 0xC6047FDB b323
NETWORK_RECEIVE_PLAYER_JOBSHARE_CASH
void MONEY::NETWORK_RECEIVE_PLAYER_JOBSHARE_CASH(int value, int* networkHandle) // 0x56A3B51944C50598 0x4ED71C1A b323
NETWORK_CAN_SHARE_JOB_CASH
BOOL MONEY::NETWORK_CAN_SHARE_JOB_CASH() // 0x1C2473301B1C66BA 0xA27B9FE8 b323
NETWORK_REFUND_CASH
void MONEY::NETWORK_REFUND_CASH(int index, const char* context, const char* reason, BOOL unk) // 0xF9C812CD7C46E817 0x07C92F21 b323
index ------- See function sub_1005 in am_boat_taxi.ysc context ---------- "BACKUP_VAGOS" "BACKUP_LOST" "BACKUP_FAMILIES" "HIRE_MUGGER" "HIRE_MERCENARY" "BUY_CARDROPOFF" "HELI_PICKUP" "BOAT_PICKUP" "CLEAR_WANTED" "HEAD_2_HEAD" "CHALLENGE" "SHARE_LAST_JOB" "DEFAULT" reason --------- "NOTREACHTARGET" "TARGET_ESCAPE" "DELIVERY_FAIL" "NOT_USED" "TEAM_QUIT" "SERVER_ERROR" "RECEIVE_LJ_L" "CHALLENGE_PLAYER_LEFT" "DEFAULT" unk ----- Unknown bool value
_NETWORK_DEDUCT_CASH
void MONEY::_NETWORK_DEDUCT_CASH(int amount, const char* p1, const char* p2, BOOL p3, BOOL p4, BOOL p5) // 0x18B7AE224B087E26 b323
NETWORK_MONEY_CAN_BET
BOOL MONEY::NETWORK_MONEY_CAN_BET(int amount, BOOL p1, BOOL p2) // 0x81404F3DC124FE5B 0x8474E6F0 b323
NETWORK_CAN_BET
BOOL MONEY::NETWORK_CAN_BET(int amount) // 0x3A54E33660DED67F 0xE3802533 b323
NETWORK_CAN_BUY_LOTTERY_TICKET
BOOL MONEY::NETWORK_CAN_BUY_LOTTERY_TICKET(int cost) // 0xC62DD18375C99130 0x334B9364 b323
_NETWORK_CASINO_CAN_USE_GAMBLING_TYPE
BOOL MONEY::_NETWORK_CASINO_CAN_USE_GAMBLING_TYPE(Hash hash) // 0x158C16F5E4CF41F8 b1734
GTAO_CASINO_HOUSE GTAO_CASINO_INSIDETRACK GTAO_CASINO_LUCKYWHEEL GTAO_CASINO_BLACKJACK GTAO_CASINO_ROULETTE GTAO_CASINO_SLOTS GTAO_CASINO_PURCHASE_CHIPS NETWORK_C*
_NETWORK_CASINO_CAN_PURCHASE_CHIPS_WITH_PVC
BOOL MONEY::_NETWORK_CASINO_CAN_PURCHASE_CHIPS_WITH_PVC() // 0x394DCDB9E836B7A9 b1734
Same as 0x8968D4D8C6C40C11. NETWORK_C*
_NETWORK_CASINO_CAN_GAMBLE
BOOL MONEY::_NETWORK_CASINO_CAN_GAMBLE(Any p0) // 0xF62F6D9528358FE4 b1734
NETWORK_C*
_NETWORK_CASINO_CAN_PURCHASE_CHIPS_WITH_PVC_2
BOOL MONEY::_NETWORK_CASINO_CAN_PURCHASE_CHIPS_WITH_PVC_2() // 0x8968D4D8C6C40C11 b1734
Same as 0x394DCDB9E836B7A9. NETWORK_C*
_NETWORK_CASINO_PURCHASE_CHIPS
BOOL MONEY::_NETWORK_CASINO_PURCHASE_CHIPS(int p0, int p1) // 0x3BD101471C7F9EEC b1734
NETWORK_C*
_NETWORK_CASINO_SELL_CHIPS
BOOL MONEY::_NETWORK_CASINO_SELL_CHIPS(int p0, int p1) // 0xED44897CB336F480 b1734
NETWORK_C*
_0xCD0F5B5D932AE473
void MONEY::_0xCD0F5B5D932AE473() // 0xCD0F5B5D932AE473 0xC4CD928D b323
Does nothing (it's a nullsub).
_CAN_PAY_GOON
BOOL MONEY::_CAN_PAY_GOON(int p0, int p1, int amount, int* p3) // 0x9777734DAD16992F b573
CAN_*
_NETWORK_EARN_FROM_CASHING_OUT
void MONEY::_NETWORK_EARN_FROM_CASHING_OUT(int amount) // 0xEFE9C9A1651B81E6 b1290
NETWORK_EARN_FROM_PICKUP
void MONEY::NETWORK_EARN_FROM_PICKUP(int amount) // 0xED1517D3AF17C698 0x70A0ED62 b323
_NETWORK_EARN_FROM_GANG_PICKUP
void MONEY::_NETWORK_EARN_FROM_GANG_PICKUP(int amount) // 0xA03D4ACE0A3284CE 0x33C20BC4 b323
_NETWORK_EARN_FROM_ASSASSINATE_TARGET_KILLED
void MONEY::_NETWORK_EARN_FROM_ASSASSINATE_TARGET_KILLED(int amount) // 0xFA700D8A9905F78A b1604
_NETWORK_EARN_FROM_ARMOUR_TRUCK
void MONEY::_NETWORK_EARN_FROM_ARMOUR_TRUCK(int amount) // 0xF514621E8EA463D0 0x30B3EC0A b323
For the money bags that drop a max of $40,000. Often called 40k bags. Most likely NETWORK_EARN_FROM_ROB***
NETWORK_EARN_FROM_CRATE_DROP
void MONEY::NETWORK_EARN_FROM_CRATE_DROP(int amount) // 0xB1CC1B9EC3007A2A 0xEAF04923 b323
NETWORK_EARN_FROM_BETTING
void MONEY::NETWORK_EARN_FROM_BETTING(int amount, const char* p1) // 0x827A5BA1A44ACA6D 0xA0F7F07C b323
NETWORK_EARN_FROM_JOB
void MONEY::NETWORK_EARN_FROM_JOB(int amount, const char* p1) // 0xB2CC4836834E8A98 0x0B6997FC b323
_NETWORK_EARN_FROM_JOB_X2
void MONEY::_NETWORK_EARN_FROM_JOB_X2(int amount, const char* p1) // 0xDEBBF584665411D0 b1734
_NETWORK_EARN_FROM_PREMIUM_JOB
void MONEY::_NETWORK_EARN_FROM_PREMIUM_JOB(int amount, const char* p1) // 0xC8407624CEF2354B b791
NETWORK_EARN_FROM_BEND_JOB
void MONEY::NETWORK_EARN_FROM_BEND_JOB(int amount, const char* heistHash) // 0x61326EE6DF15B0CA 0xBB293400 b323
NETWORK_EARN_FROM_CHALLENGE_WIN
void MONEY::NETWORK_EARN_FROM_CHALLENGE_WIN(Any p0, Any* p1, BOOL p2) // 0x2B171E6B2F64D8DF 0x2BEFB6C4 b323
NETWORK_EARN_FROM_BOUNTY
void MONEY::NETWORK_EARN_FROM_BOUNTY(int amount, int* networkHandle, Any* p2, Any p3) // 0x131BB5DA15453ACF 0x127F2DAE b323
NETWORK_EARN_FROM_IMPORT_EXPORT
void MONEY::NETWORK_EARN_FROM_IMPORT_EXPORT(int amount, Hash modelHash) // 0xF92A014A634442D6 0xF11FC458 b323
NETWORK_EARN_FROM_HOLDUPS
void MONEY::NETWORK_EARN_FROM_HOLDUPS(int amount) // 0x45B8154E077D9E4D 0xE6B90E9C b323
NETWORK_EARN_FROM_PROPERTY
void MONEY::NETWORK_EARN_FROM_PROPERTY(int amount, Hash propertyName) // 0x849648349D77F5C5 0x9BE4F7E1 b323
NETWORK_EARN_FROM_AI_TARGET_KILL
void MONEY::NETWORK_EARN_FROM_AI_TARGET_KILL(Any p0, Any p1) // 0x515B4A22E4D3C6D7 0x866004A8 b323
DSPORT
NETWORK_EARN_FROM_NOT_BADSPORT
void MONEY::NETWORK_EARN_FROM_NOT_BADSPORT(int amount) // 0x4337511FA8221D36 0xCC068380 b323
NETWORK_EARN_FROM_ROCKSTAR
void MONEY::NETWORK_EARN_FROM_ROCKSTAR(int amount) // 0x02CE1D6AC0FC73EA 0x5A3733CC b323
NETWORK_EARN_FROM_VEHICLE
void MONEY::NETWORK_EARN_FROM_VEHICLE(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7) // 0xB539BD8A4C1EECF8 0xF803589D b323
NETWORK_EARN_FROM_PERSONAL_VEHICLE
void MONEY::NETWORK_EARN_FROM_PERSONAL_VEHICLE(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8) // 0x3F4D00167E41E0AD 0x96B8BEE8 b323
NETWORK_EARN_FROM_DAILY_OBJECTIVES
void MONEY::NETWORK_EARN_FROM_DAILY_OBJECTIVES(int p0, const char* p1, int p2) // 0x6EA318C91C1A8786 0xAB6BD72F b323
NETWORK_EARN_FROM_AMBIENT_JOB
void MONEY::NETWORK_EARN_FROM_AMBIENT_JOB(int p0, const char* p1, Any* p2) // 0xFB6DB092FBAE29E6 0xA14CC95D b323
Example for p1: "AM_DISTRACT_COPS"
NETWORK_EARN_FROM_JOB_BONUS
void MONEY::NETWORK_EARN_FROM_JOB_BONUS(Any p0, Any* p1, Any* p2) // 0x6816FB4416760775 0xBEE23713 b323
_NETWORK_EARN_FROM_CRIMINAL_MASTERMIND_BONUS
void MONEY::_NETWORK_EARN_FROM_CRIMINAL_MASTERMIND_BONUS(Any p0, Any p1, Any p2) // 0xFA009A62990671D4 b1290
_NETWORK_EARN_JOB_BONUS_HEIST_AWARD
void MONEY::_NETWORK_EARN_JOB_BONUS_HEIST_AWARD(Any p0, Any p1, Any p2) // 0x9D4FDBB035229669 b1290
_NETWORK_EARN_JOB_BONUS_FIRST_TIME_BONUS
void MONEY::_NETWORK_EARN_JOB_BONUS_FIRST_TIME_BONUS(Any p0, Any p1, Any p2) // 0x11B0A20C493F7E36 b1290
_NETWORK_EARN_GOON
void MONEY::_NETWORK_EARN_GOON(Any p0, Any p1, Any p2) // 0xCDA1C62BE2777802 b573
_NETWORK_EARN_BOSS
void MONEY::_NETWORK_EARN_BOSS(Any p0, Any p1, Any p2) // 0x08B0CA7A6AB3AC32 b573
_NETWORK_EARN_BOSS_AGENCY
void MONEY::_NETWORK_EARN_BOSS_AGENCY(Any p0, Any p1, Any p2, Any p3) // 0x0CB1BE0633C024A8 b573
_NETWORK_EARN_FROM_WAREHOUSE
void MONEY::_NETWORK_EARN_FROM_WAREHOUSE(int amount, int id) // 0x3E4ADAFF1830F146 b757
_NETWORK_EARN_FROM_CONTRABAND
void MONEY::_NETWORK_EARN_FROM_CONTRABAND(int amount, Any p1) // 0xECA658CE2A4E5A72 b757
_NETWORK_EARN_FROM_DESTROYING_CONTRABAND
void MONEY::_NETWORK_EARN_FROM_DESTROYING_CONTRABAND(Any p0) // 0x84C0116D012E8FC2 b757
_0x6B7E4FB50D5F3D65
void MONEY::_0x6B7E4FB50D5F3D65(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x6B7E4FB50D5F3D65 b1180
_0x31BA138F6304FB9F
void MONEY::_0x31BA138F6304FB9F(Any p0, Any p1) // 0x31BA138F6304FB9F b1180
_0x55A1E095DB052FA5
void MONEY::_0x55A1E095DB052FA5(Any p0, Any p1) // 0x55A1E095DB052FA5 b877
_NETWORK_EARN_FROM_BUSINESS_PRODUCT
void MONEY::_NETWORK_EARN_FROM_BUSINESS_PRODUCT(int amount, Any p1, Any p2, Any p3) // 0x8586789730B10CAF b877
_NETWORK_EARN_FROM_VEHICLE_EXPORT
void MONEY::_NETWORK_EARN_FROM_VEHICLE_EXPORT(int amount, Any p1, Any p2) // 0xEDEAD9A91EC768B3 b944
_NETWORK_EARN_FROM_SMUGGLING
void MONEY::_NETWORK_EARN_FROM_SMUGGLING(int amount, Any p1, Any p2, Any p3) // 0xDEE612F2D71B0308 b1180
_NETWORK_EARN_BOUNTY_HUNTER_REWARD
void MONEY::_NETWORK_EARN_BOUNTY_HUNTER_REWARD(Any p0) // 0xF6B170F9A02E9E87 b1493
_NETWORK_EARN_FROM_BUSINESS_BATTLE
void MONEY::_NETWORK_EARN_FROM_BUSINESS_BATTLE(Any p0) // 0x42FCE14F50F27291 b1493
_NETWORK_EARN_FROM_CLUB_MANAGEMENT_PARTICIPATION
void MONEY::_NETWORK_EARN_FROM_CLUB_MANAGEMENT_PARTICIPATION(Any p0) // 0xA75EAC69F59E96E7 b1493
_NETWORK_EARN_FROM_FMBB_PHONECALL_MISSION
void MONEY::_NETWORK_EARN_FROM_FMBB_PHONECALL_MISSION(Any p0) // 0xC5156361F26E2212 b1493
_NETWORK_EARN_FROM_BUSINESS_HUB_SELL
void MONEY::_NETWORK_EARN_FROM_BUSINESS_HUB_SELL(Any p0, Any p1, Any p2) // 0x0B39CF0D53F1C883 b1493
_NETWORK_EARN_FROM_FMBB_BOSS_WORK
void MONEY::_NETWORK_EARN_FROM_FMBB_BOSS_WORK(Any p0) // 0x1FDA0AA679C9919B b1493
_NETWORK_EARN_FMBB_WAGE_BONUS
void MONEY::_NETWORK_EARN_FMBB_WAGE_BONUS(Any p0) // 0xFFFBA1B1F7C0B6F4 b1493
NETWORK_CAN_SPEND_MONEY
BOOL MONEY::NETWORK_CAN_SPEND_MONEY(Any p0, BOOL p1, BOOL p2, BOOL p3, Any p4, Any p5) // 0xAB3CAA6B422164DA 0x5AA379D9 b323
_NETWORK_CAN_SPEND_MONEY_2
BOOL MONEY::_NETWORK_CAN_SPEND_MONEY_2(Any p0, BOOL p1, BOOL p2, BOOL p3, Any* p4, Any p5, Any p6) // 0x7303E27CC6532080 b323
NETWORK_CAN_R??? or NETWORK_CAN_S???
NETWORK_BUY_ITEM
void MONEY::NETWORK_BUY_ITEM(int amount, Hash item, Any p2, Any p3, BOOL p4, const char* item_name, Any p6, Any p7, Any p8, BOOL p9) // 0xF0077C797F66A355 0xA07B6368 b323
NETWORK_SPENT_TAXI
void MONEY::NETWORK_SPENT_TAXI(int amount, BOOL p1, BOOL p2) // 0x17C3A7D31EAE39F9 0x1F3DB3E3 b323
NETWORK_PAY_EMPLOYEE_WAGE
void MONEY::NETWORK_PAY_EMPLOYEE_WAGE(Any p0, BOOL p1, BOOL p2) // 0x5FD5ED82CBBE9989 0xBE70849B b323
NETWORK_PAY_UTILITY_BILL
void MONEY::NETWORK_PAY_UTILITY_BILL(int amount, BOOL p1, BOOL p2) // 0xAFE08B35EC0C9EAE 0x451A2644 b323
NETWORK_PAY_MATCH_ENTRY_FEE
void MONEY::NETWORK_PAY_MATCH_ENTRY_FEE(int amount, const char* matchId, BOOL p2, BOOL p3) // 0x9346E14F2AF74D46 0x224A3488 b323
NETWORK_SPENT_BETTING
void MONEY::NETWORK_SPENT_BETTING(int amount, int p1, const char* matchId, BOOL p3, BOOL p4) // 0x1C436FD11FFA692F 0xF8A07513 b323
_NETWORK_SPENT_WAGER
void MONEY::_NETWORK_SPENT_WAGER(Any p0, Any p1, int amount) // 0xD99DB210089617FE b573
NETWORK_SPENT_IN_STRIPCLUB
void MONEY::NETWORK_SPENT_IN_STRIPCLUB(Any p0, BOOL p1, Any p2, BOOL p3) // 0xEE99784E4467689C 0x8957038E b323
NETWORK_BUY_HEALTHCARE
void MONEY::NETWORK_BUY_HEALTHCARE(int cost, BOOL p1, BOOL p2) // 0xD9B067E55253E3DD 0x832150E5 b323
NETWORK_BUY_AIRSTRIKE
void MONEY::NETWORK_BUY_AIRSTRIKE(int cost, BOOL p1, BOOL p2) // 0x763B4BD305338F19 0x40470683 b323
p1 = 0 (always) p2 = 1 (always)
NETWORK_BUY_BACKUP_GANG
void MONEY::NETWORK_BUY_BACKUP_GANG(int p0, int p1, BOOL p2, BOOL p3) // 0xA3EDDAA42411D3B9 0x2AD2EC51 b323
NETWORK_BUY_HELI_STRIKE
void MONEY::NETWORK_BUY_HELI_STRIKE(int cost, BOOL p1, BOOL p2) // 0x81AA4610E3FD3A69 0x047547D4 b323
p1 = 0 (always) p2 = 1 (always)
NETWORK_SPENT_AMMO_DROP
void MONEY::NETWORK_SPENT_AMMO_DROP(Any p0, BOOL p1, BOOL p2) // 0xB162DC95C0A3317B 0x4B643076 b323
NETWORK_BUY_BOUNTY
void MONEY::NETWORK_BUY_BOUNTY(int amount, Player victim, BOOL p2, BOOL p3) // 0x7B718E197453F2D9 0xCB89CBE0 b323
p1 is just an assumption. p2 was false and p3 was true.
NETWORK_BUY_PROPERTY
void MONEY::NETWORK_BUY_PROPERTY(int cost, Hash propertyName, BOOL p2, BOOL p3) // 0x650A08A280870AF6 0x7D479AAB b323
NETWORK_BUY_SMOKES
void MONEY::NETWORK_BUY_SMOKES(int p0, BOOL p1, BOOL p2) // 0x75AF80E61248EEBD 0xC0AB03EB b323
NETWORK_SPENT_HELI_PICKUP
void MONEY::NETWORK_SPENT_HELI_PICKUP(Any p0, BOOL p1, BOOL p2) // 0x7BF1D73DB2ECA492 0x27EEBCAB b323
NETWORK_SPENT_BOAT_PICKUP
void MONEY::NETWORK_SPENT_BOAT_PICKUP(Any p0, BOOL p1, BOOL p2) // 0x524EE43A37232C00 0xB241CABD b323
NETWORK_SPENT_BULL_SHARK
void MONEY::NETWORK_SPENT_BULL_SHARK(Any p0, BOOL p1, BOOL p2) // 0xA6DD8458CE24012C 0xDE7D398C b323
NETWORK_SPENT_CASH_DROP
void MONEY::NETWORK_SPENT_CASH_DROP(int amount, BOOL p1, BOOL p2) // 0x289016EC778D60E0 0x87BD1D11 b323
NETWORK_SPENT_HIRE_MUGGER
void MONEY::NETWORK_SPENT_HIRE_MUGGER(Any p0, BOOL p1, BOOL p2) // 0xE404BFB981665BF0 0xE792C4A5 b323
Only used once in a script (am_contact_requests) p1 = 0 p2 = 1
NETWORK_SPENT_ROBBED_BY_MUGGER
void MONEY::NETWORK_SPENT_ROBBED_BY_MUGGER(int amount, BOOL p1, BOOL p2) // 0x995A65F15F581359 0xE6AAA0D5 b323
NETWORK_SPENT_HIRE_MERCENARY
void MONEY::NETWORK_SPENT_HIRE_MERCENARY(Any p0, BOOL p1, BOOL p2) // 0xE7B80E2BF9D80BD6 0x99CF02C4 b323
NETWORK_SPENT_BUY_WANTEDLEVEL
void MONEY::NETWORK_SPENT_BUY_WANTEDLEVEL(Any p0, Any* p1, BOOL p2, BOOL p3) // 0xE1B13771A843C4F6 0xE7CB4F95 b323
NETWORK_SPENT_BUY_OFFTHERADAR
void MONEY::NETWORK_SPENT_BUY_OFFTHERADAR(Any p0, BOOL p1, BOOL p2) // 0xA628A745E2275C5D 0x20DDCF2F b323
NETWORK_SPENT_BUY_REVEAL_PLAYERS
void MONEY::NETWORK_SPENT_BUY_REVEAL_PLAYERS(Any p0, BOOL p1, BOOL p2) // 0x6E176F1B18BC0637 0x2F7836E2 b323
NETWORK_SPENT_CARWASH
void MONEY::NETWORK_SPENT_CARWASH(Any p0, Any p1, Any p2, BOOL p3, BOOL p4) // 0xEC03C719DB2F4306 0x8283E028 b323
NETWORK_SPENT_CINEMA
void MONEY::NETWORK_SPENT_CINEMA(Any p0, Any p1, BOOL p2, BOOL p3) // 0x6B38ECB05A63A685 0x1100CAF5 b323
NETWORK_SPENT_TELESCOPE
void MONEY::NETWORK_SPENT_TELESCOPE(Any p0, BOOL p1, BOOL p2) // 0x7FE61782AD94CC09 0xAE7FF044 b323
NETWORK_SPENT_HOLDUPS
void MONEY::NETWORK_SPENT_HOLDUPS(Any p0, BOOL p1, BOOL p2) // 0xD9B86B9872039763 0x1B3803B1 b323
NETWORK_SPENT_BUY_PASSIVE_MODE
void MONEY::NETWORK_SPENT_BUY_PASSIVE_MODE(Any p0, BOOL p1, BOOL p2) // 0x6D3A430D1A809179 0x7E97C92C b323
NETWORK_SPENT_BANK_INTEREST
void MONEY::NETWORK_SPENT_BANK_INTEREST(int p0, BOOL p1, BOOL p2) // 0xCA230C9682556CF1 0xF02E92D7 b323
NETWORK_SPENT_PROSTITUTES
void MONEY::NETWORK_SPENT_PROSTITUTES(Any p0, BOOL p1, BOOL p2) // 0xB21B89501CFAC79E 0x78436D07 b323
NETWORK_SPENT_ARREST_BAIL
void MONEY::NETWORK_SPENT_ARREST_BAIL(Any p0, BOOL p1, BOOL p2) // 0x812F5488B1B2A299 0x5AEE2FC1 b323
NETWORK_SPENT_PAY_VEHICLE_INSURANCE_PREMIUM
void MONEY::NETWORK_SPENT_PAY_VEHICLE_INSURANCE_PREMIUM(int amount, Hash vehicleModel, int* networkHandle, BOOL notBankrupt, BOOL hasTheMoney) // 0x9FF28D88C766E3E8 0x4E665BB2 b323
According to how I understood this in the freemode script alone, The first parameter is determined by a function named, func_5749 within the freemode script which has a list of all the vehicles and a set price to return which some vehicles deals with globals as well. So the first parameter is basically the set in stone insurance cost it's gonna charge you for that specific vehicle model. The second parameter whoever put it was right, they call GET_ENTITY_MODEL with the vehicle as the paremeter. The third parameter is the network handle as they call their little struct<13> func or atleast how the script decompiled it to look which in lamens terms just returns the network handle of the previous owner based on DECOR_GET_INT(vehicle, "Previous_Owner"). The fourth parameter is a bool that returns true/false depending on if your bank balance is greater then 0. The fifth and last parameter is a bool that returns true/false depending on if you have the money for the car based on the cost returned by func_5749. In the freemode script eg, bool hasTheMoney = MONEY::_GET_BANK_BALANCE() < carCost.
NETWORK_SPENT_CALL_PLAYER
void MONEY::NETWORK_SPENT_CALL_PLAYER(Any p0, Any* p1, BOOL p2, BOOL p3) // 0xACDE7185B374177C 0x1A89B5FC b323
NETWORK_SPENT_BOUNTY
void MONEY::NETWORK_SPENT_BOUNTY(Any p0, BOOL p1, BOOL p2) // 0x29B260B84947DFCC 0x3401FC96 b323
NETWORK_SPENT_FROM_ROCKSTAR
void MONEY::NETWORK_SPENT_FROM_ROCKSTAR(int p0, BOOL p1, BOOL p2) // 0x6A445B64ED7ABEB5 0x54198922 b323
_0x9B5016A6433A68C5
Any MONEY::_0x9B5016A6433A68C5() // 0x9B5016A6433A68C5 0xBD64F1B7 b323
Hardcoded to return 0.
PROCESS_CASH_GIFT
const char* MONEY::PROCESS_CASH_GIFT(int* p0, int* p1, const char* p2) // 0x20194D48EAEC9A41 0xC5D8B1E9 b323
This isn't a hash collision.
_0xCD4D66B43B1DD28D
void MONEY::_0xCD4D66B43B1DD28D(Any p0, Any p1, Any p2) // 0xCD4D66B43B1DD28D b2189
NETWORK_SPENT_PLAYER_HEALTHCARE
void MONEY::NETWORK_SPENT_PLAYER_HEALTHCARE(int p0, int p1, BOOL p2, BOOL p3) // 0x7C99101F7FCE2EE5 0x3D96A21C b323
NETWORK_SPENT_NO_COPS
void MONEY::NETWORK_SPENT_NO_COPS(Any p0, BOOL p1, BOOL p2) // 0xD5BB406F4E04019F 0x2E51C61C b323
NETWORK_SPENT_REQUEST_JOB
void MONEY::NETWORK_SPENT_REQUEST_JOB(Any p0, BOOL p1, BOOL p2) // 0x8204DA7934DF3155 0xD57A5125 b323
NETWORK_SPENT_REQUEST_HEIST
void MONEY::NETWORK_SPENT_REQUEST_HEIST(Any p0, BOOL p1, BOOL p2) // 0x9D26502BB97BFE62 0xF4287778 b323
NETWORK_BUY_LOTTERY_TICKET
void MONEY::NETWORK_BUY_LOTTERY_TICKET(int p0, int p1, BOOL p2, BOOL p3) // 0xD987F2489969668C 0xF64DF4CF b323
NETWORK_BUY_FAIRGROUND_RIDE
void MONEY::NETWORK_BUY_FAIRGROUND_RIDE(int amount, Any p1, BOOL p2, BOOL p3) // 0x8A7B3952DD64D2B5 0xD9622D64 b323
The first parameter is the amount spent which is store in a global when this native is called. The global returns 10. Which is the price for both rides. The last 3 parameters are, 2,0,1 in the am_ferriswheel.c 1,0,1 in the am_rollercoaster.c
_0x7C4FCCD2E4DEB394
BOOL MONEY::_0x7C4FCCD2E4DEB394() // 0x7C4FCCD2E4DEB394 0x468CC978 b323
_NETWORK_SPENT_JOB_SKIP
void MONEY::_NETWORK_SPENT_JOB_SKIP(int amount, const char* matchId, BOOL p2, BOOL p3) // 0x28F174A67B8D0C2F b323
_NETWORK_SPENT_BOSS
BOOL MONEY::_NETWORK_SPENT_BOSS(int amount, BOOL p1, BOOL p2) // 0xFFBE02CD385356BD b573
_NETWORK_SPENT_PAY_GOON
void MONEY::_NETWORK_SPENT_PAY_GOON(int p0, int p1, int amount) // 0x08A1B82B91900682 b573
_NETWORK_SPENT_PAY_BOSS
void MONEY::_NETWORK_SPENT_PAY_BOSS(Any p0, Any p1, Any p2) // 0xDBC966A01C02BCA7 b573
_NETWORK_SPENT_MOVE_YACHT
void MONEY::_NETWORK_SPENT_MOVE_YACHT(int amount, BOOL p1, BOOL p2) // 0xE7DF4E0545DFB56E b573
_NETWORK_SPENT_RENAME_ORGANIZATION
void MONEY::_NETWORK_SPENT_RENAME_ORGANIZATION(Any p0, Any p1, Any p2) // 0xFC4EE00A7B3BFB76 b573
_NETWORK_BUY_CONTRABAND
void MONEY::_NETWORK_BUY_CONTRABAND(int p0, int p1, Hash p2, BOOL p3, BOOL p4) // 0x30FD873ECE50E9F6 b757
_NETWORK_SPENT_VIP_UTILITY_CHARGES
void MONEY::_NETWORK_SPENT_VIP_UTILITY_CHARGES(Any p0, Any p1, Any p2) // 0x5182A339A3474510 b757
_0x112209CE0290C03A
void MONEY::_0x112209CE0290C03A(Any p0, Any p1, Any p2, Any p3) // 0x112209CE0290C03A b757
_0xED5FD7AF10F5E262
void MONEY::_0xED5FD7AF10F5E262(Any p0, Any p1, Any p2, Any p3) // 0xED5FD7AF10F5E262 b757
_0x0D30EB83668E63C5
void MONEY::_0x0D30EB83668E63C5(Any p0, Any p1, Any p2, Any p3) // 0x0D30EB83668E63C5 b757
_NETWORK_SPENT_PA_SERVICE_DANCER
void MONEY::_NETWORK_SPENT_PA_SERVICE_DANCER(Any p0, Any p1, Any p2, Any p3) // 0xB49ECA122467D05F b757
_0xE23ADC6FCB1F29AE
void MONEY::_0xE23ADC6FCB1F29AE(Any p0, Any p1, Any p2) // 0xE23ADC6FCB1F29AE b757
_NETWORK_SPENT_PA_SERVICE_HELI_PICKUP
void MONEY::_NETWORK_SPENT_PA_SERVICE_HELI_PICKUP(Any p0, Any p1, Any p2, Any p3) // 0x0FE8E1FCD2B86B33 b757
_0x69EF772B192614C1
void MONEY::_0x69EF772B192614C1(Any p0, Any p1, Any p2, Any p3) // 0x69EF772B192614C1 b757
_0x8E243837643D9583
void MONEY::_0x8E243837643D9583(Any p0, Any p1, Any p2, Any p3) // 0x8E243837643D9583 b757
_0xBD0EFB25CCA8F97A
void MONEY::_0xBD0EFB25CCA8F97A(Any p0, Any p1, Any p2, Any p3) // 0xBD0EFB25CCA8F97A b757
_0xA95F667A755725DA
void MONEY::_0xA95F667A755725DA(Any p0, Any p1, Any p2, Any p3) // 0xA95F667A755725DA b757
_NETWORK_SPENT_PURCHASE_WAREHOUSE
void MONEY::_NETWORK_SPENT_PURCHASE_WAREHOUSE(int amount, Any* data, BOOL p2, BOOL p3) // 0x33981D6804E62F49 b944
_0x4128464231E3CA0B
void MONEY::_0x4128464231E3CA0B(Any p0, Any p1, Any p2, Any p3) // 0x4128464231E3CA0B b944
_0x2FAB6614CE22E196
void MONEY::_0x2FAB6614CE22E196(Any p0, Any p1, Any p2, Any p3) // 0x2FAB6614CE22E196 b944
_NETWORK_SPENT_ORDER_WAREHOUSE_VEHICLE
void MONEY::_NETWORK_SPENT_ORDER_WAREHOUSE_VEHICLE(Any p0, Any p1, Any p2, Any p3) // 0x05F04155A226FBBF b757
_NETWORK_SPENT_ORDER_BODYGUARD_VEHICLE
void MONEY::_NETWORK_SPENT_ORDER_BODYGUARD_VEHICLE(Any p0, Any p1, Any p2, Any p3) // 0xE8B0B270B6E7C76E b757
_NETWORK_SPENT_JUKEBOX
void MONEY::_NETWORK_SPENT_JUKEBOX(Any p0, Any p1, Any p2, Any p3) // 0x5BCDE0F640C773D2 b877
_0x998E18CEB44487FC
void MONEY::_0x998E18CEB44487FC(Any p0, Any p1, Any p2, Any p3) // 0x998E18CEB44487FC b877
_0xFA07759E6FDDD7CF
void MONEY::_0xFA07759E6FDDD7CF(Any p0, Any p1, Any p2, Any p3) // 0xFA07759E6FDDD7CF b877
_0x6FD97159FE3C971A
void MONEY::_0x6FD97159FE3C971A(Any p0, Any p1, Any p2, Any p3) // 0x6FD97159FE3C971A b877
_0x675D19C6067CAE08
void MONEY::_0x675D19C6067CAE08(Any p0, Any p1, Any p2, Any p3) // 0x675D19C6067CAE08 b877
_0xA51B086B0B2C0F7A
void MONEY::_0xA51B086B0B2C0F7A(Any p0, Any p1, Any p2, Any p3) // 0xA51B086B0B2C0F7A b877
_NETWORK_SPENT_BA_SERVICE
void MONEY::_NETWORK_SPENT_BA_SERVICE(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xD7CCCBA28C4ECAF0 b877
_NETWORK_SPENT_BUSINESS
void MONEY::_NETWORK_SPENT_BUSINESS(Any p0, Any p1, Any p2, Any p3) // 0x0035BB914316F1E3 b877
_0x5F456788B05FAEAC
void MONEY::_0x5F456788B05FAEAC(Any p0, Any p1, Any p2) // 0x5F456788B05FAEAC b944
_NETWORK_SPENT_VEHICLE_EXPORT_MODS
void MONEY::_NETWORK_SPENT_VEHICLE_EXPORT_MODS(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0xA75CCF58A60A5FD1 b944
_0xB4C2EC463672474E
void MONEY::_0xB4C2EC463672474E(Any p0, Any p1, Any p2, Any p3) // 0xB4C2EC463672474E b944
_0x2AFC2D19B50797F2
void MONEY::_0x2AFC2D19B50797F2(Any p0, Any p1, Any p2, Any p3) // 0x2AFC2D19B50797F2 b944
_NETWORK_SPENT_IMPORT_EXPORT_REPAIR
void MONEY::_NETWORK_SPENT_IMPORT_EXPORT_REPAIR(Any p0, Any p1, Any p2) // 0xC1952F3773BA18FE b944
_NETWORK_SPENT_PURCHASE_HANGAR
void MONEY::_NETWORK_SPENT_PURCHASE_HANGAR(Any p0, Any p1, Any p2, Any p3) // 0xCCB339CC970452DA b1180
_NETWORK_SPENT_UPGRADE_HANGAR
void MONEY::_NETWORK_SPENT_UPGRADE_HANGAR(Any p0, Any p1, Any p2, Any p3) // 0x615EB504B0788DAF b1180
_NETWORK_SPENT_HANGAR_UTILITY_CHARGES
void MONEY::_NETWORK_SPENT_HANGAR_UTILITY_CHARGES(int amount, BOOL p1, BOOL p2) // 0xB18AC2ECBB15CB6A b1180
_NETWORK_SPENT_HANGAR_STAFF_CHARGES
void MONEY::_NETWORK_SPENT_HANGAR_STAFF_CHARGES(int amount, BOOL p1, BOOL p2) // 0xB1F1346FD57685D7 b1180
_NETWORK_SPENT_BUY_TRUCK
void MONEY::_NETWORK_SPENT_BUY_TRUCK(Any p0, Any p1, Any p2, Any p3) // 0xAC272C0AE01B4BD8 b1103
_NETWORK_SPENT_UPGRADE_TRUCK
void MONEY::_NETWORK_SPENT_UPGRADE_TRUCK(Any p0, Any p1, Any p2, Any p3) // 0x365E877C61D6988B b1103
_NETWORK_SPENT_BUY_BUNKER
void MONEY::_NETWORK_SPENT_BUY_BUNKER(Any p0, Any p1, Any p2, Any p3) // 0x12D148D26538D0F9 b1103
_NETWORK_SPENT_UPGRADE_BUNKER
void MONEY::_NETWORK_SPENT_UPGRADE_BUNKER(Any p0, Any p1, Any p2, Any p3) // 0x0C82D21A77C22D49 b1103
_NETWORK_EARN_FROM_SELL_BUNKER
void MONEY::_NETWORK_EARN_FROM_SELL_BUNKER(int amount, Hash bunkerHash) // 0x9251B6ABF2D0A5B4 b1103
_NETWORK_SPENT_BALLISTIC_EQUIPMENT
void MONEY::_NETWORK_SPENT_BALLISTIC_EQUIPMENT(int amount, BOOL p1, BOOL p2) // 0x5D97630A8A0EF123 b1103
_NETWORK_EARN_FROM_RDR_BONUS
void MONEY::_NETWORK_EARN_FROM_RDR_BONUS(int amount, Any p1) // 0x7A5349B773584675 b1290
_NETWORK_EARN_FROM_WAGE_PAYMENT
void MONEY::_NETWORK_EARN_FROM_WAGE_PAYMENT(int amount) // 0x35F8DA0E8A31EF1B b1180
_NETWORK_EARN_FROM_WAGE_PAYMENT_BONUS
void MONEY::_NETWORK_EARN_FROM_WAGE_PAYMENT_BONUS(int amount) // 0x005ACA7100BD101D b1180
_NETWORK_SPENT_BUY_BASE
void MONEY::_NETWORK_SPENT_BUY_BASE(Any p0, Any p1, Any p2, Any p3) // 0x4EA3F425C7744D21 b1290
_NETWORK_SPENT_UPGRADE_BASE
void MONEY::_NETWORK_SPENT_UPGRADE_BASE(Any p0, Any p1, Any p2, Any p3) // 0x3DD3F33A5D55EA6F b1290
_NETWORK_SPENT_BUY_TILTROTOR
void MONEY::_NETWORK_SPENT_BUY_TILTROTOR(Any p0, Any p1, Any p2, Any p3) // 0x0CCE73BC7A11E885 b1290
_NETWORK_SPENT_UPGRADE_TILTROTOR
void MONEY::_NETWORK_SPENT_UPGRADE_TILTROTOR(Any p0, Any p1, Any p2, Any p3) // 0x165E135D6DFA2907 b1290
_NETWORK_SPENT_EMPLOY_ASSASSINS
void MONEY::_NETWORK_SPENT_EMPLOY_ASSASSINS(Any p0, Any p1, Any p2, Any p3) // 0x5BBBD92186E1F1C5 b1290
_NETWORK_SPENT_GANGOPS_CANNON
void MONEY::_NETWORK_SPENT_GANGOPS_CANNON(Any p0, Any p1, Any p2, Any p3) // 0x771ADB0E7635B7BF b1290
_NETWORK_SPENT_GANGOPS_START_MISSION
void MONEY::_NETWORK_SPENT_GANGOPS_START_MISSION(Any p0, Any p1, Any p2, Any p3) // 0xDA947AE8880D5C18 b1290
_NETWORK_SPENT_CASINO_HEIST_SKIP_MISSION
void MONEY::_NETWORK_SPENT_CASINO_HEIST_SKIP_MISSION(Any p0, Any p1, Any p2, Any p3) // 0x487009DD91D93429 b1868
_NETWORK_EARN_FROM_SELL_BASE
void MONEY::_NETWORK_EARN_FROM_SELL_BASE(int amount, Hash baseNameHash) // 0x0E1E2FF3F4EC11AA b1290
_NETWORK_EARN_FROM_TARGET_REFUND
void MONEY::_NETWORK_EARN_FROM_TARGET_REFUND(int amount, int p1) // 0x5B669CF2299A271F b1290
_NETWORK_EARN_FROM_GANGOPS_WAGES
void MONEY::_NETWORK_EARN_FROM_GANGOPS_WAGES(int amount, int p1) // 0x2DCB19ABAB0380A8 b1290
_NETWORK_EARN_FROM_GANGOPS_WAGES_BONUS
void MONEY::_NETWORK_EARN_FROM_GANGOPS_WAGES_BONUS(int amount, int p1) // 0x15BB2A5C757EB91F b1290
_NETWORK_EARN_FROM_DAR_CHALLENGE
void MONEY::_NETWORK_EARN_FROM_DAR_CHALLENGE(int amount, Any p1) // 0xCAC672087B4A24AB b1290
_NETWORK_EARN_FROM_DOOMSDAY_FINALE_BONUS
void MONEY::_NETWORK_EARN_FROM_DOOMSDAY_FINALE_BONUS(int amount, Hash vehicleHash) // 0x128A747F4A230952 b1290
_NETWORK_EARN_FROM_GANGOPS_AWARDS
void MONEY::_NETWORK_EARN_FROM_GANGOPS_AWARDS(int amount, const char* unk, Any p2) // 0xA9A31475F530DFDA b1290
_NETWORK_EARN_FROM_GANGOPS_ELITE
void MONEY::_NETWORK_EARN_FROM_GANGOPS_ELITE(int amount, const char* unk, int actIndex) // 0x2597A0D4A4FC2C77 b1290
_NETWORK_RIVAL_DELIVERY_COMPLETED
void MONEY::_NETWORK_RIVAL_DELIVERY_COMPLETED(int earnedMoney) // 0x1B882107C23A9022 b1290
_NETWORK_SPENT_GANGOPS_START_STRAND
void MONEY::_NETWORK_SPENT_GANGOPS_START_STRAND(int type, int amount, BOOL p2, BOOL p3) // 0xA19EC0786E326E06 b1290
_NETWORK_SPENT_GANGOPS_TRIP_SKIP
void MONEY::_NETWORK_SPENT_GANGOPS_TRIP_SKIP(int amount, BOOL p1, BOOL p2) // 0x5ECE6FD7B4EC8D6A b1290
_NETWORK_EARN_FROM_GANGOPS_JOBS_PREP_PARTICIPATION
void MONEY::_NETWORK_EARN_FROM_GANGOPS_JOBS_PREP_PARTICIPATION(int amount) // 0xED26584F6BDCBBFD b1290
_NETWORK_EARN_FROM_GANGOPS_JOBS_SETUP
void MONEY::_NETWORK_EARN_FROM_GANGOPS_JOBS_SETUP(int amount, const char* unk) // 0xA9160796D47A2CF8 b1290
_NETWORK_EARN_FROM_GANGOPS_JOBS_FINALE
void MONEY::_NETWORK_EARN_FROM_GANGOPS_JOBS_FINALE(int amount, const char* unk) // 0x1C121FC9545E0D52 b1290
_0x2A7CEC72C3443BCC
void MONEY::_0x2A7CEC72C3443BCC(Any p0, Any p1, Any p2) // 0x2A7CEC72C3443BCC b1290
_0xE0F82D68C7039158
void MONEY::_0xE0F82D68C7039158(Any p0) // 0xE0F82D68C7039158 b1493
_0xB4DEAE67F35E2ACD
void MONEY::_0xB4DEAE67F35E2ACD(Any p0) // 0xB4DEAE67F35E2ACD b1493
_NETWORK_EARN_FROM_BB_EVENT_BONUS
void MONEY::_NETWORK_EARN_FROM_BB_EVENT_BONUS(int amount) // 0xFDD8D2440DAF1590 b1604
_0x2A93C46AAB1EACC9
void MONEY::_0x2A93C46AAB1EACC9(Any p0, Any p1, Any p2, Any p3) // 0x2A93C46AAB1EACC9 b1493
_0x226C284C830D0CA8
void MONEY::_0x226C284C830D0CA8(Any p0, Any p1, Any p2, Any p3) // 0x226C284C830D0CA8 b1493
_NETWORK_EARN_FROM_HACKER_TRUCK_MISSION
void MONEY::_NETWORK_EARN_FROM_HACKER_TRUCK_MISSION(Any p0, int amount, Any p2, Any p3) // 0xE8815FE993896AD3 b1493
_0xED76D195E6E3BF7F
void MONEY::_0xED76D195E6E3BF7F(Any p0, Any p1, Any p2, Any p3) // 0xED76D195E6E3BF7F b1493
_0x1DC9B749E7AE282B
void MONEY::_0x1DC9B749E7AE282B(Any p0, Any p1, Any p2, Any p3) // 0x1DC9B749E7AE282B b1493
_0xC6E74CF8C884C880
void MONEY::_0xC6E74CF8C884C880(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0xC6E74CF8C884C880 b1493
_0x65482BFD0923C8A1
void MONEY::_0x65482BFD0923C8A1(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x65482BFD0923C8A1 b1493
_NETWORK_SPENT_RDRHATCHET_BONUS
void MONEY::_NETWORK_SPENT_RDRHATCHET_BONUS(int amount, BOOL p1, BOOL p2) // 0xE284D46FFDB82E36 b1493
_NETWORK_SPENT_NIGHTCLUB_ENTRY_FEE
void MONEY::_NETWORK_SPENT_NIGHTCLUB_ENTRY_FEE(Player player, int amount, Any p1, BOOL p2, BOOL p3) // 0x876056684281655D b1493
_NETWORK_SPENT_NIGHTCLUB_BAR_DRINK
void MONEY::_NETWORK_SPENT_NIGHTCLUB_BAR_DRINK(int amount, Any p1, BOOL p2, BOOL p3) // 0xDD21B016E4289465 b1493
_NETWORK_SPENT_BOUNTY_HUNTER_MISSION
void MONEY::_NETWORK_SPENT_BOUNTY_HUNTER_MISSION(int amount, BOOL p1, BOOL p2) // 0x1BEA0CD93470BB1F b1493
_NETWORK_SPENT_REHIRE_DJ
void MONEY::_NETWORK_SPENT_REHIRE_DJ(int amount, Any p1, BOOL p2, BOOL p3) // 0xF6C8A544E4CF14FC b1493
_NETWORK_SPENT_ARENA_JOIN_SPECTATOR
void MONEY::_NETWORK_SPENT_ARENA_JOIN_SPECTATOR(int amount, Any p1, BOOL p2, BOOL p3) // 0x14EAEA58F93B55AF b1604
_NETWORK_EARN_FROM_ARENA_SKILL_LEVEL_PROGRESSION
void MONEY::_NETWORK_EARN_FROM_ARENA_SKILL_LEVEL_PROGRESSION(int amount, Any p1) // 0xE08256F972C7BB2C b1604
_NETWORK_EARN_FROM_ARENA_CAREER_PROGRESSION
void MONEY::_NETWORK_EARN_FROM_ARENA_CAREER_PROGRESSION(int amount, Any p1) // 0x0F99F70C61F14619 b1604
_NETWORK_SPENT_MAKE_IT_RAIN
void MONEY::_NETWORK_SPENT_MAKE_IT_RAIN(int amount, BOOL p1, BOOL p2) // 0xE5F5A060439C2F5D b1604
_NETWORK_SPENT_BUY_ARENA
void MONEY::_NETWORK_SPENT_BUY_ARENA(int amount, BOOL p1, BOOL p2, const char* p3) // 0x40D5DA9550B7CB46 b1604
_NETWORK_SPENT_UPGRADE_ARENA
void MONEY::_NETWORK_SPENT_UPGRADE_ARENA(int amount, BOOL p1, BOOL p2, const char* p3) // 0x037ABB06825D7AB1 b1604
_NETWORK_SPENT_ARENA_SPECTATOR_BOX
void MONEY::_NETWORK_SPENT_ARENA_SPECTATOR_BOX(int amount, Any p1, BOOL p2, BOOL p3) // 0x7049BF858601DC0F b1604
_NETWORK_SPENT_SPIN_THE_WHEEL_PAYMENT
void MONEY::_NETWORK_SPENT_SPIN_THE_WHEEL_PAYMENT(int amount, Any p1, BOOL p2) // 0x9A5BD1D0000B339C b1604
_NETWORK_EARN_FROM_SPIN_THE_WHEEL_CASH
void MONEY::_NETWORK_EARN_FROM_SPIN_THE_WHEEL_CASH(int amount) // 0x676C48776CACBB5A b1604
_NETWORK_SPENT_ARENA_PREMIUM
void MONEY::_NETWORK_SPENT_ARENA_PREMIUM(int amount, BOOL p1, BOOL p2) // 0x619496D837EFD920 b1604
_NETWORK_EARN_FROM_ARENA_WAR
void MONEY::_NETWORK_EARN_FROM_ARENA_WAR(int amount, Any p1, Any p2, Any p3) // 0x631F1CB8FB4130AA b1604
_NETWORK_EARN_FROM_ASSASSINATE_TARGET_KILLED_2
void MONEY::_NETWORK_EARN_FROM_ASSASSINATE_TARGET_KILLED_2(int amount) // 0x5E7AE8AABE8B7C0D b1604
_NETWORK_EARN_FROM_BB_EVENT_CARGO
void MONEY::_NETWORK_EARN_FROM_BB_EVENT_CARGO(int amount) // 0xA82959062361B259 b1604
_NETWORK_EARN_FROM_RC_TIME_TRIAL
void MONEY::_NETWORK_EARN_FROM_RC_TIME_TRIAL(int amount) // 0xDFF49EE984E7AAE8 b1734
_NETWORK_EARN_FROM_DAILY_OBJECTIVE_EVENT
void MONEY::_NETWORK_EARN_FROM_DAILY_OBJECTIVE_EVENT(int amount) // 0x5128DF14A5BB86FC b1734
_NETWORK_SPENT_CASINO_MEMBERSHIP
void MONEY::_NETWORK_SPENT_CASINO_MEMBERSHIP(int amount, BOOL p1, BOOL p2, int p3) // 0xFBBE0570EDF39D46 b1734
_NETWORK_SPENT_BUY_CASINO
void MONEY::_NETWORK_SPENT_BUY_CASINO(int amount, BOOL p1, BOOL p2, Any* data) // 0x34A6FC4D06C4DA0F b1734
_NETWORK_SPENT_UPGRADE_CASINO
void MONEY::_NETWORK_SPENT_UPGRADE_CASINO(int amount, BOOL p1, BOOL p2, Any* data) // 0x4740D62BC1B4EBEA b1734
_NETWORK_SPENT_CASINO_GENERIC
void MONEY::_NETWORK_SPENT_CASINO_GENERIC(int amount, Any p1, Any p2, Any p3, Any p4) // 0x88BF9B612B84D3C3 b1734
_NETWORK_EARN_FROM_TIME_TRIAL_WIN
void MONEY::_NETWORK_EARN_FROM_TIME_TRIAL_WIN(int amount) // 0x0819DB99FD2FBBD8 b1734
_NETWORK_EARN_FROM_COLLECTABLES_ACTION_FIGURES
void MONEY::_NETWORK_EARN_FROM_COLLECTABLES_ACTION_FIGURES(int amount) // 0x5517F90043466049 b1734
_NETWORK_EARN_FROM_COMPLETE_COLLECTION
void MONEY::_NETWORK_EARN_FROM_COMPLETE_COLLECTION(int amount) // 0x83AD64F53F4E9483 b1734
_NETWORK_EARN_FROM_SELLING_VEHICLE
void MONEY::_NETWORK_EARN_FROM_SELLING_VEHICLE(int amount) // 0x8BCB27A057DF7B7F b1734
_NETWORK_EARN_FROM_CASINO_MISSION_REWARD
void MONEY::_NETWORK_EARN_FROM_CASINO_MISSION_REWARD(int amount) // 0x566FD402B25787DE b1734
_NETWORK_EARN_FROM_CASINO_STORY_MISSION_REWARD
void MONEY::_NETWORK_EARN_FROM_CASINO_STORY_MISSION_REWARD(int amount) // 0xAC95ED552157E092 b1734
_NETWORK_EARN_FROM_CASINO_MISSION_PARTICIPATION
void MONEY::_NETWORK_EARN_FROM_CASINO_MISSION_PARTICIPATION(int amount) // 0x09E8F18641BE2575 b1734
_NETWORK_EARN_FROM_CASINO_AWARD
void MONEY::_NETWORK_EARN_FROM_CASINO_AWARD(int amount, Hash hash) // 0x973A9781A34F8DEB b1734
_0x870289A558348378
void MONEY::_0x870289A558348378(Any p0, Any p1, Any p2, Any p3) // 0x870289A558348378 b1868
_0x5574637681911FDA
void MONEY::_0x5574637681911FDA(Any p0, Any p1, Any p2, Any p3) // 0x5574637681911FDA b1868
_NETWORK_SPENT_CASINO_HEIST
void MONEY::_NETWORK_SPENT_CASINO_HEIST(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9, Any p10) // 0xD30E8392F407C328 b1868
_0xB5B58E24868CB09E
void MONEY::_0xB5B58E24868CB09E(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xB5B58E24868CB09E b1868
_NETWORK_SPENT_ARCADE_GAME
void MONEY::_NETWORK_SPENT_ARCADE_GAME(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xEAD3D81F2C3A1458 b1868
_NETWORK_SPENT_ARCADE_GENERIC
void MONEY::_NETWORK_SPENT_ARCADE_GENERIC(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x43AA7FAC4E6D6687 b1868
_NETWORK_EARN_CASINO_HEIST
void MONEY::_NETWORK_EARN_CASINO_HEIST(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x72E7C7B9615FA3C3 b1868
_0x4C3B75694F7E0D9C
void MONEY::_0x4C3B75694F7E0D9C(Any p0, Any p1, Any p2) // 0x4C3B75694F7E0D9C b1868
_0xD29334ED1A256DBF
void MONEY::_0xD29334ED1A256DBF(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xD29334ED1A256DBF b1868
_0xA95CFB4E02390842
void MONEY::_0xA95CFB4E02390842(Any p0, Any p1, Any p2) // 0xA95CFB4E02390842 b1868
_0x0DD362F14F18942A
void MONEY::_0x0DD362F14F18942A(int amount, Any p1, Any p2) // 0x0DD362F14F18942A b1868
_NETWORK_EARN_CASINO_HEIST_BONUS
void MONEY::_NETWORK_EARN_CASINO_HEIST_BONUS(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x3EC7471E6909798A b1868
_NETWORK_EARN_FROM_COLLECTION_ITEM
void MONEY::_NETWORK_EARN_FROM_COLLECTION_ITEM(int amount, Any p1) // 0x84FF63BD4966F33D b1734
_NETWORK_EARN_COLLECTABLE_COMPLETED_COLLECTION
void MONEY::_NETWORK_EARN_COLLECTABLE_COMPLETED_COLLECTION(int amount, Any p1) // 0x5C9B198AF5A54FA6 b2060
_0xDE68E30D89F97132
void MONEY::_0xDE68E30D89F97132(int amount, Any p1) // 0xDE68E30D89F97132 b2060
_0xE2E244AB823B4483
void MONEY::_0xE2E244AB823B4483(int amount, Any p1) // 0xE2E244AB823B4483 b2060
_NETWORK_SPENT_BEACH_PARTY_GENERIC
void MONEY::_NETWORK_SPENT_BEACH_PARTY_GENERIC(Any p0) // 0x54ABA22FA6371249 b2189
_NETWORK_SPENT_SUBMARINE
void MONEY::_NETWORK_SPENT_SUBMARINE(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x6C8BC1488527AAAB b2189
_NETWORK_SPENT_CASINO_CLUB_GENERIC
void MONEY::_NETWORK_SPENT_CASINO_CLUB_GENERIC(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8) // 0xC991C255AA6D90B2 b2189
_0x90CD7C6871FBF1B4
void MONEY::_0x90CD7C6871FBF1B4(Any p0, Any p1, Any p2, Any p3) // 0x90CD7C6871FBF1B4 b2189
_0x89049A84065CE68E
void MONEY::_0x89049A84065CE68E(Any p0, Any p1, Any p2, Any p3) // 0x89049A84065CE68E b2189
_NETWORK_SPENT_ISLAND_HEIST
void MONEY::_NETWORK_SPENT_ISLAND_HEIST(Any p0, Any p1, Any p2, Any p3) // 0xE86689E5F82DE429 b2189
_NETWORK_EARN_ISLAND_HEIST
void MONEY::_NETWORK_EARN_ISLAND_HEIST(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0xD21D111C46BA9F15 b2189
_0xA51338E0DCCD4065
void MONEY::_0xA51338E0DCCD4065(Any p0, Any p1, Any p2) // 0xA51338E0DCCD4065 b2189
_0xE2BB399D90942091
void MONEY::_0xE2BB399D90942091(Any p0, Any p1) // 0xE2BB399D90942091 b2189
NETWORK_GET_VC_BANK_BALANCE
int MONEY::NETWORK_GET_VC_BANK_BALANCE() // 0x76EF28DA05EA395A 0x16184FB5 b323
NETWORK_GET_VC_WALLET_BALANCE
int MONEY::NETWORK_GET_VC_WALLET_BALANCE(int characterSlot) // 0xA40F9C2623F6A8B5 0x4F5B781C b323
NETWORK_GET_VC_BALANCE
int MONEY::NETWORK_GET_VC_BALANCE() // 0x5CBAD97E059E1B94 0xADF8F882 b323
NETWORK_GET_EVC_BALANCE
int MONEY::NETWORK_GET_EVC_BALANCE() // 0x5D1E75F91C07DEE5 0xF1EDB7F4 b323
NETWORK_GET_PVC_BALANCE
int MONEY::NETWORK_GET_PVC_BALANCE() // 0x4F54F3B6C202FB4E 0x56485B56 b323
NETWORK_GET_STRING_WALLET_BALANCE
const char* MONEY::NETWORK_GET_STRING_WALLET_BALANCE(int characterSlot) // 0xF9B10B529DCFB33B 0xC1A11435 b323
NETWORK_GET_STRING_BANK_BALANCE
const char* MONEY::NETWORK_GET_STRING_BANK_BALANCE() // 0xA6FA3979BED01B81 0xAA7EA3BD b323
NETWORK_GET_STRING_BANK_WALLET_BALANCE
const char* MONEY::NETWORK_GET_STRING_BANK_WALLET_BALANCE() // 0x700AF71AE615E6DD 0x7D4FD28C b323
_NETWORK_GET_VC_WALLET_BALANCE_IS_NOT_LESS_THAN
BOOL MONEY::_NETWORK_GET_VC_WALLET_BALANCE_IS_NOT_LESS_THAN(int amount, int characterSlot) // 0xED5AB8860415BABA 0x0EA2188C b323
Returns true if wallet balance >= amount.
_NETWORK_GET_VC_BANK_BALANCE_IS_NOT_LESS_THAN
BOOL MONEY::_NETWORK_GET_VC_BANK_BALANCE_IS_NOT_LESS_THAN(int amount) // 0xA31FD6A0865B6D14 0xABED6020 b323
Returns true if bank balance >= amount.
_NETWORK_GET_VC_BANK_WALLET_BALANCE_IS_NOT_LESS_THAN
BOOL MONEY::_NETWORK_GET_VC_BANK_WALLET_BALANCE_IS_NOT_LESS_THAN(int amount, int characterSlot) // 0xDC18531D7019A535 0xCA23FD25 b323
Returns true if bank balance + wallet balance >= amount.
NETWORK_GET_PVC_TRANSFER_BALANCE
int MONEY::NETWORK_GET_PVC_TRANSFER_BALANCE() // 0x13A8DE2FD77D04F3 0xC670C814 b323
Retturns the same value as NETWORK_GET_REMAINING_TRANSFER_BALANCE.
_0x08E8EEADFD0DC4A0
BOOL MONEY::_0x08E8EEADFD0DC4A0(int amount) // 0x08E8EEADFD0DC4A0 0x03461981 b323
Returns false if amount > wallet balance or daily transfer limit has been hit.
NETWORK_CAN_RECEIVE_PLAYER_CASH
BOOL MONEY::NETWORK_CAN_RECEIVE_PLAYER_CASH(Any p0, Any p1, Any p2, Any p3) // 0x5D17BE59D2123284 0x41F5F10E b323
NETWORK_GET_REMAINING_TRANSFER_BALANCE
int MONEY::NETWORK_GET_REMAINING_TRANSFER_BALANCE() // 0xEA560AC9EEB1E19B 0xA9021211 b323
Returns the same value as NETWORK_GET_PVC_TRANSFER_BALANCE.
WITHDRAW_VC
int MONEY::WITHDRAW_VC(int amount) // 0xF70EFA14FE091429 0x8B755993 b323
Does nothing and always returns 0.
DEPOSIT_VC
BOOL MONEY::DEPOSIT_VC(int amount) // 0xE260E0BB9CD995AC 0x8F266745 b323
Does nothing and always returns false.
_0xE154B48B68EF72BC
BOOL MONEY::_0xE154B48B68EF72BC(Any p0) // 0xE154B48B68EF72BC 0x531E4892 b323
This function is hard-coded to always return 1.
_0x6FCF8DDEA146C45B
BOOL MONEY::_0x6FCF8DDEA146C45B(Any p0) // 0x6FCF8DDEA146C45B 0xB96C7ABE b323
This function is hard-coded to always return 1.
NETSHOPPING
_NET_GAMESERVER_USE_SERVER_TRANSACTIONS
BOOL NETSHOPPING::_NET_GAMESERVER_USE_SERVER_TRANSACTIONS() // 0x7D2708796355B20B b1290
_NET_GAMESERVER_CATALOG_ITEM_EXISTS
BOOL NETSHOPPING::_NET_GAMESERVER_CATALOG_ITEM_EXISTS(const char* name) // 0xBD4D7EAF8A30F637 b323
_NET_GAMESERVER_CATALOG_ITEM_EXISTS_HASH
BOOL NETSHOPPING::_NET_GAMESERVER_CATALOG_ITEM_EXISTS_HASH(Hash hash) // 0x247F0F73A182EA0B b323
NET_GAMESERVER_GET_PRICE
int NETSHOPPING::NET_GAMESERVER_GET_PRICE(Hash itemHash, Hash categoryHash, BOOL p2) // 0xC27009422FCCA88D b323
bool is always true in game scripts
_NET_GAMESERVER_CATALOG_IS_READY
BOOL NETSHOPPING::_NET_GAMESERVER_CATALOG_IS_READY() // 0x3C4487461E9B0DCB b323
_NET_GAMESERVER_IS_CATALOG_VALID
BOOL NETSHOPPING::_NET_GAMESERVER_IS_CATALOG_VALID() // 0x2B949A1E6AEC8F6A b323
_0x85F6C9ABA1DE2BCF
Any NETSHOPPING::_0x85F6C9ABA1DE2BCF() // 0x85F6C9ABA1DE2BCF b323
_0x357B152EF96C30B6
Any NETSHOPPING::_0x357B152EF96C30B6() // 0x357B152EF96C30B6 b323
_NET_GAMESERVER_GET_CATALOG_STATE
BOOL NETSHOPPING::_NET_GAMESERVER_GET_CATALOG_STATE(int* state) // 0xCF38DAFBB49EDE5E b323
_0xE3E5A7C64CA2C6ED
Any NETSHOPPING::_0xE3E5A7C64CA2C6ED() // 0xE3E5A7C64CA2C6ED b323
_0x0395CB47B022E62C
BOOL NETSHOPPING::_0x0395CB47B022E62C(int* p0) // 0x0395CB47B022E62C b323
NET_GAMESERVER_START_SESSION
BOOL NETSHOPPING::NET_GAMESERVER_START_SESSION(int charSlot) // 0xA135AC892A58FC07 b323
_0x72EB7BA9B69BF6AB
BOOL NETSHOPPING::_0x72EB7BA9B69BF6AB() // 0x72EB7BA9B69BF6AB b323
_0x170910093218C8B9
BOOL NETSHOPPING::_0x170910093218C8B9(int* p0) // 0x170910093218C8B9 b323
_0xC13C38E47EA5DF31
BOOL NETSHOPPING::_0xC13C38E47EA5DF31(int* p0) // 0xC13C38E47EA5DF31 b323
NET_GAMESERVER_IS_SESSION_VALID
BOOL NETSHOPPING::NET_GAMESERVER_IS_SESSION_VALID(int charSlot) // 0xB24F0944DA203D9E b323
_0x74A0FD0688F1EE45
int NETSHOPPING::_0x74A0FD0688F1EE45(int p0) // 0x74A0FD0688F1EE45 b323
NET_GAMESERVER_*
NET_GAMESERVER_SESSION_APPLY_RECEIVED_DATA
BOOL NETSHOPPING::NET_GAMESERVER_SESSION_APPLY_RECEIVED_DATA(int charSlot) // 0x2F41D51BA3BCD1F1 b323
NET_GAMESERVER_IS_SESSION_REFRESH_PENDING
BOOL NETSHOPPING::NET_GAMESERVER_IS_SESSION_REFRESH_PENDING() // 0x810E8431C0614BF9 b323
_NET_GAMESERVER_GET_BALANCE
BOOL NETSHOPPING::_NET_GAMESERVER_GET_BALANCE(BOOL inventory, BOOL playerbalance) // 0x35A1B3E1D1315CFA b323
Note: only one of the arguments can be set to true at a time
_0x613F125BA3BD2EB9
BOOL NETSHOPPING::_0x613F125BA3BD2EB9() // 0x613F125BA3BD2EB9 b372
_NET_GAMESERVER_GET_TRANSACTION_MANAGER_DATA
BOOL NETSHOPPING::_NET_GAMESERVER_GET_TRANSACTION_MANAGER_DATA(int* p0, BOOL* p1) // 0x897433D292B44130 b323
NET_GAMESERVER_BASKET_START
BOOL NETSHOPPING::NET_GAMESERVER_BASKET_START(int* transactionId, Hash categoryHash, Hash actionHash, int flags) // 0x279F08B1A4B29B7E b323
_NET_GAMESERVER_BASKET_DELETE
BOOL NETSHOPPING::_NET_GAMESERVER_BASKET_DELETE() // 0xFA336E7F40C0A0D0 b372
NET_GAMESERVER_BASKET_END
BOOL NETSHOPPING::NET_GAMESERVER_BASKET_END() // 0xA65568121DF2EA26 b323
NET_GAMESERVER_BASKET_ADD_ITEM
BOOL NETSHOPPING::NET_GAMESERVER_BASKET_ADD_ITEM(Any* itemData, int quantity) // 0xF30980718C8ED876 b323
NET_GAMESERVER_BASKET_IS_FULL
BOOL NETSHOPPING::NET_GAMESERVER_BASKET_IS_FULL() // 0x27F76CC6C55AD30E b323
NET_GAMESERVER_BASKET_APPLY_SERVER_DATA
BOOL NETSHOPPING::NET_GAMESERVER_BASKET_APPLY_SERVER_DATA(Any p0, Any* p1) // 0xE1A0450ED46A7812 b323
NET_GAMESERVER_CHECKOUT_START
BOOL NETSHOPPING::NET_GAMESERVER_CHECKOUT_START(int transactionId) // 0x39BE7CEA8D9CC8E6 b323
NET_GAMESERVER_BEGIN_SERVICE
BOOL NETSHOPPING::NET_GAMESERVER_BEGIN_SERVICE(int* transactionId, Hash categoryHash, Hash itemHash, Hash actionTypeHash, int value, int flags) // 0x3C5FD37B5499582E b323
NET_GAMESERVER_END_SERVICE
BOOL NETSHOPPING::NET_GAMESERVER_END_SERVICE(int transactionId) // 0xE2A99A9B524BEFFF b323
_NET_GAMESERVER_DELETE_CHARACTER_SLOT
BOOL NETSHOPPING::_NET_GAMESERVER_DELETE_CHARACTER_SLOT(int slot, BOOL transfer, Hash reason) // 0x51F1A8E48C3D2F6D b323
_NET_GAMESERVER_DELETE_CHARACTER_SLOT_GET_STATUS
int NETSHOPPING::_NET_GAMESERVER_DELETE_CHARACTER_SLOT_GET_STATUS() // 0x0A6D923DFFC9BD89 b323
NET_GAMESERVER_DELETE_SET_TELEMETRY_NONCE_SEED
BOOL NETSHOPPING::NET_GAMESERVER_DELETE_SET_TELEMETRY_NONCE_SEED() // 0x112CEF1615A1139F b323
_NET_GAMESERVER_TRANSFER_BANK_TO_WALLET
BOOL NETSHOPPING::_NET_GAMESERVER_TRANSFER_BANK_TO_WALLET(int charSlot, int amount) // 0xD47A2C1BA117471D b323
_NET_GAMESERVER_TRANSFER_WALLET_TO_BANK
BOOL NETSHOPPING::_NET_GAMESERVER_TRANSFER_WALLET_TO_BANK(int charSlot, int amount) // 0xC2F7FE5309181C7D b323
_NET_GAMESERVER_TRANSFER_CASH_GET_STATUS
int NETSHOPPING::_NET_GAMESERVER_TRANSFER_CASH_GET_STATUS() // 0x23789E777D14CE44 b323
Same as 0x350AA5EBC03D3BD2
_NET_GAMESERVER_TRANSFER_CASH_GET_STATUS_2
int NETSHOPPING::_NET_GAMESERVER_TRANSFER_CASH_GET_STATUS_2() // 0x350AA5EBC03D3BD2 b323
Same as 0x23789E777D14CE44
_NET_GAMESERVER_TRANSFER_CASH_SET_TELEMETRY_NONCE_SEED
BOOL NETSHOPPING::_NET_GAMESERVER_TRANSFER_CASH_SET_TELEMETRY_NONCE_SEED() // 0x498C1E05CE5F7877 b323
Used to be NETWORK_SHOP_CASH_TRANSFER_SET_TELEMETRY_NONCE_SEED
NET_GAMESERVER_SET_TELEMETRY_NONCE_SEED
BOOL NETSHOPPING::NET_GAMESERVER_SET_TELEMETRY_NONCE_SEED(int p0) // 0x9507D4271988E1AE b323
NETWORK
_GET_ONLINE_VERSION
const char* NETWORK::_GET_ONLINE_VERSION() // 0xFCA9373EF340AC0A b323
Online version is defined here: update\update.rpf\common\data\version.txt Example: [ONLINE_VERSION_NUMBER] 1.33 _GET_ONLINE_VERSION() will return "1.33"
NETWORK_IS_SIGNED_IN
BOOL NETWORK::NETWORK_IS_SIGNED_IN() // 0x054354A99211EB96 0xADD0B40F b323
Returns whether the player is signed into Social Club.
NETWORK_IS_SIGNED_ONLINE
BOOL NETWORK::NETWORK_IS_SIGNED_ONLINE() // 0x1077788E268557C2 0x6E5BDCE2 b323
Returns whether the game is not in offline mode. seemed not to work for some ppl
_0xBD545D44CCE70597
BOOL NETWORK::_0xBD545D44CCE70597() // 0xBD545D44CCE70597 b323
MulleDK19: This function is hard-coded to always return 1.
_0xEBCAB9E5048434F4
Any NETWORK::_0xEBCAB9E5048434F4() // 0xEBCAB9E5048434F4 b323
MulleDK19: This function is hard-coded to always return 1.
_0x74FB3E29E6D10FA9
Any NETWORK::_0x74FB3E29E6D10FA9() // 0x74FB3E29E6D10FA9 b323
MulleDK19: This function is hard-coded to always return 0.
_0x7808619F31FF22DB
Any NETWORK::_0x7808619F31FF22DB() // 0x7808619F31FF22DB b323
MulleDK19: This function is hard-coded to always return 1.
_0xA0FA4EC6A05DA44E
Any NETWORK::_0xA0FA4EC6A05DA44E() // 0xA0FA4EC6A05DA44E b323
MulleDK19: This function is hard-coded to always return 0.
NETWORK_HAS_VALID_ROS_CREDENTIALS
BOOL NETWORK::NETWORK_HAS_VALID_ROS_CREDENTIALS() // 0x85443FF4C328F53B 0x3FB40673 b323
Returns whether the signed-in user has valid Rockstar Online Services (ROS) credentials.
_0x8D11E61A4ABF49CC
BOOL NETWORK::_0x8D11E61A4ABF49CC() // 0x8D11E61A4ABF49CC 0xBDC8F63E b323
NETWORK_IS_* Seems to be related to PlayStation
NETWORK_IS_CLOUD_AVAILABLE
BOOL NETWORK::NETWORK_IS_CLOUD_AVAILABLE() // 0x9A4CF4F48AD77302 0xC7FF5AFC b323
NETWORK_HAS_SOCIAL_CLUB_ACCOUNT
BOOL NETWORK::NETWORK_HAS_SOCIAL_CLUB_ACCOUNT() // 0x67A5589628E0CFF6 0x66EC713F b323
NETWORK_ARE_SOCIAL_CLUB_POLICIES_CURRENT
BOOL NETWORK::NETWORK_ARE_SOCIAL_CLUB_POLICIES_CURRENT() // 0xBA9775570DB788CF 0x358D1D77 b323
NETWORK_IS_HOST
BOOL NETWORK::NETWORK_IS_HOST() // 0x8DB296B814EDDA07 0xE46AC10F b323
If you are host, returns true else returns false.
_0x4237E822315D8BA9
BOOL NETWORK::_0x4237E822315D8BA9() // 0x4237E822315D8BA9 b323
NETWORK_HAVE_ONLINE_PRIVILEGES
BOOL NETWORK::NETWORK_HAVE_ONLINE_PRIVILEGES() // 0x25CB5A9F37BFD063 0xEF63BFDF b323
_NETWORK_HAS_AGE_RESTRICTED_PROFILE
BOOL NETWORK::_NETWORK_HAS_AGE_RESTRICTED_PROFILE() // 0x1353F87E89946207 b323
NETWORK_HAVE_USER_CONTENT_PRIVILEGES
BOOL NETWORK::NETWORK_HAVE_USER_CONTENT_PRIVILEGES(int p0) // 0x72D918C99BCACC54 0x1F88819D b323
NETWORK_HAVE_COMMUNICATION_PRIVILEGES
BOOL NETWORK::NETWORK_HAVE_COMMUNICATION_PRIVILEGES(int p0, Player player) // 0xAEEF48CDF5B6CE7C 0x2D817A5E b323
_0x78321BEA235FD8CD
BOOL NETWORK::_0x78321BEA235FD8CD(Any p0, BOOL p1) // 0x78321BEA235FD8CD b323
NETWORK_CHECK_USER_CONTENT_PRIVILEGES
BOOL NETWORK::NETWORK_CHECK_USER_CONTENT_PRIVILEGES(int p0, int p1, BOOL p2) // 0x595F028698072DD9 0xBB54AA3D b323
NETWORK_CHECK_COMMUNICATION_PRIVILEGES
BOOL NETWORK::NETWORK_CHECK_COMMUNICATION_PRIVILEGES(int p0, int p1, BOOL p2) // 0x83F28CE49FBBFFBA 0xA79E5B05 b323
_0x07EAB372C8841D99
Any NETWORK::_0x07EAB372C8841D99(Any p0, Any p1, Any p2) // 0x07EAB372C8841D99 b1011
_0x906CA41A4B74ECA4
Any NETWORK::_0x906CA41A4B74ECA4() // 0x906CA41A4B74ECA4 b1493
_0x023ACAB2DC9DC4A4
Any NETWORK::_0x023ACAB2DC9DC4A4() // 0x023ACAB2DC9DC4A4 b1493
NETWORK_HAS_SOCIAL_NETWORKING_SHARING_PRIV
BOOL NETWORK::NETWORK_HAS_SOCIAL_NETWORKING_SHARING_PRIV() // 0x76BF03FADBF154F5 0xEB864288 b323
NETWORK_GET_AGE_GROUP
int NETWORK::NETWORK_GET_AGE_GROUP() // 0x9614B71F8ADB982B 0xAB07CBBE b323
_0x0CF6CC51AA18F0F8
Any NETWORK::_0x0CF6CC51AA18F0F8(Any p0, Any p1, Any p2) // 0x0CF6CC51AA18F0F8 b1180
_0x64E5C4CC82847B73
BOOL NETWORK::_0x64E5C4CC82847B73() // 0x64E5C4CC82847B73 b1734
Hardcoded to return false.
_0x1F7BC3539F9E0224
void NETWORK::_0x1F7BC3539F9E0224() // 0x1F7BC3539F9E0224 b1180
_NETWORK_HAVE_ONLINE_PRIVILEGE_2
BOOL NETWORK::_NETWORK_HAVE_ONLINE_PRIVILEGE_2() // 0x5EA784D197556507 b323
_0xA8ACB6459542A8C8
Any NETWORK::_0xA8ACB6459542A8C8() // 0xA8ACB6459542A8C8 b323
_0x83FE8D7229593017
void NETWORK::_0x83FE8D7229593017() // 0x83FE8D7229593017 b323
_0x53C10C8BD774F2C9
Any NETWORK::_0x53C10C8BD774F2C9() // 0x53C10C8BD774F2C9 b1011
NETWORK_CAN_BAIL
BOOL NETWORK::NETWORK_CAN_BAIL() // 0x580CE4438479CC61 0x60E1FEDF b323
NETWORK_BAIL
void NETWORK::NETWORK_BAIL(int p0, int p1, int p2) // 0x95914459A87EBA28 0x87D79A04 b323
_0x283B6062A2C01E9B
void NETWORK::_0x283B6062A2C01E9B() // 0x283B6062A2C01E9B 0x96E28FE2 b323
_0x8B4FFC790CA131EF
Any NETWORK::_0x8B4FFC790CA131EF(Any p0, Any p1, Any p2, Any p3) // 0x8B4FFC790CA131EF b617
_NETWORK_TRANSITION_TRACK
void NETWORK::_NETWORK_TRANSITION_TRACK(Hash hash, int p1, int p2, int state, int p4) // 0xC3BFED92026A2AAD b617
_0x04918A41BC9B8157
Any NETWORK::_0x04918A41BC9B8157(Any p0, Any p1, Any p2) // 0x04918A41BC9B8157 b617
NETWORK_CAN_ACCESS_MULTIPLAYER
BOOL NETWORK::NETWORK_CAN_ACCESS_MULTIPLAYER(int* loadingState) // 0xAF50DA1A3F8B1BA4 0xA520B982 b323
11 - Need to download tunables. 12 - Need to download background script. Returns 1 if the multiplayer is loaded, otherwhise 0.
NETWORK_IS_MULTIPLAYER_DISABLED
BOOL NETWORK::NETWORK_IS_MULTIPLAYER_DISABLED() // 0x9747292807126EDA 0x05518C0F b323
NETWORK_CAN_ENTER_MULTIPLAYER
BOOL NETWORK::NETWORK_CAN_ENTER_MULTIPLAYER() // 0x7E782A910C362C25 0x4A23B9C9 b323
NETWORK_SESSION_ENTER
Any NETWORK::NETWORK_SESSION_ENTER(Any p0, Any p1, Any p2, int maxPlayers, Any p4, Any p5) // 0x330ED4D05491934F 0x543CD2BE b323
unknown params p0 = 0, 2, or 999 (The global is 999 by default.) p1 = 0 (Always in every script it's found in atleast.) p2 = 0, 3, or 4 (Based on a var that is determined by a function.) p3 = maxPlayers (It's obvious in x360 scripts it's always 18) p4 = 0 (Always in every script it's found in atleast.) p5 = 0 or 1. (1 if network_can_enter_multiplayer, but set to 0 if other checks after that are passed.) p5 is reset to 0 if, Global_1315318 = 0 or Global_1315323 = 9 or 12 or (Global_1312629 = 0 && Global_1312631 = true/1) those are passed.
NETWORK_SESSION_FRIEND_MATCHMAKING
BOOL NETWORK::NETWORK_SESSION_FRIEND_MATCHMAKING(int p0, int p1, int maxPlayers, BOOL p3) // 0x2CFC76E0D087C994 0x4E53202A b323
NETWORK_SESSION_CREW_MATCHMAKING
BOOL NETWORK::NETWORK_SESSION_CREW_MATCHMAKING(int p0, int p1, int p2, int maxPlayers, BOOL p4) // 0x94BC51E9449D917F 0xD7624E6B b323
NETWORK_SESSION_ACTIVITY_QUICKMATCH
BOOL NETWORK::NETWORK_SESSION_ACTIVITY_QUICKMATCH(Any p0, Any p1, Any p2, Any p3) // 0xBE3E347A87ACEB82 0x3F75CC38 b323
NETWORK_SESSION_HOST
BOOL NETWORK::NETWORK_SESSION_HOST(int p0, int maxPlayers, BOOL p2) // 0x6F3D4ED9BEE4E61D 0x6716460F b323
Does nothing in online but in offline it will cause the screen to fade to black. Nothing happens past then, the screen will sit at black until you restart GTA. Other stuff must be needed to actually host a session.
NETWORK_SESSION_HOST_CLOSED
BOOL NETWORK::NETWORK_SESSION_HOST_CLOSED(int p0, int maxPlayers) // 0xED34C0C02C098BB7 0x8AC9EA19 b323
NETWORK_SESSION_HOST_FRIENDS_ONLY
BOOL NETWORK::NETWORK_SESSION_HOST_FRIENDS_ONLY(int p0, int maxPlayers) // 0xB9CFD27A5D578D83 0x26864403 b323
Does nothing in online but in offline it will cause the screen to fade to black. Nothing happens past then, the screen will sit at black until you restart GTA. Other stuff must be needed to actually host a session.
NETWORK_SESSION_IS_CLOSED_FRIENDS
BOOL NETWORK::NETWORK_SESSION_IS_CLOSED_FRIENDS() // 0xFBCFA2EA2E206890 0x56E75FE4 b323
NETWORK_SESSION_IS_CLOSED_CREW
BOOL NETWORK::NETWORK_SESSION_IS_CLOSED_CREW() // 0x74732C6CA90DA2B4 0xA95299B9 b323
NETWORK_SESSION_IS_SOLO
BOOL NETWORK::NETWORK_SESSION_IS_SOLO() // 0xF3929C2379B60CCE 0x3D2C1916 b323
NETWORK_SESSION_IS_PRIVATE
BOOL NETWORK::NETWORK_SESSION_IS_PRIVATE() // 0xCEF70AA5B3F89BA1 0xDB67785D b323
NETWORK_SESSION_END
BOOL NETWORK::NETWORK_SESSION_END(BOOL p0, BOOL p1) // 0xA02E59562D711006 0xBCACBEA2 b323
p0 is always false and p1 varies. NETWORK_SESSION_END(0, 1) NETWORK_SESSION_END(0, 0) Results in: "Connection to session lost due to an unknown network error. Please return to Grand Theft Auto V and try again later."
_0xB9351A07A0D458B1
Any NETWORK::_0xB9351A07A0D458B1(Any p0) // 0xB9351A07A0D458B1 b2060
NETWORK_SESSION_KICK_PLAYER
void NETWORK::NETWORK_SESSION_KICK_PLAYER(Player player) // 0xFA8904DC5F304220 0x1E20138A b323
Only works as host.
NETWORK_SESSION_GET_KICK_VOTE
BOOL NETWORK::NETWORK_SESSION_GET_KICK_VOTE(Player player) // 0xD6D09A6F32F49EF1 0x8A559D26 b323
_0x041C7F2A6C9894E6
Any NETWORK::_0x041C7F2A6C9894E6(Any p0, Any p1, Any p2) // 0x041C7F2A6C9894E6 b463
NETWORK_JOIN_PREVIOUSLY_FAILED_SESSION
BOOL NETWORK::NETWORK_JOIN_PREVIOUSLY_FAILED_SESSION() // 0x59DF79317F85A7E0 0x6CDAA7D2 b323
NETWORK_JOIN_PREVIOUSLY_FAILED_TRANSITION
BOOL NETWORK::NETWORK_JOIN_PREVIOUSLY_FAILED_TRANSITION() // 0xFFE1E5B792D92B34 0xBF21818E b323
NETWORK_SESSION_SET_MATCHMAKING_GROUP
void NETWORK::NETWORK_SESSION_SET_MATCHMAKING_GROUP(int matchmakingGroup) // 0x49EC8030F5015F8B 0x3C3E2AB6 b323
NETWORK_SESSION_SET_MATCHMAKING_GROUP_MAX
void NETWORK::NETWORK_SESSION_SET_MATCHMAKING_GROUP_MAX(int playerType, int playerCount) // 0x8B6A4DD0AF9CE215 0x5F29A7E0 b323
playerTypes: 0 = regular joiner 4 = spectator 8 = unknown
NETWORK_SESSION_GET_MATCHMAKING_GROUP_FREE
int NETWORK::NETWORK_SESSION_GET_MATCHMAKING_GROUP_FREE(int p0) // 0x56CE820830EF040B 0x36EAD960 b323
_0xCAE55F48D3D7875C
void NETWORK::_0xCAE55F48D3D7875C(int p0) // 0xCAE55F48D3D7875C 0x5BE529F7 b323
NETWORK_SESSION_* p0 must be <= 4
_0xF49ABC20D8552257
void NETWORK::_0xF49ABC20D8552257(Any p0) // 0xF49ABC20D8552257 0x454C7B67 b323
_0x4811BBAC21C5FCD5
void NETWORK::_0x4811BBAC21C5FCD5(Any p0) // 0x4811BBAC21C5FCD5 0xE5961511 b323
_0x5539C3EBF104A53A
void NETWORK::_0x5539C3EBF104A53A(BOOL p0) // 0x5539C3EBF104A53A 0xAE396263 b323
_0x702BC4D605522539
void NETWORK::_0x702BC4D605522539(Any p0) // 0x702BC4D605522539 0x913FD7D6 b323
NETWORK_SESSION_SET_MATCHMAKING_PROPERTY_ID
void NETWORK::NETWORK_SESSION_SET_MATCHMAKING_PROPERTY_ID(BOOL p0) // 0x3F52E880AAF6C8CA 0xB3D9A67F b323
NETWORK_SESSION_SET_MATCHMAKING_MENTAL_STATE
void NETWORK::NETWORK_SESSION_SET_MATCHMAKING_MENTAL_STATE(Any p0) // 0xF1EEA2DDA9FFA69D 0x6CC062FC b323
_0x5ECD378EE64450AB
void NETWORK::_0x5ECD378EE64450AB(Any p0) // 0x5ECD378EE64450AB b573
_0x59D421683D31835A
void NETWORK::_0x59D421683D31835A(Any p0) // 0x59D421683D31835A b573
_0x1153FA02A659051C
void NETWORK::_0x1153FA02A659051C() // 0x1153FA02A659051C 0x57F9BC83 b323
NETWORK_SESSION_VALIDATE_JOIN
void NETWORK::NETWORK_SESSION_VALIDATE_JOIN(BOOL p0) // 0xC19F6C8E7865A6FF 0xF3768F90 b323
NETWORK_ADD_FOLLOWERS
void NETWORK::NETWORK_ADD_FOLLOWERS(int* p0, int p1) // 0x236406F60CF216D6 0x0EC62629 b323
..
NETWORK_CLEAR_FOLLOWERS
void NETWORK::NETWORK_CLEAR_FOLLOWERS() // 0x058F43EC59A8631A 0x5E557307 b323
NETWORK_GET_GLOBAL_MULTIPLAYER_CLOCK
void NETWORK::NETWORK_GET_GLOBAL_MULTIPLAYER_CLOCK(int* hours, int* minutes, int* seconds) // 0x6D03BFBD643B2A02 0x74E8C53E b323
_0x600F8CB31C7AAB6E
void NETWORK::_0x600F8CB31C7AAB6E(Any p0) // 0x600F8CB31C7AAB6E 0x959E43A3 b323
_NETWORK_GET_TARGETING_MODE
int NETWORK::_NETWORK_GET_TARGETING_MODE() // 0xDFFA5BE8381C3314 b463
NETWORK_FIND_GAMERS_IN_CREW
BOOL NETWORK::NETWORK_FIND_GAMERS_IN_CREW(Any p0) // 0xE532D6811B3A4D2A 0x7771AB83 b323
NETWORK_FIND_MATCHED_GAMERS
BOOL NETWORK::NETWORK_FIND_MATCHED_GAMERS(Any p0, float p1, float p2, float p3) // 0xF7B2CFDE5C9F700D 0xA13045D4 b323
NETWORK_IS_FINDING_GAMERS
BOOL NETWORK::NETWORK_IS_FINDING_GAMERS() // 0xDDDF64C91BFCF0AA 0xA6DAA79F b323
_0xF9B83B77929D8863
Any NETWORK::_0xF9B83B77929D8863() // 0xF9B83B77929D8863 0xBEDC4503 b323
NETWORK_GET_NUM_FOUND_GAMERS
int NETWORK::NETWORK_GET_NUM_FOUND_GAMERS() // 0xA1B043EE79A916FB 0xF4B80C7E b323
NETWORK_GET_FOUND_GAMER
BOOL NETWORK::NETWORK_GET_FOUND_GAMER(Any* p0, Any p1) // 0x9DCFF2AFB68B3476 0xA08C9141 b323
NETWORK_CLEAR_FOUND_GAMERS
void NETWORK::NETWORK_CLEAR_FOUND_GAMERS() // 0x6D14CCEE1B40381A 0x6AA9A154 b323
_NETWORK_GET_GAMER_STATUS
BOOL NETWORK::_NETWORK_GET_GAMER_STATUS(Any* p0) // 0x85A0EF54A500882C 0x42BD0780 b323
_0x2CC848A861D01493
Any NETWORK::_0x2CC848A861D01493() // 0x2CC848A861D01493 0xBEB98840 b323
_0x94A8394D150B013A
Any NETWORK::_0x94A8394D150B013A() // 0x94A8394D150B013A 0x08029970 b323
NETWORK_IS_*
_0x5AE17C6B0134B7F1
Any NETWORK::_0x5AE17C6B0134B7F1() // 0x5AE17C6B0134B7F1 0xC871E745 b323
NETWORK_GET_GAMER_STATUS_RESULT
BOOL NETWORK::NETWORK_GET_GAMER_STATUS_RESULT(Any* p0, Any p1) // 0x02A8BEC6FD9AF660 0xB5ABC4B4 b323
NETWORK_CLEAR_GET_GAMER_STATUS
void NETWORK::NETWORK_CLEAR_GET_GAMER_STATUS() // 0x86E0660E4F5C956D 0x3F7EDBBD b323
NETWORK_SESSION_JOIN_INVITE
void NETWORK::NETWORK_SESSION_JOIN_INVITE() // 0xC6F8AB8A4189CF3A 0x3D6360B5 b323
NETWORK_SESSION_CANCEL_INVITE
void NETWORK::NETWORK_SESSION_CANCEL_INVITE() // 0x2FBF47B1B36D36F9 0x20317535 b323
NETWORK_SESSION_FORCE_CANCEL_INVITE
void NETWORK::NETWORK_SESSION_FORCE_CANCEL_INVITE() // 0xA29177F7703B5644 0x3FD49D3B b323
NETWORK_HAS_PENDING_INVITE
BOOL NETWORK::NETWORK_HAS_PENDING_INVITE() // 0xAC8C7B9B88C4A668 0x0C207D6E b323
_0xC42DD763159F3461
BOOL NETWORK::_0xC42DD763159F3461() // 0xC42DD763159F3461 0xFBBAC350 b323
_NETWORK_ACCEPT_INVITE
BOOL NETWORK::_NETWORK_ACCEPT_INVITE() // 0x62A0296C1BB1CEB3 0x0907A6BF b323
NETWORK_RE* Triggers a CEventNetworkInviteConfirmed event
NETWORK_SESSION_WAS_INVITED
BOOL NETWORK::NETWORK_SESSION_WAS_INVITED() // 0x23DFB504655D0CE4 0x6A0BEA60 b323
NETWORK_SESSION_GET_INVITER
void NETWORK::NETWORK_SESSION_GET_INVITER(int* networkHandle) // 0xE57397B4A3429DD0 0xE9C6B3FD b323
_0xD313DE83394AF134
BOOL NETWORK::_0xD313DE83394AF134() // 0xD313DE83394AF134 0x3EA9D44C b323
NETWORK_SESSION_IS_*
_0xBDB6F89C729CF388
BOOL NETWORK::_0xBDB6F89C729CF388() // 0xBDB6F89C729CF388 0x9374523F b323
NETWORK_SESSION_IS_*
NETWORK_SUPPRESS_INVITE
void NETWORK::NETWORK_SUPPRESS_INVITE(BOOL toggle) // 0xA0682D67EF1FBA3D 0x323DC78C b323
NETWORK_BLOCK_INVITES
void NETWORK::NETWORK_BLOCK_INVITES(BOOL toggle) // 0x34F9E9049454A7A0 0xD156FD1A b323
NETWORK_BLOCK_JOIN_QUEUE_INVITES
void NETWORK::NETWORK_BLOCK_JOIN_QUEUE_INVITES(BOOL toggle) // 0xCFEB8AF24FC1D0BB 0x8AB4890B b323
_0xF814FEC6A19FD6E0
void NETWORK::_0xF814FEC6A19FD6E0() // 0xF814FEC6A19FD6E0 0x32B7A076 b323
_NETWORK_BLOCK_KICKED_PLAYERS
void NETWORK::_NETWORK_BLOCK_KICKED_PLAYERS(BOOL p0) // 0x6B07B9CE4D390375 0x0FCE995D b323
NETWORK_SET_SCRIPT_READY_FOR_EVENTS
void NETWORK::NETWORK_SET_SCRIPT_READY_FOR_EVENTS(BOOL toggle) // 0x7AC752103856FB20 0xA639DCA2 b323
NETWORK_IS_OFFLINE_INVITE_PENDING
BOOL NETWORK::NETWORK_IS_OFFLINE_INVITE_PENDING() // 0x74698374C45701D2 0x70ED476A b323
_0x140E6A44870A11CE
void NETWORK::_0x140E6A44870A11CE() // 0x140E6A44870A11CE 0x50507BED b323
NETWORK_SESSION_HOST_SINGLE_PLAYER
void NETWORK::NETWORK_SESSION_HOST_SINGLE_PLAYER(int p0) // 0xC74C33FCA52856D5 0xF3B1CA85 b323
Loads up the map that is loaded when beeing in mission creator Player gets placed in a mix between online/offline mode p0 is always 2 in R* scripts. Appears to be patched in gtav b757 (game gets terminated) alonside with most other network natives to prevent online modding ~ghost30812
NETWORK_SESSION_LEAVE_SINGLE_PLAYER
void NETWORK::NETWORK_SESSION_LEAVE_SINGLE_PLAYER() // 0x3442775428FD2DAA 0xC692F86A b323
NETWORK_IS_GAME_IN_PROGRESS
BOOL NETWORK::NETWORK_IS_GAME_IN_PROGRESS() // 0x10FAB35428CCC9D7 0x09B88E3E b323
NETWORK_IS_SESSION_ACTIVE
BOOL NETWORK::NETWORK_IS_SESSION_ACTIVE() // 0xD83C2B94E7508980 0x715CB8C4 b323
NETWORK_IS_IN_SESSION
BOOL NETWORK::NETWORK_IS_IN_SESSION() // 0xCA97246103B63917 0x4BC4105E b323
NETWORK_IS_SESSION_STARTED
BOOL NETWORK::NETWORK_IS_SESSION_STARTED() // 0x9DE624D2FC4B603F 0x9D854A37 b323
This checks if player is playing on gta online or not. Please add an if and block your mod if this is "true".
NETWORK_IS_SESSION_BUSY
BOOL NETWORK::NETWORK_IS_SESSION_BUSY() // 0xF4435D66A8E2905E 0x8592152D b323
NETWORK_CAN_SESSION_END
BOOL NETWORK::NETWORK_CAN_SESSION_END() // 0x4EEBC3694E49C572 0xE1FCCDBA b323
_0x4C9034162368E206
Any NETWORK::_0x4C9034162368E206() // 0x4C9034162368E206 b2060
NETWORK_SESSION_MARK_VISIBLE
void NETWORK::NETWORK_SESSION_MARK_VISIBLE(BOOL toggle) // 0x271CC6AB59EBF9A5 0x7017257D b323
NETWORK_SESSION_IS_VISIBLE
BOOL NETWORK::NETWORK_SESSION_IS_VISIBLE() // 0xBA416D68C631496A 0x4977AC28 b323
NETWORK_SESSION_BLOCK_JOIN_REQUESTS
void NETWORK::NETWORK_SESSION_BLOCK_JOIN_REQUESTS(BOOL toggle) // 0xA73667484D7037C3 0xE6EEF8AF b323
NETWORK_SESSION_CHANGE_SLOTS
void NETWORK::NETWORK_SESSION_CHANGE_SLOTS(int p0, BOOL p1) // 0xB4AB419E0D86ACAE 0x6BB93227 b323
NETWORK_SESSION_GET_PRIVATE_SLOTS
int NETWORK::NETWORK_SESSION_GET_PRIVATE_SLOTS() // 0x53AFD64C6758F2F9 0xE642F2FD b323
NETWORK_SESSION_VOICE_HOST
void NETWORK::NETWORK_SESSION_VOICE_HOST() // 0x9C1556705F864230 0x345C2980 b323
NETWORK_SESSION_VOICE_LEAVE
void NETWORK::NETWORK_SESSION_VOICE_LEAVE() // 0x6793E42BE02B575D 0xE566C7DA b323
NETWORK_SESSION_VOICE_CONNECT_TO_PLAYER
void NETWORK::NETWORK_SESSION_VOICE_CONNECT_TO_PLAYER(Any* p0) // 0xABD5E88B8A2D3DB2 0x9DFD89E6 b323
Only one occurence in the scripts: auto sub_cb43(auto a_0, auto a_1) { if (g_2594CB._f1) { if (NETWORK::_855BC38818F6F684()) { NETWORK::_ABD5E88B8A2D3DB2(&a_0._fB93); g_2594CB._f14/*{13}*/ = a_0._fB93; g_2594CB._f4/*"64"*/ = a_1; return 1; } } return 0; } other: looks like it passes a player in the paramater Contains string "NETWORK_VOICE_CONNECT_TO_PLAYER" in ida
NETWORK_SESSION_VOICE_RESPOND_TO_REQUEST
void NETWORK::NETWORK_SESSION_VOICE_RESPOND_TO_REQUEST(BOOL p0, int p1) // 0x7F8413B7FC2AA6B9 0x075321B5 b323
NETWORK_SESSION_VOICE_SET_TIMEOUT
void NETWORK::NETWORK_SESSION_VOICE_SET_TIMEOUT(int timeout) // 0x5B8ED3DB018927B1 0x6EFC2FD0 b323
NETWORK_SESSION_IS_IN_VOICE_SESSION
BOOL NETWORK::NETWORK_SESSION_IS_IN_VOICE_SESSION() // 0x855BC38818F6F684 0x60AA4AA1 b323
_0xB5D3453C98456528
Any NETWORK::_0xB5D3453C98456528() // 0xB5D3453C98456528 b323
NETWORK_SESSION_IS_VOICE_SESSION_BUSY
BOOL NETWORK::NETWORK_SESSION_IS_VOICE_SESSION_BUSY() // 0xEF0912DDF7C4CB4B 0x132CA01E b323
NETWORK_SEND_TEXT_MESSAGE
BOOL NETWORK::NETWORK_SEND_TEXT_MESSAGE(const char* message, int* networkHandle) // 0x3A214F2EC889B100 0xAFFEA720 b323
Message is limited to 64 characters.
NETWORK_SET_ACTIVITY_SPECTATOR
void NETWORK::NETWORK_SET_ACTIVITY_SPECTATOR(BOOL toggle) // 0x75138790B4359A74 0xFC9AD060 b323
NETWORK_IS_ACTIVITY_SPECTATOR
BOOL NETWORK::NETWORK_IS_ACTIVITY_SPECTATOR() // 0x12103B9E0C9F92FB 0xAF329720 b323
_0x0E4F77F7B9D74D84
void NETWORK::_0x0E4F77F7B9D74D84(Any p0) // 0x0E4F77F7B9D74D84 b573
NETWORK_SET_ACTIVITY_SPECTATOR_MAX
void NETWORK::NETWORK_SET_ACTIVITY_SPECTATOR_MAX(int maxSpectators) // 0x9D277B76D1D12222 0x74E0BC0A b323
NETWORK_GET_ACTIVITY_PLAYER_NUM
int NETWORK::NETWORK_GET_ACTIVITY_PLAYER_NUM(BOOL p0) // 0x73E2B500410DA5A2 0x31F951FD b323
NETWORK_IS_ACTIVITY_SPECTATOR_FROM_HANDLE
BOOL NETWORK::NETWORK_IS_ACTIVITY_SPECTATOR_FROM_HANDLE(int* networkHandle) // 0x2763BBAA72A7BCB9 0x58F1DF7D b323
NETWORK_HOST_TRANSITION
BOOL NETWORK::NETWORK_HOST_TRANSITION(int p0, int p1, int p2, int p3, Any p4, BOOL p5, BOOL p6, int p7, Any p8, int p9) // 0xA60BB5CE242BB254 0x146764FB b323
p0: Unknown int p1: Unknown int p2: Unknown int p3: Unknown int p4: Unknown always 0 in decompiled scripts p5: BOOL purpose unknown, both 0 and 1 are used in decompiled scripts. p6: BOOL purpose unknown, both 0 and 1 are used in decompiled scripts. p7: Unknown int, it's an int according to decompiled scripts, however the value is always 0 or 1. p8: Unknown int, it's an int according to decompiled scripts, however the value is always 0 or 1. p9: Unknown int, sometimes 0, but also 32768 or 16384 appear in decompiled scripst, maybe a flag of some sort? From what I can tell it looks like it does the following: Creates/hosts a new transition to another online session, using this in FiveM will result in other players being disconencted from the server/preventing them from joining. This is most likely because I entered the wrong session parameters since they're pretty much all unknown right now. You also need to use `NetworkJoinTransition(Player player)` and `NetworkLaunchTransition()`.
NETWORK_DO_TRANSITION_QUICKMATCH
BOOL NETWORK::NETWORK_DO_TRANSITION_QUICKMATCH(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x71FB0EBCD4915D56 0x2FF65C0B b323
NETWORK_DO_TRANSITION_QUICKMATCH_ASYNC
BOOL NETWORK::NETWORK_DO_TRANSITION_QUICKMATCH_ASYNC(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0xA091A5E44F0072E5 0x47D61C99 b323
NETWORK_DO_TRANSITION_QUICKMATCH_WITH_GROUP
BOOL NETWORK::NETWORK_DO_TRANSITION_QUICKMATCH_WITH_GROUP(Any p0, Any p1, Any p2, Any p3, Any* p4, Any p5, Any p6, Any p7) // 0x9C4AB58491FDC98A 0x5CE60A11 b323
NETWORK_JOIN_GROUP_ACTIVITY
Any NETWORK::NETWORK_JOIN_GROUP_ACTIVITY() // 0xA06509A691D12BE4 0x0D7E5CF9 b323
_0x1888694923EF4591
void NETWORK::_0x1888694923EF4591() // 0x1888694923EF4591 b393
_0xB13E88E655E5A3BC
void NETWORK::_0xB13E88E655E5A3BC() // 0xB13E88E655E5A3BC 0x36A5F2DA b323
NETWORK_IS_TRANSITION_CLOSED_FRIENDS
BOOL NETWORK::NETWORK_IS_TRANSITION_CLOSED_FRIENDS() // 0x6512765E3BE78C50 0x95FFACF8 b323
NETWORK_IS_TRANSITION_CLOSED_CREW
BOOL NETWORK::NETWORK_IS_TRANSITION_CLOSED_CREW() // 0x0DBD5D7E3C5BEC3B 0xB97A966B b323
NETWORK_IS_TRANSITION_SOLO
BOOL NETWORK::NETWORK_IS_TRANSITION_SOLO() // 0x5DC577201723960A 0x063DC4A5 b323
NETWORK_IS_TRANSITION_PRIVATE
BOOL NETWORK::NETWORK_IS_TRANSITION_PRIVATE() // 0x5A6AA44FF8E931E6 0x104DDE8D b323
_0x617F49C2668E6155
int NETWORK::_0x617F49C2668E6155() // 0x617F49C2668E6155 b757
NETWORK_GET_NUM_*
_0x261E97AD7BCF3D40
void NETWORK::_0x261E97AD7BCF3D40(BOOL p0) // 0x261E97AD7BCF3D40 0x7EF353E1 b323
_0x39917E1B4CB0F911
void NETWORK::_0x39917E1B4CB0F911(BOOL p0) // 0x39917E1B4CB0F911 0xF60986FC b323
_0x2CE9D95E4051AECD
void NETWORK::_0x2CE9D95E4051AECD(Any p0) // 0x2CE9D95E4051AECD b678
NETWORK_SET_TRANSITION_CREATOR_HANDLE
void NETWORK::NETWORK_SET_TRANSITION_CREATOR_HANDLE(Any* p0) // 0xEF26739BCD9907D5 0x1DD01FE7 b323
NETWORK_CLEAR_TRANSITION_CREATOR_HANDLE
void NETWORK::NETWORK_CLEAR_TRANSITION_CREATOR_HANDLE() // 0xFB3272229A82C759 0x8BB336F7 b323
NETWORK_INVITE_GAMERS_TO_TRANSITION
BOOL NETWORK::NETWORK_INVITE_GAMERS_TO_TRANSITION(Any* p0, Any p1) // 0x4A595C32F77DFF76 0x5332E645 b323
NETWORK_SET_GAMER_INVITED_TO_TRANSITION
void NETWORK::NETWORK_SET_GAMER_INVITED_TO_TRANSITION(int* networkHandle) // 0xCA2C8073411ECDB6 0x17F1C69D b323
NETWORK_LEAVE_TRANSITION
BOOL NETWORK::NETWORK_LEAVE_TRANSITION() // 0xD23A1A815D21DB19 0x3A3599B7 b323
NETWORK_LAUNCH_TRANSITION
BOOL NETWORK::NETWORK_LAUNCH_TRANSITION() // 0x2DCF46CB1A4F0884 0xE3570BA2 b323
_0xA2E9C1AB8A92E8CD
void NETWORK::_0xA2E9C1AB8A92E8CD(BOOL toggle) // 0xA2E9C1AB8A92E8CD 0x8D014B23 b323
Appears to set whether a transition should be started when the session is migrating. NETWORK_SET_*
NETWORK_BAIL_TRANSITION
void NETWORK::NETWORK_BAIL_TRANSITION(int p0, int p1, int p2) // 0xEAA572036990CD1B 0xB59D74CA b323
NETWORK_DO_TRANSITION_TO_GAME
BOOL NETWORK::NETWORK_DO_TRANSITION_TO_GAME(BOOL p0, int maxPlayers) // 0x3E9BB38102A589B0 0x1B2114D2 b323
NETWORK_DO_TRANSITION_TO_NEW_GAME
BOOL NETWORK::NETWORK_DO_TRANSITION_TO_NEW_GAME(BOOL p0, int maxPlayers, BOOL p2) // 0x4665F51EFED00034 0x58AFBE63 b323
NETWORK_DO_TRANSITION_TO_FREEMODE
BOOL NETWORK::NETWORK_DO_TRANSITION_TO_FREEMODE(Any* p0, Any p1, BOOL p2, int players, BOOL p4) // 0x3AAD8B2FCA1E289F 0xC7CB8ADF b323
p2 is true 3/4 of the occurrences I found. 'players' is the number of players for a session. On PS3/360 it's always 18. On PC it's 32.
NETWORK_DO_TRANSITION_TO_NEW_FREEMODE
BOOL NETWORK::NETWORK_DO_TRANSITION_TO_NEW_FREEMODE(Any* p0, Any* p1, int players, BOOL p3, BOOL p4, BOOL p5) // 0x9E80A5BA8109F974 0xAD13375E b323
NETWORK_IS_TRANSITION_TO_GAME
BOOL NETWORK::NETWORK_IS_TRANSITION_TO_GAME() // 0x9D7696D8F4FA6CB7 0x17146B2B b323
NETWORK_GET_TRANSITION_MEMBERS
int NETWORK::NETWORK_GET_TRANSITION_MEMBERS(Any* data, int dataCount) // 0x73B000F7FBC55829 0x31F19263 b323
Returns count.
NETWORK_APPLY_TRANSITION_PARAMETER
void NETWORK::NETWORK_APPLY_TRANSITION_PARAMETER(int p0, int p1) // 0x521638ADA1BA0D18 0xCEE79711 b323
NETWORK_APPLY_TRANSITION_PARAMETER_STRING
void NETWORK::NETWORK_APPLY_TRANSITION_PARAMETER_STRING(int p0, const char* string, BOOL p2) // 0xEBEFC2E77084F599 0xE0C28DB5 b323
NETWORK_SEND_TRANSITION_GAMER_INSTRUCTION
BOOL NETWORK::NETWORK_SEND_TRANSITION_GAMER_INSTRUCTION(int* networkHandle, const char* p1, int p2, int p3, BOOL p4) // 0x31D1D2B858D25E6B 0x468B0884 b323
the first arg seems to be the network player handle (&handle) and the second var is pretty much always "" and the third seems to be a number between 0 and ~10 and the 4th is is something like 0 to 5 and I guess the 5th is a bool cuz it is always 0 or 1 does this send an invite to a player?
NETWORK_MARK_TRANSITION_GAMER_AS_FULLY_JOINED
BOOL NETWORK::NETWORK_MARK_TRANSITION_GAMER_AS_FULLY_JOINED(Any* p0) // 0x5728BB6D63E3FF1D 0x03383F57 b323
NETWORK_IS_TRANSITION_HOST
BOOL NETWORK::NETWORK_IS_TRANSITION_HOST() // 0x0B824797C9BF2159 0x0C0900BC b323
NETWORK_IS_TRANSITION_HOST_FROM_HANDLE
BOOL NETWORK::NETWORK_IS_TRANSITION_HOST_FROM_HANDLE(int* networkHandle) // 0x6B5C83BA3EFE6A10 0x0E2854C4 b323
NETWORK_GET_TRANSITION_HOST
BOOL NETWORK::NETWORK_GET_TRANSITION_HOST(int* networkHandle) // 0x65042B9774C4435E 0x73098D40 b323
NETWORK_IS_IN_TRANSITION
BOOL NETWORK::NETWORK_IS_IN_TRANSITION() // 0x68049AEFF83D8F0A 0xC3CDB626 b323
NETWORK_IS_TRANSITION_STARTED
BOOL NETWORK::NETWORK_IS_TRANSITION_STARTED() // 0x53FA83401D9C07FE 0x7917E111 b323
NETWORK_IS_TRANSITION_BUSY
BOOL NETWORK::NETWORK_IS_TRANSITION_BUSY() // 0x520F3282A53D26B7 0xA357A2C6 b323
NETWORK_IS_TRANSITION_MATCHMAKING
BOOL NETWORK::NETWORK_IS_TRANSITION_MATCHMAKING() // 0x292564C735375EDF 0x8262C70E b323
_0xC571D0E77D8BBC29
BOOL NETWORK::_0xC571D0E77D8BBC29() // 0xC571D0E77D8BBC29 0x4F4BB300 b323
NETWORK_IS_TRANSITION_*
_0x1398582B7F72B3ED
void NETWORK::_0x1398582B7F72B3ED(Any p0) // 0x1398582B7F72B3ED b505
_0x1F8E00FB18239600
void NETWORK::_0x1F8E00FB18239600(Any p0) // 0x1F8E00FB18239600 b573
_0xF6F4383B7C92F11A
void NETWORK::_0xF6F4383B7C92F11A(Any p0) // 0xF6F4383B7C92F11A b573
NETWORK_OPEN_TRANSITION_MATCHMAKING
void NETWORK::NETWORK_OPEN_TRANSITION_MATCHMAKING() // 0x2B3A8F7CA3A38FDE 0xC71E607B b323
NETWORK_CLOSE_TRANSITION_MATCHMAKING
void NETWORK::NETWORK_CLOSE_TRANSITION_MATCHMAKING() // 0x43F4DBA69710E01E 0x82D32D07 b323
NETWORK_IS_TRANSITION_OPEN_TO_MATCHMAKING
BOOL NETWORK::NETWORK_IS_TRANSITION_OPEN_TO_MATCHMAKING() // 0x37A4494483B9F5C9 0xC901AA9F b323
NETWORK_SET_TRANSITION_VISIBILITY_LOCK
void NETWORK::NETWORK_SET_TRANSITION_VISIBILITY_LOCK(BOOL p0, BOOL p1) // 0x0C978FDA19692C2C 0x4AF0ADF5 b323
NETWORK_IS_TRANSITION_VISIBILITY_LOCKED
BOOL NETWORK::NETWORK_IS_TRANSITION_VISIBILITY_LOCKED() // 0xD0A484CB2F829FBE 0xF637166E b323
NETWORK_SET_TRANSITION_ACTIVITY_ID
void NETWORK::NETWORK_SET_TRANSITION_ACTIVITY_ID(Any p0) // 0x30DE938B516F0AD2 0xCCA9C022 b323
NETWORK_CHANGE_TRANSITION_SLOTS
void NETWORK::NETWORK_CHANGE_TRANSITION_SLOTS(Any p0, Any p1) // 0xEEEDA5E6D7080987 0x1E5F6AEF b323
_0x973D76AA760A6CB6
void NETWORK::_0x973D76AA760A6CB6(BOOL p0) // 0x973D76AA760A6CB6 0x0532DDD2 b323
NETWORK_HAS_PLAYER_STARTED_TRANSITION
BOOL NETWORK::NETWORK_HAS_PLAYER_STARTED_TRANSITION(Player player) // 0x9AC9CCBFA8C29795 0x4ABD1E59 b323
NETWORK_ARE_TRANSITION_DETAILS_VALID
BOOL NETWORK::NETWORK_ARE_TRANSITION_DETAILS_VALID(Any p0) // 0x2615AA2A695930C1 0xCDEBCCE7 b323
NETWORK_JOIN_TRANSITION
BOOL NETWORK::NETWORK_JOIN_TRANSITION(Player player) // 0x9D060B08CD63321A 0xB054EC4B b323
int handle[76]; NETWORK_HANDLE_FROM_FRIEND(iSelectedPlayer, &handle[0], 13); Player uVar2 = NETWORK_GET_PLAYER_FROM_GAMER_HANDLE(&handle[0]); NETWORK_JOIN_TRANSITION(uVar2); nothing doin.
NETWORK_HAS_INVITED_GAMER_TO_TRANSITION
BOOL NETWORK::NETWORK_HAS_INVITED_GAMER_TO_TRANSITION(Any* p0) // 0x7284A47B3540E6CF 0x4F41DF6B b323
_0x3F9990BF5F22759C
BOOL NETWORK::_0x3F9990BF5F22759C(Any* p0) // 0x3F9990BF5F22759C 0x00F26CDC b323
NETWORK_HAS_*
NETWORK_IS_ACTIVITY_SESSION
BOOL NETWORK::NETWORK_IS_ACTIVITY_SESSION() // 0x05095437424397FA 0x577DAA8A b323
_0x4A9FDE3A5A6D0437
void NETWORK::_0x4A9FDE3A5A6D0437(BOOL toggle) // 0x4A9FDE3A5A6D0437 0x18F03AFD b323
Does nothing. It's just a nullsub.
NETWORK_SEND_INVITE_VIA_PRESENCE
BOOL NETWORK::NETWORK_SEND_INVITE_VIA_PRESENCE(int* networkHandle, Any* p1, Any p2, Any p3) // 0xC3C7A6AFDB244624 0x8B99B72B b323
_NETWORK_SEND_PRESENCE_TRANSITION_INVITE
BOOL NETWORK::_NETWORK_SEND_PRESENCE_TRANSITION_INVITE(Any* p0, Any* p1, Any p2, Any p3) // 0xC116FF9B4D488291 0x877C0E1C b323
String "NETWORK_SEND_PRESENCE_TRANSITION_INVITE" is contained in the function in ida so this one is correct.
_0x1171A97A3D3981B6
BOOL NETWORK::_0x1171A97A3D3981B6(Any* p0, Any* p1, Any p2, Any p3) // 0x1171A97A3D3981B6 b323
_0x742B58F723233ED9
Any NETWORK::_0x742B58F723233ED9(Any p0) // 0x742B58F723233ED9 0x5E832444 b323
NETWORK_GET_NUM_PRESENCE_INVITES
int NETWORK::NETWORK_GET_NUM_PRESENCE_INVITES() // 0xCEFA968912D0F78D 0x3FDA00F3 b323
NETWORK_ACCEPT_PRESENCE_INVITE
BOOL NETWORK::NETWORK_ACCEPT_PRESENCE_INVITE(Any p0) // 0xFA91550DF9318B22 0xE5DA4CED b323
NETWORK_REMOVE_PRESENCE_INVITE
BOOL NETWORK::NETWORK_REMOVE_PRESENCE_INVITE(Any p0) // 0xF0210268DB0974B1 0x93C665FA b323
NETWORK_GET_PRESENCE_INVITE_ID
Any NETWORK::NETWORK_GET_PRESENCE_INVITE_ID(Any p0) // 0xDFF09646E12EC386 0xD50DF46C b323
NETWORK_GET_PRESENCE_INVITE_INVITER
Any NETWORK::NETWORK_GET_PRESENCE_INVITE_INVITER(Any p0) // 0x4962CC4AA2F345B7 0x19EC65D9 b323
NETWORK_GET_PRESENCE_INVITE_HANDLE
BOOL NETWORK::NETWORK_GET_PRESENCE_INVITE_HANDLE(Any p0, Any* p1) // 0x38D5B0FEBB086F75 0xB2451429 b323
NETWORK_GET_PRESENCE_INVITE_SESSION_ID
Any NETWORK::NETWORK_GET_PRESENCE_INVITE_SESSION_ID(Any p0) // 0x26E1CD96B0903D60 0xC5E0C989 b323
NETWORK_GET_PRESENCE_INVITE_CONTENT_ID
Any NETWORK::NETWORK_GET_PRESENCE_INVITE_CONTENT_ID(Any p0) // 0x24409FC4C55CB22D 0xA4302183 b323
NETWORK_GET_PRESENCE_INVITE_PLAYLIST_LENGTH
Any NETWORK::NETWORK_GET_PRESENCE_INVITE_PLAYLIST_LENGTH(Any p0) // 0xD39B3FFF8FFDD5BF 0x51B2D848 b323
NETWORK_GET_PRESENCE_INVITE_PLAYLIST_CURRENT
Any NETWORK::NETWORK_GET_PRESENCE_INVITE_PLAYLIST_CURRENT(Any p0) // 0x728C4CC7920CD102 0x4677C656 b323
NETWORK_GET_PRESENCE_INVITE_FROM_ADMIN
BOOL NETWORK::NETWORK_GET_PRESENCE_INVITE_FROM_ADMIN(Any p0) // 0x3DBF2DF0AEB7D289 0xF5E3401C b323
NETWORK_GET_PRESENCE_INVITE_IS_TOURNAMENT
BOOL NETWORK::NETWORK_GET_PRESENCE_INVITE_IS_TOURNAMENT(Any p0) // 0x8806CEBFABD3CE05 0x7D593B4C b323
NETWORK_HAS_FOLLOW_INVITE
BOOL NETWORK::NETWORK_HAS_FOLLOW_INVITE() // 0x76D9B976C4C09FDE 0xE96CFE7D b323
NETWORK_ACTION_FOLLOW_INVITE
Any NETWORK::NETWORK_ACTION_FOLLOW_INVITE() // 0xC88156EBB786F8D5 0xAB969F00 b323
NETWORK_CLEAR_FOLLOW_INVITE
Any NETWORK::NETWORK_CLEAR_FOLLOW_INVITE() // 0x439BFDE3CD0610F6 0x3242F952 b323
_0xEBF8284D8CADEB53
void NETWORK::_0xEBF8284D8CADEB53() // 0xEBF8284D8CADEB53 0x9773F36A b323
NETWORK_REMOVE_TRANSITION_INVITE
void NETWORK::NETWORK_REMOVE_TRANSITION_INVITE(Any* p0) // 0x7524B431B2E6F7EE 0xFDE84CB7 b323
NETWORK_REMOVE_ALL_TRANSITION_INVITE
void NETWORK::NETWORK_REMOVE_ALL_TRANSITION_INVITE() // 0x726E0375C7A26368 0xF7134E73 b323
_0xF083835B70BA9BFE
void NETWORK::_0xF083835B70BA9BFE() // 0xF083835B70BA9BFE 0xC47352E7 b323
NETWORK_RE*
NETWORK_INVITE_GAMERS
BOOL NETWORK::NETWORK_INVITE_GAMERS(Any* p0, Any p1, Any* p2, Any* p3) // 0x9D80CD1D0E6327DE 0x52FB8074 b323
NETWORK_HAS_INVITED_GAMER
BOOL NETWORK::NETWORK_HAS_INVITED_GAMER(Any* p0) // 0x4D86CD31E8976ECE 0xEC651BC0 b323
_0x71DC455F5CD1C2B1
BOOL NETWORK::_0x71DC455F5CD1C2B1(Any* networkHandle) // 0x71DC455F5CD1C2B1 b505
NETWORK_HAS_*
_0x3855FB5EB2C5E8B2
Any NETWORK::_0x3855FB5EB2C5E8B2(Any p0) // 0x3855FB5EB2C5E8B2 b505
NETWORK_GET_CURRENTLY_SELECTED_GAMER_HANDLE_FROM_INVITE_MENU
BOOL NETWORK::NETWORK_GET_CURRENTLY_SELECTED_GAMER_HANDLE_FROM_INVITE_MENU(Any* p0) // 0x74881E6BCAE2327C 0x72BA00CE b323
NETWORK_SET_CURRENTLY_SELECTED_GAMER_HANDLE_FROM_INVITE_MENU
BOOL NETWORK::NETWORK_SET_CURRENTLY_SELECTED_GAMER_HANDLE_FROM_INVITE_MENU(Any* p0) // 0x7206F674F2A3B1BB 0xFD95899E b323
NETWORK_SET_INVITE_ON_CALL_FOR_INVITE_MENU
void NETWORK::NETWORK_SET_INVITE_ON_CALL_FOR_INVITE_MENU(Any* p0) // 0x66F010A4B031A331 b323
NETWORK_CHECK_DATA_MANAGER_SUCCEEDED_FOR_HANDLE
BOOL NETWORK::NETWORK_CHECK_DATA_MANAGER_SUCCEEDED_FOR_HANDLE(Any p0, Any* p1) // 0x44B37CDCAE765AAE b323
_0x4AD490AE1536933B
Any NETWORK::_0x4AD490AE1536933B(Any p0, Any p1) // 0x4AD490AE1536933B b372
_0x0D77A82DC2D0DA59
void NETWORK::_0x0D77A82DC2D0DA59(Any* p0, Any* p1) // 0x0D77A82DC2D0DA59 0x0808D4CC b323
NETWORK_SET_*
FILLOUT_PM_PLAYER_LIST
BOOL NETWORK::FILLOUT_PM_PLAYER_LIST(int* networkHandle, Any p1, Any p2) // 0xCBBD7C4991B64809 0xCE40F423 b323
FILLOUT_PM_PLAYER_LIST_WITH_NAMES
BOOL NETWORK::FILLOUT_PM_PLAYER_LIST_WITH_NAMES(Any* p0, Any* p1, Any p2, Any p3) // 0x716B6DB9D1886106 0xB8DF604E b323
REFRESH_PLAYER_LIST_STATS
BOOL NETWORK::REFRESH_PLAYER_LIST_STATS(int p0) // 0xE26CCFF8094D8C74 0xF49C1533 b323
NETWORK_SET_CURRENT_DATA_MANAGER_HANDLE
BOOL NETWORK::NETWORK_SET_CURRENT_DATA_MANAGER_HANDLE(Any* p0) // 0x796A87B3B68D1F3D b323
NETWORK_IS_IN_PLATFORM_PARTY
BOOL NETWORK::NETWORK_IS_IN_PLATFORM_PARTY() // 0x2FC5650B0271CB57 0xA812B6CB b323
Hardcoded to return false.
_NETWORK_GET_PLATFORM_PARTY_UNK
int NETWORK::_NETWORK_GET_PLATFORM_PARTY_UNK() // 0x01ABCE5E7CBDA196 b323
NETWORK_GET_PLATFORM_PARTY_MEMBERS
int NETWORK::NETWORK_GET_PLATFORM_PARTY_MEMBERS(Any* data, int dataSize) // 0x120364DE2845DAF8 0xF30E5814 b323
NETWORK_IS_IN_PLATFORM_PARTY_CHAT
BOOL NETWORK::NETWORK_IS_IN_PLATFORM_PARTY_CHAT() // 0xFD8B834A8BA05048 0xC6609191 b323
Hardcoded to return false.
NETWORK_IS_CHATTING_IN_PLATFORM_PARTY
BOOL NETWORK::NETWORK_IS_CHATTING_IN_PLATFORM_PARTY(int* networkHandle) // 0x8DE9945BCC9AEC52 0x51367B34 b323
This would be nice to see if someone is in party chat, but 2 sad notes. 1) It only becomes true if said person is speaking in that party at the time. 2) It will never, become true unless you are in that party with said person.
_0x2BF66D2E7414F686
Any NETWORK::_0x2BF66D2E7414F686() // 0x2BF66D2E7414F686 0x9156EFC0 b323
_0x14922ED3E38761F0
BOOL NETWORK::_0x14922ED3E38761F0() // 0x14922ED3E38761F0 0x8FA6EE0E b323
NETWORK_IS_*
_0x6CE50E47F5543D0C
void NETWORK::_0x6CE50E47F5543D0C() // 0x6CE50E47F5543D0C b573
_0xFA2888E3833C8E96
void NETWORK::_0xFA2888E3833C8E96() // 0xFA2888E3833C8E96 0x7F70C15A b323
_0x25D990F8E0E3F13C
void NETWORK::_0x25D990F8E0E3F13C() // 0x25D990F8E0E3F13C b323
_0xF1B84178F8674195
void NETWORK::_0xF1B84178F8674195(Any p0) // 0xF1B84178F8674195 0x41702C8A b323
NETWORK_GET_RANDOM_INT
int NETWORK::NETWORK_GET_RANDOM_INT() // 0x599E4FA1F87EB5FF 0x208DD848 b323
NETWORK_GET_RANDOM_INT_RANGED
int NETWORK::NETWORK_GET_RANDOM_INT_RANGED(int rangeStart, int rangeEnd) // 0xE30CF56F1EFA5F43 0xF9B6426D b323
Same as GET_RANDOM_INT_IN_RANGE
NETWORK_PLAYER_IS_CHEATER
BOOL NETWORK::NETWORK_PLAYER_IS_CHEATER() // 0x655B91F1495A9090 0xA51DC214 b323
NETWORK_PLAYER_GET_CHEATER_REASON
int NETWORK::NETWORK_PLAYER_GET_CHEATER_REASON() // 0x172F75B6EE2233BA 0x1720ABA6 b323
NETWORK_PLAYER_IS_BADSPORT
BOOL NETWORK::NETWORK_PLAYER_IS_BADSPORT() // 0x19D8DA0E5A68045A 0xA19708E3 b323
_TRIGGER_SCRIPT_CRC_CHECK_ON_PLAYER
BOOL NETWORK::_TRIGGER_SCRIPT_CRC_CHECK_ON_PLAYER(Player player, int p1, Hash scriptHash) // 0x46FB3ED415C7641C 0xF9A51B92 b323
p1 = 6
_0xA12D3A5A3753CC23
Any NETWORK::_0xA12D3A5A3753CC23() // 0xA12D3A5A3753CC23 b1103
_0xF287F506767CC8A9
Any NETWORK::_0xF287F506767CC8A9() // 0xF287F506767CC8A9 b1103
_REMOTE_CHEAT_DETECTED
BOOL NETWORK::_REMOTE_CHEAT_DETECTED(Player player, int a, int b) // 0x472841A026D26D8B b1103
BAD_SPORT_PLAYER_LEFT_DETECTED
BOOL NETWORK::BAD_SPORT_PLAYER_LEFT_DETECTED(int* networkHandle, int event, int amountReceived) // 0xEC5E3AF5289DCA81 0x4C2C6B6A b323
NETWORK_APPLY_PED_SCAR_DATA
void NETWORK::NETWORK_APPLY_PED_SCAR_DATA(Ped ped, int p1) // 0xE66C690248F11150 0x4818ACD0 b323
NETWORK_SET_THIS_SCRIPT_IS_NETWORK_SCRIPT
void NETWORK::NETWORK_SET_THIS_SCRIPT_IS_NETWORK_SCRIPT(int lobbySize, BOOL p1, int playerId) // 0x1CA59E306ECB80A5 0x470810ED b323
p1 is always 0
_NETWORK_IS_THIS_SCRIPT_MARKED
BOOL NETWORK::_NETWORK_IS_THIS_SCRIPT_MARKED(Any p0, BOOL p1, Any p2) // 0xD1110739EEADB592 b323
NETWORK_GET_THIS_SCRIPT_IS_NETWORK_SCRIPT
BOOL NETWORK::NETWORK_GET_THIS_SCRIPT_IS_NETWORK_SCRIPT() // 0x2910669969E9535E 0xD9BF6549 b323
NETWORK_GET_MAX_NUM_PARTICIPANTS
int NETWORK::NETWORK_GET_MAX_NUM_PARTICIPANTS() // 0xA6C90FBC38E395EE 0xCCD8C02D b323
Seems to always return 0, but it's used in quite a few loops. for (num3 = 0; num3 < NETWORK::0xCCD8C02D(); num3++) { if (NETWORK::NETWORK_IS_PARTICIPANT_ACTIVE(PLAYER::0x98F3B274(num3)) != 0) { var num5 = NETWORK::NETWORK_GET_PLAYER_INDEX(PLAYER::0x98F3B274(num3));
NETWORK_GET_NUM_PARTICIPANTS
int NETWORK::NETWORK_GET_NUM_PARTICIPANTS() // 0x18D0456E86604654 0x3E25A3C5 b323
NETWORK_GET_SCRIPT_STATUS
int NETWORK::NETWORK_GET_SCRIPT_STATUS() // 0x57D158647A6BFABF 0x2BE9235A b323
NETWORK_REGISTER_HOST_BROADCAST_VARIABLES
void NETWORK::NETWORK_REGISTER_HOST_BROADCAST_VARIABLES(int* vars, int numVars) // 0x3E9B2F01C50DF595 0xDAF3B0AE b323
NETWORK_REGISTER_PLAYER_BROADCAST_VARIABLES
void NETWORK::NETWORK_REGISTER_PLAYER_BROADCAST_VARIABLES(int* vars, int numVars) // 0x3364AA97340CA215 0xBE3D32B4 b323
_0xEA8C0DDB10E2822A
void NETWORK::_0xEA8C0DDB10E2822A(Any p0, Any p1) // 0xEA8C0DDB10E2822A b1868
_0xD6D7478CA62B8D41
void NETWORK::_0xD6D7478CA62B8D41(Any p0, Any p1) // 0xD6D7478CA62B8D41 b1868
NETWORK_FINISH_BROADCASTING_DATA
void NETWORK::NETWORK_FINISH_BROADCASTING_DATA() // 0x64F62AFB081E260D 0xA71A1D2A b323
NETWORK_HAS_RECEIVED_HOST_BROADCAST_DATA
BOOL NETWORK::NETWORK_HAS_RECEIVED_HOST_BROADCAST_DATA() // 0x5D10B3795F3FC886 0x0B739F53 b323
NETWORK_GET_PLAYER_INDEX
int NETWORK::NETWORK_GET_PLAYER_INDEX(Player player) // 0x24FB80D107371267 0xBE1C1506 b323
NETWORK_GET_PARTICIPANT_INDEX
int NETWORK::NETWORK_GET_PARTICIPANT_INDEX(int index) // 0x1B84DF6AF2A46938 0xC4D91094 b323
NETWORK_GET_PLAYER_INDEX_FROM_PED
Player NETWORK::NETWORK_GET_PLAYER_INDEX_FROM_PED(Ped ped) // 0x6C0E2E0125610278 0x40DBF464 b323
Returns the Player associated to a given Ped when in an online session.
NETWORK_GET_NUM_CONNECTED_PLAYERS
int NETWORK::NETWORK_GET_NUM_CONNECTED_PLAYERS() // 0xA4A79DD2D9600654 0xF7952E62 b323
Returns the amount of players connected in the current session. Only works when connected to a session/server.
NETWORK_IS_PLAYER_CONNECTED
BOOL NETWORK::NETWORK_IS_PLAYER_CONNECTED(Player player) // 0x93DC1BE4E1ABE9D1 0x168EE2C2 b323
NETWORK_GET_TOTAL_NUM_PLAYERS
int NETWORK::NETWORK_GET_TOTAL_NUM_PLAYERS() // 0xCF61D4B4702EE9EB 0xF4F13B06 b323
NETWORK_IS_PARTICIPANT_ACTIVE
BOOL NETWORK::NETWORK_IS_PARTICIPANT_ACTIVE(int p0) // 0x6FF8FF40B6357D45 0x4E2C348B b323
NETWORK_IS_PLAYER_ACTIVE
BOOL NETWORK::NETWORK_IS_PLAYER_ACTIVE(Player player) // 0xB8DFD30D6973E135 0x43657B17 b323
NETWORK_IS_PLAYER_A_PARTICIPANT
BOOL NETWORK::NETWORK_IS_PLAYER_A_PARTICIPANT(Player player) // 0x3CA58F6CB7CBD784 0xB08B6992 b323
NETWORK_IS_HOST_OF_THIS_SCRIPT
BOOL NETWORK::NETWORK_IS_HOST_OF_THIS_SCRIPT() // 0x83CD99A1E6061AB5 0x6970BA94 b323
NETWORK_GET_HOST_OF_THIS_SCRIPT
Player NETWORK::NETWORK_GET_HOST_OF_THIS_SCRIPT() // 0xC7B4D79B01FA7A5C 0x89EA7B54 b323
NETWORK_GET_HOST_OF_SCRIPT
Player NETWORK::NETWORK_GET_HOST_OF_SCRIPT(const char* scriptName, int p1, int p2) // 0x1D6A14F1F9A736FC 0x9C95D0BB b323
scriptName examples: "freemode", "AM_CR_SecurityVan", ... Most of the time, these values are used: p1 = -1 p2 = 0
NETWORK_SET_MISSION_FINISHED
void NETWORK::NETWORK_SET_MISSION_FINISHED() // 0x3B3D11CD9FFCDFC9 0x3083FAD7 b323
NETWORK_IS_SCRIPT_ACTIVE
BOOL NETWORK::NETWORK_IS_SCRIPT_ACTIVE(const char* scriptName, Player player, BOOL p2, Any p3) // 0x9D40DF90FAD26098 0x4A65250C b323
NETWORK_IS_SCRIPT_ACTIVE_BY_HASH
BOOL NETWORK::NETWORK_IS_SCRIPT_ACTIVE_BY_HASH(Hash scriptHash, int p1, BOOL p2, int p3) // 0xDA7DE67F5FE5EE13 b2245
_0x560B423D73015E77
Any NETWORK::_0x560B423D73015E77(Any p0) // 0x560B423D73015E77 b1604
NETWORK_GET_NUM_SCRIPT_PARTICIPANTS
int NETWORK::NETWORK_GET_NUM_SCRIPT_PARTICIPANTS(Any* p0, Any p1, Any p2) // 0x3658E8CD94FC121A 0x8F7D9F46 b323
_0x638A3A81733086DB
Any NETWORK::_0x638A3A81733086DB() // 0x638A3A81733086DB 0xDB8B5D71 b323
NETWORK_IS_PLAYER_A_PARTICIPANT_ON_SCRIPT
BOOL NETWORK::NETWORK_IS_PLAYER_A_PARTICIPANT_ON_SCRIPT(Player player1, const char* script, Player player2) // 0x1AD5B71586B94820 0xCEA55F4C b323
_0x2302C0264EA58D31
void NETWORK::_0x2302C0264EA58D31() // 0x2302C0264EA58D31 0x8DCFE77D b323
_0x741A3D8380319A81
void NETWORK::_0x741A3D8380319A81() // 0x741A3D8380319A81 0x331D9A27 b323
Has something to do with a host request. NETWORK_RE*
PARTICIPANT_ID
Player NETWORK::PARTICIPANT_ID() // 0x90986E8876CE0A83 0x9C35A221 b323
Return the local Participant ID
PARTICIPANT_ID_TO_INT
int NETWORK::PARTICIPANT_ID_TO_INT() // 0x57A3BDDAD8E5AA0A 0x907498B0 b323
Return the local Participant ID. This native is exactly the same as 'PARTICIPANT_ID' native.
_0x2DA41ED6E1FCD7A5
Any NETWORK::_0x2DA41ED6E1FCD7A5(Any p0, Any p1) // 0x2DA41ED6E1FCD7A5 b463
NETWORK_GET_DESTROYER_OF_NETWORK_ID
int NETWORK::NETWORK_GET_DESTROYER_OF_NETWORK_ID(int netId, Hash* weaponHash) // 0x7A1ADEEF01740A24 0x4FCA6436 b323
_0xC434133D9BA52777
Any NETWORK::_0xC434133D9BA52777(Any p0, Any p1) // 0xC434133D9BA52777 b463
_0x83660B734994124D
Any NETWORK::_0x83660B734994124D(Any p0, Any p1, Any p2) // 0x83660B734994124D b463
_NETWORK_GET_DESTROYER_OF_ENTITY
BOOL NETWORK::_NETWORK_GET_DESTROYER_OF_ENTITY(Any p0, Any p1, Hash* weaponHash) // 0x4CACA84440FA26F6 0x28A45454 b323
NETWORK_GET_ENTITY_KILLER_OF_PLAYER
Entity NETWORK::NETWORK_GET_ENTITY_KILLER_OF_PLAYER(Player player, Hash* weaponHash) // 0x42B2DAA6B596F5F8 0xA7E7E04F b323
NETWORK_RESURRECT_LOCAL_PLAYER
void NETWORK::NETWORK_RESURRECT_LOCAL_PLAYER(float x, float y, float z, float heading, BOOL unk, BOOL changetime, Any p6) // 0xEA23C49EAA83ACFB 0xF1F9D4B4 b323
NETWORK_SET_LOCAL_PLAYER_INVINCIBLE_TIME
void NETWORK::NETWORK_SET_LOCAL_PLAYER_INVINCIBLE_TIME(int time) // 0x2D95C7E2D7E07307 0xFEA9B85C b323
NETWORK_IS_LOCAL_PLAYER_INVINCIBLE
BOOL NETWORK::NETWORK_IS_LOCAL_PLAYER_INVINCIBLE() // 0x8A8694B48715B000 0x8DE13B36 b323
NETWORK_DISABLE_INVINCIBLE_FLASHING
void NETWORK::NETWORK_DISABLE_INVINCIBLE_FLASHING(Player player, BOOL toggle) // 0x9DD368BF06983221 0x8D27280E b323
NETWORK_SET_LOCAL_PLAYER_SYNC_LOOK_AT
void NETWORK::NETWORK_SET_LOCAL_PLAYER_SYNC_LOOK_AT(BOOL toggle) // 0x524FF0AEFF9C3973 0xB72F086D b323
NETWORK_HAS_ENTITY_BEEN_REGISTERED_WITH_THIS_THREAD
BOOL NETWORK::NETWORK_HAS_ENTITY_BEEN_REGISTERED_WITH_THIS_THREAD(Entity entity) // 0xB07D3185E11657A5 0xEDA68956 b323
NETWORK_GET_NETWORK_ID_FROM_ENTITY
int NETWORK::NETWORK_GET_NETWORK_ID_FROM_ENTITY(Entity entity) // 0xA11700682F3AD45C 0x9E35DAB6 b323
NETWORK_GET_ENTITY_FROM_NETWORK_ID
Entity NETWORK::NETWORK_GET_ENTITY_FROM_NETWORK_ID(int netId) // 0xCE4E5D9B0A4FF560 0x5B912C3F b323
NETWORK_GET_ENTITY_IS_NETWORKED
BOOL NETWORK::NETWORK_GET_ENTITY_IS_NETWORKED(Entity entity) // 0xC7827959479DCC78 0xD7F934F4 b323
NETWORK_GET_ENTITY_IS_LOCAL
BOOL NETWORK::NETWORK_GET_ENTITY_IS_LOCAL(Entity entity) // 0x0991549DE4D64762 0x813353ED b323
NETWORK_REGISTER_ENTITY_AS_NETWORKED
void NETWORK::NETWORK_REGISTER_ENTITY_AS_NETWORKED(Entity entity) // 0x06FAACD625D80CAA 0x31A630A4 b323
NETWORK_UNREGISTER_NETWORKED_ENTITY
void NETWORK::NETWORK_UNREGISTER_NETWORKED_ENTITY(Entity entity) // 0x7368E683BB9038D6 0x5C645F64 b323
NETWORK_DOES_NETWORK_ID_EXIST
BOOL NETWORK::NETWORK_DOES_NETWORK_ID_EXIST(int netId) // 0x38CE16C96BD11344 0xB8D2C99E b323
NETWORK_DOES_ENTITY_EXIST_WITH_NETWORK_ID
BOOL NETWORK::NETWORK_DOES_ENTITY_EXIST_WITH_NETWORK_ID(int netId) // 0x18A47D074708FD68 0x1E2E3177 b323
NETWORK_REQUEST_CONTROL_OF_NETWORK_ID
BOOL NETWORK::NETWORK_REQUEST_CONTROL_OF_NETWORK_ID(int netId) // 0xA670B3662FAFFBD0 0x9262A60A b323
NETWORK_HAS_CONTROL_OF_NETWORK_ID
BOOL NETWORK::NETWORK_HAS_CONTROL_OF_NETWORK_ID(int netId) // 0x4D36070FE0215186 0x92E77D21 b323
_0x7242F8B741CE1086
BOOL NETWORK::_0x7242F8B741CE1086(int netId) // 0x7242F8B741CE1086 b678
NETWORK_IS_* Probably a bool, returns true if the specified network id is controlled by someone else. Ff you have control over the entity corresponding to the netId then this will return false (0); Returns probably a bool, returns 1 if you don't have control over the netId entity.
NETWORK_REQUEST_CONTROL_OF_ENTITY
BOOL NETWORK::NETWORK_REQUEST_CONTROL_OF_ENTITY(Entity entity) // 0xB69317BF5E782347 0xA05FEBD7 b323
NETWORK_REQUEST_CONTROL_OF_DOOR
BOOL NETWORK::NETWORK_REQUEST_CONTROL_OF_DOOR(int doorID) // 0x870DDFD5A4A796E4 0xF60DAAF6 b323
NETWORK_HAS_CONTROL_OF_ENTITY
BOOL NETWORK::NETWORK_HAS_CONTROL_OF_ENTITY(Entity entity) // 0x01BF60A500E28887 0x005FD797 b323
NETWORK_HAS_CONTROL_OF_PICKUP
BOOL NETWORK::NETWORK_HAS_CONTROL_OF_PICKUP(Pickup pickup) // 0x5BC9495F0B3B6FA6 0xF7784FC8 b323
NETWORK_HAS_CONTROL_OF_DOOR
BOOL NETWORK::NETWORK_HAS_CONTROL_OF_DOOR(Hash doorHash) // 0xCB3C68ADB06195DF 0x136326EC b323
NETWORK_IS_DOOR_NETWORKED
BOOL NETWORK::NETWORK_IS_DOOR_NETWORKED(Hash doorHash) // 0xC01E93FAC20C3346 0xD14D9C07 b323
VEH_TO_NET
int NETWORK::VEH_TO_NET(Vehicle vehicle) // 0xB4C94523F023419C 0xF17634EB b323
calls from vehicle to net.
PED_TO_NET
int NETWORK::PED_TO_NET(Ped ped) // 0x0EDEC3C276198689 0x86A0B759 b323
gets the network id of a ped
OBJ_TO_NET
int NETWORK::OBJ_TO_NET(Object object) // 0x99BFDC94A603E541 0x1E05F29F b323
Lets objects spawn online simply do it like this: int createdObject = OBJ_TO_NET(CREATE_OBJECT_NO_OFFSET(oball, pCoords.x, pCoords.y, pCoords.z, 1, 0, 0));
NET_TO_VEH
Vehicle NETWORK::NET_TO_VEH(int netHandle) // 0x367B936610BA360C 0x7E02FAEA b323
NET_TO_PED
Ped NETWORK::NET_TO_PED(int netHandle) // 0xBDCD95FC216A8B3E 0x87717DD4 b323
gets the ped id of a network id
NET_TO_OBJ
Object NETWORK::NET_TO_OBJ(int netHandle) // 0xD8515F5FEA14CB3F 0x27AA14D8 b323
gets the object id of a network id
NET_TO_ENT
Entity NETWORK::NET_TO_ENT(int netHandle) // 0xBFFEAB45A9A9094A 0x5E149683 b323
gets the entity id of a network id
NETWORK_GET_LOCAL_HANDLE
void NETWORK::NETWORK_GET_LOCAL_HANDLE(int* networkHandle, int bufferSize) // 0xE86051786B66CD8E 0x08023B16 b323
Retrieves the local player's NetworkHandle* and stores it in the given buffer. * Currently unknown struct
NETWORK_HANDLE_FROM_USER_ID
void NETWORK::NETWORK_HANDLE_FROM_USER_ID(const char* userId, int* networkHandle, int bufferSize) // 0xDCD51DD8F87AEC5C 0x74C2C1B7 b323
Returns a NetworkHandle* from the specified user ID and stores it in a given buffer. * Currently unknown struct
NETWORK_HANDLE_FROM_MEMBER_ID
void NETWORK::NETWORK_HANDLE_FROM_MEMBER_ID(const char* memberId, int* networkHandle, int bufferSize) // 0xA0FD21BED61E5C4C 0x9BFC9FE2 b323
Returns a NetworkHandle* from the specified member ID and stores it in a given buffer. * Currently unknown struct
NETWORK_HANDLE_FROM_PLAYER
void NETWORK::NETWORK_HANDLE_FROM_PLAYER(Player player, int* networkHandle, int bufferSize) // 0x388EB2B86C73B6B3 0xD3498917 b323
Returns a handle to networkHandle* from the specified player handle and stores it in a given buffer. * Currently unknown struct Example: std::vector<UINT64> GetPlayerNetworkHandle(Player player) { const int size = 13; uint64_t *buffer = std::make_unique<uint64_t[]>(size).get(); NETWORK::NETWORK_HANDLE_FROM_PLAYER(player, reinterpret_cast<int *>(buffer), 13); for (int i = 0; i < size; i++) { Log::Msg("networkhandle[%i]: %llx", i, buffer[i]); } std::vector<UINT64> result(buffer, buffer + sizeof(buffer)); return result; }
NETWORK_HASH_FROM_PLAYER_HANDLE
Hash NETWORK::NETWORK_HASH_FROM_PLAYER_HANDLE(Player player) // 0xBC1D768F2F5D6C05 0xF8D7AF3B b323
NETWORK_HASH_FROM_GAMER_HANDLE
Hash NETWORK::NETWORK_HASH_FROM_GAMER_HANDLE(int* networkHandle) // 0x58575AC3CF2CA8EC 0x5AC9F04D b323
NETWORK_HANDLE_FROM_FRIEND
void NETWORK::NETWORK_HANDLE_FROM_FRIEND(int friendIndex, int* networkHandle, int bufferSize) // 0xD45CB817D7E177D2 0x3B0BB3A3 b323
NETWORK_GAMERTAG_FROM_HANDLE_START
BOOL NETWORK::NETWORK_GAMERTAG_FROM_HANDLE_START(int* networkHandle) // 0x9F0C0A981D73FA56 0xEBA00C2A b323
NETWORK_GAMERTAG_FROM_HANDLE_PENDING
BOOL NETWORK::NETWORK_GAMERTAG_FROM_HANDLE_PENDING() // 0xB071E27958EF4CF0 0xF000828E b323
NETWORK_GAMERTAG_FROM_HANDLE_SUCCEEDED
BOOL NETWORK::NETWORK_GAMERTAG_FROM_HANDLE_SUCCEEDED() // 0xFD00798DBA7523DD 0x89C2B5EA b323
NETWORK_GET_GAMERTAG_FROM_HANDLE
const char* NETWORK::NETWORK_GET_GAMERTAG_FROM_HANDLE(int* networkHandle) // 0x426141162EBE5CDB 0xA18A1B26 b323
_0xD66C9E72B3CC4982
int NETWORK::_0xD66C9E72B3CC4982(Any* p0, Any p1) // 0xD66C9E72B3CC4982 b323
NETWORK_GET_DISPLAYNAMES_FROM_HANDLES
int NETWORK::NETWORK_GET_DISPLAYNAMES_FROM_HANDLES(Any p0, Any p1, Any p2) // 0x58CC181719256197 b323
MulleDK19: This function is hard-coded to always return 0.
NETWORK_ARE_HANDLES_THE_SAME
BOOL NETWORK::NETWORK_ARE_HANDLES_THE_SAME(int* netHandle1, int* netHandle2) // 0x57DBA049E110F217 0x45975AE3 b323
NETWORK_IS_HANDLE_VALID
BOOL NETWORK::NETWORK_IS_HANDLE_VALID(int* networkHandle, int bufferSize) // 0x6F79B93B0A8E4133 0xF0996C6E b323
NETWORK_GET_PLAYER_FROM_GAMER_HANDLE
Player NETWORK::NETWORK_GET_PLAYER_FROM_GAMER_HANDLE(int* networkHandle) // 0xCE5F689CF5A0A49D 0x2E96EF1E b323
NETWORK_MEMBER_ID_FROM_GAMER_HANDLE
const char* NETWORK::NETWORK_MEMBER_ID_FROM_GAMER_HANDLE(int* networkHandle) // 0xC82630132081BB6F 0x62EF0A63 b323
NETWORK_IS_GAMER_IN_MY_SESSION
BOOL NETWORK::NETWORK_IS_GAMER_IN_MY_SESSION(int* networkHandle) // 0x0F10B05DDF8D16E9 0x59127716 b323
NETWORK_SHOW_PROFILE_UI
void NETWORK::NETWORK_SHOW_PROFILE_UI(int* networkHandle) // 0x859ED1CEA343FCA8 0xF00A20B0 b323
Example: int playerHandle; NETWORK_HANDLE_FROM_PLAYER(selectedPlayer, &playerHandle, 13); NETWORK_SHOW_PROFILE_UI(&playerHandle);
NETWORK_PLAYER_GET_NAME
const char* NETWORK::NETWORK_PLAYER_GET_NAME(Player player) // 0x7718D2E2060837D2 0xCE48F260 b323
Returns the name of a given player. Returns "**Invalid**" if CPlayerInfo of the given player cannot be retrieved or the player doesn't exist.
NETWORK_PLAYER_GET_USERID
const char* NETWORK::NETWORK_PLAYER_GET_USERID(Player player, int* userID) // 0x4927FC39CD0869A0 0x4EC0D983 b323
Takes a 24 char buffer. Returns the buffer or "**Invalid**" if CPlayerInfo of the given player cannot be retrieved or the player doesn't exist.
NETWORK_PLAYER_IS_ROCKSTAR_DEV
BOOL NETWORK::NETWORK_PLAYER_IS_ROCKSTAR_DEV(Player player) // 0x544ABDDA3B409B6D 0xF6659045 b323
Checks if a specific value (BYTE) in CPlayerInfo is nonzero. Returns always false in Singleplayer. No longer used for dev checks since first mods were released on PS3 & 360. R* now checks with the is_dlc_present native for the dlc hash 2532323046, if that is present it will unlock dev stuff.
NETWORK_PLAYER_INDEX_IS_CHEATER
BOOL NETWORK::NETWORK_PLAYER_INDEX_IS_CHEATER(Player player) // 0x565E430DB3B05BEC 0xD265B049 b323
_NETWORK_GET_ENTITY_NET_SCRIPT_ID
int NETWORK::_NETWORK_GET_ENTITY_NET_SCRIPT_ID(Entity entity) // 0x815F18AD865F057F b463
_0x37D5F739FD494675
int NETWORK::_0x37D5F739FD494675(Any p0) // 0x37D5F739FD494675 b505
I've had this return the player's ped handle sometimes, but also other random entities. Whatever p0 is, it's at least not synced to other players. At least not all the time, some p0 values actually output the same entity, (different handle of course, but same entity). But another p0 value may return an entity for player x, but not for player y (it'll just return -1 even if the entity exists on both clients). Returns an entity handle or -1, value changes based on p0's value.
NETWORK_IS_INACTIVE_PROFILE
BOOL NETWORK::NETWORK_IS_INACTIVE_PROFILE(Any* p0) // 0x7E58745504313A2E 0x95481343 b323
NETWORK_GET_MAX_FRIENDS
int NETWORK::NETWORK_GET_MAX_FRIENDS() // 0xAFEBB0D5D8F687D2 0x048171BC b323
NETWORK_GET_FRIEND_COUNT
int NETWORK::NETWORK_GET_FRIEND_COUNT() // 0x203F1CFD823B27A4 0xA396ACDE b323
NETWORK_GET_FRIEND_NAME
const char* NETWORK::NETWORK_GET_FRIEND_NAME(int friendIndex) // 0xE11EBBB2A783FE8B 0x97420B6D b323
_NETWORK_GET_FRIEND_NAME_FROM_INDEX
const char* NETWORK::_NETWORK_GET_FRIEND_NAME_FROM_INDEX(int friendIndex) // 0x4164F227D052E293 b323
NETWORK_IS_FRIEND_ONLINE
BOOL NETWORK::NETWORK_IS_FRIEND_ONLINE(const char* name) // 0x425A44533437B64D 0xE0A42430 b323
NETWORK_IS_FRIEND_HANDLE_ONLINE
BOOL NETWORK::NETWORK_IS_FRIEND_HANDLE_ONLINE(int* networkHandle) // 0x87EB7A3FFCB314DB b323
NETWORK_IS_FRIEND_IN_SAME_TITLE
BOOL NETWORK::NETWORK_IS_FRIEND_IN_SAME_TITLE(const char* friendName) // 0x2EA9A3BEDF3F17B8 0xC54365C2 b323
In scripts R* calls 'NETWORK_GET_FRIEND_NAME' in this param.
NETWORK_IS_FRIEND_IN_MULTIPLAYER
BOOL NETWORK::NETWORK_IS_FRIEND_IN_MULTIPLAYER(const char* friendName) // 0x57005C18827F3A28 0x400BDDD9 b323
NETWORK_IS_FRIEND
BOOL NETWORK::NETWORK_IS_FRIEND(int* networkHandle) // 0x1A24A179F9B31654 0x2DA4C282 b323
NETWORK_IS_PENDING_FRIEND
Any NETWORK::NETWORK_IS_PENDING_FRIEND(Any p0) // 0x0BE73DA6984A6E33 0x5C85FF81 b323
This function is hard-coded to always return 0.
NETWORK_IS_ADDING_FRIEND
Any NETWORK::NETWORK_IS_ADDING_FRIEND() // 0x6EA101606F6E4D81 0xBB7EC8C4 b323
NETWORK_ADD_FRIEND
BOOL NETWORK::NETWORK_ADD_FRIEND(int* networkHandle, const char* message) // 0x8E02D73914064223 0x20E5B3EE b323
NETWORK_IS_FRIEND_INDEX_ONLINE
BOOL NETWORK::NETWORK_IS_FRIEND_INDEX_ONLINE(int friendIndex) // 0xBAD8F2A42B844821 0x94AE7172 b323
NETWORK_SET_PLAYER_IS_PASSIVE
void NETWORK::NETWORK_SET_PLAYER_IS_PASSIVE(BOOL toggle) // 0x1B857666604B1A74 0x76A9FEB6 b323
NETWORK_GET_PLAYER_OWNS_WAYPOINT
BOOL NETWORK::NETWORK_GET_PLAYER_OWNS_WAYPOINT(Player player) // 0x82377B65E943F72D 0xB802B671 b323
NETWORK_CAN_SET_WAYPOINT
BOOL NETWORK::NETWORK_CAN_SET_WAYPOINT() // 0xC927EC229934AF60 0x009E68F3 b323
_0x4C2A9FDC22377075
void NETWORK::_0x4C2A9FDC22377075() // 0x4C2A9FDC22377075 b372
_0xB309EBEA797E001F
Any NETWORK::_0xB309EBEA797E001F(Any p0) // 0xB309EBEA797E001F 0x5C0AB2A9 b323
_0x26F07DD83A5F7F98
Any NETWORK::_0x26F07DD83A5F7F98() // 0x26F07DD83A5F7F98 0x9A176B6E b323
NETWORK_HAS_HEADSET
BOOL NETWORK::NETWORK_HAS_HEADSET() // 0xE870F9F1F7B4F1FA 0xA7DC5657 b323
_0x7D395EA61622E116
void NETWORK::_0x7D395EA61622E116(BOOL p0) // 0x7D395EA61622E116 0x5C05B7E1 b323
NETWORK_IS_LOCAL_TALKING
BOOL NETWORK::NETWORK_IS_LOCAL_TALKING() // 0xC0D2AF00BCC234CA 0xAC00A5BE b323
NETWORK_GAMER_HAS_HEADSET
BOOL NETWORK::NETWORK_GAMER_HAS_HEADSET(Any* networkHandle) // 0xF2FD55CB574BCC55 0xD036DA4A b323
NETWORK_IS_GAMER_TALKING
BOOL NETWORK::NETWORK_IS_GAMER_TALKING(Any* networkHandle) // 0x71C33B22606CD88A 0x99B58DBC b323
_NETWORK_CAN_COMMUNICATE_WITH_GAMER_2
BOOL NETWORK::_NETWORK_CAN_COMMUNICATE_WITH_GAMER_2(Any* networkHandle) // 0x8F5D1AD832AEB06C b944
Same as NETWORK_CAN_COMMUNICATE_WITH_GAMER NETWORK_CAN_*
NETWORK_CAN_COMMUNICATE_WITH_GAMER
BOOL NETWORK::NETWORK_CAN_COMMUNICATE_WITH_GAMER(Any* networkHandle) // 0xA150A4F065806B1F 0xD05EB7F6 b323
NETWORK_IS_GAMER_MUTED_BY_ME
BOOL NETWORK::NETWORK_IS_GAMER_MUTED_BY_ME(Any* networkHandle) // 0xCE60DE011B6C7978 0x001B4046 b323
NETWORK_AM_I_MUTED_BY_GAMER
BOOL NETWORK::NETWORK_AM_I_MUTED_BY_GAMER(Any* networkHandle) // 0xDF02A2C93F1F26DA 0x7685B333 b323
NETWORK_IS_GAMER_BLOCKED_BY_ME
BOOL NETWORK::NETWORK_IS_GAMER_BLOCKED_BY_ME(Any* networkHandle) // 0xE944C4F5AF1B5883 0x3FDCC8D7 b323
NETWORK_AM_I_BLOCKED_BY_GAMER
BOOL NETWORK::NETWORK_AM_I_BLOCKED_BY_GAMER(Any* networkHandle) // 0x15337C7C268A27B2 0xD19B312C b323
NETWORK_CAN_VIEW_GAMER_USER_CONTENT
BOOL NETWORK::NETWORK_CAN_VIEW_GAMER_USER_CONTENT(Any* networkHandle) // 0xB57A49545BA53CE7 b323
NETWORK_HAS_VIEW_GAMER_USER_CONTENT_RESULT
BOOL NETWORK::NETWORK_HAS_VIEW_GAMER_USER_CONTENT_RESULT(Any* networkHandle) // 0xCCA4318E1AB03F1F b323
NETWORK_CAN_PLAY_MULTIPLAYER_WITH_GAMER
BOOL NETWORK::NETWORK_CAN_PLAY_MULTIPLAYER_WITH_GAMER(Any* networkHandle) // 0x07DD29D5E22763F1 b323
NETWORK_CAN_GAMER_PLAY_MULTIPLAYER_WITH_ME
BOOL NETWORK::NETWORK_CAN_GAMER_PLAY_MULTIPLAYER_WITH_ME(Any* networkHandle) // 0x135F9B7B7ADD2185 b323
NETWORK_IS_PLAYER_TALKING
BOOL NETWORK::NETWORK_IS_PLAYER_TALKING(Player player) // 0x031E11F3D447647E 0xDA9FD9DB b323
returns true if someone is screaming or talking in a microphone
NETWORK_PLAYER_HAS_HEADSET
BOOL NETWORK::NETWORK_PLAYER_HAS_HEADSET(Player player) // 0x3FB99A8B08D18FD6 0x451FB6B6 b323
NETWORK_IS_PLAYER_MUTED_BY_ME
BOOL NETWORK::NETWORK_IS_PLAYER_MUTED_BY_ME(Player player) // 0x8C71288AE68EDE39 0x7A21050E b323
NETWORK_AM_I_MUTED_BY_PLAYER
BOOL NETWORK::NETWORK_AM_I_MUTED_BY_PLAYER(Player player) // 0x9D6981DFC91A8604 0xE128F2B0 b323
NETWORK_IS_PLAYER_BLOCKED_BY_ME
BOOL NETWORK::NETWORK_IS_PLAYER_BLOCKED_BY_ME(Player player) // 0x57AF1F8E27483721 0xAE4F4560 b323
NETWORK_AM_I_BLOCKED_BY_PLAYER
BOOL NETWORK::NETWORK_AM_I_BLOCKED_BY_PLAYER(Player player) // 0x87F395D957D4353D 0x953EF45E b323
NETWORK_GET_PLAYER_LOUDNESS
float NETWORK::NETWORK_GET_PLAYER_LOUDNESS(Player player) // 0x21A1684A25C2867F 0xF2F67014 b323
NETWORK_SET_TALKER_PROXIMITY
void NETWORK::NETWORK_SET_TALKER_PROXIMITY(float value) // 0xCBF12D65F95AD686 0x67555C66 b323
NETWORK_GET_TALKER_PROXIMITY
float NETWORK::NETWORK_GET_TALKER_PROXIMITY() // 0x84F0F13120B4E098 0x19991ADD b323
NETWORK_SET_VOICE_ACTIVE
void NETWORK::NETWORK_SET_VOICE_ACTIVE(BOOL toggle) // 0xBABEC9E69A91C57B 0x8011247F b323
_0xCFEB46DCD7D8D5EB
void NETWORK::_0xCFEB46DCD7D8D5EB(BOOL p0) // 0xCFEB46DCD7D8D5EB 0x1A3EA6CD b323
NETWORK_OVERRIDE_TRANSITION_CHAT
void NETWORK::NETWORK_OVERRIDE_TRANSITION_CHAT(BOOL p0) // 0xAF66059A131AA269 0xCAB21090 b323
NETWORK_SET_TEAM_ONLY_CHAT
void NETWORK::NETWORK_SET_TEAM_ONLY_CHAT(BOOL toggle) // 0xD5B4883AC32F24C3 0x3813019A b323
_0x265559DA40B3F327
void NETWORK::_0x265559DA40B3F327(Any p0) // 0x265559DA40B3F327 b573
_0x4348BFDA56023A2F
Any NETWORK::_0x4348BFDA56023A2F(Any p0, Any p1) // 0x4348BFDA56023A2F b573
NETWORK_OVERRIDE_TEAM_RESTRICTIONS
void NETWORK::NETWORK_OVERRIDE_TEAM_RESTRICTIONS(int team, BOOL toggle) // 0x6F697A66CE78674E 0xC8CC9E75 b323
NETWORK_SET_OVERRIDE_SPECTATOR_MODE
void NETWORK::NETWORK_SET_OVERRIDE_SPECTATOR_MODE(BOOL toggle) // 0x70DA3BF8DACD3210 0xA0FD42D3 b323
_0x3C5C1E2C2FF814B1
void NETWORK::_0x3C5C1E2C2FF814B1(BOOL toggle) // 0x3C5C1E2C2FF814B1 0xC9DDA85B b323
Sets some voice chat related value. NETWORK_SET_*
_0x9D7AFCBF21C51712
void NETWORK::_0x9D7AFCBF21C51712(BOOL toggle) // 0x9D7AFCBF21C51712 0xE5219410 b323
Sets some voice chat related value. NETWORK_SET_*
NETWORK_SET_NO_SPECTATOR_CHAT
void NETWORK::NETWORK_SET_NO_SPECTATOR_CHAT(BOOL toggle) // 0xF46A1E03E8755980 0xD33AFF79 b323
_0x6A5D89D7769A40D8
void NETWORK::_0x6A5D89D7769A40D8(BOOL toggle) // 0x6A5D89D7769A40D8 0x4FFEFE43 b323
Sets some voice chat related value. NETWORK_SET_*
NETWORK_OVERRIDE_CHAT_RESTRICTIONS
void NETWORK::NETWORK_OVERRIDE_CHAT_RESTRICTIONS(Player player, BOOL toggle) // 0x3039AE5AD2C9C0C4 0x74EE2D8B b323
Could possibly bypass being muted or automatically muted
NETWORK_OVERRIDE_SEND_RESTRICTIONS
void NETWORK::NETWORK_OVERRIDE_SEND_RESTRICTIONS(Player player, BOOL toggle) // 0x97DD4C5944CC2E6A 0x6C344AE3 b323
This is used alongside the native, 'NETWORK_OVERRIDE_RECEIVE_RESTRICTIONS'. Read its description for more info.
NETWORK_OVERRIDE_SEND_RESTRICTIONS_ALL
void NETWORK::NETWORK_OVERRIDE_SEND_RESTRICTIONS_ALL(BOOL toggle) // 0x57B192B4D4AD23D5 0x2F98B405 b323
NETWORK_OVERRIDE_RECEIVE_RESTRICTIONS
void NETWORK::NETWORK_OVERRIDE_RECEIVE_RESTRICTIONS(Player player, BOOL toggle) // 0xDDF73E2B1FEC5AB4 0x95F1C60D b323
R* uses this to hear all player when spectating. It allows you to hear other online players when their chat is on none, crew and or friends
NETWORK_OVERRIDE_RECEIVE_RESTRICTIONS_ALL
void NETWORK::NETWORK_OVERRIDE_RECEIVE_RESTRICTIONS_ALL(BOOL toggle) // 0x0FF2862B61A58AF9 0x1BCD3DDF b323
p0 is always false in scripts.
NETWORK_SET_VOICE_CHANNEL
void NETWORK::NETWORK_SET_VOICE_CHANNEL(int channel) // 0xEF6212C2EFEF1A23 0x3974879F b323
NETWORK_CLEAR_VOICE_CHANNEL
void NETWORK::NETWORK_CLEAR_VOICE_CHANNEL() // 0xE036A705F989E049 0x9ECF722A b323
NETWORK_APPLY_VOICE_PROXIMITY_OVERRIDE
void NETWORK::NETWORK_APPLY_VOICE_PROXIMITY_OVERRIDE(float x, float y, float z) // 0xDBD2056652689917 0xF1E84832 b323
NETWORK_CLEAR_VOICE_PROXIMITY_OVERRIDE
void NETWORK::NETWORK_CLEAR_VOICE_PROXIMITY_OVERRIDE() // 0xF03755696450470C 0x7F9B9052 b323
_0x5E3AA4CA2B6FB0EE
void NETWORK::_0x5E3AA4CA2B6FB0EE(Any p0) // 0x5E3AA4CA2B6FB0EE 0x7BBEA8CF b323
_0xCA575C391FEA25CC
void NETWORK::_0xCA575C391FEA25CC(Any p0) // 0xCA575C391FEA25CC 0xE797A4B6 b323
_0xADB57E5B663CCA8B
void NETWORK::_0xADB57E5B663CCA8B(Player p0, float* p1, float* p2) // 0xADB57E5B663CCA8B 0x92268BB5 b323
_0x8EF52ACAECC51D9C
void NETWORK::_0x8EF52ACAECC51D9C(BOOL toggle) // 0x8EF52ACAECC51D9C b1734
NETWORK_SET_*
_NETWORK_IS_TEXT_CHAT_ACTIVE
BOOL NETWORK::_NETWORK_IS_TEXT_CHAT_ACTIVE() // 0x5FCF4D7069B09026 b323
Same as _IS_TEXT_CHAT_ACTIVE, except it does not check if the text chat HUD component is initialized, and therefore may crash.
SHUTDOWN_AND_LAUNCH_SINGLE_PLAYER_GAME
void NETWORK::SHUTDOWN_AND_LAUNCH_SINGLE_PLAYER_GAME() // 0x593850C16A36B692 0x92B7351C b323
Starts a new singleplayer game (at the prologue).
_SHUTDOWN_AND_LOAD_MOST_RECENT_SAVE
BOOL NETWORK::_SHUTDOWN_AND_LOAD_MOST_RECENT_SAVE() // 0x9ECA15ADFE141431 b505
In singleplayer this will re-load your game. In FiveM / GTA:Online this disconnects you from the session, and starts loading single player, however you still remain connected to the server (only if you're the host, if you're not then you also (most likely) get disconnected from the server) and other players will not be able to join until you exit the game. You might need to DoScreenFadeIn and ShutdownLoadingScreen otherwise you probably won't end up loading into SP at all. Somewhat related note: opening the pause menu after loading into this 'singleplayer' mode crashes the game.
NETWORK_SET_FRIENDLY_FIRE_OPTION
void NETWORK::NETWORK_SET_FRIENDLY_FIRE_OPTION(BOOL toggle) // 0xF808475FA571D823 0x6BAF95FA b323
NETWORK_SET_RICH_PRESENCE
void NETWORK::NETWORK_SET_RICH_PRESENCE(Any p0, Any p1, Any p2, Any p3) // 0x1DCCACDCFC569362 0x932A6CED b323
This native does absolutely nothing, just a nullsub
NETWORK_SET_RICH_PRESENCE_STRING
void NETWORK::NETWORK_SET_RICH_PRESENCE_STRING(int p0, const char* textLabel) // 0x3E200C2BCF4164EB 0x017E6777 b323
This native does absolutely nothing, just a nullsub
NETWORK_GET_TIMEOUT_TIME
int NETWORK::NETWORK_GET_TIMEOUT_TIME() // 0x5ED0356A0CE3A34F 0xE1F86C6A b323
_NETWORK_RESPAWN_COORDS
void NETWORK::_NETWORK_RESPAWN_COORDS(Player player, float x, float y, float z, BOOL p4, BOOL p5) // 0x9769F811D1785B03 0xBE6A30C3 b323
p4 and p5 are always 0 in scripts
_0xBF22E0F32968E967
void NETWORK::_0xBF22E0F32968E967(Player player, BOOL p1) // 0xBF22E0F32968E967 0x22E03AD0 b323
REMOVE_ALL_STICKY_BOMBS_FROM_ENTITY
void NETWORK::REMOVE_ALL_STICKY_BOMBS_FROM_ENTITY(Entity entity, Ped ped) // 0x715135F4B82AC90D 0xCEAE5AFC b323
entity must be a valid entity; ped can be NULL
_0x17C9E241111A674D
void NETWORK::_0x17C9E241111A674D(Any p0, Any p1) // 0x17C9E241111A674D b2060
_0x2E4C123D1C8A710E
Any NETWORK::_0x2E4C123D1C8A710E(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x2E4C123D1C8A710E b505
NETWORK_CLAN_SERVICE_IS_VALID
BOOL NETWORK::NETWORK_CLAN_SERVICE_IS_VALID() // 0x579CCED0265D4896 0xF5F4BD95 b323
NETWORK_CLAN_PLAYER_IS_ACTIVE
BOOL NETWORK::NETWORK_CLAN_PLAYER_IS_ACTIVE(int* networkHandle) // 0xB124B57F571D8F18 0xAB8319A3 b323
NETWORK_CLAN_PLAYER_GET_DESC
BOOL NETWORK::NETWORK_CLAN_PLAYER_GET_DESC(int* clanDesc, int bufferSize, int* networkHandle) // 0xEEE6EACBE8874FBA 0x6EE4A282 b323
bufferSize is 35 in the scripts. bufferSize is the elementCount of p0(desc), sizeof(p0) == 280 == p1*8 == 35 * 8, p2(netHandle) is obtained from NETWORK::NETWORK_HANDLE_FROM_PLAYER. And no, I can't explain why 35 * sizeof(int) == 280 and not 140, but I'll get back to you on that. the answer is: because p0 an int64_t* / int64_t[35]. and FYI p2 is an int64_t[13] pastebin.com/cSZniHak
NETWORK_CLAN_IS_ROCKSTAR_CLAN
BOOL NETWORK::NETWORK_CLAN_IS_ROCKSTAR_CLAN(int* clanDesc, int bufferSize) // 0x7543BB439F63792B 0x54E79E9C b323
bufferSize is 35 in the scripts.
NETWORK_CLAN_GET_UI_FORMATTED_TAG
void NETWORK::NETWORK_CLAN_GET_UI_FORMATTED_TAG(int* clanDesc, int bufferSize, char* formattedTag) // 0xF45352426FF3A4F0 0xF633805A b323
bufferSize is 35 in the scripts.
NETWORK_CLAN_GET_LOCAL_MEMBERSHIPS_COUNT
int NETWORK::NETWORK_CLAN_GET_LOCAL_MEMBERSHIPS_COUNT() // 0x1F471B79ACC90BEF 0x807B3450 b323
NETWORK_CLAN_GET_MEMBERSHIP_DESC
BOOL NETWORK::NETWORK_CLAN_GET_MEMBERSHIP_DESC(int* memberDesc, int p1) // 0x48DE78AF2C8885B8 0x3369DD1F b323
NETWORK_CLAN_DOWNLOAD_MEMBERSHIP
BOOL NETWORK::NETWORK_CLAN_DOWNLOAD_MEMBERSHIP(int* networkHandle) // 0xA989044E70010ABE 0x8E8CB520 b323
NETWORK_CLAN_DOWNLOAD_MEMBERSHIP_PENDING
BOOL NETWORK::NETWORK_CLAN_DOWNLOAD_MEMBERSHIP_PENDING(Any* p0) // 0x5B9E023DC6EBEDC0 0x1FDB590F b323
_NETWORK_IS_CLAN_MEMBERSHIP_FINISHED_DOWNLOADING
BOOL NETWORK::_NETWORK_IS_CLAN_MEMBERSHIP_FINISHED_DOWNLOADING() // 0xB3F64A6A91432477 0x83ED8E08 b323
NETWORK_CLAN_REMOTE_MEMBERSHIPS_ARE_IN_CACHE
BOOL NETWORK::NETWORK_CLAN_REMOTE_MEMBERSHIPS_ARE_IN_CACHE(int* p0) // 0xBB6E6FEE99D866B2 0x40202867 b323
NETWORK_CLAN_GET_MEMBERSHIP_COUNT
int NETWORK::NETWORK_CLAN_GET_MEMBERSHIP_COUNT(int* p0) // 0xAAB11F6C4ADBC2C1 0x25924010 b323
NETWORK_CLAN_GET_MEMBERSHIP_VALID
BOOL NETWORK::NETWORK_CLAN_GET_MEMBERSHIP_VALID(int* p0, Any p1) // 0x48A59CF88D43DF0E 0x48914F6A b323
NETWORK_CLAN_GET_MEMBERSHIP
BOOL NETWORK::NETWORK_CLAN_GET_MEMBERSHIP(int* p0, int* clanMembership, int p2) // 0xC8BC2011F67B3411 0xCDC4A590 b323
BOOL DEBUG_MEMBRESHIP(int Param) { int membership; networkHandleMgr handle; NETWORK_HANDLE_FROM_PLAYER(iSelectedPlayer, &handle.netHandle, 13); if (!_NETWORK_IS_CLAN_MEMBERSHIP_FINISHED_DOWNLOADING()) { if (NETWORK_CLAN_REMOTE_MEMBERSHIPS_ARE_IN_CACHE(&Param)) { if (NETWORK_CLAN_GET_MEMBERSHIP_COUNT(&Param) > 0) { if (NETWORK_CLAN_GET_MEMBERSHIP_VALID(&Param, 0)) { if (NETWORK_CLAN_GET_MEMBERSHIP(&Param, &membership, -1)) { _0xF633805A(&membership, 35, &handle.netHandle); } } } } } else { NETWORK_CLAN_DOWNLOAD_MEMBERSHIP(&handle.netHandle); } }
NETWORK_CLAN_JOIN
BOOL NETWORK::NETWORK_CLAN_JOIN(int clanDesc) // 0x9FAAA4F4FC71F87F 0x79C916C5 b323
_NETWORK_CLAN_ANIMATION
BOOL NETWORK::_NETWORK_CLAN_ANIMATION(const char* animDict, const char* animName) // 0x729E3401F0430686 0xBDA90BAC b323
Only documented... Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
_0x2B51EDBEFC301339
BOOL NETWORK::_0x2B51EDBEFC301339(int p0, const char* p1) // 0x2B51EDBEFC301339 0x8E952B12 b323
_0xC32EA7A2F6CA7557
Any NETWORK::_0xC32EA7A2F6CA7557() // 0xC32EA7A2F6CA7557 0x966C90FD b323
NETWORK_CLAN_GET_EMBLEM_TXD_NAME
BOOL NETWORK::NETWORK_CLAN_GET_EMBLEM_TXD_NAME(Any* netHandle, char* txdName) // 0x5835D9CD92E83184 0xBA672146 b323
NETWORK_CLAN_REQUEST_EMBLEM
BOOL NETWORK::NETWORK_CLAN_REQUEST_EMBLEM(Any p0) // 0x13518FF1C6B28938 0x7963FA4D b323
NETWORK_CLAN_IS_EMBLEM_READY
BOOL NETWORK::NETWORK_CLAN_IS_EMBLEM_READY(Any p0, Any* p1) // 0xA134777FF7F33331 0x88B13CDC b323
NETWORK_CLAN_RELEASE_EMBLEM
void NETWORK::NETWORK_CLAN_RELEASE_EMBLEM(Any p0) // 0x113E6E3E50E286B0 0xD6E3D5EA b323
NETWORK_GET_PRIMARY_CLAN_DATA_CLEAR
Any NETWORK::NETWORK_GET_PRIMARY_CLAN_DATA_CLEAR() // 0x9AA46BADAD0E27ED 0xE22445DA b323
NETWORK_GET_PRIMARY_CLAN_DATA_CANCEL
void NETWORK::NETWORK_GET_PRIMARY_CLAN_DATA_CANCEL() // 0x042E4B70B93E6054 0x455DDF5C b323
NETWORK_GET_PRIMARY_CLAN_DATA_START
BOOL NETWORK::NETWORK_GET_PRIMARY_CLAN_DATA_START(Any* p0, Any p1) // 0xCE86D8191B762107 0x89DB0EC7 b323
NETWORK_GET_PRIMARY_CLAN_DATA_PENDING
Any NETWORK::NETWORK_GET_PRIMARY_CLAN_DATA_PENDING() // 0xB5074DB804E28CE7 0xA4EF02F3 b323
NETWORK_GET_PRIMARY_CLAN_DATA_SUCCESS
Any NETWORK::NETWORK_GET_PRIMARY_CLAN_DATA_SUCCESS() // 0x5B4F04F19376A0BA 0x068A054E b323
NETWORK_GET_PRIMARY_CLAN_DATA_NEW
BOOL NETWORK::NETWORK_GET_PRIMARY_CLAN_DATA_NEW(Any* p0, Any* p1) // 0xC080FF658B2E41DA 0x9B8631EB b323
SET_NETWORK_ID_CAN_MIGRATE
void NETWORK::SET_NETWORK_ID_CAN_MIGRATE(int netId, BOOL toggle) // 0x299EEB23175895FC 0x47C8E5FF b323
Whether or not another player is allowed to take control of the entity
SET_NETWORK_ID_EXISTS_ON_ALL_MACHINES
void NETWORK::SET_NETWORK_ID_EXISTS_ON_ALL_MACHINES(int netId, BOOL toggle) // 0xE05E81A888FA63C8 0x68D486B2 b323
SET_NETWORK_ID_ALWAYS_EXISTS_FOR_PLAYER
void NETWORK::SET_NETWORK_ID_ALWAYS_EXISTS_FOR_PLAYER(int netId, Player player, BOOL toggle) // 0xA8A024587329F36A 0x4D15FDB1 b323
_0x9D724B400A7E8FFC
void NETWORK::_0x9D724B400A7E8FFC(Any p0, Any p1) // 0x9D724B400A7E8FFC b2189
NETWORK_SET_ENTITY_CAN_BLEND
void NETWORK::NETWORK_SET_ENTITY_CAN_BLEND(Entity entity, BOOL toggle) // 0xD830567D88A1E873 0xDE8C0DB8 b323
_0x0379DAF89BA09AA5
void NETWORK::_0x0379DAF89BA09AA5(Any p0, Any p1) // 0x0379DAF89BA09AA5 b944
_NETWORK_SET_ENTITY_INVISIBLE_TO_NETWORK
void NETWORK::_NETWORK_SET_ENTITY_INVISIBLE_TO_NETWORK(Entity entity, BOOL toggle) // 0xF1CA12B18AEF5298 0x09CBC4B0 b323
if set to true other network players can't see it if set to false other network player can see it ========================================= ^^ I attempted this by grabbing an object with GET_ENTITY_PLAYER_IS_FREE_AIMING_AT and setting this naive no matter the toggle he could still see it. pc or last gen? ^^ last-gen
SET_NETWORK_ID_VISIBLE_IN_CUTSCENE
void NETWORK::SET_NETWORK_ID_VISIBLE_IN_CUTSCENE(int netId, BOOL p1, BOOL p2) // 0xA6928482543022B4 0x199E75EF b323
_0x32EBD154CB6B8B99
void NETWORK::_0x32EBD154CB6B8B99(Any p0, Any p1, Any p2) // 0x32EBD154CB6B8B99 b505
_0x76B3F29D3F967692
void NETWORK::_0x76B3F29D3F967692(Any p0, Any p1) // 0x76B3F29D3F967692 b2189
SET_NETWORK_CUTSCENE_ENTITIES
void NETWORK::SET_NETWORK_CUTSCENE_ENTITIES(BOOL toggle) // 0xAAA553E7DD28A457 0xFD0F7EDD b323
_0x3FA36981311FA4FF
void NETWORK::_0x3FA36981311FA4FF(int netId, BOOL state) // 0x3FA36981311FA4FF 0x00AE4E17 b323
IS_NETWORK_ID_OWNED_BY_PARTICIPANT
BOOL NETWORK::IS_NETWORK_ID_OWNED_BY_PARTICIPANT(int netId) // 0xA1607996431332DF 0xEA5176C0 b323
SET_LOCAL_PLAYER_VISIBLE_IN_CUTSCENE
void NETWORK::SET_LOCAL_PLAYER_VISIBLE_IN_CUTSCENE(BOOL p0, BOOL p1) // 0xD1065D68947E7B6E 0x59F3479B b323
SET_LOCAL_PLAYER_INVISIBLE_LOCALLY
void NETWORK::SET_LOCAL_PLAYER_INVISIBLE_LOCALLY(BOOL p0) // 0xE5F773C1A1D9D168 0x764F6222 b323
SET_LOCAL_PLAYER_VISIBLE_LOCALLY
void NETWORK::SET_LOCAL_PLAYER_VISIBLE_LOCALLY(BOOL p0) // 0x7619364C82D3BF14 0x324B56DB b323
SET_PLAYER_INVISIBLE_LOCALLY
void NETWORK::SET_PLAYER_INVISIBLE_LOCALLY(Player player, BOOL toggle) // 0x12B37D54667DB0B8 0x18227209 b323
SET_PLAYER_VISIBLE_LOCALLY
void NETWORK::SET_PLAYER_VISIBLE_LOCALLY(Player player, BOOL toggle) // 0xFAA10F1FAFB11AF2 0xBA2BB4B4 b323
FADE_OUT_LOCAL_PLAYER
void NETWORK::FADE_OUT_LOCAL_PLAYER(BOOL p0) // 0x416DBD4CD6ED8DD2 0x8FA7CEBD b323
Hardcoded to not work in SP.
NETWORK_FADE_OUT_ENTITY
void NETWORK::NETWORK_FADE_OUT_ENTITY(Entity entity, BOOL normal, BOOL slow) // 0xDE564951F95E09ED 0x47EDEE56 b323
normal - transition like when your coming out of LSC slow - transition like when you walk into a mission
NETWORK_FADE_IN_ENTITY
void NETWORK::NETWORK_FADE_IN_ENTITY(Entity entity, BOOL state, Any p2) // 0x1F4ED342ACEFE62D 0x9B9FCD02 b323
state - 0 does 5 fades state - 1 does 6 fades p3: setting to 1 made vehicle fade in slower, probably "slow" as per NETWORK_FADE_OUT_ENTITY
NETWORK_IS_PLAYER_FADING
BOOL NETWORK::NETWORK_IS_PLAYER_FADING(Player player) // 0x631DC5DFF4B110E3 0x065C597B b323
NETWORK_IS_ENTITY_FADING
BOOL NETWORK::NETWORK_IS_ENTITY_FADING(Entity entity) // 0x422F32CC7E56ABAD 0xB5087ACF b323
IS_PLAYER_IN_CUTSCENE
BOOL NETWORK::IS_PLAYER_IN_CUTSCENE(Player player) // 0xE73092F4157CD126 0xE0A619BD b323
SET_ENTITY_VISIBLE_IN_CUTSCENE
void NETWORK::SET_ENTITY_VISIBLE_IN_CUTSCENE(Any p0, BOOL p1, BOOL p2) // 0xE0031D3C8F36AB82 0xDBFB067B b323
SET_ENTITY_LOCALLY_INVISIBLE
void NETWORK::SET_ENTITY_LOCALLY_INVISIBLE(Entity entity) // 0xE135A9FF3F5D05D8 0x51ADCC5F b323
Makes the provided entity visible for yourself for the current frame.
SET_ENTITY_LOCALLY_VISIBLE
void NETWORK::SET_ENTITY_LOCALLY_VISIBLE(Entity entity) // 0x241E289B5C059EDC 0x235A57B3 b323
IS_DAMAGE_TRACKER_ACTIVE_ON_NETWORK_ID
BOOL NETWORK::IS_DAMAGE_TRACKER_ACTIVE_ON_NETWORK_ID(int netID) // 0x6E192E33AD436366 0x597063BA b323
ACTIVATE_DAMAGE_TRACKER_ON_NETWORK_ID
void NETWORK::ACTIVATE_DAMAGE_TRACKER_ON_NETWORK_ID(int netID, BOOL toggle) // 0xD45B1FFCCD52FF19 0x95D07BA5 b323
_IS_DAMAGE_TRACKER_ACTIVE_ON_PLAYER
BOOL NETWORK::_IS_DAMAGE_TRACKER_ACTIVE_ON_PLAYER(Player player) // 0xB2092A1EAA7FD45F b757
_ACTIVATE_DAMAGE_TRACKER_ON_PLAYER
void NETWORK::_ACTIVATE_DAMAGE_TRACKER_ON_PLAYER(Player player, BOOL toggle) // 0xBEC0816FF5ACBCDA b757
IS_SPHERE_VISIBLE_TO_ANOTHER_MACHINE
BOOL NETWORK::IS_SPHERE_VISIBLE_TO_ANOTHER_MACHINE(float p0, float p1, float p2, float p3) // 0xD82CF8E64C8729D8 0x23C5274E b323
IS_SPHERE_VISIBLE_TO_PLAYER
BOOL NETWORK::IS_SPHERE_VISIBLE_TO_PLAYER(Any p0, float p1, float p2, float p3, float p4) // 0xDC3A310219E5DA62 0xE9FCFB32 b323
RESERVE_NETWORK_MISSION_OBJECTS
void NETWORK::RESERVE_NETWORK_MISSION_OBJECTS(int amount) // 0x4E5C93BD0C32FBF8 0x391DF4F3 b323
RESERVE_NETWORK_MISSION_PEDS
void NETWORK::RESERVE_NETWORK_MISSION_PEDS(int amount) // 0xB60FEBA45333D36F 0x54998C37 b323
RESERVE_NETWORK_MISSION_VEHICLES
void NETWORK::RESERVE_NETWORK_MISSION_VEHICLES(int amount) // 0x76B02E21ED27A469 0x5062875E b323
_RESERVE_NETWORK_LOCAL_OBJECTS
void NETWORK::_RESERVE_NETWORK_LOCAL_OBJECTS(int amount) // 0x797F9C5E661D920E b1290
_RESERVE_NETWORK_LOCAL_PEDS
void NETWORK::_RESERVE_NETWORK_LOCAL_PEDS(int amount) // 0x2C8DF5D129595281 b1493
_RESERVE_NETWORK_LOCAL_VEHICLES
void NETWORK::_RESERVE_NETWORK_LOCAL_VEHICLES(int amount) // 0x42613035157E4208 b1103
CAN_REGISTER_MISSION_OBJECTS
BOOL NETWORK::CAN_REGISTER_MISSION_OBJECTS(int amount) // 0x800DD4721A8B008B 0x7F85DFDE b323
CAN_REGISTER_MISSION_PEDS
BOOL NETWORK::CAN_REGISTER_MISSION_PEDS(int amount) // 0xBCBF4FEF9FA5D781 0xCCAA5CE9 b323
CAN_REGISTER_MISSION_VEHICLES
BOOL NETWORK::CAN_REGISTER_MISSION_VEHICLES(int amount) // 0x7277F1F2E085EE74 0x818B6830 b323
_CAN_REGISTER_MISSION_PICKUPS
BOOL NETWORK::_CAN_REGISTER_MISSION_PICKUPS(int amount) // 0x0A49D1CB6E34AF72 b757
_0xE16AA70CE9BEEDC3
Any NETWORK::_0xE16AA70CE9BEEDC3(Any p0) // 0xE16AA70CE9BEEDC3 b877
CAN_REGISTER_MISSION_ENTITIES
BOOL NETWORK::CAN_REGISTER_MISSION_ENTITIES(int ped_amt, int vehicle_amt, int object_amt, int pickup_amt) // 0x69778E7564BADE6D 0x83794008 b323
GET_NUM_RESERVED_MISSION_OBJECTS
int NETWORK::GET_NUM_RESERVED_MISSION_OBJECTS(BOOL p0, Any p1) // 0xAA81B5F10BC43AC2 0x16A80CD6 b323
p0 appears to be for MP
GET_NUM_RESERVED_MISSION_PEDS
int NETWORK::GET_NUM_RESERVED_MISSION_PEDS(BOOL p0, Any p1) // 0x1F13D5AE5CB17E17 0x6C25975C b323
p0 appears to be for MP
GET_NUM_RESERVED_MISSION_VEHICLES
int NETWORK::GET_NUM_RESERVED_MISSION_VEHICLES(BOOL p0, Any p1) // 0xCF3A965906452031 0xA9A308F3 b323
p0 appears to be for MP
GET_NUM_CREATED_MISSION_OBJECTS
int NETWORK::GET_NUM_CREATED_MISSION_OBJECTS(BOOL p0) // 0x12B6281B6C6706C0 0x603FA104 b323
GET_NUM_CREATED_MISSION_PEDS
int NETWORK::GET_NUM_CREATED_MISSION_PEDS(BOOL p0) // 0xCB215C4B56A7FAE7 0xD8FEC4F8 b323
GET_NUM_CREATED_MISSION_VEHICLES
int NETWORK::GET_NUM_CREATED_MISSION_VEHICLES(BOOL p0) // 0x0CD9AB83489430EA 0x20527695 b323
_0xE42D626EEC94E5D9
void NETWORK::_0xE42D626EEC94E5D9(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0xE42D626EEC94E5D9 b1290
GET_MAX_NUM_NETWORK_OBJECTS
int NETWORK::GET_MAX_NUM_NETWORK_OBJECTS() // 0xC7BE335216B5EC7C 0x8687E285 b323
GET_MAX_NUM_NETWORK_PEDS
int NETWORK::GET_MAX_NUM_NETWORK_PEDS() // 0x0C1F7D49C39D2289 0x744AC008 b323
GET_MAX_NUM_NETWORK_VEHICLES
int NETWORK::GET_MAX_NUM_NETWORK_VEHICLES() // 0x0AFCE529F69B21FF 0xC3A12135 b323
GET_MAX_NUM_NETWORK_PICKUPS
int NETWORK::GET_MAX_NUM_NETWORK_PICKUPS() // 0xA72835064DD63E4C 0x6A036061 b323
_0xBA7F0B77D80A4EB7
void NETWORK::_0xBA7F0B77D80A4EB7(Any p0, Any p1) // 0xBA7F0B77D80A4EB7 b372
_0x0F1A4B45B7693B95
void NETWORK::_0x0F1A4B45B7693B95(Any p0, Any p1) // 0x0F1A4B45B7693B95 b2189
GET_NETWORK_TIME
int NETWORK::GET_NETWORK_TIME() // 0x7A5487FE9FAA6B48 0x998103C2 b323
GET_NETWORK_TIME_ACCURATE
int NETWORK::GET_NETWORK_TIME_ACCURATE() // 0x89023FBBF9200E9F 0x98AA48E5 b323
Returns the same value as GET_NETWORK_TIME in freemode, but as opposed to `GET_NETWORK_TIME` it always gets the most recent time, instead of once per tick. Could be used for benchmarking since it can return times in ticks.
HAS_NETWORK_TIME_STARTED
BOOL NETWORK::HAS_NETWORK_TIME_STARTED() // 0x46718ACEEDEAFC84 0x4538C4A2 b323
GET_TIME_OFFSET
int NETWORK::GET_TIME_OFFSET(int timeA, int timeB) // 0x017008CCDAD48503 0x2E079AE6 b323
Adds the first argument to the second.
IS_TIME_LESS_THAN
BOOL NETWORK::IS_TIME_LESS_THAN(int timeA, int timeB) // 0xCB2CF5148012C8D0 0x50EF8FC6 b323
Subtracts the second argument from the first, then returns whether the result is negative.
IS_TIME_MORE_THAN
BOOL NETWORK::IS_TIME_MORE_THAN(int timeA, int timeB) // 0xDE350F8651E4346C 0xBBB6DF61 b323
Subtracts the first argument from the second, then returns whether the result is negative.
IS_TIME_EQUAL_TO
BOOL NETWORK::IS_TIME_EQUAL_TO(int timeA, int timeB) // 0xF5BC95857BD6D512 0x8B4D1C06 b323
Returns true if the two times are equal; otherwise returns false.
GET_TIME_DIFFERENCE
int NETWORK::GET_TIME_DIFFERENCE(int timeA, int timeB) // 0xA2C6FC031D46FFF0 0x5666A837 b323
Subtracts the second argument from the first.
GET_TIME_AS_STRING
const char* NETWORK::GET_TIME_AS_STRING(int time) // 0x9E23B1777A927DAD 0x8218944E b323
_GET_CLOUD_TIME_AS_STRING
const char* NETWORK::_GET_CLOUD_TIME_AS_STRING() // 0xF12E6CD06C73D69E b1103
Same as GET_CLOUD_TIME_AS_INT but returns the value as a hex string (%I64X).
GET_CLOUD_TIME_AS_INT
int NETWORK::GET_CLOUD_TIME_AS_INT() // 0x9A73240B49945C76 0xF2FDF2E0 b323
Returns POSIX timestamp, an int representing the cloud time.
CONVERT_POSIX_TIME
void NETWORK::CONVERT_POSIX_TIME(int posixTime, Any* timeStructure) // 0xAC97AF97FA68E5D5 0xBB7CCE49 b323
Takes the specified time and writes it to the structure specified in the second argument. struct date_time { int year; int PADDING1; int month; int PADDING2; int day; int PADDING3; int hour; int PADDING4; int minute; int PADDING5; int second; int PADDING6; };
NETWORK_SET_IN_SPECTATOR_MODE
void NETWORK::NETWORK_SET_IN_SPECTATOR_MODE(BOOL toggle, Ped playerPed) // 0x423DE3854BB50894 0x5C4C8458 b323
NETWORK_SET_IN_SPECTATOR_MODE_EXTENDED
void NETWORK::NETWORK_SET_IN_SPECTATOR_MODE_EXTENDED(BOOL toggle, Ped playerPed, BOOL p2) // 0x419594E137637120 0x54058F5F b323
NETWORK_SET_IN_FREE_CAM_MODE
void NETWORK::NETWORK_SET_IN_FREE_CAM_MODE(BOOL toggle) // 0xFC18DB55AE19E046 0xA7E36020 b323
NETWORK_SET_CHOICE_MIGRATE_OPTIONS
void NETWORK::NETWORK_SET_CHOICE_MIGRATE_OPTIONS(BOOL toggle, Player player) // 0x5C707A667DF8B9FA 0x64235620 b323
NETWORK_IS_IN_SPECTATOR_MODE
BOOL NETWORK::NETWORK_IS_IN_SPECTATOR_MODE() // 0x048746E388762E11 0x3EAD9DB8 b323
NETWORK_SET_IN_MP_CUTSCENE
void NETWORK::NETWORK_SET_IN_MP_CUTSCENE(BOOL p0, BOOL p1) // 0x9CA5DE655269FEC4 0x8434CB43 b323
NETWORK_IS_IN_MP_CUTSCENE
BOOL NETWORK::NETWORK_IS_IN_MP_CUTSCENE() // 0x6CC27C9FA2040220 0x4BB33316 b323
NETWORK_IS_PLAYER_IN_MP_CUTSCENE
BOOL NETWORK::NETWORK_IS_PLAYER_IN_MP_CUTSCENE(Player player) // 0x63F9EE203C3619F2 0x56F961E4 b323
_0xFAC18E7356BD3210
void NETWORK::_0xFAC18E7356BD3210() // 0xFAC18E7356BD3210 b1180
SET_NETWORK_VEHICLE_RESPOT_TIMER
void NETWORK::SET_NETWORK_VEHICLE_RESPOT_TIMER(int netId, int time, Any p2, Any p3) // 0xEC51713AB6EC36E8 0x2C30912D b323
SET_NETWORK_VEHICLE_AS_GHOST
void NETWORK::SET_NETWORK_VEHICLE_AS_GHOST(Vehicle vehicle, BOOL toggle) // 0x6274C4712850841E 0xEA235081 b323
_0xA2A707979FE754DC
void NETWORK::_0xA2A707979FE754DC(Any p0, Any p1) // 0xA2A707979FE754DC b877
_0x838DA0936A24ED4D
void NETWORK::_0x838DA0936A24ED4D(Any p0, Any p1) // 0x838DA0936A24ED4D b944
_SET_LOCAL_PLAYER_AS_GHOST
void NETWORK::_SET_LOCAL_PLAYER_AS_GHOST(BOOL toggle, BOOL p1) // 0x5FFE9B4144F9712F b323
_IS_ENTITY_GHOSTED_TO_LOCAL_PLAYER
BOOL NETWORK::_IS_ENTITY_GHOSTED_TO_LOCAL_PLAYER(Entity entity) // 0x21D04D7BC538C146 b323
_0x13F1FCB111B820B0
void NETWORK::_0x13F1FCB111B820B0(BOOL p0) // 0x13F1FCB111B820B0 b877
SET_NETWORK_*
_SET_RELATIONSHIP_TO_PLAYER
void NETWORK::_SET_RELATIONSHIP_TO_PLAYER(Player player, BOOL p1) // 0xA7C511FA1C5BDA38 b463
Enables ghosting between specific players
_SET_GHOSTED_ENTITY_ALPHA
void NETWORK::_SET_GHOSTED_ENTITY_ALPHA(int alpha) // 0x658500AE6D723A7E b791
Must be a value between 1 and 254
_RESET_GHOSTED_ENTITY_ALPHA
void NETWORK::_RESET_GHOSTED_ENTITY_ALPHA() // 0x17330EBF2F2124A8 b791
Resets the entity ghost alpha to the default value (128)
_NETWORK_SET_ENTITY_GHOSTED_WITH_OWNER
void NETWORK::_NETWORK_SET_ENTITY_GHOSTED_WITH_OWNER(Entity entity, BOOL p1) // 0x4BA166079D658ED4 b944
_0xD7B6C73CAD419BCF
void NETWORK::_0xD7B6C73CAD419BCF(BOOL p0) // 0xD7B6C73CAD419BCF b944
_0x7EF7649B64D7FF10
BOOL NETWORK::_0x7EF7649B64D7FF10(Entity entity) // 0x7EF7649B64D7FF10 b944
IS_*
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR
void NETWORK::USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR(BOOL toggle) // 0x77758139EC9B66C7 0x4DD46DAE b323
NETWORK_CREATE_SYNCHRONISED_SCENE
int NETWORK::NETWORK_CREATE_SYNCHRONISED_SCENE(float x, float y, float z, float xRot, float yRot, float zRot, int rotationOrder, BOOL useOcclusionPortal, BOOL looped, float p9, float animTime, float p11) // 0x7CD6BC4C2BBDD526 0xB06FE3FE b323
NETWORK_ADD_PED_TO_SYNCHRONISED_SCENE
void NETWORK::NETWORK_ADD_PED_TO_SYNCHRONISED_SCENE(Ped ped, int netScene, const char* animDict, const char* animnName, float speed, float speedMultiplier, int duration, int flag, float playbackRate, Any p9) // 0x742A637471BCECD9 0xB386713E b323
_0xA5EAFE473E45C442
void NETWORK::_0xA5EAFE473E45C442(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0xA5EAFE473E45C442 b1290
NETWORK_ADD_ENTITY_TO_SYNCHRONISED_SCENE
void NETWORK::NETWORK_ADD_ENTITY_TO_SYNCHRONISED_SCENE(Entity entity, int netScene, const char* animDict, const char* animName, float speed, float speedMulitiplier, int flag) // 0xF2404D68CBC855FA 0x10DD636C b323
_0x45F35C0EDC33B03B
void NETWORK::_0x45F35C0EDC33B03B(int netScene, Hash modelHash, float x, float y, float z, float p5, const char* p6, float p7, float p8, int flags) // 0x45F35C0EDC33B03B b1734
NETWORK_A* Similar structure as NETWORK_ADD_ENTITY_TO_SYNCHRONISED_SCENE but it includes this time a hash. In casino_slots it is used one time in a synced scene involving a ped and the slot machine?
_NETWORK_FORCE_LOCAL_USE_OF_SYNCED_SCENE_CAMERA
void NETWORK::_NETWORK_FORCE_LOCAL_USE_OF_SYNCED_SCENE_CAMERA(int netScene, const char* animDict, const char* animName) // 0xCF8BD3B0BD6D42D7 0xBFFE8B5C b323
NETWORK_ATTACH_SYNCHRONISED_SCENE_TO_ENTITY
void NETWORK::NETWORK_ATTACH_SYNCHRONISED_SCENE_TO_ENTITY(int netScene, Entity entity, int bone) // 0x478DCBD2A98B705A 0x3FE5B222 b323
NETWORK_START_SYNCHRONISED_SCENE
void NETWORK::NETWORK_START_SYNCHRONISED_SCENE(int netScene) // 0x9A1B3FCDB36C8697 0xA9DFDC40 b323
NETWORK_STOP_SYNCHRONISED_SCENE
void NETWORK::NETWORK_STOP_SYNCHRONISED_SCENE(int netScene) // 0xC254481A4574CB2F 0x97B1CDF6 b323
_NETWORK_CONVERT_SYNCHRONISED_SCENE_TO_SYNCHRONIZED_SCENE
int NETWORK::_NETWORK_CONVERT_SYNCHRONISED_SCENE_TO_SYNCHRONIZED_SCENE(int netScene) // 0x02C40BF885C567B6 0x16AED87B b323
netScene to scene
_0xC9B43A33D09CADA7
void NETWORK::_0xC9B43A33D09CADA7(Any p0) // 0xC9B43A33D09CADA7 b323
_0x144DA052257AE7D8
void NETWORK::_0x144DA052257AE7D8(Any p0) // 0x144DA052257AE7D8 b1103
_0xFB1F9381E80FA13F
Any NETWORK::_0xFB1F9381E80FA13F(int p0, Any p1) // 0xFB1F9381E80FA13F 0x0679CE71 b323
p0 is always 0. p1 is pointing to a global.
NETWORK_START_RESPAWN_SEARCH_FOR_PLAYER
BOOL NETWORK::NETWORK_START_RESPAWN_SEARCH_FOR_PLAYER(Player player, float x, float y, float z, float radius, float p5, float p6, float p7, int flags) // 0x5A6FFA2433E2F14C 0xC62E77B3 b323
One of the first things it does is get the players ped. Then it calls a function that is used in some tasks and ped based functions. p5, p6, p7 is another coordinate (or zero), often related to `GET_BLIP_COORDS, in the decompiled scripts.
NETWORK_START_RESPAWN_SEARCH_IN_ANGLED_AREA_FOR_PLAYER
BOOL NETWORK::NETWORK_START_RESPAWN_SEARCH_IN_ANGLED_AREA_FOR_PLAYER(Player player, float x1, float y1, float z1, float x2, float y2, float z2, float width, float p8, float p9, float p10, int flags) // 0x4BA92A18502BCA61 0x74D6B13C b323
p8, p9, p10 is another coordinate, or zero, often related to `GET_BLIP_COORDS in the decompiled scripts.
NETWORK_QUERY_RESPAWN_RESULTS
Any NETWORK::NETWORK_QUERY_RESPAWN_RESULTS(Any* p0) // 0x3C891A251567DFCE 0x90700C7D b323
NETWORK_CANCEL_RESPAWN_SEARCH
void NETWORK::NETWORK_CANCEL_RESPAWN_SEARCH() // 0xFB8F2A6F3DF08CBE 0x44BFB619 b323
NETWORK_GET_RESPAWN_RESULT
void NETWORK::NETWORK_GET_RESPAWN_RESULT(int randomInt, Vector3* coordinates, float* heading) // 0x371EA43692861CF1 0xDDFE9FBC b323
Based on scripts such as in freemode.c how they call their vars vVar and fVar the 2nd and 3rd param it a Vector3 and Float, but the first is based on get_random_int_in_range..
NETWORK_GET_RESPAWN_RESULT_FLAGS
Any NETWORK::NETWORK_GET_RESPAWN_RESULT_FLAGS(Any p0) // 0x6C34F1208B8923FD 0x03287FD2 b323
NETWORK_START_SOLO_TUTORIAL_SESSION
void NETWORK::NETWORK_START_SOLO_TUTORIAL_SESSION() // 0x17E0198B3882C2CB 0x408A9436 b323
*
_0xFB680D403909DC70
void NETWORK::_0xFB680D403909DC70(Any p0, Any p1) // 0xFB680D403909DC70 0xFFB2ADA1 b323
NETWORK_END_TUTORIAL_SESSION
void NETWORK::NETWORK_END_TUTORIAL_SESSION() // 0xD0AFAFF5A51D72F7 0xBA57E53E b323
NETWORK_IS_IN_TUTORIAL_SESSION
BOOL NETWORK::NETWORK_IS_IN_TUTORIAL_SESSION() // 0xADA24309FE08DACF 0x34DD7B28 b323
_0xB37E4E6A2388CA7B
BOOL NETWORK::_0xB37E4E6A2388CA7B() // 0xB37E4E6A2388CA7B 0x755A2B3E b323
NETWORK_IS_TUTORIAL_SESSION_CHANGE_PENDING
BOOL NETWORK::NETWORK_IS_TUTORIAL_SESSION_CHANGE_PENDING() // 0x35F0B98A8387274D 0xA003C40B b323
NETWORK_GET_PLAYER_TUTORIAL_SESSION_INSTANCE
int NETWORK::NETWORK_GET_PLAYER_TUTORIAL_SESSION_INSTANCE(Player player) // 0x3B39236746714134 0x5E1020CC b323
_NETWORK_IS_PLAYER_EQUAL_TO_INDEX
BOOL NETWORK::_NETWORK_IS_PLAYER_EQUAL_TO_INDEX(Player player, int index) // 0x9DE986FC9A87C474 0xE66A0B40 b323
NETWORK_ARE_*
NETWORK_CONCEAL_PLAYER
void NETWORK::NETWORK_CONCEAL_PLAYER(Player player, BOOL toggle, BOOL p2) // 0xBBDF066252829606 0x72052DB3 b323
NETWORK_IS_PLAYER_CONCEALED
BOOL NETWORK::NETWORK_IS_PLAYER_CONCEALED(Player player) // 0x919B3C98ED8292F9 0xB0313590 b323
_NETWORK_CONCEAL_ENTITY
void NETWORK::_NETWORK_CONCEAL_ENTITY(Entity entity, BOOL toggle) // 0x1632BE0AC1E62876 b877
_NETWORK_IS_ENTITY_CONCEALED
BOOL NETWORK::_NETWORK_IS_ENTITY_CONCEALED(Entity entity) // 0x71302EC70689052A b877
Note: This only works for vehicles, which appears to be a bug (since the setter _does_ work for every entity type and the name is 99% correct).
NETWORK_OVERRIDE_CLOCK_TIME
void NETWORK::NETWORK_OVERRIDE_CLOCK_TIME(int hours, int minutes, int seconds) // 0xE679E3E06E363892 0xC077BCD6 b323
Works in Singleplayer too. Passing wrong data (e.g. hours above 23) will cause the game to crash.
_NETWORK_OVERRIDE_CLOCK_MILLISECONDS_PER_GAME_MINUTE
void NETWORK::_NETWORK_OVERRIDE_CLOCK_MILLISECONDS_PER_GAME_MINUTE(int ms) // 0x42BF1D2E723B6D7E b2189
NETWORK_CLEAR_CLOCK_TIME_OVERRIDE
void NETWORK::NETWORK_CLEAR_CLOCK_TIME_OVERRIDE() // 0xD972DF67326F966E 0xC4AEAF49 b323
NETWORK_IS_CLOCK_TIME_OVERRIDDEN
BOOL NETWORK::NETWORK_IS_CLOCK_TIME_OVERRIDDEN() // 0xD7C95D322FF57522 0x2465296D b323
NETWORK_ADD_ENTITY_AREA
Any NETWORK::NETWORK_ADD_ENTITY_AREA(float p0, float p1, float p2, float p3, float p4, float p5) // 0x494C8FB299290269 0x51030E5B b323
NETWORK_ADD_ENTITY_ANGLED_AREA
Any NETWORK::NETWORK_ADD_ENTITY_ANGLED_AREA(float x1, float y1, float z1, float x2, float y2, float z2, float width) // 0x376C6375BA60293A 0xCD69BEA1 b323
To remove, see: NETWORK_REMOVE_ENTITY_AREA See IS_POINT_IN_ANGLED_AREA for the definition of an angled area.
NETWORK_ADD_ENTITY_DISPLAYED_BOUNDARIES
Any NETWORK::NETWORK_ADD_ENTITY_DISPLAYED_BOUNDARIES(float p0, float p1, float p2, float p3, float p4, float p5) // 0x25B99872D588A101 0x4C2C2B12 b323
_0x2B1C623823DB0D9D
Any NETWORK::_0x2B1C623823DB0D9D(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x2B1C623823DB0D9D b1103
NETWORK_REMOVE_ENTITY_AREA
BOOL NETWORK::NETWORK_REMOVE_ENTITY_AREA(Any p0) // 0x93CF869BAA0C4874 0xEAB97F25 b323
NETWORK_ENTITY_AREA_DOES_EXIST
BOOL NETWORK::NETWORK_ENTITY_AREA_DOES_EXIST(int areaHandle) // 0xE64A3CA08DFA37A9 0x69956127 b323
_0x4DF7CFFF471A7FB1
BOOL NETWORK::_0x4DF7CFFF471A7FB1(Any p0) // 0x4DF7CFFF471A7FB1 0xCB1CD6D3 b323
NETWORK_ENTITY_AREA_IS_OCCUPIED
BOOL NETWORK::NETWORK_ENTITY_AREA_IS_OCCUPIED(int areaHandle) // 0x4A2D4E8BF4265B0F 0xC6D53AA0 b323
_NETWORK_SET_NETWORK_ID_DYNAMIC
void NETWORK::_NETWORK_SET_NETWORK_ID_DYNAMIC(int netID, BOOL toggle) // 0x2B1813ABA29016C5 0x155465EE b323
_0xA6FCECCF4721D679
void NETWORK::_0xA6FCECCF4721D679(Any p0) // 0xA6FCECCF4721D679 b1604
_0x95BAF97C82464629
void NETWORK::_0x95BAF97C82464629(Any p0, Any p1) // 0x95BAF97C82464629 b1604
NETWORK_REQUEST_CLOUD_BACKGROUND_SCRIPTS
BOOL NETWORK::NETWORK_REQUEST_CLOUD_BACKGROUND_SCRIPTS() // 0x924426BFFD82E915 0x98EFB921 b323
NETWORK_IS_CLOUD_BACKGROUND_SCRIPT_REQUEST_PENDING
BOOL NETWORK::NETWORK_IS_CLOUD_BACKGROUND_SCRIPT_REQUEST_PENDING() // 0x8132C0EB8B2B3293 0x20AB933A b323
NETWORK_REQUEST_CLOUD_TUNABLES
void NETWORK::NETWORK_REQUEST_CLOUD_TUNABLES() // 0x42FB3B532D526E6C 0xD760CAD5 b323
NETWORK_IS_TUNABLE_CLOUD_REQUEST_PENDING
BOOL NETWORK::NETWORK_IS_TUNABLE_CLOUD_REQUEST_PENDING() // 0x0467C11ED88B7D28 0x47978D7F b323
NETWORK_GET_TUNABLE_CLOUD_CRC
int NETWORK::NETWORK_GET_TUNABLE_CLOUD_CRC() // 0x10BD227A753B0D84 0x231CFD12 b323
Actually returns the version (TUNABLE_VERSION)
NETWORK_DOES_TUNABLE_EXIST
BOOL NETWORK::NETWORK_DOES_TUNABLE_EXIST(const char* tunableContext, const char* tunableName) // 0x85E5F8B9B898B20A 0x9FCE9C9A b323
NETWORK_ACCESS_TUNABLE_INT
BOOL NETWORK::NETWORK_ACCESS_TUNABLE_INT(const char* tunableContext, const char* tunableName, int* value) // 0x8BE1146DFD5D4468 0xE4B3726A b323
NETWORK_ACCESS_TUNABLE_FLOAT
BOOL NETWORK::NETWORK_ACCESS_TUNABLE_FLOAT(const char* tunableContext, const char* tunableName, float* value) // 0xE5608CA7BC163A5F 0x41E8912A b323
NETWORK_ACCESS_TUNABLE_BOOL
BOOL NETWORK::NETWORK_ACCESS_TUNABLE_BOOL(const char* tunableContext, const char* tunableName) // 0xAA6A47A573ABB75A 0x8A04E1FE b323
NETWORK_DOES_TUNABLE_EXIST_HASH
BOOL NETWORK::NETWORK_DOES_TUNABLE_EXIST_HASH(Hash tunableContext, Hash tunableName) // 0xE4E53E1419D81127 0x25915CB9 b323
_NETWORK_ALLOCATE_TUNABLES_REGISTRATION_DATA_MAP
BOOL NETWORK::_NETWORK_ALLOCATE_TUNABLES_REGISTRATION_DATA_MAP() // 0xFAFC23AEE23868DB b393
NETWORK_ACCESS_TUNABLE_INT_HASH
BOOL NETWORK::NETWORK_ACCESS_TUNABLE_INT_HASH(Hash tunableContext, Hash tunableName, int* value) // 0x40FCE03E50E8DBE8 0xB2E83B75 b323
_NETWORK_REGISTER_TUNABLE_INT_HASH
BOOL NETWORK::_NETWORK_REGISTER_TUNABLE_INT_HASH(Hash contextHash, Hash nameHash, int* value) // 0x3A8B55FDA4C8DDEF b393
NETWORK_ACCESS_TUNABLE_FLOAT_HASH
BOOL NETWORK::NETWORK_ACCESS_TUNABLE_FLOAT_HASH(Hash tunableContext, Hash tunableName, float* value) // 0x972BC203BBC4C4D5 0x3972551F b323
_NETWORK_REGISTER_TUNABLE_FLOAT_HASH
BOOL NETWORK::_NETWORK_REGISTER_TUNABLE_FLOAT_HASH(Hash contextHash, Hash nameHash, float* value) // 0x1950DAE9848A4739 b393
NETWORK_ACCESS_TUNABLE_BOOL_HASH
BOOL NETWORK::NETWORK_ACCESS_TUNABLE_BOOL_HASH(Hash tunableContext, Hash tunableName) // 0xEA16B69D93D71A45 0x18867C61 b323
_NETWORK_REGISTER_TUNABLE_BOOL_HASH
BOOL NETWORK::_NETWORK_REGISTER_TUNABLE_BOOL_HASH(Hash contextHash, Hash nameHash, BOOL* value) // 0x697F508861875B42 b393
NETWORK_TRY_ACCESS_TUNABLE_BOOL_HASH
BOOL NETWORK::NETWORK_TRY_ACCESS_TUNABLE_BOOL_HASH(Hash tunableContext, Hash tunableName, BOOL defaultValue) // 0xC7420099936CE286 0x8AFE3D90 b323
Returns defaultValue if the tunable doesn't exist.
NETWORK_GET_CONTENT_MODIFIER_LIST_ID
int NETWORK::NETWORK_GET_CONTENT_MODIFIER_LIST_ID(Hash contentHash) // 0x187382F8A3E0A6C3 0xA78571CA b323
Return the content modifier id (the tunables context if you want) of a specific content. It takes the content hash (which is the mission id hash), and return the content modifier id, used as the tunables context. The mission id can be found on the Social club, for example, 'socialclub.rockstargames.com/games/gtav/jobs/job/A8M6Bz8MLEC5xngvDCzGwA' 'A8M6Bz8MLEC5xngvDCzGwA' is the mission id, so the game hash this and use it as the parameter for this native.
_0x7DB53B37A2F211A0
int NETWORK::_0x7DB53B37A2F211A0() // 0x7DB53B37A2F211A0 0x053BB329 b323
NETWORK_RESET_BODY_TRACKER
void NETWORK::NETWORK_RESET_BODY_TRACKER() // 0x72433699B4E6DD64 0x3914463F b323
_NETWORK_GET_NUM_BODY_TRACKERS
int NETWORK::_NETWORK_GET_NUM_BODY_TRACKERS() // 0xD38C4A6D047C019D 0x17CBC608 b323
_0x2E0BF682CC778D49
BOOL NETWORK::_0x2E0BF682CC778D49(Any p0) // 0x2E0BF682CC778D49 0xBFAA349B b323
_0x0EDE326D47CD0F3E
BOOL NETWORK::_0x0EDE326D47CD0F3E(Ped ped, Player player) // 0x0EDE326D47CD0F3E 0xBEB7281A b323
_NETWORK_SET_VEHICLE_WHEELS_DESTRUCTIBLE
void NETWORK::_NETWORK_SET_VEHICLE_WHEELS_DESTRUCTIBLE(Entity entity, BOOL toggle) // 0x890E2C5ABED7236D b1365
Allows vehicle wheels to be destructible even when the vehicle entity is invincible.
_0x38B7C51AB1EDC7D8
void NETWORK::_0x38B7C51AB1EDC7D8(Entity entity, BOOL toggle) // 0x38B7C51AB1EDC7D8 b1734
_0x3FC795691834481D
void NETWORK::_0x3FC795691834481D(Any p0, Any p1) // 0x3FC795691834481D b1868
nullsub, doesn't do anything
NETWORK_EXPLODE_VEHICLE
void NETWORK::NETWORK_EXPLODE_VEHICLE(Vehicle vehicle, BOOL isAudible, BOOL isInvisible, BOOL p3) // 0x301A42153C9AD707 0x0E1B38AE b323
In the console script dumps, this is only referenced once. NETWORK::NETWORK_EXPLODE_VEHICLE(vehicle, 1, 0, 0); ^^^^^ That must be PC script dumps? In X360 Script Dumps it is reference a few times with 2 differences in the parameters. Which as you see below is 1, 0, 0 + 1, 1, 0 + 1, 0, and a *param? am_plane_takedown.c network_explode_vehicle(net_to_veh(Local_40.imm_2), 1, 1, 0); armenian2.c network_explode_vehicle(Local_80[6 <2>], 1, 0, 0); fm_horde_controler.c network_explode_vehicle(net_to_veh(*uParam0), 1, 0, *uParam0); fm_mission_controller.c, has 6 hits so not going to list them. Side note, setting the first parameter to 0 seems to mute sound or so? Seems it's like ADD_EXPLOSION, etc. the first 2 params. The 3rd atm no need to worry since it always seems to be 0.
_0x2A5E0621DD815A9A
void NETWORK::_0x2A5E0621DD815A9A(Any p0, Any p1, Any p2, Any p3) // 0x2A5E0621DD815A9A b463
_0xCD71A4ECAB22709E
void NETWORK::_0xCD71A4ECAB22709E(Entity entity) // 0xCD71A4ECAB22709E 0xBC54371B b323
NETWORK_OVERRIDE_COORDS_AND_HEADING
void NETWORK::NETWORK_OVERRIDE_COORDS_AND_HEADING(Entity entity, float x, float y, float z, float heading) // 0xA7E30DE9272B6D49 0x644141C5 b323
_0xE6717E652B8C8D8A
void NETWORK::_0xE6717E652B8C8D8A(Any p0, Any p1) // 0xE6717E652B8C8D8A b617
NETWORK_DISABLE_PROXIMITY_MIGRATION
void NETWORK::NETWORK_DISABLE_PROXIMITY_MIGRATION(int netID) // 0x407091CF6037118E 0x9F82917F b323
NETWORK_SET_PROPERTY_ID
void NETWORK::NETWORK_SET_PROPERTY_ID(int id) // 0x1775961C2FBBCB5C 0x5A74E873 b323
value must be < 255
NETWORK_CLEAR_PROPERTY_ID
void NETWORK::NETWORK_CLEAR_PROPERTY_ID() // 0xC2B82527CA77053E 0x38BC35C8 b323
_0x367EF5E2F439B4C6
void NETWORK::_0x367EF5E2F439B4C6(int p0) // 0x367EF5E2F439B4C6 0x53C9563C b323
_0x94538037EE44F5CF
void NETWORK::_0x94538037EE44F5CF(BOOL p0) // 0x94538037EE44F5CF 0x6B97075B b323
NETWORK_CACHE_LOCAL_PLAYER_HEAD_BLEND_DATA
void NETWORK::NETWORK_CACHE_LOCAL_PLAYER_HEAD_BLEND_DATA() // 0xBD0BE0BFC927EAC1 0x94AB35A9 b323
NETWORK_HAS_CACHED_PLAYER_HEAD_BLEND_DATA
BOOL NETWORK::NETWORK_HAS_CACHED_PLAYER_HEAD_BLEND_DATA(Player player) // 0x237D5336A9A54108 0x7B2A0337 b323
NETWORK_APPLY_CACHED_PLAYER_HEAD_BLEND_DATA
BOOL NETWORK::NETWORK_APPLY_CACHED_PLAYER_HEAD_BLEND_DATA(Ped ped, Player player) // 0x99B72C7ABDE5C910 0x99F58A07 b323
GET_NUM_COMMERCE_ITEMS
int NETWORK::GET_NUM_COMMERCE_ITEMS() // 0xF2EAC213D5EA0623 0x965EA007 b323
IS_COMMERCE_DATA_VALID
BOOL NETWORK::IS_COMMERCE_DATA_VALID() // 0xEA14EEF5B7CD2C30 0xEEFC8A55 b323
_0xB606E6CC59664972
void NETWORK::_0xB606E6CC59664972(Any p0) // 0xB606E6CC59664972 0x866D1B67 b323
Does nothing (it's a nullsub).
_0x1D4DC17C38FEAFF0
BOOL NETWORK::_0x1D4DC17C38FEAFF0() // 0x1D4DC17C38FEAFF0 0xED4A272F b323
IS_COMMERCE_*
GET_COMMERCE_ITEM_ID
const char* NETWORK::GET_COMMERCE_ITEM_ID(int index) // 0x662635855957C411 0x4ACF110C b323
GET_COMMERCE_ITEM_NAME
const char* NETWORK::GET_COMMERCE_ITEM_NAME(int index) // 0xB4271092CA7EDF48 0x1AA3A0D5 b323
GET_COMMERCE_PRODUCT_PRICE
const char* NETWORK::GET_COMMERCE_PRODUCT_PRICE(int index) // 0xCA94551B50B4932C 0x37877757 b323
GET_COMMERCE_ITEM_NUM_CATS
int NETWORK::GET_COMMERCE_ITEM_NUM_CATS(int index) // 0x2A7776C709904AB0 0x1CF89DA5 b323
GET_COMMERCE_ITEM_CAT
const char* NETWORK::GET_COMMERCE_ITEM_CAT(int index, int index2) // 0x6F44CBF56D79FAC0 0x16E53875 b323
index2 is unused
OPEN_COMMERCE_STORE
void NETWORK::OPEN_COMMERCE_STORE(const char* p0, const char* p1, int p2) // 0x58C21165F6545892 0x365C50EE b323
IS_COMMERCE_STORE_OPEN
BOOL NETWORK::IS_COMMERCE_STORE_OPEN() // 0x2EAC52B4019E2782 0x25E2DBA9 b323
SET_STORE_ENABLED
void NETWORK::SET_STORE_ENABLED(BOOL toggle) // 0x9641A9FF718E9C5E 0xC1F6443B b323
Access to the store for shark cards etc...
REQUEST_COMMERCE_ITEM_IMAGE
BOOL NETWORK::REQUEST_COMMERCE_ITEM_IMAGE(int index) // 0xA2F952104FC6DD4B 0x1FDC75DC b323
RELEASE_ALL_COMMERCE_ITEM_IMAGES
void NETWORK::RELEASE_ALL_COMMERCE_ITEM_IMAGES() // 0x72D0706CD6CCDB58 0xCA7A0A49 b323
GET_COMMERCE_ITEM_TEXTURENAME
const char* NETWORK::GET_COMMERCE_ITEM_TEXTURENAME(int index) // 0x722F5D28B61C5EA8 0x44A58B0A b323
IS_STORE_AVAILABLE_TO_USER
BOOL NETWORK::IS_STORE_AVAILABLE_TO_USER() // 0x883D79C4071E18B3 0xD32FA11F b323
_0x265635150FB0D82E
void NETWORK::_0x265635150FB0D82E() // 0x265635150FB0D82E 0xA7FA70AE b323
_0x444C4525ECE0A4B9
void NETWORK::_0x444C4525ECE0A4B9() // 0x444C4525ECE0A4B9 0xCC7DCE24 b323
RESET_* sfink: related to: NETWORK_BAIL NETWORK_BAIL_TRANSITION NETWORK_JOIN_GROUP_ACTIVITY NETWORK_JOIN_TRANSITION NETWORK_LAUNCH_TRANSITION NETWORK_SESSION_HOST NETWORK_SESSION_HOST_CLOSED NETWORK_SESSION_HOST_FRIENDS_ONLY NETWORK_SESSION_HOST_SINGLE_PLAYER NETWORK_SESSION_VOICE_LEAVE
_0x59328EB08C5CEB2B
BOOL NETWORK::_0x59328EB08C5CEB2B() // 0x59328EB08C5CEB2B 0x70F6D3AD b323
IS_*
_0xFAE628F1E9ADB239
void NETWORK::_0xFAE628F1E9ADB239(Hash p0, int p1, Hash p2) // 0xFAE628F1E9ADB239 0xD59A822B b323
_0x754615490A029508
int NETWORK::_0x754615490A029508() // 0x754615490A029508 b1290
Checks some commerce stuff
_0x155467ACA0F55705
int NETWORK::_0x155467ACA0F55705() // 0x155467ACA0F55705 b1290
Checks some commerce stuff
CLOUD_DELETE_MEMBER_FILE
int NETWORK::CLOUD_DELETE_MEMBER_FILE(const char* p0) // 0xC64DED7EF0D2FE37 0x2B7B57B3 b323
CLOUD_HAS_REQUEST_COMPLETED
BOOL NETWORK::CLOUD_HAS_REQUEST_COMPLETED(int handle) // 0x4C61B39930D045DA 0xBAF52DD8 b323
CLOUD_DID_REQUEST_SUCCEED
BOOL NETWORK::CLOUD_DID_REQUEST_SUCCEED(int handle) // 0x3A3D5568AF297CD5 0x9B9AFFF1 b323
CLOUD_CHECK_AVAILABILITY
void NETWORK::CLOUD_CHECK_AVAILABILITY() // 0x4F18196C8D38768D 0xC38E9DB0 b323
Downloads prod.cloud.rockstargames.com/titles/gta5/[platform]/check.json
CLOUD_IS_CHECKING_AVAILABILITY
BOOL NETWORK::CLOUD_IS_CHECKING_AVAILABILITY() // 0xC7ABAC5DE675EE3B 0x32A4EB22 b323
CLOUD_GET_AVAILABILITY_CHECK_RESULT
BOOL NETWORK::CLOUD_GET_AVAILABILITY_CHECK_RESULT() // 0x0B0CC10720653F3B 0x9262744C b323
_0x8B0C2964BA471961
Any NETWORK::_0x8B0C2964BA471961() // 0x8B0C2964BA471961 b323
MulleDK19: This function is hard-coded to always return 0.
_0x88B588B41FF7868E
Any NETWORK::_0x88B588B41FF7868E() // 0x88B588B41FF7868E b323
MulleDK19: This function is hard-coded to always return 0.
_0x67FC09BC554A75E5
Any NETWORK::_0x67FC09BC554A75E5() // 0x67FC09BC554A75E5 b323
MulleDK19: This function is hard-coded to always return 0.
_CLEAR_LAUNCH_PARAMS
void NETWORK::_CLEAR_LAUNCH_PARAMS() // 0x966DD84FB6A46017 b323
This native does absolutely nothing, just a nullsub
UGC_COPY_CONTENT
BOOL NETWORK::UGC_COPY_CONTENT(Any* p0, Any* p1) // 0x152D90E4C1B4738A 0x08243B79 b323
_0x9FEDF86898F100E9
Any NETWORK::_0x9FEDF86898F100E9() // 0x9FEDF86898F100E9 0x798D6C27 b323
UGC_HAS_CREATE_FINISHED
BOOL NETWORK::UGC_HAS_CREATE_FINISHED() // 0x5E24341A7F92A74B 0xE69E8D0D b323
_0x24E4E51FC16305F9
Any NETWORK::_0x24E4E51FC16305F9() // 0x24E4E51FC16305F9 0x742075FE b323
UGC_GET_CREATE_RESULT
Any NETWORK::UGC_GET_CREATE_RESULT() // 0xFBC5E768C7A77A6A 0xCE569932 b323
UGC_GET_CREATE_CONTENT_ID
Any NETWORK::UGC_GET_CREATE_CONTENT_ID() // 0xC55A0B40FFB1ED23 0x82146BE9 b323
UGC_CLEAR_CREATE_RESULT
void NETWORK::UGC_CLEAR_CREATE_RESULT() // 0x17440AA15D1D3739 0x133FF2D5 b323
UGC_QUERY_MY_CONTENT
BOOL NETWORK::UGC_QUERY_MY_CONTENT(Any p0, Any p1, Any* p2, Any p3, Any p4, Any p5) // 0x9BF438815F5D96EA 0xCBA7242F b323
_0x692D58DF40657E8C
BOOL NETWORK::_0x692D58DF40657E8C(Any p0, Any p1, Any p2, Any* p3, Any p4, BOOL p5) // 0x692D58DF40657E8C b323
UGC_QUERY_BY_CONTENT_ID
BOOL NETWORK::UGC_QUERY_BY_CONTENT_ID(const char* contentId, BOOL latestVersion, const char* contentTypeName) // 0x158EC424F35EC469 0xDED82A6E b323
UGC_QUERY_BY_CONTENT_IDS
BOOL NETWORK::UGC_QUERY_BY_CONTENT_IDS(Any* data, int count, BOOL latestVersion, const char* contentTypeName) // 0xC7397A83F7A2A462 0x47B3C35E b323
_UGC_QUERY_RECENTLY_CREATED_CONTENT
BOOL NETWORK::_UGC_QUERY_RECENTLY_CREATED_CONTENT(int offset, int count, const char* contentTypeName, int p3) // 0x6D4CB481FAC835E8 0x40CF0783 b323
UGC_GET_BOOKMARKED_CONTENT
BOOL NETWORK::UGC_GET_BOOKMARKED_CONTENT(Any p0, Any p1, Any* p2, Any* p3) // 0xD5A4B59980401588 0x4609D596 b323
UGC_GET_MY_CONTENT
BOOL NETWORK::UGC_GET_MY_CONTENT(Any p0, Any p1, Any* p2, Any* p3) // 0x3195F8DD0D531052 0x4C2C0D1F b323
UGC_GET_FRIEND_CONTENT
BOOL NETWORK::UGC_GET_FRIEND_CONTENT(Any p0, Any p1, Any* p2, Any* p3) // 0xF9E1CCAE8BA4C281 0x9EFBD5D1 b323
UGC_GET_CREW_CONTENT
BOOL NETWORK::UGC_GET_CREW_CONTENT(Any p0, Any p1, Any p2, Any* p3, Any* p4) // 0x9F6E2821885CAEE2 0xA6D8B798 b323
UGC_GET_GET_BY_CATEGORY
BOOL NETWORK::UGC_GET_GET_BY_CATEGORY(Any p0, Any p1, Any p2, Any* p3, Any* p4) // 0x678BB03C1A3BD51E 0x67E74842 b323
SET_BALANCE_ADD_MACHINE
BOOL NETWORK::SET_BALANCE_ADD_MACHINE(const char* contentId, const char* contentTypeName) // 0x815E5E3073DA1D67 0xE123C7AC b323
SET_BALANCE_ADD_MACHINES
BOOL NETWORK::SET_BALANCE_ADD_MACHINES(Any* data, int dataCount, const char* contentTypeName) // 0xB8322EEB38BE7C26 0x22C33603 b323
_0xA7862BC5ED1DFD7E
BOOL NETWORK::_0xA7862BC5ED1DFD7E(Any p0, Any p1, Any* p2, Any* p3) // 0xA7862BC5ED1DFD7E 0x37F5BD93 b323
_0x97A770BEEF227E2B
BOOL NETWORK::_0x97A770BEEF227E2B(Any p0, Any p1, Any* p2, Any* p3) // 0x97A770BEEF227E2B 0x1CFB3F51 b323
_0x5324A0E3E4CE3570
BOOL NETWORK::_0x5324A0E3E4CE3570(Any p0, Any p1, Any* p2, Any* p3) // 0x5324A0E3E4CE3570 0x87D1E6BD b323
UGC_CANCEL_QUERY
void NETWORK::UGC_CANCEL_QUERY() // 0xE9B99B6853181409 0x021D5A94 b323
UGC_IS_GETTING
BOOL NETWORK::UGC_IS_GETTING() // 0xD53ACDBEF24A46E8 0x4908A514 b323
UGC_HAS_GET_FINISHED
BOOL NETWORK::UGC_HAS_GET_FINISHED() // 0x02ADA21EA2F6918F 0x50296140 b323
UGC_DID_GET_SUCCEED
Any NETWORK::UGC_DID_GET_SUCCEED() // 0x941E5306BCD7C2C7 0x3970B0DA b323
_0xC87E740D9F3872CC
Any NETWORK::_0xC87E740D9F3872CC() // 0xC87E740D9F3872CC 0xC1487110 b323
UGC_GET_QUERY_RESULT
Any NETWORK::UGC_GET_QUERY_RESULT() // 0xEDF7F927136C224B 0xCC2356E3 b323
UGC_GET_CONTENT_NUM
Any NETWORK::UGC_GET_CONTENT_NUM() // 0xE0A6138401BCB837 0x2DE69817 b323
UGC_GET_CONTENT_TOTAL
Any NETWORK::UGC_GET_CONTENT_TOTAL() // 0x769951E2455E2EB5 0x81BD8D3B b323
UGC_GET_CONTENT_HASH
Hash NETWORK::UGC_GET_CONTENT_HASH() // 0x3A17A27D75C74887 0x8E1D8F78 b323
UGC_CLEAR_QUERY_RESULTS
void NETWORK::UGC_CLEAR_QUERY_RESULTS() // 0xBA96394A0EECFA65 0x0D35DD93 b323
UGC_GET_CONTENT_USER_ID
const char* NETWORK::UGC_GET_CONTENT_USER_ID(int p0) // 0xCD67AD041A394C9C 0x8F3137E6 b323
_0x584770794D758C18
BOOL NETWORK::_0x584770794D758C18(Any p0, Any* p1) // 0x584770794D758C18 b323
_0x8C8D2739BA44AF0F
BOOL NETWORK::_0x8C8D2739BA44AF0F(Any p0) // 0x8C8D2739BA44AF0F b323
UGC_GET_CONTENT_USER_NAME
Any NETWORK::UGC_GET_CONTENT_USER_NAME(Any p0) // 0x703F12425ECA8BF5 0xB9137BA7 b323
_0xAEAB987727C5A8A4
BOOL NETWORK::_0xAEAB987727C5A8A4(Any p0) // 0xAEAB987727C5A8A4 0x9FEEAA9C b323
UGC_GET_CONTENT_CATEGORY
int NETWORK::UGC_GET_CONTENT_CATEGORY(int p0) // 0xA7BAB11E7C9C6C5A 0x5E8A7559 b323
UGC_GET_CONTENT_ID
const char* NETWORK::UGC_GET_CONTENT_ID(int p0) // 0x55AA95F481D694D2 0x331AEABF b323
Return the mission id of a job.
UGC_GET_ROOT_CONTENT_ID
const char* NETWORK::UGC_GET_ROOT_CONTENT_ID(int p0) // 0xC0173D6BFF4E0348 0x0E5E8E5C b323
Return the root content id of a job.
UGC_GET_CONTENT_NAME
Any NETWORK::UGC_GET_CONTENT_NAME(Any p0) // 0xBF09786A7FCAB582 0xA5A0C695 b323
UGC_GET_CONTENT_DESCRIPTION_HASH
int NETWORK::UGC_GET_CONTENT_DESCRIPTION_HASH(Any p0) // 0x7CF0448787B23758 0x91534C6E b323
UGC_GET_CONTENT_PATH
const char* NETWORK::UGC_GET_CONTENT_PATH(int p0, int p1) // 0xBAF6BABF9E7CCC13 0x744A9EA5 b323
UGC_GET_CONTENT_UPDATED_DATE
void NETWORK::UGC_GET_CONTENT_UPDATED_DATE(Any p0, Any* p1) // 0xCFD115B373C0DF63 0xA19A238D b323
UGC_GET_CONTENT_FILE_VERSION
Any NETWORK::UGC_GET_CONTENT_FILE_VERSION(Any p0, Any p1) // 0x37025B27D9B658B1 0xFF7D44E6 b323
_0x1D610EB0FEA716D9
BOOL NETWORK::_0x1D610EB0FEA716D9(int p0) // 0x1D610EB0FEA716D9 b323
_0x7FCC39C46C3C03BD
BOOL NETWORK::_0x7FCC39C46C3C03BD(int p0) // 0x7FCC39C46C3C03BD b323
UGC_GET_CONTENT_LANGUAGE
Any NETWORK::UGC_GET_CONTENT_LANGUAGE(Any p0) // 0x32DD916F3F7C9672 0xA2C5BD9D b323
UGC_GET_CONTENT_IS_PUBLISHED
BOOL NETWORK::UGC_GET_CONTENT_IS_PUBLISHED(Any p0) // 0x3054F114121C21EA 0xA850DDE1 b323
UGC_GET_CONTENT_IS_VERIFIED
BOOL NETWORK::UGC_GET_CONTENT_IS_VERIFIED(Any p0) // 0xA9240A96C74CCA13 0x8F6754AE b323
UGC_GET_CONTENT_RATING
Any NETWORK::UGC_GET_CONTENT_RATING(Any p0, Any p1) // 0x1ACCFBA3D8DAB2EE 0x1E34953F b323
UGC_GET_CONTENT_RATING_COUNT
Any NETWORK::UGC_GET_CONTENT_RATING_COUNT(Any p0, Any p1) // 0x759299C5BB31D2A9 0x771FE190 b323
UGC_GET_CONTENT_RATING_POSITIVE_COUNT
Any NETWORK::UGC_GET_CONTENT_RATING_POSITIVE_COUNT(Any p0, Any p1) // 0x87E5C46C187FE0AE 0x3276D9D3 b323
UGC_GET_CONTENT_RATING_NEGATIVE_COUNT
Any NETWORK::UGC_GET_CONTENT_RATING_NEGATIVE_COUNT(Any p0, Any p1) // 0x4E548C0D7AE39FF9 0x41A0FB02 b323
UGC_GET_CONTENT_HAS_PLAYER_RECORD
BOOL NETWORK::UGC_GET_CONTENT_HAS_PLAYER_RECORD(Any p0) // 0x70EA8DA57840F9BE 0x11DC0F27 b323
UGC_GET_CONTENT_HAS_PLAYER_BOOKMARKED
BOOL NETWORK::UGC_GET_CONTENT_HAS_PLAYER_BOOKMARKED(Any p0) // 0x993CBE59D350D225 0x0DEB3F5A b323
UGC_REQUEST_CONTENT_DATA_FROM_INDEX
int NETWORK::UGC_REQUEST_CONTENT_DATA_FROM_INDEX(int p0, int p1) // 0x171DF6A0C07FB3DC 0x84315226 b323
UGC_REQUEST_CONTENT_DATA_FROM_PARAMS
int NETWORK::UGC_REQUEST_CONTENT_DATA_FROM_PARAMS(const char* contentTypeName, const char* contentId, int p2, int p3, int p4) // 0x7FD2990AF016795E 0x38FC2EEB b323
UGC_REQUEST_CACHED_DESCRIPTION
int NETWORK::UGC_REQUEST_CACHED_DESCRIPTION(int p0) // 0x5E0165278F6339EE 0x1C4F9FDB b323
_0x2D5DC831176D0114
BOOL NETWORK::_0x2D5DC831176D0114(Any p0) // 0x2D5DC831176D0114 0xA69AE16C b323
_0xEBFA8D50ADDC54C4
BOOL NETWORK::_0xEBFA8D50ADDC54C4(Any p0) // 0xEBFA8D50ADDC54C4 0xF50BC67A b323
_0x162C23CA83ED0A62
BOOL NETWORK::_0x162C23CA83ED0A62(Any p0) // 0x162C23CA83ED0A62 0xB3BBD241 b323
UGC_GET_CACHED_DESCRIPTION
Any NETWORK::UGC_GET_CACHED_DESCRIPTION(Any p0, Any p1) // 0x40F7E66472DF3E5C 0x70A2845C b323
_0x5A34CD9C3C5BEC44
BOOL NETWORK::_0x5A34CD9C3C5BEC44(Any p0) // 0x5A34CD9C3C5BEC44 0x346B506C b323
_0x68103E2247887242
void NETWORK::_0x68103E2247887242() // 0x68103E2247887242 0x0095DB71 b323
UGC_PUBLISH
BOOL NETWORK::UGC_PUBLISH(const char* contentId, const char* baseContentId, const char* contentTypeName) // 0x1DE0F5F50D723CAA 0xAD334B40 b323
UGC_SET_BOOKMARKED
BOOL NETWORK::UGC_SET_BOOKMARKED(const char* contentId, BOOL bookmarked, const char* contentTypeName) // 0x274A1519DFC1094F 0x980D45D7 b323
UGC_SET_DELETED
BOOL NETWORK::UGC_SET_DELETED(Any* p0, BOOL p1, Any* p2) // 0xD05D1A6C74DA3498 0x48CCC328 b323
_0x45E816772E93A9DB
Any NETWORK::_0x45E816772E93A9DB() // 0x45E816772E93A9DB 0x8E664EFD b323
UGC_HAS_MODIFY_FINISHED
BOOL NETWORK::UGC_HAS_MODIFY_FINISHED() // 0x299EF3C576773506 0x611E0BE2 b323
_0x793FF272D5B365F4
Any NETWORK::_0x793FF272D5B365F4() // 0x793FF272D5B365F4 0xF0211AC1 b323
UGC_GET_MODIFY_RESULT
Any NETWORK::UGC_GET_MODIFY_RESULT() // 0x5A0A3D1A186A5508 0x1F0DD8AF b323
UGC_CLEAR_MODIFY_RESULT
void NETWORK::UGC_CLEAR_MODIFY_RESULT() // 0xA1E5E0204A6FCC70 0x405ECA16 b323
_0xB746D20B17F2A229
BOOL NETWORK::_0xB746D20B17F2A229(Any* p0, Any* p1) // 0xB746D20B17F2A229 0x9567392B b323
_0x63B406D7884BFA95
Any NETWORK::_0x63B406D7884BFA95() // 0x63B406D7884BFA95 0xF79FFF3C b323
_0x4D02279C83BE69FE
Any NETWORK::_0x4D02279C83BE69FE() // 0x4D02279C83BE69FE 0xA7F3F82B b323
UGC_GET_CREATOR_NUM
Any NETWORK::UGC_GET_CREATOR_NUM() // 0x597F8DBA9B206FC7 0x410C61D1 b323
UGC_POLICIES_MAKE_PRIVATE
BOOL NETWORK::UGC_POLICIES_MAKE_PRIVATE(Any p0) // 0x5CAE833B0EE0C500 0x0D4F845D b323
UGC_CLEAR_OFFLINE_QUERY
void NETWORK::UGC_CLEAR_OFFLINE_QUERY() // 0x61A885D3F7CFEE9A 0xE13C1F7F b323
UGC_SET_QUERY_DATA_FROM_OFFLINE
void NETWORK::UGC_SET_QUERY_DATA_FROM_OFFLINE(BOOL p0) // 0xF98DDE0A8ED09323 0x213C6D36 b323
_0xFD75DABC0957BF33
void NETWORK::_0xFD75DABC0957BF33(BOOL p0) // 0xFD75DABC0957BF33 0x511E6F50 b323
UGC_IS_LANGUAGE_SUPPORTED
BOOL NETWORK::UGC_IS_LANGUAGE_SUPPORTED(Any p0) // 0xF53E48461B71EECB 0xB4668B23 b323
_FACEBOOK_SET_HEIST_COMPLETE
BOOL NETWORK::_FACEBOOK_SET_HEIST_COMPLETE(const char* heistName, int cashEarned, int xpEarned) // 0x098AB65B9ED9A9EC 0x30B51753 b323
_FACEBOOK_SET_CREATE_CHARACTER_COMPLETE
BOOL NETWORK::_FACEBOOK_SET_CREATE_CHARACTER_COMPLETE() // 0xDC48473142545431 0x02DAD93F b323
_FACEBOOK_SET_MILESTONE_COMPLETE
BOOL NETWORK::_FACEBOOK_SET_MILESTONE_COMPLETE(int milestoneId) // 0x0AE1F1653B554AB9 0x2D947814 b323
_FACEBOOK_IS_SENDING_DATA
BOOL NETWORK::_FACEBOOK_IS_SENDING_DATA() // 0x62B9FEC9A11F10EF 0x37A28C26 b323
_FACEBOOK_DO_UNK_CHECK
BOOL NETWORK::_FACEBOOK_DO_UNK_CHECK() // 0xA75E2B6733DA5142 0x11E8B5CD b323
_FACEBOOK_IS_AVAILABLE
BOOL NETWORK::_FACEBOOK_IS_AVAILABLE() // 0x43865688AE10F0D7 0x429AEAB3 b323
TEXTURE_DOWNLOAD_REQUEST
int NETWORK::TEXTURE_DOWNLOAD_REQUEST(int* PlayerHandle, const char* FilePath, const char* Name, BOOL p3) // 0x16160DA74A8E74A2 0xAD546CC3 b323
TITLE_TEXTURE_DOWNLOAD_REQUEST
int NETWORK::TITLE_TEXTURE_DOWNLOAD_REQUEST(const char* FilePath, const char* Name, BOOL p2) // 0x0B203B4AFDE53A4F 0x1856D008 b323
UGC_TEXTURE_DOWNLOAD_REQUEST
Any NETWORK::UGC_TEXTURE_DOWNLOAD_REQUEST(Any* p0, Any p1, Any p2, Any p3, Any* p4, BOOL p5) // 0x308F96458B7087CC 0x68C9AF69 b323
TEXTURE_DOWNLOAD_RELEASE
void NETWORK::TEXTURE_DOWNLOAD_RELEASE(int p0) // 0x487EB90B98E9FB19 0xEE8D9E70 b323
TEXTURE_DOWNLOAD_HAS_FAILED
BOOL NETWORK::TEXTURE_DOWNLOAD_HAS_FAILED(int p0) // 0x5776ED562C134687 0xE4547765 b323
TEXTURE_DOWNLOAD_GET_NAME
const char* NETWORK::TEXTURE_DOWNLOAD_GET_NAME(int p0) // 0x3448505B6E35262D 0xA40EF65A b323
GET_STATUS_OF_TEXTURE_DOWNLOAD
int NETWORK::GET_STATUS_OF_TEXTURE_DOWNLOAD(int p0) // 0x8BD6C6DEA20E82C6 0x03225BA3 b323
0 = succeeded 1 = pending 2 = failed
_0x60EDD13EB3AC1FF3
BOOL NETWORK::_0x60EDD13EB3AC1FF3() // 0x60EDD13EB3AC1FF3 0x4DEBC227 b323
Returns true if profile setting 901 is set to true and sets it to false. NETWORK_C*
_NETWORK_SHOULD_SHOW_CONNECTIVITY_TROUBLESHOOTING
BOOL NETWORK::_NETWORK_SHOULD_SHOW_CONNECTIVITY_TROUBLESHOOTING() // 0x82A2B386716608F1 b393
Returns true if the NAT type is Strict (3) and a certain number of connections have failed.
NETWORK_IS_CABLE_CONNECTED
BOOL NETWORK::NETWORK_IS_CABLE_CONNECTED() // 0xEFFB25453D8600F9 0x5C065D55 b323
_NETWORK_GET_ROS_PRIVILEGE_9
BOOL NETWORK::_NETWORK_GET_ROS_PRIVILEGE_9() // 0x66B59CFFD78467AF 0x0CA1167F b323
NETWORK_HAVE_ROS_SOCIAL_CLUB_PRIV
BOOL NETWORK::NETWORK_HAVE_ROS_SOCIAL_CLUB_PRIV() // 0x606E4D3E3CCCF3EB 0x424C6E27 b323
NETWORK_HAVE_ROS_BANNED_PRIV
BOOL NETWORK::NETWORK_HAVE_ROS_BANNED_PRIV() // 0x8020A73847E0CA7D 0xD3BBE42F b323
NETWORK_HAVE_ROS_CREATE_TICKET_PRIV
BOOL NETWORK::NETWORK_HAVE_ROS_CREATE_TICKET_PRIV() // 0xA0AD7E2AF5349F61 0xBDBB5948 b323
NETWORK_HAVE_ROS_MULTIPLAYER_PRIV
BOOL NETWORK::NETWORK_HAVE_ROS_MULTIPLAYER_PRIV() // 0x5F91D5D0B36AA310 0x97287D68 b323
NETWORK_HAVE_ROS_LEADERBOARD_WRITE_PRIV
BOOL NETWORK::NETWORK_HAVE_ROS_LEADERBOARD_WRITE_PRIV() // 0x422D396F80A96547 0xC6EA802E b323
NETWORK_HAS_ROS_PRIVILEGE
BOOL NETWORK::NETWORK_HAS_ROS_PRIVILEGE(int index) // 0xA699957E60D80214 0xFD261E30 b323
index is always 18 in scripts
NETWORK_HAS_ROS_PRIVILEGE_END_DATE
BOOL NETWORK::NETWORK_HAS_ROS_PRIVILEGE_END_DATE(int privilege, int* banType, Any* timeData) // 0xC22912B1D85F26B1 0x8570DD34 b323
_NETWORK_GET_ROS_PRIVILEGE_24
BOOL NETWORK::_NETWORK_GET_ROS_PRIVILEGE_24() // 0x593570C289A77688 b323
_NETWORK_GET_ROS_PRIVILEGE_25
BOOL NETWORK::_NETWORK_GET_ROS_PRIVILEGE_25() // 0x91B87C55093DE351 b323
_0x36391F397731595D
Any NETWORK::_0x36391F397731595D(Any p0) // 0x36391F397731595D b323
NETWORK_START_USER_CONTENT_PERMISSIONS_CHECK
int NETWORK::NETWORK_START_USER_CONTENT_PERMISSIONS_CHECK(Any* netHandle) // 0xDEB2B99A1AF1A2A6 b323
Always returns -1. Seems to be XB1 specific.
_0x9465E683B12D3F6B
void NETWORK::_0x9465E683B12D3F6B() // 0x9465E683B12D3F6B 0x273C6180 b323
_0xCA59CCAE5D01E4CE
void NETWORK::_0xCA59CCAE5D01E4CE() // 0xCA59CCAE5D01E4CE b1734
NETWORK_S*
_NETWORK_HAS_GAME_BEEN_ALTERED
BOOL NETWORK::_NETWORK_HAS_GAME_BEEN_ALTERED() // 0x659CF2EF7F550C4F b1011
Returns true if dinput8.dll is present in the game directory. You will get following error message if that is true: "You are attempting to access GTA Online servers with an altered version of the game."
_NETWORK_UPDATE_PLAYER_SCARS
void NETWORK::_NETWORK_UPDATE_PLAYER_SCARS() // 0xB7C7F6AD6424304B 0x371BBA08 b323
NETWORK_DISABLE_LEAVE_REMOTE_PED_BEHIND
void NETWORK::NETWORK_DISABLE_LEAVE_REMOTE_PED_BEHIND(BOOL toggle) // 0xC505036A35AFD01B 0xA100CC97 b323
_NETWORK_ALLOW_LOCAL_ENTITY_ATTACHMENT
void NETWORK::_NETWORK_ALLOW_LOCAL_ENTITY_ATTACHMENT(Entity entity, BOOL toggle) // 0x267C78C60E806B9A 0xBB2D33D3 b323
_0x6BFF5F84102DF80A
void NETWORK::_0x6BFF5F84102DF80A(Player player) // 0x6BFF5F84102DF80A b323
Does nothing (it's a nullsub).
_0x5C497525F803486B
void NETWORK::_0x5C497525F803486B() // 0x5C497525F803486B b323
This native does absolutely nothing, just a nullsub
_0x6FB7BB3607D27FA2
Any NETWORK::_0x6FB7BB3607D27FA2() // 0x6FB7BB3607D27FA2 b323
MulleDK19: This function is hard-coded to always return 0.
_0x45A83257ED02D9BC
void NETWORK::_0x45A83257ED02D9BC() // 0x45A83257ED02D9BC b323
_0x16D3D49902F697BB
BOOL NETWORK::_0x16D3D49902F697BB(Player player) // 0x16D3D49902F697BB b323
NETWORK_IS_*
_0xD414BE129BB81B32
float NETWORK::_0xD414BE129BB81B32(Player player) // 0xD414BE129BB81B32 b323
_0x0E3A041ED6AC2B45
float NETWORK::_0x0E3A041ED6AC2B45(Player player) // 0x0E3A041ED6AC2B45 b323
alias 0xD414BE129BB81B32
_0x350C23949E43686C
float NETWORK::_0x350C23949E43686C(Player player) // 0x350C23949E43686C b323
NETWORK_GET_*
_NETWORK_GET_NUM_UNACKED_FOR_PLAYER
int NETWORK::_NETWORK_GET_NUM_UNACKED_FOR_PLAYER(Player player) // 0xFF8FCF9FFC458A1C b323
_NETWORK_GET_UNRELIABLE_RESEND_COUNT_FOR_PLAYER
int NETWORK::_NETWORK_GET_UNRELIABLE_RESEND_COUNT_FOR_PLAYER(Player player) // 0x3765C3A3E8192E10 b323
_NETWORK_GET_OLDEST_RESEND_COUNT_FOR_PLAYER
int NETWORK::_NETWORK_GET_OLDEST_RESEND_COUNT_FOR_PLAYER(Player player) // 0x52C1EADAF7B10302 b323
NETWORK_GET_*
_NETWORK_REPORT_MYSELF
void NETWORK::_NETWORK_REPORT_MYSELF() // 0x5626D9D6810730D5 b350
_0x64D779659BC37B19
Vector3 NETWORK::_0x64D779659BC37B19(Entity entity) // 0x64D779659BC37B19 b393
NETWORK_GET_*
_NETWORK_GET_PLAYER_COORDS
Vector3 NETWORK::_NETWORK_GET_PLAYER_COORDS(Player player) // 0x125E6D638B8605D4 b393
Returns the coordinates of another player. Does not work if you enter your own player id as p0 (will return `(0.0, 0.0, 0.0)` in that case).
_0x33DE49EDF4DDE77A
Vector3 NETWORK::_0x33DE49EDF4DDE77A(Entity entity) // 0x33DE49EDF4DDE77A b1103
NETWORK_GET_*
_0xAA5FAFCD2C5F5E47
Vector3 NETWORK::_0xAA5FAFCD2C5F5E47(Entity entity) // 0xAA5FAFCD2C5F5E47 b1103
NETWORK_GET_P*
_0xAEDF1BC1C133D6E3
Any NETWORK::_0xAEDF1BC1C133D6E3() // 0xAEDF1BC1C133D6E3 b323
Does nothing (it's a nullsub).
_0x2555CF7DA5473794
Any NETWORK::_0x2555CF7DA5473794() // 0x2555CF7DA5473794 b323
Does nothing (it's a nullsub).
_0x6FD992C4A1C1B986
Any NETWORK::_0x6FD992C4A1C1B986() // 0x6FD992C4A1C1B986 b323
Does nothing (it's a nullsub).
_0xDB663CC9FF3407A9
int NETWORK::_0xDB663CC9FF3407A9(Player player) // 0xDB663CC9FF3407A9 b1734
OBJECT
CREATE_OBJECT
Object OBJECT::CREATE_OBJECT(Hash modelHash, float x, float y, float z, BOOL isNetwork, BOOL bScriptHostObj, BOOL dynamic) // 0x509D5878EB39E842 0x2F7AA05C b323
CREATE_OBJECT_NO_OFFSET
Object OBJECT::CREATE_OBJECT_NO_OFFSET(Hash modelHash, float x, float y, float z, BOOL isNetwork, BOOL bScriptHostObj, BOOL dynamic) // 0x9A294B2138ABB884 0x58040420 b323
DELETE_OBJECT
void OBJECT::DELETE_OBJECT(Object* object) // 0x539E0AE3E6634B9F 0xD6EF9DA7 b323
Deletes the specified object, then sets the handle pointed to by the pointer to NULL.
PLACE_OBJECT_ON_GROUND_PROPERLY
BOOL OBJECT::PLACE_OBJECT_ON_GROUND_PROPERLY(Object object) // 0x58A850EAEE20FAA3 0x8F95A20B b323
_PLACE_OBJECT_ON_GROUND_PROPERLY_2
BOOL OBJECT::_PLACE_OBJECT_ON_GROUND_PROPERLY_2(Object object) // 0xD76EEEF746057FD6 b505
_0xAFE24E4D29249E4A
BOOL OBJECT::_0xAFE24E4D29249E4A(Object object, float p1, float p2, BOOL p3) // 0xAFE24E4D29249E4A b1734
SLIDE_OBJECT
BOOL OBJECT::SLIDE_OBJECT(Object object, float toX, float toY, float toZ, float speedX, float speedY, float speedZ, BOOL collision) // 0x2FDFF4107B8C1147 0x63BFA7A0 b323
Returns true if the object has finished moving. If false, moves the object towards the specified X, Y and Z coordinates with the specified X, Y and Z speed. See also: https://gtagmodding.com/opcode-database/opcode/034E/ Has to be looped until it returns true.
SET_OBJECT_TARGETTABLE
void OBJECT::SET_OBJECT_TARGETTABLE(Object object, BOOL targettable) // 0x8A7391690F5AFD81 0x3F88CD86 b323
_SET_OBJECT_SOMETHING
void OBJECT::_SET_OBJECT_SOMETHING(Object object, BOOL p1) // 0x77F33F2CCF64B3AA 0x483C5C88 b323
GET_CLOSEST_OBJECT_OF_TYPE
Object OBJECT::GET_CLOSEST_OBJECT_OF_TYPE(float x, float y, float z, float radius, Hash modelHash, BOOL isMission, BOOL p6, BOOL p7) // 0xE143FA2249364369 0x45619B33 b323
Has 8 params in the latest patches. isMission - if true doesn't return mission objects
HAS_OBJECT_BEEN_BROKEN
BOOL OBJECT::HAS_OBJECT_BEEN_BROKEN(Object object, Any p1) // 0x8ABFB70C49CC43E2 0xFE21F891 b323
HAS_CLOSEST_OBJECT_OF_TYPE_BEEN_BROKEN
BOOL OBJECT::HAS_CLOSEST_OBJECT_OF_TYPE_BEEN_BROKEN(float p0, float p1, float p2, float p3, Hash modelHash, Any p5) // 0x761B0E69AC4D007E 0x6FC0353D b323
HAS_CLOSEST_OBJECT_OF_TYPE_BEEN_COMPLETELY_DESTROYED
BOOL OBJECT::HAS_CLOSEST_OBJECT_OF_TYPE_BEEN_COMPLETELY_DESTROYED(float x, float y, float z, float radius, Hash modelHash, BOOL p5) // 0x46494A2475701343 0x7DB578DD b323
_0x2542269291C6AC84
Any OBJECT::_0x2542269291C6AC84(Any p0) // 0x2542269291C6AC84 b1180
_GET_OBJECT_OFFSET_FROM_COORDS
Vector3 OBJECT::_GET_OBJECT_OFFSET_FROM_COORDS(float xPos, float yPos, float zPos, float heading, float xOffset, float yOffset, float zOffset) // 0x163E252DE035A133 0x87A42A12 b323
GET_COORDS_AND_ROTATION_OF_CLOSEST_OBJECT_OF_TYPE
Any OBJECT::GET_COORDS_AND_ROTATION_OF_CLOSEST_OBJECT_OF_TYPE(float x, float y, float z, float radius, Hash modelHash, Vector3* outPosition, Vector3* outRotation, int rotationOrder) // 0x163F8B586BC95F2A 0x65213FC3 b323
SET_STATE_OF_CLOSEST_DOOR_OF_TYPE
void OBJECT::SET_STATE_OF_CLOSEST_DOOR_OF_TYPE(Hash type, float x, float y, float z, BOOL locked, float heading, BOOL p6) // 0xF82D8F1926A02C3D 0x38C951A4 b323
Hardcoded to not work in multiplayer. Used to lock/unlock doors to interior areas of the game. (Possible) Door Types: pastebin.com/9S2m3qA4 Heading is either 1, 0 or -1 in the scripts. Means default closed(0) or opened either into(1) or out(-1) of the interior. Locked means that the heading is locked. p6 is always 0. 225 door types, model names and coords found in stripclub.c4: pastebin.com/gywnbzsH get door info: pastebin.com/i14rbekD
GET_STATE_OF_CLOSEST_DOOR_OF_TYPE
void OBJECT::GET_STATE_OF_CLOSEST_DOOR_OF_TYPE(Hash type, float x, float y, float z, BOOL* locked, float* heading) // 0xEDC1A5B84AEF33FF 0x4B44A83D b323
locked is 0 if no door is found locked is 0 if door is unlocked locked is 1 if door is found and unlocked. ------------- the locked bool is either 0(unlocked)(false) or 1(locked)(true)
_DOOR_CONTROL
void OBJECT::_DOOR_CONTROL(Hash modelHash, float x, float y, float z, BOOL locked, float xRotMult, float yRotMult, float zRotMult) // 0x9B12F9A24FABEDB0 0x4E0A260B b323
Hardcoded not to work in multiplayer environments. When you set locked to 0 the door open and to 1 the door close OBJECT::_9B12F9A24FABEDB0(${prop_gate_prison_01}, 1845.0, 2605.0, 45.0, 0, 0.0, 50.0, 0); //door open OBJECT::_9B12F9A24FABEDB0(${prop_gate_prison_01}, 1845.0, 2605.0, 45.0, 1, 0.0, 50.0, 0); //door close
_0x006E4B040ED37EC3
void OBJECT::_0x006E4B040ED37EC3(Any p0) // 0x006E4B040ED37EC3 b1868
ADD_DOOR_TO_SYSTEM
void OBJECT::ADD_DOOR_TO_SYSTEM(Hash doorHash, Hash modelHash, float x, float y, float z, BOOL p5, BOOL scriptDoor, BOOL isLocal) // 0x6F8838D03D1DC226 0x9D2D778D b323
doorHash has to be unique. scriptDoor false; relies upon getNetworkGameScriptHandler. isLocal On true disables the creation CRequestDoorEvent's in DOOR_SYSTEM_SET_DOOR_STATE. p5 only set to true in single player native scripts. If scriptDoor is true, register the door on the script handler host (note: there's a hardcap on the number of script IDs that can be added to the system at a given time). If scriptDoor and isLocal are both false, the door is considered to be in a "Persists w/o netobj" state. door hashes normally look like PROP_[int]_DOOR_[int] for interior doors and PROP_BUILDING_[int]_DOOR_[int] exterior doors but you can just make up your own hash if you want All doors need to be registered with ADD_DOOR_TO_SYSTEM before they can be manipulated with the door natives and the easiest way to get door models is just find the door in codewalker. Example: AddDoorToSystem("PROP_43_DOOR_0", "hei_v_ilev_fh_heistdoor2", -1456.818, -520.5037, 69.67043, 0, 0, 0)
REMOVE_DOOR_FROM_SYSTEM
void OBJECT::REMOVE_DOOR_FROM_SYSTEM(Hash doorHash) // 0x464D8E1427156FE4 0x00253286 b323
CDoor and CDoorSystemData still internally allocated (and their associations between doorHash, modelHash, and coordinates). Only its NetObj removed and flag ``*(v2 + 192) |= 8u`` (1604 retail) toggled.
DOOR_SYSTEM_SET_DOOR_STATE
void OBJECT::DOOR_SYSTEM_SET_DOOR_STATE(Hash doorHash, int state, BOOL requestDoor, BOOL forceUpdate) // 0x6BAB9442830C7F53 0xDF83DB47 b323
Lockstates not applied and CNetObjDoor's not created until DOOR_SYSTEM_GET_IS_PHYSICS_LOADED returns true. `requestDoor` on true, and when door system is configured to, i.e., "persists w/o netobj", generate a CRequestDoorEvent. `forceUpdate` on true, forces an update on the door system (same path as netObjDoor_applyDoorStuff) Door lock states: 0: UNLOCKED 1: LOCKED 2: DOORSTATE_FORCE_LOCKED_UNTIL_OUT_OF_AREA 3: DOORSTATE_FORCE_UNLOCKED_THIS_FRAME 4: DOORSTATE_FORCE_LOCKED_THIS_FRAME 5: DOORSTATE_FORCE_OPEN_THIS_FRAME 6: DOORSTATE_FORCE_CLOSED_THIS_FRAME
DOOR_SYSTEM_GET_DOOR_STATE
int OBJECT::DOOR_SYSTEM_GET_DOOR_STATE(Hash doorHash) // 0x160AA1B32F6139B8 0xD42A41C2 b323
DOOR_SYSTEM_GET_DOOR_PENDING_STATE
int OBJECT::DOOR_SYSTEM_GET_DOOR_PENDING_STATE(Hash doorHash) // 0x4BC2854478F3A749 0xD649B7E1 b323
DOOR_SYSTEM_SET_AUTOMATIC_RATE
void OBJECT::DOOR_SYSTEM_SET_AUTOMATIC_RATE(Hash doorHash, float rate, BOOL requestDoor, BOOL forceUpdate) // 0x03C27E13B42A0E82 0x4F44AF21 b323
Includes networking check: ownership vs. or the door itself **isn't** networked. `forceUpdate` on true invokes DOOR_SYSTEM_SET_DOOR_STATE otherwise requestDoor is unused.
DOOR_SYSTEM_SET_AUTOMATIC_DISTANCE
void OBJECT::DOOR_SYSTEM_SET_AUTOMATIC_DISTANCE(Hash doorHash, float distance, BOOL requestDoor, BOOL forceUpdate) // 0x9BA001CB45CBF627 0x47531446 b323
`forceUpdate` on true invokes DOOR_SYSTEM_SET_DOOR_STATE otherwise requestDoor is unused.
DOOR_SYSTEM_SET_OPEN_RATIO
void OBJECT::DOOR_SYSTEM_SET_OPEN_RATIO(Hash doorHash, float ajar, BOOL requestDoor, BOOL forceUpdate) // 0xB6E6FBA95C7324AC 0x34883DE3 b323
Sets the ajar angle of a door. Ranges from -1.0 to 1.0, and 0.0 is closed / default. `forceUpdate` on true invokes DOOR_SYSTEM_SET_DOOR_STATE otherwise requestDoor is unused.
_0xE851471AEFC3374F
Any OBJECT::_0xE851471AEFC3374F(Any p0) // 0xE851471AEFC3374F b1868
DOOR_SYSTEM_GET_OPEN_RATIO
float OBJECT::DOOR_SYSTEM_GET_OPEN_RATIO(Hash doorHash) // 0x65499865FCA6E5EC 0xB74C3BD7 b323
DOOR_SYSTEM_SET_SPRING_REMOVED
void OBJECT::DOOR_SYSTEM_SET_SPRING_REMOVED(Hash doorHash, BOOL removed, BOOL requestDoor, BOOL forceUpdate) // 0xC485E07E4F0B7958 0xB4A9A558 b323
Includes networking check: ownership vs. or the door itself **isn't** networked. `forceUpdate` on true invokes DOOR_SYSTEM_SET_DOOR_STATE otherwise requestDoor is unused.
DOOR_SYSTEM_SET_HOLD_OPEN
void OBJECT::DOOR_SYSTEM_SET_HOLD_OPEN(Hash doorHash, BOOL toggle) // 0xD9B71952F78A2640 0xECE58AE0 b323
Includes networking check: ownership vs. or the door itself **isn't** networked.
_0xA85A21582451E951
void OBJECT::_0xA85A21582451E951(Hash doorHash, BOOL p1) // 0xA85A21582451E951 0xF736227C b323
Some property related to gates. Native name between ``DOOR_SYSTEM_SET_AUTOMATIC_RATE`` and ``DOOR_SYSTEM_SET_DOOR_STATE``.
IS_DOOR_REGISTERED_WITH_SYSTEM
BOOL OBJECT::IS_DOOR_REGISTERED_WITH_SYSTEM(Hash doorHash) // 0xC153C43EA202C8C1 0x5AFCD8A1 b323
if (OBJECT::IS_DOOR_REGISTERED_WITH_SYSTEM(doorHash)) { OBJECT::REMOVE_DOOR_FROM_SYSTEM(doorHash); }
IS_DOOR_CLOSED
BOOL OBJECT::IS_DOOR_CLOSED(Hash doorHash) // 0xC531EE8A1145A149 0x48659CD7 b323
_0xC7F29CA00F46350E
void OBJECT::_0xC7F29CA00F46350E(BOOL p0) // 0xC7F29CA00F46350E 0x9BF33E41 b323
_0x701FDA1E82076BA4
void OBJECT::_0x701FDA1E82076BA4() // 0x701FDA1E82076BA4 0xF592AD10 b323
Clears the fields sets by 0xC7F29CA00F46350E (1604 retail: 0x1424A7A10, 0x1424A7A11) and iterates over the global CDoor's bucket-list. Related to its "Pre-networked state"?
DOOR_SYSTEM_GET_IS_PHYSICS_LOADED
BOOL OBJECT::DOOR_SYSTEM_GET_IS_PHYSICS_LOADED(Any p0) // 0xDF97CDD4FC08FD34 0x17FF9393 b323
DOOR_SYSTEM_FIND_EXISTING_DOOR
BOOL OBJECT::DOOR_SYSTEM_FIND_EXISTING_DOOR(float x, float y, float z, Hash modelHash, Hash* outDoorHash) // 0x589F80B325CC82C5 0xE9AE494F b323
Search radius: 0.5
IS_GARAGE_EMPTY
BOOL OBJECT::IS_GARAGE_EMPTY(Hash garageHash, BOOL p1, int p2) // 0x90E47239EA1980B8 0xA8B37DEA b323
IS_PLAYER_ENTIRELY_INSIDE_GARAGE
BOOL OBJECT::IS_PLAYER_ENTIRELY_INSIDE_GARAGE(Hash garageHash, Player player, float p2, int p3) // 0x024A60DEB0EA69F0 0xC33ED360 b323
IS_PLAYER_PARTIALLY_INSIDE_GARAGE
BOOL OBJECT::IS_PLAYER_PARTIALLY_INSIDE_GARAGE(Hash garageHash, Player player, int p2) // 0x1761DC5D8471CBAA 0x41924877 b323
ARE_ENTITIES_ENTIRELY_INSIDE_GARAGE
BOOL OBJECT::ARE_ENTITIES_ENTIRELY_INSIDE_GARAGE(Hash garageHash, BOOL p1, BOOL p2, BOOL p3, Any p4) // 0x85B6C850546FDDE2 0x4BD59750 b323
IS_ANY_ENTITY_ENTIRELY_INSIDE_GARAGE
BOOL OBJECT::IS_ANY_ENTITY_ENTIRELY_INSIDE_GARAGE(Hash garageHash, BOOL p1, BOOL p2, BOOL p3, Any p4) // 0x673ED815D6E323B7 0x7B44D659 b323
IS_OBJECT_ENTIRELY_INSIDE_GARAGE
BOOL OBJECT::IS_OBJECT_ENTIRELY_INSIDE_GARAGE(Hash garageHash, Entity entity, float p2, int p3) // 0x372EF6699146A1E4 0x142C8F76 b323
Despite the name, it does work for any entity type.
IS_OBJECT_PARTIALLY_INSIDE_GARAGE
BOOL OBJECT::IS_OBJECT_PARTIALLY_INSIDE_GARAGE(Hash garageHash, Entity entity, int p2) // 0xF0EED5A6BC7B237A 0x95A9AB2B b323
Despite the name, it does work for any entity type.
_CLEAR_GARAGE_AREA
void OBJECT::_CLEAR_GARAGE_AREA(Hash garageHash, BOOL isNetwork) // 0xDA05194260CDCDF9 b678
CLEAR_*
_0x190428512B240692
void OBJECT::_0x190428512B240692(Hash garageHash, BOOL vehicles, BOOL peds, BOOL objects, BOOL isNetwork) // 0x190428512B240692 0xA565E27E b323
CLEAR_*
_0x659F9D71F52843F8
void OBJECT::_0x659F9D71F52843F8(int id, BOOL toggle) // 0x659F9D71F52843F8 b1290
Sets a flag. A valid id is 0x157DC10D SET_FLAG_??
ENABLE_SAVING_IN_GARAGE
void OBJECT::ENABLE_SAVING_IN_GARAGE(Hash garageHash, BOOL toggle) // 0xF2E1A7133DD356A6 0x43BB7E48 b323
_0x66A49D021870FE88
void OBJECT::_0x66A49D021870FE88() // 0x66A49D021870FE88 0x6158959E b323
DOES_OBJECT_OF_TYPE_EXIST_AT_COORDS
BOOL OBJECT::DOES_OBJECT_OF_TYPE_EXIST_AT_COORDS(float x, float y, float z, float radius, Hash hash, BOOL p5) // 0xBFA48E2FF417213F 0x23FF2BA4 b323
p5 is usually 0.
IS_POINT_IN_ANGLED_AREA
BOOL OBJECT::IS_POINT_IN_ANGLED_AREA(float xPos, float yPos, float zPos, float x1, float y1, float z1, float x2, float y2, float z2, float width, BOOL debug, BOOL includeZ) // 0x2A70BAE8883E4C81 0x73BCFFDC b323
An angled area is an X-Z oriented rectangle with three parameters: 1. origin: the mid-point along a base edge of the rectangle; 2. extent: the mid-point of opposite base edge on the other Z; 3. width: the length of the base edge; (named derived from logging strings ``CNetworkRoadNodeWorldStateData``). The oriented rectangle can then be derived from the direction of the two points (``norm(origin - extent)``), its orthonormal, and the width, e.g: 1. golf_mp https://i.imgur.com/JhsQAK9.png 2. am_taxi https://i.imgur.com/TJWCZaT.jpg
SET_OBJECT_ALLOW_LOW_LOD_BUOYANCY
void OBJECT::SET_OBJECT_ALLOW_LOW_LOD_BUOYANCY(Object object, BOOL toggle) // 0x4D89D607CB3DD1D2 0x19B17769 b323
Overrides the climbing/blocking flags of the object, used in the native scripts mostly for "prop_dock_bouy_*"
SET_OBJECT_PHYSICS_PARAMS
void OBJECT::SET_OBJECT_PHYSICS_PARAMS(Object object, float weight, float p2, float p3, float p4, float p5, float gravity, float p7, float p8, float p9, float p10, float buoyancy) // 0xF6DF6E90DE7DF90F 0xE8D11C58 b323
Adjust the physics parameters of a prop, or otherwise known as "object". This is useful for simulated gravity. Other parameters seem to be unknown. p2: seems to be weight and gravity related. Higher value makes the obj fall faster. Very sensitive? p3: seems similar to p2 p4: makes obj fall slower the higher the value p5: similar to p4
GET_OBJECT_FRAGMENT_DAMAGE_HEALTH
float OBJECT::GET_OBJECT_FRAGMENT_DAMAGE_HEALTH(Any p0, BOOL p1) // 0xB6FBFD079B8D0596 0xF0B330AD b323
SET_ACTIVATE_OBJECT_PHYSICS_AS_SOON_AS_IT_IS_UNFROZEN
void OBJECT::SET_ACTIVATE_OBJECT_PHYSICS_AS_SOON_AS_IT_IS_UNFROZEN(Object object, BOOL toggle) // 0x406137F8EF90EAF5 0x3E263AE1 b323
IS_ANY_OBJECT_NEAR_POINT
BOOL OBJECT::IS_ANY_OBJECT_NEAR_POINT(float x, float y, float z, float range, BOOL p4) // 0x397DC58FF00298D1 0xE9E46941 b323
IS_OBJECT_NEAR_POINT
BOOL OBJECT::IS_OBJECT_NEAR_POINT(Hash objectHash, float x, float y, float z, float range) // 0x8C90FE4B381BA60A 0x50A62C43 b323
REMOVE_OBJECT_HIGH_DETAIL_MODEL
void OBJECT::REMOVE_OBJECT_HIGH_DETAIL_MODEL(Object object) // 0x4A39DB43E47CF3AA 0xE3261B35 b323
BREAK_OBJECT_FRAGMENT_CHILD
void OBJECT::BREAK_OBJECT_FRAGMENT_CHILD(Object p0, Any p1, BOOL p2) // 0xE7E4C198B0185900 0x1E82C2AE b323
_0xE05F6AEEFEB0BB02
void OBJECT::_0xE05F6AEEFEB0BB02(Any p0, Any p1, Any p2) // 0xE05F6AEEFEB0BB02 b1180
_0xF9C1681347C8BD15
void OBJECT::_0xF9C1681347C8BD15(Object object) // 0xF9C1681347C8BD15 b323
TRACK_OBJECT_VISIBILITY
void OBJECT::TRACK_OBJECT_VISIBILITY(Object object) // 0xB252BC036B525623 0x46D06B9A b323
IS_OBJECT_VISIBLE
BOOL OBJECT::IS_OBJECT_VISIBLE(Object object) // 0x8B32ACE6326A7546 0xF4FD8AE4 b323
_0xC6033D32241F6FB5
void OBJECT::_0xC6033D32241F6FB5(Object object, BOOL toggle) // 0xC6033D32241F6FB5 0xF4A1A14A b323
_0xEB6F1A9B5510A5D2
void OBJECT::_0xEB6F1A9B5510A5D2(Any p0, BOOL p1) // 0xEB6F1A9B5510A5D2 0xAF016CC1 b323
_SET_UNK_GLOBAL_BOOL_RELATED_TO_DAMAGE
void OBJECT::_SET_UNK_GLOBAL_BOOL_RELATED_TO_DAMAGE(BOOL value) // 0xABDABF4E1EDECBFA b1365
_SET_CREATE_WEAPON_OBJECT_LIGHT_SOURCE
void OBJECT::_SET_CREATE_WEAPON_OBJECT_LIGHT_SOURCE(Object object, BOOL toggle) // 0xBCE595371A5FBAAF 0x3A68AA46 b323
Requires a component_at_*_flsh to be attached to the weapon object
GET_RAYFIRE_MAP_OBJECT
Object OBJECT::GET_RAYFIRE_MAP_OBJECT(float x, float y, float z, float radius, const char* name) // 0xB48FCED898292E52 0xA286DE96 b323
Example: OBJECT::GET_RAYFIRE_MAP_OBJECT(-809.9619750976562, 170.919, 75.7406997680664, 3.0, "des_tvsmash");
SET_STATE_OF_RAYFIRE_MAP_OBJECT
void OBJECT::SET_STATE_OF_RAYFIRE_MAP_OBJECT(Object object, int state) // 0x5C29F698D404C5E1 0x21F51560 b323
Defines the state of a destructible object. Use the GET_RAYFIRE_MAP_OBJECT native to find an object's handle with its name / coords. State 2 == object just spawned State 4 == Beginning of the animation State 6 == Start animation State 9 == End of the animation
GET_STATE_OF_RAYFIRE_MAP_OBJECT
int OBJECT::GET_STATE_OF_RAYFIRE_MAP_OBJECT(Object object) // 0x899BA936634A322E 0xF1B8817A b323
Get a destructible object's state. Substract 1 to get the real state. See SET_STATE_OF_RAYFIRE_MAP_OBJECT to see the different states For example, if the object just spawned (state 2), the native will return 3.
DOES_RAYFIRE_MAP_OBJECT_EXIST
BOOL OBJECT::DOES_RAYFIRE_MAP_OBJECT_EXIST(Object object) // 0x52AF537A0C5B8AAD 0xE08C834D b323
Returns true if a destructible object with this handle exists, false otherwise.
GET_RAYFIRE_MAP_OBJECT_ANIM_PHASE
float OBJECT::GET_RAYFIRE_MAP_OBJECT_ANIM_PHASE(Object object) // 0x260EE4FDBDF4DB01 0x020497DE b323
`object`: The des-object handle to get the animation progress from. Return value is a float between 0.0 and 1.0, 0.0 is the beginning of the animation, 1.0 is the end. Value resets to 0.0 instantly after reaching 1.0.
CREATE_PICKUP
Pickup OBJECT::CREATE_PICKUP(Hash pickupHash, float posX, float posY, float posZ, int p4, int value, BOOL p6, Hash modelHash) // 0xFBA08C503DD5FA58 0x5E14DF68 b323
Pickup hashes: pastebin.com/8EuSv2r1 Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
CREATE_PICKUP_ROTATE
Pickup OBJECT::CREATE_PICKUP_ROTATE(Hash pickupHash, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, int flag, int amount, Any p9, BOOL p10, Hash modelHash) // 0x891804727E0A98B7 0xF015BFE2 b323
Pickup hashes: pastebin.com/8EuSv2r1 flags: 8 (1 << 3): place on ground 512 (1 << 9): spin around Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
_0x394CD08E31313C28
void OBJECT::_0x394CD08E31313C28() // 0x394CD08E31313C28 b944
_0x826D1EE4D1CAFC78
void OBJECT::_0x826D1EE4D1CAFC78(Any p0, Any p1) // 0x826D1EE4D1CAFC78 b505
CREATE_AMBIENT_PICKUP
Pickup OBJECT::CREATE_AMBIENT_PICKUP(Hash pickupHash, float posX, float posY, float posZ, int flags, int value, Hash modelHash, BOOL p7, BOOL p8) // 0x673966A0C0FD7171 0x17B99CE7 b323
Used for doing money drop Pickup hashes: pastebin.com/8EuSv2r1 Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
_0x1E3F1B1B891A2AAA
void OBJECT::_0x1E3F1B1B891A2AAA(Any p0, Any p1) // 0x1E3F1B1B891A2AAA b573
CREATE_PORTABLE_PICKUP
Object OBJECT::CREATE_PORTABLE_PICKUP(Hash pickupHash, float x, float y, float z, BOOL placeOnGround, Hash modelHash) // 0x2EAF1FDB2FB55698 0x8C886BE5 b323
Pickup hashes: pastebin.com/8EuSv2r1 Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
_CREATE_PORTABLE_PICKUP_2
Object OBJECT::_CREATE_PORTABLE_PICKUP_2(Hash pickupHash, float x, float y, float z, BOOL placeOnGround, Hash modelHash) // 0x125494B98A21AAF7 0x56A02502 b323
CREATE_* Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
ATTACH_PORTABLE_PICKUP_TO_PED
void OBJECT::ATTACH_PORTABLE_PICKUP_TO_PED(Object pickupObject, Ped ped) // 0x8DC39368BDD57755 0x184F6AB3 b323
DETACH_PORTABLE_PICKUP_FROM_PED
void OBJECT::DETACH_PORTABLE_PICKUP_FROM_PED(Object pickupObject) // 0xCF463D1E9A0AECB1 0x1D094562 b323
_HIDE_PICKUP
void OBJECT::_HIDE_PICKUP(Object pickupObject, BOOL toggle) // 0x867458251D47CCB2 b463
SET_MAX_NUM_PORTABLE_PICKUPS_CARRIED_BY_PLAYER
void OBJECT::SET_MAX_NUM_PORTABLE_PICKUPS_CARRIED_BY_PLAYER(Hash modelHash, int p1) // 0x0BF3B3BD47D79C08 0x7EFBA039 b323
SET_LOCAL_PLAYER_CAN_COLLECT_PORTABLE_PICKUPS
void OBJECT::SET_LOCAL_PLAYER_CAN_COLLECT_PORTABLE_PICKUPS(BOOL p0) // 0x78857FC65CADB909 0xA3CDF152 b323
GET_SAFE_PICKUP_COORDS
Vector3 OBJECT::GET_SAFE_PICKUP_COORDS(float x, float y, float z, float p3, float p4) // 0x6E16BC2503FF1FF0 0x618B5F67 b323
_0xD4A7A435B3710D05
void OBJECT::_0xD4A7A435B3710D05(float x, float y, float z, float radius) // 0xD4A7A435B3710D05 b1290
Adds an area that seems to be related to pickup physics behavior. Max amount of areas is 10. Only works in multiplayer. ADD_*
_0xB7C6D80FB371659A
void OBJECT::_0xB7C6D80FB371659A() // 0xB7C6D80FB371659A b1290
Clears all areas created by 0xD4A7A435B3710D05 CLEAR_*
GET_PICKUP_COORDS
Vector3 OBJECT::GET_PICKUP_COORDS(Pickup pickup) // 0x225B8B35C88029B3 0xC2E1E2C5 b323
_0x8DCA505A5C196F05
void OBJECT::_0x8DCA505A5C196F05(Any p0, Any p1) // 0x8DCA505A5C196F05 b1180
REMOVE_ALL_PICKUPS_OF_TYPE
void OBJECT::REMOVE_ALL_PICKUPS_OF_TYPE(Hash pickupHash) // 0x27F9D613092159CF 0x40062C53 b323
Pickup hashes: pastebin.com/8EuSv2r1 Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
HAS_PICKUP_BEEN_COLLECTED
BOOL OBJECT::HAS_PICKUP_BEEN_COLLECTED(Pickup pickup) // 0x80EC48E6679313F9 0x0BE5CCED b323
REMOVE_PICKUP
void OBJECT::REMOVE_PICKUP(Pickup pickup) // 0x3288D8ACAECD2AB2 0x64A7A0E0 b323
CREATE_MONEY_PICKUPS
void OBJECT::CREATE_MONEY_PICKUPS(float x, float y, float z, int value, int amount, Hash model) // 0x0589B5E791CE9B2B 0x36C9A5EA b323
Spawns one or more money pickups. x: The X-component of the world position to spawn the money pickups at. y: The Y-component of the world position to spawn the money pickups at. z: The Z-component of the world position to spawn the money pickups at. value: The combined value of the pickups (in dollars). amount: The number of pickups to spawn. model: The model to use, or 0 for default money model. Example: CREATE_MONEY_PICKUPS(x, y, z, 1000, 3, 0x684a97ae); Spawns 3 spray cans that'll collectively give $1000 when picked up. (Three spray cans, each giving $334, $334, $332 = $1000). ============================================== Max is 2000 in MP. So if you put the amount to 20, but the value to $400,000 eg. They will only be able to pickup 20 - $2,000 bags. So, $40,000
DOES_PICKUP_EXIST
BOOL OBJECT::DOES_PICKUP_EXIST(Pickup pickup) // 0xAFC1CA75AD4074D1 0x9C6DA0B3 b323
DOES_PICKUP_OBJECT_EXIST
BOOL OBJECT::DOES_PICKUP_OBJECT_EXIST(Object pickupObject) // 0xD9EFB6DBF7DAAEA3 0xE0B32108 b323
GET_PICKUP_OBJECT
Object OBJECT::GET_PICKUP_OBJECT(Pickup pickup) // 0x5099BC55630B25AE 0x6052E62E b323
IS_OBJECT_A_PORTABLE_PICKUP
BOOL OBJECT::IS_OBJECT_A_PORTABLE_PICKUP(Object object) // 0xFC481C641EBBD27D 0x0F0E94FF b1365
IS_OBJECT_A_PICKUP
BOOL OBJECT::IS_OBJECT_A_PICKUP(Object object) // 0x0378C08504160D0D 0x93D23399 b323
DOES_PICKUP_OF_TYPE_EXIST_IN_AREA
BOOL OBJECT::DOES_PICKUP_OF_TYPE_EXIST_IN_AREA(Hash pickupHash, float x, float y, float z, float radius) // 0xF9C36251F6E48E33 0xF139681B b323
Pickup hashes: pastebin.com/8EuSv2r1 Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
SET_PICKUP_REGENERATION_TIME
void OBJECT::SET_PICKUP_REGENERATION_TIME(Pickup pickup, int duration) // 0x78015C9B4B3ECC9D 0xAB11267D b323
FORCE_PICKUP_REGENERATE
void OBJECT::FORCE_PICKUP_REGENERATE(Any p0) // 0x758A5C1B3B1E1990 b1011
_TOGGLE_USE_PICKUPS_FOR_PLAYER
void OBJECT::_TOGGLE_USE_PICKUPS_FOR_PLAYER(Player player, Hash pickupHash, BOOL toggle) // 0x616093EC6B139DD9 0x7FADB4B9 b323
Disabling/enabling a player from getting pickups. From the scripts: OBJECT::_616093EC6B139DD9(PLAYER::PLAYER_ID(), ${pickup_portable_package}, 0); OBJECT::_616093EC6B139DD9(PLAYER::PLAYER_ID(), ${pickup_portable_package}, 0); OBJECT::_616093EC6B139DD9(PLAYER::PLAYER_ID(), ${pickup_portable_package}, 1); OBJECT::_616093EC6B139DD9(PLAYER::PLAYER_ID(), ${pickup_portable_package}, 0); OBJECT::_616093EC6B139DD9(PLAYER::PLAYER_ID(), ${pickup_armour_standard}, 0); OBJECT::_616093EC6B139DD9(PLAYER::PLAYER_ID(), ${pickup_armour_standard}, 1); SET_PLAYER_* Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
_SET_LOCAL_PLAYER_CAN_USE_PICKUPS_WITH_THIS_MODEL
void OBJECT::_SET_LOCAL_PLAYER_CAN_USE_PICKUPS_WITH_THIS_MODEL(Hash modelHash, BOOL toggle) // 0x88EAEC617CD26926 0x3A8F1BF7 b323
Maximum amount of pickup models that can be disallowed is 30. SET_LOCAL_PLAYER_*
_0xFDC07C58E8AAB715
void OBJECT::_0xFDC07C58E8AAB715(Hash pickupHash) // 0xFDC07C58E8AAB715 b1734
A* Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
SET_TEAM_PICKUP_OBJECT
void OBJECT::SET_TEAM_PICKUP_OBJECT(Object object, Any p1, BOOL p2) // 0x53E0DF1A2A3CF0CA 0x77687DC5 b323
PREVENT_COLLECTION_OF_PORTABLE_PICKUP
void OBJECT::PREVENT_COLLECTION_OF_PORTABLE_PICKUP(Object object, BOOL p1, BOOL p2) // 0x92AEFB5F6E294023 0xCBB5F9B6 b323
_0x0596843B34B95CE5
void OBJECT::_0x0596843B34B95CE5(Any p0, Any p1) // 0x0596843B34B95CE5 b505
_0xA08FE5E49BDC39DD
void OBJECT::_0xA08FE5E49BDC39DD(Any p0, float p1, BOOL p2) // 0xA08FE5E49BDC39DD 0x276A7807 b323
_0x62454A641B41F3C5
void OBJECT::_0x62454A641B41F3C5(Any p0) // 0x62454A641B41F3C5 b678
_0x39A5FB7EAF150840
void OBJECT::_0x39A5FB7EAF150840(Any p0, Any p1) // 0x39A5FB7EAF150840 b678
_0xDB41D07A45A6D4B7
Any OBJECT::_0xDB41D07A45A6D4B7(Any p0) // 0xDB41D07A45A6D4B7 0x000E92DC b323
SET_PICKUP_GENERATION_RANGE_MULTIPLIER
void OBJECT::SET_PICKUP_GENERATION_RANGE_MULTIPLIER(float multiplier) // 0x318516E02DE3ECE2 0x9879AC51 b323
_GET_PICKUP_GENERATION_RANGE_MULTIPLIER
float OBJECT::_GET_PICKUP_GENERATION_RANGE_MULTIPLIER() // 0xB3ECA65C7317F174 b944
_0x31F924B53EADDF65
void OBJECT::_0x31F924B53EADDF65(BOOL p0) // 0x31F924B53EADDF65 0xDB18FA01 b323
SET_PICKUP_UNCOLLECTABLE
void OBJECT::SET_PICKUP_UNCOLLECTABLE(Any p0, Any p1) // 0x1C1B69FAE509BA97 b757
_0x858EC9FD25DE04AA
void OBJECT::_0x858EC9FD25DE04AA(Any p0, Any p1) // 0x858EC9FD25DE04AA b757
SET_PICKUP_HIDDEN_WHEN_UNCOLLECTABLE
void OBJECT::SET_PICKUP_HIDDEN_WHEN_UNCOLLECTABLE(Any p0, Any p1) // 0x3ED2B83AB2E82799 b757
_0x8881C98A31117998
void OBJECT::_0x8881C98A31117998(Any p0, Any p1) // 0x8881C98A31117998 b678
_0x8CFF648FBD7330F1
void OBJECT::_0x8CFF648FBD7330F1(Any p0) // 0x8CFF648FBD7330F1 b757
_0x46F3ADD1E2D5BAF2
void OBJECT::_0x46F3ADD1E2D5BAF2(Any p0, Any p1) // 0x46F3ADD1E2D5BAF2 b877
_0x641F272B52E2F0F8
void OBJECT::_0x641F272B52E2F0F8(Any p0, Any p1) // 0x641F272B52E2F0F8 b877
_0x4C134B4DF76025D0
void OBJECT::_0x4C134B4DF76025D0(Pickup pickup, BOOL toggle) // 0x4C134B4DF76025D0 b1180
Sets some bit of pickup SET_PICKUP_*
_0xAA059C615DE9DD03
void OBJECT::_0xAA059C615DE9DD03(Pickup pickup, BOOL toggle) // 0xAA059C615DE9DD03 b1180
Sets some value of pickup SET_PICKUP_*
_0xF92099527DB8E2A7
void OBJECT::_0xF92099527DB8E2A7(Any p0, Any p1) // 0xF92099527DB8E2A7 0xA7E936FD b323
_0xA2C1F5E92AFE49ED
void OBJECT::_0xA2C1F5E92AFE49ED() // 0xA2C1F5E92AFE49ED 0xB241806C b323
CLEAR_*
_0x762DB2D380B48D04
void OBJECT::_0x762DB2D380B48D04(Any p0) // 0x762DB2D380B48D04 0xD1BAAFB7 b323
RENDER_FAKE_PICKUP_GLOW
void OBJECT::RENDER_FAKE_PICKUP_GLOW(float x, float y, float z, int colorIndex) // 0x3430676B11CDF21D 0x63B02FAD b323
draws circular marker at pos -1 = none 0 = red 1 = green 2 = blue 3 = green larger 4 = nothing 5 = green small
_0x7813E8B8C4AE4799
void OBJECT::_0x7813E8B8C4AE4799(Pickup pickup) // 0x7813E8B8C4AE4799 b1734
SET_PICKUP_*
_0xBFFE53AE7E67FCDC
void OBJECT::_0xBFFE53AE7E67FCDC(Pickup pickup, BOOL toggle) // 0xBFFE53AE7E67FCDC b1290
Sets some pickup flag? SET_PICKUP_*
_0xD05A3241B9A86F19
void OBJECT::_0xD05A3241B9A86F19(Entity entity, BOOL toggle) // 0xD05A3241B9A86F19 b1180
Sets entity+38 to C (when false) or 0xFF3f (when true) SET_ENTITY_??
_0xB2D0BDE54F0E8E5A
void OBJECT::_0xB2D0BDE54F0E8E5A(Object object, BOOL toggle) // 0xB2D0BDE54F0E8E5A 0x132B6D92 b323
GET_WEAPON_TYPE_FROM_PICKUP_TYPE
Hash OBJECT::GET_WEAPON_TYPE_FROM_PICKUP_TYPE(Hash pickupHash) // 0x08F96CA6C551AD51 0xEDD01937 b323
Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
_GET_PICKUP_HASH_FROM_WEAPON
Hash OBJECT::_GET_PICKUP_HASH_FROM_WEAPON(Hash weaponHash) // 0xD6429A016084F1A5 b1290
Returns the pickup hash for the given weapon hash
IS_PICKUP_WEAPON_OBJECT_VALID
BOOL OBJECT::IS_PICKUP_WEAPON_OBJECT_VALID(Object object) // 0x11D1E53A726891FE 0x883DAB2D b323
_GET_OBJECT_TEXTURE_VARIATION
int OBJECT::_GET_OBJECT_TEXTURE_VARIATION(Object object) // 0xE84EB93729C5F36A b757
_SET_OBJECT_TEXTURE_VARIATION
void OBJECT::_SET_OBJECT_TEXTURE_VARIATION(Object object, int textureVariation) // 0x971DA0055324D033 b323
enum ObjectPaintVariants { Pacific = 0, Azure = 1, Nautical = 2, Continental = 3, Battleship = 4, Intrepid = 5, Uniform = 6, Classico = 7, Mediterranean = 8, Command = 9, Mariner = 10, Ruby = 11, Vintage = 12, Pristine = 13, Merchant = 14, Voyager = 15 };
_SET_TEXTURE_VARIATION_OF_CLOSEST_OBJECT_OF_TYPE
BOOL OBJECT::_SET_TEXTURE_VARIATION_OF_CLOSEST_OBJECT_OF_TYPE(float x, float y, float z, float radius, Hash modelHash, int textureVariation) // 0xF12E33034D887F66 b1103
_0x31574B1B41268673
void OBJECT::_0x31574B1B41268673(Any p0, Any p1) // 0x31574B1B41268673 b2189
_SET_OBJECT_LIGHT_COLOR
Any OBJECT::_SET_OBJECT_LIGHT_COLOR(Object object, BOOL p1, int r, int g, int b) // 0x5F048334B4A4E774 b1493
_0xADF084FB8F075D06
BOOL OBJECT::_0xADF084FB8F075D06(Object object) // 0xADF084FB8F075D06 b1604
GET_OBJECT_??
_0x3B2FD68DB5F8331C
void OBJECT::_0x3B2FD68DB5F8331C(Object object, BOOL toggle) // 0x3B2FD68DB5F8331C b757
SET_OBJECT_*
_SET_OBJECT_STUNT_PROP_SPEEDUP
void OBJECT::_SET_OBJECT_STUNT_PROP_SPEEDUP(Object object, Any p1) // 0x96EE0EBA0163DF80 b791
_SET_OBJECT_STUNT_PROP_DURATION
void OBJECT::_SET_OBJECT_STUNT_PROP_DURATION(Object object, float duration) // 0xDF6CA0330F2E737B b791
_GET_PICKUP_HASH
Hash OBJECT::_GET_PICKUP_HASH(Hash pickupHash) // 0x5EAAD83F8CFB4575 0x6AE36192 b323
returns pickup hash. Full list of pickup types by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pickupTypes.json
SET_FORCE_OBJECT_THIS_FRAME
void OBJECT::SET_FORCE_OBJECT_THIS_FRAME(float x, float y, float z, float p3) // 0xF538081986E49E9D 0x3DA41C1A b323
_MARK_OBJECT_FOR_DELETION
void OBJECT::_MARK_OBJECT_FOR_DELETION(Object object) // 0xADBE4809F19F927A 0x2048A7DD b323
is this like setting is as no longer needed?
_0x8CAAB2BD3EA58BD4
void OBJECT::_0x8CAAB2BD3EA58BD4(Any p0) // 0x8CAAB2BD3EA58BD4 b1011
_0x63ECF581BC70E363
void OBJECT::_0x63ECF581BC70E363(Any p0, Any p1) // 0x63ECF581BC70E363 b1365
_SET_ENABLE_ARENA_PROP_PHYSICS
void OBJECT::_SET_ENABLE_ARENA_PROP_PHYSICS(Object object, BOOL toggle, int p2) // 0x911024442F4898F0 b1604
Activate the physics to: "xs_prop_arena_{flipper,wall,bollard,turntable,pit}"
_SET_ENABLE_ARENA_PROP_PHYSICS_ON_PED
void OBJECT::_SET_ENABLE_ARENA_PROP_PHYSICS_ON_PED(Object object, BOOL toggle, int p2, Ped ped) // 0xB20834A7DD3D8896 b1604
_0x734E1714D077DA9A
void OBJECT::_0x734E1714D077DA9A(Object object, BOOL toggle) // 0x734E1714D077DA9A b1604
Sets some bit of object SET_OBJECT_*
_0x1A6CBB06E2D0D79D
void OBJECT::_0x1A6CBB06E2D0D79D(Object object, BOOL p1) // 0x1A6CBB06E2D0D79D b1604
Sets some bit of object SET_OBJECT_*
_GET_IS_ARENA_PROP_PHYSICS_DISABLED
BOOL OBJECT::_GET_IS_ARENA_PROP_PHYSICS_DISABLED(Object object, Any p1) // 0x43C677F1E1158005 b1604
_0x3BD770D281982DB5
Any OBJECT::_0x3BD770D281982DB5(Any p0, Any p1) // 0x3BD770D281982DB5 b1604
_0x1C57C94A6446492A
void OBJECT::_0x1C57C94A6446492A(Object object, BOOL toggle) // 0x1C57C94A6446492A b1604
Sets some flag of object SET_OBJECT_*
_0xB5B7742424BD4445
void OBJECT::_0xB5B7742424BD4445(Object object, BOOL toggle) // 0xB5B7742424BD4445 b1604
Sets some bit of object SET_OBJECT_*
PAD
IS_CONTROL_ENABLED
BOOL PAD::IS_CONTROL_ENABLED(int padIndex, int control) // 0x1CEA6BFDF248E5D9 0x9174AF84 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_CONTROL_PRESSED
BOOL PAD::IS_CONTROL_PRESSED(int padIndex, int control) // 0xF3A21BCD95725A4A 0x517A4384 b323
Returns whether a control is currently pressed. padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_CONTROL_RELEASED
BOOL PAD::IS_CONTROL_RELEASED(int padIndex, int control) // 0x648EE3E7F38877DD 0x1F91A06E b323
Returns whether a control is currently _not_ pressed. padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_CONTROL_JUST_PRESSED
BOOL PAD::IS_CONTROL_JUST_PRESSED(int padIndex, int control) // 0x580417101DDB492F 0x4487F579 b323
Returns whether a control was newly pressed since the last check. padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_CONTROL_JUST_RELEASED
BOOL PAD::IS_CONTROL_JUST_RELEASED(int padIndex, int control) // 0x50F940259D3841E6 0x2314444B b323
Returns whether a control was newly released since the last check. padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
GET_CONTROL_VALUE
int PAD::GET_CONTROL_VALUE(int padIndex, int control) // 0xD95E79E8686D2C27 0xC526F3C6 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
GET_CONTROL_NORMAL
float PAD::GET_CONTROL_NORMAL(int padIndex, int control) // 0xEC3C9B8D5327B563 0x5DE226A5 b323
Returns the value of GET_CONTROL_VALUE normalized (i.e. a real number value between -1 and 1) padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
_0x5B73C77D9EB66E24
void PAD::_0x5B73C77D9EB66E24(BOOL p0) // 0x5B73C77D9EB66E24 b323
GET_CONTROL_UNBOUND_NORMAL
float PAD::GET_CONTROL_UNBOUND_NORMAL(int padIndex, int control) // 0x5B84D09CEC5209C5 0xC49343BB b323
Seems to return values between -1 and 1 for controls like gas and steering. padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
_SET_CONTROL_NORMAL
BOOL PAD::_SET_CONTROL_NORMAL(int padIndex, int control, float amount) // 0xE8A25867FBA3B05E b323
This is for simulating player input. amount is a float value from 0 - 1 padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_DISABLED_CONTROL_PRESSED
BOOL PAD::IS_DISABLED_CONTROL_PRESSED(int padIndex, int control) // 0xE2587F8CBBD87B1D 0x32A93544 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_DISABLED_CONTROL_RELEASED
BOOL PAD::IS_DISABLED_CONTROL_RELEASED(int padIndex, int control) // 0xFB6C4072E9A32E92 b757
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_DISABLED_CONTROL_JUST_PRESSED
BOOL PAD::IS_DISABLED_CONTROL_JUST_PRESSED(int padIndex, int control) // 0x91AEF906BCA88877 0xEE6ABD32 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
IS_DISABLED_CONTROL_JUST_RELEASED
BOOL PAD::IS_DISABLED_CONTROL_JUST_RELEASED(int padIndex, int control) // 0x305C8DCD79DA8B0F 0xD6A679E1 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
GET_DISABLED_CONTROL_NORMAL
float PAD::GET_DISABLED_CONTROL_NORMAL(int padIndex, int control) // 0x11E65974A982637C 0x66FF4FAA b323
control - c# works with (int)GTA.Control.CursorY / (int)GTA.Control.CursorX and returns the mouse movement (additive). padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
GET_DISABLED_CONTROL_UNBOUND_NORMAL
float PAD::GET_DISABLED_CONTROL_UNBOUND_NORMAL(int padIndex, int control) // 0x4F8A26A890FD62FB 0xF2A65A4C b323
The "disabled" variant of _0x5B84D09CEC5209C5. padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
_0xD7D22F5592AED8BA
int PAD::_0xD7D22F5592AED8BA(int p0) // 0xD7D22F5592AED8BA 0x0E8EF929 b323
_IS_USING_KEYBOARD
BOOL PAD::_IS_USING_KEYBOARD(int padIndex) // 0xA571D46727E2B718 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts. Used to be known as _GET_LAST_INPUT_METHOD & _IS_INPUT_DISABLED
_IS_USING_KEYBOARD_2
BOOL PAD::_IS_USING_KEYBOARD_2(int padIndex) // 0x13337B38DB572509 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts. Used to be known as _IS_INPUT_JUST_DISABLED
_SET_CURSOR_LOCATION
BOOL PAD::_SET_CURSOR_LOCATION(float x, float y) // 0xFC695459D4D0E219 b323
_0x23F09EADC01449D6
BOOL PAD::_0x23F09EADC01449D6(int padIndex) // 0x23F09EADC01449D6 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts. Hardcoded to return false.
_0x6CD79468A1E595C6
BOOL PAD::_0x6CD79468A1E595C6(int padIndex) // 0x6CD79468A1E595C6 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
GET_CONTROL_INSTRUCTIONAL_BUTTON
const char* PAD::GET_CONTROL_INSTRUCTIONAL_BUTTON(int padIndex, int control, BOOL p2) // 0x0499D7B09FC9B407 0x3551727A b323
formerly called _GET_CONTROL_ACTION_NAME incorrectly p2 appears to always be true. p2 is unused variable in function. EG: GET_CONTROL_INSTRUCTIONAL_BUTTON (2, 201, 1) /*INPUT_FRONTEND_ACCEPT (e.g. Enter button)*/ GET_CONTROL_INSTRUCTIONAL_BUTTON (2, 202, 1) /*INPUT_FRONTEND_CANCEL (e.g. ESC button)*/ GET_CONTROL_INSTRUCTIONAL_BUTTON (2, 51, 1) /*INPUT_CONTEXT (e.g. E button)*/ gtaforums.com/topic/819070-c-draw-instructional-buttons-scaleform-movie/#entry1068197378 padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
GET_CONTROL_GROUP_INSTRUCTIONAL_BUTTON
const char* PAD::GET_CONTROL_GROUP_INSTRUCTIONAL_BUTTON(int padIndex, int controlGroup, BOOL p2) // 0x80C2FD58D720C801 0x3EE71F6A b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
SET_CONTROL_LIGHT_EFFECT_COLOR
void PAD::SET_CONTROL_LIGHT_EFFECT_COLOR(int padIndex, int red, int green, int blue) // 0x8290252FFF36ACB5 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
_0xCB0360EFEFB2580D
void PAD::_0xCB0360EFEFB2580D(int padIndex) // 0xCB0360EFEFB2580D b323
SET_PAD_SHAKE
void PAD::SET_PAD_SHAKE(int padIndex, int duration, int frequency) // 0x48B3886C1358D0D5 0x5D38BD2F b323
padIndex always seems to be 0 duration in milliseconds frequency should range from about 10 (slow vibration) to 255 (very fast) appears to be a hash collision, though it does do what it says example: SET_PAD_SHAKE(0, 100, 200);
_0x14D29BB12D47F68C
void PAD::_0x14D29BB12D47F68C(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x14D29BB12D47F68C b323
Does nothing (it's a nullsub).
STOP_PAD_SHAKE
void PAD::STOP_PAD_SHAKE(int padIndex) // 0x38C16A305E8CDC8D 0x8F75657E b323
_0xF239400E16C23E08
void PAD::_0xF239400E16C23E08(Any p0, Any p1) // 0xF239400E16C23E08 0x7D65EB6E b323
_0xA0CEFCEA390AAB9B
void PAD::_0xA0CEFCEA390AAB9B(Any p0) // 0xA0CEFCEA390AAB9B b323
IS_LOOK_INVERTED
BOOL PAD::IS_LOOK_INVERTED() // 0x77B612531280010D 0x313434B2 b323
_0xE1615EC03B3BB4FD
BOOL PAD::_0xE1615EC03B3BB4FD() // 0xE1615EC03B3BB4FD b323
Used with IS_LOOK_INVERTED() and negates its affect. -- Not sure how the person above got that description, but here's an actual example: if (PAD::_GET_LAST_INPUT_METHOD(2)) { if (a_5) { if (PAD::IS_LOOK_INVERTED()) { a_3 *= -1; } if (PAD::_E1615EC03B3BB4FD()) { a_3 *= -1; } } }
GET_LOCAL_PLAYER_AIM_STATE
int PAD::GET_LOCAL_PLAYER_AIM_STATE() // 0xBB41AFBBBC0A0287 0x81802053 b323
Returns the local player's targeting mode. See PLAYER::SET_PLAYER_TARGETING_MODE.
_GET_LOCAL_PLAYER_AIM_STATE_2
int PAD::_GET_LOCAL_PLAYER_AIM_STATE_2() // 0x59B9A7AF4C95133C b323
Same behavior as GET_LOCAL_PLAYER_AIM_STATE but only used on the PC version.
_0x25AAA32BDC98F2A3
Any PAD::_0x25AAA32BDC98F2A3() // 0x25AAA32BDC98F2A3 b1365
GET_IS_USING_ALTERNATE_DRIVEBY
BOOL PAD::GET_IS_USING_ALTERNATE_DRIVEBY() // 0x0F70731BACCFBB96 0xC1AFABD5 b323
Returns profile setting 225.
GET_ALLOW_MOVEMENT_WHILE_ZOOMED
BOOL PAD::GET_ALLOW_MOVEMENT_WHILE_ZOOMED() // 0xFC859E2374407556 0xC0823820 b323
Returns profile setting 17.
SET_PLAYERPAD_SHAKES_WHEN_CONTROLLER_DISABLED
void PAD::SET_PLAYERPAD_SHAKES_WHEN_CONTROLLER_DISABLED(BOOL toggle) // 0x798FDEB5B1575088 0xA86BD91F b323
SET_INPUT_EXCLUSIVE
void PAD::SET_INPUT_EXCLUSIVE(int padIndex, int control) // 0xEDE476E5EE29EDB1 0x4E8E29E6 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
DISABLE_CONTROL_ACTION
void PAD::DISABLE_CONTROL_ACTION(int padIndex, int control, BOOL disable) // 0xFE99B66D079CF6BC 0x3800C0DC b323
control values and meaning: github.com/crosire/scripthookvdotnet/blob/dev_v3/source/scripting/Controls.cs padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts. Control values from the decompiled scripts: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27, 28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,53,5 4,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78, 79,80,81,82,85,86,87,88,89,90,91,92,93,95,96,97,98,99,100,101,102,103,105, 107,108,109,110,111,112,113,114,115,116,117,118,119,123,126,129,130,131,132, 133,134,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152, 153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,171,172 ,177,187,188,189,190,195,196,199,200,201,202,203,205,207,208,209,211,212,213, 217,219,220,221,225,226,230,234,235,236,237,238,239,240,241,242,243,244,257, 261,262,263,264,265,270,271,272,273,274,278,279,280,281,282,283,284,285,286, 287,288,289,337. Example: PAD::DISABLE_CONTROL_ACTION(2, 19, true) disables the switching UI from appearing both when using a keyboard and Xbox 360 controller. Needs to be executed each frame. Control group 1 and 0 gives the same results as 2. Same results for all players.
ENABLE_CONTROL_ACTION
void PAD::ENABLE_CONTROL_ACTION(int padIndex, int control, BOOL enable) // 0x351220255D64C155 0xD2753551 b323
control values and meaning: github.com/crosire/scripthookvdotnet/blob/dev/source/scripting/Controls.hpp padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts. Control values from the decompiled scripts: 0,1,2,3,4,5,6,8,9,10,11,14,15,16,17,19,21,22,24,25,26,30,31,32,33,34,35,36, 37,44,46,47,59,60,65,68,69,70,71,72,73,74,75,76,79,80,81,82,86,95,98,99,100 ,101,114,140,141,143,172,173,174,175,176,177,178,179,180,181,187,188,189,19 0,195,196,197,198,199,201,202,203,204,205,206,207,208,209,210,217,218,219,2 20,221,225,228,229,230,231,234,235,236,237,238,239,240,241,242,245,246,257, 261,262,263,264,286,287,288,289,337,338,339,340,341,342,343 INPUTGROUP_MOVE INPUTGROUP_LOOK INPUTGROUP_WHEEL INPUTGROUP_CELLPHONE_NAVIGATE INPUTGROUP_CELLPHONE_NAVIGATE_UD INPUTGROUP_CELLPHONE_NAVIGATE_LR INPUTGROUP_FRONTEND_DPAD_ALL INPUTGROUP_FRONTEND_DPAD_UD INPUTGROUP_FRONTEND_DPAD_LR INPUTGROUP_FRONTEND_LSTICK_ALL INPUTGROUP_FRONTEND_RSTICK_ALL INPUTGROUP_FRONTEND_GENERIC_UD INPUTGROUP_FRONTEND_GENERIC_LR INPUTGROUP_FRONTEND_GENERIC_ALL INPUTGROUP_FRONTEND_BUMPERS INPUTGROUP_FRONTEND_TRIGGERS INPUTGROUP_FRONTEND_STICKS INPUTGROUP_SCRIPT_DPAD_ALL INPUTGROUP_SCRIPT_DPAD_UD INPUTGROUP_SCRIPT_DPAD_LR INPUTGROUP_SCRIPT_LSTICK_ALL INPUTGROUP_SCRIPT_RSTICK_ALL INPUTGROUP_SCRIPT_BUMPERS INPUTGROUP_SCRIPT_TRIGGERS INPUTGROUP_WEAPON_WHEEL_CYCLE INPUTGROUP_FLY INPUTGROUP_SUB INPUTGROUP_VEH_MOVE_ALL INPUTGROUP_CURSOR INPUTGROUP_CURSOR_SCROLL INPUTGROUP_SNIPER_ZOOM_SECONDARY INPUTGROUP_VEH_HYDRAULICS_CONTROL Took those in IDA Pro.Not sure in which order they go
DISABLE_ALL_CONTROL_ACTIONS
void PAD::DISABLE_ALL_CONTROL_ACTIONS(int padIndex) // 0x5F4B6931816E599B 0x16753CF4 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
ENABLE_ALL_CONTROL_ACTIONS
void PAD::ENABLE_ALL_CONTROL_ACTIONS(int padIndex) // 0xA5FFE9B05F199DE7 0xFC2F119F b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts.
_SWITCH_TO_INPUT_MAPPING_SCHEME
BOOL PAD::_SWITCH_TO_INPUT_MAPPING_SCHEME(const char* name) // 0x3D42B92563939375 0xD2C80B2E b323
Used in carsteal3 script with p0 = "Carsteal4_spycar". S*
_SWITCH_TO_INPUT_MAPPING_SCHEME_2
BOOL PAD::_SWITCH_TO_INPUT_MAPPING_SCHEME_2(const char* name) // 0x4683149ED1DDE7A1 0xBBFC9050 b323
Same as 0x3D42B92563939375 S*
_RESET_INPUT_MAPPING_SCHEME
void PAD::_RESET_INPUT_MAPPING_SCHEME() // 0x643ED62D5EA3BEBD 0x42140FF9 b323
S*
_0x7F4724035FDCA1DD
void PAD::_0x7F4724035FDCA1DD(int padIndex) // 0x7F4724035FDCA1DD 0x2CEDE6C5 b323
padIndex: 0 (PLAYER_CONTROL), 1 (unk) and 2 (unk) used in the scripts. A*
PATHFIND
SET_ROADS_IN_AREA
void PATHFIND::SET_ROADS_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, BOOL nodeEnabled, BOOL unknown2) // 0xBF1A602B5BA52FEE 0xEBC7B918 b323
When nodeEnabled is set to false, all nodes in the area get disabled. `GET_VEHICLE_NODE_IS_SWITCHED_OFF` returns true afterwards. If it's true, `GET_VEHICLE_NODE_IS_SWITCHED_OFF` returns false.
SET_ROADS_IN_ANGLED_AREA
void PATHFIND::SET_ROADS_IN_ANGLED_AREA(float x1, float y1, float z1, float x2, float y2, float z2, float width, BOOL unknown1, BOOL unknown2, BOOL unknown3) // 0x1A5AA1208AF5DB59 0xBD088F4B b323
unknown3 is related to `SEND_SCRIPT_WORLD_STATE_EVENT > CNetworkRoadNodeWorldStateData` in networked environments. See IS_POINT_IN_ANGLED_AREA for the definition of an angled area.
SET_PED_PATHS_IN_AREA
void PATHFIND::SET_PED_PATHS_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, BOOL unknown, Any p7) // 0x34F060F4BF92E018 0x2148EA84 b323
GET_SAFE_COORD_FOR_PED
BOOL PATHFIND::GET_SAFE_COORD_FOR_PED(float x, float y, float z, BOOL onGround, Vector3* outPosition, int flags) // 0xB61C8E878A4199CA 0xB370270A b323
Flags are: 1 = 1 = B02_IsFootpath 2 = 4 = !B15_InteractionUnk 4 = 0x20 = !B14_IsInterior 8 = 0x40 = !B07_IsWater 16 = 0x200 = B17_IsFlatGround When onGround == true outPosition is a position located on the nearest pavement. When a safe coord could not be found the result of a function is false and outPosition == Vector3.Zero. In the scripts these flags are used: 0, 14, 12, 16, 20, 21, 28. 0 is most commonly used, then 16. 16 works for me, 0 crashed the script.
GET_CLOSEST_VEHICLE_NODE
BOOL PATHFIND::GET_CLOSEST_VEHICLE_NODE(float x, float y, float z, Vector3* outPosition, int nodeType, float p5, float p6) // 0x240A18690AE96513 0x6F5F1E6C b323
FYI: When falling through the map (or however you got under it) you will respawn when your player ped's height is <= -200.0 meters (I think you all know this) and when in a vehicle you will actually respawn at the closest vehicle node. ---------- Vector3 nodePos; GET_CLOSEST_VEHICLE_NODE(x,y,z,&nodePos,...) p4 is either 0, 1 or 8. 1 means any path/road. 0 means node in the middle of the closest main (asphalt) road. p5, p6 are always the same: 0x40400000 (3.0), 0 p5 can also be 100.0 and p6 can be 2.5: PATHFIND::GET_CLOSEST_VEHICLE_NODE(a_0, &v_5, v_9, 100.0, 2.5) Known node types: simple path/asphalt road, only asphalt road, water, under the map at always the same coords. The node types follows a pattern. For example, every fourth node is of the type water i.e. 3, 7, 11, 15, 19, 23, 27, 31, 35, 39... 239. Could not see any difference between nodes within certain types. Starting at 2, every fourth node is under the map, always same coords. Same with only asphalt road (0, 4, 8, etc) and simple path/asphalt road (1, 5, 9, etc). gtaforums.com/topic/843561-pathfind-node-types
GET_CLOSEST_MAJOR_VEHICLE_NODE
BOOL PATHFIND::GET_CLOSEST_MAJOR_VEHICLE_NODE(float x, float y, float z, Vector3* outPosition, float unknown1, int unknown2) // 0x2EABE3B06F58C1BE 0x04B5F15B b323
Get the closest vehicle node to a given position, unknown1 = 3.0, unknown2 = 0
GET_CLOSEST_VEHICLE_NODE_WITH_HEADING
BOOL PATHFIND::GET_CLOSEST_VEHICLE_NODE_WITH_HEADING(float x, float y, float z, Vector3* outPosition, float* outHeading, int nodeType, float p6, int p7) // 0xFF071FB798B803B0 0x8BD5759B b323
p5, p6 and p7 seems to be about the same as p4, p5 and p6 for GET_CLOSEST_VEHICLE_NODE. p6 and/or p7 has something to do with finding a node on the same path/road and same direction(at least for this native, something to do with the heading maybe). Edit this when you find out more. p5 is either 1 or 12. 1 means any path/road. 12, 8, 0 means node in the middle of the closest main (asphalt) road. p6 is always 3.0 p7 is always 0. Known node types: simple path/asphalt road, only asphalt road, water, under the map at always the same coords. The node types follows a pattern. For example, every fourth node is of the type water i.e. 3, 7, 11, 15, 19, 23, 27, 31, 35, 39... 239. Could not see any difference between nodes within certain types. Starting at 2, every fourth node is under the map, always same coords. Same with only asphalt road (0, 4, 8, etc) and simple path/asphalt road (1, 5, 9, etc). gtaforums.com/topic/843561-pathfind-node-types Example of usage, moving vehicle to closest path/road: Vector3 coords = ENTITY::GET_ENTITY_COORDS(playerVeh, true); Vector3 closestVehicleNodeCoords; float roadHeading; PATHFIND::GET_CLOSEST_VEHICLE_NODE_WITH_HEADING(coords.x, coords.y, coords.z, &closestVehicleNodeCoords, &roadHeading, 1, 3, 0); ENTITY::SET_ENTITY_HEADING(playerVeh, roadHeading); ENTITY::SET_ENTITY_COORDS(playerVeh, closestVehicleNodeCoords.x, closestVehicleNodeCoords.y, closestVehicleNodeCoords.z, 1, 0, 0, 1); VEHICLE::SET_VEHICLE_ON_GROUND_PROPERLY(playerVeh); ------------------------------------------------------------------ C# Example (ins1de) : pastebin.com/fxtMWAHD
GET_NTH_CLOSEST_VEHICLE_NODE
BOOL PATHFIND::GET_NTH_CLOSEST_VEHICLE_NODE(float x, float y, float z, int nthClosest, Vector3* outPosition, Any unknown1, Any unknown2, Any unknown3) // 0xE50E52416CCF948B 0xF125BFCC b323
GET_NTH_CLOSEST_VEHICLE_NODE_ID
int PATHFIND::GET_NTH_CLOSEST_VEHICLE_NODE_ID(float x, float y, float z, int nth, int nodetype, float p5, float p6) // 0x22D7275A79FE8215 0x3F358BEA b323
Returns the id.
GET_NTH_CLOSEST_VEHICLE_NODE_WITH_HEADING
BOOL PATHFIND::GET_NTH_CLOSEST_VEHICLE_NODE_WITH_HEADING(float x, float y, float z, int nthClosest, Vector3* outPosition, float* outHeading, Any* unknown1, int unknown2, float unknown3, float unknown4) // 0x80CA6A8B6C094CC4 0x7349C856 b323
Get the nth closest vehicle node and its heading. (unknown2 = 9, unknown3 = 3.0, unknown4 = 2.5)
GET_NTH_CLOSEST_VEHICLE_NODE_ID_WITH_HEADING
int PATHFIND::GET_NTH_CLOSEST_VEHICLE_NODE_ID_WITH_HEADING(float x, float y, float z, int nthClosest, Vector3* outPosition, float* outHeading, Any p6, float p7, float p8) // 0x6448050E9C2A7207 0xC1AEB88D b323
GET_NTH_CLOSEST_VEHICLE_NODE_FAVOUR_DIRECTION
BOOL PATHFIND::GET_NTH_CLOSEST_VEHICLE_NODE_FAVOUR_DIRECTION(float x, float y, float z, float desiredX, float desiredY, float desiredZ, int nthClosest, Vector3* outPosition, float* outHeading, int nodetype, float p10, Any p11) // 0x45905BE8654AE067 0x928A4DEC b323
See gtaforums.com/topic/843561-pathfind-node-types for node type info. 0 = paved road only, 1 = any road, 3 = water p10 always equals 3.0 p11 always equals 0
GET_VEHICLE_NODE_PROPERTIES
BOOL PATHFIND::GET_VEHICLE_NODE_PROPERTIES(float x, float y, float z, int* density, int* flags) // 0x0568566ACBB5DEDC 0xCC90110B b323
MulleDK19: Gets the density and flags of the closest node to the specified position. Density is a value between 0 and 15, indicating how busy the road is. Flags is a bit field.
IS_VEHICLE_NODE_ID_VALID
BOOL PATHFIND::IS_VEHICLE_NODE_ID_VALID(int vehicleNodeId) // 0x1EAF30FCFBF5AF74 0x57DFB1EF b323
Returns true if the id is non zero.
GET_VEHICLE_NODE_POSITION
void PATHFIND::GET_VEHICLE_NODE_POSITION(int nodeId, Vector3* outPosition) // 0x703123E5E7D429C2 0xE38E252D b323
Calling this with an invalid node id, will crash the game. Note that IS_VEHICLE_NODE_ID_VALID simply checks if nodeId is not zero. It does not actually ensure that the id is valid. Eg. IS_VEHICLE_NODE_ID_VALID(1) will return true, but will crash when calling GET_VEHICLE_NODE_POSITION().
GET_VEHICLE_NODE_IS_GPS_ALLOWED
BOOL PATHFIND::GET_VEHICLE_NODE_IS_GPS_ALLOWED(int nodeID) // 0xA2AE5C478B96E3B6 0xEE4B1219 b323
Returns false for nodes that aren't used for GPS routes. Example: Nodes in Fort Zancudo and LSIA are false
GET_VEHICLE_NODE_IS_SWITCHED_OFF
BOOL PATHFIND::GET_VEHICLE_NODE_IS_SWITCHED_OFF(int nodeID) // 0x4F5070AA58F69279 0x56737A3C b323
Returns true when the node is Offroad. Alleys, some dirt roads, and carparks return true. Normal roads where plenty of Peds spawn will return false
GET_CLOSEST_ROAD
Any PATHFIND::GET_CLOSEST_ROAD(float x, float y, float z, float p3, int p4, Vector3* p5, Vector3* p6, Any* p7, Any* p8, float* p9, BOOL p10) // 0x132F52BBA570FE92 0x567B0E11 b323
p1 seems to be always 1.0f in the scripts
_SET_ALL_PATHS_CACHE_BOUNDINGSTRUCT
void PATHFIND::_SET_ALL_PATHS_CACHE_BOUNDINGSTRUCT(BOOL toggle) // 0x228E5C6AD4D74BFD 0xD6A3B458 b323
Toggles a global boolean, name is probably a hash collision but describes its functionality.
_SET_AI_GLOBAL_PATH_NODES_TYPE
void PATHFIND::_SET_AI_GLOBAL_PATH_NODES_TYPE(int type) // 0xF74B1FFA4A15FBEA b2189
Activates Cayo Perico path nodes if passed `1`. GPS navigation will start working, maybe more stuff will change, not sure. It seems if you try to unload (pass `0`) when close to the island, your game might crash.
ARE_NODES_LOADED_FOR_AREA
BOOL PATHFIND::ARE_NODES_LOADED_FOR_AREA(float x1, float y1, float x2, float y2) // 0xF7B79A50B905A30D 0x86E80A17 b323
ARE_*
_REQUEST_PATHS_PREFER_ACCURATE_BOUNDINGSTRUCT
BOOL PATHFIND::_REQUEST_PATHS_PREFER_ACCURATE_BOUNDINGSTRUCT(float x1, float y1, float x2, float y2) // 0x07FB139B592FA687 0x2CDA5012 b323
Used internally for long range tasks
SET_ROADS_BACK_TO_ORIGINAL
void PATHFIND::SET_ROADS_BACK_TO_ORIGINAL(float p0, float p1, float p2, float p3, float p4, float p5, Any p6) // 0x1EE7063B80FFC77C 0x86AC4A85 b323
missing a last parameter int p6
SET_ROADS_BACK_TO_ORIGINAL_IN_ANGLED_AREA
void PATHFIND::SET_ROADS_BACK_TO_ORIGINAL_IN_ANGLED_AREA(float x1, float y1, float z1, float x2, float y2, float z2, float width, Any p7) // 0x0027501B9F3B407E 0x9DB5D209 b323
See IS_POINT_IN_ANGLED_AREA for the definition of an angled area. bool p7 - always 1
SET_AMBIENT_PED_RANGE_MULTIPLIER_THIS_FRAME
void PATHFIND::SET_AMBIENT_PED_RANGE_MULTIPLIER_THIS_FRAME(float multiplier) // 0x0B919E1FB47CC4E0 0x3C5085E4 b323
_0xAA76052DDA9BFC3E
void PATHFIND::_0xAA76052DDA9BFC3E(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0xAA76052DDA9BFC3E 0xD0F51299 b323
SET_PED_PATHS_BACK_TO_ORIGINAL
void PATHFIND::SET_PED_PATHS_BACK_TO_ORIGINAL(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0xE04B48F2CC926253 0x3F1ABDA4 b323
GET_RANDOM_VEHICLE_NODE
BOOL PATHFIND::GET_RANDOM_VEHICLE_NODE(float x, float y, float z, float radius, BOOL p4, BOOL p5, BOOL p6, Vector3* outPosition, int* nodeId) // 0x93E0DB8440B73A7D 0xAD1476EA b323
GET_STREET_NAME_AT_COORD
void PATHFIND::GET_STREET_NAME_AT_COORD(float x, float y, float z, Hash* streetName, Hash* crossingRoad) // 0x2EB41072B4C1E4C0 0xDEBEEFCF b323
Determines the name of the street which is the closest to the given coordinates. x,y,z - the coordinates of the street streetName - returns a hash to the name of the street the coords are on crossingRoad - if the coordinates are on an intersection, a hash to the name of the crossing road Note: the names are returned as hashes, the strings can be returned using the function HUD::GET_STREET_NAME_FROM_HASH_KEY.
GENERATE_DIRECTIONS_TO_COORD
int PATHFIND::GENERATE_DIRECTIONS_TO_COORD(float x, float y, float z, BOOL p3, int* direction, float* p5, float* distToNxJunction) // 0xF90125F1F79ECDF8 0xED35C094 b323
p3 is 0 in the only game script occurrence (trevor3) but 1 doesn't seem to make a difference distToNxJunction seems to be the distance in metres * 10.0f direction: 0 = This happens randomly during the drive for seemingly no reason but if you consider that this native is only used in trevor3, it seems to mean "Next frame, stop whatever's being said and tell the player the direction." 1 = Route is being calculated or the player is going in the wrong direction 2 = Please Proceed the Highlighted Route 3 = In (distToNxJunction) Turn Left 4 = In (distToNxJunction) Turn Right 5 = In (distToNxJunction) Keep Straight 6 = In (distToNxJunction) Turn Sharply To The Left 7 = In (distToNxJunction) Turn Sharply To The Right 8 = Route is being recalculated or the navmesh is confusing. This happens randomly during the drive but consistently at {2044.0358, 2996.6116, 44.9717} if you face towards the bar and the route needs you to turn right. In that particular case, it could be a bug with how the turn appears to be 270 deg. CCW instead of "right." Either way, this seems to be the engine saying "I don't know the route right now." return value set to 0 always
SET_IGNORE_NO_GPS_FLAG
void PATHFIND::SET_IGNORE_NO_GPS_FLAG(BOOL toggle) // 0x72751156E7678833 0xB72CF194 b323
_SET_IGNORE_SECONDARY_ROUTE_NODES
void PATHFIND::_SET_IGNORE_SECONDARY_ROUTE_NODES(BOOL toggle) // 0x1FC289A0C3FF470F 0x90DF7A4C b323
See: SET_BLIP_ROUTE
SET_GPS_DISABLED_ZONE
void PATHFIND::SET_GPS_DISABLED_ZONE(float x1, float y1, float z1, float x2, float y2, float z3) // 0xDC20483CD3DD5201 0x720B8073 b323
GET_GPS_BLIP_ROUTE_LENGTH
int PATHFIND::GET_GPS_BLIP_ROUTE_LENGTH() // 0xBBB45C3CF5C8AA85 0x4B770634 b323
_0xF3162836C28F9DA5
Any PATHFIND::_0xF3162836C28F9DA5(Any p0, Any p1, Any p2, Any p3) // 0xF3162836C28F9DA5 b505
GET_GPS_BLIP_ROUTE_FOUND
BOOL PATHFIND::GET_GPS_BLIP_ROUTE_FOUND() // 0x869DAACBBE9FA006 0x286F82CC b323
_GET_ROAD_SIDE_POINT_WITH_HEADING
BOOL PATHFIND::_GET_ROAD_SIDE_POINT_WITH_HEADING(float x, float y, float z, float heading, Vector3* outPosition) // 0xA0F8A7517A273C05 b463
_GET_POINT_ON_ROAD_SIDE
BOOL PATHFIND::_GET_POINT_ON_ROAD_SIDE(float x, float y, float z, int p3, Vector3* outPosition) // 0x16F46FB18C8009E4 0xF6422F9A b323
IS_POINT_ON_ROAD
BOOL PATHFIND::IS_POINT_ON_ROAD(float x, float y, float z, Vehicle vehicle) // 0x125BF4ABFC536B09 0xCF198055 b323
Gets a value indicating whether the specified position is on a road. The vehicle parameter is not implemented (ignored). -MulleDK19
GET_NEXT_GPS_DISABLED_ZONE_INDEX
int PATHFIND::GET_NEXT_GPS_DISABLED_ZONE_INDEX() // 0xD3A6A0EF48823A8C 0xBE92551F b323
Gets the next zone that has been disabled using SET_GPS_DISABLED_ZONE_AT_INDEX.
SET_GPS_DISABLED_ZONE_AT_INDEX
void PATHFIND::SET_GPS_DISABLED_ZONE_AT_INDEX(float x1, float y1, float z1, float x2, float y2, float z2, int index) // 0xD0BC1C6FB18EE154 0x98BDB311 b323
Disables the GPS route displayed on the minimap while within a certain zone (area). When in a disabled zone and creating a waypoint, the GPS route is not shown on the minimap until you are outside of the zone. When disabled, the direct distance is shown on minimap opposed to distance to travel. Seems to only work before setting a waypoint. You can clear the disabled zone with CLEAR_GPS_DISABLED_ZONE_AT_INDEX. **Setting a waypoint at the same coordinate:** Disabled Zone: https://i.imgur.com/P9VUuxM.png Enabled Zone (normal): https://i.imgur.com/BPi24aw.png
CLEAR_GPS_DISABLED_ZONE_AT_INDEX
void PATHFIND::CLEAR_GPS_DISABLED_ZONE_AT_INDEX(int index) // 0x2801D0012266DF07 0x59090745 b323
Clears a disabled GPS route area from a certain index previously set using `SET_GPS_DISABLED_ZONE_AT_INDEX`.
ADD_NAVMESH_REQUIRED_REGION
void PATHFIND::ADD_NAVMESH_REQUIRED_REGION(float x, float y, float radius) // 0x387EAD7EE42F6685 0x12B086EA b323
REMOVE_NAVMESH_REQUIRED_REGIONS
void PATHFIND::REMOVE_NAVMESH_REQUIRED_REGIONS() // 0x916F0A3CDEC3445E 0x637BB680 b323
_IS_NAVMESH_REQUIRED_REGION_OWNED_BY_ANY_THREAD
BOOL PATHFIND::_IS_NAVMESH_REQUIRED_REGION_OWNED_BY_ANY_THREAD() // 0x705A844002B39DC0 b944
IS_*
DISABLE_NAVMESH_IN_AREA
void PATHFIND::DISABLE_NAVMESH_IN_AREA(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x4C8872D8CDBE1B8B 0x6E37F132 b323
ARE_ALL_NAVMESH_REGIONS_LOADED
BOOL PATHFIND::ARE_ALL_NAVMESH_REGIONS_LOADED() // 0x8415D95B194A3AEA 0x34C4E789 b323
IS_NAVMESH_LOADED_IN_AREA
BOOL PATHFIND::IS_NAVMESH_LOADED_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2) // 0xF813C7E63F9062A5 0x4C2BA99E b323
Returns whether navmesh for the region is loaded. The region is a rectangular prism defined by it's top left deepest corner to it's bottom right shallowest corner. If you can re-word this so it makes more sense, please do. I'm horrible with words sometimes...
_0x01708E8DD3FF8C65
Any PATHFIND::_0x01708E8DD3FF8C65(float p0, float p1, float p2, float p3, float p4, float p5) // 0x01708E8DD3FF8C65 b323
ADD_NAVMESH_BLOCKING_OBJECT
Any PATHFIND::ADD_NAVMESH_BLOCKING_OBJECT(float p0, float p1, float p2, float p3, float p4, float p5, float p6, BOOL p7, Any p8) // 0xFCD5C8E06E502F5A 0x2952BA56 b323
UPDATE_NAVMESH_BLOCKING_OBJECT
void PATHFIND::UPDATE_NAVMESH_BLOCKING_OBJECT(Any p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7, Any p8) // 0x109E99373F290687 0x4E9776D0 b323
REMOVE_NAVMESH_BLOCKING_OBJECT
void PATHFIND::REMOVE_NAVMESH_BLOCKING_OBJECT(Any p0) // 0x46399A7895957C0E 0x098602B0 b323
DOES_NAVMESH_BLOCKING_OBJECT_EXIST
BOOL PATHFIND::DOES_NAVMESH_BLOCKING_OBJECT_EXIST(Any p0) // 0x0EAEB0DB4B132399 0x4B67D7EE b323
_GET_HEIGHTMAP_TOP_Z_FOR_POSITION
float PATHFIND::_GET_HEIGHTMAP_TOP_Z_FOR_POSITION(float x, float y) // 0x29C24BFBED8AB8FB 0x3FE8C5A0 b323
Returns CGameWorldHeightMap's maximum Z value at specified point (grid node).
_GET_HEIGHTMAP_TOP_Z_FOR_AREA
float PATHFIND::_GET_HEIGHTMAP_TOP_Z_FOR_AREA(float x1, float y1, float x2, float y2) // 0x8ABE8608576D9CE3 0x3ED21C90 b323
Returns CGameWorldHeightMap's maximum Z among all grid nodes that intersect with the specified rectangle.
_GET_HEIGHTMAP_BOTTOM_Z_FOR_POSITION
float PATHFIND::_GET_HEIGHTMAP_BOTTOM_Z_FOR_POSITION(float x, float y) // 0x336511A34F2E5185 0xA07C5B7D b323
Returns CGameWorldHeightMap's minimum Z value at specified point (grid node).
_GET_HEIGHTMAP_BOTTOM_Z_FOR_AREA
float PATHFIND::_GET_HEIGHTMAP_BOTTOM_Z_FOR_AREA(float x1, float y1, float x2, float y2) // 0x3599D741C9AC6310 0x76751DD4 b323
Returns CGameWorldHeightMap's minimum Z among all grid nodes that intersect with the specified rectangle.
CALCULATE_TRAVEL_DISTANCE_BETWEEN_POINTS
float PATHFIND::CALCULATE_TRAVEL_DISTANCE_BETWEEN_POINTS(float x1, float y1, float z1, float x2, float y2, float z2) // 0xADD95C7005C4A197 0xB114489B b323
Calculates the travel distance between a set of points. Doesn't seem to correlate with distance on gps sometimes. This function returns the value 100000.0 over long distances, seems to be a failure mode result, potentially occurring when not all path nodes are loaded into pathfind.
PED
CREATE_PED
Ped PED::CREATE_PED(int pedType, Hash modelHash, float x, float y, float z, float heading, BOOL isNetwork, BOOL bScriptHostPed) // 0xD49F9B0955C367DE 0x0389EF71 b323
https://alloc8or.re/gta5/doc/enums/ePedType.txt Full list of peds by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/peds.json
DELETE_PED
void PED::DELETE_PED(Ped* ped) // 0x9614299DCB53E54B 0x13EFB9A0 b323
Deletes the specified ped, then sets the handle pointed to by the pointer to NULL.
CLONE_PED
Ped PED::CLONE_PED(Ped ped, float heading, BOOL isNetwork, BOOL bScriptHostPed) // 0xEF29A16337FACADB 0x8C8A8D6E b323
Example of Cloning Your Player: CLONE_PED(PLAYER_PED_ID(), GET_ENTITY_HEADING(PLAYER_PED_ID()), 0, 1);
_CLONE_PED_EX
Ped PED::_CLONE_PED_EX(Ped ped, float heading, BOOL isNetwork, BOOL bScriptHostPed, Any p4) // 0x668FD40BCBA5DE48 b463
Used one time in fmmc_launcher.c instead of CLONE_PED because ?
CLONE_PED_TO_TARGET
void PED::CLONE_PED_TO_TARGET(Ped ped, Ped targetPed) // 0xE952D6431689AD9A 0xFC70EEC7 b323
Copies ped's components and props to targetPed.
_CLONE_PED_TO_TARGET_EX
void PED::_CLONE_PED_TO_TARGET_EX(Ped ped, Ped targetPed, Any p2) // 0x148B08C2D2ACB884 b463
IS_PED_IN_VEHICLE
BOOL PED::IS_PED_IN_VEHICLE(Ped ped, Vehicle vehicle, BOOL atGetIn) // 0xA3EE4A07279BB9DB 0x7DA6BC83 b323
Gets a value indicating whether the specified ped is in the specified vehicle. If 'atGetIn' is false, the function will not return true until the ped is sitting in the vehicle and is about to close the door. If it's true, the function returns true the moment the ped starts to get onto the seat (after opening the door). Eg. if false, and the ped is getting into a submersible, the function will not return true until the ped has descended down into the submersible and gotten into the seat, while if it's true, it'll return true the moment the hatch has been opened and the ped is about to descend into the submersible.
IS_PED_IN_MODEL
BOOL PED::IS_PED_IN_MODEL(Ped ped, Hash modelHash) // 0x796D90EFB19AA332 0xA6438D4B b323
IS_PED_IN_ANY_VEHICLE
BOOL PED::IS_PED_IN_ANY_VEHICLE(Ped ped, BOOL atGetIn) // 0x997ABD671D25CA0B 0x3B0171EE b323
Gets a value indicating whether the specified ped is in any vehicle. If 'atGetIn' is false, the function will not return true until the ped is sitting in the vehicle and is about to close the door. If it's true, the function returns true the moment the ped starts to get onto the seat (after opening the door). Eg. if false, and the ped is getting into a submersible, the function will not return true until the ped has descended down into the submersible and gotten into the seat, while if it's true, it'll return true the moment the hatch has been opened and the ped is about to descend into the submersible.
IS_COP_PED_IN_AREA_3D
BOOL PED::IS_COP_PED_IN_AREA_3D(float x1, float y1, float z1, float x2, float y2, float z2) // 0x16EC4839969F9F5E 0xB98DB96B b323
xyz - relative to the world origin.
IS_PED_INJURED
BOOL PED::IS_PED_INJURED(Ped ped) // 0x84A2DD9AC37C35C1 0x2530A087 b323
Gets a value indicating whether this ped's health is below its injured threshold. The default threshold is 100.
IS_PED_HURT
BOOL PED::IS_PED_HURT(Ped ped) // 0x5983BB449D7FDB12 0x69DFA0AF b323
Returns whether the specified ped is hurt.
IS_PED_FATALLY_INJURED
BOOL PED::IS_PED_FATALLY_INJURED(Ped ped) // 0xD839450756ED5A80 0xBADA0093 b323
Gets a value indicating whether this ped's health is below its fatally injured threshold. The default threshold is 100. If the handle is invalid, the function returns true.
IS_PED_DEAD_OR_DYING
BOOL PED::IS_PED_DEAD_OR_DYING(Ped ped, BOOL p1) // 0x3317DEDB88C95038 0xCBDB7739 b323
Seems to consistently return true if the ped is dead. p1 is always passed 1 in the scripts. I suggest to remove "OR_DYING" part, because it does not detect dying phase. That's what the devs call it, cry about it. lol
IS_CONVERSATION_PED_DEAD
BOOL PED::IS_CONVERSATION_PED_DEAD(Ped ped) // 0xE0A0AEC214B1FABA 0x1FA39EFE b323
IS_PED_AIMING_FROM_COVER
BOOL PED::IS_PED_AIMING_FROM_COVER(Ped ped) // 0x3998B1276A3300E5 0xDEBAB2AF b323
IS_PED_RELOADING
BOOL PED::IS_PED_RELOADING(Ped ped) // 0x24B100C68C645951 0x961E1745 b323
Returns whether the specified ped is reloading.
IS_PED_A_PLAYER
BOOL PED::IS_PED_A_PLAYER(Ped ped) // 0x12534C348C6CB68B 0x404794CA b323
Returns true if the given ped has a valid pointer to CPlayerInfo in its CPed class. That's all.
CREATE_PED_INSIDE_VEHICLE
Ped PED::CREATE_PED_INSIDE_VEHICLE(Vehicle vehicle, int pedType, Hash modelHash, int seat, BOOL isNetwork, BOOL bScriptHostPed) // 0x7DD959874C1FD534 0x3000F092 b323
pedType: see CREATE_PED Full list of peds by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/peds.json
SET_PED_DESIRED_HEADING
void PED::SET_PED_DESIRED_HEADING(Ped ped, float heading) // 0xAA5A7ECE2AA8FE70 0x961458F9 b323
_FREEZE_PED_CAMERA_ROTATION
void PED::_FREEZE_PED_CAMERA_ROTATION(Ped ped) // 0xFF287323B0E2C69A 0x290421BE b323
IS_PED_FACING_PED
BOOL PED::IS_PED_FACING_PED(Ped ped, Ped otherPed, float angle) // 0xD71649DB0A545AA3 0x0B775838 b323
angle is ped's view cone
IS_PED_IN_MELEE_COMBAT
BOOL PED::IS_PED_IN_MELEE_COMBAT(Ped ped) // 0x4E209B2C1EAD5159 0xFD7814A5 b323
Notes: The function only returns true while the ped is: A.) Swinging a random melee attack (including pistol-whipping) B.) Reacting to being hit by a melee attack (including pistol-whipping) C.) Is locked-on to an enemy (arms up, strafing/skipping in the default fighting-stance, ready to dodge+counter). You don't have to be holding the melee-targetting button to be in this stance; you stay in it by default for a few seconds after swinging at someone. If you do a sprinting punch, it returns true for the duration of the punch animation and then returns false again, even if you've punched and made-angry many peds
IS_PED_STOPPED
BOOL PED::IS_PED_STOPPED(Ped ped) // 0x530944F6F4B8A214 0xA0DC0B87 b323
Returns true if the ped doesn't do any movement. If the ped is being pushed forwards by using APPLY_FORCE_TO_ENTITY for example, the function returns false.
IS_PED_SHOOTING_IN_AREA
BOOL PED::IS_PED_SHOOTING_IN_AREA(Ped ped, float x1, float y1, float z1, float x2, float y2, float z2, BOOL p7, BOOL p8) // 0x7E9DFE24AC1E58EF 0x741BF04F b323
IS_ANY_PED_SHOOTING_IN_AREA
BOOL PED::IS_ANY_PED_SHOOTING_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, BOOL p6, BOOL p7) // 0xA0D3D71EA1086C55 0x91833867 b323
IS_PED_SHOOTING
BOOL PED::IS_PED_SHOOTING(Ped ped) // 0x34616828CD07F1A1 0xE7C3405E b323
Returns whether the specified ped is shooting.
SET_PED_ACCURACY
void PED::SET_PED_ACCURACY(Ped ped, int accuracy) // 0x7AEFB85C1D49DEB6 0x6C17122E b323
accuracy = 0-100, 100 being perfectly accurate
GET_PED_ACCURACY
int PED::GET_PED_ACCURACY(Ped ped) // 0x37F4AD56ECBC0CD6 0x0A2A0AA0 b323
_0x87DDEB611B329A9C
void PED::_0x87DDEB611B329A9C(float multiplier) // 0x87DDEB611B329A9C b1103
SET_A*
IS_PED_MODEL
BOOL PED::IS_PED_MODEL(Ped ped, Hash modelHash) // 0xC9D55B1A358A5BF7 0x5F1DDFCB b323
EXPLODE_PED_HEAD
void PED::EXPLODE_PED_HEAD(Ped ped, Hash weaponHash) // 0x2D05CED3A38D0F3A 0x05CC1380 b323
Forces the ped to fall back and kills it. It doesn't really explode the ped's head but it kills the ped
REMOVE_PED_ELEGANTLY
void PED::REMOVE_PED_ELEGANTLY(Ped* ped) // 0xAC6D445B994DF95E 0x4FFB8C6C b323
Judging purely from a quick disassembly, if the ped is in a vehicle, the ped will be deleted immediately. If not, it'll be marked as no longer needed. - very elegant..
ADD_ARMOUR_TO_PED
void PED::ADD_ARMOUR_TO_PED(Ped ped, int amount) // 0x5BA652A0CD14DF2F 0xF686B26E b323
Same as SET_PED_ARMOUR, but ADDS 'amount' to the armor the Ped already has.
SET_PED_ARMOUR
void PED::SET_PED_ARMOUR(Ped ped, int amount) // 0xCEA04D83135264CC 0x4E3A0CC4 b323
Sets the armor of the specified ped. ped: The Ped to set the armor of. amount: A value between 0 and 100 indicating the value to set the Ped's armor to.
SET_PED_INTO_VEHICLE
void PED::SET_PED_INTO_VEHICLE(Ped ped, Vehicle vehicle, int seatIndex) // 0xF75B0D629E1C063D 0x07500C79 b323
Ped: The ped to warp. vehicle: The vehicle to warp the ped into. Seat_Index: [-1 is driver seat, -2 first free passenger seat] Moreinfo of Seat Index DriverSeat = -1 Passenger = 0 Left Rear = 1 RightRear = 2
SET_PED_ALLOW_VEHICLES_OVERRIDE
void PED::SET_PED_ALLOW_VEHICLES_OVERRIDE(Ped ped, BOOL toggle) // 0x3C028C636A414ED9 0x58A80BD5 b323
CAN_CREATE_RANDOM_PED
BOOL PED::CAN_CREATE_RANDOM_PED(BOOL unk) // 0x3E8349C08E4B82E4 0xF9ABE88F b323
CREATE_RANDOM_PED
Ped PED::CREATE_RANDOM_PED(float posX, float posY, float posZ) // 0xB4AC7D0CF06BFE8F 0x5A949543 b323
vb.net Dim ped_handle As Integer With Game.Player.Character Dim pos As Vector3 = .Position + .ForwardVector * 3 ped_handle = Native.Function.Call(Of Integer)(Hash.CREATE_RANDOM_PED, pos.X, pos.Y, pos.Z) End With Creates a Ped at the specified location, returns the Ped Handle. Ped will not act until SET_PED_AS_NO_LONGER_NEEDED is called.
CREATE_RANDOM_PED_AS_DRIVER
Ped PED::CREATE_RANDOM_PED_AS_DRIVER(Vehicle vehicle, BOOL returnHandle) // 0x9B62392B474F44A0 0xB927CE9A b323
CAN_CREATE_RANDOM_DRIVER
BOOL PED::CAN_CREATE_RANDOM_DRIVER() // 0xB8EB95E5B4E56978 0x99861609 b323
CAN_CREATE_RANDOM_BIKE_RIDER
BOOL PED::CAN_CREATE_RANDOM_BIKE_RIDER() // 0xEACEEDA81751915C 0x7018BE31 b323
SET_PED_MOVE_ANIMS_BLEND_OUT
void PED::SET_PED_MOVE_ANIMS_BLEND_OUT(Ped ped) // 0x9E8C908F41584ECD 0x20E01957 b323
SET_PED_CAN_BE_DRAGGED_OUT
void PED::SET_PED_CAN_BE_DRAGGED_OUT(Ped ped, BOOL toggle) // 0xC1670E958EEE24E5 0xAA7F1131 b323
_0xF2BEBCDFAFDAA19E
void PED::_0xF2BEBCDFAFDAA19E(BOOL toggle) // 0xF2BEBCDFAFDAA19E 0x6CD58238 b323
SET_PED_ALLOW* toggle was always false except in one instance (b678). The one time this is set to true seems to do with when you fail the mission.
IS_PED_MALE
BOOL PED::IS_PED_MALE(Ped ped) // 0x6D9F5FAA7488BA46 0x90950455 b323
Returns true/false if the ped is/isn't male.
IS_PED_HUMAN
BOOL PED::IS_PED_HUMAN(Ped ped) // 0xB980061DA992779D 0x194BB7B0 b323
Returns true/false if the ped is/isn't humanoid.
GET_VEHICLE_PED_IS_IN
Vehicle PED::GET_VEHICLE_PED_IS_IN(Ped ped, BOOL includeLastVehicle) // 0x9A9112A0FE9A4713 0xAFE92319 b323
Gets the vehicle the specified Ped is in. Returns 0 if the ped is/was not in a vehicle. If the Ped is not in a vehicle and includeLastVehicle is true, the vehicle they were last in is returned.
RESET_PED_LAST_VEHICLE
void PED::RESET_PED_LAST_VEHICLE(Ped ped) // 0xBB8DE8CF6A8DD8BB 0x5E3B5942 b323
Resets the value for the last vehicle driven by the Ped.
SET_PED_DENSITY_MULTIPLIER_THIS_FRAME
void PED::SET_PED_DENSITY_MULTIPLIER_THIS_FRAME(float multiplier) // 0x95E3D6257B166CF2 0x039C82BB b323
SET_SCENARIO_PED_DENSITY_MULTIPLIER_THIS_FRAME
void PED::SET_SCENARIO_PED_DENSITY_MULTIPLIER_THIS_FRAME(float p0, float p1) // 0x7A556143A1C03898 0x2909ABF0 b323
_0x5A7F62FDA59759BD
void PED::_0x5A7F62FDA59759BD() // 0x5A7F62FDA59759BD 0xB48C0C04 b323
SET_SCRIPTED_CONVERSION_COORD_THIS_FRAME
void PED::SET_SCRIPTED_CONVERSION_COORD_THIS_FRAME(float x, float y, float z) // 0x5086C7843552CF85 0x25EA2AA5 b323
SET_PED_NON_CREATION_AREA
void PED::SET_PED_NON_CREATION_AREA(float x1, float y1, float z1, float x2, float y2, float z2) // 0xEE01041D559983EA 0x7A97283F b323
The distance between these points, is the diagonal of a box (remember it's 3D).
CLEAR_PED_NON_CREATION_AREA
void PED::CLEAR_PED_NON_CREATION_AREA() // 0x2E05208086BA0651 0x6F7043A3 b323
INSTANTLY_FILL_PED_POPULATION
void PED::INSTANTLY_FILL_PED_POPULATION() // 0x4759CC730F947C81 0x8C555ADD b323
IS_PED_ON_MOUNT
BOOL PED::IS_PED_ON_MOUNT(Ped ped) // 0x460BC76A0E10655E 0x43103006 b323
Same function call as PED::GET_MOUNT, aka just returns 0
GET_MOUNT
Ped PED::GET_MOUNT(Ped ped) // 0xE7E11B8DCBED1058 0xDD31EC4E b323
Function just returns 0 void __fastcall ped__get_mount(NativeContext *a1) { NativeContext *v1; // rbx@1 v1 = a1; GetAddressOfPedFromScriptHandle(a1->Args->Arg1); v1->Returns->Item1= 0; }
IS_PED_ON_VEHICLE
BOOL PED::IS_PED_ON_VEHICLE(Ped ped) // 0x67722AEB798E5FAB 0xA1AE7CC7 b323
Gets a value indicating whether the specified ped is on top of any vehicle. Return 1 when ped is on vehicle. Return 0 when ped is not on a vehicle.
IS_PED_ON_SPECIFIC_VEHICLE
BOOL PED::IS_PED_ON_SPECIFIC_VEHICLE(Ped ped, Vehicle vehicle) // 0xEC5F66E459AF3BB2 0x63CB4603 b323
SET_PED_MONEY
void PED::SET_PED_MONEY(Ped ped, int amount) // 0xA9C8960E8684C1B5 0x40D90BF2 b323
Maximum possible amount of money on MP is 2000. ~JX ----------------------------------------------------------------------------- Maximum amount that a ped can theoretically have is 65535 (0xFFFF) since the amount is stored as an unsigned short (uint16_t) value.
GET_PED_MONEY
int PED::GET_PED_MONEY(Ped ped) // 0x3F69145BBA87BAE7 0xEB3C4C7E b323
_0xFF4803BC019852D9
void PED::_0xFF4803BC019852D9(float p0, Any p1) // 0xFF4803BC019852D9 0xD41C9AED b323
Related to Peds dropping pickup_health_snack; p0 is a value between [0.0, 1.0] that corresponds to drop rate
SET_AMBIENT_PEDS_DROP_MONEY
void PED::SET_AMBIENT_PEDS_DROP_MONEY(BOOL p0) // 0x6B0E6172C9A4D902 0x30B98369 b323
_0x9911F4A24485F653
void PED::_0x9911F4A24485F653(BOOL p0) // 0x9911F4A24485F653 0x02A080C8 b323
SET_PED_SUFFERS_CRITICAL_HITS
void PED::SET_PED_SUFFERS_CRITICAL_HITS(Ped ped, BOOL toggle) // 0xEBD76F2359F190AC 0x6F6FC7E6 b323
Ped no longer takes critical damage modifiers if set to FALSE. Example: Headshotting a player no longer one shots them. Instead they will take the same damage as a torso shot.
_0xAFC976FD0580C7B3
void PED::_0xAFC976FD0580C7B3(Ped ped, BOOL toggle) // 0xAFC976FD0580C7B3 0x1572022A b323
SET_PED_*
IS_PED_SITTING_IN_VEHICLE
BOOL PED::IS_PED_SITTING_IN_VEHICLE(Ped ped, Vehicle vehicle) // 0xA808AA1D79230FC2 0xDDDE26FA b323
Detect if ped is sitting in the specified vehicle [True/False]
IS_PED_SITTING_IN_ANY_VEHICLE
BOOL PED::IS_PED_SITTING_IN_ANY_VEHICLE(Ped ped) // 0x826AA586EDB9FEF8 0x0EA9CA03 b323
Detect if ped is in any vehicle [True/False]
IS_PED_ON_FOOT
BOOL PED::IS_PED_ON_FOOT(Ped ped) // 0x01FEE67DB37F59B2 0xC60D0785 b323
IS_PED_ON_ANY_BIKE
BOOL PED::IS_PED_ON_ANY_BIKE(Ped ped) // 0x94495889E22C6479 0x4D885B2E b323
IS_PED_PLANTING_BOMB
BOOL PED::IS_PED_PLANTING_BOMB(Ped ped) // 0xC70B5FAE151982D8 0x0EDAC574 b323
GET_DEAD_PED_PICKUP_COORDS
Vector3 PED::GET_DEAD_PED_PICKUP_COORDS(Ped ped, float p1, float p2) // 0xCD5003B097200F36 0x129F9DC1 b323
IS_PED_IN_ANY_BOAT
BOOL PED::IS_PED_IN_ANY_BOAT(Ped ped) // 0x2E0E1C2B4F6CB339 0x1118A947 b323
IS_PED_IN_ANY_SUB
BOOL PED::IS_PED_IN_ANY_SUB(Ped ped) // 0xFBFC01CCFB35D99E 0xE65F8059 b323
IS_PED_IN_ANY_HELI
BOOL PED::IS_PED_IN_ANY_HELI(Ped ped) // 0x298B91AE825E5705 0x7AB5523B b323
IS_PED_IN_ANY_PLANE
BOOL PED::IS_PED_IN_ANY_PLANE(Ped ped) // 0x5FFF4CFC74D8FB80 0x51BBCE7E b323
IS_PED_IN_FLYING_VEHICLE
BOOL PED::IS_PED_IN_FLYING_VEHICLE(Ped ped) // 0x9134873537FA419C 0xCA072485 b323
SET_PED_DIES_IN_WATER
void PED::SET_PED_DIES_IN_WATER(Ped ped, BOOL toggle) // 0x56CEF0AC79073BDE 0x604C872B b323
SET_PED_DIES_IN_SINKING_VEHICLE
void PED::SET_PED_DIES_IN_SINKING_VEHICLE(Ped ped, BOOL toggle) // 0xD718A22995E2B4BC 0x8D4D9ABB b323
GET_PED_ARMOUR
int PED::GET_PED_ARMOUR(Ped ped) // 0x9483AF821605B1D8 0x2CE311A7 b323
SET_PED_STAY_IN_VEHICLE_WHEN_JACKED
void PED::SET_PED_STAY_IN_VEHICLE_WHEN_JACKED(Ped ped, BOOL toggle) // 0xEDF4079F9D54C9A1 0xB014A09C b323
SET_PED_CAN_BE_SHOT_IN_VEHICLE
void PED::SET_PED_CAN_BE_SHOT_IN_VEHICLE(Ped ped, BOOL toggle) // 0xC7EF1BA83230BA07 0x5DB7B3A9 b323
GET_PED_LAST_DAMAGE_BONE
BOOL PED::GET_PED_LAST_DAMAGE_BONE(Ped ped, int* outBone) // 0xD75960F6BD9EA49C 0xAB933841 b323
CLEAR_PED_LAST_DAMAGE_BONE
void PED::CLEAR_PED_LAST_DAMAGE_BONE(Ped ped) // 0x8EF6B7AC68E2F01B 0x56CB715E b323
SET_AI_WEAPON_DAMAGE_MODIFIER
void PED::SET_AI_WEAPON_DAMAGE_MODIFIER(float value) // 0x1B1E2A40A65B8521 0x516E30EE b323
RESET_AI_WEAPON_DAMAGE_MODIFIER
void PED::RESET_AI_WEAPON_DAMAGE_MODIFIER() // 0xEA16670E7BA4743C 0x6E965420 b323
SET_AI_MELEE_WEAPON_DAMAGE_MODIFIER
void PED::SET_AI_MELEE_WEAPON_DAMAGE_MODIFIER(float modifier) // 0x66460DEDDD417254 0x0F9A401F b323
RESET_AI_MELEE_WEAPON_DAMAGE_MODIFIER
void PED::RESET_AI_MELEE_WEAPON_DAMAGE_MODIFIER() // 0x46E56A7CD1D63C3F 0x97886238 b323
_0x2F3C3D9F50681DE4
void PED::_0x2F3C3D9F50681DE4(Any p0, BOOL p1) // 0x2F3C3D9F50681DE4 0xCC9D7F1A b323
SET_PED_CAN_BE_TARGETTED
void PED::SET_PED_CAN_BE_TARGETTED(Ped ped, BOOL toggle) // 0x63F58F7C80513AAD 0x75C49F74 b323
SET_PED_CAN_BE_TARGETTED_BY_TEAM
void PED::SET_PED_CAN_BE_TARGETTED_BY_TEAM(Ped ped, int team, BOOL toggle) // 0xBF1CA77833E58F2C 0xB103A8E1 b323
SET_PED_CAN_BE_TARGETTED_BY_PLAYER
void PED::SET_PED_CAN_BE_TARGETTED_BY_PLAYER(Ped ped, Player player, BOOL toggle) // 0x66B57B72E0836A76 0xD050F490 b323
_0x061CB768363D6424
void PED::_0x061CB768363D6424(Ped ped, BOOL toggle) // 0x061CB768363D6424 0x7DA12905 b323
_0xFD325494792302D7
void PED::_0xFD325494792302D7(Ped ped, BOOL toggle) // 0xFD325494792302D7 0x7F67671D b323
IS_PED_IN_ANY_POLICE_VEHICLE
BOOL PED::IS_PED_IN_ANY_POLICE_VEHICLE(Ped ped) // 0x0BD04E29640C9C12 0x84FA790D b323
FORCE_PED_TO_OPEN_PARACHUTE
void PED::FORCE_PED_TO_OPEN_PARACHUTE(Ped ped) // 0x16E42E800B472221 0xA819680B b323
IS_PED_IN_PARACHUTE_FREE_FALL
BOOL PED::IS_PED_IN_PARACHUTE_FREE_FALL(Ped ped) // 0x7DCE8BDA0F1C1200 0xCD71F11B b323
IS_PED_FALLING
BOOL PED::IS_PED_FALLING(Ped ped) // 0xFB92A102F1C4DFA3 0xABF77334 b323
IS_PED_JUMPING
BOOL PED::IS_PED_JUMPING(Ped ped) // 0xCEDABC5900A0BF97 0x07E5BC0E b323
_0x412F1364FA066CFB
Any PED::_0x412F1364FA066CFB(Any p0) // 0x412F1364FA066CFB b573
_0x451D05012CCEC234
Any PED::_0x451D05012CCEC234(Any p0) // 0x451D05012CCEC234 b573
IS_PED_CLIMBING
BOOL PED::IS_PED_CLIMBING(Ped ped) // 0x53E8CB4F48BFE623 0xBCE03D35 b323
IS_PED_VAULTING
BOOL PED::IS_PED_VAULTING(Ped ped) // 0x117C70D1F5730B5E 0xC3169BDA b323
IS_PED_DIVING
BOOL PED::IS_PED_DIVING(Ped ped) // 0x5527B8246FEF9B11 0x7BC5BF3C b323
IS_PED_JUMPING_OUT_OF_VEHICLE
BOOL PED::IS_PED_JUMPING_OUT_OF_VEHICLE(Ped ped) // 0x433DDFFE2044B636 0xB19215F6 b323
_IS_PED_OPENING_A_DOOR
BOOL PED::_IS_PED_OPENING_A_DOOR(Ped ped) // 0x26AF0E8E30BD2A2C b323
IS_PED_* Returns true if the ped is currently opening a door (CTaskOpenDoor).
GET_PED_PARACHUTE_STATE
int PED::GET_PED_PARACHUTE_STATE(Ped ped) // 0x79CFD9827CC979B6 0x7D4BC475 b323
Returns: -1: Normal 0: Wearing parachute on back 1: Parachute opening 2: Parachute open 3: Falling to doom (e.g. after exiting parachute) Normal means no parachute?
GET_PED_PARACHUTE_LANDING_TYPE
int PED::GET_PED_PARACHUTE_LANDING_TYPE(Ped ped) // 0x8B9F1FC6AE8166C0 0x01F3B035 b323
-1: no landing 0: landing on both feet 1: stumbling 2: rolling 3: ragdoll
SET_PED_PARACHUTE_TINT_INDEX
void PED::SET_PED_PARACHUTE_TINT_INDEX(Ped ped, int tintIndex) // 0x333FC8DB079B7186 0x5AEFEC3A b323
GET_PED_PARACHUTE_TINT_INDEX
void PED::GET_PED_PARACHUTE_TINT_INDEX(Ped ped, int* outTintIndex) // 0xEAF5F7E5AE7C6C9D 0xE9E7FAC5 b323
SET_PED_RESERVE_PARACHUTE_TINT_INDEX
void PED::SET_PED_RESERVE_PARACHUTE_TINT_INDEX(Ped ped, Any p1) // 0xE88DA0751C22A2AD 0x177EFC79 b323
CREATE_PARACHUTE_BAG_OBJECT
Object PED::CREATE_PARACHUTE_BAG_OBJECT(Ped ped, BOOL p1, BOOL p2) // 0x8C4F3BF23B6237DB 0x19198A16 b323
SET_PED_DUCKING
void PED::SET_PED_DUCKING(Ped ped, BOOL toggle) // 0x030983CA930B692D 0xB90353D7 b323
This is the SET_CHAR_DUCKING from GTA IV, that makes Peds duck. This function does nothing in GTA V. It cannot set the ped as ducking in vehicles, and IS_PED_DUCKING will always return false.
IS_PED_DUCKING
BOOL PED::IS_PED_DUCKING(Ped ped) // 0xD125AE748725C6BC 0x9199C77D b323
IS_PED_IN_ANY_TAXI
BOOL PED::IS_PED_IN_ANY_TAXI(Ped ped) // 0x6E575D6A898AB852 0x16FD386C b323
SET_PED_ID_RANGE
void PED::SET_PED_ID_RANGE(Ped ped, float value) // 0xF107E836A70DCE05 0xEF3B4ED9 b323
SET_PED_HIGHLY_PERCEPTIVE
void PED::SET_PED_HIGHLY_PERCEPTIVE(Ped ped, BOOL toggle) // 0x52D59AB61DDC05DD 0x9A2180FF b323
_0x2F074C904D85129E
void PED::_0x2F074C904D85129E(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x2F074C904D85129E b393
_0xEC4B4B3B9908052A
void PED::_0xEC4B4B3B9908052A(Ped ped, float unk) // 0xEC4B4B3B9908052A 0xF30658D2 b323
SET_PED_* Has most likely to do with some shooting attributes as it sets the float which is in the same range as shootRate.
_0x733C87D4CE22BEA2
void PED::_0x733C87D4CE22BEA2(Any p0) // 0x733C87D4CE22BEA2 0x43709044 b323
SET_PED_SEEING_RANGE
void PED::SET_PED_SEEING_RANGE(Ped ped, float value) // 0xF29CF591C4BF6CEE 0x4BD72FE8 b323
SET_PED_HEARING_RANGE
void PED::SET_PED_HEARING_RANGE(Ped ped, float value) // 0x33A8F7F7D5F7F33C 0xB32087E0 b323
SET_PED_VISUAL_FIELD_MIN_ANGLE
void PED::SET_PED_VISUAL_FIELD_MIN_ANGLE(Ped ped, float value) // 0x2DB492222FB21E26 0x72E2E18B b323
SET_PED_VISUAL_FIELD_MAX_ANGLE
void PED::SET_PED_VISUAL_FIELD_MAX_ANGLE(Ped ped, float value) // 0x70793BDCA1E854D4 0x0CEA0F9A b323
SET_PED_VISUAL_FIELD_MIN_ELEVATION_ANGLE
void PED::SET_PED_VISUAL_FIELD_MIN_ELEVATION_ANGLE(Ped ped, float angle) // 0x7A276EB2C224D70F 0x5CC2F1B8 b323
This native refers to the field of vision the ped has below them, starting at 0 degrees. The angle value should be negative. -90f should let the ped see 90 degrees below them, for example.
SET_PED_VISUAL_FIELD_MAX_ELEVATION_ANGLE
void PED::SET_PED_VISUAL_FIELD_MAX_ELEVATION_ANGLE(Ped ped, float angle) // 0x78D0B67629D75856 0x39D9102F b323
This native refers to the field of vision the ped has above them, starting at 0 degrees. 90f would let the ped see enemies directly above of them.
SET_PED_VISUAL_FIELD_PERIPHERAL_RANGE
void PED::SET_PED_VISUAL_FIELD_PERIPHERAL_RANGE(Ped ped, float range) // 0x9C74B0BC831B753A 0xFDF2F7C2 b323
SET_PED_VISUAL_FIELD_CENTER_ANGLE
void PED::SET_PED_VISUAL_FIELD_CENTER_ANGLE(Ped ped, float angle) // 0x3B6405E8AB34A907 0xE57202A1 b323
_GET_PED_VISUAL_FIELD_CENTER_ANGLE
float PED::_GET_PED_VISUAL_FIELD_CENTER_ANGLE(Ped ped) // 0xEF2C71A32CAD5FBD b1493
SET_PED_STEALTH_MOVEMENT
void PED::SET_PED_STEALTH_MOVEMENT(Ped ped, BOOL p1, const char* action) // 0x88CBB5CEB96B7BD2 0x67E28E1D b323
p1 is usually 0 in the scripts. action is either 0 or a pointer to "DEFAULT_ACTION".
GET_PED_STEALTH_MOVEMENT
BOOL PED::GET_PED_STEALTH_MOVEMENT(Ped ped) // 0x7C2AC9CA66575FBF 0x40321B83 b323
Returns whether the entity is in stealth mode
CREATE_GROUP
int PED::CREATE_GROUP(int unused) // 0x90370EBE0FEE1A3D 0x8DC0368D b323
Creates a new ped group. Groups can contain up to 8 peds. The parameter is unused. Returns a handle to the created group, or 0 if a group couldn't be created.
SET_PED_AS_GROUP_LEADER
void PED::SET_PED_AS_GROUP_LEADER(Ped ped, int groupId) // 0x2A7819605465FBCE 0x7265BEA2 b323
SET_PED_AS_GROUP_MEMBER
void PED::SET_PED_AS_GROUP_MEMBER(Ped ped, int groupId) // 0x9F3480FE65DB31B5 0x0EE13F92 b323
SET_PED_CAN_TELEPORT_TO_GROUP_LEADER
void PED::SET_PED_CAN_TELEPORT_TO_GROUP_LEADER(Ped pedHandle, int groupHandle, BOOL toggle) // 0x2E2F4240B3F24647 0xD0D8BDBC b323
This only will teleport the ped to the group leader if the group leader teleports (sets coords). Only works in singleplayer
REMOVE_GROUP
void PED::REMOVE_GROUP(int groupId) // 0x8EB2F69076AF7053 0x48D72B88 b323
REMOVE_PED_FROM_GROUP
void PED::REMOVE_PED_FROM_GROUP(Ped ped) // 0xED74007FFB146BC2 0x82697713 b323
IS_PED_GROUP_MEMBER
BOOL PED::IS_PED_GROUP_MEMBER(Ped ped, int groupId) // 0x9BB01E3834671191 0x876D5363 b323
IS_PED_HANGING_ON_TO_VEHICLE
BOOL PED::IS_PED_HANGING_ON_TO_VEHICLE(Ped ped) // 0x1C86D8AEF8254B78 0x9678D4FF b323
SET_GROUP_SEPARATION_RANGE
void PED::SET_GROUP_SEPARATION_RANGE(int groupHandle, float separationRange) // 0x4102C7858CFEE4E4 0x7B820CD5 b323
Sets the range at which members will automatically leave the group.
SET_PED_MIN_GROUND_TIME_FOR_STUNGUN
void PED::SET_PED_MIN_GROUND_TIME_FOR_STUNGUN(Ped ped, int ms) // 0xFA0675AB151073FA 0x2F0D0973 b323
Ped will stay on the ground after being stunned for at lest ms time. (in milliseconds)
IS_PED_PRONE
BOOL PED::IS_PED_PRONE(Ped ped) // 0xD6A86331A537A7B9 0x02C2A6C3 b323
IS_PED_IN_COMBAT
BOOL PED::IS_PED_IN_COMBAT(Ped ped, Ped target) // 0x4859F1FC66A6278E 0xFE027CB5 b323
Checks to see if ped and target are in combat with eachother. Only goes one-way: if target is engaged in combat with ped but ped has not yet reacted, the function will return false until ped starts fighting back. p1 is usually 0 in the scripts because it gets the ped id during the task sequence. For instance: PED::IS_PED_IN_COMBAT(l_42E[4/*14*/], PLAYER::PLAYER_PED_ID()) // armenian2.ct4: 43794
CAN_PED_IN_COMBAT_SEE_TARGET
BOOL PED::CAN_PED_IN_COMBAT_SEE_TARGET(Ped ped, Ped target) // 0xEAD42DE3610D0721 0xCCD525E1 b323
IS_PED_DOING_DRIVEBY
BOOL PED::IS_PED_DOING_DRIVEBY(Ped ped) // 0xB2C086CC1BF8F2BF 0xAC3CEB9C b323
IS_PED_JACKING
BOOL PED::IS_PED_JACKING(Ped ped) // 0x4AE4FF911DFB61DA 0x3B321816 b323
IS_PED_BEING_JACKED
BOOL PED::IS_PED_BEING_JACKED(Ped ped) // 0x9A497FE2DF198913 0xD45D605C b323
IS_PED_BEING_STUNNED
BOOL PED::IS_PED_BEING_STUNNED(Ped ped, int p1) // 0x4FBACCE3B4138EE8 0x0A66CE30 b323
p1 is always 0
GET_PEDS_JACKER
Ped PED::GET_PEDS_JACKER(Ped ped) // 0x9B128DC36C1E04CF 0xDE1DBB59 b323
GET_JACK_TARGET
Ped PED::GET_JACK_TARGET(Ped ped) // 0x5486A79D9FBD342D 0x1D196361 b323
IS_PED_FLEEING
BOOL PED::IS_PED_FLEEING(Ped ped) // 0xBBCCE00B381F8482 0x85D813C6 b323
IS_PED_IN_COVER
BOOL PED::IS_PED_IN_COVER(Ped ped, BOOL exceptUseWeapon) // 0x60DFD0691A170B88 0x972C5A8B b323
p1 is nearly always 0 in the scripts.
IS_PED_IN_COVER_FACING_LEFT
BOOL PED::IS_PED_IN_COVER_FACING_LEFT(Ped ped) // 0x845333B3150583AB 0xB89DBB80 b323
IS_PED_IN_HIGH_COVER
BOOL PED::IS_PED_IN_HIGH_COVER(Ped ped) // 0x6A03BF943D767C93 0xDD5D08A7 b323
IS_PED_GOING_INTO_COVER
BOOL PED::IS_PED_GOING_INTO_COVER(Ped ped) // 0x9F65DBC537E59AD5 0xA3589628 b323
SET_PED_PINNED_DOWN
Any PED::SET_PED_PINNED_DOWN(Ped ped, BOOL pinned, int i) // 0xAAD6D1ACF08F4612 0xCC78999D b323
i could be time. Only example in the decompiled scripts uses it as -1.
GET_SEAT_PED_IS_TRYING_TO_ENTER
int PED::GET_SEAT_PED_IS_TRYING_TO_ENTER(Ped ped) // 0x6F4C85ACD641BCD2 0xACF162E0 b323
GET_VEHICLE_PED_IS_TRYING_TO_ENTER
Vehicle PED::GET_VEHICLE_PED_IS_TRYING_TO_ENTER(Ped ped) // 0x814FA8BE5449445D 0x99968B37 b323
GET_PED_SOURCE_OF_DEATH
Entity PED::GET_PED_SOURCE_OF_DEATH(Ped ped) // 0x93C8B64DEB84728C 0x84ADF9EB b323
Returns the Entity (Ped, Vehicle, or ?Object?) that killed the 'ped' Is best to check if the Ped is dead before asking for its killer.
GET_PED_CAUSE_OF_DEATH
Hash PED::GET_PED_CAUSE_OF_DEATH(Ped ped) // 0x16FFE42AB2D2DC59 0x63458C27 b323
Returns the hash of the weapon/model/object that killed the ped.
GET_PED_TIME_OF_DEATH
int PED::GET_PED_TIME_OF_DEATH(Ped ped) // 0x1E98817B311AE98A 0xDF6D5D54 b323
_0x5407B7288D0478B7
int PED::_0x5407B7288D0478B7(Any p0) // 0x5407B7288D0478B7 0xEF0B78E6 b323
_0x336B3D200AB007CB
Any PED::_0x336B3D200AB007CB(Any p0, float p1, float p2, float p3, float p4) // 0x336B3D200AB007CB 0xFB18CB19 b323
SET_PED_RELATIONSHIP_GROUP_DEFAULT_HASH
void PED::SET_PED_RELATIONSHIP_GROUP_DEFAULT_HASH(Ped ped, Hash hash) // 0xADB3F206518799E8 0x423B7BA2 b323
SET_PED_RELATIONSHIP_GROUP_HASH
void PED::SET_PED_RELATIONSHIP_GROUP_HASH(Ped ped, Hash hash) // 0xC80A74AC829DDD92 0x79F8C18C b323
SET_RELATIONSHIP_BETWEEN_GROUPS
void PED::SET_RELATIONSHIP_BETWEEN_GROUPS(int relationship, Hash group1, Hash group2) // 0xBF25EB89375A37AD 0xD4A215BA b323
Sets the relationship between two groups. This should be called twice (once for each group). Relationship types: 0 = Companion 1 = Respect 2 = Like 3 = Neutral 4 = Dislike 5 = Hate 255 = Pedestrians Example: PED::SET_RELATIONSHIP_BETWEEN_GROUPS(2, l_1017, 0xA49E591C); PED::SET_RELATIONSHIP_BETWEEN_GROUPS(2, 0xA49E591C, l_1017);
CLEAR_RELATIONSHIP_BETWEEN_GROUPS
void PED::CLEAR_RELATIONSHIP_BETWEEN_GROUPS(int relationship, Hash group1, Hash group2) // 0x5E29243FB56FC6D4 0x994B8C2D b323
Clears the relationship between two groups. This should be called twice (once for each group). Relationship types: 0 = Companion 1 = Respect 2 = Like 3 = Neutral 4 = Dislike 5 = Hate 255 = Pedestrians (Credits: Inco) Example: PED::CLEAR_RELATIONSHIP_BETWEEN_GROUPS(2, l_1017, 0xA49E591C); PED::CLEAR_RELATIONSHIP_BETWEEN_GROUPS(2, 0xA49E591C, l_1017);
ADD_RELATIONSHIP_GROUP
Any PED::ADD_RELATIONSHIP_GROUP(const char* name, Hash* groupHash) // 0xF372BC22FCB88606 0x8B635546 b323
Can't select void. This function returns nothing. The hash of the created relationship group is output in the second parameter.
REMOVE_RELATIONSHIP_GROUP
void PED::REMOVE_RELATIONSHIP_GROUP(Hash groupHash) // 0xB6BA2444AB393DA2 0x4A1DC59A b323
_DOES_RELATIONSHIP_GROUP_EXIST
BOOL PED::_DOES_RELATIONSHIP_GROUP_EXIST(Hash groupHash) // 0xCC6E3B6BB69501F1 b505
GET_RELATIONSHIP_BETWEEN_PEDS
int PED::GET_RELATIONSHIP_BETWEEN_PEDS(Ped ped1, Ped ped2) // 0xEBA5AD3A0EAF7121 0xE254C39C b323
Gets the relationship between two peds. This should be called twice (once for each ped). Relationship types: 0 = Companion 1 = Respect 2 = Like 3 = Neutral 4 = Dislike 5 = Hate 255 = Pedestrians (Credits: Inco) Example: PED::GET_RELATIONSHIP_BETWEEN_PEDS(2, l_1017, 0xA49E591C); PED::GET_RELATIONSHIP_BETWEEN_PEDS(2, 0xA49E591C, l_1017);
GET_PED_RELATIONSHIP_GROUP_DEFAULT_HASH
Hash PED::GET_PED_RELATIONSHIP_GROUP_DEFAULT_HASH(Ped ped) // 0x42FDD0F017B1E38E 0x714BD6E4 b323
GET_PED_RELATIONSHIP_GROUP_HASH
Hash PED::GET_PED_RELATIONSHIP_GROUP_HASH(Ped ped) // 0x7DBDD04862D95F04 0x354F283C b323
GET_RELATIONSHIP_BETWEEN_GROUPS
int PED::GET_RELATIONSHIP_BETWEEN_GROUPS(Hash group1, Hash group2) // 0x9E6B70061662AE5C 0x4E372FE2 b323
Gets the relationship between two groups. This should be called twice (once for each group). Relationship types: 0 = Companion 1 = Respect 2 = Like 3 = Neutral 4 = Dislike 5 = Hate 255 = Pedestrians Example: PED::GET_RELATIONSHIP_BETWEEN_GROUPS(l_1017, 0xA49E591C); PED::GET_RELATIONSHIP_BETWEEN_GROUPS(0xA49E591C, l_1017);
_SET_RELATIONSHIP_GROUP_DONT_AFFECT_WANTED_LEVEL
void PED::_SET_RELATIONSHIP_GROUP_DONT_AFFECT_WANTED_LEVEL(Hash group, BOOL p1) // 0x5615E0C5EB2BC6E2 b877
_0xAD27D957598E49E9
void PED::_0xAD27D957598E49E9(Ped ped, Any p1, float p2, Hash hash, Any p4, Any p5) // 0xAD27D957598E49E9 b1290
Does something with ped relationships
SET_PED_CAN_BE_TARGETED_WITHOUT_LOS
void PED::SET_PED_CAN_BE_TARGETED_WITHOUT_LOS(Ped ped, BOOL toggle) // 0x4328652AE5769C71 0x7FDDC0A6 b323
SET_PED_TO_INFORM_RESPECTED_FRIENDS
void PED::SET_PED_TO_INFORM_RESPECTED_FRIENDS(Ped ped, float radius, int maxFriends) // 0x112942C6E708F70B 0xD78AC46C b323
IS_PED_RESPONDING_TO_EVENT
BOOL PED::IS_PED_RESPONDING_TO_EVENT(Ped ped, Any event) // 0x625B774D75C87068 0x7A877554 b323
_GET_PED_EVENT_DATA
BOOL PED::_GET_PED_EVENT_DATA(Ped ped, int eventType, Any* outData) // 0xBA656A3BB01BDEA3 b2189
SET_PED_FIRING_PATTERN
void PED::SET_PED_FIRING_PATTERN(Ped ped, Hash patternHash) // 0x9AC577F5A12AD8A9 0xB4629D66 b323
FIRING_PATTERN_BURST_FIRE = 0xD6FF6D61 ( 1073727030 ) FIRING_PATTERN_BURST_FIRE_IN_COVER = 0x026321F1 ( 40051185 ) FIRING_PATTERN_BURST_FIRE_DRIVEBY = 0xD31265F2 ( -753768974 ) FIRING_PATTERN_FROM_GROUND = 0x2264E5D6 ( 577037782 ) FIRING_PATTERN_DELAY_FIRE_BY_ONE_SEC = 0x7A845691 ( 2055493265 ) FIRING_PATTERN_FULL_AUTO = 0xC6EE6B4C ( -957453492 ) FIRING_PATTERN_SINGLE_SHOT = 0x5D60E4E0 ( 1566631136 ) FIRING_PATTERN_BURST_FIRE_PISTOL = 0xA018DB8A ( -1608983670 ) FIRING_PATTERN_BURST_FIRE_SMG = 0xD10DADEE ( 1863348768 ) FIRING_PATTERN_BURST_FIRE_RIFLE = 0x9C74B406 ( -1670073338 ) FIRING_PATTERN_BURST_FIRE_MG = 0xB573C5B4 ( -1250703948 ) FIRING_PATTERN_BURST_FIRE_PUMPSHOTGUN = 0x00BAC39B ( 12239771 ) FIRING_PATTERN_BURST_FIRE_HELI = 0x914E786F ( -1857128337 ) FIRING_PATTERN_BURST_FIRE_MICRO = 0x42EF03FD ( 1122960381 ) FIRING_PATTERN_SHORT_BURSTS = 0x1A92D7DF ( 445831135 ) FIRING_PATTERN_SLOW_FIRE_TANK = 0xE2CA3A71 ( -490063247 ) if anyone is interested firing pattern info: pastebin.com/Px036isB
SET_PED_SHOOT_RATE
void PED::SET_PED_SHOOT_RATE(Ped ped, int shootRate) // 0x614DA022990752DC 0xFB301746 b323
shootRate 0-1000
SET_COMBAT_FLOAT
void PED::SET_COMBAT_FLOAT(Ped ped, int combatType, float p2) // 0xFF41B4B141ED981C 0xD8B7637C b323
combatType can be between 0-14. See GET_COMBAT_FLOAT below for a list of possible parameters.
GET_COMBAT_FLOAT
float PED::GET_COMBAT_FLOAT(Ped ped, int p1) // 0x52DFF8A10508090A 0x511D7EF8 b323
p0: Ped Handle p1: int i | 0 <= i <= 27 p1 probably refers to the attributes configured in combatbehavior.meta. There are 13. Example: <BlindFireChance value="0.1"/> <WeaponShootRateModifier value="1.0"/> <TimeBetweenBurstsInCover value="1.25"/> <BurstDurationInCover value="2.0"/> <TimeBetweenPeeks value="10.0"/> <WeaponAccuracy value="0.18"/> <FightProficiency value="0.8"/> <StrafeWhenMovingChance value="1.0"/> <WalkWhenStrafingChance value="0.0"/> <AttackWindowDistanceForCover value="55.0"/> <TimeToInvalidateInjuredTarget value="9.0"/> <TriggerChargeTime_Near value="4.0"/> <TriggerChargeTime_Far value="10.0"/> -------------Confirmed by editing combatbehavior.meta: p1: 0=BlindFireChance 1=BurstDurationInCover 3=TimeBetweenBurstsInCover 4=TimeBetweenPeeks 5=StrafeWhenMovingChance 8=WalkWhenStrafingChance 11=AttackWindowDistanceForCover 12=TimeToInvalidateInjuredTarget 16=OptimalCoverDistance
GET_GROUP_SIZE
void PED::GET_GROUP_SIZE(int groupID, Any* unknown, int* sizeInMembers) // 0x8DE69FE35CA09A45 0xF7E1A691 b323
p1 may be a BOOL representing whether or not the group even exists
DOES_GROUP_EXIST
BOOL PED::DOES_GROUP_EXIST(int groupId) // 0x7C6B0C22F9F40BBE 0x935C978D b323
GET_PED_GROUP_INDEX
int PED::GET_PED_GROUP_INDEX(Ped ped) // 0xF162E133B4E7A675 0x134E0785 b323
Returns the group id of which the specified ped is a member of.
IS_PED_IN_GROUP
BOOL PED::IS_PED_IN_GROUP(Ped ped) // 0x5891CAC5D4ACFF74 0x836D9795 b323
GET_PLAYER_PED_IS_FOLLOWING
Player PED::GET_PLAYER_PED_IS_FOLLOWING(Ped ped) // 0x6A3975DEA89F9A17 0xDE7442EE b323
SET_GROUP_FORMATION
void PED::SET_GROUP_FORMATION(int groupId, int formationType) // 0xCE2F5FC3AF7E8C1E 0x08FAC739 b323
0: Default 1: Circle Around Leader 2: Alternative Circle Around Leader 3: Line, with Leader at center
SET_GROUP_FORMATION_SPACING
void PED::SET_GROUP_FORMATION_SPACING(int groupId, float p1, float p2, float p3) // 0x1D9D45004C28C916 0xB1E086FF b323
RESET_GROUP_FORMATION_DEFAULT_SPACING
void PED::RESET_GROUP_FORMATION_DEFAULT_SPACING(int groupHandle) // 0x63DAB4CCB3273205 0x267FCEAD b323
GET_VEHICLE_PED_IS_USING
Vehicle PED::GET_VEHICLE_PED_IS_USING(Ped ped) // 0x6094AD011A2EA87D 0x6DE3AADA b323
Gets ID of vehicle player using. It means it can get ID at any interaction with vehicle. Enter\exit for example. And that means it is faster than GET_VEHICLE_PED_IS_IN but less safe.
GET_VEHICLE_PED_IS_ENTERING
Vehicle PED::GET_VEHICLE_PED_IS_ENTERING(Ped ped) // 0xF92691AED837A5FC 0x56E0C163 b323
SET_PED_GRAVITY
void PED::SET_PED_GRAVITY(Ped ped, BOOL toggle) // 0x9FF447B6B6AD960A 0x3CA16652 b323
enable or disable the gravity of a ped Examples: PED::SET_PED_GRAVITY(PLAYER::PLAYER_PED_ID(), 0x00000001); PED::SET_PED_GRAVITY(Local_289[iVar0 /*20*/], 0x00000001);
APPLY_DAMAGE_TO_PED
void PED::APPLY_DAMAGE_TO_PED(Ped ped, int damageAmount, BOOL p2, Any p3) // 0x697157CED63F18D4 0x4DC27FCF b323
damages a ped with the given amount
_GET_TIME_OF_LAST_PED_WEAPON_DAMAGE
int PED::_GET_TIME_OF_LAST_PED_WEAPON_DAMAGE(Ped ped, Hash weaponHash) // 0x36B77BB84687C318 0x0170C6E1 b323
GET_TIME_*
SET_PED_ALLOWED_TO_DUCK
void PED::SET_PED_ALLOWED_TO_DUCK(Ped ped, BOOL toggle) // 0xDA1F1B7BE1A8766F 0xC4D122F8 b323
SET_PED_NEVER_LEAVES_GROUP
void PED::SET_PED_NEVER_LEAVES_GROUP(Ped ped, BOOL toggle) // 0x3DBFC55D5C9BB447 0x0E038813 b323
GET_PED_TYPE
int PED::GET_PED_TYPE(Ped ped) // 0xFF059E1E4C01E63C 0xB1460D43 b323
https://alloc8or.re/gta5/doc/enums/ePedType.txt
SET_PED_AS_COP
void PED::SET_PED_AS_COP(Ped ped, BOOL toggle) // 0xBB03C38DD3FB7FFD 0x84E7DE9F b323
Turns the desired ped into a cop. If you use this on the player ped, you will become almost invisible to cops dispatched for you. You will also report your own crimes, get a generic cop voice, get a cop-vision-cone on the radar, and you will be unable to shoot at other cops. SWAT and Army will still shoot at you. Toggling ped as "false" has no effect; you must change p0's ped model to disable the effect.
SET_PED_MAX_HEALTH
void PED::SET_PED_MAX_HEALTH(Ped ped, int value) // 0xF5F6378C4F3419D3 0x5533F60B b323
sets the maximum health of a ped I think it's never been used in any script
GET_PED_MAX_HEALTH
int PED::GET_PED_MAX_HEALTH(Ped ped) // 0x4700A416E8324EF3 0xA45B6C8D b323
SET_PED_MAX_TIME_IN_WATER
void PED::SET_PED_MAX_TIME_IN_WATER(Ped ped, float value) // 0x43C851690662113D 0xFE0A106B b323
SET_PED_MAX_TIME_UNDERWATER
void PED::SET_PED_MAX_TIME_UNDERWATER(Ped ped, float value) // 0x6BA428C528D9E522 0x082EF240 b323
_0x2735233A786B1BEF
void PED::_0x2735233A786B1BEF(Ped ped, float p1) // 0x2735233A786B1BEF 0x373CC405 b323
SET_PED_VEHICLE_FORCED_SEAT_USAGE
void PED::SET_PED_VEHICLE_FORCED_SEAT_USAGE(Ped ped, Vehicle vehicle, int seatIndex, int flags, Any p4) // 0x952F06BEECD775CC 0x79CA237B b323
seatIndex must be <= 2
CLEAR_ALL_PED_VEHICLE_FORCED_SEAT_USAGE
void PED::CLEAR_ALL_PED_VEHICLE_FORCED_SEAT_USAGE(Ped ped) // 0xE6CA85E7259CE16B 0xCC1D8F66 b323
_0xB282749D5E028163
void PED::_0xB282749D5E028163(Any p0, Any p1) // 0xB282749D5E028163 b877
This native does absolutely nothing, just a nullsub
SET_PED_CAN_BE_KNOCKED_OFF_VEHICLE
void PED::SET_PED_CAN_BE_KNOCKED_OFF_VEHICLE(Ped ped, int state) // 0x7A6535691B477C48 0x8A251612 b323
state: https://alloc8or.re/gta5/doc/enums/eKnockOffVehicle.txt
CAN_KNOCK_PED_OFF_VEHICLE
BOOL PED::CAN_KNOCK_PED_OFF_VEHICLE(Ped ped) // 0x51AC07A44D4F5B8A 0xC9D098B3 b323
KNOCK_PED_OFF_VEHICLE
void PED::KNOCK_PED_OFF_VEHICLE(Ped ped) // 0x45BBCBA77C29A841 0xACDD0674 b323
SET_PED_COORDS_NO_GANG
void PED::SET_PED_COORDS_NO_GANG(Ped ped, float posX, float posY, float posZ) // 0x87052FE446E07247 0x9561AD98 b323
GET_PED_AS_GROUP_MEMBER
Ped PED::GET_PED_AS_GROUP_MEMBER(int groupID, int memberNumber) // 0x51455483CF23ED97 0x9AA3CC8C b323
from fm_mission_controller.c4 (variable names changed for clarity): int groupID = PLAYER::GET_PLAYER_GROUP(PLAYER::PLAYER_ID()); PED::GET_GROUP_SIZE(group, &unused, &groupSize); if (groupSize >= 1) { . . . . for (int memberNumber = 0; memberNumber < groupSize; memberNumber++) { . . . . . . . . Ped ped1 = PED::GET_PED_AS_GROUP_MEMBER(groupID, memberNumber); . . . . . . . . //and so on
GET_PED_AS_GROUP_LEADER
Ped PED::GET_PED_AS_GROUP_LEADER(int groupID) // 0x5CCE68DBD5FE93EC 0x52873C6A b323
SET_PED_KEEP_TASK
void PED::SET_PED_KEEP_TASK(Ped ped, BOOL toggle) // 0x971D38760FBC02EF 0xA7EC79CE b323
_0x49E50BDB8BA4DAB2
void PED::_0x49E50BDB8BA4DAB2(Ped ped, BOOL toggle) // 0x49E50BDB8BA4DAB2 0x397F06E3 b323
SET_PED_ALLOW*
IS_PED_SWIMMING
BOOL PED::IS_PED_SWIMMING(Ped ped) // 0x9DE327631295B4C2 0x7AB43DB8 b323
IS_PED_SWIMMING_UNDER_WATER
BOOL PED::IS_PED_SWIMMING_UNDER_WATER(Ped ped) // 0xC024869A53992F34 0x0E8D524F b323
SET_PED_COORDS_KEEP_VEHICLE
void PED::SET_PED_COORDS_KEEP_VEHICLE(Ped ped, float posX, float posY, float posZ) // 0x9AFEFF481A85AB2E 0xD66AE1D3 b323
teleports ped to coords along with the vehicle ped is in
SET_PED_DIES_IN_VEHICLE
void PED::SET_PED_DIES_IN_VEHICLE(Ped ped, BOOL toggle) // 0x2A30922C90C9B42C 0x6FE1E440 b323
SET_CREATE_RANDOM_COPS
void PED::SET_CREATE_RANDOM_COPS(BOOL toggle) // 0x102E68B2024D536D 0x23441648 b323
SET_CREATE_RANDOM_COPS_NOT_ON_SCENARIOS
void PED::SET_CREATE_RANDOM_COPS_NOT_ON_SCENARIOS(BOOL toggle) // 0x8A4986851C4EF6E7 0x82E548CC b323
SET_CREATE_RANDOM_COPS_ON_SCENARIOS
void PED::SET_CREATE_RANDOM_COPS_ON_SCENARIOS(BOOL toggle) // 0x444CB7D7DBE6973D 0xEDC31475 b323
CAN_CREATE_RANDOM_COPS
BOOL PED::CAN_CREATE_RANDOM_COPS() // 0x5EE2CAFF7F17770D 0xAA73DAD9 b323
SET_PED_AS_ENEMY
void PED::SET_PED_AS_ENEMY(Ped ped, BOOL toggle) // 0x02A0C9720B854BFA 0xAE620A1B b323
SET_PED_CAN_SMASH_GLASS
void PED::SET_PED_CAN_SMASH_GLASS(Ped ped, BOOL p1, BOOL p2) // 0x1CCE141467FF42A2 0x149C60A8 b323
IS_PED_IN_ANY_TRAIN
BOOL PED::IS_PED_IN_ANY_TRAIN(Ped ped) // 0x6F972C1AB75A1ED0 0x759EF63A b323
IS_PED_GETTING_INTO_A_VEHICLE
BOOL PED::IS_PED_GETTING_INTO_A_VEHICLE(Ped ped) // 0xBB062B2B5722478E 0x90E805AC b323
IS_PED_TRYING_TO_ENTER_A_LOCKED_VEHICLE
BOOL PED::IS_PED_TRYING_TO_ENTER_A_LOCKED_VEHICLE(Ped ped) // 0x44D28D5DDFE5F68C 0x46828B4E b323
SET_ENABLE_HANDCUFFS
void PED::SET_ENABLE_HANDCUFFS(Ped ped, BOOL toggle) // 0xDF1AF8B5D56542FA 0xAC9BBA23 b323
ped can not pull out a weapon when true
SET_ENABLE_BOUND_ANKLES
void PED::SET_ENABLE_BOUND_ANKLES(Ped ped, BOOL toggle) // 0xC52E0F855C58FC2E 0x9208D689 b323
Used with SET_ENABLE_HANDCUFFS in decompiled scripts. From my observations, I have noticed that while being ragdolled you are not able to get up but you can still run. Your legs can also bend.
SET_ENABLE_SCUBA
void PED::SET_ENABLE_SCUBA(Ped ped, BOOL toggle) // 0xF99F62004024D506 0x7BF61471 b323
Enables diving motion when underwater.
SET_CAN_ATTACK_FRIENDLY
void PED::SET_CAN_ATTACK_FRIENDLY(Ped ped, BOOL toggle, BOOL p2) // 0xB3B1CB349FF9C75D 0x47C60963 b323
Setting ped to true allows the ped to shoot "friendlies". p2 set to true when toggle is also true seams to make peds permanently unable to aim at, even if you set p2 back to false. p1 = false & p2 = false for unable to aim at. p1 = true & p2 = false for able to aim at.
GET_PED_ALERTNESS
int PED::GET_PED_ALERTNESS(Ped ped) // 0xF6AA118530443FD2 0xF83E4DAF b323
Returns the ped's alertness (0-3). Values : 0 : Neutral 1 : Heard something (gun shot, hit, etc) 2 : Knows (the origin of the event) 3 : Fully alerted (is facing the event?) If the Ped does not exist, returns -1.
SET_PED_ALERTNESS
void PED::SET_PED_ALERTNESS(Ped ped, int value) // 0xDBA71115ED9941A6 0x2C32D9AE b323
value ranges from 0 to 3.
SET_PED_GET_OUT_UPSIDE_DOWN_VEHICLE
void PED::SET_PED_GET_OUT_UPSIDE_DOWN_VEHICLE(Ped ped, BOOL toggle) // 0xBC0ED94165A48BC2 0x89AD49FF b323
SET_PED_MOVEMENT_CLIPSET
void PED::SET_PED_MOVEMENT_CLIPSET(Ped ped, const char* clipSet, float p2) // 0xAF8A94EDE7712BEF 0xA817CDEB b323
p2 is usually 1.0f EDIT 12/24/16: p2 does absolutely nothing no matter what the value is. List of movement clipsets: Thanks to elsewhat for list. "ANIM_GROUP_MOVE_BALLISTIC" "ANIM_GROUP_MOVE_LEMAR_ALLEY" "clipset@move@trash_fast_turn" "FEMALE_FAST_RUNNER" "missfbi4prepp1_garbageman" "move_characters@franklin@fire" "move_characters@Jimmy@slow@" "move_characters@michael@fire" "move_f@flee@a" "move_f@scared" "move_f@sexy@a" "move_heist_lester" "move_injured_generic" "move_lester_CaneUp" "move_m@bag" "MOVE_M@BAIL_BOND_NOT_TAZERED" "MOVE_M@BAIL_BOND_TAZERED" "move_m@brave" "move_m@casual@d" "move_m@drunk@moderatedrunk" "MOVE_M@DRUNK@MODERATEDRUNK" "MOVE_M@DRUNK@MODERATEDRUNK_HEAD_UP" "MOVE_M@DRUNK@SLIGHTLYDRUNK" "MOVE_M@DRUNK@VERYDRUNK" "move_m@fire" "move_m@gangster@var_e" "move_m@gangster@var_f" "move_m@gangster@var_i" "move_m@JOG@" "MOVE_M@PRISON_GAURD" "MOVE_P_M_ONE" "MOVE_P_M_ONE_BRIEFCASE" "move_p_m_zero_janitor" "move_p_m_zero_slow" "move_ped_bucket" "move_ped_crouched" "move_ped_mop" "MOVE_M@FEMME@" "MOVE_F@FEMME@" "MOVE_M@GANGSTER@NG" "MOVE_F@GANGSTER@NG" "MOVE_M@POSH@" "MOVE_F@POSH@" "MOVE_M@TOUGH_GUY@" "MOVE_F@TOUGH_GUY@" ~ NotCrunchyTaco Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
RESET_PED_MOVEMENT_CLIPSET
void PED::RESET_PED_MOVEMENT_CLIPSET(Ped ped, float p1) // 0xAA74EC0CB0AAEA2C 0xB83CEE93 b323
If p1 is 0.0, I believe you are back to normal. If p1 is 1.0, it looks like you can only rotate the ped, not walk. Using the following code to reset back to normal PED::RESET_PED_MOVEMENT_CLIPSET(PLAYER::PLAYER_PED_ID(), 0.0);
SET_PED_STRAFE_CLIPSET
void PED::SET_PED_STRAFE_CLIPSET(Ped ped, const char* clipSet) // 0x29A28F3F8CF6D854 0x0BACF010 b323
Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
RESET_PED_STRAFE_CLIPSET
void PED::RESET_PED_STRAFE_CLIPSET(Ped ped) // 0x20510814175EA477 0xF1967A12 b323
SET_PED_WEAPON_MOVEMENT_CLIPSET
void PED::SET_PED_WEAPON_MOVEMENT_CLIPSET(Ped ped, const char* clipSet) // 0x2622E35B77D3ACA2 0xF8BE54DC b323
RESET_PED_WEAPON_MOVEMENT_CLIPSET
void PED::RESET_PED_WEAPON_MOVEMENT_CLIPSET(Ped ped) // 0x97B0DB5B4AA74E77 0xC60C9ACD b323
SET_PED_DRIVE_BY_CLIPSET_OVERRIDE
void PED::SET_PED_DRIVE_BY_CLIPSET_OVERRIDE(Ped ped, const char* clipset) // 0xED34AB6C5CB36520 0xD4C73595 b323
CLEAR_PED_DRIVE_BY_CLIPSET_OVERRIDE
void PED::CLEAR_PED_DRIVE_BY_CLIPSET_OVERRIDE(Ped ped) // 0x4AFE3690D7E0B5AC 0xAEC9163B b323
_SET_PED_COVER_CLIPSET_OVERRIDE
void PED::_SET_PED_COVER_CLIPSET_OVERRIDE(Ped ped, const char* p1) // 0x9DBA107B4937F809 b323
Found in the b617d scripts: PED::_9DBA107B4937F809(v_7, "trevor_heist_cover_2h"); SET_PED_MO*
_CLEAR_PED_COVER_CLIPSET_OVERRIDE
void PED::_CLEAR_PED_COVER_CLIPSET_OVERRIDE(Ped ped) // 0xC79196DCB36F6121 b323
CLEAR_PED_*
_0x80054D7FCC70EEC6
void PED::_0x80054D7FCC70EEC6(Ped ped) // 0x80054D7FCC70EEC6 b323
CLEAR_PED_*
SET_PED_IN_VEHICLE_CONTEXT
void PED::SET_PED_IN_VEHICLE_CONTEXT(Ped ped, Hash context) // 0x530071295899A8C6 0x27F25C0E b323
PED::SET_PED_IN_VEHICLE_CONTEXT(l_128, MISC::GET_HASH_KEY("MINI_PROSTITUTE_LOW_PASSENGER")); PED::SET_PED_IN_VEHICLE_CONTEXT(l_128, MISC::GET_HASH_KEY("MINI_PROSTITUTE_LOW_RESTRICTED_PASSENGER")); PED::SET_PED_IN_VEHICLE_CONTEXT(l_3212, MISC::GET_HASH_KEY("MISS_FAMILY1_JIMMY_SIT")); PED::SET_PED_IN_VEHICLE_CONTEXT(l_3212, MISC::GET_HASH_KEY("MISS_FAMILY1_JIMMY_SIT_REAR")); PED::SET_PED_IN_VEHICLE_CONTEXT(l_95, MISC::GET_HASH_KEY("MISS_FAMILY2_JIMMY_BICYCLE")); PED::SET_PED_IN_VEHICLE_CONTEXT(num3, MISC::GET_HASH_KEY("MISSFBI2_MICHAEL_DRIVEBY")); PED::SET_PED_IN_VEHICLE_CONTEXT(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("MISS_ARMENIAN3_FRANKLIN_TENSE")); PED::SET_PED_IN_VEHICLE_CONTEXT(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("MISSFBI5_TREVOR_DRIVING"));
RESET_PED_IN_VEHICLE_CONTEXT
void PED::RESET_PED_IN_VEHICLE_CONTEXT(Ped ped) // 0x22EF8FF8778030EB 0x3C94D88A b323
IS_SCRIPTED_SCENARIO_PED_USING_CONDITIONAL_ANIM
BOOL PED::IS_SCRIPTED_SCENARIO_PED_USING_CONDITIONAL_ANIM(Ped ped, const char* animDict, const char* anim) // 0x6EC47A344923E1ED 0x3C30B447 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
SET_PED_ALTERNATE_WALK_ANIM
void PED::SET_PED_ALTERNATE_WALK_ANIM(Ped ped, const char* animDict, const char* animName, float p3, BOOL p4) // 0x6C60394CB4F75E9A 0x895E1D67 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
CLEAR_PED_ALTERNATE_WALK_ANIM
void PED::CLEAR_PED_ALTERNATE_WALK_ANIM(Ped ped, float p1) // 0x8844BBFCE30AA9E9 0x5736FB23 b323
SET_PED_ALTERNATE_MOVEMENT_ANIM
void PED::SET_PED_ALTERNATE_MOVEMENT_ANIM(Ped ped, int stance, const char* animDictionary, const char* animationName, float p4, BOOL p5) // 0x90A43CC281FFAB46 0xBA84FD8C b323
stance: 0 = idle 1 = walk 2 = running p5 = usually set to true Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
CLEAR_PED_ALTERNATE_MOVEMENT_ANIM
void PED::CLEAR_PED_ALTERNATE_MOVEMENT_ANIM(Ped ped, int stance, float p2) // 0xD8D19675ED5FBDCE 0x7A7F5BC3 b323
SET_PED_GESTURE_GROUP
void PED::SET_PED_GESTURE_GROUP(Ped ped, const char* animGroupGesture) // 0xDDF803377F94AAA8 0x170DA109 b323
From the scripts: PED::SET_PED_GESTURE_GROUP(PLAYER::PLAYER_PED_ID(), "ANIM_GROUP_GESTURE_MISS_FRA0"); PED::SET_PED_GESTURE_GROUP(PLAYER::PLAYER_PED_ID(), "ANIM_GROUP_GESTURE_MISS_DocksSetup1");
GET_ANIM_INITIAL_OFFSET_POSITION
Vector3 PED::GET_ANIM_INITIAL_OFFSET_POSITION(const char* animDict, const char* animName, float x, float y, float z, float xRot, float yRot, float zRot, float p8, int p9) // 0xBE22B26DD764C040 0xC59D4268 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
GET_ANIM_INITIAL_OFFSET_ROTATION
Vector3 PED::GET_ANIM_INITIAL_OFFSET_ROTATION(const char* animDict, const char* animName, float x, float y, float z, float xRot, float yRot, float zRot, float p8, int p9) // 0x4B805E6046EE9E47 0x5F7789E6 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
GET_PED_DRAWABLE_VARIATION
int PED::GET_PED_DRAWABLE_VARIATION(Ped ped, int componentId) // 0x67F3780DD425D4FC 0x29850FE2 b323
Ids 0 - Head 1 - Beard 2 - Hair 3 - Torso 4 - Legs 5 - Hands 6 - Foot 7 - ------ 8 - Accessories 1 9 - Accessories 2 10- Decals 11 - Auxiliary parts for torso
GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS
int PED::GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(Ped ped, int componentId) // 0x27561561732A7842 0x9754C27D b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
GET_PED_TEXTURE_VARIATION
int PED::GET_PED_TEXTURE_VARIATION(Ped ped, int componentId) // 0x04A355E041E004E6 0xC0A8590A b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
GET_NUMBER_OF_PED_TEXTURE_VARIATIONS
int PED::GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(Ped ped, int componentId, int drawableId) // 0x8F7156A3142A6BAD 0x83D9FBE7 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS
int PED::GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(Ped ped, int propId) // 0x5FAF9754E789FB47 0xC9780B95 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS
int PED::GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(Ped ped, int propId, int drawableId) // 0xA6E7F1CEB523E171 0x4892B882 b323
Need to check behavior when drawableId = -1 - Doofy.Ass Why this function doesn't work and return nill value? GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER.PLAYER_PED_ID(), 0, 5) tick: scripts/addins/menu_execute.lua:51: attempt to call field 'GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS' (a nil value) List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
GET_PED_PALETTE_VARIATION
int PED::GET_PED_PALETTE_VARIATION(Ped ped, int componentId) // 0xE3DD5F2A84B42281 0xEF1BC082 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
_0x9E30E91FB03A2CAF
BOOL PED::_0x9E30E91FB03A2CAF(Any* p0, Any* p1) // 0x9E30E91FB03A2CAF 0x52559BB6 b323
_0x1E77FA7A62EE6C4C
Any PED::_0x1E77FA7A62EE6C4C(Any p0) // 0x1E77FA7A62EE6C4C 0x021F5B36 b323
GET_*
_0xF033419D1B81FAE8
Any PED::_0xF033419D1B81FAE8(Any p0) // 0xF033419D1B81FAE8 0x8FDDB5DB b323
GET_*
IS_PED_COMPONENT_VARIATION_VALID
BOOL PED::IS_PED_COMPONENT_VARIATION_VALID(Ped ped, int componentId, int drawableId, int textureId) // 0xE825F6B6CEA7671D 0x952ABD9A b323
Checks if the component variation is valid, this works great for randomizing components using loops. List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html Full list of ped components by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedComponentVariations.json
SET_PED_COMPONENT_VARIATION
void PED::SET_PED_COMPONENT_VARIATION(Ped ped, int componentId, int drawableId, int textureId, int paletteId) // 0x262B14F48D29DE80 0xD4F7B05C b323
paletteId/palletColor - 0 to 3. enum PedVariationData { PED_VARIATION_FACE = 0, PED_VARIATION_HEAD = 1, PED_VARIATION_HAIR = 2, PED_VARIATION_TORSO = 3, PED_VARIATION_LEGS = 4, PED_VARIATION_HANDS = 5, PED_VARIATION_FEET = 6, PED_VARIATION_EYES = 7, PED_VARIATION_ACCESSORIES = 8, PED_VARIATION_TASKS = 9, PED_VARIATION_TEXTURES = 10, PED_VARIATION_TORSO2 = 11 }; Usage: SET_PED_COMPONENT_VARIATION(playerPed, PED_VARIATION_FACE, GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(playerPed, PED_VARIATION_FACE), GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(playerPed, PED_VARIATION_FACE, 0), 2); List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html Full list of ped components by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedComponentVariations.json
SET_PED_RANDOM_COMPONENT_VARIATION
void PED::SET_PED_RANDOM_COMPONENT_VARIATION(Ped ped, int p1) // 0xC8A9481A01E63C28 0x4111BA46 b323
p1 is always 0 in R* scripts. List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
SET_PED_RANDOM_PROPS
void PED::SET_PED_RANDOM_PROPS(Ped ped) // 0xC44AA05345C992C6 0xE3318E0E b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
SET_PED_DEFAULT_COMPONENT_VARIATION
void PED::SET_PED_DEFAULT_COMPONENT_VARIATION(Ped ped) // 0x45EEE61580806D63 0xC866A984 b323
Sets Ped Default Clothes
SET_PED_BLEND_FROM_PARENTS
void PED::SET_PED_BLEND_FROM_PARENTS(Ped ped, Any p1, Any p2, float p3, float p4) // 0x137BBD05230DB22D 0x837BD370 b323
SET_PED_HEAD_BLEND_DATA
void PED::SET_PED_HEAD_BLEND_DATA(Ped ped, int shapeFirstID, int shapeSecondID, int shapeThirdID, int skinFirstID, int skinSecondID, int skinThirdID, float shapeMix, float skinMix, float thirdMix, BOOL isParent) // 0x9414E18B9434C2FE 0x60746B88 b323
The "shape" parameters control the shape of the ped's face. The "skin" parameters control the skin tone. ShapeMix and skinMix control how much the first and second IDs contribute,(typically mother and father.) ThirdMix overrides the others in favor of the third IDs. IsParent is set for "children" of the player character's grandparents during old-gen character creation. It has unknown effect otherwise. The IDs start at zero and go Male Non-DLC, Female Non-DLC, Male DLC, and Female DLC. !!!Can someone add working example for this??? try this: headBlendData headData; GET_PED_HEAD_BLEND_DATA(PLAYER_PED_ID(), &headData); SET_PED_HEAD_BLEND_DATA(PLAYER_PED_ID(), headData.shapeFirst, headData.shapeSecond, headData.shapeThird, headData.skinFirst, headData.skinSecond , headData.skinThird, headData.shapeMix, headData.skinMix, headData.skinThird, 0); For more info please refer to this topic. gtaforums.com/topic/858970-all-gtao-face-ids-pedset-ped-head-blend-data-explained
GET_PED_HEAD_BLEND_DATA
BOOL PED::GET_PED_HEAD_BLEND_DATA(Ped ped, Any* headBlendData) // 0x2746BD9D88C5C5D0 0x44E1680C b323
The pointer is to a padded struct that matches the arguments to SET_PED_HEAD_BLEND_DATA(...). There are 4 bytes of padding after each field. pass this struct in the second parameter typedef struct { int shapeFirst, shapeSecond, shapeThird; int skinFirst, skinSecond, skinThird; float shapeMix, skinMix, thirdMix; } headBlendData;
UPDATE_PED_HEAD_BLEND_DATA
void PED::UPDATE_PED_HEAD_BLEND_DATA(Ped ped, float shapeMix, float skinMix, float thirdMix) // 0x723538F61C647C5A 0x5CB76219 b323
See SET_PED_HEAD_BLEND_DATA().
_SET_PED_EYE_COLOR
void PED::_SET_PED_EYE_COLOR(Ped ped, int index) // 0x50B56988B170AFDF b323
Used for freemode (online) characters. For some reason, the scripts use a rounded float for the index. Indexes: 1. black 2. very light blue/green 3. dark blue 4. brown 5. darker brown 6. light brown 7. blue 8. light blue 9. pink 10. yellow 11. purple 12. black 13. dark green 14. light brown 15. yellow/black pattern 16. light colored spiral pattern 17. shiny red 18. shiny half blue/half red 19. half black/half light blue 20. white/red perimter 21. green snake 22. red snake 23. dark blue snake 24. dark yellow 25. bright yellow 26. all black 28. red small pupil 29. devil blue/black 30. white small pupil 31. glossed over
_GET_PED_EYE_COLOR
int PED::_GET_PED_EYE_COLOR(Ped ped) // 0x76BBA2CEE66D47E9 b1011
A getter for _SET_PED_EYE_COLOR. Returns -1 if fails to get.
SET_PED_HEAD_OVERLAY
void PED::SET_PED_HEAD_OVERLAY(Ped ped, int overlayID, int index, float opacity) // 0x48F44967FA05CC1E 0xD28DBA90 b323
OverlayID ranges from 0 to 12, index from 0 to _GET_NUM_OVERLAY_VALUES(overlayID)-1, and opacity from 0.0 to 1.0. overlayID Part Index, to disable 0 Blemishes 0 - 23, 255 1 Facial Hair 0 - 28, 255 2 Eyebrows 0 - 33, 255 3 Ageing 0 - 14, 255 4 Makeup 0 - 74, 255 5 Blush 0 - 6, 255 6 Complexion 0 - 11, 255 7 Sun Damage 0 - 10, 255 8 Lipstick 0 - 9, 255 9 Moles/Freckles 0 - 17, 255 10 Chest Hair 0 - 16, 255 11 Body Blemishes 0 - 11, 255 12 Add Body Blemishes 0 - 1, 255
_GET_PED_HEAD_OVERLAY_VALUE
int PED::_GET_PED_HEAD_OVERLAY_VALUE(Ped ped, int overlayID) // 0xA60EF3B6461A4D43 b323
Likely a char, if that overlay is not set, e.i. "None" option, returns 255; This might be the once removed native GET_PED_HEAD_OVERLAY.
GET_PED_HEAD_OVERLAY_NUM
int PED::GET_PED_HEAD_OVERLAY_NUM(int overlayID) // 0xCF1CE768BB43480E 0xFF43C18D b323
Used with freemode (online) characters.
_SET_PED_HEAD_OVERLAY_COLOR
void PED::_SET_PED_HEAD_OVERLAY_COLOR(Ped ped, int overlayID, int colorType, int colorID, int secondColorID) // 0x497BF74A7B9CB952 b323
Used for freemode (online) characters. ColorType is 1 for eyebrows, beards, and chest hair; 2 for blush and lipstick; and 0 otherwise, though not called in those cases. Called after SET_PED_HEAD_OVERLAY().
_SET_PED_HAIR_COLOR
void PED::_SET_PED_HAIR_COLOR(Ped ped, int colorID, int highlightColorID) // 0x4CFFC65454C93A49 b323
Used for freemode (online) characters.
_GET_NUM_HAIR_COLORS
int PED::_GET_NUM_HAIR_COLORS() // 0xE5C0CF872C2AD150 b323
Used for freemode (online) characters.
_GET_NUM_MAKEUP_COLORS
int PED::_GET_NUM_MAKEUP_COLORS() // 0xD1F7CA1535D22818 b323
_GET_PED_HAIR_RGB_COLOR
void PED::_GET_PED_HAIR_RGB_COLOR(int hairColorIndex, int* outR, int* outG, int* outB) // 0x4852FC386E2E1BB5 b323
Input: Haircolor index, value between 0 and 63 (inclusive). Output: RGB values for the haircolor specified in the input. This is used with the hair color swatches scaleform. Use `_0x013E5CFC38CD5387` to get the makeup colors.
_GET_PED_MAKEUP_RGB_COLOR
void PED::_GET_PED_MAKEUP_RGB_COLOR(int makeupColorIndex, int* outR, int* outG, int* outB) // 0x013E5CFC38CD5387 b323
Input: Makeup color index, value between 0 and 63 (inclusive). Output: RGB values for the makeup color specified in the input. This is used with the makeup color swatches scaleform. Use `_0x4852FC386E2E1BB5` to get the hair colors.
_IS_PED_HAIR_COLOR_VALID_2
BOOL PED::_IS_PED_HAIR_COLOR_VALID_2(int colorId) // 0xED6D8E27A43B8CDE b323
_0xEA9960D07DADCF10
int PED::_0xEA9960D07DADCF10(Any p0) // 0xEA9960D07DADCF10 b323
_IS_PED_LIPSTICK_COLOR_VALID_2
BOOL PED::_IS_PED_LIPSTICK_COLOR_VALID_2(int colorId) // 0x3E802F11FBE27674 b323
_IS_PED_BLUSH_COLOR_VALID_2
BOOL PED::_IS_PED_BLUSH_COLOR_VALID_2(int colorId) // 0xF41B5D290C99A3D6 b323
_IS_PED_HAIR_COLOR_VALID
BOOL PED::_IS_PED_HAIR_COLOR_VALID(int colorID) // 0xE0D36E5D9E99CC21 b323
_0xAAA6A3698A69E048
Any PED::_0xAAA6A3698A69E048(Any p0) // 0xAAA6A3698A69E048 b323
_IS_PED_LIPSTICK_COLOR_VALID
BOOL PED::_IS_PED_LIPSTICK_COLOR_VALID(int colorID) // 0x0525A2C2562F3CD4 b323
_IS_PED_BLUSH_COLOR_VALID
BOOL PED::_IS_PED_BLUSH_COLOR_VALID(int colorID) // 0x604E810189EE3A59 b323
_IS_PED_BODY_BLEMISH_VALID
BOOL PED::_IS_PED_BODY_BLEMISH_VALID(int colorId) // 0x09E7ECA981D9B210 b1290
_0xC56FBF2F228E1DAC
Any PED::_0xC56FBF2F228E1DAC(Hash modelHash, Any p1, Any p2) // 0xC56FBF2F228E1DAC b323
_SET_PED_FACE_FEATURE
void PED::_SET_PED_FACE_FEATURE(Ped ped, int index, float scale) // 0x71A5C1DBA060049E b323
Sets the various freemode face features, e.g. nose length, chin shape. Scale ranges from -1.0 to 1.0. Index can be 0 - 19 SET_PED_M* Here is the list of names. It starts at 0 and runs in sequence Face_Feature Nose_Width Nose_Peak_Hight Nose_Peak_Lenght Nose_Bone_High Nose_Peak_Lowering Nose_Bone_Twist EyeBrown_High EyeBrown_Forward Cheeks_Bone_High Cheeks_Bone_Width Cheeks_Width Eyes_Openning Lips_Thickness Jaw_Bone_Width: Bone size to sides Jaw_Bone_Back_Lenght: Bone size to back Chimp_Bone_Lowering: Go Down Chimp_Bone_Lenght: Go forward Chimp_Bone_Width Chimp_Hole Neck_Thikness
HAS_PED_HEAD_BLEND_FINISHED
BOOL PED::HAS_PED_HEAD_BLEND_FINISHED(Ped ped) // 0x654CD0A825161131 0x2B1BD9C5 b323
FINALIZE_HEAD_BLEND
void PED::FINALIZE_HEAD_BLEND(Ped ped) // 0x4668D80430D6C299 0x894314A4 b323
SET_HEAD_BLEND_PALETTE_COLOR
void PED::SET_HEAD_BLEND_PALETTE_COLOR(Ped ped, int r, int g, int b, int id) // 0xCC9682B8951C5229 0x57E5B3F9 b323
p4 seems to vary from 0 to 3. Preview: https://gfycat.com/MaleRareAmazonparrot
DISABLE_HEAD_BLEND_PALETTE_COLOR
void PED::DISABLE_HEAD_BLEND_PALETTE_COLOR(Ped ped) // 0xA21C118553BBDF02 0xC6F36292 b323
GET_PED_HEAD_BLEND_FIRST_INDEX
int PED::GET_PED_HEAD_BLEND_FIRST_INDEX(int type) // 0x68D353AB88B97E0C 0x211DEFEC b323
Type equals 0 for male non-dlc, 1 for female non-dlc, 2 for male dlc, and 3 for female dlc. Used when calling SET_PED_HEAD_BLEND_DATA.
_GET_NUM_PARENT_PEDS_OF_TYPE
int PED::_GET_NUM_PARENT_PEDS_OF_TYPE(int type) // 0x5EF37013A6539C9D 0x095D3BD8 b323
Type equals 0 for male non-dlc, 1 for female non-dlc, 2 for male dlc, and 3 for female dlc.
SET_PED_PRELOAD_VARIATION_DATA
Any PED::SET_PED_PRELOAD_VARIATION_DATA(Ped ped, int slot, int drawableId, int textureId) // 0x39D55A620FCB6A3A 0x45F3BDFB b323
from extreme3.c4 PED::_39D55A620FCB6A3A(PLAYER::PLAYER_PED_ID(), 8, PED::GET_PED_DRAWABLE_VARIATION(PLAYER::PLAYER_PED_ID(), 8), PED::GET_PED_TEXTURE_VARIATION(PLAYER::PLAYER_PED_ID(), 8)); p1 is probably componentId
HAS_PED_PRELOAD_VARIATION_DATA_FINISHED
BOOL PED::HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(Ped ped) // 0x66680A92700F43DF 0xC6517D52 b323
RELEASE_PED_PRELOAD_VARIATION_DATA
void PED::RELEASE_PED_PRELOAD_VARIATION_DATA(Ped ped) // 0x5AAB586FFEC0FD96 0x6435F67F b323
SET_PED_PRELOAD_PROP_DATA
BOOL PED::SET_PED_PRELOAD_PROP_DATA(Ped ped, int componentId, int drawableId, int TextureId) // 0x2B16A3BFF1FBCE49 0xC0E23671 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
HAS_PED_PRELOAD_PROP_DATA_FINISHED
BOOL PED::HAS_PED_PRELOAD_PROP_DATA_FINISHED(Ped ped) // 0x784002A632822099 0x3B0CA391 b323
RELEASE_PED_PRELOAD_PROP_DATA
void PED::RELEASE_PED_PRELOAD_PROP_DATA(Ped ped) // 0xF79F9DEF0AADE61A 0xFD103BA7 b323
GET_PED_PROP_INDEX
int PED::GET_PED_PROP_INDEX(Ped ped, int componentId) // 0x898CC20EA75BACD8 0x746DDAC0 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
SET_PED_PROP_INDEX
void PED::SET_PED_PROP_INDEX(Ped ped, int componentId, int drawableId, int TextureId, BOOL attach) // 0x93376B65A266EB5F 0x0829F2E2 b323
ComponentId can be set to various things based on what category you're wanting to set enum PedPropsData { PED_PROP_HATS = 0, PED_PROP_GLASSES = 1, PED_PROP_EARS = 2, PED_PROP_WATCHES = 3, }; Usage: SET_PED_PROP_INDEX(playerPed, PED_PROP_HATS, GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(playerPed, PED_PROP_HATS), GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(playerPed, PED_PROP_HATS, 0), TRUE); List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
KNOCK_OFF_PED_PROP
void PED::KNOCK_OFF_PED_PROP(Ped ped, BOOL p1, BOOL p2, BOOL p3, BOOL p4) // 0x6FD7816A36615F48 0x08D8B180 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
CLEAR_PED_PROP
void PED::CLEAR_PED_PROP(Ped ped, int propId) // 0x0943E5B8E078E76E 0x2D23D743 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
CLEAR_ALL_PED_PROPS
void PED::CLEAR_ALL_PED_PROPS(Ped ped) // 0xCD8A7537A9B52F06 0x81DF8B43 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
DROP_AMBIENT_PROP
void PED::DROP_AMBIENT_PROP(Ped ped) // 0xAFF4710E2A0A6C12 0x728D3D53 b323
GET_PED_PROP_TEXTURE_INDEX
int PED::GET_PED_PROP_TEXTURE_INDEX(Ped ped, int componentId) // 0xE131A28626F81AB2 0x922A6653 b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
CLEAR_PED_PARACHUTE_PACK_VARIATION
void PED::CLEAR_PED_PARACHUTE_PACK_VARIATION(Ped ped) // 0x1280804F7CFD2D6C 0x7BCD8991 b323
_SET_PED_SCUBA_GEAR_VARIATION
void PED::_SET_PED_SCUBA_GEAR_VARIATION(Ped ped) // 0x36C6984C3ED0C911 b323
This native sets a scuba mask for freemode models and an oxygen bottle for player_* models. It works on freemode and player_* models.
CLEAR_PED_SCUBA_GEAR_VARIATION
void PED::CLEAR_PED_SCUBA_GEAR_VARIATION(Ped ped) // 0xB50EB4CCB29704AC 0x080275EE b323
Removes the scubagear (for mp male: component id: 8, drawableId: 123, textureId: any) from peds. Does not play the 'remove scuba gear' animation, but instantly removes it.
_0xFEC9A3B1820F3331
BOOL PED::_0xFEC9A3B1820F3331(Any p0) // 0xFEC9A3B1820F3331 b323
SET_BLOCKING_OF_NON_TEMPORARY_EVENTS
void PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(Ped ped, BOOL toggle) // 0x9F8AA94D6D97DBF4 0xDFE34E4A b323
works with TASK::TASK_SET_BLOCKING_OF_NON_TEMPORARY_EVENTS to make a ped completely oblivious to all events going on around him
SET_PED_BOUNDS_ORIENTATION
void PED::SET_PED_BOUNDS_ORIENTATION(Ped ped, float p1, float p2, float p3, float p4, float p5) // 0x4F5F651ACCC9C4CF 0xCFA20D68 b323
REGISTER_TARGET
void PED::REGISTER_TARGET(Ped ped, Ped target) // 0x2F25D9AEFA34FBA2 0x50A95442 b323
PED::REGISTER_TARGET(l_216, PLAYER::PLAYER_PED_ID()); from re_prisonbreak.txt. l_216 = RECSBRobber1
REGISTER_HATED_TARGETS_AROUND_PED
void PED::REGISTER_HATED_TARGETS_AROUND_PED(Ped ped, float radius) // 0x9222F300BF8354FE 0x7F87559E b323
Based on TASK_COMBAT_HATED_TARGETS_AROUND_PED, the parameters are likely similar (PedHandle, and area to attack in).
GET_RANDOM_PED_AT_COORD
Ped PED::GET_RANDOM_PED_AT_COORD(float x, float y, float z, float xRadius, float yRadius, float zRadius, int pedType) // 0x876046A8E3A4B71C 0xDC8239EB b323
Gets a random ped in the x/y/zRadius near the x/y/z coordinates passed. Ped Types: Any = -1 Player = 1 Male = 4 Female = 5 Cop = 6 Human = 26 SWAT = 27 Animal = 28 Army = 29
GET_CLOSEST_PED
BOOL PED::GET_CLOSEST_PED(float x, float y, float z, float radius, BOOL p4, BOOL p5, Ped* outPed, BOOL p7, BOOL p8, int pedType) // 0xC33AB876A77F8164 0x8F6C1F55 b323
Gets the closest ped in a radius. Ped Types: Any ped = -1 Player = 1 Male = 4 Female = 5 Cop = 6 Human = 26 SWAT = 27 Animal = 28 Army = 29 ------------------ P4 P5 P7 P8 1 0 x x = return nearest walking Ped 1 x 0 x = return nearest walking Ped x 1 1 x = return Ped you are using 0 0 x x = no effect 0 x 0 x = no effect x = can be 1 or 0. Does not have any obvious changes. This function does not return ped who is: 1. Standing still 2. Driving 3. Fleeing 4. Attacking This function only work if the ped is: 1. walking normally. 2. waiting to cross a road. Note: PED::GET_PED_NEARBY_PEDS works for more peds.
SET_SCENARIO_PEDS_TO_BE_RETURNED_BY_NEXT_COMMAND
void PED::SET_SCENARIO_PEDS_TO_BE_RETURNED_BY_NEXT_COMMAND(BOOL value) // 0x14F19A8782C8071E 0x85615FD0 b323
Sets a value indicating whether scenario peds should be returned by the next call to a command that returns peds. Eg. GET_CLOSEST_PED.
_0x03EA03AF85A85CB7
BOOL PED::_0x03EA03AF85A85CB7(Ped ped, BOOL p1, BOOL p2, BOOL p3, BOOL p4, BOOL p5, BOOL p6, BOOL p7, Any p8) // 0x03EA03AF85A85CB7 0x18DD76A1 b323
SET_DRIVER_RACING_MODIFIER
void PED::SET_DRIVER_RACING_MODIFIER(Ped driver, float modifier) // 0xDED5AF5A0EA4B297 0x6D55B3B3 b323
Scripts use 0.2, 0.5 and 1.0. Value must be >= 0.0 && <= 1.0
SET_DRIVER_ABILITY
void PED::SET_DRIVER_ABILITY(Ped driver, float ability) // 0xB195FFA8042FC5C3 0xAAD4012C b323
The function specifically verifies the value is equal to, or less than 1.0f. If it is greater than 1.0f, the function does nothing at all.
SET_DRIVER_AGGRESSIVENESS
void PED::SET_DRIVER_AGGRESSIVENESS(Ped driver, float aggressiveness) // 0xA731F608CA104E3C 0x8B02A8FB b323
range 0.0f - 1.0f
CAN_PED_RAGDOLL
BOOL PED::CAN_PED_RAGDOLL(Ped ped) // 0x128F79EDCECE4FD5 0xC0EFB7A3 b323
Prevents the ped from going limp. [Example: Can prevent peds from falling when standing on moving vehicles.]
SET_PED_TO_RAGDOLL
BOOL PED::SET_PED_TO_RAGDOLL(Ped ped, int time1, int time2, int ragdollType, BOOL p4, BOOL p5, BOOL p6) // 0xAE99FB955581844A 0x83CB5052 b323
p4/p5: Unused in TU27 Ragdoll Types: **0**: CTaskNMRelax **1**: CTaskNMScriptControl: Hardcoded not to work in networked environments. **Else**: CTaskNMBalance time1- Time(ms) Ped is in ragdoll mode; only applies to ragdoll types 0 and not 1. time2- Unknown time, in milliseconds ragdollType- 0 : Normal ragdoll 1 : Falls with stiff legs/body 2 : Narrow leg stumble(may not fall) 3 : Wide leg stumble(may not fall) p4, p5, p6- No idea. In R*'s scripts they are usually either "true, true, false" or "false, false, false". EDIT 3/11/16: unclear what 'mircoseconds' mean-- a microsecond is 1000x a ms, so time2 must be 1000x time1? more testing needed. -sob Edit Mar 21, 2017: removed part about time2 being the microseconds version of time1. this just isn't correct. time2 is in milliseconds, and time1 and time2 don't seem to be connected in any way.
SET_PED_TO_RAGDOLL_WITH_FALL
BOOL PED::SET_PED_TO_RAGDOLL_WITH_FALL(Ped ped, int time, int p2, int ragdollType, float x, float y, float z, float p7, float p8, float p9, float p10, float p11, float p12, float p13) // 0xD76632D99E4966C8 0xFA12E286 b323
Return variable is never used in R*'s scripts. Not sure what p2 does. It seems like it would be a time judging by it's usage in R*'s scripts, but didn't seem to affect anything in my testings. x, y, and z are coordinates, most likely to where the ped will fall. p7 is probably the force of the fall, but untested, so I left the variable name the same. p8 to p13 are always 0f in R*'s scripts. (Simplified) Example of the usage of the function from R*'s scripts: ped::set_ped_to_ragdoll_with_fall(ped, 1500, 2000, 1, -entity::get_entity_forward_vector(ped), 1f, 0f, 0f, 0f, 0f, 0f, 0f);
SET_PED_RAGDOLL_ON_COLLISION
void PED::SET_PED_RAGDOLL_ON_COLLISION(Ped ped, BOOL toggle) // 0xF0A4F1BBF4FA7497 0x2654A0F4 b323
Causes Ped to ragdoll on collision with any object (e.g Running into trashcan). If applied to player you will sometimes trip on the sidewalk.
IS_PED_RAGDOLL
BOOL PED::IS_PED_RAGDOLL(Ped ped) // 0x47E4E977581C5B55 0xC833BBE1 b323
If the ped handle passed through the parenthesis is in a ragdoll state this will return true.
IS_PED_RUNNING_RAGDOLL_TASK
BOOL PED::IS_PED_RUNNING_RAGDOLL_TASK(Ped ped) // 0xE3B6097CC25AA69E 0x44A153F2 b323
SET_PED_RAGDOLL_FORCE_FALL
void PED::SET_PED_RAGDOLL_FORCE_FALL(Ped ped) // 0x01F6594B923B9251 0x20A5BDE0 b323
RESET_PED_RAGDOLL_TIMER
void PED::RESET_PED_RAGDOLL_TIMER(Ped ped) // 0x9FA4664CF62E47E8 0xF2865370 b323
SET_PED_CAN_RAGDOLL
void PED::SET_PED_CAN_RAGDOLL(Ped ped, BOOL toggle) // 0xB128377056A54E2A 0xCF1384C4 b323
IS_PED_RUNNING_MELEE_TASK
BOOL PED::IS_PED_RUNNING_MELEE_TASK(Ped ped) // 0xD1871251F3B5ACD7 0xBD4236F6 b323
IS_PED_RUNNING_MOBILE_PHONE_TASK
BOOL PED::IS_PED_RUNNING_MOBILE_PHONE_TASK(Ped ped) // 0x2AFE52F782F25775 0xFB2AFED1 b323
_0xA3F3564A5B3646C0
BOOL PED::_0xA3F3564A5B3646C0(Ped ped) // 0xA3F3564A5B3646C0 0x97353375 b323
Only called once in the scripts: if (sub_1abd() && (!PED::_A3F3564A5B3646C0(l_8C))) { if (sub_52e3("RESNA_CELLR", 0)) { PED::SET_PED_CAN_PLAY_GESTURE_ANIMS(l_8C, 1); PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(l_8C, 1); PED::SET_PED_CAN_PLAY_VISEME_ANIMS(l_8C, 1, 0); l_184 += 1; } } Checks something related to the mobile phone task. IS_*
SET_RAGDOLL_BLOCKING_FLAGS
void PED::SET_RAGDOLL_BLOCKING_FLAGS(Ped ped, int flags) // 0x26695EC767728D84 0x9C8F830D b323
Works for both player and peds, but some flags don't seem to work for the player (1, for example) 1 - Blocks ragdolling when shot. 2 - Blocks ragdolling when hit by a vehicle. The ped still might play a falling animation. 4 - Blocks ragdolling when set on fire. ----------------------------------------------------------------------- There seem to be 26 flags
CLEAR_RAGDOLL_BLOCKING_FLAGS
void PED::CLEAR_RAGDOLL_BLOCKING_FLAGS(Ped ped, int flags) // 0xD86D101FCFD00A4B 0x77CBA290 b323
There seem to be 26 flags
SET_PED_ANGLED_DEFENSIVE_AREA
void PED::SET_PED_ANGLED_DEFENSIVE_AREA(Ped ped, float p1, float p2, float p3, float p4, float p5, float p6, float p7, BOOL p8, BOOL p9) // 0xC7F76DF27A5045A1 0x3EFBDD9B b323
SET_PED_SPHERE_DEFENSIVE_AREA
void PED::SET_PED_SPHERE_DEFENSIVE_AREA(Ped ped, float x, float y, float z, float radius, BOOL p5, BOOL p6) // 0x9D3151A373974804 0xBD96D8E8 b323
SET_PED_DEFENSIVE_SPHERE_ATTACHED_TO_PED
void PED::SET_PED_DEFENSIVE_SPHERE_ATTACHED_TO_PED(Ped ped, Ped target, float xOffset, float yOffset, float zOffset, float radius, BOOL p6) // 0xF9B8F91AAD3B953E 0x40638BDC b323
SET_PED_DEFENSIVE_SPHERE_ATTACHED_TO_VEHICLE
void PED::SET_PED_DEFENSIVE_SPHERE_ATTACHED_TO_VEHICLE(Ped ped, Vehicle target, float xOffset, float yOffset, float zOffset, float radius, BOOL p6) // 0xE4723DB6E736CCFF 0x4763B2C6 b323
SET_PED_DEFENSIVE_AREA_ATTACHED_TO_PED
void PED::SET_PED_DEFENSIVE_AREA_ATTACHED_TO_PED(Ped ped, Ped attachPed, float p2, float p3, float p4, float p5, float p6, float p7, float p8, BOOL p9, BOOL p10) // 0x4EF47FE21698A8B6 0x74BDA7CE b323
SET_PED_DEFENSIVE_AREA_DIRECTION
void PED::SET_PED_DEFENSIVE_AREA_DIRECTION(Ped ped, float p1, float p2, float p3, BOOL p4) // 0x413C6C763A4AFFAD 0xB66B0C9A b323
REMOVE_PED_DEFENSIVE_AREA
void PED::REMOVE_PED_DEFENSIVE_AREA(Ped ped, BOOL toggle) // 0x74D4E028107450A9 0x34AAAFA5 b323
Ped will no longer get angry when you stay near him.
GET_PED_DEFENSIVE_AREA_POSITION
Vector3 PED::GET_PED_DEFENSIVE_AREA_POSITION(Ped ped, BOOL p1) // 0x3C06B8786DD94CD1 0xCB65198D b323
IS_PED_DEFENSIVE_AREA_ACTIVE
BOOL PED::IS_PED_DEFENSIVE_AREA_ACTIVE(Ped ped, BOOL p1) // 0xBA63D9FE45412247 0x6D88BCD3 b323
SET_PED_PREFERRED_COVER_SET
void PED::SET_PED_PREFERRED_COVER_SET(Ped ped, Any itemSet) // 0x8421EB4DA7E391B9 0xF3B7EFBF b323
REMOVE_PED_PREFERRED_COVER_SET
void PED::REMOVE_PED_PREFERRED_COVER_SET(Ped ped) // 0xFDDB234CF74073D9 0xA0134498 b323
REVIVE_INJURED_PED
void PED::REVIVE_INJURED_PED(Ped ped) // 0x8D8ACD8388CD99CE 0x14D3E6E3 b323
It will revive/cure the injured ped. The condition is ped must not be dead. Upon setting and converting the health int, found, if health falls below 5, the ped will lay on the ground in pain(Maximum default health is 100). This function is well suited there.
RESURRECT_PED
void PED::RESURRECT_PED(Ped ped) // 0x71BC8E838B9C6035 0xA4B82097 b323
This function will simply bring the dead person back to life. Try not to use it alone, since using this function alone, will make peds fall through ground in hell(well for the most of the times). Instead, before calling this function, you may want to declare the position, where your Resurrected ped to be spawn at.(For instance, Around 2 floats of Player's current position.) Also, disabling any assigned task immediately helped in the number of scenarios, where If you want peds to perform certain decided tasks.
SET_PED_NAME_DEBUG
void PED::SET_PED_NAME_DEBUG(Ped ped, const char* name) // 0x98EFA132A4117BE1 0x20D6273E b323
NOTE: Debugging functions are not present in the retail version of the game. *untested but char *name could also be a hash for a localized string
GET_PED_EXTRACTED_DISPLACEMENT
Vector3 PED::GET_PED_EXTRACTED_DISPLACEMENT(Ped ped, BOOL worldSpace) // 0xE0AF41401ADF87E3 0x5231F901 b323
Gets the offset the specified ped has moved since the previous tick. If worldSpace is false, the returned offset is relative to the ped. That is, if the ped has moved 1 meter right and 5 meters forward, it'll return 1,5,0. If worldSpace is true, the returned offset is relative to the world. That is, if the ped has moved 1 meter on the X axis and 5 meters on the Y axis, it'll return 1,5,0.
SET_PED_DIES_WHEN_INJURED
void PED::SET_PED_DIES_WHEN_INJURED(Ped ped, BOOL toggle) // 0x5BA7919BED300023 0xE94E24D4 b323
SET_PED_ENABLE_WEAPON_BLOCKING
void PED::SET_PED_ENABLE_WEAPON_BLOCKING(Ped ped, BOOL toggle) // 0x97A790315D3831FD 0x4CAD1A4A b323
_0xF9ACF4A08098EA25
void PED::_0xF9ACF4A08098EA25(Ped ped, BOOL p1) // 0xF9ACF4A08098EA25 0x141CC936 b323
p1 was always 1 (true). Kicks the ped from the current vehicle and keeps the rendering-focus on this ped (also disables its collision). If doing this for your player ped, you'll still be able to drive the vehicle. Actual name begins with 'S'
RESET_PED_VISIBLE_DAMAGE
void PED::RESET_PED_VISIBLE_DAMAGE(Ped ped) // 0x3AC1F7B898F30C05 0xC4BC4841 b323
APPLY_PED_BLOOD_DAMAGE_BY_ZONE
void PED::APPLY_PED_BLOOD_DAMAGE_BY_ZONE(Ped ped, Any p1, float p2, float p3, Any p4) // 0x816F6981C60BF53B 0x1E54DB12 b323
APPLY_PED_BLOOD
void PED::APPLY_PED_BLOOD(Ped ped, int boneIndex, float xRot, float yRot, float zRot, const char* woundType) // 0x83F7E01C7B769A26 0x376CE3C0 b323
Found one occurence in re_crashrescue.c4 PED::APPLY_PED_BLOOD(l_4B, 3, 0.0, 0.0, 0.0, "wound_sheet"); - winject
APPLY_PED_BLOOD_BY_ZONE
void PED::APPLY_PED_BLOOD_BY_ZONE(Ped ped, Any p1, float p2, float p3, Any* p4) // 0x3311E47B91EDCBBC 0x8F3F3A9C b323
APPLY_PED_BLOOD_SPECIFIC
void PED::APPLY_PED_BLOOD_SPECIFIC(Ped ped, Any p1, float p2, float p3, float p4, float p5, Any p6, float p7, Any* p8) // 0xEF0D582CBF2D9B0F 0xFC13CE80 b323
APPLY_PED_DAMAGE_DECAL
void PED::APPLY_PED_DAMAGE_DECAL(Ped ped, int damageZone, float xOffset, float yOffset, float heading, float scale, float alpha, int variation, BOOL fadeIn, const char* decalName) // 0x397C38AA7B4A5F83 0x8A13A41F b323
enum eDamageZone { DZ_Torso = 0, DZ_Head, DZ_LeftArm, DZ_RightArm, DZ_LeftLeg, DZ_RightLeg, }; Decal Names: scar blushing cs_flush_anger cs_flush_anger_face bruise bruise_large herpes ArmorBullet basic_dirt_cloth basic_dirt_skin cs_trev1_dirt APPLY_PED_DAMAGE_DECAL(ped, 1, 0.5f, 0.513f, 0f, 1f, unk, 0, 0, "blushing");
APPLY_PED_DAMAGE_PACK
void PED::APPLY_PED_DAMAGE_PACK(Ped ped, const char* damagePack, float damage, float mult) // 0x46DF918788CB093F 0x208D0CB8 b323
Damage Packs: "SCR_TrevorTreeBang" "HOSPITAL_0" "HOSPITAL_1" "HOSPITAL_2" "HOSPITAL_3" "HOSPITAL_4" "HOSPITAL_5" "HOSPITAL_6" "HOSPITAL_7" "HOSPITAL_8" "HOSPITAL_9" "SCR_Dumpster" "BigHitByVehicle" "SCR_Finale_Michael_Face" "SCR_Franklin_finb" "SCR_Finale_Michael" "SCR_Franklin_finb2" "Explosion_Med" "SCR_Torture" "SCR_TracySplash" "Skin_Melee_0" Additional damage packs: gist.github.com/alexguirre/f3f47f75ddcf617f416f3c8a55ae2227
CLEAR_PED_BLOOD_DAMAGE
void PED::CLEAR_PED_BLOOD_DAMAGE(Ped ped) // 0x8FE22675A5A45817 0xF7ADC960 b323
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE
void PED::CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(Ped ped, int p1) // 0x56E3B78C5408D9F4 0xF210BE69 b323
Somehow related to changing ped's clothes.
HIDE_PED_BLOOD_DAMAGE_BY_ZONE
void PED::HIDE_PED_BLOOD_DAMAGE_BY_ZONE(Ped ped, Any p1, BOOL p2) // 0x62AB793144DE75DC 0x0CB6C4ED b323
CLEAR_PED_DAMAGE_DECAL_BY_ZONE
void PED::CLEAR_PED_DAMAGE_DECAL_BY_ZONE(Ped ped, int p1, const char* p2) // 0x523C79AEEFCC4A2A 0x70AA5B7D b323
p1: from 0 to 5 in the b617d scripts. p2: "blushing" and "ALL" found in the b617d scripts.
GET_PED_DECORATIONS_STATE
int PED::GET_PED_DECORATIONS_STATE(Ped ped) // 0x71EAB450D86954A1 0x47187F7F b323
_0x2B694AFCF64E6994
void PED::_0x2B694AFCF64E6994(Ped ped, BOOL p1) // 0x2B694AFCF64E6994 b323
CLEAR_PED_WETNESS
void PED::CLEAR_PED_WETNESS(Ped ped) // 0x9C720776DAA43E7E 0x629F15BD b323
It clears the wetness of the selected Ped/Player. Clothes have to be wet to notice the difference.
SET_PED_WETNESS_HEIGHT
void PED::SET_PED_WETNESS_HEIGHT(Ped ped, float height) // 0x44CB6447D2571AA0 0x7B33289A b323
It adds the wetness level to the player clothing/outfit. As if player just got out from water surface.
SET_PED_WETNESS_ENABLED_THIS_FRAME
void PED::SET_PED_WETNESS_ENABLED_THIS_FRAME(Ped ped) // 0xB5485E4907B53019 0xBDE749F7 b323
combined with PED::SET_PED_WETNESS_HEIGHT(), this native makes the ped drenched in water up to the height specified in the other function
CLEAR_PED_ENV_DIRT
void PED::CLEAR_PED_ENV_DIRT(Ped ped) // 0x6585D955A68452A5 0xA993915F b323
SET_PED_SWEAT
void PED::SET_PED_SWEAT(Ped ped, float sweat) // 0x27B0405F59637D1F 0x76A1DB9F b323
Sweat is set to 100.0 or 0.0 in the decompiled scripts.
ADD_PED_DECORATION_FROM_HASHES
void PED::ADD_PED_DECORATION_FROM_HASHES(Ped ped, Hash collection, Hash overlay) // 0x5F5D1665E352A839 0x70559AC7 b323
Applies an Item from a PedDecorationCollection to a ped. These include tattoos and shirt decals. collection - PedDecorationCollection filename hash overlay - Item name hash Example: Entry inside "mpbeach_overlays.xml" - <Item> <uvPos x="0.500000" y="0.500000" /> <scale x="0.600000" y="0.500000" /> <rotation value="0.000000" /> <nameHash>FM_Hair_Fuzz</nameHash> <txdHash>mp_hair_fuzz</txdHash> <txtHash>mp_hair_fuzz</txtHash> <zone>ZONE_HEAD</zone> <type>TYPE_TATTOO</type> <faction>FM</faction> <garment>All</garment> <gender>GENDER_DONTCARE</gender> <award /> <awardLevel /> </Item> Code: PED::_0x5F5D1665E352A839(PLAYER::PLAYER_PED_ID(), MISC::GET_HASH_KEY("mpbeach_overlays"), MISC::GET_HASH_KEY("fm_hair_fuzz")) Full list of ped overlays / decorations by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedOverlayCollections.json
ADD_PED_DECORATION_FROM_HASHES_IN_CORONA
void PED::ADD_PED_DECORATION_FROM_HASHES_IN_CORONA(Ped ped, Hash collection, Hash overlay) // 0x5619BFA07CFD7833 0x8CD3E487 b323
Full list of ped overlays / decorations by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedOverlayCollections.json
GET_PED_DECORATION_ZONE_FROM_HASHES
int PED::GET_PED_DECORATION_ZONE_FROM_HASHES(Hash collection, Hash overlay) // 0x9FD452BFBE7A7A8B 0x3543019E b323
Returns the zoneID for the overlay if it is a member of collection. enum ePedDecorationZone { ZONE_TORSO = 0, ZONE_HEAD = 1, ZONE_LEFT_ARM = 2, ZONE_RIGHT_ARM = 3, ZONE_LEFT_LEG = 4, ZONE_RIGHT_LEG = 5, ZONE_UNKNOWN = 6, ZONE_NONE = 7 }; Full list of ped overlays / decorations by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/pedOverlayCollections.json
CLEAR_PED_DECORATIONS
void PED::CLEAR_PED_DECORATIONS(Ped ped) // 0x0E5173C163976E38 0xD4496BF3 b323
CLEAR_PED_DECORATIONS_LEAVE_SCARS
void PED::CLEAR_PED_DECORATIONS_LEAVE_SCARS(Ped ped) // 0xE3B27E70CEAB9F0C 0xEFD58EB9 b323
WAS_PED_SKELETON_UPDATED
BOOL PED::WAS_PED_SKELETON_UPDATED(Ped ped) // 0x11B499C1E0FF8559 0xF7E2FBAD b323
Despite this function's name, it simply returns whether the specified handle is a Ped.
GET_PED_BONE_COORDS
Vector3 PED::GET_PED_BONE_COORDS(Ped ped, int boneId, float offsetX, float offsetY, float offsetZ) // 0x17C07FC640E86B4E 0x4579CAB1 b323
Gets the position of the specified bone of the specified ped. ped: The ped to get the position of a bone from. boneId: The ID of the bone to get the position from. This is NOT the index. offsetX: The X-component of the offset to add to the position relative to the bone's rotation. offsetY: The Y-component of the offset to add to the position relative to the bone's rotation. offsetZ: The Z-component of the offset to add to the position relative to the bone's rotation.
CREATE_NM_MESSAGE
void PED::CREATE_NM_MESSAGE(BOOL startImmediately, int messageId) // 0x418EF2A1BCE56685 0x1CFBFD4B b323
Creates a new NaturalMotion message. startImmediately: If set to true, the character will perform the message the moment it receives it by GIVE_PED_NM_MESSAGE. If false, the Ped will get the message but won't perform it yet. While it's a boolean value, if negative, the message will not be initialized. messageId: The ID of the NaturalMotion message. If a message already exists, this function does nothing. A message exists until the point it has been successfully dispatched by GIVE_PED_NM_MESSAGE.
GIVE_PED_NM_MESSAGE
void PED::GIVE_PED_NM_MESSAGE(Ped ped) // 0xB158DFCCC56E5C5B 0x737C3689 b323
Sends the message that was created by a call to CREATE_NM_MESSAGE to the specified Ped. If a message hasn't been created already, this function does nothing. If the Ped is not ragdolled with Euphoria enabled, this function does nothing. The following call can be used to ragdoll the Ped with Euphoria enabled: SET_PED_TO_RAGDOLL(ped, 4000, 5000, 1, 1, 1, 0); Call order: SET_PED_TO_RAGDOLL CREATE_NM_MESSAGE GIVE_PED_NM_MESSAGE Multiple messages can be chained. Eg. to make the ped stagger and swing his arms around, the following calls can be made: SET_PED_TO_RAGDOLL(ped, 4000, 5000, 1, 1, 1, 0); CREATE_NM_MESSAGE(true, 0); // stopAllBehaviours - Stop all other behaviours, in case the Ped is already doing some Euphoria stuff. GIVE_PED_NM_MESSAGE(ped); // Dispatch message to Ped. CREATE_NM_MESSAGE(true, 1151); // staggerFall - Attempt to walk while falling. GIVE_PED_NM_MESSAGE(ped); // Dispatch message to Ped. CREATE_NM_MESSAGE(true, 372); // armsWindmill - Swing arms around. GIVE_PED_NM_MESSAGE(ped); // Dispatch message to Ped.
ADD_SCENARIO_BLOCKING_AREA
int PED::ADD_SCENARIO_BLOCKING_AREA(float x1, float y1, float z1, float x2, float y2, float z2, BOOL p6, BOOL p7, BOOL p8, BOOL p9) // 0x1B5C85C612E5256E 0xA38C0234 b323
REMOVE_SCENARIO_BLOCKING_AREAS
void PED::REMOVE_SCENARIO_BLOCKING_AREAS() // 0xD37401D78A929A49 0x4DDF845F b323
REMOVE_SCENARIO_BLOCKING_AREA
void PED::REMOVE_SCENARIO_BLOCKING_AREA(Any p0, BOOL p1) // 0x31D16B74C6E29D66 0x4483EF06 b323
SET_SCENARIO_PEDS_SPAWN_IN_SPHERE_AREA
void PED::SET_SCENARIO_PEDS_SPAWN_IN_SPHERE_AREA(float x, float y, float z, float range, int p4) // 0x28157D43CF600981 0x80EAD297 b323
_DOES_SCENARIO_BLOCKING_AREA_EXIST
BOOL PED::_DOES_SCENARIO_BLOCKING_AREA_EXIST(float x1, float y1, float z1, float x2, float y2, float z2) // 0x8A24B067D175A7BD b678
IS_PED_USING_SCENARIO
BOOL PED::IS_PED_USING_SCENARIO(Ped ped, const char* scenario) // 0x1BF094736DD62C2E 0x0F65B0D4 b323
Full list of ped scenarios by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/scenariosCompact.json
IS_PED_USING_ANY_SCENARIO
BOOL PED::IS_PED_USING_ANY_SCENARIO(Ped ped) // 0x57AB4A3080F85143 0x195EF5B7 b323
SET_PED_PANIC_EXIT_SCENARIO
Any PED::SET_PED_PANIC_EXIT_SCENARIO(Any p0, Any p1, Any p2, Any p3) // 0xFE07FF6495D52E2A 0x59DE73AC b323
_0x9A77DFD295E29B09
void PED::_0x9A77DFD295E29B09(Any p0, BOOL p1) // 0x9A77DFD295E29B09 0xC08FE5F6 b323
_0x25361A96E0F7E419
Any PED::_0x25361A96E0F7E419(Any p0, Any p1, Any p2, Any p3) // 0x25361A96E0F7E419 0x58C0F6CF b323
_0xEC6935EBE0847B90
Any PED::_0xEC6935EBE0847B90(Any p0, Any p1, Any p2, Any p3) // 0xEC6935EBE0847B90 0x761F8F48 b323
SET_PED_SHOULD_PLAY_NORMAL_SCENARIO_EXIT
void PED::SET_PED_SHOULD_PLAY_NORMAL_SCENARIO_EXIT(Ped ped) // 0xA3A9299C4F2ADB98 0x033F43FA b323
SET_PED_SHOULD_PLAY_IMMEDIATE_SCENARIO_EXIT
void PED::SET_PED_SHOULD_PLAY_IMMEDIATE_SCENARIO_EXIT(Ped ped) // 0xF1C03A5352243A30 0x4C684C81 b323
SET_PED_SHOULD_PLAY_FLEE_SCENARIO_EXIT
Any PED::SET_PED_SHOULD_PLAY_FLEE_SCENARIO_EXIT(Ped ped, Any p1, Any p2, Any p3) // 0xEEED8FAFEC331A70 0x7B4C3E6F b323
_0x425AECF167663F48
void PED::_0x425AECF167663F48(Ped ped, BOOL p1) // 0x425AECF167663F48 0x5BC276AE b323
_0x5B6010B3CBC29095
void PED::_0x5B6010B3CBC29095(Any p0, BOOL p1) // 0x5B6010B3CBC29095 b323
_0xCEDA60A74219D064
void PED::_0xCEDA60A74219D064(Any p0, BOOL p1) // 0xCEDA60A74219D064 b323
_0xC30BDAEE47256C13
Any PED::_0xC30BDAEE47256C13(Any p0) // 0xC30BDAEE47256C13 b1868
PLAY_FACIAL_ANIM
void PED::PLAY_FACIAL_ANIM(Ped ped, const char* animName, const char* animDict) // 0xE1E65CA8AC9C00ED 0x1F6CCDDE b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
_SET_FACIAL_CLIPSET_OVERRIDE
void PED::_SET_FACIAL_CLIPSET_OVERRIDE(Ped ped, const char* animDict) // 0x5687C7F05B39E401 b1493
Clipsets: facials@gen_female@base facials@gen_male@base facials@p_m_zero@base Typically followed with SET_FACIAL_IDLE_ANIM_OVERRIDE: mood_drunk_1 mood_stressed_1 mood_happy_1 mood_talking_1
SET_FACIAL_IDLE_ANIM_OVERRIDE
void PED::SET_FACIAL_IDLE_ANIM_OVERRIDE(Ped ped, const char* animName, const char* animDict) // 0xFFC24B988B938B38 0x9BA19C13 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
CLEAR_FACIAL_IDLE_ANIM_OVERRIDE
void PED::CLEAR_FACIAL_IDLE_ANIM_OVERRIDE(Ped ped) // 0x726256CC1EEB182F 0x5244F4E2 b323
SET_PED_CAN_PLAY_GESTURE_ANIMS
void PED::SET_PED_CAN_PLAY_GESTURE_ANIMS(Ped ped, BOOL toggle) // 0xBAF20C5432058024 0xE131E3B3 b323
SET_PED_CAN_PLAY_VISEME_ANIMS
void PED::SET_PED_CAN_PLAY_VISEME_ANIMS(Ped ped, BOOL toggle, BOOL p2) // 0xF833DDBA3B104D43 0xA2FDAF27 b323
p2 usually 0
_SET_PED_CAN_PLAY_INJURED_ANIMS
void PED::_SET_PED_CAN_PLAY_INJURED_ANIMS(Ped ped, BOOL p1) // 0x33A60D8BDD6E508C 0xADB2511A b323
SET_PED_CAN_PLAY_AMBIENT_ANIMS
void PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(Ped ped, BOOL toggle) // 0x6373D1349925A70E 0xF8053081 b323
SET_PED_CAN_PLAY_AMBIENT_BASE_ANIMS
void PED::SET_PED_CAN_PLAY_AMBIENT_BASE_ANIMS(Ped ped, BOOL toggle) // 0x0EB0585D15254740 0x5720A5DD b323
_0xC2EE020F5FB4DB53
void PED::_0xC2EE020F5FB4DB53(Ped ped) // 0xC2EE020F5FB4DB53 0xB7CD0A49 b323
SET_PED_CAN_ARM_IK
void PED::SET_PED_CAN_ARM_IK(Ped ped, BOOL toggle) // 0x6C3B4D6D13B4C841 0x343B4DE0 b323
SET_PED_CAN_HEAD_IK
void PED::SET_PED_CAN_HEAD_IK(Ped ped, BOOL toggle) // 0xC11C18092C5530DC 0xD3B04476 b323
SET_PED_CAN_LEG_IK
void PED::SET_PED_CAN_LEG_IK(Ped ped, BOOL toggle) // 0x73518ECE2485412B 0x9955BC6F b323
SET_PED_CAN_TORSO_IK
void PED::SET_PED_CAN_TORSO_IK(Ped ped, BOOL toggle) // 0xF2B7106D37947CE0 0x8E5D4EAB b323
SET_PED_CAN_TORSO_REACT_IK
void PED::SET_PED_CAN_TORSO_REACT_IK(Ped ped, BOOL p1) // 0xF5846EDB26A98A24 0x7B0040A8 b323
_0x6647C5F6F5792496
void PED::_0x6647C5F6F5792496(Ped ped, BOOL p1) // 0x6647C5F6F5792496 0x0FDA62DE b323
SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT
void PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(Ped ped, BOOL toggle) // 0xEC4686EC06434678 0x584C5178 b323
IS_PED_HEADTRACKING_PED
BOOL PED::IS_PED_HEADTRACKING_PED(Ped ped1, Ped ped2) // 0x5CD3CB88A7F8850D 0x2A5DF721 b323
IS_PED_HEADTRACKING_ENTITY
BOOL PED::IS_PED_HEADTRACKING_ENTITY(Ped ped, Entity entity) // 0x813A0A7C9D2E831F 0x233C9ACF b323
SET_PED_PRIMARY_LOOKAT
void PED::SET_PED_PRIMARY_LOOKAT(Ped ped, Ped lookAt) // 0xCD17B554996A8D9E 0x6DEF6F1C b323
This is only called once in the scripts. sub_1CD9(&l_49, 0, getElem(3, &l_34, 4), "MICHAEL", 0, 1); sub_1CA8("WORLD_HUMAN_SMOKING", 2); PED::SET_PED_PRIMARY_LOOKAT(getElem(3, &l_34, 4), PLAYER::PLAYER_PED_ID());
SET_PED_CLOTH_PACKAGE_INDEX
void PED::SET_PED_CLOTH_PACKAGE_INDEX(Any p0, Any p1) // 0x78C4E9961DB3EB5B 0xFC942D7C b323
SET_PED_CLOTH_PRONE
void PED::SET_PED_CLOTH_PRONE(Any p0, Any p1) // 0x82A3D6D9CC2CB8E3 0x89EEE07B b323
_0xA660FAF550EB37E5
void PED::_0xA660FAF550EB37E5(Any p0, BOOL p1) // 0xA660FAF550EB37E5 b323
SET_PED_CONFIG_FLAG
void PED::SET_PED_CONFIG_FLAG(Ped ped, int flagId, BOOL value) // 0x1913FE4CBF41C463 0x9CFBE10D b323
Research help : pastebin.com/fPL1cSwB New items added with underscore as first char ----------------------------------------------------------------------- enum PedConfigFlags { PED_FLAG_CAN_FLY_THRU_WINDSCREEN = 32, PED_FLAG_DIES_BY_RAGDOLL = 33, PED_FLAG_NO_COLLISION = 52, _PED_FLAG_IS_SHOOTING = 58, _PED_FLAG_IS_ON_GROUND = 60, PED_FLAG_NO_COLLIDE = 62, PED_FLAG_DEAD = 71, PED_FLAG_IS_SNIPER_SCOPE_ACTIVE = 72, PED_FLAG_SUPER_DEAD = 73, _PED_FLAG_IS_IN_AIR = 76, PED_FLAG_IS_AIMING = 78, PED_FLAG_DRUNK = 100, _PED_FLAG_IS_NOT_RAGDOLL_AND_NOT_PLAYING_ANIM = 104, PED_FLAG_NO_PLAYER_MELEE = 122, PED_FLAG_NM_MESSAGE_466 = 125, PED_FLAG_INJURED_LIMP = 166, PED_FLAG_INJURED_LIMP_2 = 170, PED_FLAG_INJURED_DOWN = 187, PED_FLAG_SHRINK = 223, PED_FLAG_MELEE_COMBAT = 224, _PED_FLAG_IS_ON_STAIRS = 253, _PED_FLAG_HAS_ONE_LEG_ON_GROUND = 276, PED_FLAG_NO_WRITHE = 281, PED_FLAG_FREEZE = 292, PED_FLAG_IS_STILL = 301, PED_FLAG_NO_PED_MELEE = 314, _PED_SWITCHING_WEAPON = 331, PED_FLAG_ALPHA = 410, }; (*) When flagId is set to 33 and the bool value to true, peds will die by starting ragdoll, so you should set this flag to false when you resurrect a ped. When flagId is set to 62 and the boolvalue to false this happens: Ped is taken out of vehicle and can't get back in when jacking their empty vehicle. If in a plane it falls from the sky and crashes. Sometimes peds vehicle continue to drive the route without its driver who's running after. (*) JUMPING CHANGES 60,61,104 TO FALSE BEING ON WATER CHANGES 60,61 TO FALSE AND 65,66,168 TO TRUE FALLING CHANGES 60,61,104,276 TO FALSE AND TO 76 TRUE DYING CHANGES 60,61,104,276* TO FALSE AND (NONE) TO TRUE DYING MAKES 60,61,104 TO FALSE BEING IN A CAR CHANGES 60,79,104 TO FALSE AND 62 TO TRUE (*)Maximum value for flagId is 0x1AA (426) in b944. ID 0xF0 (240) appears to be a special flag which is handled different compared to the others IDs.
SET_PED_RESET_FLAG
void PED::SET_PED_RESET_FLAG(Ped ped, int flagId, BOOL doReset) // 0xC1E8A365BF3B29F2 0xCFF6FF66 b323
PED::SET_PED_RESET_FLAG(PLAYER::PLAYER_PED_ID(), 240, 1); Known values: PRF_PreventGoingIntoStillInVehicleState = 236 *(fanatic2.c)*
GET_PED_CONFIG_FLAG
BOOL PED::GET_PED_CONFIG_FLAG(Ped ped, int flagId, BOOL p2) // 0x7EE53118C892B513 0xABE98267 b323
p2 is always 1 in the scripts. if (GET_PED_CONFIG_FLAG(ped, 78, 1)) = returns true if ped is aiming/shooting a gun
GET_PED_RESET_FLAG
BOOL PED::GET_PED_RESET_FLAG(Ped ped, int flagId) // 0xAF9E59B1B1FBF2A0 0x2FC10D11 b323
SET_PED_GROUP_MEMBER_PASSENGER_INDEX
void PED::SET_PED_GROUP_MEMBER_PASSENGER_INDEX(Ped ped, int index) // 0x0BDDB8D9EC6BCF3C 0x2AB3670B b323
SET_PED_CAN_EVASIVE_DIVE
void PED::SET_PED_CAN_EVASIVE_DIVE(Ped ped, BOOL toggle) // 0x6B7A646C242A7059 0x542FEB4D b323
IS_PED_EVASIVE_DIVING
BOOL PED::IS_PED_EVASIVE_DIVING(Ped ped, Entity* evadingEntity) // 0x414641C26E105898 0xD82829DC b323
Presumably returns the Entity that the Ped is currently diving out of the way of. var num3; if (PED::IS_PED_EVASIVE_DIVING(A_0, &num3) != 0) if (ENTITY::IS_ENTITY_A_VEHICLE(num3) != 0)
SET_PED_SHOOTS_AT_COORD
void PED::SET_PED_SHOOTS_AT_COORD(Ped ped, float x, float y, float z, BOOL toggle) // 0x96A05E4FB321B1BA 0xFD64EAE5 b323
SET_PED_MODEL_IS_SUPPRESSED
void PED::SET_PED_MODEL_IS_SUPPRESSED(Hash modelHash, BOOL toggle) // 0xE163A4BCE4DE6F11 0x7820CA43 b323
Full list of peds by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/peds.json
STOP_ANY_PED_MODEL_BEING_SUPPRESSED
void PED::STOP_ANY_PED_MODEL_BEING_SUPPRESSED() // 0xB47BD05FA66B40CF 0x5AD7DC55 b323
SET_PED_CAN_BE_TARGETED_WHEN_INJURED
void PED::SET_PED_CAN_BE_TARGETED_WHEN_INJURED(Ped ped, BOOL toggle) // 0x638C03B0F9878F57 0x6FD9A7CD b323
SET_PED_GENERATES_DEAD_BODY_EVENTS
void PED::SET_PED_GENERATES_DEAD_BODY_EVENTS(Ped ped, BOOL toggle) // 0x7FB17BA2E7DECA5B 0xE9B97A2B b323
_BLOCK_PED_DEAD_BODY_SHOCKING_EVENTS
void PED::_BLOCK_PED_DEAD_BODY_SHOCKING_EVENTS(Ped ped, BOOL toggle) // 0xE43A13C9E4CCCBCF 0xFF1F6AEB b323
_0x3E9679C1DFCF422C
void PED::_0x3E9679C1DFCF422C(Any p0, Any p1) // 0x3E9679C1DFCF422C b877
SET_PED_CAN_RAGDOLL_FROM_PLAYER_IMPACT
void PED::SET_PED_CAN_RAGDOLL_FROM_PLAYER_IMPACT(Ped ped, BOOL toggle) // 0xDF993EE5E90ABA25 0xE9BD733A b323
GIVE_PED_HELMET
void PED::GIVE_PED_HELMET(Ped ped, BOOL cannotRemove, int helmetFlag, int textureIndex) // 0x54C7C4A94367717E 0x1862A461 b323
PoliceMotorcycleHelmet 1024 RegularMotorcycleHelmet 4096 FiremanHelmet 16384 PilotHeadset 32768 PilotHelmet 65536 -- p2 is generally 4096 or 16384 in the scripts. p1 varies between 1 and 0.
REMOVE_PED_HELMET
void PED::REMOVE_PED_HELMET(Ped ped, BOOL instantly) // 0xA7B2458D0AD6DED8 0x2086B1F0 b323
IS_PED_TAKING_OFF_HELMET
BOOL PED::IS_PED_TAKING_OFF_HELMET(Ped ped) // 0x14590DDBEDB1EC85 0xA1008E0E b323
SET_PED_HELMET
void PED::SET_PED_HELMET(Ped ped, BOOL canWearHelmet) // 0x560A43136EB58105 0xED366E53 b323
SET_PED_HELMET_FLAG
void PED::SET_PED_HELMET_FLAG(Ped ped, int helmetFlag) // 0xC0E78D5C2CE3EB25 0x12677780 b323
SET_PED_HELMET_PROP_INDEX
void PED::SET_PED_HELMET_PROP_INDEX(Ped ped, int propIndex, BOOL p2) // 0x26D83693ED99291C 0xA316D13F b323
List of component/props ID gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html
_SET_PED_HELMET_UNK
void PED::_SET_PED_HELMET_UNK(Ped ped, BOOL p1, int p2, int p3) // 0x3F7325574E41B44D b791
_IS_PED_HELMET_UNK
BOOL PED::_IS_PED_HELMET_UNK(Ped ped) // 0xB9496CE47546DB2C b791
SET_PED_HELMET_TEXTURE_INDEX
void PED::SET_PED_HELMET_TEXTURE_INDEX(Ped ped, int textureIndex) // 0xF1550C4BD22582E2 0x5F6C3328 b323
IS_PED_WEARING_HELMET
BOOL PED::IS_PED_WEARING_HELMET(Ped ped) // 0xF33BDFE19B309B19 0x0D680D49 b323
Returns true if the ped passed through the parenthesis is wearing a helmet.
CLEAR_PED_STORED_HAT_PROP
void PED::CLEAR_PED_STORED_HAT_PROP(Ped ped) // 0x687C0B594907D2E8 0x24A1284E b323
GET_PED_HELMET_STORED_HAT_PROP_INDEX
Any PED::GET_PED_HELMET_STORED_HAT_PROP_INDEX(Ped ped) // 0x451294E859ECC018 0x8A3A3116 b323
GET_PED_HELMET_STORED_HAT_TEX_INDEX
Any PED::GET_PED_HELMET_STORED_HAT_TEX_INDEX(Ped ped) // 0x9D728C1E12BF5518 0x74EB662D b323
_0xF2385935BFFD4D92
BOOL PED::_0xF2385935BFFD4D92(Any p0) // 0xF2385935BFFD4D92 0xFFF149FE b323
SET_PED_TO_LOAD_COVER
void PED::SET_PED_TO_LOAD_COVER(Ped ped, BOOL toggle) // 0x332B562EEDA62399 0xCF94BA97 b323
SET_PED_CAN_COWER_IN_COVER
void PED::SET_PED_CAN_COWER_IN_COVER(Ped ped, BOOL toggle) // 0xCB7553CDCEF4A735 0x5194658B b323
It simply makes the said ped to cower behind cover object(wall, desk, car) Peds flee attributes must be set to not to flee, first. Else, most of the peds, will just flee from gunshot sounds or any other panic situations.
SET_PED_CAN_PEEK_IN_COVER
void PED::SET_PED_CAN_PEEK_IN_COVER(Ped ped, BOOL toggle) // 0xC514825C507E3736 0xC1DAE216 b323
SET_PED_PLAYS_HEAD_ON_HORN_ANIM_WHEN_DIES_IN_VEHICLE
void PED::SET_PED_PLAYS_HEAD_ON_HORN_ANIM_WHEN_DIES_IN_VEHICLE(Ped ped, BOOL toggle) // 0x94D94BF1A75AED3D 0x7C563CD2 b323
This native does absolutely nothing, just a nullsub
SET_PED_LEG_IK_MODE
void PED::SET_PED_LEG_IK_MODE(Ped ped, int mode) // 0xC396F5B86FF9FEBD 0xFDDB042E b323
"IK" stands for "Inverse kinematics." I assume this has something to do with how the ped uses his legs to balance. In the scripts, the second parameter is always an int with a value of 2, 0, or sometimes 1
SET_PED_MOTION_BLUR
void PED::SET_PED_MOTION_BLUR(Ped ped, BOOL toggle) // 0x0A986918B102B448 0xA211A128 b323
SET_PED_CAN_SWITCH_WEAPON
void PED::SET_PED_CAN_SWITCH_WEAPON(Ped ped, BOOL toggle) // 0xED7F7EFE9FABF340 0xB5F8BA28 b323
SET_PED_DIES_INSTANTLY_IN_WATER
void PED::SET_PED_DIES_INSTANTLY_IN_WATER(Ped ped, BOOL toggle) // 0xEEB64139BA29A7CF 0xFE2554FC b323
_0x1A330D297AAC6BC1
void PED::_0x1A330D297AAC6BC1(Ped ped, int p1) // 0x1A330D297AAC6BC1 0x77BB7CB8 b323
Only appears in lamar1 script.
STOP_PED_WEAPON_FIRING_WHEN_DROPPED
void PED::STOP_PED_WEAPON_FIRING_WHEN_DROPPED(Ped ped) // 0xC158D28142A34608 0x4AC3421E b323
SET_SCRIPTED_ANIM_SEAT_OFFSET
void PED::SET_SCRIPTED_ANIM_SEAT_OFFSET(Ped ped, float p1) // 0x5917BBA32D06C230 0x7CEFFA45 b323
SET_PED_COMBAT_MOVEMENT
void PED::SET_PED_COMBAT_MOVEMENT(Ped ped, int combatMovement) // 0x4D9CA1009AFBD057 0x12E62F9E b323
0 - Stationary (Will just stand in place) 1 - Defensive (Will try to find cover and very likely to blind fire) 2 - Offensive (Will attempt to charge at enemy but take cover as well) 3 - Suicidal Offensive (Will try to flank enemy in a suicidal attack)
GET_PED_COMBAT_MOVEMENT
int PED::GET_PED_COMBAT_MOVEMENT(Ped ped) // 0xDEA92412FCAEB3F5 0xF3E7730E b323
SET_PED_COMBAT_ABILITY
void PED::SET_PED_COMBAT_ABILITY(Ped ped, int p1) // 0xC7622C0D36B2FDA8 0x6C23D329 b323
100 would equal attack less then 50ish would mean run away Only the values 0, 1 and 2 occur in the decompiled scripts. Most likely refers directly to the values also described in combatbehaviour.meta: 0: CA_Poor 1: CA_Average 2: CA_Professional Tested this and got the same results as the first explanation here. Could not find any difference between 0, 1 and 2.
SET_PED_COMBAT_RANGE
void PED::SET_PED_COMBAT_RANGE(Ped ped, int p1) // 0x3C606747B23E497B 0x8818A959 b323
Only the values 0, 1 and 2 occur in the decompiled scripts. Most likely refers directly to the values also described as AttackRange in combatbehaviour.meta: 0: CR_Near 1: CR_Medium 2: CR_Far
GET_PED_COMBAT_RANGE
int PED::GET_PED_COMBAT_RANGE(Ped ped) // 0xF9D9F7F2DB8E2FA0 0x9B9B7163 b323
SET_PED_COMBAT_ATTRIBUTES
void PED::SET_PED_COMBAT_ATTRIBUTES(Ped ped, int attributeIndex, BOOL enabled) // 0x9F7794730795E019 0x81D64248 b323
These combat attributes seem to be the same as the BehaviourFlags from combatbehaviour.meta. So far, these are the equivalents found: enum CombatAttributes { BF_CanUseCover = 0, BF_CanUseVehicles = 1, BF_CanDoDrivebys = 2, BF_CanLeaveVehicle = 3, BF_CanFightArmedPedsWhenNotArmed = 5, BF_CanTauntInVehicle = 20, BF_AlwaysFight = 46, BF_IgnoreTrafficWhenDriving = 52, BF_FreezeMovement = 292, BF_PlayerCanUseFiringWeapons = 1424 }; 8 = ? 9 = ? 13 = ? 14 ? Research thread: gtaforums.com/topic/833391-researchguide-combat-behaviour-flags/
SET_PED_TARGET_LOSS_RESPONSE
void PED::SET_PED_TARGET_LOSS_RESPONSE(Ped ped, int responseType) // 0x0703B9079823DA4A 0xCFA613FF b323
Only 1 and 2 appear in the scripts. combatbehaviour.meta seems to only have TLR_SearchForTarget for all peds, but we don't know if that's 1 or 2.
IS_PED_PERFORMING_MELEE_ACTION
BOOL PED::IS_PED_PERFORMING_MELEE_ACTION(Ped ped) // 0xDCCA191DF9980FD7 0x139C0875 b323
IS_PED_PERFORMING_STEALTH_KILL
BOOL PED::IS_PED_PERFORMING_STEALTH_KILL(Ped ped) // 0xFD4CCDBCC59941B7 0x9ADD7B21 b323
IS_PED_PERFORMING_DEPENDENT_COMBO_LIMIT
BOOL PED::IS_PED_PERFORMING_DEPENDENT_COMBO_LIMIT(Ped ped) // 0xEBD0EDBA5BE957CF 0x9BE7C860 b323
IS_PED_BEING_STEALTH_KILLED
BOOL PED::IS_PED_BEING_STEALTH_KILLED(Ped ped) // 0x863B23EFDE9C5DF2 0xD044C8AF b323
GET_MELEE_TARGET_FOR_PED
Ped PED::GET_MELEE_TARGET_FOR_PED(Ped ped) // 0x18A3E9EE1297FD39 0xAFEC26A4 b323
WAS_PED_KILLED_BY_STEALTH
BOOL PED::WAS_PED_KILLED_BY_STEALTH(Ped ped) // 0xF9800AA1A771B000 0x2EA4B54E b323
WAS_PED_KILLED_BY_TAKEDOWN
BOOL PED::WAS_PED_KILLED_BY_TAKEDOWN(Ped ped) // 0x7F08E26039C7347C 0xBDD3CE69 b323
WAS_PED_KNOCKED_OUT
BOOL PED::WAS_PED_KNOCKED_OUT(Ped ped) // 0x61767F73EACEED21 0x3993092B b323
SET_PED_FLEE_ATTRIBUTES
void PED::SET_PED_FLEE_ATTRIBUTES(Ped ped, int attributeFlags, BOOL enable) // 0x70A2D1137C8ED7C9 0xA717A875 b323
bit 15 (0x8000) = force cower
SET_PED_COWER_HASH
void PED::SET_PED_COWER_HASH(Ped ped, const char* p1) // 0xA549131166868ED3 0x16F30DF4 b323
p1: Only "CODE_HUMAN_STAND_COWER" found in the b617d scripts.
_0x2016C603D6B8987C
void PED::_0x2016C603D6B8987C(Ped ped, BOOL toggle) // 0x2016C603D6B8987C 0xA6F2C057 b323
SET_PED_STE*
SET_PED_STEERS_AROUND_PEDS
void PED::SET_PED_STEERS_AROUND_PEDS(Ped ped, BOOL toggle) // 0x46F2193B3AD1D891 0x797CAE4F b323
SET_PED_STEERS_AROUND_OBJECTS
void PED::SET_PED_STEERS_AROUND_OBJECTS(Ped ped, BOOL toggle) // 0x1509C089ADC208BF 0x3BD9B0A6 b323
SET_PED_STEERS_AROUND_VEHICLES
void PED::SET_PED_STEERS_AROUND_VEHICLES(Ped ped, BOOL toggle) // 0xEB6FB9D48DDE23EC 0x533C0651 b323
_0xA9B61A329BFDCBEA
void PED::_0xA9B61A329BFDCBEA(Any p0, BOOL p1) // 0xA9B61A329BFDCBEA 0x2276DE0D b323
SET_PED_INCREASED_AVOIDANCE_RADIUS
void PED::SET_PED_INCREASED_AVOIDANCE_RADIUS(Ped ped) // 0x570389D1C3DE3C6B 0x59C52BE6 b323
SET_PED_BLOCKS_PATHING_WHEN_DEAD
void PED::SET_PED_BLOCKS_PATHING_WHEN_DEAD(Ped ped, BOOL toggle) // 0x576594E8D64375E2 0x1D87DDC1 b323
_0xA52D5247A4227E14
void PED::_0xA52D5247A4227E14(Any p0) // 0xA52D5247A4227E14 0xB52BA5F5 b323
IS_ANY_PED_NEAR_POINT
BOOL PED::IS_ANY_PED_NEAR_POINT(float x, float y, float z, float radius) // 0x083961498679DC9F 0xFBD9B050 b323
FORCE_PED_AI_AND_ANIMATION_UPDATE
void PED::FORCE_PED_AI_AND_ANIMATION_UPDATE(Ped ped, BOOL p1, BOOL p2) // 0x2208438012482A1A 0x187B9070 b323
IS_PED_HEADING_TOWARDS_POSITION
BOOL PED::IS_PED_HEADING_TOWARDS_POSITION(Ped ped, float x, float y, float z, float p4) // 0xFCF37A457CB96DC0 0x45037B9B b323
REQUEST_PED_VISIBILITY_TRACKING
void PED::REQUEST_PED_VISIBILITY_TRACKING(Ped ped) // 0x7D7A2E43E74E2EB8 0x840D24D3 b323
REQUEST_PED_VEHICLE_VISIBILITY_TRACKING
void PED::REQUEST_PED_VEHICLE_VISIBILITY_TRACKING(Ped ped, BOOL p1) // 0x2BC338A7B21F4608 0x31C31DAA b323
_0xCD018C591F94CB43
void PED::_0xCD018C591F94CB43(Ped ped, BOOL p1) // 0xCD018C591F94CB43 b323
REQUEST_*
_0x75BA1CB3B7D40CAF
void PED::_0x75BA1CB3B7D40CAF(Ped ped, BOOL p1) // 0x75BA1CB3B7D40CAF 0x9194DB71 b323
REQUEST_*
IS_TRACKED_PED_VISIBLE
BOOL PED::IS_TRACKED_PED_VISIBLE(Ped ped) // 0x91C8E617F64188AC 0x33248CC1 b323
returns whether or not a ped is visible within your FOV, not this check auto's to false after a certain distance. Target needs to be tracked.. won't work otherwise.
_0x511F1A683387C7E2
int PED::_0x511F1A683387C7E2(Ped ped) // 0x511F1A683387C7E2 0x5B1B70AA b323
GET_*
IS_PED_TRACKED
BOOL PED::IS_PED_TRACKED(Ped ped) // 0x4C5E1F087CD10BB7 0x7EB613D9 b323
HAS_PED_RECEIVED_EVENT
BOOL PED::HAS_PED_RECEIVED_EVENT(Ped ped, int eventId) // 0x8507BCB710FA6DC0 0xECD73DB0 b323
CAN_PED_SEE_HATED_PED
BOOL PED::CAN_PED_SEE_HATED_PED(Ped ped1, Ped ped2) // 0x6CD5A433374D4CFB 0x74A0F291 b323
_0x9C6A6C19B6C0C496
BOOL PED::_0x9C6A6C19B6C0C496(Ped ped, int* p1) // 0x9C6A6C19B6C0C496 b323
_0x2DFC81C9B9608549
BOOL PED::_0x2DFC81C9B9608549(Ped ped, int* p1) // 0x2DFC81C9B9608549 b944
GET_PED_BONE_INDEX
int PED::GET_PED_BONE_INDEX(Ped ped, int boneId) // 0x3F428D08BE5AAE31 0x259C6BA2 b323
no bone= -1 boneIds: SKEL_ROOT = 0x0, SKEL_Pelvis = 0x2e28, SKEL_L_Thigh = 0xe39f, SKEL_L_Calf = 0xf9bb, SKEL_L_Foot = 0x3779, SKEL_L_Toe0 = 0x83c, IK_L_Foot = 0xfedd, PH_L_Foot = 0xe175, MH_L_Knee = 0xb3fe, SKEL_R_Thigh = 0xca72, SKEL_R_Calf = 0x9000, SKEL_R_Foot = 0xcc4d, SKEL_R_Toe0 = 0x512d, IK_R_Foot = 0x8aae, PH_R_Foot = 0x60e6, MH_R_Knee = 0x3fcf, RB_L_ThighRoll = 0x5c57, RB_R_ThighRoll = 0x192a, SKEL_Spine_Root = 0xe0fd, SKEL_Spine0 = 0x5c01, SKEL_Spine1 = 0x60f0, SKEL_Spine2 = 0x60f1, SKEL_Spine3 = 0x60f2, SKEL_L_Clavicle = 0xfcd9, SKEL_L_UpperArm = 0xb1c5, SKEL_L_Forearm = 0xeeeb, SKEL_L_Hand = 0x49d9, SKEL_L_Finger00 = 0x67f2, SKEL_L_Finger01 = 0xff9, SKEL_L_Finger02 = 0xffa, SKEL_L_Finger10 = 0x67f3, SKEL_L_Finger11 = 0x1049, SKEL_L_Finger12 = 0x104a, SKEL_L_Finger20 = 0x67f4, SKEL_L_Finger21 = 0x1059, SKEL_L_Finger22 = 0x105a, SKEL_L_Finger30 = 0x67f5, SKEL_L_Finger31 = 0x1029, SKEL_L_Finger32 = 0x102a, SKEL_L_Finger40 = 0x67f6, SKEL_L_Finger41 = 0x1039, SKEL_L_Finger42 = 0x103a, PH_L_Hand = 0xeb95, IK_L_Hand = 0x8cbd, RB_L_ForeArmRoll = 0xee4f, RB_L_ArmRoll = 0x1470, MH_L_Elbow = 0x58b7, SKEL_R_Clavicle = 0x29d2, SKEL_R_UpperArm = 0x9d4d, SKEL_R_Forearm = 0x6e5c, SKEL_R_Hand = 0xdead, SKEL_R_Finger00 = 0xe5f2, SKEL_R_Finger01 = 0xfa10, SKEL_R_Finger02 = 0xfa11, SKEL_R_Finger10 = 0xe5f3, SKEL_R_Finger11 = 0xfa60, SKEL_R_Finger12 = 0xfa61, SKEL_R_Finger20 = 0xe5f4, SKEL_R_Finger21 = 0xfa70, SKEL_R_Finger22 = 0xfa71, SKEL_R_Finger30 = 0xe5f5, SKEL_R_Finger31 = 0xfa40, SKEL_R_Finger32 = 0xfa41, SKEL_R_Finger40 = 0xe5f6, SKEL_R_Finger41 = 0xfa50, SKEL_R_Finger42 = 0xfa51, PH_R_Hand = 0x6f06, IK_R_Hand = 0x188e, RB_R_ForeArmRoll = 0xab22, RB_R_ArmRoll = 0x90ff, MH_R_Elbow = 0xbb0, SKEL_Neck_1 = 0x9995, SKEL_Head = 0x796e, IK_Head = 0x322c, FACIAL_facialRoot = 0xfe2c, FB_L_Brow_Out_000 = 0xe3db, FB_L_Lid_Upper_000 = 0xb2b6, FB_L_Eye_000 = 0x62ac, FB_L_CheekBone_000 = 0x542e, FB_L_Lip_Corner_000 = 0x74ac, FB_R_Lid_Upper_000 = 0xaa10, FB_R_Eye_000 = 0x6b52, FB_R_CheekBone_000 = 0x4b88, FB_R_Brow_Out_000 = 0x54c, FB_R_Lip_Corner_000 = 0x2ba6, FB_Brow_Centre_000 = 0x9149, FB_UpperLipRoot_000 = 0x4ed2, FB_UpperLip_000 = 0xf18f, FB_L_Lip_Top_000 = 0x4f37, FB_R_Lip_Top_000 = 0x4537, FB_Jaw_000 = 0xb4a0, FB_LowerLipRoot_000 = 0x4324, FB_LowerLip_000 = 0x508f, FB_L_Lip_Bot_000 = 0xb93b, FB_R_Lip_Bot_000 = 0xc33b, FB_Tongue_000 = 0xb987, RB_Neck_1 = 0x8b93, IK_Root = 0xdd1c
GET_PED_RAGDOLL_BONE_INDEX
int PED::GET_PED_RAGDOLL_BONE_INDEX(Ped ped, int bone) // 0x2057EF813397A772 0x849F0716 b323
SET_PED_ENVEFF_SCALE
void PED::SET_PED_ENVEFF_SCALE(Ped ped, float value) // 0xBF29516833893561 0xFC1CFC27 b323
Values look to be between 0.0 and 1.0 From decompiled scripts: 0.0, 0.6, 0.65, 0.8, 1.0 You are correct, just looked in IDA it breaks from the function if it's less than 0.0f or greater than 1.0f.
GET_PED_ENVEFF_SCALE
float PED::GET_PED_ENVEFF_SCALE(Ped ped) // 0x9C14D30395A51A3C 0xA3421E39 b323
SET_ENABLE_PED_ENVEFF_SCALE
void PED::SET_ENABLE_PED_ENVEFF_SCALE(Ped ped, BOOL toggle) // 0xD2C5AA0C0E8D0F1E 0xC70F4A84 b323
_0x110F526AB784111F
void PED::_0x110F526AB784111F(Ped ped, float p1) // 0x110F526AB784111F 0x3B882533 b323
In agency_heist3b.c4, its like this 90% of the time: PED::_110F526AB784111F(ped, 0.099); PED::SET_PED_ENVEFF_SCALE(ped, 1.0); PED::_D69411AA0CEBF9E9(ped, 87, 81, 68); PED::SET_ENABLE_PED_ENVEFF_SCALE(ped, 1); and its like this 10% of the time: PED::_110F526AB784111F(ped, 0.2); PED::SET_PED_ENVEFF_SCALE(ped, 0.65); PED::_D69411AA0CEBF9E9(ped, 74, 69, 60); PED::SET_ENABLE_PED_ENVEFF_SCALE(ped, 1);
SET_PED_ENVEFF_COLOR_MODULATOR
void PED::SET_PED_ENVEFF_COLOR_MODULATOR(Ped ped, int p1, int p2, int p3) // 0xD69411AA0CEBF9E9 0x87A0C174 b323
Something related to the environmental effects natives. In the "agency_heist3b" script, p1 - p3 are always under 100 - usually they are {87, 81, 68}. If SET_PED_ENVEFF_SCALE is set to 0.65 (instead of the usual 1.0), they use {74, 69, 60}
_SET_PED_EMISSIVE_INTENSITY
void PED::_SET_PED_EMISSIVE_INTENSITY(Ped ped, float intensity) // 0x4E90D746056E273D b944
intensity: 0.0f - 1.0f This native sets the emissive intensity for the given ped. It is used for different 'glow' levels on illuminated clothing. Old name: _SET_PED_REFLECTION_INTENSITY
_GET_PED_EMISSIVE_INTENSITY
float PED::_GET_PED_EMISSIVE_INTENSITY(Ped ped) // 0x1461B28A06717D68 b944
Old name: _GET_PED_REFLECTION_INTENSITY Use 0x4E90D746056E273D to set the illuminated clothing glow intensity for a specific ped. Returns a float between 0.0 and 1.0 representing the current illuminated clothing glow intensity.
_IS_PED_SHADER_EFFECT_VALID
BOOL PED::_IS_PED_SHADER_EFFECT_VALID(Ped ped) // 0x81AA517FBBA05D39 b944
_0xE906EC930F5FE7C8
void PED::_0xE906EC930F5FE7C8(Any p0, Any p1) // 0xE906EC930F5FE7C8 b791
_0x1216E0BFA72CC703
void PED::_0x1216E0BFA72CC703(Any p0, Any p1) // 0x1216E0BFA72CC703 0x7BD26837 b323
This native does absolutely nothing, just a nullsub
SET_PED_AO_BLOB_RENDERING
void PED::SET_PED_AO_BLOB_RENDERING(Ped ped, BOOL toggle) // 0x2B5AA717A181FB4C 0x98E29ED0 b323
Enable/disable ped shadow (ambient occlusion). https://gfycat.com/thankfulesteemedgecko
_0xB8B52E498014F5B0
BOOL PED::_0xB8B52E498014F5B0(Ped ped) // 0xB8B52E498014F5B0 b323
CREATE_SYNCHRONIZED_SCENE
int PED::CREATE_SYNCHRONIZED_SCENE(float x, float y, float z, float roll, float pitch, float yaw, int p6) // 0x8C18E0F9080ADD73 0xFFDDF8FA b323
p6 always 2 (but it doesnt seem to matter...) roll and pitch 0 yaw to Ped.rotation
_CREATE_SYNCHRONIZED_SCENE_2
int PED::_CREATE_SYNCHRONIZED_SCENE_2(float x, float y, float z, float radius, Hash object) // 0x62EC273D00187DCA 0xF3876894 b323
IS_SYNCHRONIZED_SCENE_RUNNING
BOOL PED::IS_SYNCHRONIZED_SCENE_RUNNING(int sceneId) // 0x25D39B935A038A26 0x57A282F1 b323
Returns true if a synchronized scene is running
SET_SYNCHRONIZED_SCENE_ORIGIN
void PED::SET_SYNCHRONIZED_SCENE_ORIGIN(int sceneID, float x, float y, float z, float roll, float pitch, float yaw, BOOL p7) // 0x6ACF6B7225801CD7 0x2EC2A0B2 b323
SET_SYNCHRONIZED_SCENE_PHASE
void PED::SET_SYNCHRONIZED_SCENE_PHASE(int sceneID, float phase) // 0x734292F4F0ABF6D0 0xF5AB0D98 b323
GET_SYNCHRONIZED_SCENE_PHASE
float PED::GET_SYNCHRONIZED_SCENE_PHASE(int sceneID) // 0xE4A310B1D7FA73CC 0xB0B2C852 b323
SET_SYNCHRONIZED_SCENE_RATE
void PED::SET_SYNCHRONIZED_SCENE_RATE(int sceneID, float rate) // 0xB6C49F8A5E295A5D 0xF10112FD b323
GET_SYNCHRONIZED_SCENE_RATE
float PED::GET_SYNCHRONIZED_SCENE_RATE(int sceneID) // 0xD80932D577274D40 0x89365F0D b323
SET_SYNCHRONIZED_SCENE_LOOPED
void PED::SET_SYNCHRONIZED_SCENE_LOOPED(int sceneID, BOOL toggle) // 0xD9A897A4C6C2974F 0x32ED9F82 b323
IS_SYNCHRONIZED_SCENE_LOOPED
BOOL PED::IS_SYNCHRONIZED_SCENE_LOOPED(int sceneID) // 0x62522002E0C391BA 0x47D87A84 b323
SET_SYNCHRONIZED_SCENE_HOLD_LAST_FRAME
void PED::SET_SYNCHRONIZED_SCENE_HOLD_LAST_FRAME(int sceneID, BOOL toggle) // 0x394B9CD12435C981 0x2DE48DA1 b323
IS_SYNCHRONIZED_SCENE_HOLD_LAST_FRAME
BOOL PED::IS_SYNCHRONIZED_SCENE_HOLD_LAST_FRAME(int sceneID) // 0x7F2F4F13AC5257EF 0x72CF2514 b323
ATTACH_SYNCHRONIZED_SCENE_TO_ENTITY
void PED::ATTACH_SYNCHRONIZED_SCENE_TO_ENTITY(int sceneID, Entity entity, int boneIndex) // 0x272E4723B56A3B96 0xE9BA6189 b323
DETACH_SYNCHRONIZED_SCENE
void PED::DETACH_SYNCHRONIZED_SCENE(int sceneID) // 0x6D38F1F04CBB37EA 0x52A1CAB2 b323
_DISPOSE_SYNCHRONIZED_SCENE
void PED::_DISPOSE_SYNCHRONIZED_SCENE(int scene) // 0xCD9CC7E200A52A6F 0xBF7F9035 b323
FORCE_PED_MOTION_STATE
BOOL PED::FORCE_PED_MOTION_STATE(Ped ped, Hash motionStateHash, BOOL p2, int p3, BOOL p4) // 0xF28965D04F570DCA 0x164DDEFF b323
Some motionstate hashes are 0xec17e58 (standing idle), 0xbac0f10b (nothing?), 0x3f67c6af (aiming with pistol 2-h), 0x422d7a25 (stealth), 0xbd8817db, 0x916e828c and those for the strings "motionstate_idle", "motionstate_walk", "motionstate_run", "motionstate_actionmode_idle", and "motionstate_actionmode_walk". Regarding p2, p3 and p4: Most common is 0, 0, 0); followed by 0, 1, 0); and 1, 1, 0); in the scripts. p4 is very rarely something other than 0. [31/03/2017] ins1de : enum MotionState { StopRunning = -530524, StopWalking = -668482597, Idle = 247561816, // 1, 1, 0 Idl2 = -1871534317, SkyDive =-1161760501, // 0, 1, 0 Stealth = 1110276645, Sprint = -1115154469, Swim = -1855028596, Unknown1 = 1063765679, Unknown2 = -633298724, }
_GET_PED_CURRENT_MOVEMENT_SPEED
BOOL PED::_GET_PED_CURRENT_MOVEMENT_SPEED(Ped ped, float* speedX, float* speedY) // 0xF60165E1D2C5370B b323
SET_PED_MAX_MOVE_BLEND_RATIO
void PED::SET_PED_MAX_MOVE_BLEND_RATIO(Ped ped, float value) // 0x433083750C5E064A 0xEAD0269A b323
SET_PED_MIN_MOVE_BLEND_RATIO
void PED::SET_PED_MIN_MOVE_BLEND_RATIO(Ped ped, float value) // 0x01A898D26E2333DD 0x383EC364 b323
SET_PED_MOVE_RATE_OVERRIDE
void PED::SET_PED_MOVE_RATE_OVERRIDE(Ped ped, float value) // 0x085BF80FA50A39D1 0x900008C6 b323
Min: 0.00 Max: 10.00 Can be used in combo with fast run cheat. When value is set to 10.00: Sprinting without fast run cheat: 66 m/s Sprinting with fast run cheat: 77 m/s Needs to be looped! Note: According to IDA for the Xbox360 xex, when they check bgt they seem to have the min to 0.0f, but the max set to 1.15f not 10.0f.
_0x0B3E35AC043707D9
void PED::_0x0B3E35AC043707D9(Any p0, Any p1) // 0x0B3E35AC043707D9 b573
_0x46B05BCAE43856B0
BOOL PED::_0x46B05BCAE43856B0(Ped ped, int flag) // 0x46B05BCAE43856B0 0x79543043 b323
Checks if the specified unknown flag is set in the ped's model. The engine itself seems to exclusively check for flags 1 and 4 (Might be inlined code of the check that checks for other flags). Game scripts exclusively check for flags 1 and 4.
GET_PED_NEARBY_VEHICLES
int PED::GET_PED_NEARBY_VEHICLES(Ped ped, int* sizeAndVehs) // 0xCFF869CBFA210D82 0xCB716F68 b323
Returns size of array, passed into the second variable. See below for usage information. This function actually requires a struct, where the first value is the maximum number of elements to return. Here is a sample of how I was able to get it to work correctly, without yet knowing the struct format. //Setup the array const int numElements = 10; const int arrSize = numElements * 2 + 2; Any veh[arrSize]; //0 index is the size of the array veh[0] = numElements; int count = PED::GET_PED_NEARBY_VEHICLES(PLAYER::PLAYER_PED_ID(), veh); if (veh != NULL) { //Simple loop to go through results for (int i = 0; i < count; i++) { int offsettedID = i * 2 + 2; //Make sure it exists if (veh[offsettedID] != NULL && ENTITY::DOES_ENTITY_EXIST(veh[offsettedID])) { //Do something } } }
GET_PED_NEARBY_PEDS
int PED::GET_PED_NEARBY_PEDS(Ped ped, int* sizeAndPeds, int ignore) // 0x23F8F5FC7E8C4A6B 0x4D3325F4 b323
sizeAndPeds - is a pointer to an array. The array is filled with peds found nearby the ped supplied to the first argument. ignore - ped type to ignore Return value is the number of peds found and added to the array passed. ----------------------------------- To make this work in most menu bases at least in C++ do it like so, Formatted Example: pastebin.com/D8an9wwp ----------------------------------- Example: gtaforums.com/topic/789788-function-args-to-pedget-ped-nearby-peds/?p=1067386687
HAVE_ALL_STREAMING_REQUESTS_COMPLETED
BOOL PED::HAVE_ALL_STREAMING_REQUESTS_COMPLETED(Ped ped) // 0x7350823473013C02 0xF9FB4B71 b323
IS_PED_USING_ACTION_MODE
BOOL PED::IS_PED_USING_ACTION_MODE(Ped ped) // 0x00E73468D085F745 0x5AE7EDA2 b323
SET_PED_USING_ACTION_MODE
void PED::SET_PED_USING_ACTION_MODE(Ped ped, BOOL p1, int p2, const char* action) // 0xD75ACCF5E0FB5367 0x8802F696 b323
p2 is usually -1 in the scripts. action is either 0 or "DEFAULT_ACTION".
SET_MOVEMENT_MODE_OVERRIDE
void PED::SET_MOVEMENT_MODE_OVERRIDE(Ped ped, const char* name) // 0x781DE8FA214E87D2 0x83BAE814 b323
name: "MP_FEMALE_ACTION" found multiple times in the b617d scripts.
SET_PED_CAPSULE
void PED::SET_PED_CAPSULE(Ped ped, float value) // 0x364DF566EC833DE2 0xB153E1B9 b323
Overrides the ped's collision capsule radius for the current tick. Must be called every tick to be effective. Setting this to 0.001 will allow warping through some objects.
REGISTER_PEDHEADSHOT
int PED::REGISTER_PEDHEADSHOT(Ped ped) // 0x4462658788425076 0xFFE2667B b323
gtaforums.com/topic/885580-ped-headshotmugshot-txd/
_REGISTER_PEDHEADSHOT_3
int PED::_REGISTER_PEDHEADSHOT_3(Ped ped) // 0xBA8805A1108A2515 b877
REGISTER_PEDHEADSHOT_TRANSPARENT
int PED::REGISTER_PEDHEADSHOT_TRANSPARENT(Ped ped) // 0x953563CE563143AF 0x4DD03628 b323
Similar to REGISTER_PEDHEADSHOT but creates a transparent background instead of black. Example: https://i.imgur.com/iHz8ztn.png
UNREGISTER_PEDHEADSHOT
void PED::UNREGISTER_PEDHEADSHOT(int id) // 0x96B1361D9B24C2FF 0x0879AE45 b323
gtaforums.com/topic/885580-ped-headshotmugshot-txd/
IS_PEDHEADSHOT_VALID
BOOL PED::IS_PEDHEADSHOT_VALID(int id) // 0xA0A9668F158129A2 0x0B1080C4 b323
gtaforums.com/topic/885580-ped-headshotmugshot-txd/
IS_PEDHEADSHOT_READY
BOOL PED::IS_PEDHEADSHOT_READY(int id) // 0x7085228842B13A67 0x761CD02E b323
gtaforums.com/topic/885580-ped-headshotmugshot-txd/
GET_PEDHEADSHOT_TXD_STRING
const char* PED::GET_PEDHEADSHOT_TXD_STRING(int id) // 0xDB4EACD4AD0A5D6B 0x76D28E96 b323
gtaforums.com/topic/885580-ped-headshotmugshot-txd/
REQUEST_PEDHEADSHOT_IMG_UPLOAD
BOOL PED::REQUEST_PEDHEADSHOT_IMG_UPLOAD(int id) // 0xF0DAEF2F545BEE25 0x10F2C023 b323
RELEASE_PEDHEADSHOT_IMG_UPLOAD
void PED::RELEASE_PEDHEADSHOT_IMG_UPLOAD(int id) // 0x5D517B27CF6ECD04 0x0DBB2FA7 b323
IS_PEDHEADSHOT_IMG_UPLOAD_AVAILABLE
BOOL PED::IS_PEDHEADSHOT_IMG_UPLOAD_AVAILABLE() // 0xEBB376779A760AA8 0x810158F8 b323
HAS_PEDHEADSHOT_IMG_UPLOAD_FAILED
BOOL PED::HAS_PEDHEADSHOT_IMG_UPLOAD_FAILED() // 0x876928DDDFCCC9CD 0x05023F8F b323
HAS_PEDHEADSHOT_IMG_UPLOAD_SUCCEEDED
BOOL PED::HAS_PEDHEADSHOT_IMG_UPLOAD_SUCCEEDED() // 0xE8A169E666CBC541 0xAA39FD6C b323
SET_PED_HEATSCALE_OVERRIDE
void PED::SET_PED_HEATSCALE_OVERRIDE(Ped ped, float heatScale) // 0xC1F6EBF9A3D55538 0xEF9142DB b323
DISABLE_PED_HEATSCALE_OVERRIDE
void PED::DISABLE_PED_HEATSCALE_OVERRIDE(Ped ped) // 0x600048C60D5C2C51 0x0688DE64 b323
SPAWNPOINTS_START_SEARCH
void PED::SPAWNPOINTS_START_SEARCH(float p0, float p1, float p2, float p3, float p4, int interiorFlags, float scale, int duration) // 0x2DF9038C90AD5264 0x909A1D76 b323
SPAWNPOINTS_START_SEARCH_IN_ANGLED_AREA
void PED::SPAWNPOINTS_START_SEARCH_IN_ANGLED_AREA(float x, float y, float z, float p3, float p4, float p5, float p6, int interiorFlags, float scale, int duration) // 0xB2AFF10216DEFA2F 0x4AAD0ECB b323
SPAWNPOINTS_CANCEL_SEARCH
void PED::SPAWNPOINTS_CANCEL_SEARCH() // 0xFEE4A5459472A9F8 0x492C9E46 b323
SPAWNPOINTS_IS_SEARCH_ACTIVE
BOOL PED::SPAWNPOINTS_IS_SEARCH_ACTIVE() // 0x3C67506996001F5E 0x814A28F4 b323
SPAWNPOINTS_IS_SEARCH_COMPLETE
BOOL PED::SPAWNPOINTS_IS_SEARCH_COMPLETE() // 0xA586FBEB32A53DBB 0x0B60D2BA b323
SPAWNPOINTS_IS_SEARCH_FAILED
BOOL PED::SPAWNPOINTS_IS_SEARCH_FAILED() // 0xF445DE8DA80A1792 0x6B83ABDF b323
SPAWNPOINTS_GET_NUM_SEARCH_RESULTS
int PED::SPAWNPOINTS_GET_NUM_SEARCH_RESULTS() // 0xA635C11B8C44AFC2 0xF46B4DC8 b323
SPAWNPOINTS_GET_SEARCH_RESULT
void PED::SPAWNPOINTS_GET_SEARCH_RESULT(int randomInt, float* x, float* y, float* z) // 0x280C7E3AC7F56E90 0x36A4AC65 b323
SPAWNPOINTS_GET_SEARCH_RESULT_FLAGS
void PED::SPAWNPOINTS_GET_SEARCH_RESULT_FLAGS(Any p0, Any* p1) // 0xB782F8238512BAD5 0xBA699DDF b323
SET_IK_TARGET
void PED::SET_IK_TARGET(Ped ped, int ikIndex, Entity entityLookAt, int boneLookAt, float offsetX, float offsetY, float offsetZ, Any p7, int blendInDuration, int blendOutDuration) // 0xC32779C16FCEECD9 0x6FE5218C b323
_0xED3C76ADFA6D07C4
void PED::_0xED3C76ADFA6D07C4(Ped ped) // 0xED3C76ADFA6D07C4 0xFB4000DC b323
FORCE_*
REQUEST_ACTION_MODE_ASSET
void PED::REQUEST_ACTION_MODE_ASSET(const char* asset) // 0x290E2780BB7AA598 0x572BA553 b323
HAS_ACTION_MODE_ASSET_LOADED
BOOL PED::HAS_ACTION_MODE_ASSET_LOADED(const char* asset) // 0xE4B5F4BF2CB24E65 0xF7EB2BF1 b323
REMOVE_ACTION_MODE_ASSET
void PED::REMOVE_ACTION_MODE_ASSET(const char* asset) // 0x13E940F88470FA51 0x3F480F92 b323
REQUEST_STEALTH_MODE_ASSET
void PED::REQUEST_STEALTH_MODE_ASSET(const char* asset) // 0x2A0A62FCDEE16D4F 0x280A004A b323
HAS_STEALTH_MODE_ASSET_LOADED
BOOL PED::HAS_STEALTH_MODE_ASSET_LOADED(const char* asset) // 0xE977FC5B08AF3441 0x39245667 b323
REMOVE_STEALTH_MODE_ASSET
void PED::REMOVE_STEALTH_MODE_ASSET(const char* asset) // 0x9219857D21F0E842 0x8C0B243A b323
SET_PED_LOD_MULTIPLIER
void PED::SET_PED_LOD_MULTIPLIER(Ped ped, float multiplier) // 0xDC2C5C242AAC342B 0x1D2B5C70 b323
_0xE861D0B05C7662B8
void PED::_0xE861D0B05C7662B8(Ped ped, BOOL p1, int p2) // 0xE861D0B05C7662B8 0x2F9550C2 b323
SET_PED_CAN_*
SET_FORCE_FOOTSTEP_UPDATE
void PED::SET_FORCE_FOOTSTEP_UPDATE(Ped ped, BOOL toggle) // 0x129466ED55140F8D 0x37DBC2AD b323
SET_FORCE_STEP_TYPE
void PED::SET_FORCE_STEP_TYPE(Ped ped, BOOL p1, int type, int p3) // 0xCB968B53FC7F916D 0xC0F1BC91 b323
IS_ANY_HOSTILE_PED_NEAR_POINT
BOOL PED::IS_ANY_HOSTILE_PED_NEAR_POINT(Ped ped, float x, float y, float z, float radius) // 0x68772DB2B2526F9F 0x1A464167 b323
_0x820E9892A77E97CD
void PED::_0x820E9892A77E97CD(Any p0, Any p1) // 0x820E9892A77E97CD b877
_0x06087579E7AA85A9
BOOL PED::_0x06087579E7AA85A9(Any p0, Any p1, float p2, float p3, float p4, float p5) // 0x06087579E7AA85A9 0xD0567D41 b323
SET_POP_CONTROL_SPHERE_THIS_FRAME
void PED::SET_POP_CONTROL_SPHERE_THIS_FRAME(float x, float y, float z, float min, float max) // 0xD8C3BE3EE94CAF2D 0x4BBE5E2C b323
Min and max are usually 100.0 and 200.0
_0xD33DAA36272177C4
void PED::_0xD33DAA36272177C4(Ped ped) // 0xD33DAA36272177C4 0xA89A53F2 b323
_0x711794453CFD692B
void PED::_0x711794453CFD692B(Any p0, Any p1) // 0x711794453CFD692B b463
_0x83A169EABCDB10A2
void PED::_0x83A169EABCDB10A2(Any p0, Any p1) // 0x83A169EABCDB10A2 b323
_0x288DF530C92DAD6F
void PED::_0x288DF530C92DAD6F(Any p0, float p1) // 0x288DF530C92DAD6F b323
_IS_PED_SWAPPING_WEAPON
BOOL PED::_IS_PED_SWAPPING_WEAPON(Ped Ped) // 0x3795688A307E1EB6 b505
_0x0F62619393661D6E
void PED::_0x0F62619393661D6E(Any p0, Any p1, Any p2) // 0x0F62619393661D6E b877
_0xDFE68C4B787E1BFB
void PED::_0xDFE68C4B787E1BFB(Ped ped) // 0xDFE68C4B787E1BFB b1180
_SET_ENABLE_SCUBA_GEAR_LIGHT
void PED::_SET_ENABLE_SCUBA_GEAR_LIGHT(Ped ped, BOOL toggle) // 0xEE2476B9EE4A094F b1493
_IS_SCUBA_GEAR_LIGHT_ENABLED
BOOL PED::_IS_SCUBA_GEAR_LIGHT_ENABLED(Ped ped) // 0x88274C11CF0D866D b1493
_CLEAR_FACIAL_CLIPSET_OVERRIDE
void PED::_CLEAR_FACIAL_CLIPSET_OVERRIDE(Ped ped) // 0x637822DC2AFEEBF8 b1493
_0xFAB944D4D481ACCB
void PED::_0xFAB944D4D481ACCB(Ped ped, BOOL toggle) // 0xFAB944D4D481ACCB b1734
SET_A*
PHYSICS
ADD_ROPE
int PHYSICS::ADD_ROPE(float x, float y, float z, float rotX, float rotY, float rotZ, float length, int ropeType, float maxLength, float minLength, float windingSpeed, BOOL p11, BOOL p12, BOOL rigid, float p14, BOOL breakWhenShot, Any* unkPtr) // 0xE832D760399EB220 0xA592EC74 b323
Creates a rope at the specific position, that extends in the specified direction when not attached to any entities. __ Add_Rope(pos.x,pos.y,pos.z,0.0,0.0,0.0,20.0,4,20.0,1.0,0.0,false,false,false,5.0,false,NULL) When attached, Position<vector> does not matter When attached, Angle<vector> does not matter Rope Type: 4 and bellow is a thick rope 5 and up are small metal wires 0 crashes the game Max_length - Rope is forced to this length, generally best to keep this the same as your rope length. windingSpeed - Speed the Rope is being winded, using native START_ROPE_WINDING. Set positive for winding and negative for unwinding. Rigid - If max length is zero, and this is set to false the rope will become rigid (it will force a specific distance, what ever length is, between the objects). breakable - Whether or not shooting the rope will break it. unkPtr - unknown ptr, always 0 in orig scripts __ Lengths can be calculated like so: float distance = abs(x1 - x2) + abs(y1 - y2) + abs(z1 - z2); // Rope length NOTES: Rope does NOT interact with anything you attach it to, in some cases it make interact with the world AFTER it breaks (seems to occur if you set the type to -1). Rope will sometimes contract and fall to the ground like you'd expect it to, but since it doesn't interact with the world the effect is just jaring.
DELETE_ROPE
void PHYSICS::DELETE_ROPE(int* ropeId) // 0x52B4829281364649 0x748D72AF b323
DELETE_CHILD_ROPE
void PHYSICS::DELETE_CHILD_ROPE(int ropeId) // 0xAA5D6B1888E4DB20 0xB19B4706 b323
DOES_ROPE_EXIST
BOOL PHYSICS::DOES_ROPE_EXIST(int* ropeId) // 0xFD5448BE3111ED96 0x66E4A3AC b323
_0xA1AE736541B0FCA3
void PHYSICS::_0xA1AE736541B0FCA3(int* ropeId, BOOL p1) // 0xA1AE736541B0FCA3 b1868
ROPE_*
ROPE_DRAW_SHADOW_ENABLED
void PHYSICS::ROPE_DRAW_SHADOW_ENABLED(int* ropeId, BOOL toggle) // 0xF159A63806BB5BA8 0x51523B8C b323
LOAD_ROPE_DATA
void PHYSICS::LOAD_ROPE_DATA(int ropeId, const char* rope_preset) // 0xCBB203C04D1ABD27 0x9E8F1644 b323
Rope presets can be found in the gamefiles. One example is "ropeFamily3", it is NOT a hash but rather a string.
PIN_ROPE_VERTEX
void PHYSICS::PIN_ROPE_VERTEX(int ropeId, int vertex, float x, float y, float z) // 0x2B320CF14146B69A 0xAE1D101B b323
UNPIN_ROPE_VERTEX
void PHYSICS::UNPIN_ROPE_VERTEX(int ropeId, int vertex) // 0x4B5AE2EEE4A8F180 0xB30B552F b323
GET_ROPE_VERTEX_COUNT
int PHYSICS::GET_ROPE_VERTEX_COUNT(int ropeId) // 0x3655F544CD30F0B5 0x5131CD2C b323
ATTACH_ENTITIES_TO_ROPE
void PHYSICS::ATTACH_ENTITIES_TO_ROPE(int ropeId, Entity ent1, Entity ent2, float ent1_x, float ent1_y, float ent1_z, float ent2_x, float ent2_y, float ent2_z, float length, BOOL p10, BOOL p11, Any* p12, Any* p13) // 0x3D95EC8B6D940AC3 0x7508668F b323
Attaches entity 1 to entity 2.
ATTACH_ROPE_TO_ENTITY
void PHYSICS::ATTACH_ROPE_TO_ENTITY(int ropeId, Entity entity, float x, float y, float z, BOOL p5) // 0x4B490A6832559A65 0xB25D9536 b323
The position supplied can be anywhere, and the entity should anchor relative to that point from it's origin.
DETACH_ROPE_FROM_ENTITY
void PHYSICS::DETACH_ROPE_FROM_ENTITY(int ropeId, Entity entity) // 0xBCF3026912A8647D 0x3E720BEE b323
ROPE_SET_UPDATE_PINVERTS
void PHYSICS::ROPE_SET_UPDATE_PINVERTS(int ropeId) // 0xC8D667EE52114ABA 0xEAF291A0 b323
ROPE_SET_UPDATE_ORDER
void PHYSICS::ROPE_SET_UPDATE_ORDER(int ropeId, Any p1) // 0xDC57A637A20006ED 0x80DB77A7 b323
_0x36CCB9BE67B970FD
void PHYSICS::_0x36CCB9BE67B970FD(int ropeId, BOOL p1) // 0x36CCB9BE67B970FD 0xC67D5CF6 b323
ROPE_*
_0x84DE3B5FB3E666F0
BOOL PHYSICS::_0x84DE3B5FB3E666F0(int* ropeId) // 0x84DE3B5FB3E666F0 0x7A18BB9C b323
IS_*
GET_ROPE_LAST_VERTEX_COORD
Vector3 PHYSICS::GET_ROPE_LAST_VERTEX_COORD(int ropeId) // 0x21BB0FBD3E217C2D 0x91F6848B b323
GET_ROPE_VERTEX_COORD
Vector3 PHYSICS::GET_ROPE_VERTEX_COORD(int ropeId, int vertex) // 0xEA61CA8E80F09E4D 0x84374452 b323
START_ROPE_WINDING
void PHYSICS::START_ROPE_WINDING(int ropeId) // 0x1461C72C889E343E 0x5187BED3 b323
STOP_ROPE_WINDING
void PHYSICS::STOP_ROPE_WINDING(int ropeId) // 0xCB2D4AB84A19AA7C 0x46826B53 b323
START_ROPE_UNWINDING_FRONT
void PHYSICS::START_ROPE_UNWINDING_FRONT(int ropeId) // 0x538D1179EC1AA9A9 0xFC0DB4C3 b323
STOP_ROPE_UNWINDING_FRONT
void PHYSICS::STOP_ROPE_UNWINDING_FRONT(int ropeId) // 0xFFF3A50779EFBBB3 0x2EEDB18F b323
ROPE_CONVERT_TO_SIMPLE
void PHYSICS::ROPE_CONVERT_TO_SIMPLE(int ropeId) // 0x5389D48EFA2F079A 0x43E92628 b323
ROPE_LOAD_TEXTURES
void PHYSICS::ROPE_LOAD_TEXTURES() // 0x9B9039DBF2D258C1 0xBA97CE91 b323
Loads rope textures for all ropes in the current scene.
ROPE_ARE_TEXTURES_LOADED
BOOL PHYSICS::ROPE_ARE_TEXTURES_LOADED() // 0xF2D0E6A75CC05597 0x5FDC1047 b323
ROPE_UNLOAD_TEXTURES
void PHYSICS::ROPE_UNLOAD_TEXTURES() // 0x6CE36C35C1AC8163 0x584463E0 b323
Unloads rope textures for all ropes in the current scene.
_DOES_ROPE_BELONG_TO_THIS_SCRIPT
BOOL PHYSICS::_DOES_ROPE_BELONG_TO_THIS_SCRIPT(int ropeId) // 0x271C9D3ACA5D6409 b323
_0xBC0CE682D4D05650
void PHYSICS::_0xBC0CE682D4D05650(int ropeId, int p1, float p2, float p3, float p4, float p5, float p6, float p7, float p8, float p9, float p10, float p11, float p12, float p13) // 0xBC0CE682D4D05650 0x106BA127 b323
Most likely ROPE_ATTACH_*
_0xB1B6216CA2E7B55E
void PHYSICS::_0xB1B6216CA2E7B55E(Any p0, BOOL p1, BOOL p2) // 0xB1B6216CA2E7B55E 0x7C6F7668 b323
_0xB743F735C03D7810
void PHYSICS::_0xB743F735C03D7810(int ropeId, int p1) // 0xB743F735C03D7810 0x686672DD b323
ROPE_*
ROPE_GET_DISTANCE_BETWEEN_ENDS
float PHYSICS::ROPE_GET_DISTANCE_BETWEEN_ENDS(int ropeId) // 0x73040398DFF9A4A6 0xFD309DC8 b323
ROPE_FORCE_LENGTH
void PHYSICS::ROPE_FORCE_LENGTH(int ropeId, float length) // 0xD009F759A723DB1B 0xABF3130F b323
Forces a rope to a certain length.
ROPE_RESET_LENGTH
void PHYSICS::ROPE_RESET_LENGTH(int ropeId, float length) // 0xC16DE94D9BEA14A0 0xC8A423A3 b323
Reset a rope to a certain length.
APPLY_IMPULSE_TO_CLOTH
void PHYSICS::APPLY_IMPULSE_TO_CLOTH(float posX, float posY, float posZ, float vecX, float vecY, float vecZ, float impulse) // 0xE37F721824571784 0xA2A5C9FE b323
SET_DAMPING
void PHYSICS::SET_DAMPING(Entity entity, int vertex, float value) // 0xEEA3B200A6FEB65B 0xCFB37773 b323
ACTIVATE_PHYSICS
void PHYSICS::ACTIVATE_PHYSICS(Entity entity) // 0x710311ADF0E20730 0x031711B8 b323
SET_CGOFFSET
void PHYSICS::SET_CGOFFSET(Entity entity, float x, float y, float z) // 0xD8FA3908D7B86904 0x59910AB2 b323
GET_CGOFFSET
Vector3 PHYSICS::GET_CGOFFSET(Entity entity) // 0x8214A4B5A7A33612 0x49A11F0D b323
SET_CG_AT_BOUNDCENTER
void PHYSICS::SET_CG_AT_BOUNDCENTER(Entity entity) // 0xBE520D9761FF811F 0xA5B55421 b323
BREAK_ENTITY_GLASS
void PHYSICS::BREAK_ENTITY_GLASS(Entity entity, float p1, float p2, float p3, float p4, float p5, float p6, float p7, float p8, Any p9, BOOL p10) // 0x2E648D16F6E308F3 0xD0E0402F b323
_GET_HAS_OBJECT_FRAG_INST
BOOL PHYSICS::_GET_HAS_OBJECT_FRAG_INST(Object object) // 0x0C112765300C7E1E b505
GET_*
SET_DISABLE_BREAKING
void PHYSICS::SET_DISABLE_BREAKING(Object object, BOOL toggle) // 0x5CEC1A84620E7D5B 0xEE77C326 b323
_0xCC6E963682533882
void PHYSICS::_0xCC6E963682533882(Object object) // 0xCC6E963682533882 b323
RESET_*
SET_DISABLE_FRAG_DAMAGE
void PHYSICS::SET_DISABLE_FRAG_DAMAGE(Object object, BOOL toggle) // 0x01BA3AED21C16CFB 0x97269DC8 b323
_SET_ENTITY_PROOF_UNK
void PHYSICS::_SET_ENTITY_PROOF_UNK(Entity entity, BOOL toggle) // 0x15F944730C832252 b463
_0x9EBD751E5787BAF2
void PHYSICS::_0x9EBD751E5787BAF2(BOOL p0) // 0x9EBD751E5787BAF2 b791
SET_*
_SET_LAUNCH_CONTROL_ENABLED
void PHYSICS::_SET_LAUNCH_CONTROL_ENABLED(BOOL toggle) // 0xAA6A6098851C396F b1604
Related to the lower-end of a vehicles fTractionCurve, e.g., from standing starts and acceleration from low/zero speeds.
PLAYER
GET_PLAYER_PED
Ped PLAYER::GET_PLAYER_PED(Player player) // 0x43A66C31C68491C0 0x6E31E993 b323
Gets the ped for a specified player index.
GET_PLAYER_PED_SCRIPT_INDEX
Ped PLAYER::GET_PLAYER_PED_SCRIPT_INDEX(Player player) // 0x50FAC3A3E030A6E1 0x6AC64990 b323
Does the same like PLAYER::GET_PLAYER_PED
SET_PLAYER_MODEL
void PLAYER::SET_PLAYER_MODEL(Player player, Hash model) // 0x00A1CADD00108836 0x774A4C54 b323
Set the model for a specific Player. Be aware that this will destroy the current Ped for the Player and create a new one, any reference to the old ped should be reset Make sure to request the model first and wait until it has loaded.
CHANGE_PLAYER_PED
void PLAYER::CHANGE_PLAYER_PED(Player player, Ped ped, BOOL p2, BOOL resetDamage) // 0x048189FAC643DEEE 0xBE515485 b323
GET_PLAYER_RGB_COLOUR
void PLAYER::GET_PLAYER_RGB_COLOUR(Player player, int* r, int* g, int* b) // 0xE902EF951DCE178F 0x6EF43BBB b323
GET_NUMBER_OF_PLAYERS
int PLAYER::GET_NUMBER_OF_PLAYERS() // 0x407C7F91DDB46C16 0x4C1B8867 b323
Gets the number of players in the current session. If not multiplayer, always returns 1.
GET_PLAYER_TEAM
int PLAYER::GET_PLAYER_TEAM(Player player) // 0x37039302F4E0A008 0x9873E404 b323
Gets the player's team. Does nothing in singleplayer.
SET_PLAYER_TEAM
void PLAYER::SET_PLAYER_TEAM(Player player, int team) // 0x0299FA38396A4940 0x725ADCF2 b323
Set player team on deathmatch and last team standing..
_GET_NUMBER_OF_PLAYERS_IN_TEAM
int PLAYER::_GET_NUMBER_OF_PLAYERS_IN_TEAM(int team) // 0x1FC200409F10E6F1 b1180
GET_PLAYER_NAME
const char* PLAYER::GET_PLAYER_NAME(Player player) // 0x6D0DE6A7B5DA71F8 0x406B4B20 b323
GET_WANTED_LEVEL_RADIUS
float PLAYER::GET_WANTED_LEVEL_RADIUS(Player player) // 0x085DEB493BE80812 0x1CF7D7DA b323
Remnant from GTA IV. Does nothing in GTA V.
GET_PLAYER_WANTED_CENTRE_POSITION
Vector3 PLAYER::GET_PLAYER_WANTED_CENTRE_POSITION(Player player) // 0x0C92BA89F1AF26F8 0x821F2D2C b323
SET_PLAYER_WANTED_CENTRE_POSITION
void PLAYER::SET_PLAYER_WANTED_CENTRE_POSITION(Player player, Vector3* position, BOOL p2, BOOL p3) // 0x520E541A97A13354 0xF261633A b323
# Predominant call signatures PLAYER::SET_PLAYER_WANTED_CENTRE_POSITION(PLAYER::PLAYER_ID(), ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1)); # Parameter value ranges P0: PLAYER::PLAYER_ID() P1: ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), 1) P2: Not set by any call
GET_WANTED_LEVEL_THRESHOLD
int PLAYER::GET_WANTED_LEVEL_THRESHOLD(int wantedLevel) // 0xFDD179EAF45B556C 0xD9783F6B b323
Drft
SET_PLAYER_WANTED_LEVEL
void PLAYER::SET_PLAYER_WANTED_LEVEL(Player player, int wantedLevel, BOOL disableNoMission) // 0x39FF19C64EF7DA5B 0xB7A0914B b323
Call SET_PLAYER_WANTED_LEVEL_NOW for immediate effect wantedLevel is an integer value representing 0 to 5 stars even though the game supports the 6th wanted level but no police will appear since no definitions are present for it in the game files disableNoMission- Disables When Off Mission- appears to always be false
SET_PLAYER_WANTED_LEVEL_NO_DROP
void PLAYER::SET_PLAYER_WANTED_LEVEL_NO_DROP(Player player, int wantedLevel, BOOL p2) // 0x340E61DE7F471565 0xED6F44F5 b323
p2 is always false in R* scripts
SET_PLAYER_WANTED_LEVEL_NOW
void PLAYER::SET_PLAYER_WANTED_LEVEL_NOW(Player player, BOOL p1) // 0xE0A7D1E497FFCD6F 0xAF3AFD83 b323
Forces any pending wanted level to be applied to the specified player immediately. Call SET_PLAYER_WANTED_LEVEL with the desired wanted level, followed by SET_PLAYER_WANTED_LEVEL_NOW. Second parameter is unknown (always false).
ARE_PLAYER_FLASHING_STARS_ABOUT_TO_DROP
BOOL PLAYER::ARE_PLAYER_FLASHING_STARS_ABOUT_TO_DROP(Player player) // 0xAFAF86043E5874E9 0xE13A71C7 b323
ARE_PLAYER_STARS_GREYED_OUT
BOOL PLAYER::ARE_PLAYER_STARS_GREYED_OUT(Player player) // 0x0A6EB355EE14A2DB 0x5E72AB72 b323
_0x7E07C78925D5FD96
Any PLAYER::_0x7E07C78925D5FD96(Any p0) // 0x7E07C78925D5FD96 b372
SET_DISPATCH_COPS_FOR_PLAYER
void PLAYER::SET_DISPATCH_COPS_FOR_PLAYER(Player player, BOOL toggle) // 0xDB172424876553F4 0x48A18913 b323
IS_PLAYER_WANTED_LEVEL_GREATER
BOOL PLAYER::IS_PLAYER_WANTED_LEVEL_GREATER(Player player, int wantedLevel) // 0x238DB2A2C23EE9EF 0x589A2661 b323
CLEAR_PLAYER_WANTED_LEVEL
void PLAYER::CLEAR_PLAYER_WANTED_LEVEL(Player player) // 0xB302540597885499 0x54EA5BCC b323
This executes at the same as speed as PLAYER::SET_PLAYER_WANTED_LEVEL(player, 0, false); PLAYER::GET_PLAYER_WANTED_LEVEL(player); executes in less than half the time. Which means that it's worth first checking if the wanted level needs to be cleared before clearing. However, this is mostly about good code practice and can important in other situations. The difference in time in this example is negligible.
IS_PLAYER_DEAD
BOOL PLAYER::IS_PLAYER_DEAD(Player player) // 0x424D4687FA1E5652 0x140CA5A8 b323
IS_PLAYER_PRESSING_HORN
BOOL PLAYER::IS_PLAYER_PRESSING_HORN(Player player) // 0xFA1E2BF8B10598F9 0xED1D1662 b323
SET_PLAYER_CONTROL
void PLAYER::SET_PLAYER_CONTROL(Player player, BOOL bHasControl, int flags) // 0x8D32347D6D4C40A2 0xD17AFCD8 b323
Flags: SPC_AMBIENT_SCRIPT = (1 << 1), SPC_CLEAR_TASKS = (1 << 2), SPC_REMOVE_FIRES = (1 << 3), SPC_REMOVE_EXPLOSIONS = (1 << 4), SPC_REMOVE_PROJECTILES = (1 << 5), SPC_DEACTIVATE_GADGETS = (1 << 6), SPC_REENABLE_CONTROL_ON_DEATH = (1 << 7), SPC_LEAVE_CAMERA_CONTROL_ON = (1 << 8), SPC_ALLOW_PLAYER_DAMAGE = (1 << 9), SPC_DONT_STOP_OTHER_CARS_AROUND_PLAYER = (1 << 10), SPC_PREVENT_EVERYBODY_BACKOFF = (1 << 11), SPC_ALLOW_PAD_SHAKE = (1 << 12) See: https://alloc8or.re/gta5/doc/enums/eSetPlayerControlFlag.txt
GET_PLAYER_WANTED_LEVEL
int PLAYER::GET_PLAYER_WANTED_LEVEL(Player player) // 0xE28E54788CE8F12D 0xBDCDD163 b323
SET_MAX_WANTED_LEVEL
void PLAYER::SET_MAX_WANTED_LEVEL(int maxWantedLevel) // 0xAA5F02DB48D704B9 0x665A06F5 b323
SET_POLICE_RADAR_BLIPS
void PLAYER::SET_POLICE_RADAR_BLIPS(BOOL toggle) // 0x43286D561B72B8BF 0x8E114B10 b323
If toggle is set to false: The police won't be shown on the (mini)map If toggle is set to true: The police will be shown on the (mini)map
SET_POLICE_IGNORE_PLAYER
void PLAYER::SET_POLICE_IGNORE_PLAYER(Player player, BOOL toggle) // 0x32C62AA929C2DA6A 0xE6DE71B7 b323
The player will be ignored by the police if toggle is set to true
IS_PLAYER_PLAYING
BOOL PLAYER::IS_PLAYER_PLAYING(Player player) // 0x5E9564D8246B909A 0xE15D777F b323
Checks whether the specified player has a Ped, the Ped is not dead, is not injured and is not arrested.
SET_EVERYONE_IGNORE_PLAYER
void PLAYER::SET_EVERYONE_IGNORE_PLAYER(Player player, BOOL toggle) // 0x8EEDA153AD141BA4 0xC915285E b323
SET_ALL_RANDOM_PEDS_FLEE
void PLAYER::SET_ALL_RANDOM_PEDS_FLEE(Player player, BOOL toggle) // 0x056E0FE8534C2949 0x49EAE968 b323
SET_ALL_RANDOM_PEDS_FLEE_THIS_FRAME
void PLAYER::SET_ALL_RANDOM_PEDS_FLEE_THIS_FRAME(Player player) // 0x471D2FF42A94B4F2 0xBF974891 b323
_0xDE45D1A1EF45EE61
void PLAYER::_0xDE45D1A1EF45EE61(Player player, BOOL toggle) // 0xDE45D1A1EF45EE61 0x274631FE b323
_0xC3376F42B1FACCC6
void PLAYER::_0xC3376F42B1FACCC6(Player player) // 0xC3376F42B1FACCC6 0x02DF7AF4 b323
- This is called after SET_ALL_RANDOM_PEDS_FLEE_THIS_FRAME
_0xFAC75988A7D078D3
void PLAYER::_0xFAC75988A7D078D3(Player player) // 0xFAC75988A7D078D3 b463
SET_IGNORE_LOW_PRIORITY_SHOCKING_EVENTS
void PLAYER::SET_IGNORE_LOW_PRIORITY_SHOCKING_EVENTS(Player player, BOOL toggle) // 0x596976B02B6B5700 0xA3D675ED b323
SET_WANTED_LEVEL_MULTIPLIER
void PLAYER::SET_WANTED_LEVEL_MULTIPLIER(float multiplier) // 0x020E5F00CDA207BA 0x1359292F b323
SET_WANTED_LEVEL_DIFFICULTY
void PLAYER::SET_WANTED_LEVEL_DIFFICULTY(Player player, float difficulty) // 0x9B0BB33B04405E7A 0xB552626C b323
Max value is 1.0
RESET_WANTED_LEVEL_DIFFICULTY
void PLAYER::RESET_WANTED_LEVEL_DIFFICULTY(Player player) // 0xB9D0DD990DC141DD 0xA64C378D b323
_0x49B856B1360C47C7
void PLAYER::_0x49B856B1360C47C7(Any p0, Any p1, Any p2) // 0x49B856B1360C47C7 b2060
_0x823EC8E82BA45986
void PLAYER::_0x823EC8E82BA45986(Any p0) // 0x823EC8E82BA45986 b2060
START_FIRING_AMNESTY
void PLAYER::START_FIRING_AMNESTY(int duration) // 0xBF9BD71691857E48 0x5F8A22A6 b323
REPORT_CRIME
void PLAYER::REPORT_CRIME(Player player, int crimeType, int wantedLvlThresh) // 0xE9B09589827545E7 0xD8EB3A44 b323
PLAYER::REPORT_CRIME(PLAYER::PLAYER_ID(), 37, PLAYER::GET_WANTED_LEVEL_THRESHOLD(1)); From am_armybase.ysc.c4: PLAYER::REPORT_CRIME(PLAYER::PLAYER_ID(4), 36, PLAYER::GET_WANTED_LEVEL_THRESHOLD(4)); ----- This was taken from the GTAV.exe v1.334. The function is called sub_140592CE8. For a full decompilation of the function, see here: pastebin.com/09qSMsN7 ----- crimeType: 1: Firearms possession 2: Person running a red light ("5-0-5") 3: Reckless driver 4: Speeding vehicle (a "5-10") 5: Traffic violation (a "5-0-5") 6: Motorcycle rider without a helmet 7: Vehicle theft (a "5-0-3") 8: Grand Theft Auto 9: ??? 10: ??? 11: Assault on a civilian (a "2-40") 12: Assault on an officer 13: Assault with a deadly weapon (a "2-45") 14: Officer shot (a "2-45") 15: Pedestrian struck by a vehicle 16: Officer struck by a vehicle 17: Helicopter down (an "AC"?) 18: Civilian on fire (a "2-40") 19: Officer set on fire (a "10-99") 20: Car on fire 21: Air unit down (an "AC"?) 22: An explosion (a "9-96") 23: A stabbing (a "2-45") (also something else I couldn't understand) 24: Officer stabbed (also something else I couldn't understand) 25: Attack on a vehicle ("MDV"?) 26: Damage to property 27: Suspect threatening officer with a firearm 28: Shots fired 29: ??? 30: ??? 31: ??? 32: ??? 33: ??? 34: A "2-45" 35: ??? 36: A "9-25" 37: ??? 38: ??? 39: ??? 40: ??? 41: ??? 42: ??? 43: Possible disturbance 44: Civilian in need of assistance 45: ??? 46: ???
_SWITCH_CRIME_TYPE
void PLAYER::_SWITCH_CRIME_TYPE(Player player, int p1) // 0x9A987297ED8BD838 0x59B5C2A2 b323
This was previously named as "RESERVE_ENTITY_EXPLODES_ON_HIGH_EXPLOSION_COMBO" which is obviously incorrect. Seems to only appear in scripts used in Singleplayer. p1 ranges from 2 - 46. I assume this switches the crime type
_0xBC9490CA15AEA8FB
void PLAYER::_0xBC9490CA15AEA8FB(Player player) // 0xBC9490CA15AEA8FB 0x6B34A160 b323
Seems to only appear in scripts used in Singleplayer. Always used like this in scripts PLAYER::_BC9490CA15AEA8FB(PLAYER::PLAYER_ID());
_0x4669B3ED80F24B4E
void PLAYER::_0x4669B3ED80F24B4E(Player player) // 0x4669B3ED80F24B4E 0xB9FB142F b323
This has been found in use in the decompiled files.
_0x2F41A3BAE005E5FA
void PLAYER::_0x2F41A3BAE005E5FA(Any p0, Any p1) // 0x2F41A3BAE005E5FA b372
_0xAD73CE5A09E42D12
void PLAYER::_0xAD73CE5A09E42D12(Player player) // 0xAD73CE5A09E42D12 0x85725848 b323
This has been found in use in the decompiled files.
_0x36F1B38855F2A8DF
void PLAYER::_0x36F1B38855F2A8DF(Player player) // 0x36F1B38855F2A8DF 0x3A7E5FB6 b323
REPORT_POLICE_SPOTTED_PLAYER
void PLAYER::REPORT_POLICE_SPOTTED_PLAYER(Player player) // 0xDC64D2C53493ED12 0xD15C4B1C b323
_0xB45EFF719D8427A6
void PLAYER::_0xB45EFF719D8427A6(float p0) // 0xB45EFF719D8427A6 0xBF6993C7 b323
PLAYER::0xBF6993C7(rPtr((&l_122) + 71)); // Found in decompilation *** In "am_hold_up.ysc" used once: l_8d._f47 = MISC::GET_RANDOM_FLOAT_IN_RANGE(18.0, 28.0); PLAYER::_B45EFF719D8427A6((l_8d._f47));
_0x0032A6DBA562C518
void PLAYER::_0x0032A6DBA562C518() // 0x0032A6DBA562C518 0x47CAB814 b323
2 matches in 1 script - am_hold_up Used in multiplayer scripts?
CAN_PLAYER_START_MISSION
BOOL PLAYER::CAN_PLAYER_START_MISSION(Player player) // 0xDE7465A27D403C06 0x39E3CB3F b323
IS_PLAYER_READY_FOR_CUTSCENE
BOOL PLAYER::IS_PLAYER_READY_FOR_CUTSCENE(Player player) // 0x908CBECC2CAA3690 0xBB77E9CD b323
IS_PLAYER_TARGETTING_ENTITY
BOOL PLAYER::IS_PLAYER_TARGETTING_ENTITY(Player player, Entity entity) // 0x7912F7FC4F6264B6 0xF3240B77 b323
GET_PLAYER_TARGET_ENTITY
BOOL PLAYER::GET_PLAYER_TARGET_ENTITY(Player player, Entity* entity) // 0x13EDE1A5DBF797C9 0xF6AAA2D7 b323
Assigns the handle of locked-on melee target to *entity that you pass it. Returns false if no entity found.
IS_PLAYER_FREE_AIMING
BOOL PLAYER::IS_PLAYER_FREE_AIMING(Player player) // 0x2E397FD2ECD37C87 0x1DEC67B7 b323
Gets a value indicating whether the specified player is currently aiming freely.
IS_PLAYER_FREE_AIMING_AT_ENTITY
BOOL PLAYER::IS_PLAYER_FREE_AIMING_AT_ENTITY(Player player, Entity entity) // 0x3C06B5C839B38F7B 0x7D80EEAA b323
Gets a value indicating whether the specified player is currently aiming freely at the specified entity.
GET_ENTITY_PLAYER_IS_FREE_AIMING_AT
BOOL PLAYER::GET_ENTITY_PLAYER_IS_FREE_AIMING_AT(Player player, Entity* entity) // 0x2975C866E6713290 0x8866D9D0 b323
Returns TRUE if it found an entity in your crosshair within range of your weapon. Assigns the handle of the target to the *entity that you pass it. Returns false if no entity found.
SET_PLAYER_LOCKON_RANGE_OVERRIDE
void PLAYER::SET_PLAYER_LOCKON_RANGE_OVERRIDE(Player player, float range) // 0x29961D490E5814FD 0x74D42C03 b323
Affects the range of auto aim target.
SET_PLAYER_CAN_DO_DRIVE_BY
void PLAYER::SET_PLAYER_CAN_DO_DRIVE_BY(Player player, BOOL toggle) // 0x6E8834B52EC20C77 0xF4D99685 b323
Set whether this player should be able to do drive-bys. "A drive-by is when a ped is aiming/shooting from vehicle. This includes middle finger taunts. By setting this value to false I confirm the player is unable to do all that. Tested on tick."
SET_PLAYER_CAN_BE_HASSLED_BY_GANGS
void PLAYER::SET_PLAYER_CAN_BE_HASSLED_BY_GANGS(Player player, BOOL toggle) // 0xD5E460AD7020A246 0x71B305BB b323
Sets whether this player can be hassled by gangs.
SET_PLAYER_CAN_USE_COVER
void PLAYER::SET_PLAYER_CAN_USE_COVER(Player player, BOOL toggle) // 0xD465A8599DFF6814 0x13CAFAFA b323
Sets whether this player can take cover.
GET_MAX_WANTED_LEVEL
int PLAYER::GET_MAX_WANTED_LEVEL() // 0x462E0DB9B137DC5F 0x457F1E44 b323
Gets the maximum wanted level the player can get. Ranges from 0 to 5.
IS_PLAYER_TARGETTING_ANYTHING
BOOL PLAYER::IS_PLAYER_TARGETTING_ANYTHING(Player player) // 0x78CFE51896B6B8A4 0x456DB50D b323
SET_PLAYER_SPRINT
void PLAYER::SET_PLAYER_SPRINT(Player player, BOOL toggle) // 0xA01B8075D8B92DF4 0x7DD7900C b323
RESET_PLAYER_STAMINA
void PLAYER::RESET_PLAYER_STAMINA(Player player) // 0xA6F312FCCE9C1DFE 0xC0445A9C b323
RESTORE_PLAYER_STAMINA
void PLAYER::RESTORE_PLAYER_STAMINA(Player player, float p1) // 0xA352C1B864CAFD33 0x62A93608 b323
GET_PLAYER_SPRINT_STAMINA_REMAINING
float PLAYER::GET_PLAYER_SPRINT_STAMINA_REMAINING(Player player) // 0x3F9F16F8E65A7ED7 0x47017C90 b323
GET_PLAYER_SPRINT_TIME_REMAINING
float PLAYER::GET_PLAYER_SPRINT_TIME_REMAINING(Player player) // 0x1885BC9B108B4C99 0x40E80543 b323
GET_PLAYER_UNDERWATER_TIME_REMAINING
float PLAYER::GET_PLAYER_UNDERWATER_TIME_REMAINING(Player player) // 0xA1FCF8E6AF40B731 0x1317125A b323
_SET_PLAYER_UNDERWATER_TIME_REMAINING
Any PLAYER::_SET_PLAYER_UNDERWATER_TIME_REMAINING(Player player, float time) // 0xA0D3E4F7AAFB7E78 b757
GET_PLAYER_GROUP
int PLAYER::GET_PLAYER_GROUP(Player player) // 0x0D127585F77030AF 0xA5EDCDE8 b323
Returns the group ID the player is member of.
GET_PLAYER_MAX_ARMOUR
int PLAYER::GET_PLAYER_MAX_ARMOUR(Player player) // 0x92659B4CE1863CB3 0x02A50657 b323
IS_PLAYER_CONTROL_ON
BOOL PLAYER::IS_PLAYER_CONTROL_ON(Player player) // 0x49C32D60007AFA47 0x618857F2 b323
Can the player control himself, used to disable controls for player for things like a cutscene. --- You can't disable controls with this, use SET_PLAYER_CONTROL(...) for this.
_IS_PLAYER_CAM_CONTROL_DISABLED
BOOL PLAYER::_IS_PLAYER_CAM_CONTROL_DISABLED() // 0x7C814D2FB49F40C0 b323
Returns true when the player is not able to control the cam i.e. when running a benchmark test, switching the player or viewing a cutscene. Note: I am not 100% sure if the native actually checks if the cam control is disabled but it seems promising.
IS_PLAYER_SCRIPT_CONTROL_ON
BOOL PLAYER::IS_PLAYER_SCRIPT_CONTROL_ON(Player player) // 0x8A876A65283DD7D7 0x61B00A84 b323
IS_PLAYER_CLIMBING
BOOL PLAYER::IS_PLAYER_CLIMBING(Player player) // 0x95E8F73DC65EFB9C 0x4A9E9AE0 b323
Returns TRUE if the player ('s ped) is climbing at the moment.
IS_PLAYER_BEING_ARRESTED
BOOL PLAYER::IS_PLAYER_BEING_ARRESTED(Player player, BOOL atArresting) // 0x388A47C51ABDAC8E 0x7F6A60D3 b323
Return true while player is being arrested / busted. If atArresting is set to 1, this function will return 1 when player is being arrested (while player is putting his hand up, but still have control) If atArresting is set to 0, this function will return 1 only when the busted screen is shown.
RESET_PLAYER_ARREST_STATE
void PLAYER::RESET_PLAYER_ARREST_STATE(Player player) // 0x2D03E13C460760D6 0x453C7CAB b323
GET_PLAYERS_LAST_VEHICLE
Vehicle PLAYER::GET_PLAYERS_LAST_VEHICLE() // 0xB6997A7EB3F5C8C0 0xE2757AC1 b323
Alternative: GET_VEHICLE_PED_IS_IN(PLAYER_PED_ID(), 1);
GET_PLAYER_INDEX
Player PLAYER::GET_PLAYER_INDEX() // 0xA5EDC40EF369B48D 0x309BBDC1 b323
Returns the same as PLAYER_ID and NETWORK_PLAYER_ID_TO_INT
INT_TO_PLAYERINDEX
Player PLAYER::INT_TO_PLAYERINDEX(int value) // 0x41BD2A6B006AF756 0x98DD98F1 b323
Simply returns whatever is passed to it (Regardless of whether the handle is valid or not).
INT_TO_PARTICIPANTINDEX
int PLAYER::INT_TO_PARTICIPANTINDEX(int value) // 0x9EC6603812C24710 0x98F3B274 b323
Simply returns whatever is passed to it (Regardless of whether the handle is valid or not). -------------------------------------------------------- if (NETWORK::NETWORK_IS_PARTICIPANT_ACTIVE(PLAYER::INT_TO_PARTICIPANTINDEX(i)))
GET_TIME_SINCE_PLAYER_HIT_VEHICLE
int PLAYER::GET_TIME_SINCE_PLAYER_HIT_VEHICLE(Player player) // 0x5D35ECF3A81A0EE0 0x6E9B8B9E b323
GET_TIME_SINCE_PLAYER_HIT_PED
int PLAYER::GET_TIME_SINCE_PLAYER_HIT_PED(Player player) // 0xE36A25322DC35F42 0xB6209195 b323
GET_TIME_SINCE_PLAYER_DROVE_ON_PAVEMENT
int PLAYER::GET_TIME_SINCE_PLAYER_DROVE_ON_PAVEMENT(Player player) // 0xD559D2BE9E37853B 0x8836E732 b323
GET_TIME_SINCE_PLAYER_DROVE_AGAINST_TRAFFIC
int PLAYER::GET_TIME_SINCE_PLAYER_DROVE_AGAINST_TRAFFIC(Player player) // 0xDB89591E290D9182 0x9F27D00E b323
IS_PLAYER_FREE_FOR_AMBIENT_TASK
BOOL PLAYER::IS_PLAYER_FREE_FOR_AMBIENT_TASK(Player player) // 0xDCCFD3F106C36AB4 0x85C7E232 b323
PLAYER_ID
Player PLAYER::PLAYER_ID() // 0x4F8644AF03D0E0D6 0x8AEA886C b323
This returns YOUR 'identity' as a Player type. Always returns 0 in story mode.
PLAYER_PED_ID
Ped PLAYER::PLAYER_PED_ID() // 0xD80958FC74E988A6 0xFA92E226 b323
Returns current player ped
NETWORK_PLAYER_ID_TO_INT
int PLAYER::NETWORK_PLAYER_ID_TO_INT() // 0xEE68096F9F37341E 0x8DD5B838 b323
Does exactly the same thing as PLAYER_ID()
HAS_FORCE_CLEANUP_OCCURRED
BOOL PLAYER::HAS_FORCE_CLEANUP_OCCURRED(int cleanupFlags) // 0xC968670BFACE42D9 0x4B37333C b323
FORCE_CLEANUP
void PLAYER::FORCE_CLEANUP(int cleanupFlags) // 0xBC8983F38F78ED51 0xFDAAEA2B b323
used with 1,2,8,64,128 in the scripts
FORCE_CLEANUP_FOR_ALL_THREADS_WITH_THIS_NAME
void PLAYER::FORCE_CLEANUP_FOR_ALL_THREADS_WITH_THIS_NAME(const char* name, int cleanupFlags) // 0x4C68DDDDF0097317 0x04256C73 b323
PLAYER::FORCE_CLEANUP_FOR_ALL_THREADS_WITH_THIS_NAME("pb_prostitute", 1); // Found in decompilation
FORCE_CLEANUP_FOR_THREAD_WITH_THIS_ID
void PLAYER::FORCE_CLEANUP_FOR_THREAD_WITH_THIS_ID(int id, int cleanupFlags) // 0xF745B37630DF176B 0x882D3EB3 b323
GET_CAUSE_OF_MOST_RECENT_FORCE_CLEANUP
int PLAYER::GET_CAUSE_OF_MOST_RECENT_FORCE_CLEANUP() // 0x9A41CF4674A12272 0x39AA9FC8 b323
SET_PLAYER_MAY_ONLY_ENTER_THIS_VEHICLE
void PLAYER::SET_PLAYER_MAY_ONLY_ENTER_THIS_VEHICLE(Player player, Vehicle vehicle) // 0x8026FF78F208978A 0xA454DD29 b323
SET_PLAYER_MAY_NOT_ENTER_ANY_VEHICLE
void PLAYER::SET_PLAYER_MAY_NOT_ENTER_ANY_VEHICLE(Player player) // 0x1DE37BBF9E9CC14A 0xAF7AFCC4 b323
GIVE_ACHIEVEMENT_TO_PLAYER
BOOL PLAYER::GIVE_ACHIEVEMENT_TO_PLAYER(int achievement) // 0xBEC7076D64130195 0x822BC992 b323
Achievements from 0-57 more achievements came with update 1.29 (freemode events update), I'd say that they now go to 60, but I'll need to check.
_SET_ACHIEVEMENT_PROGRESS
BOOL PLAYER::_SET_ACHIEVEMENT_PROGRESS(int achievement, int progress) // 0xC2AFFFDABBDC2C5C b323
For Steam. Does nothing and always returns false in the retail version of the game.
_GET_ACHIEVEMENT_PROGRESS
int PLAYER::_GET_ACHIEVEMENT_PROGRESS(int achievement) // 0x1C186837D0619335 b323
For Steam. Always returns 0 in retail version of the game.
HAS_ACHIEVEMENT_BEEN_PASSED
BOOL PLAYER::HAS_ACHIEVEMENT_BEEN_PASSED(int achievement) // 0x867365E111A3B6EB 0x136A5BE9 b323
IS_PLAYER_ONLINE
BOOL PLAYER::IS_PLAYER_ONLINE() // 0xF25D331DC2627BBC 0x9FAB6729 b323
Returns TRUE if the game is in online mode and FALSE if in offline mode. This is an alias for NETWORK_IS_SIGNED_ONLINE.
IS_PLAYER_LOGGING_IN_NP
BOOL PLAYER::IS_PLAYER_LOGGING_IN_NP() // 0x74556E1420867ECA 0x8F72FAD0 b323
this function is hard-coded to always return 0.
DISPLAY_SYSTEM_SIGNIN_UI
void PLAYER::DISPLAY_SYSTEM_SIGNIN_UI(BOOL unk) // 0x94DD7888C10A979E 0x4264CED2 b323
Purpose of the BOOL currently unknown. Both, true and false, work
IS_SYSTEM_UI_BEING_DISPLAYED
BOOL PLAYER::IS_SYSTEM_UI_BEING_DISPLAYED() // 0x5D511E3867C87139 0xE495B6DA b323
SET_PLAYER_INVINCIBLE
void PLAYER::SET_PLAYER_INVINCIBLE(Player player, BOOL toggle) // 0x239528EACDC3E7DE 0xDFB9A2A2 b323
Simply sets you as invincible (Health will not deplete). Use 0x733A643B5B0C53C1 instead if you want Ragdoll enabled, which is equal to: *(DWORD *)(playerPedAddress + 0x188) |= (1 << 9);
GET_PLAYER_INVINCIBLE
BOOL PLAYER::GET_PLAYER_INVINCIBLE(Player player) // 0xB721981B2B939E07 0x680C90EE b323
Returns the Player's Invincible status. This function will always return false if 0x733A643B5B0C53C1 is used to set the invincibility status. To always get the correct result, use this: bool IsPlayerInvincible(Player player) { auto addr = getScriptHandleBaseAddress(GET_PLAYER_PED(player)); if (addr) { DWORD flag = *(DWORD *)(addr + 0x188); return ((flag & (1 << 8)) != 0) || ((flag & (1 << 9)) != 0); } return false; }
_0xDCC07526B8EC45AF
BOOL PLAYER::_0xDCC07526B8EC45AF(Player player) // 0xDCC07526B8EC45AF b1868
Always returns false.
_SET_PLAYER_INVINCIBLE_KEEP_RAGDOLL_ENABLED
void PLAYER::_SET_PLAYER_INVINCIBLE_KEEP_RAGDOLL_ENABLED(Player player, BOOL toggle) // 0x6BC97F4F4BB3C04B b463
_0xCAC57395B151135F
void PLAYER::_0xCAC57395B151135F(Player player, BOOL p1) // 0xCAC57395B151135F 0x00563E0D b323
Found in "director_mode", "fm_bj_race_controler", "fm_deathmatch_controler", "fm_impromptu_dm_controler", "fm_race_controler", "gb_deathmatch".
REMOVE_PLAYER_HELMET
void PLAYER::REMOVE_PLAYER_HELMET(Player player, BOOL p2) // 0xF3AC26D3CC576528 0x6255F3B4 b323
GIVE_PLAYER_RAGDOLL_CONTROL
void PLAYER::GIVE_PLAYER_RAGDOLL_CONTROL(Player player, BOOL toggle) // 0x3C49C870E66F0A28 0xC7B4D7AC b323
SET_PLAYER_LOCKON
void PLAYER::SET_PLAYER_LOCKON(Player player, BOOL toggle) // 0x5C8B2F450EE4328E 0x0B270E0F b323
Example from fm_mission_controler.ysc.c4: PLAYER::SET_PLAYER_LOCKON(PLAYER::PLAYER_ID(), 1); All other decompiled scripts using this seem to be using the player id as the first parameter, so I feel the need to confirm it as so. No need to confirm it says PLAYER_ID() so it uses PLAYER_ID() lol.
SET_PLAYER_TARGETING_MODE
void PLAYER::SET_PLAYER_TARGETING_MODE(int targetMode) // 0xB1906895227793F3 0x61CAE253 b323
Sets your targeting mode. 0 = Assisted Aim - Full 1 = Assisted Aim - Partial 2 = Free Aim - Assisted 3 = Free Aim
SET_PLAYER_TARGET_LEVEL
void PLAYER::SET_PLAYER_TARGET_LEVEL(int targetLevel) // 0x5702B917B99DB1CD 0x772DA539 b323
_0xB9CF1F793A9F1BF1
BOOL PLAYER::_0xB9CF1F793A9F1BF1() // 0xB9CF1F793A9F1BF1 b323
Returns profile setting 237. GET_*
_0xCB645E85E97EA48B
BOOL PLAYER::_0xCB645E85E97EA48B() // 0xCB645E85E97EA48B b372
Returns profile setting 243. GET_*
CLEAR_PLAYER_HAS_DAMAGED_AT_LEAST_ONE_PED
void PLAYER::CLEAR_PLAYER_HAS_DAMAGED_AT_LEAST_ONE_PED(Player player) // 0xF0B67A4DE6AB5F98 0x1D31CBBD b323
HAS_PLAYER_DAMAGED_AT_LEAST_ONE_PED
BOOL PLAYER::HAS_PLAYER_DAMAGED_AT_LEAST_ONE_PED(Player player) // 0x20CE80B0C2BF4ACC 0x14F52453 b323
CLEAR_PLAYER_HAS_DAMAGED_AT_LEAST_ONE_NON_ANIMAL_PED
void PLAYER::CLEAR_PLAYER_HAS_DAMAGED_AT_LEAST_ONE_NON_ANIMAL_PED(Player player) // 0x4AACB96203D11A31 0x7E3BFBC5 b323
HAS_PLAYER_DAMAGED_AT_LEAST_ONE_NON_ANIMAL_PED
BOOL PLAYER::HAS_PLAYER_DAMAGED_AT_LEAST_ONE_NON_ANIMAL_PED(Player player) // 0xE4B90F367BD81752 0xA3707DFC b323
SET_AIR_DRAG_MULTIPLIER_FOR_PLAYERS_VEHICLE
void PLAYER::SET_AIR_DRAG_MULTIPLIER_FOR_PLAYERS_VEHICLE(Player player, float multiplier) // 0xCA7DC8329F0A1E9E 0xF20F72E5 b323
This can be between 1.0f - 14.9f You can change the max in IDA from 15.0. I say 15.0 as the function blrs if what you input is greater than or equal to 15.0 hence why it's 14.9 max default.
SET_SWIM_MULTIPLIER_FOR_PLAYER
void PLAYER::SET_SWIM_MULTIPLIER_FOR_PLAYER(Player player, float multiplier) // 0xA91C6F0FF7D16A13 0xB986FF47 b323
Swim speed multiplier. Multiplier goes up to 1.49 Just call it one time, it is not required to be called once every tick. - Note copied from below native. Note: At least the IDA method if you change the max float multiplier from 1.5 it will change it for both this and RUN_SPRINT below. I say 1.5 as the function blrs if what you input is greater than or equal to 1.5 hence why it's 1.49 max default.
SET_RUN_SPRINT_MULTIPLIER_FOR_PLAYER
void PLAYER::SET_RUN_SPRINT_MULTIPLIER_FOR_PLAYER(Player player, float multiplier) // 0x6DB47AA77FD94E09 0x825423C2 b323
Multiplier goes up to 1.49 any value above will be completely overruled by the game and the multiplier will not take effect, this can be edited in memory however. Just call it one time, it is not required to be called once every tick. Note: At least the IDA method if you change the max float multiplier from 1.5 it will change it for both this and SWIM above. I say 1.5 as the function blrs if what you input is greater than or equal to 1.5 hence why it's 1.49 max default.
GET_TIME_SINCE_LAST_ARREST
int PLAYER::GET_TIME_SINCE_LAST_ARREST() // 0x5063F92F07C2A316 0x62824EF4 b323
Returns the time since the character was arrested in (ms) milliseconds. example var time = Function.call<int>(Hash.GET_TIME_SINCE_LAST_ARREST(); UI.DrawSubtitle(time.ToString()); if player has not been arrested, the int returned will be -1.
GET_TIME_SINCE_LAST_DEATH
int PLAYER::GET_TIME_SINCE_LAST_DEATH() // 0xC7034807558DDFCA 0x24BC5AC0 b323
Returns the time since the character died in (ms) milliseconds. example var time = Function.call<int>(Hash.GET_TIME_SINCE_LAST_DEATH(); UI.DrawSubtitle(time.ToString()); if player has not died, the int returned will be -1.
ASSISTED_MOVEMENT_CLOSE_ROUTE
void PLAYER::ASSISTED_MOVEMENT_CLOSE_ROUTE() // 0xAEBF081FFC0A0E5E 0xF23277F3 b323
ASSISTED_MOVEMENT_FLUSH_ROUTE
void PLAYER::ASSISTED_MOVEMENT_FLUSH_ROUTE() // 0x8621390F0CDCFE1F 0xD04568B9 b323
SET_PLAYER_FORCED_AIM
void PLAYER::SET_PLAYER_FORCED_AIM(Player player, BOOL toggle) // 0x0FEE4F80AC44A726 0x94E42E2E b323
SET_PLAYER_FORCED_ZOOM
void PLAYER::SET_PLAYER_FORCED_ZOOM(Player player, BOOL toggle) // 0x75E7D505F2B15902 0xB0C576CB b323
SET_PLAYER_FORCE_SKIP_AIM_INTRO
void PLAYER::SET_PLAYER_FORCE_SKIP_AIM_INTRO(Player player, BOOL toggle) // 0x7651BC64AE59E128 0x374F42F0 b323
DISABLE_PLAYER_FIRING
void PLAYER::DISABLE_PLAYER_FIRING(Player player, BOOL toggle) // 0x5E6CC07646BBEAB8 0x30CB28CB b323
Inhibits the player from using any method of combat including melee and firearms. NOTE: Only disables the firing for one frame
_0xB885852C39CC265D
void PLAYER::_0xB885852C39CC265D() // 0xB885852C39CC265D 0x47D6004E b323
Disables something. Used only once in R* scripts (freemode.ysc). DISABLE_PLAYER_*
SET_DISABLE_AMBIENT_MELEE_MOVE
void PLAYER::SET_DISABLE_AMBIENT_MELEE_MOVE(Player player, BOOL toggle) // 0x2E8AABFA40A84F8C 0xCCD937E7 b323
SET_PLAYER_MAX_ARMOUR
void PLAYER::SET_PLAYER_MAX_ARMOUR(Player player, int value) // 0x77DFCCF5948B8C71 0xC6C3C53B b323
Default is 100. Use player id and not ped id. For instance: PLAYER::SET_PLAYER_MAX_ARMOUR(PLAYER::PLAYER_ID(), 100); // main_persistent.ct4
_SPECIAL_ABILITY_ACTIVATE
void PLAYER::_SPECIAL_ABILITY_ACTIVATE(Any p0, Any p1) // 0x821FDC827D6F4090 b678
_SET_SPECIAL_ABILITY
void PLAYER::_SET_SPECIAL_ABILITY(Player player, int p1, Any p2) // 0xB214D570EAD7F81A b678
_SPECIAL_ABILITY_DEPLETE
void PLAYER::_SPECIAL_ABILITY_DEPLETE(Any p0, Any p1) // 0x17F7471EACA78290 b678
SPECIAL_ABILITY_DEACTIVATE
void PLAYER::SPECIAL_ABILITY_DEACTIVATE(Player player, Any p1) // 0xD6A953C6D1492057 0x80C2AB09 b323
SPECIAL_ABILITY_DEACTIVATE_FAST
void PLAYER::SPECIAL_ABILITY_DEACTIVATE_FAST(Player player, Any p1) // 0x9CB5CE07A3968D5A 0x0751908A b323
SPECIAL_ABILITY_RESET
void PLAYER::SPECIAL_ABILITY_RESET(Player player, Any p1) // 0x375F0E738F861A94 0xA7D8BCD3 b323
SPECIAL_ABILITY_CHARGE_ON_MISSION_FAILED
void PLAYER::SPECIAL_ABILITY_CHARGE_ON_MISSION_FAILED(Player player, Any p1) // 0xC9A763D8FE87436A 0x4136829A b323
SPECIAL_ABILITY_CHARGE_SMALL
void PLAYER::SPECIAL_ABILITY_CHARGE_SMALL(Player player, BOOL p1, BOOL p2, Any p3) // 0x2E7B9B683481687D 0x6F463F56 b323
Every occurrence of p1 & p2 were both true.
SPECIAL_ABILITY_CHARGE_MEDIUM
void PLAYER::SPECIAL_ABILITY_CHARGE_MEDIUM(Player player, BOOL p1, BOOL p2, Any p3) // 0xF113E3AA9BC54613 0xAB55D8F3 b323
Only 1 match. Both p1 & p2 were true.
SPECIAL_ABILITY_CHARGE_LARGE
void PLAYER::SPECIAL_ABILITY_CHARGE_LARGE(Player player, BOOL p1, BOOL p2, Any p3) // 0xF733F45FA4497D93 0xF440C04D b323
2 matches. p1 was always true.
SPECIAL_ABILITY_CHARGE_CONTINUOUS
void PLAYER::SPECIAL_ABILITY_CHARGE_CONTINUOUS(Player player, Ped p1, Any p2) // 0xED481732DFF7E997 0x5FEE98A2 b323
p1 appears to always be 1 (only comes up twice)
SPECIAL_ABILITY_CHARGE_ABSOLUTE
void PLAYER::SPECIAL_ABILITY_CHARGE_ABSOLUTE(Player player, int p1, BOOL p2, Any p3) // 0xB7B0870EB531D08D 0x72429998 b323
p1 appears as 5, 10, 15, 25, or 30. p2 is always true.
SPECIAL_ABILITY_CHARGE_NORMALIZED
void PLAYER::SPECIAL_ABILITY_CHARGE_NORMALIZED(Player player, float normalizedValue, BOOL p2, Any p3) // 0xA0696A65F009EE18 0x8C7E68C1 b323
normalizedValue is from 0.0 - 1.0 p2 is always 1
SPECIAL_ABILITY_FILL_METER
void PLAYER::SPECIAL_ABILITY_FILL_METER(Player player, BOOL p1, Any p2) // 0x3DACA8DDC6FD4980 0xB71589DA b323
Also known as _RECHARGE_SPECIAL_ABILITY
SPECIAL_ABILITY_DEPLETE_METER
void PLAYER::SPECIAL_ABILITY_DEPLETE_METER(Player player, BOOL p1, Any p2) // 0x1D506DBBBC51E64B 0x9F80F6DF b323
p1 was always true.
SPECIAL_ABILITY_LOCK
void PLAYER::SPECIAL_ABILITY_LOCK(Hash playerModel, Any p1) // 0x6A09D0D590A47D13 0x1B7BB388 b323
SPECIAL_ABILITY_UNLOCK
void PLAYER::SPECIAL_ABILITY_UNLOCK(Hash playerModel, Any p1) // 0xF145F3BE2EFA9A3B 0x1FDB2919 b323
IS_SPECIAL_ABILITY_UNLOCKED
BOOL PLAYER::IS_SPECIAL_ABILITY_UNLOCKED(Hash playerModel) // 0xC6017F6A6CDFA694 0xC9C75E82 b323
IS_SPECIAL_ABILITY_ACTIVE
BOOL PLAYER::IS_SPECIAL_ABILITY_ACTIVE(Player player, Any p1) // 0x3E5F7FC85D854E15 0x1B17E334 b323
IS_SPECIAL_ABILITY_METER_FULL
BOOL PLAYER::IS_SPECIAL_ABILITY_METER_FULL(Player player, Any p1) // 0x05A1FE504B7F2587 0x2E19D7F6 b323
ENABLE_SPECIAL_ABILITY
void PLAYER::ENABLE_SPECIAL_ABILITY(Player player, BOOL toggle, Any p2) // 0x181EC197DAEFE121 0xC86C1B4E b323
IS_SPECIAL_ABILITY_ENABLED
BOOL PLAYER::IS_SPECIAL_ABILITY_ENABLED(Player player, Any p1) // 0xB1D200FE26AEF3CB 0xC01238CC b323
SET_SPECIAL_ABILITY_MULTIPLIER
void PLAYER::SET_SPECIAL_ABILITY_MULTIPLIER(float multiplier) // 0xA49C426ED0CA4AB7 0xFF1BC556 b323
_0xFFEE8FA29AB9A18E
void PLAYER::_0xFFEE8FA29AB9A18E(Player player, Any p1) // 0xFFEE8FA29AB9A18E 0x5D0FE25B b323
_0x5FC472C501CCADB3
BOOL PLAYER::_0x5FC472C501CCADB3(Player player) // 0x5FC472C501CCADB3 0x46E7E31D b323
Appears once in "re_dealgonewrong"
_0xF10B44FD479D69F3
BOOL PLAYER::_0xF10B44FD479D69F3(Player player, int p1) // 0xF10B44FD479D69F3 0x1E359CC8 b323
Only 1 occurrence. p1 was 2.
_0xDD2620B7B9D16FF1
BOOL PLAYER::_0xDD2620B7B9D16FF1(Player player, float p1) // 0xDD2620B7B9D16FF1 0x8CB53C9F b323
2 occurrences in agency_heist3a. p1 was 0.7f then 0.4f.
START_PLAYER_TELEPORT
void PLAYER::START_PLAYER_TELEPORT(Player player, float x, float y, float z, float heading, BOOL p5, BOOL findCollisionLand, BOOL p7) // 0xAD15F075A4DA0FDE 0xC552E06C b323
`findCollisionLand`: This teleports the player to land when set to true and will not consider the Z coordinate parameter provided by you. It will automatically put the Z coordinate so that you don't fall from sky.
UPDATE_PLAYER_TELEPORT
BOOL PLAYER::UPDATE_PLAYER_TELEPORT(Player player) // 0xE23D5873C2394C61 b323
STOP_PLAYER_TELEPORT
void PLAYER::STOP_PLAYER_TELEPORT() // 0xC449EDED9D73009C 0x86AB8DBB b323
Disables the player's teleportation
IS_PLAYER_TELEPORT_ACTIVE
BOOL PLAYER::IS_PLAYER_TELEPORT_ACTIVE() // 0x02B15662D7F8886F 0x3A11D118 b323
GET_PLAYER_CURRENT_STEALTH_NOISE
float PLAYER::GET_PLAYER_CURRENT_STEALTH_NOISE(Player player) // 0x2F395D61F3A1F877 0xC3B02362 b323
SET_PLAYER_HEALTH_RECHARGE_MULTIPLIER
void PLAYER::SET_PLAYER_HEALTH_RECHARGE_MULTIPLIER(Player player, float regenRate) // 0x5DB660B38DD98A31 0x45514731 b323
`regenRate`: The recharge multiplier, a value between 0.0 and 1.0. Use 1.0 to reset it back to normal
_GET_PLAYER_HEALTH_RECHARGE_LIMIT
float PLAYER::_GET_PLAYER_HEALTH_RECHARGE_LIMIT(Player player) // 0x8BC515BAE4AAF8FF b617
_SET_PLAYER_HEALTH_RECHARGE_LIMIT
void PLAYER::_SET_PLAYER_HEALTH_RECHARGE_LIMIT(Player player, float limit) // 0xC388A0F065F5BC34 b573
_SET_PLAYER_FALL_DISTANCE
void PLAYER::_SET_PLAYER_FALL_DISTANCE(Any p0, Any p1) // 0xEFD79FA81DFBA9CB b573
SET_PLAYER_WEAPON_DAMAGE_MODIFIER
void PLAYER::SET_PLAYER_WEAPON_DAMAGE_MODIFIER(Player player, float modifier) // 0xCE07B9F7817AADA3 0xB02C2F39 b323
This modifies the damage value of your weapon. Whether it is a multiplier or base damage is unknown. Based on tests, it is unlikely to be a multiplier. modifier's min value is 0.1
SET_PLAYER_WEAPON_DEFENSE_MODIFIER
void PLAYER::SET_PLAYER_WEAPON_DEFENSE_MODIFIER(Player player, float modifier) // 0x2D83BC011CA14A3C 0xAE446344 b323
modifier's min value is 0.1
_SET_PLAYER_WEAPON_DEFENSE_MODIFIER_2
void PLAYER::_SET_PLAYER_WEAPON_DEFENSE_MODIFIER_2(Player player, float modifier) // 0xBCFDE9EDE4CF27DC b944
modifier's min value is 0.1
SET_PLAYER_MELEE_WEAPON_DAMAGE_MODIFIER
void PLAYER::SET_PLAYER_MELEE_WEAPON_DAMAGE_MODIFIER(Player player, float modifier, BOOL p2) // 0x4A3DC7ECCC321032 0x362E69AD b323
modifier's min value is 0.1
SET_PLAYER_MELEE_WEAPON_DEFENSE_MODIFIER
void PLAYER::SET_PLAYER_MELEE_WEAPON_DEFENSE_MODIFIER(Player player, float modifier) // 0xAE540335B4ABC4E2 0x9F3D577F b323
modifier's min value is 0.1
SET_PLAYER_VEHICLE_DAMAGE_MODIFIER
void PLAYER::SET_PLAYER_VEHICLE_DAMAGE_MODIFIER(Player player, float modifier) // 0xA50E117CDDF82F0C 0x823ECA63 b323
modifier's min value is 0.1
SET_PLAYER_VEHICLE_DEFENSE_MODIFIER
void PLAYER::SET_PLAYER_VEHICLE_DEFENSE_MODIFIER(Player player, float modifier) // 0x4C60E6EFDAFF2462 0xA16626C7 b323
modifier's min value is 0.1
_0x8D768602ADEF2245
void PLAYER::_0x8D768602ADEF2245(Player player, float p1) // 0x8D768602ADEF2245 b463
SET_PLAYER_MAX_*
_0xD821056B9ACF8052
void PLAYER::_0xD821056B9ACF8052(Any p0, Any p1) // 0xD821056B9ACF8052 b1011
_0x31E90B8873A4CD3B
void PLAYER::_0x31E90B8873A4CD3B(Any p0, Any p1) // 0x31E90B8873A4CD3B b617
SET_PLAYER_PARACHUTE_TINT_INDEX
void PLAYER::SET_PLAYER_PARACHUTE_TINT_INDEX(Player player, int tintIndex) // 0xA3D0E54541D9A5E5 0x8EA12EDB b323
Tints: None = -1, Rainbow = 0, Red = 1, SeasideStripes = 2, WidowMaker = 3, Patriot = 4, Blue = 5, Black = 6, Hornet = 7, AirFocce = 8, Desert = 9, Shadow = 10, HighAltitude = 11, Airbone = 12, Sunrise = 13,
GET_PLAYER_PARACHUTE_TINT_INDEX
void PLAYER::GET_PLAYER_PARACHUTE_TINT_INDEX(Player player, int* tintIndex) // 0x75D3F7A1B0D9B145 0x432B0509 b323
Tints: None = -1, Rainbow = 0, Red = 1, SeasideStripes = 2, WidowMaker = 3, Patriot = 4, Blue = 5, Black = 6, Hornet = 7, AirFocce = 8, Desert = 9, Shadow = 10, HighAltitude = 11, Airbone = 12, Sunrise = 13,
SET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX
void PLAYER::SET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX(Player player, int index) // 0xAF04C87F5DC1DF38 0x70689638 b323
Tints: None = -1, Rainbow = 0, Red = 1, SeasideStripes = 2, WidowMaker = 3, Patriot = 4, Blue = 5, Black = 6, Hornet = 7, AirFocce = 8, Desert = 9, Shadow = 10, HighAltitude = 11, Airbone = 12, Sunrise = 13,
GET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX
void PLAYER::GET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX(Player player, int* index) // 0xD5A016BC3C09CF40 0x77B8EF01 b323
Tints: None = -1, Rainbow = 0, Red = 1, SeasideStripes = 2, WidowMaker = 3, Patriot = 4, Blue = 5, Black = 6, Hornet = 7, AirFocce = 8, Desert = 9, Shadow = 10, HighAltitude = 11, Airbone = 12, Sunrise = 13,
SET_PLAYER_PARACHUTE_PACK_TINT_INDEX
void PLAYER::SET_PLAYER_PARACHUTE_PACK_TINT_INDEX(Player player, int tintIndex) // 0x93B0FB27C9A04060 0xD79D5D1B b323
tints 0- 13 0 - unkown 1 - unkown 2 - unkown 3 - unkown 4 - unkown
GET_PLAYER_PARACHUTE_PACK_TINT_INDEX
void PLAYER::GET_PLAYER_PARACHUTE_PACK_TINT_INDEX(Player player, int* tintIndex) // 0x6E9C742F340CE5A2 0x4E418E13 b323
SET_PLAYER_HAS_RESERVE_PARACHUTE
void PLAYER::SET_PLAYER_HAS_RESERVE_PARACHUTE(Player player) // 0x7DDAB28D31FAC363 0xA3E4798E b323
GET_PLAYER_HAS_RESERVE_PARACHUTE
BOOL PLAYER::GET_PLAYER_HAS_RESERVE_PARACHUTE(Player player) // 0x5DDFE2FF727F3CA3 0x30DA1DA1 b323
SET_PLAYER_CAN_LEAVE_PARACHUTE_SMOKE_TRAIL
void PLAYER::SET_PLAYER_CAN_LEAVE_PARACHUTE_SMOKE_TRAIL(Player player, BOOL enabled) // 0xF401B182DBA8AF53 0x832DEB7A b323
SET_PLAYER_PARACHUTE_SMOKE_TRAIL_COLOR
void PLAYER::SET_PLAYER_PARACHUTE_SMOKE_TRAIL_COLOR(Player player, int r, int g, int b) // 0x8217FD371A4625CF 0x14FE9264 b323
GET_PLAYER_PARACHUTE_SMOKE_TRAIL_COLOR
void PLAYER::GET_PLAYER_PARACHUTE_SMOKE_TRAIL_COLOR(Player player, int* r, int* g, int* b) // 0xEF56DBABD3CD4887 0xF66E5CDD b323
SET_PLAYER_RESET_FLAG_PREFER_REAR_SEATS
void PLAYER::SET_PLAYER_RESET_FLAG_PREFER_REAR_SEATS(Player player, int flags) // 0x11D5F725F0E780E0 0x725C6174 b323
example: flags: 0-6 PLAYER::SET_PLAYER_RESET_FLAG_PREFER_REAR_SEATS(PLAYER::PLAYER_ID(), 6); wouldnt the flag be the seatIndex?
SET_PLAYER_NOISE_MULTIPLIER
void PLAYER::SET_PLAYER_NOISE_MULTIPLIER(Player player, float multiplier) // 0xDB89EF50FF25FCE9 0x15786DD1 b323
SET_PLAYER_SNEAKING_NOISE_MULTIPLIER
void PLAYER::SET_PLAYER_SNEAKING_NOISE_MULTIPLIER(Player player, float multiplier) // 0xB2C1A29588A9F47C 0x8D2D89C4 b323
Values around 1.0f to 2.0f used in game scripts.
CAN_PED_HEAR_PLAYER
BOOL PLAYER::CAN_PED_HEAR_PLAYER(Player player, Ped ped) // 0xF297383AA91DCA29 0x1C70B2EB b323
SIMULATE_PLAYER_INPUT_GAIT
void PLAYER::SIMULATE_PLAYER_INPUT_GAIT(Player player, float amount, int gaitType, float speed, BOOL p4, BOOL p5) // 0x477D5D63E63ECA5D 0x0D77CC34 b323
This is to make the player walk without accepting input from INPUT. gaitType is in increments of 100s. 2000, 500, 300, 200, etc. p4 is always 1 and p5 is always 0. C# Example : Function.Call(Hash.SIMULATE_PLAYER_INPUT_GAIT, Game.Player, 1.0f, 100, 1.0f, 1, 0); //Player will go forward for 100ms
RESET_PLAYER_INPUT_GAIT
void PLAYER::RESET_PLAYER_INPUT_GAIT(Player player) // 0x19531C47A2ABD691 0x4A701EE1 b323
SET_AUTO_GIVE_PARACHUTE_WHEN_ENTER_PLANE
void PLAYER::SET_AUTO_GIVE_PARACHUTE_WHEN_ENTER_PLANE(Player player, BOOL toggle) // 0x9F343285A00B4BB6 0xA97C2059 b323
SET_AUTO_GIVE_SCUBA_GEAR_WHEN_EXIT_VEHICLE
void PLAYER::SET_AUTO_GIVE_SCUBA_GEAR_WHEN_EXIT_VEHICLE(Player player, BOOL toggle) // 0xD2B315B6689D537D 0xA25D767E b323
SET_PLAYER_STEALTH_PERCEPTION_MODIFIER
void PLAYER::SET_PLAYER_STEALTH_PERCEPTION_MODIFIER(Player player, float value) // 0x4E9021C1FCDD507A 0x3D26105F b323
_0x690A61A6D13583F6
BOOL PLAYER::_0x690A61A6D13583F6(Player player) // 0x690A61A6D13583F6 0x1D371529 b323
IS_*
_0x9EDD76E87D5D51BA
void PLAYER::_0x9EDD76E87D5D51BA(Player player) // 0x9EDD76E87D5D51BA 0xE30A64DC b323
SET_PLAYER_SIMULATE_AIMING
void PLAYER::SET_PLAYER_SIMULATE_AIMING(Player player, BOOL toggle) // 0xC54C95DA968EC5B5 0xF1E0CAFC b323
SET_PLAYER_CLOTH_PIN_FRAMES
void PLAYER::SET_PLAYER_CLOTH_PIN_FRAMES(Player player, int p1) // 0x749FADDF97DFE930 0xF7A0F00F b323
SET_PLAYER_CLOTH_PACKAGE_INDEX
void PLAYER::SET_PLAYER_CLOTH_PACKAGE_INDEX(int index) // 0x9F7BBA2EA6372500 0xB8209F16 b323
Every occurrence was either 0 or 2.
SET_PLAYER_CLOTH_LOCK_COUNTER
void PLAYER::SET_PLAYER_CLOTH_LOCK_COUNTER(int value) // 0x14D913B777DFF5DA 0x8D9FD4D1 b323
6 matches across 4 scripts. 5 occurrences were 240. The other was 255.
PLAYER_ATTACH_VIRTUAL_BOUND
void PLAYER::PLAYER_ATTACH_VIRTUAL_BOUND(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7) // 0xED51733DC73AED51 0xECD12E60 b323
Only 1 match. ob_sofa_michael. PLAYER::PLAYER_ATTACH_VIRTUAL_BOUND(-804.5928f, 173.1801f, 71.68436f, 0f, 0f, 0.590625f, 1f, 0.7f);1.0.335.2, 1.0.350.1/2, 1.0.372.2, 1.0.393.2, 1.0.393.4, 1.0.463.1;
PLAYER_DETACH_VIRTUAL_BOUND
void PLAYER::PLAYER_DETACH_VIRTUAL_BOUND() // 0x1DD5897E2FA6E7C9 0x96100EA4 b323
1.0.335.2, 1.0.350.1/2, 1.0.372.2, 1.0.393.2, 1.0.393.4, 1.0.463.1;
HAS_PLAYER_BEEN_SPOTTED_IN_STOLEN_VEHICLE
BOOL PLAYER::HAS_PLAYER_BEEN_SPOTTED_IN_STOLEN_VEHICLE(Player player) // 0xD705740BB0A1CF4C 0x4A01B76A b323
IS_PLAYER_BATTLE_AWARE
BOOL PLAYER::IS_PLAYER_BATTLE_AWARE(Player player) // 0x38D28DA81E4E9BF9 0x013B4F72 b323
Returns true if an unk value is greater than 0.0f
_0xBC0753C9CA14B506
BOOL PLAYER::_0xBC0753C9CA14B506(Player player, int p1, BOOL p2) // 0xBC0753C9CA14B506 0x9DF75B2A b323
var num3 = PLAYER::GET_PLAYER_PED(l_2171); // proof l_2171 is a player var num17 = PLAYER::0x9DF75B2A(l_2171, 100, 0); // l_2171 .ysc: if (PLAYER::GET_PLAYER_WANTED_LEVEL(l_6EF) < v_4) { // l_6EF is a player PLAYER::SET_PLAYER_WANTED_LEVEL(l_6EF, v_4, 0); // l_6EF PLAYER::SET_PLAYER_WANTED_LEVEL_NOW(l_6EF, 0); // l_6EF } else { PLAYER::_4669B3ED80F24B4E(l_6EF); // l_6EF HUD::_BA8D65C1C65702E5(1); a_0 = 1; } if (l_4B24[l_6F2/*156*/]._f8C != PLAYER::_BC0753C9CA14B506(l_6EF, 100, 0)) { // l_6EF l_4B24[l_6F2/*156*/]._f8C = PLAYER::_BC0753C9CA14B506(l_6EF, 100, 0); // l_6EF } Both was taken from fm_mission_controller GET_PLAYER_*
EXTEND_WORLD_BOUNDARY_FOR_PLAYER
void PLAYER::EXTEND_WORLD_BOUNDARY_FOR_PLAYER(float x, float y, float z) // 0x5006D96C995A5827 0x64DDB07D b323
Appears only 3 times in the scripts, more specifically in michael1.ysc - This can be used to prevent dying if you are "out of the world"
RESET_WORLD_BOUNDARY_FOR_PLAYER
void PLAYER::RESET_WORLD_BOUNDARY_FOR_PLAYER() // 0xDA1DF03D5A315F4E 0xA97C2F6C b323
IS_PLAYER_RIDING_TRAIN
BOOL PLAYER::IS_PLAYER_RIDING_TRAIN(Player player) // 0x4EC12697209F2196 0x9765E71D b323
Returns true if the player is riding a train.
HAS_PLAYER_LEFT_THE_WORLD
BOOL PLAYER::HAS_PLAYER_LEFT_THE_WORLD(Player player) // 0xD55DDFB47991A294 0xFEA40B6C b323
SET_PLAYER_LEAVE_PED_BEHIND
void PLAYER::SET_PLAYER_LEAVE_PED_BEHIND(Player player, BOOL toggle) // 0xFF300C7649724A0B 0xAD8383FA b323
SET_PLAYER_PARACHUTE_VARIATION_OVERRIDE
void PLAYER::SET_PLAYER_PARACHUTE_VARIATION_OVERRIDE(Player player, int p1, Any p2, Any p3, BOOL p4) // 0xD9284A8C0D48352C 0x9254249D b323
p1 was always 5. p4 was always false.
CLEAR_PLAYER_PARACHUTE_VARIATION_OVERRIDE
void PLAYER::CLEAR_PLAYER_PARACHUTE_VARIATION_OVERRIDE(Player player) // 0x0F4CC924CF8C7B21 0xFD60F5AB b323
SET_PLAYER_PARACHUTE_MODEL_OVERRIDE
void PLAYER::SET_PLAYER_PARACHUTE_MODEL_OVERRIDE(Player player, Hash model) // 0x977DB4641F6FC3DB 0x5D382498 b323
example: PLAYER::SET_PLAYER_PARACHUTE_MODEL_OVERRIDE(PLAYER::PLAYER_ID(), 0x73268708);
CLEAR_PLAYER_PARACHUTE_MODEL_OVERRIDE
void PLAYER::CLEAR_PLAYER_PARACHUTE_MODEL_OVERRIDE(Player player) // 0x8753997EB5F6EE3F 0x6FF034BB b323
SET_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE
void PLAYER::SET_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE(Player player, Hash model) // 0xDC80A4C2F18A2B64 0xA877FF5E b323
CLEAR_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE
void PLAYER::CLEAR_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE(Player player) // 0x10C54E4389C12B42 0xBB62AAC5 b323
DISABLE_PLAYER_VEHICLE_REWARDS
void PLAYER::DISABLE_PLAYER_VEHICLE_REWARDS(Player player) // 0xC142BE3BB9CE125F 0x8C6E611D b323
_0x2F7CEB6520288061
void PLAYER::_0x2F7CEB6520288061(BOOL p0) // 0x2F7CEB6520288061 0x2849D4B2 b323
Used with radios: void sub_cf383(auto _a0) { if ((a_0)==1) { if (MISC::IS_BIT_SET((g_240005._f1), 3)) { PLAYER::_2F7CEB6520288061(0); AUDIO::SET_AUDIO_FLAG("AllowRadioDuringSwitch", 0); AUDIO::SET_MOBILE_PHONE_RADIO_STATE(0); AUDIO::SET_AUDIO_FLAG("MobileRadioInGame", 0); } sub_cf3f6(1); } else { if (MISC::IS_BIT_SET((g_240005._f1), 3)) { PLAYER::_2F7CEB6520288061(1); AUDIO::SET_AUDIO_FLAG("AllowRadioDuringSwitch", 1); AUDIO::SET_MOBILE_PHONE_RADIO_STATE(1); AUDIO::SET_AUDIO_FLAG("MobileRadioInGame", 1); } sub_cf3f6(0); } } SET_PLAYER_S*
SET_PLAYER_BLUETOOTH_STATE
void PLAYER::SET_PLAYER_BLUETOOTH_STATE(Player player, BOOL state) // 0x5DC40A8869C22141 0x7A6B0EF8 b323
IS_PLAYER_BLUETOOTH_ENABLE
BOOL PLAYER::IS_PLAYER_BLUETOOTH_ENABLE(Player player) // 0x65FAEE425DE637B0 0xEA01BD4A b323
_0x5501B7A5CDB79D37
void PLAYER::_0x5501B7A5CDB79D37(Player player) // 0x5501B7A5CDB79D37 b323
DISABLE_*
GET_PLAYER_FAKE_WANTED_LEVEL
int PLAYER::GET_PLAYER_FAKE_WANTED_LEVEL(Player player) // 0x56105E599CAB0EFA 0x0098D244 b323
_0x55FCC0C390620314
void PLAYER::_0x55FCC0C390620314(Any p0, Any p1, Any p2) // 0x55FCC0C390620314 b573
_0x2382AB11450AE7BA
void PLAYER::_0x2382AB11450AE7BA(Any p0, Any p1) // 0x2382AB11450AE7BA b877
_0x6E4361FF3E8CD7CA
Any PLAYER::_0x6E4361FF3E8CD7CA(Any p0) // 0x6E4361FF3E8CD7CA b1011
_0x237440E46D918649
void PLAYER::_0x237440E46D918649(Any p0) // 0x237440E46D918649 b1290
Unsets playerPed+330 if the current weapon has certain flags.
_SET_PLAYER_HOMING_ROCKET_DISABLED
void PLAYER::_SET_PLAYER_HOMING_ROCKET_DISABLED(Any p0, Any p1) // 0xEE4EBDD2593BA844 b1180
_0x9097EB6D4BB9A12A
void PLAYER::_0x9097EB6D4BB9A12A(Player player, Entity entity) // 0x9097EB6D4BB9A12A b1868
ADD_*
_0x9F260BFB59ADBCA3
void PLAYER::_0x9F260BFB59ADBCA3(Player player, Entity entity) // 0x9F260BFB59ADBCA3 b1868
REMOVE_*
_0x7BAE68775557AE0B
void PLAYER::_0x7BAE68775557AE0B(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x7BAE68775557AE0B b1290
_0x7148E0F43D11F0D9
void PLAYER::_0x7148E0F43D11F0D9() // 0x7148E0F43D11F0D9 b1604
Resets values set by 0x70A382ADEC069DD3 _RESET_VOIP_*
_0x70A382ADEC069DD3
void PLAYER::_0x70A382ADEC069DD3(float coordX, float coordY, float coordZ) // 0x70A382ADEC069DD3 b1604
Might be voip related _SET_VOIP_*
RECORDING
_0x48621C9FCA3EBD28
void RECORDING::_0x48621C9FCA3EBD28(int p0) // 0x48621C9FCA3EBD28 b323
_0x81CBAE94390F9F89
void RECORDING::_0x81CBAE94390F9F89() // 0x81CBAE94390F9F89 b323
_0x13B350B8AD0EEE10
void RECORDING::_0x13B350B8AD0EEE10() // 0x13B350B8AD0EEE10 b323
_0x293220DA1B46CEBC
void RECORDING::_0x293220DA1B46CEBC(float p0, float p1, int p2) // 0x293220DA1B46CEBC b323
_0x208784099002BC30
void RECORDING::_0x208784099002BC30(const char* missionNameLabel, Any p1) // 0x208784099002BC30 b323
-This function appears to be deprecated/ unused. Tracing the call internally leads to a _nullsub - first one seems to be a string of a mission name, second one seems to be a bool/toggle p1 was always 0.
_STOP_RECORDING_THIS_FRAME
void RECORDING::_STOP_RECORDING_THIS_FRAME() // 0xEB2D525B57F42B40 b323
This disable the recording feature and has to be called every frame.
_0xF854439EFBB3B583
void RECORDING::_0xF854439EFBB3B583() // 0xF854439EFBB3B583 b323
_DISABLE_ROCKSTAR_EDITOR_CAMERA_CHANGES
void RECORDING::_DISABLE_ROCKSTAR_EDITOR_CAMERA_CHANGES() // 0xAF66DCEE6609B148 b323
This will disable the ability to make camera changes in R* Editor. RE*
_0x66972397E0757E7A
void RECORDING::_0x66972397E0757E7A(int p0, int p1, int p2) // 0x66972397E0757E7A b323
Does nothing (it's a nullsub).
_START_RECORDING
void RECORDING::_START_RECORDING(int mode) // 0xC3AC2FFF9612AC81 b323
Starts recording a replay. If mode is 0, turns on action replay. If mode is 1, starts recording. If already recording a replay, does nothing.
_STOP_RECORDING_AND_SAVE_CLIP
void RECORDING::_STOP_RECORDING_AND_SAVE_CLIP() // 0x071A5197D6AFC8B3 b323
Stops recording and saves the recorded clip.
_STOP_RECORDING_AND_DISCARD_CLIP
void RECORDING::_STOP_RECORDING_AND_DISCARD_CLIP() // 0x88BB3507ED41A240 b323
Stops recording and discards the recorded clip.
_SAVE_RECORDING_CLIP
BOOL RECORDING::_SAVE_RECORDING_CLIP() // 0x644546EC5287471B b323
_IS_RECORDING
BOOL RECORDING::_IS_RECORDING() // 0x1897CA71995A90B4 b323
Checks if you're recording, returns TRUE when you start recording (F1) or turn on action replay (F2) mov al, cs:g_bIsRecordingGameplay // byte_141DD0CD0 in b944 retn
_0xDF4B952F7D381B95
Any RECORDING::_0xDF4B952F7D381B95() // 0xDF4B952F7D381B95 b323
_0x4282E08174868BE3
Any RECORDING::_0x4282E08174868BE3() // 0x4282E08174868BE3 b323
_0x33D47E85B476ABCD
BOOL RECORDING::_0x33D47E85B476ABCD(BOOL p0) // 0x33D47E85B476ABCD b323
REPLAY
_0x7E2BD3EF6C205F09
void REPLAY::_0x7E2BD3EF6C205F09(const char* p0, BOOL p1) // 0x7E2BD3EF6C205F09 b323
Does nothing (it's a nullsub).
_IS_INTERIOR_RENDERING_DISABLED
BOOL REPLAY::_IS_INTERIOR_RENDERING_DISABLED() // 0x95AB8B5C992C7B58 b323
Returns a bool if interior rendering is disabled, if yes, all "normal" rendered interiors are invisible
_0x5AD3932DAEB1E5D3
void REPLAY::_0x5AD3932DAEB1E5D3() // 0x5AD3932DAEB1E5D3 b323
Disables some other rendering (internal)
_0xE058175F8EAFE79A
void REPLAY::_0xE058175F8EAFE79A(BOOL p0) // 0xE058175F8EAFE79A b323
_RESET_EDITOR_VALUES
void REPLAY::_RESET_EDITOR_VALUES() // 0x3353D13F09307691 b323
Sets (almost, not sure) all Rockstar Editor values (bIsRecording etc) to 0.
_ACTIVATE_ROCKSTAR_EDITOR
void REPLAY::_ACTIVATE_ROCKSTAR_EDITOR() // 0x49DA8145672B2725 b323
Please note that you will need to call DO_SCREEN_FADE_IN after exiting the Rockstar Editor when you call this.
SCRIPT
REQUEST_SCRIPT
void SCRIPT::REQUEST_SCRIPT(const char* scriptName) // 0x6EB5F71AA68F2E8E 0xE26B2666 b323
SET_SCRIPT_AS_NO_LONGER_NEEDED
void SCRIPT::SET_SCRIPT_AS_NO_LONGER_NEEDED(const char* scriptName) // 0xC90D2DCACD56184C 0x6FCB7795 b323
HAS_SCRIPT_LOADED
BOOL SCRIPT::HAS_SCRIPT_LOADED(const char* scriptName) // 0xE6CC9F3BA0FB9EF1 0x5D67F751 b323
Returns if a script has been loaded into the game. Used to see if a script was loaded after requesting.
DOES_SCRIPT_EXIST
BOOL SCRIPT::DOES_SCRIPT_EXIST(const char* scriptName) // 0xFC04745FBE67C19A 0xDEAB87AB b323
REQUEST_SCRIPT_WITH_NAME_HASH
void SCRIPT::REQUEST_SCRIPT_WITH_NAME_HASH(Hash scriptHash) // 0xD62A67D26D9653E6 0x1C68D9DC b323
formerly _REQUEST_STREAMED_SCRIPT
SET_SCRIPT_WITH_NAME_HASH_AS_NO_LONGER_NEEDED
void SCRIPT::SET_SCRIPT_WITH_NAME_HASH_AS_NO_LONGER_NEEDED(Hash scriptHash) // 0xC5BC038960E9DB27 0x96C26F66 b323
HAS_SCRIPT_WITH_NAME_HASH_LOADED
BOOL SCRIPT::HAS_SCRIPT_WITH_NAME_HASH_LOADED(Hash scriptHash) // 0x5F0F0C783EB16C04 0x06674818 b323
DOES_SCRIPT_WITH_NAME_HASH_EXIST
BOOL SCRIPT::DOES_SCRIPT_WITH_NAME_HASH_EXIST(Hash scriptHash) // 0xF86AA3C56BA31381 0x19EAE282 b323
TERMINATE_THREAD
void SCRIPT::TERMINATE_THREAD(int threadId) // 0xC8B189ED9138BCD4 0x253FD520 b323
IS_THREAD_ACTIVE
BOOL SCRIPT::IS_THREAD_ACTIVE(int threadId) // 0x46E9AE36D8FA6417 0x78D7A5A0 b323
_GET_NAME_OF_THREAD
const char* SCRIPT::_GET_NAME_OF_THREAD(int threadId) // 0x05A42BA9FC8DA96B 0xBE7ACD89 b323
SCRIPT_THREAD_ITERATOR_RESET
void SCRIPT::SCRIPT_THREAD_ITERATOR_RESET() // 0xDADFADA5A20143A8 0xBB4E2F66 b323
Starts a new iteration of the current threads. Call this first, then SCRIPT_THREAD_ITERATOR_GET_NEXT_THREAD_ID (0x30B4FA1C82DD4B9F)
SCRIPT_THREAD_ITERATOR_GET_NEXT_THREAD_ID
int SCRIPT::SCRIPT_THREAD_ITERATOR_GET_NEXT_THREAD_ID() // 0x30B4FA1C82DD4B9F 0x1E28B28F b323
If the function returns 0, the end of the iteration has been reached.
GET_ID_OF_THIS_THREAD
int SCRIPT::GET_ID_OF_THIS_THREAD() // 0xC30338E8088E2E21 0xDE524830 b323
TERMINATE_THIS_THREAD
void SCRIPT::TERMINATE_THIS_THREAD() // 0x1090044AD1DA76FA 0x3CD9CBB7 b323
_GET_NUMBER_OF_REFERENCES_OF_SCRIPT_WITH_NAME_HASH
int SCRIPT::_GET_NUMBER_OF_REFERENCES_OF_SCRIPT_WITH_NAME_HASH(Hash scriptHash) // 0x2C83A9DA6BFFC4F9 0x029D3841 b323
Gets the number of instances of the specified script is currently running. Actually returns numRefs - 1. if (program) v3 = rage::scrProgram::GetNumRefs(program) - 1; return v3;
GET_THIS_SCRIPT_NAME
const char* SCRIPT::GET_THIS_SCRIPT_NAME() // 0x442E0A7EDE4A738A 0xA40FD5D9 b323
GET_HASH_OF_THIS_SCRIPT_NAME
Hash SCRIPT::GET_HASH_OF_THIS_SCRIPT_NAME() // 0x8A1C8B1738FFE87E 0x2BEE1F45 b323
GET_NUMBER_OF_EVENTS
int SCRIPT::GET_NUMBER_OF_EVENTS(int eventGroup) // 0x5F92A689A06620AA 0xA3525D60 b323
eventGroup: 0 = SCRIPT_EVENT_QUEUE_AI (CEventGroupScriptAI), 1 = SCRIPT_EVENT_QUEUE_NETWORK (CEventGroupScriptNetwork)
GET_EVENT_EXISTS
BOOL SCRIPT::GET_EVENT_EXISTS(int eventGroup, int eventIndex) // 0x936E6168A9BCEDB5 0xA1B447B5 b323
eventGroup: 0 = SCRIPT_EVENT_QUEUE_AI (CEventGroupScriptAI), 1 = SCRIPT_EVENT_QUEUE_NETWORK (CEventGroupScriptNetwork)
GET_EVENT_AT_INDEX
int SCRIPT::GET_EVENT_AT_INDEX(int eventGroup, int eventIndex) // 0xD8F66A3A60C62153 0xB49C1442 b323
eventGroup: 0 = SCRIPT_EVENT_QUEUE_AI (CEventGroupScriptAI), 1 = SCRIPT_EVENT_QUEUE_NETWORK (CEventGroupScriptNetwork)
GET_EVENT_DATA
BOOL SCRIPT::GET_EVENT_DATA(int eventGroup, int eventIndex, Any* eventData, int eventDataSize) // 0x2902843FCD2B2D79 0x4280F92F b323
eventGroup: 0 = SCRIPT_EVENT_QUEUE_AI (CEventGroupScriptAI), 1 = SCRIPT_EVENT_QUEUE_NETWORK (CEventGroupScriptNetwork) Note: eventDataSize is NOT the size in bytes, it is the size determined by the SIZE_OF operator (RAGE Script operator, not C/C++ sizeof). That is, the size in bytes divided by 8 (script variables are always 8-byte aligned!).
TRIGGER_SCRIPT_EVENT
void SCRIPT::TRIGGER_SCRIPT_EVENT(int eventGroup, Any* eventData, int eventDataSize, int playerBits) // 0x5AE99C571D5BBE5D 0x54763B35 b323
eventGroup: 0 = SCRIPT_EVENT_QUEUE_AI (CEventGroupScriptAI), 1 = SCRIPT_EVENT_QUEUE_NETWORK (CEventGroupScriptNetwork) Note: eventDataSize is NOT the size in bytes, it is the size determined by the SIZE_OF operator (RAGE Script operator, not C/C++ sizeof). That is, the size in bytes divided by 8 (script variables are always 8-byte aligned!). playerBits (also known as playersToBroadcastTo) is a bitset that indicates which players this event should be sent to. In order to send the event to specific players only, use (1 << playerIndex). Set all bits if it should be broadcast to all players.
SHUTDOWN_LOADING_SCREEN
void SCRIPT::SHUTDOWN_LOADING_SCREEN() // 0x078EBE9809CCD637 0xA2826D17 b323
SET_NO_LOADING_SCREEN
void SCRIPT::SET_NO_LOADING_SCREEN(BOOL toggle) // 0x5262CC1995D07E09 0xC8055034 b323
GET_NO_LOADING_SCREEN
BOOL SCRIPT::GET_NO_LOADING_SCREEN() // 0x18C1270EA7F199BC 0x27512BA0 b323
_0xB1577667C3708F9B
void SCRIPT::_0xB1577667C3708F9B() // 0xB1577667C3708F9B 0xB03BCCDF b323
_0x836B62713E0534CA
BOOL SCRIPT::_0x836B62713E0534CA() // 0x836B62713E0534CA b323
Returns true if bit 0 in GtaThread+0x154 is set. BG_*
_0x760910B49D2B98EA
void SCRIPT::_0x760910B49D2B98EA() // 0x760910B49D2B98EA b323
Sets bit 1 in GtaThread+0x154 BG_*
BG_START_CONTEXT_HASH
void SCRIPT::BG_START_CONTEXT_HASH(Hash contextHash) // 0x75B18E49607874C7 0x67B23E17 b323
Hashed version of 0x9D5A25BADB742ACD.
BG_END_CONTEXT_HASH
void SCRIPT::BG_END_CONTEXT_HASH(Hash contextHash) // 0x107E5CC7CA942BC1 0x3D981EBF b323
Hashed version of 0xDC2BACD920D0A0DD.
BG_START_CONTEXT
void SCRIPT::BG_START_CONTEXT(const char* contextName) // 0x9D5A25BADB742ACD 0xF3F1D953 b323
Inserts the given context into the background scripts context map.
BG_END_CONTEXT
void SCRIPT::BG_END_CONTEXT(const char* contextName) // 0xDC2BACD920D0A0DD 0x11F38FB3 b323
Deletes the given context from the background scripts context map.
_0x0F6F1EBBC4E1D5E6
BOOL SCRIPT::_0x0F6F1EBBC4E1D5E6(int scriptIndex, const char* p1) // 0x0F6F1EBBC4E1D5E6 0xF8E5F73A b323
BG_*
_0x22E21FBCFC88C149
int SCRIPT::_0x22E21FBCFC88C149(int scriptIndex, const char* p1) // 0x22E21FBCFC88C149 0x682CB7E1 b323
BG_*
_0x829CD22E043A2577
int SCRIPT::_0x829CD22E043A2577(Hash p0) // 0x829CD22E043A2577 0xC515E735 b323
BG_*
_TRIGGER_SCRIPT_EVENT_2
void SCRIPT::_TRIGGER_SCRIPT_EVENT_2(int eventGroup, Any* eventData, int eventDataSize, int playerBits) // 0xA40CC53DF8E50837 b1103
See TRIGGER_SCRIPT_EVENT
SHAPETEST
START_SHAPE_TEST_LOS_PROBE
int SHAPETEST::START_SHAPE_TEST_LOS_PROBE(float x1, float y1, float z1, float x2, float y2, float z2, int flags, Entity entity, int p8) // 0x7EE9F5D83DD4F90E 0xEFAF4BA6 b323
Asynchronously starts a line-of-sight (raycast) world probe shape test. Use the handle with 0x3D87450E15D98694 or 0x65287525D951F6BE until it returns 0 or 2. p8 is a bit mask with bits 1, 2 and/or 4, relating to collider types; 4 should usually be used.
START_EXPENSIVE_SYNCHRONOUS_SHAPE_TEST_LOS_PROBE
int SHAPETEST::START_EXPENSIVE_SYNCHRONOUS_SHAPE_TEST_LOS_PROBE(float x1, float y1, float z1, float x2, float y2, float z2, int flags, Entity entity, int p8) // 0x377906D8A31E5586 0x8251485D b323
Does the same as 0x7EE9F5D83DD4F90E, except blocking until the shape test completes.
START_SHAPE_TEST_BOUNDING_BOX
int SHAPETEST::START_SHAPE_TEST_BOUNDING_BOX(Entity entity, int flags1, int flags2) // 0x052837721A854EC7 0xCEEAD94B b323
START_SHAPE_TEST_BOX
int SHAPETEST::START_SHAPE_TEST_BOX(float x, float y, float z, float x1, float y2, float z2, float rotX, float rotY, float rotZ, Any p9, int flags, Entity entity, Any p12) // 0xFE466162C4401D18 0x249BC876 b323
START_SHAPE_TEST_BOUND
int SHAPETEST::START_SHAPE_TEST_BOUND(Entity entity, int flags1, int flags2) // 0x37181417CE7C8900 0x13BC46C0 b323
START_SHAPE_TEST_CAPSULE
int SHAPETEST::START_SHAPE_TEST_CAPSULE(float x1, float y1, float z1, float x2, float y2, float z2, float radius, int flags, Entity entity, int p9) // 0x28579D1B8F8AAC80 0x591EA833 b323
Raycast from point to point, where the ray has a radius. flags: vehicles=10 peds =12 Iterating through flags yields many ped / vehicle/ object combinations p9 = 7, but no idea what it does Entity is an entity to ignore
START_SHAPE_TEST_SWEPT_SPHERE
int SHAPETEST::START_SHAPE_TEST_SWEPT_SPHERE(float x1, float y1, float z1, float x2, float y2, float z2, float radius, int flags, Entity entity, Any p9) // 0xE6AC6C45FBE83004 0x4559460A b323
_START_SHAPE_TEST_SURROUNDING_COORDS
int SHAPETEST::_START_SHAPE_TEST_SURROUNDING_COORDS(Vector3* pVec1, Vector3* pVec2, int flag, Entity entity, int flag2) // 0xFF6BE494C7987F34 b323
Actual name starts with START_SHAPE_TEST_??? and it returns a ShapeTest handle that can be used with GET_SHAPE_TEST_RESULT. In its only usage in game scripts its called with flag set to 511, entity to player_ped_id and flag2 set to 7
GET_SHAPE_TEST_RESULT
int SHAPETEST::GET_SHAPE_TEST_RESULT(int shapeTestHandle, BOOL* hit, Vector3* endCoords, Vector3* surfaceNormal, Entity* entityHit) // 0x3D87450E15D98694 0xF3C2875A b323
Returns the result of a shape test: 0 if the handle is invalid, 1 if the shape test is still pending, or 2 if the shape test has completed, and the handle should be invalidated. When used with an asynchronous shape test, this native should be looped until returning 0 or 2, after which the handle is invalidated.
GET_SHAPE_TEST_RESULT_INCLUDING_MATERIAL
int SHAPETEST::GET_SHAPE_TEST_RESULT_INCLUDING_MATERIAL(int shapeTestHandle, BOOL* hit, Vector3* endCoords, Vector3* surfaceNormal, Hash* materialHash, Entity* entityHit) // 0x65287525D951F6BE 0x4301E10C b323
Returns the result of a shape test, also returning the material of any touched surface. When used with an asynchronous shape test, this native should be looped until returning 0 or 2, after which the handle is invalidated. Unless the return value is 2, the other return values are undefined.
RELEASE_SCRIPT_GUID_FROM_ENTITY
void SHAPETEST::RELEASE_SCRIPT_GUID_FROM_ENTITY(Entity entityHit) // 0x2B3334BCA57CD799 0xEC2AAF06 b323
Invalidates the entity handle passed by removing the fwScriptGuid from the entity. This should be used when receiving an ambient entity from shape testing natives, but can also be used for other natives returning an 'irrelevant' entity handle.
SOCIALCLUB
SC_INBOX_GET_TOTAL_NUM_MESSAGES
int SOCIALCLUB::SC_INBOX_GET_TOTAL_NUM_MESSAGES() // 0x03A93FF1A2CA0864 0x6BE5DF29 b323
_SC_INBOX_MESSAGE_INIT
Hash SOCIALCLUB::_SC_INBOX_MESSAGE_INIT(int p0) // 0xBB8EA16ECBC976C4 0x5ECF955D b323
_IS_SC_INBOX_VALID
BOOL SOCIALCLUB::_IS_SC_INBOX_VALID(int p0) // 0x93028F1DB42BFD08 0xD1ED1D48 b323
_SC_INBOX_MESSAGE_POP
BOOL SOCIALCLUB::_SC_INBOX_MESSAGE_POP(int p0) // 0x2C015348CF19CA1D 0x19EE0CCB b323
SC_INBOX_MESSAGE_GET_DATA_INT
BOOL SOCIALCLUB::SC_INBOX_MESSAGE_GET_DATA_INT(int p0, const char* context, int* out) // 0xA00EFE4082C4056E 0x88068C7C b323
_SC_INBOX_MESSAGE_GET_DATA_BOOL
BOOL SOCIALCLUB::_SC_INBOX_MESSAGE_GET_DATA_BOOL(int p0, const char* p1) // 0xFFE5C16F402D851D b323
SC_INBOX_MESSAGE_GET_DATA_STRING
BOOL SOCIALCLUB::SC_INBOX_MESSAGE_GET_DATA_STRING(int p0, const char* context, char* out) // 0x7572EF42FC6A9B6D 0x15607620 b323
SC_INBOX_MESSAGE_DO_APPLY
BOOL SOCIALCLUB::SC_INBOX_MESSAGE_DO_APPLY(int p0) // 0x9A2C8064B6C1E41A 0xEBE420A4 b323
_SC_INBOX_MESSAGE_GET_STRING
const char* SOCIALCLUB::_SC_INBOX_MESSAGE_GET_STRING(int p0) // 0xF3E31D16CBDCB304 0x2C959AF9 b323
_SC_INBOX_MESSAGE_PUSH_GAMER_TO_EVENT_RECIP_LIST
void SOCIALCLUB::_SC_INBOX_MESSAGE_PUSH_GAMER_TO_EVENT_RECIP_LIST(int* networkHandle) // 0xDA024BDBD600F44A 0x0B9A3512 b323
_SC_INBOX_MESSAGE_SEND_UGC_STAT_UPDATE_EVENT
void SOCIALCLUB::_SC_INBOX_MESSAGE_SEND_UGC_STAT_UPDATE_EVENT(Any* data) // 0xA68D3D229F4F3B06 0x75324674 b323
SC_INBOX_MESSAGE_GET_UGCDATA
BOOL SOCIALCLUB::SC_INBOX_MESSAGE_GET_UGCDATA(Any p0, Any* p1) // 0x69D82604A1A5A254 0x88CA3BFC b323
_SC_INBOX_MESSAGE_SEND_BOUNTY_PRESENCE_EVENT
BOOL SOCIALCLUB::_SC_INBOX_MESSAGE_SEND_BOUNTY_PRESENCE_EVENT(Any* data) // 0x6AFD2CD753FEEF83 0x628F489B b323
_SC_INBOX_MESSAGE_GET_BOUNTY_DATA
BOOL SOCIALCLUB::_SC_INBOX_MESSAGE_GET_BOUNTY_DATA(int index, Any* outData) // 0x87E0052F08BD64E6 0xAB3346B5 b323
_SC_INBOX_GET_EMAILS
void SOCIALCLUB::_SC_INBOX_GET_EMAILS(int offset, int limit) // 0x040ADDCBAFA1018A b323
_0x16DA8172459434AA
Any SOCIALCLUB::_0x16DA8172459434AA() // 0x16DA8172459434AA b323
_0x7DB18CA8CAD5B098
Any SOCIALCLUB::_0x7DB18CA8CAD5B098() // 0x7DB18CA8CAD5B098 b505
_0x4737980E8A283806
BOOL SOCIALCLUB::_0x4737980E8A283806(int p0, Any* p1) // 0x4737980E8A283806 b323
_0x44ACA259D67651DB
void SOCIALCLUB::_0x44ACA259D67651DB(Any* p0, Any p1) // 0x44ACA259D67651DB b323
SC_EMAIL_MESSAGE_PUSH_GAMER_TO_RECIP_LIST
void SOCIALCLUB::SC_EMAIL_MESSAGE_PUSH_GAMER_TO_RECIP_LIST(int* networkHandle) // 0x2330C12A7A605D16 0x9A703A2B b323
SC_EMAIL_MESSAGE_CLEAR_RECIP_LIST
void SOCIALCLUB::SC_EMAIL_MESSAGE_CLEAR_RECIP_LIST() // 0x55DF6DB45179236E 0xD094F11A b323
_0x116FB94DC4B79F17
void SOCIALCLUB::_0x116FB94DC4B79F17(const char* p0) // 0x116FB94DC4B79F17 0xAF3C081B b323
_0x07DBD622D9533857
Any SOCIALCLUB::_0x07DBD622D9533857(Any p0) // 0x07DBD622D9533857 b505
_SET_HANDLE_ROCKSTAR_MESSAGE_VIA_SCRIPT
void SOCIALCLUB::_SET_HANDLE_ROCKSTAR_MESSAGE_VIA_SCRIPT(BOOL toggle) // 0xBFA0A56A817C6C7D 0x2FB9F53C b323
_IS_ROCKSTAR_MESSAGE_READY_FOR_SCRIPT
BOOL SOCIALCLUB::_IS_ROCKSTAR_MESSAGE_READY_FOR_SCRIPT() // 0xBC1CC91205EC8D6E 0x6C5738AB b323
_ROCKSTAR_MESSAGE_GET_STRING
const char* SOCIALCLUB::_ROCKSTAR_MESSAGE_GET_STRING() // 0xDF649C4E9AFDD788 0x468668F0 b323
SC_PRESENCE_ATTR_SET_INT
BOOL SOCIALCLUB::SC_PRESENCE_ATTR_SET_INT(Hash attrHash, int value) // 0x1F1E9682483697C7 0x90C74343 b323
SC_PRESENCE_ATTR_SET_FLOAT
BOOL SOCIALCLUB::SC_PRESENCE_ATTR_SET_FLOAT(Hash attrHash, float value) // 0xC4C4575F62534A24 0x94BF0D35 b323
SC_PRESENCE_ATTR_SET_STRING
BOOL SOCIALCLUB::SC_PRESENCE_ATTR_SET_STRING(Hash attrHash, const char* value) // 0x287F1F75D2803595 0x3ACE6D6B b323
_0x487912FD248EFDDF
BOOL SOCIALCLUB::_0x487912FD248EFDDF(Any p0, float p1) // 0x487912FD248EFDDF 0x579B4510 b323
_0xC85A7127E7AD02AA
Any SOCIALCLUB::_0xC85A7127E7AD02AA() // 0xC85A7127E7AD02AA b323
_0xA770C8EEC6FB2AC5
Any SOCIALCLUB::_0xA770C8EEC6FB2AC5() // 0xA770C8EEC6FB2AC5 b323
_SC_GET_IS_PROFILE_ATTRIBUTE_SET
BOOL SOCIALCLUB::_SC_GET_IS_PROFILE_ATTRIBUTE_SET(const char* name) // 0x8416FE4E4629D7D7 0xDF45B2A7 b323
sfink: from scripts: func_720(socialclub::_0x8416FE4E4629D7D7("bIgnoreCheaterOverride")); func_719(socialclub::_0x8416FE4E4629D7D7("bIgnoreBadSportOverride"));
_0x7FFCBFEE44ECFABF
Any SOCIALCLUB::_0x7FFCBFEE44ECFABF() // 0x7FFCBFEE44ECFABF b323
_0x2D874D4AE612A65F
Any SOCIALCLUB::_0x2D874D4AE612A65F() // 0x2D874D4AE612A65F b323
SC_PROFANITY_CHECK_STRING
BOOL SOCIALCLUB::SC_PROFANITY_CHECK_STRING(const char* string, int* token) // 0x75632C5ECD7ED843 0xDF084A6B b323
Starts a task to check an entered string for profanity on the ROS/Social Club services. See also: 1753344C770358AE, 82E4A58BABC15AE7.
_SC_PROFANITY_CHECK_UGC_STRING
BOOL SOCIALCLUB::_SC_PROFANITY_CHECK_UGC_STRING(const char* string, int* token) // 0xEB2BF817463DFA28 b678
SC_PROFANITY_GET_CHECK_IS_VALID
BOOL SOCIALCLUB::SC_PROFANITY_GET_CHECK_IS_VALID(int token) // 0x1753344C770358AE 0xFFED3676 b323
SC_PROFANITY_GET_CHECK_IS_PENDING
BOOL SOCIALCLUB::SC_PROFANITY_GET_CHECK_IS_PENDING(int token) // 0x82E4A58BABC15AE7 0xA796D7A7 b323
SC_PROFANITY_GET_STRING_PASSED
BOOL SOCIALCLUB::SC_PROFANITY_GET_STRING_PASSED(int token) // 0x85535ACF97FC0969 0x09497F31 b323
SC_PROFANITY_GET_STRING_STATUS
int SOCIALCLUB::SC_PROFANITY_GET_STRING_STATUS(int token) // 0x930DE22F07B1CCE3 0x4D8A6521 b323
_0xF6BAAAF762E1BF40
BOOL SOCIALCLUB::_0xF6BAAAF762E1BF40(const char* p0, int* p1) // 0xF6BAAAF762E1BF40 0x7AA36406 b323
_0xF22CA0FD74B80E7A
BOOL SOCIALCLUB::_0xF22CA0FD74B80E7A(Any p0) // 0xF22CA0FD74B80E7A 0xF379DCE4 b323
_0x9237E334F6E43156
Any SOCIALCLUB::_0x9237E334F6E43156(Any p0) // 0x9237E334F6E43156 0x65D84665 b323
_0x700569DBA175A77C
Any SOCIALCLUB::_0x700569DBA175A77C(Any p0) // 0x700569DBA175A77C b323
_0x1D4446A62D35B0D0
Any SOCIALCLUB::_0x1D4446A62D35B0D0(Any p0, Any p1) // 0x1D4446A62D35B0D0 b323
_0x2E89990DDFF670C3
Any SOCIALCLUB::_0x2E89990DDFF670C3(Any p0, Any p1) // 0x2E89990DDFF670C3 b323
_0xD0EE05FE193646EA
BOOL SOCIALCLUB::_0xD0EE05FE193646EA(Any* p0, Any* p1, Any* p2) // 0xD0EE05FE193646EA b323
_0x1989C6E6F67E76A8
BOOL SOCIALCLUB::_0x1989C6E6F67E76A8(Any* p0, Any* p1, Any* p2) // 0x1989C6E6F67E76A8 b323
_0x07C61676E5BB52CD
Any SOCIALCLUB::_0x07C61676E5BB52CD(Any p0) // 0x07C61676E5BB52CD b323
_0x8147FFF6A718E1AD
Any SOCIALCLUB::_0x8147FFF6A718E1AD(Any p0) // 0x8147FFF6A718E1AD b323
_0x0F73393BAC7E6730
BOOL SOCIALCLUB::_0x0F73393BAC7E6730(Any* p0, int* p1) // 0x0F73393BAC7E6730 b323
_0xD302E99EDF0449CF
Any SOCIALCLUB::_0xD302E99EDF0449CF(Any p0) // 0xD302E99EDF0449CF b323
_0x5C4EBFFA98BDB41C
Any SOCIALCLUB::_0x5C4EBFFA98BDB41C(Any p0) // 0x5C4EBFFA98BDB41C b323
_0xFF8F3A92B75ED67A
Any SOCIALCLUB::_0xFF8F3A92B75ED67A() // 0xFF8F3A92B75ED67A 0xC96456BA b323
_0x4ED9C8D6DA297639
Any SOCIALCLUB::_0x4ED9C8D6DA297639() // 0x4ED9C8D6DA297639 0xC5E08B66 b323
_0x710BCDA8071EDED1
Any SOCIALCLUB::_0x710BCDA8071EDED1() // 0x710BCDA8071EDED1 0x04EE74A3 b323
_0x50A8A36201DBF83E
Any SOCIALCLUB::_0x50A8A36201DBF83E() // 0x50A8A36201DBF83E 0x8DA93C3D b323
_0x9DE5D2F723575ED0
Any SOCIALCLUB::_0x9DE5D2F723575ED0() // 0x9DE5D2F723575ED0 0x37DD48B5 b323
_0xC2C97EA97711D1AE
Any SOCIALCLUB::_0xC2C97EA97711D1AE() // 0xC2C97EA97711D1AE 0xF929F61D b323
_0x450819D8CF90C416
Any SOCIALCLUB::_0x450819D8CF90C416() // 0x450819D8CF90C416 0x0572EB5E b323
_0x4A7D6E727F941747
Any SOCIALCLUB::_0x4A7D6E727F941747(Any* p0) // 0x4A7D6E727F941747 0x8E7AEEB7 b323
_0xE75A4A2E5E316D86
Any SOCIALCLUB::_0xE75A4A2E5E316D86() // 0xE75A4A2E5E316D86 0x28C57FA0 b323
_0x2570E26BE63964E3
Any SOCIALCLUB::_0x2570E26BE63964E3() // 0x2570E26BE63964E3 0x59394583 b323
_0x1D12A56FC95BE92E
Any SOCIALCLUB::_0x1D12A56FC95BE92E() // 0x1D12A56FC95BE92E 0x92452C0E b323
_0x33DF47CC0642061B
Any SOCIALCLUB::_0x33DF47CC0642061B() // 0x33DF47CC0642061B 0xBBA8D34D b323
_0xA468E0BE12B12C70
Any SOCIALCLUB::_0xA468E0BE12B12C70() // 0xA468E0BE12B12C70 0xB21288FA b323
_0x8CC469AB4D349B7C
BOOL SOCIALCLUB::_0x8CC469AB4D349B7C(int p0, const char* p1, Any* p2) // 0x8CC469AB4D349B7C 0xE778B2A7 b323
_0xC5A35C73B68F3C49
Any SOCIALCLUB::_0xC5A35C73B68F3C49() // 0xC5A35C73B68F3C49 0x7E24BD6E b323
_0x699E4A5C8C893A18
BOOL SOCIALCLUB::_0x699E4A5C8C893A18(int p0, const char* p1, Any* p2) // 0x699E4A5C8C893A18 0xCE7D50A8 b323
_0x19853B5B17D77BCA
BOOL SOCIALCLUB::_0x19853B5B17D77BCA(Any p0, Any* p1) // 0x19853B5B17D77BCA 0xD26CCA46 b323
_0x6BFB12CE158E3DD4
BOOL SOCIALCLUB::_0x6BFB12CE158E3DD4(Any p0) // 0x6BFB12CE158E3DD4 0x24D84334 b323
_0xFE4C1D0D3B9CC17E
BOOL SOCIALCLUB::_0xFE4C1D0D3B9CC17E(Any p0, Any p1) // 0xFE4C1D0D3B9CC17E 0x8A023024 b323
_0xD8122C407663B995
Any SOCIALCLUB::_0xD8122C407663B995() // 0xD8122C407663B995 0x1C65B038 b323
_0x3001BEF2FECA3680
BOOL SOCIALCLUB::_0x3001BEF2FECA3680() // 0x3001BEF2FECA3680 0x4D4C37B3 b323
_0x92DA6E70EF249BD1
BOOL SOCIALCLUB::_0x92DA6E70EF249BD1(const char* p0, int* p1) // 0x92DA6E70EF249BD1 0xAED95A6F b323
_0x675721C9F644D161
void SOCIALCLUB::_0x675721C9F644D161() // 0x675721C9F644D161 0x486867E6 b323
_0xE4F6E8D07A2F0F51
Any SOCIALCLUB::_0xE4F6E8D07A2F0F51(Any p0) // 0xE4F6E8D07A2F0F51 b1290
_0x8A4416C0DB05FA66
BOOL SOCIALCLUB::_0x8A4416C0DB05FA66(Any p0) // 0x8A4416C0DB05FA66 b1290
Fills some 0x30 sized struct
_0xEA95C0853A27888E
void SOCIALCLUB::_0xEA95C0853A27888E() // 0xEA95C0853A27888E b1290
_SC_GET_NICKNAME
const char* SOCIALCLUB::_SC_GET_NICKNAME() // 0x198D161F458ECC7F b323
Returns the nickname of the logged-in Rockstar Social Club account.
_0x225798743970412B
BOOL SOCIALCLUB::_0x225798743970412B(int* p0) // 0x225798743970412B b323
_SC_GET_HAS_ACHIEVEMENT_BEEN_PASSED
BOOL SOCIALCLUB::_SC_GET_HAS_ACHIEVEMENT_BEEN_PASSED(int achievement) // 0x418DC16FAE452C1C b323
Same as HAS_ACHIEVEMENT_BEEN_PASSED
STATS
STAT_CLEAR_SLOT_FOR_RELOAD
Any STATS::STAT_CLEAR_SLOT_FOR_RELOAD(int statSlot) // 0xEB0A72181D4AA4AD 0x84BDD475 b323
Example: for (v_2 = 0; v_2 <= 4; v_2 += 1) { STATS::STAT_CLEAR_SLOT_FOR_RELOAD(v_2); }
STAT_LOAD
BOOL STATS::STAT_LOAD(int p0) // 0xA651443F437B1CE6 0x9E5629F4 b323
STAT_SAVE
BOOL STATS::STAT_SAVE(int p0, BOOL p1, int p2, Any p3) // 0xE07BCA305B82D2FD 0xE10A7CA4 b323
_0x5688585E6D563CD8
void STATS::_0x5688585E6D563CD8(int p0) // 0x5688585E6D563CD8 0xC62406A6 b323
STAT_SET_*
STAT_LOAD_PENDING
BOOL STATS::STAT_LOAD_PENDING(Any p0) // 0xA1750FFAFA181661 0x4E9AC983 b323
STAT_SAVE_PENDING
BOOL STATS::STAT_SAVE_PENDING() // 0x7D3A583856F2C5AC 0xC3FD3822 b323
STAT_SAVE_PENDING_OR_REQUESTED
BOOL STATS::STAT_SAVE_PENDING_OR_REQUESTED() // 0xBBB6AD006F1BBEA3 0xA3407CA3 b323
STAT_DELETE_SLOT
Any STATS::STAT_DELETE_SLOT(Any p0) // 0x49A49BED12794D70 0x2F171B94 b323
STAT_SLOT_IS_LOADED
BOOL STATS::STAT_SLOT_IS_LOADED(Any p0) // 0x0D0A9F0E7BD91E3C 0x7A299C13 b323
_0x7F2C4CDF2E82DF4C
BOOL STATS::_0x7F2C4CDF2E82DF4C(Any p0) // 0x7F2C4CDF2E82DF4C 0x0BF0F4B2 b323
_0xE496A53BA5F50A56
Any STATS::_0xE496A53BA5F50A56(Any p0) // 0xE496A53BA5F50A56 0xCE6B62B5 b323
STAT_SET_BLOCK_SAVES
void STATS::STAT_SET_BLOCK_SAVES(BOOL toggle) // 0xF434A10BA01C37D0 0xCE7A2411 b323
_0x6A7F19756F1A9016
BOOL STATS::_0x6A7F19756F1A9016() // 0x6A7F19756F1A9016 b2060
_0x7E6946F68A38B74F
BOOL STATS::_0x7E6946F68A38B74F(Any p0) // 0x7E6946F68A38B74F 0x22804C20 b323
_0xA8733668D1047B51
void STATS::_0xA8733668D1047B51(Any p0) // 0xA8733668D1047B51 0x395D18B1 b323
_0xECB41AC6AB754401
BOOL STATS::_0xECB41AC6AB754401() // 0xECB41AC6AB754401 0xED7000C8 b323
STAT_LOAD_*
_0x9B4BD21D69B1E609
void STATS::_0x9B4BD21D69B1E609() // 0x9B4BD21D69B1E609 b323
_0xC0E0D686DDFC6EAE
Any STATS::_0xC0E0D686DDFC6EAE() // 0xC0E0D686DDFC6EAE 0x099FCC86 b323
STAT_SET_INT
BOOL STATS::STAT_SET_INT(Hash statName, int value, BOOL save) // 0xB3271D7AB655B441 0xC9CC1C5C b323
Example: STATS::STAT_SET_INT(MISC::GET_HASH_KEY("MPPLY_KILLS_PLAYERS"), 1337, true);
STAT_SET_FLOAT
BOOL STATS::STAT_SET_FLOAT(Hash statName, float value, BOOL save) // 0x4851997F37FE9B3C 0x6CEA96F2 b323
Example: STATS::STAT_SET_FLOAT(MISC::GET_HASH_KEY("MP0_WEAPON_ACCURACY"), 66.6f, true);
STAT_SET_BOOL
BOOL STATS::STAT_SET_BOOL(Hash statName, BOOL value, BOOL save) // 0x4B33C4243DE0C432 0x55D79DFB b323
Example: STATS::STAT_SET_BOOL(MISC::GET_HASH_KEY("MPPLY_MELEECHLENGECOMPLETED"), trur, true);
STAT_SET_GXT_LABEL
BOOL STATS::STAT_SET_GXT_LABEL(Hash statName, const char* value, BOOL save) // 0x17695002FD8B2AE0 0xC1224AA7 b323
The following values have been found in the decompiled scripts: "RC_ABI1" "RC_ABI2" "RC_BA1" "RC_BA2" "RC_BA3" "RC_BA3A" "RC_BA3C" "RC_BA4" "RC_DRE1" "RC_EPS1" "RC_EPS2" "RC_EPS3" "RC_EPS4" "RC_EPS5" "RC_EPS6" "RC_EPS7" "RC_EPS8" "RC_EXT1" "RC_EXT2" "RC_EXT3" "RC_EXT4" "RC_FAN1" "RC_FAN2" "RC_FAN3" "RC_HAO1" "RC_HUN1" "RC_HUN2" "RC_JOS1" "RC_JOS2" "RC_JOS3" "RC_JOS4" "RC_MAU1" "RC_MIN1" "RC_MIN2" "RC_MIN3" "RC_MRS1" "RC_MRS2" "RC_NI1" "RC_NI1A" "RC_NI1B" "RC_NI1C" "RC_NI1D" "RC_NI2" "RC_NI3" "RC_OME1" "RC_OME2" "RC_PA1" "RC_PA2" "RC_PA3" "RC_PA3A" "RC_PA3B" "RC_PA4" "RC_RAM1" "RC_RAM2" "RC_RAM3" "RC_RAM4" "RC_RAM5" "RC_SAS1" "RC_TON1" "RC_TON2" "RC_TON3" "RC_TON4" "RC_TON5"
STAT_SET_DATE
BOOL STATS::STAT_SET_DATE(Hash statName, Any* value, int numFields, BOOL save) // 0x2C29BFB64F4FCBE4 0x36BE807B b323
'value' is a structure to a structure, 'numFields' is how many fields there are in said structure (usually 7). The structure looks like this: int year int month int day int hour int minute int second int millisecond The decompiled scripts use TIME::GET_POSIX_TIME to fill this structure.
STAT_SET_STRING
BOOL STATS::STAT_SET_STRING(Hash statName, const char* value, BOOL save) // 0xA87B2335D12531D7 0xB1EF2E21 b323
STAT_SET_POS
BOOL STATS::STAT_SET_POS(Hash statName, float x, float y, float z, BOOL save) // 0xDB283FDE680FE72E 0x1192C9A3 b323
STAT_SET_MASKED_INT
BOOL STATS::STAT_SET_MASKED_INT(Hash statName, Any p1, Any p2, int p3, BOOL save) // 0x7BBB1B54583ED410 0x2CBAA739 b323
STAT_SET_USER_ID
BOOL STATS::STAT_SET_USER_ID(Hash statName, const char* value, BOOL save) // 0x8CDDF1E452BABE11 0xDBE78ED7 b323
STAT_SET_CURRENT_POSIX_TIME
BOOL STATS::STAT_SET_CURRENT_POSIX_TIME(Hash statName, BOOL p1) // 0xC2F84B7F9C4D0C61 0xA286F015 b323
p1 always true.
STAT_GET_INT
BOOL STATS::STAT_GET_INT(Hash statHash, int* outValue, int p2) // 0x767FBC2AC802EF3D 0x1C6FE43E b323
p2 appears to always be -1
STAT_GET_FLOAT
BOOL STATS::STAT_GET_FLOAT(Hash statHash, float* outValue, Any p2) // 0xD7AE6C9C9C6AC54C 0xFCBDA612 b323
STAT_GET_BOOL
BOOL STATS::STAT_GET_BOOL(Hash statHash, BOOL* outValue, Any p2) // 0x11B5E6D2AE73F48E 0x28A3DD2B b323
STAT_GET_DATE
BOOL STATS::STAT_GET_DATE(Hash statHash, Any* p1, Any p2, Any p3) // 0x8B0FACEFC36C824B 0xD762D16C b323
STAT_GET_STRING
const char* STATS::STAT_GET_STRING(Hash statHash, int p1) // 0xE50384ACC2C3DB74 0x10CE4BDE b323
p1 is always -1 in the script files
STAT_GET_POS
BOOL STATS::STAT_GET_POS(Any p0, Any* p1, Any* p2, Any* p3, Any p4) // 0x350F82CCB186AA1B 0xC846ECCE b323
STAT_GET_MASKED_INT
BOOL STATS::STAT_GET_MASKED_INT(Any p0, Any* p1, Any p2, Any p3, Any p4) // 0x655185A06D9EEAAB 0xE9D9B70F b323
STAT_GET_USER_ID
const char* STATS::STAT_GET_USER_ID(Any p0) // 0x2365C388E393BBE2 0xE2E8B6BA b323
Needs more research. Seems to return "STAT_UNKNOWN" if no such user id exists.
STAT_GET_LICENSE_PLATE
const char* STATS::STAT_GET_LICENSE_PLATE(Hash statName) // 0x5473D4195058B2E4 0x1544B29F b323
STAT_SET_LICENSE_PLATE
BOOL STATS::STAT_SET_LICENSE_PLATE(Hash statName, const char* str) // 0x69FF13266D7296DA 0x3507D253 b323
STAT_INCREMENT
void STATS::STAT_INCREMENT(Hash statName, float value) // 0x9B5A68C6489E9909 0xDFC5F71E b323
_0x5A556B229A169402
BOOL STATS::_0x5A556B229A169402() // 0x5A556B229A169402 0x46F21343 b323
_0xB1D2BB1E1631F5B1
BOOL STATS::_0xB1D2BB1E1631F5B1() // 0xB1D2BB1E1631F5B1 0x02F283CE b323
_0xBED9F5693F34ED17
BOOL STATS::_0xBED9F5693F34ED17(Hash statName, int p1, float* outValue) // 0xBED9F5693F34ED17 0xC4110917 b323
_0x26D7399B9587FE89
void STATS::_0x26D7399B9587FE89(int p0) // 0x26D7399B9587FE89 0x343B27E2 b323
STATS::0x343B27E2(0); STATS::0x343B27E2(1); STATS::0x343B27E2(2); STATS::0x343B27E2(3); STATS::0x343B27E2(4); STATS::0x343B27E2(5); STATS::0x343B27E2(6); STATS::0x343B27E2(7); Identical in ingamehud & maintransition.
_0xA78B8FA58200DA56
void STATS::_0xA78B8FA58200DA56(int p0) // 0xA78B8FA58200DA56 0xE3247582 b323
STATS::0xE3247582(0); STATS::0xE3247582(1); STATS::0xE3247582(2); STATS::0xE3247582(3); STATS::0xE3247582(4); STATS::0xE3247582(5); STATS::0xE3247582(6);
STAT_GET_NUMBER_OF_DAYS
int STATS::STAT_GET_NUMBER_OF_DAYS(Hash statName) // 0xE0E854F5280FB769 0xFD66A429 b323
STAT_GET_NUMBER_OF_HOURS
int STATS::STAT_GET_NUMBER_OF_HOURS(Hash statName) // 0xF2D4B2FE415AAFC3 0x9B431236 b323
STAT_GET_NUMBER_OF_MINUTES
int STATS::STAT_GET_NUMBER_OF_MINUTES(Hash statName) // 0x7583B4BE4C5A41B5 0x347B4436 b323
STAT_GET_NUMBER_OF_SECONDS
int STATS::STAT_GET_NUMBER_OF_SECONDS(Hash statName) // 0x2CE056FF3723F00B 0x2C1D6C31 b323
STAT_SET_PROFILE_SETTING_VALUE
void STATS::STAT_SET_PROFILE_SETTING_VALUE(int profileSetting, int value) // 0x68F01422BE1D838F 0x24DD4929 b323
Does not take effect immediately, unfortunately. profileSetting seems to only be 936, 937 and 938 in scripts
_STAT_GET_PACKED_BOOL_MASK
int STATS::_STAT_GET_PACKED_BOOL_MASK(int p0) // 0xF4D8E7AC2A27758C 0xDFC25D66 b323
Needs more research. Possibly used to calculate the "mask" when calling "STAT_SET_BOOL_MASKED"?
_STAT_GET_PACKED_INT_MASK
int STATS::_STAT_GET_PACKED_INT_MASK(int p0) // 0x94F12ABF9C79E339 0xCA160BCC b323
Needs more research. Possibly used to calculate the "mask" when calling "STAT_SET_MASKED_INT"?
GET_PACKED_BOOL_STAT_KEY
Hash STATS::GET_PACKED_BOOL_STAT_KEY(int index, BOOL spStat, BOOL charStat, int character) // 0x80C75307B1C42837 0xB5BF87B2 b323
GET_PACKED_INT_STAT_KEY
Hash STATS::GET_PACKED_INT_STAT_KEY(int index, BOOL spStat, BOOL charStat, int character) // 0x61E111E323419E07 0x1F938864 b323
GET_PACKED_TU_BOOL_STAT_KEY
Hash STATS::GET_PACKED_TU_BOOL_STAT_KEY(int index, BOOL spStat, BOOL charStat, int character) // 0xC4BB08EE7907471E 0x3F8E893B b323
GET_PACKED_TU_INT_STAT_KEY
Hash STATS::GET_PACKED_TU_INT_STAT_KEY(int index, BOOL spStat, BOOL charStat, int character) // 0xD16C2AD6B8E32854 0xFB93C5A2 b323
_GET_NGSTAT_BOOL_HASH
Hash STATS::_GET_NGSTAT_BOOL_HASH(int index, BOOL spStat, BOOL charStat, int character, const char* section) // 0xBA52FF538ED2BC71 b323
Needs more research. Gets the stat name of a masked bool? section - values used in the decompiled scripts: "_NGPSTAT_BOOL" "_NGTATPSTAT_BOOL" "_NGDLCPSTAT_BOOL" "_DLCBIKEPSTAT_BOOL" "_DLCGUNPSTAT_BOOL" "_GUNTATPSTAT_BOOL" "_DLCSMUGCHARPSTAT_BOOL" "_GANGOPSPSTAT_BOOL" "_BUSINESSBATPSTAT_BOOL" "_ARENAWARSPSTAT_BOOL" "_CASINOPSTAT_BOOL" "_CASINOHSTPSTAT_BOOL" "_HEIST3TATTOOSTAT_BOOL"
_GET_NGSTAT_INT_HASH
Hash STATS::_GET_NGSTAT_INT_HASH(int index, BOOL spStat, BOOL charStat, int character, const char* section) // 0x2B4CDCA6F07FF3DA b323
Needs more research. Gets the stat name of a masked int? section - values used in the decompiled scripts: "_NGPSTAT_INT" "_MP_NGPSTAT_INT" "_MP_LRPSTAT_INT" "_MP_APAPSTAT_INT" "_MP_LR2PSTAT_INT" "_MP_BIKEPSTAT_INT" "_MP_IMPEXPPSTAT_INT" "_MP_GUNRPSTAT_INT" "_NGDLCPSTAT_INT" "_MP_NGDLCPSTAT_INT" "_DLCSMUGCHARPSTAT_INT" "_GANGOPSPSTAT_INT" "_BUSINESSBATPSTAT_INT" "_ARENAWARSPSTAT_INT" "_CASINOPSTAT_INT" "_CASINOHSTPSTAT_INT"
STAT_GET_BOOL_MASKED
BOOL STATS::STAT_GET_BOOL_MASKED(Hash statName, int mask, int p2) // 0x10FE3F1B79F9B071 0x6ACE1B7D b323
p2 - Default value? Seems to be -1 most of the time.
STAT_SET_BOOL_MASKED
BOOL STATS::STAT_SET_BOOL_MASKED(Hash statName, BOOL value, int mask, BOOL save) // 0x5BC62EC1937B9E5B 0x7842C4D6 b323
PLAYSTATS_BACKGROUND_SCRIPT_ACTION
void STATS::PLAYSTATS_BACKGROUND_SCRIPT_ACTION(const char* action, int value) // 0x5009DFD741329729 0x61ECC465 b323
PLAYSTATS_NPC_INVITE
void STATS::PLAYSTATS_NPC_INVITE(Any* p0) // 0x93054C88E6AA7C44 0x598C06F3 b323
PLAYSTATS_AWARD_XP
void STATS::PLAYSTATS_AWARD_XP(int amount, Hash type, Hash category) // 0x46F917F6B4128FE4 0x8770017B b323
PLAYSTATS_RANK_UP
void STATS::PLAYSTATS_RANK_UP(int rank) // 0xC7F2DE41D102BFB4 0x56AFB9F5 b323
_PLAYSTATS_START_OFFLINE_MODE
void STATS::_PLAYSTATS_START_OFFLINE_MODE() // 0x098760C7461724CD 0x896CDF8D b323
PLAYSTATS_START_INVITE_DESPAWNING?
PLAYSTATS_ACTIVITY_DONE
void STATS::PLAYSTATS_ACTIVITY_DONE(Any p0, Any p1) // 0xA071E0ED98F91286 0x1A66945F b323
PLAYSTATS_LEAVE_JOB_CHAIN
void STATS::PLAYSTATS_LEAVE_JOB_CHAIN(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xC5BE134EC7BA96A0 0xC960E161 b323
PLAYSTATS_MISSION_STARTED
void STATS::PLAYSTATS_MISSION_STARTED(Any* p0, Any p1, Any p2, BOOL p3) // 0xC19A2925C34D2231 0x3AAB699C b323
PLAYSTATS_MISSION_OVER
void STATS::PLAYSTATS_MISSION_OVER(Any* p0, Any p1, Any p2, BOOL p3, BOOL p4, BOOL p5) // 0x7C4BB33A8CED7324 0x5B90B5FF b323
PLAYSTATS_MISSION_CHECKPOINT
void STATS::PLAYSTATS_MISSION_CHECKPOINT(Any* p0, Any p1, Any p2, Any p3) // 0xC900596A63978C1D 0xCDC52280 b323
PLAYSTATS_RANDOM_MISSION_DONE
void STATS::PLAYSTATS_RANDOM_MISSION_DONE(const char* name, Any p1, Any p2, Any p3) // 0x71862B1D855F32E1 0xAC2C7C63 b323
PLAYSTATS_ROS_BET
void STATS::PLAYSTATS_ROS_BET(int amount, int act, Player player, float cm) // 0x121FB4DDDC2D5291 0x413539BC b323
PLAYSTATS_RACE_CHECKPOINT
void STATS::PLAYSTATS_RACE_CHECKPOINT(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x9C375C315099DDE4 0x580D5508 b323
_0x6DEE77AFF8C21BD1
BOOL STATS::_0x6DEE77AFF8C21BD1(int* playerAccountId, int* posixTime) // 0x6DEE77AFF8C21BD1 0x489E27E7 b323
PLAYSTATS_*
PLAYSTATS_MATCH_STARTED
void STATS::PLAYSTATS_MATCH_STARTED(Any p0, Any p1, Any p2) // 0xBC80E22DED931E3D 0x2BDE85C1 b323
PLAYSTATS_SHOP_ITEM
void STATS::PLAYSTATS_SHOP_ITEM(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x176852ACAAC173D1 0xA4746384 b323
PLAYSTATS_CRATE_DROP_MISSION_DONE
void STATS::PLAYSTATS_CRATE_DROP_MISSION_DONE(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7) // 0x1CAE5D2E3F9A07F0 0x6602CED6 b323
_PLAYSTATS_CRATE_CREATED_MISSION_DONE
void STATS::_PLAYSTATS_CRATE_CREATED_MISSION_DONE(float p0, float p1, float p2) // 0xAFC7E5E075A96F46 b323
PLAYSTATS_HOLD_UP_MISSION_DONE
void STATS::PLAYSTATS_HOLD_UP_MISSION_DONE(Any p0, Any p1, Any p2, Any p3) // 0xCB00196B31C39EB1 0x759E0EC9 b323
PLAYSTATS_IMPORT_EXPORT_MISSION_DONE
void STATS::PLAYSTATS_IMPORT_EXPORT_MISSION_DONE(Any p0, Any p1, Any p2, Any p3) // 0x2B69F5074C894811 0x62073DF7 b323
PLAYSTATS_RACE_TO_POINT_MISSION_DONE
void STATS::PLAYSTATS_RACE_TO_POINT_MISSION_DONE(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0xADDD1C754E2E2914 0x06CE3692 b323
PLAYSTATS_ACQUIRED_HIDDEN_PACKAGE
void STATS::PLAYSTATS_ACQUIRED_HIDDEN_PACKAGE(Any p0) // 0x79AB33F0FBFAC40C 0x8D5C7B37 b323
PLAYSTATS_WEBSITE_VISITED
void STATS::PLAYSTATS_WEBSITE_VISITED(Hash scaleformHash, int p1) // 0xDDF24D535060F811 0x37D152BB b323
PLAYSTATS_FRIEND_ACTIVITY
void STATS::PLAYSTATS_FRIEND_ACTIVITY(Any p0, Any p1) // 0x0F71DE29AB2258F1 0xD1FA1BDB b323
PLAYSTATS_ODDJOB_DONE
void STATS::PLAYSTATS_ODDJOB_DONE(Any p0, Any p1, Any p2) // 0x69DEA3E9DB727B4C 0xFE14A8EA b323
This native does absolutely nothing, just a nullsub
PLAYSTATS_PROP_CHANGE
void STATS::PLAYSTATS_PROP_CHANGE(Any p0, Any p1, Any p2, Any p3) // 0xBA739D6D5A05D6E7 0x25740A1D b323
PLAYSTATS_CLOTH_CHANGE
void STATS::PLAYSTATS_CLOTH_CHANGE(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x34B973047A2268B9 0x3AFF9E58 b323
PLAYSTATS_WEAPON_MODE_CHANGE
void STATS::PLAYSTATS_WEAPON_MODE_CHANGE(Hash weaponHash, Hash componentHashTo, Hash componentHashFrom) // 0xE95C8A1875A02CA4 0x79716890 b323
This is a typo made by R*. It's supposed to be called PLAYSTATS_WEAPON_MOD_CHANGE.
PLAYSTATS_CHEAT_APPLIED
void STATS::PLAYSTATS_CHEAT_APPLIED(const char* cheat) // 0x6058665D72302D3F 0x345166F3 b323
_0xF8C54A461C3E11DC
void STATS::_0xF8C54A461C3E11DC(Any* p0, Any* p1, Any* p2, Any* p3) // 0xF8C54A461C3E11DC 0x04181752 b323
_0xF5BB8DAC426A52C0
void STATS::_0xF5BB8DAC426A52C0(Any* p0, Any* p1, Any* p2, Any* p3) // 0xF5BB8DAC426A52C0 b323
_0xA736CF7FB7C5BFF4
void STATS::_0xA736CF7FB7C5BFF4(Any* p0, Any* p1, Any* p2, Any* p3) // 0xA736CF7FB7C5BFF4 0x31002201 b323
_0x14E0B2D1AD1044E0
void STATS::_0x14E0B2D1AD1044E0(Any* p0, Any* p1, Any* p2, Any* p3) // 0x14E0B2D1AD1044E0 0xDDD1F1F3 b323
PLAYSTATS_QUICKFIX_TOOL
void STATS::PLAYSTATS_QUICKFIX_TOOL(int element, const char* item) // 0x90D0622866E80445 0x66FEB701 b323
PLAYSTATS_IDLE_KICK
void STATS::PLAYSTATS_IDLE_KICK(int time) // 0x5DA3A8DE8CB6226F 0x9E2B9522 b323
longest time being ilde?
_0xD1032E482629049E
void STATS::_0xD1032E482629049E(int p0) // 0xD1032E482629049E b323
PLAYSTATS_S*
_PLAYSTATS_HEIST_SAVE_CHEAT
void STATS::_PLAYSTATS_HEIST_SAVE_CHEAT(Hash hash, int p1) // 0xF4FF020A08BC8863 b323
_PLAYSTATS_DIRECTOR_MODE
void STATS::_PLAYSTATS_DIRECTOR_MODE(Any* p0) // 0x46326E13DA4E0546 b323
_PLAYSTATS_AWARD_BADSPORT
void STATS::_PLAYSTATS_AWARD_BADSPORT(int id) // 0x47B32F5611E6E483 b463
_PLAYSTATS_PEGASAIRCRAFT
void STATS::_PLAYSTATS_PEGASAIRCRAFT(Hash modelHash) // 0x9572BD4DD6B72122 b1180
_0x6A60E43998228229
void STATS::_0x6A60E43998228229(Any p0) // 0x6A60E43998228229 b463
_0xBFAFDB5FAAA5C5AB
void STATS::_0xBFAFDB5FAAA5C5AB(Any p0) // 0xBFAFDB5FAAA5C5AB b463
_0x8C9D11605E59D955
void STATS::_0x8C9D11605E59D955(Any p0) // 0x8C9D11605E59D955 b463
_0x3DE3AA516FB126A4
void STATS::_0x3DE3AA516FB126A4(Any p0) // 0x3DE3AA516FB126A4 b463
_0xBAA2F0490E146BE8
void STATS::_0xBAA2F0490E146BE8(Any p0) // 0xBAA2F0490E146BE8 b463
_0x1A7CE7CD3E653485
void STATS::_0x1A7CE7CD3E653485(Any p0) // 0x1A7CE7CD3E653485 b463
_0x419615486BBF1956
void STATS::_0x419615486BBF1956(Any p0) // 0x419615486BBF1956 b463
_0x84DFC579C2FC214C
void STATS::_0x84DFC579C2FC214C(Any p0) // 0x84DFC579C2FC214C b463
_0x0A9C7F36E5D7B683
void STATS::_0x0A9C7F36E5D7B683(Any p0) // 0x0A9C7F36E5D7B683 b463
_0x164C5FF663790845
void STATS::_0x164C5FF663790845(Any p0) // 0x164C5FF663790845 b463
_0xEDBF6C9B0D2C65C8
void STATS::_0xEDBF6C9B0D2C65C8(Any p0) // 0xEDBF6C9B0D2C65C8 b463
_0x6551B1F7F6CD46EA
void STATS::_0x6551B1F7F6CD46EA(Any p0) // 0x6551B1F7F6CD46EA b463
_0x2CD90358F67D0AA8
void STATS::_0x2CD90358F67D0AA8(Any p0) // 0x2CD90358F67D0AA8 b463
_PLAYSTATS_PI_MENU_HIDE_SETTINGS
void STATS::_PLAYSTATS_PI_MENU_HIDE_SETTINGS(Any* data) // 0x203B381133817079 b393
LEADERBOARDS_GET_NUMBER_OF_COLUMNS
Any STATS::LEADERBOARDS_GET_NUMBER_OF_COLUMNS(Any p0, Any p1) // 0x117B45156D7EFF2E 0x0A56EE34 b323
LEADERBOARDS_GET_COLUMN_ID
Any STATS::LEADERBOARDS_GET_COLUMN_ID(Any p0, Any p1, Any p2) // 0xC4B5467A1886EA7E 0x3821A334 b323
LEADERBOARDS_GET_COLUMN_TYPE
Any STATS::LEADERBOARDS_GET_COLUMN_TYPE(Any p0, Any p1, Any p2) // 0xBF4FEF46DB7894D3 0x6F2820F4 b323
LEADERBOARDS_READ_CLEAR_ALL
Any STATS::LEADERBOARDS_READ_CLEAR_ALL() // 0xA34CB6E6F0DF4A0B 0x233E058A b323
LEADERBOARDS_READ_CLEAR
Any STATS::LEADERBOARDS_READ_CLEAR(Any p0, Any p1, Any p2) // 0x7CCE5C737A665701 0x7090012F b323
LEADERBOARDS_READ_PENDING
BOOL STATS::LEADERBOARDS_READ_PENDING(Any p0, Any p1, Any p2) // 0xAC392C8483342AC2 0xEEB8BF5C b323
LEADERBOARDS_READ_ANY_PENDING
BOOL STATS::LEADERBOARDS_READ_ANY_PENDING() // 0xA31FD15197B192BD 0x1789437B b323
LEADERBOARDS_READ_SUCCESSFUL
BOOL STATS::LEADERBOARDS_READ_SUCCESSFUL(Any p0, Any p1, Any p2) // 0x2FB19228983E832C 0x3AC5B2F1 b323
LEADERBOARDS2_READ_FRIENDS_BY_ROW
BOOL STATS::LEADERBOARDS2_READ_FRIENDS_BY_ROW(Any* p0, Any* p1, Any p2, BOOL p3, Any p4, Any p5) // 0x918B101666F9CB83 0xBD91B136 b323
LEADERBOARDS2_READ_BY_HANDLE
BOOL STATS::LEADERBOARDS2_READ_BY_HANDLE(Any* p0, Any* p1) // 0xC30713A383BFBF0E 0x6B553408 b323
LEADERBOARDS2_READ_BY_ROW
BOOL STATS::LEADERBOARDS2_READ_BY_ROW(Any* p0, Any* p1, Any p2, Any* p3, Any p4, Any* p5, Any p6) // 0xA9CDB1E3F0A49883 0xCA931F34 b323
LEADERBOARDS2_READ_BY_RANK
BOOL STATS::LEADERBOARDS2_READ_BY_RANK(Any* p0, Any p1, Any p2) // 0xBA2C7DB0C129449A 0x1B03F59F b323
LEADERBOARDS2_READ_BY_RADIUS
BOOL STATS::LEADERBOARDS2_READ_BY_RADIUS(Any* p0, Any p1, Any* p2) // 0x5CE587FB5A42C8C4 0xC5B7E685 b323
LEADERBOARDS2_READ_BY_SCORE_INT
BOOL STATS::LEADERBOARDS2_READ_BY_SCORE_INT(Any* p0, Any p1, Any p2) // 0x7EEC7E4F6984A16A 0xAC020C18 b323
LEADERBOARDS2_READ_BY_SCORE_FLOAT
BOOL STATS::LEADERBOARDS2_READ_BY_SCORE_FLOAT(Any* p0, float p1, Any p2) // 0xE662C8B759D08F3C 0xC678B29F b323
LEADERBOARDS2_READ_RANK_PREDICTION
BOOL STATS::LEADERBOARDS2_READ_RANK_PREDICTION(Any* p0, Any* p1, Any* p2) // 0xC38DC1E90D22547C 0x9BEC3401 b323
_LEADERBOARDS2_READ_BY_PLATFORM
BOOL STATS::_LEADERBOARDS2_READ_BY_PLATFORM(Any* p0, const char* gamerHandleCsv, const char* platformName) // 0xF1AE5DCDBFCA2721 b323
_0xA0F93D5465B3094D
BOOL STATS::_0xA0F93D5465B3094D(Any* p0) // 0xA0F93D5465B3094D 0xC977D6E2 b323
_0x71B008056E5692D6
void STATS::_0x71B008056E5692D6() // 0x71B008056E5692D6 0xF2DB6A82 b323
_0x34770B9CE0E03B91
BOOL STATS::_0x34770B9CE0E03B91(Any p0, Any* p1) // 0x34770B9CE0E03B91 0x766A74FE b323
_0x88578F6EC36B4A3A
Any STATS::_0x88578F6EC36B4A3A(Any p0, Any p1) // 0x88578F6EC36B4A3A 0x6B90E730 b323
_0x38491439B6BA7F7D
float STATS::_0x38491439B6BA7F7D(Any p0, Any p1) // 0x38491439B6BA7F7D 0x509A286F b323
LEADERBOARDS2_WRITE_DATA
BOOL STATS::LEADERBOARDS2_WRITE_DATA(Any* p0) // 0xAE2206545888AE49 0x5F9DF634 b323
LEADERBOARDS_WRITE_ADD_COLUMN
void STATS::LEADERBOARDS_WRITE_ADD_COLUMN(Any p0, Any p1, float p2) // 0x0BCA1D2C47B0D269 0x7524E27B b323
LEADERBOARDS_WRITE_ADD_COLUMN_LONG
void STATS::LEADERBOARDS_WRITE_ADD_COLUMN_LONG(Any p0, Any p1, Any p2) // 0x2E65248609523599 0x1C5CCC3A b323
LEADERBOARDS_CACHE_DATA_ROW
BOOL STATS::LEADERBOARDS_CACHE_DATA_ROW(Any* p0) // 0xB9BB18E2C40142ED 0x44F7D82B b323
LEADERBOARDS_CLEAR_CACHE_DATA
void STATS::LEADERBOARDS_CLEAR_CACHE_DATA() // 0xD4B02A6B476E1FDC 0x87F498C1 b323
_0x8EC74CEB042E7CFF
void STATS::_0x8EC74CEB042E7CFF(Any p0) // 0x8EC74CEB042E7CFF 0x88AE9667 b323
LEADERBOARDS_GET_CACHE_EXISTS
BOOL STATS::LEADERBOARDS_GET_CACHE_EXISTS(Any p0) // 0x9C51349BE6CDFE2C 0xFC8A71F3 b323
LEADERBOARDS_GET_CACHE_TIME
Any STATS::LEADERBOARDS_GET_CACHE_TIME(Any p0) // 0xF04C1C27DA35F6C8 0xEDF02302 b323
LEADERBOARDS_GET_CACHE_NUMBER_OF_ROWS
int STATS::LEADERBOARDS_GET_CACHE_NUMBER_OF_ROWS(Any p0) // 0x58A651CD201D89AD 0xCE7CB520 b323
LEADERBOARDS_GET_CACHE_DATA_ROW
BOOL STATS::LEADERBOARDS_GET_CACHE_DATA_ROW(Any p0, Any p1, Any* p2) // 0x9120E8DBA3D69273 0xA11289EC b323
_UPDATE_STAT_INT
void STATS::_UPDATE_STAT_INT(Hash statHash, int value, int p2) // 0x11FF1C80276097ED 0x4AC39C6C b323
_UPDATE_STAT_FLOAT
void STATS::_UPDATE_STAT_FLOAT(Hash statHash, float value, int p2) // 0x30A6614C1F7799B8 0x3E69E7C3 b323
_0x6483C25849031C4F
void STATS::_0x6483C25849031C4F(Any p0, Any p1, Any p2, Any* p3) // 0x6483C25849031C4F 0x2FFD2FA5 b323
_0x5EAD2BF6484852E4
BOOL STATS::_0x5EAD2BF6484852E4() // 0x5EAD2BF6484852E4 0x23D70C39 b323
example from completionpercentage_controller.ysc.c4 if (STATS::_5EAD2BF6484852E4()) { MISC::SET_BIT(g_17b95._f20df._ff10, 15); STATS::_11FF1C80276097ED(0xe9ec4dd1, 200, 0); }
_0xC141B8917E0017EC
void STATS::_0xC141B8917E0017EC() // 0xC141B8917E0017EC 0x0AD43306 b323
SET_PROFILE_SETTING_PROLOGUE_COMPLETE
void STATS::SET_PROFILE_SETTING_PROLOGUE_COMPLETE() // 0xB475F27C6A994D65 0xC7DE5C30 b323
_0xC67E2DA1CBE759E2
void STATS::_0xC67E2DA1CBE759E2() // 0xC67E2DA1CBE759E2 b1734
Sets profile setting 939
_0xF1A1803D3476F215
void STATS::_0xF1A1803D3476F215(int value) // 0xF1A1803D3476F215 0xA3DAC790 b323
Sets profile setting 933
_0x38BAAA5DD4C9D19F
void STATS::_0x38BAAA5DD4C9D19F(int value) // 0x38BAAA5DD4C9D19F 0x726FAE66 b323
Sets profile setting 934
_0x55384438FC55AD8E
void STATS::_0x55384438FC55AD8E(int value) // 0x55384438FC55AD8E 0xF03895A4 b323
Sets profile setting 935
_0x723C1CE13FBFDB67
void STATS::_0x723C1CE13FBFDB67(Any p0, Any p1) // 0x723C1CE13FBFDB67 0x4C39CF10 b323
_0x0D01D20616FC73FB
void STATS::_0x0D01D20616FC73FB(Any p0, Any p1) // 0x0D01D20616FC73FB 0x2180AE13 b323
_0x428EAF89E24F6C36
void STATS::_0x428EAF89E24F6C36(Any p0, float p1) // 0x428EAF89E24F6C36 0xEE292B91 b323
STAT_SET_CHEAT_IS_ACTIVE
void STATS::STAT_SET_CHEAT_IS_ACTIVE() // 0x047CBED6F6F8B63C 0xA063CABD b323
LEADERBOARDS2_WRITE_DATA_FOR_EVENT_TYPE
BOOL STATS::LEADERBOARDS2_WRITE_DATA_FOR_EVENT_TYPE(Any* p0, Any* p1) // 0xC980E62E33DF1D5C 0x62C19A3D b323
_0x6F361B8889A792A3
void STATS::_0x6F361B8889A792A3() // 0x6F361B8889A792A3 0x3B4EF322 b323
_0xC847B43F369AC0B5
void STATS::_0xC847B43F369AC0B5() // 0xC847B43F369AC0B5 b323
_STAT_MIGRATE_SAVE
BOOL STATS::_STAT_MIGRATE_SAVE(const char* platformName) // 0xA5C80D8E768A9E66 b323
platformName must be one of the following: ps3, xbox360, ps4, xboxone
_0x9A62EC95AE10E011
int STATS::_0x9A62EC95AE10E011() // 0x9A62EC95AE10E011 b323
_0x4C89FE2BDEB3F169
Any STATS::_0x4C89FE2BDEB3F169() // 0x4C89FE2BDEB3F169 b323
_0xC6E0E2616A7576BB
Any STATS::_0xC6E0E2616A7576BB() // 0xC6E0E2616A7576BB b323
_0x5BD5F255321C4AAF
Any STATS::_0x5BD5F255321C4AAF(Any p0) // 0x5BD5F255321C4AAF b323
_0xDEAAF77EB3687E97
Any STATS::_0xDEAAF77EB3687E97(Any p0, Any* p1) // 0xDEAAF77EB3687E97 b323
STAT_SAVE_MIGRATION_STATUS_START
BOOL STATS::STAT_SAVE_MIGRATION_STATUS_START() // 0xC70DDCE56D0D3A99 0x54E775E0 b323
STAT_GET_SAVE_MIGRATION_STATUS
int STATS::STAT_GET_SAVE_MIGRATION_STATUS(Any* data) // 0x886913BBEACA68C1 0xE3F0D62D b323
_STAT_SAVE_MIGRATION_CANCEL
BOOL STATS::_STAT_SAVE_MIGRATION_CANCEL() // 0x4FEF53183C3C6414 b323
_STAT_GET_CANCEL_SAVE_MIGRATION_STATUS
int STATS::_STAT_GET_CANCEL_SAVE_MIGRATION_STATUS() // 0x567384DFA67029E6 b323
_STAT_SAVE_MIGRATION_CONSUME_CONTENT_UNLOCK
BOOL STATS::_STAT_SAVE_MIGRATION_CONSUME_CONTENT_UNLOCK(Hash contentId, const char* srcPlatform, const char* srcGamerHandle) // 0x3270F67EED31FBC1 b323
_STAT_GET_SAVE_MIGRATION_CONSUME_CONTENT_UNLOCK_STATUS
int STATS::_STAT_GET_SAVE_MIGRATION_CONSUME_CONTENT_UNLOCK_STATUS(int* p0) // 0xCE5AA445ABA8DEE0 b323
_0x98E2BC1CA26287C3
void STATS::_0x98E2BC1CA26287C3() // 0x98E2BC1CA26287C3 b323
_0x629526ABA383BCAA
void STATS::_0x629526ABA383BCAA() // 0x629526ABA383BCAA b323
_0xBE3DB208333D9844
Any STATS::_0xBE3DB208333D9844() // 0xBE3DB208333D9844 b463
_0x33D72899E24C3365
Any STATS::_0x33D72899E24C3365(Any p0, Any p1) // 0x33D72899E24C3365 b463
_0xA761D4AC6115623D
Any STATS::_0xA761D4AC6115623D() // 0xA761D4AC6115623D b463
_0xF11F01D98113536A
Any STATS::_0xF11F01D98113536A(Any p0) // 0xF11F01D98113536A b463
_0x8B9CDBD6C566C38C
Any STATS::_0x8B9CDBD6C566C38C() // 0x8B9CDBD6C566C38C b944
_0xE8853FBCE7D8D0D6
Any STATS::_0xE8853FBCE7D8D0D6() // 0xE8853FBCE7D8D0D6 b463
_0xA943FD1722E11EFD
Any STATS::_0xA943FD1722E11EFD() // 0xA943FD1722E11EFD b463
_0x84A810B375E69C0E
Any STATS::_0x84A810B375E69C0E() // 0x84A810B375E69C0E b463
_0x9EC8858184CD253A
Any STATS::_0x9EC8858184CD253A() // 0x9EC8858184CD253A b463
_0xBA9749CC94C1FD85
Any STATS::_0xBA9749CC94C1FD85() // 0xBA9749CC94C1FD85 b463
_0x55A8BECAF28A4EB7
Any STATS::_0x55A8BECAF28A4EB7() // 0x55A8BECAF28A4EB7 b463
_0x32CAC93C9DE73D32
Any STATS::_0x32CAC93C9DE73D32() // 0x32CAC93C9DE73D32 b463
_0xAFF47709F1D5DCCE
Any STATS::_0xAFF47709F1D5DCCE() // 0xAFF47709F1D5DCCE b463
_0x6E0A5253375C4584
Any STATS::_0x6E0A5253375C4584() // 0x6E0A5253375C4584 b463
_0x1A8EA222F9C67DBB
Any STATS::_0x1A8EA222F9C67DBB(Any p0) // 0x1A8EA222F9C67DBB b463
_0xF9F2922717B819EC
Any STATS::_0xF9F2922717B819EC() // 0xF9F2922717B819EC b505
_0x0B8B7F74BF061C6D
Any STATS::_0x0B8B7F74BF061C6D() // 0x0B8B7F74BF061C6D b463
_0xB3DA2606774A8E2D
BOOL STATS::_0xB3DA2606774A8E2D() // 0xB3DA2606774A8E2D b323
This function is hard-coded to always return 1. NETWORK_IS_*
_SET_HAS_CONTENT_UNLOCKS_FLAGS
void STATS::_SET_HAS_CONTENT_UNLOCKS_FLAGS(int value) // 0xDAC073C7901F9E15 b323
Sets profile setting 866 SET_*
_SET_SAVE_MIGRATION_TRANSACTION_ID
void STATS::_SET_SAVE_MIGRATION_TRANSACTION_ID(int transactionId) // 0xF6792800AC95350D b323
Sets profile setting 501
_0x6BC0ACD0673ACEBE
void STATS::_0x6BC0ACD0673ACEBE(Any p0, Any p1, Any p2) // 0x6BC0ACD0673ACEBE b573
_0x8D8ADB562F09A245
void STATS::_0x8D8ADB562F09A245(Any p0) // 0x8D8ADB562F09A245 b573
_0xD1A1EE3B4FA8E760
void STATS::_0xD1A1EE3B4FA8E760(Any p0) // 0xD1A1EE3B4FA8E760 b573
_0x88087EE1F28024AE
void STATS::_0x88087EE1F28024AE(Any p0) // 0x88087EE1F28024AE b573
_0xFCC228E07217FCAC
void STATS::_0xFCC228E07217FCAC(Any p0) // 0xFCC228E07217FCAC b573
_0x678F86D8FC040BDB
void STATS::_0x678F86D8FC040BDB(Any p0) // 0x678F86D8FC040BDB b573
_0xA6F54BB2FFCA35EA
void STATS::_0xA6F54BB2FFCA35EA(Any p0) // 0xA6F54BB2FFCA35EA b573
_0x5FF2C33B13A02A11
void STATS::_0x5FF2C33B13A02A11(Any p0) // 0x5FF2C33B13A02A11 b757
_0x282B6739644F4347
void STATS::_0x282B6739644F4347(Any p0) // 0x282B6739644F4347 b757
_0xF06A6F41CB445443
void STATS::_0xF06A6F41CB445443(Any p0) // 0xF06A6F41CB445443 b757
_0x7B18DA61F6BAE9D5
void STATS::_0x7B18DA61F6BAE9D5(Any p0) // 0x7B18DA61F6BAE9D5 b573
_0x06EAF70AE066441E
void STATS::_0x06EAF70AE066441E(Any p0) // 0x06EAF70AE066441E b573
_0x14EDA9EE27BD1626
void STATS::_0x14EDA9EE27BD1626(Any p0) // 0x14EDA9EE27BD1626 b573
_0x930F504203F561C9
void STATS::_0x930F504203F561C9(Any p0) // 0x930F504203F561C9 b573
_0xE3261D791EB44ACB
void STATS::_0xE3261D791EB44ACB(Any p0) // 0xE3261D791EB44ACB b573
_0x73001E34F85137F8
void STATS::_0x73001E34F85137F8(Any p0) // 0x73001E34F85137F8 b573
_0x53CAE13E9B426993
void STATS::_0x53CAE13E9B426993(Any p0) // 0x53CAE13E9B426993 b757
_0x7D36291161859389
void STATS::_0x7D36291161859389(Any p0) // 0x7D36291161859389 b757
_PLAYSTATS_SPENT_PI_CUSTOM_LOADOUT
void STATS::_PLAYSTATS_SPENT_PI_CUSTOM_LOADOUT(int amount) // 0xBE509B0A3693DE8B b757
_PLAYSTATS_BUY_CONTRABAND
void STATS::_PLAYSTATS_BUY_CONTRABAND(Any* data) // 0xD6781E42755531F7 b757
_PLAYSTATS_SELL_CONTRABAND
void STATS::_PLAYSTATS_SELL_CONTRABAND(Any* data) // 0xC729991A9065376E b757
_PLAYSTATS_DEFEND_CONTRABAND
void STATS::_PLAYSTATS_DEFEND_CONTRABAND(Any* data) // 0x2605663BD4F23B5D b757
_PLAYSTATS_RECOVER_CONTRABAND
void STATS::_PLAYSTATS_RECOVER_CONTRABAND(Any* data) // 0x04D90BA8207ADA2D b757
_0x60EEDC12AF66E846
void STATS::_0x60EEDC12AF66E846(Any p0) // 0x60EEDC12AF66E846 b757
_0x3EBEAC6C3F81F6BD
void STATS::_0x3EBEAC6C3F81F6BD(Any p0) // 0x3EBEAC6C3F81F6BD b573
_0x96E6D5150DBF1C09
void STATS::_0x96E6D5150DBF1C09(Any p0, Any p1, Any p2) // 0x96E6D5150DBF1C09 b573
_0xA3C53804BDB68ED2
void STATS::_0xA3C53804BDB68ED2(Any p0, Any p1) // 0xA3C53804BDB68ED2 b573
_0x6BCCF9948492FD85
void STATS::_0x6BCCF9948492FD85(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x6BCCF9948492FD85 b573
_HIRED_LIMO
void STATS::_HIRED_LIMO(Any p0, Any p1) // 0x792271AB35C356A4 b573
_ORDERED_BOSS_VEHICLE
void STATS::_ORDERED_BOSS_VEHICLE(Any p0, Any p1, Hash vehicleHash) // 0xCEA553E35C2246E1 b573
_0xD1C9B92BDD3F151D
void STATS::_0xD1C9B92BDD3F151D(Any p0, Any p1, Any p2) // 0xD1C9B92BDD3F151D b573
_0x44919CC079BB60BF
void STATS::_0x44919CC079BB60BF(Any p0) // 0x44919CC079BB60BF b573
_0x7033EEFD9B28088E
void STATS::_0x7033EEFD9B28088E(Any p0) // 0x7033EEFD9B28088E b678
_0xAA525DFF66BB82F5
void STATS::_0xAA525DFF66BB82F5(Any p0, Any p1, Any p2) // 0xAA525DFF66BB82F5 b757
_0x015B03EE1C43E6EC
void STATS::_0x015B03EE1C43E6EC(Any p0) // 0x015B03EE1C43E6EC b757
_PLAYSTATS_STUNT_PERFORMED_EVENT_ALLOW_TRIGGER
void STATS::_PLAYSTATS_STUNT_PERFORMED_EVENT_ALLOW_TRIGGER() // 0x928DBFB892638EF3 b791
Allows CEventNetworkStuntPerformed to be triggered.
_PLAYSTATS_STUNT_PERFORMED_EVENT_DISALLOW_TRIGGER
void STATS::_PLAYSTATS_STUNT_PERFORMED_EVENT_DISALLOW_TRIGGER() // 0x8A800DACCC0DA55D b791
Disallows CEventNetworkStuntPerformed to be triggered.
_0xBF371CD2B64212FD
void STATS::_0xBF371CD2B64212FD(Any p0) // 0xBF371CD2B64212FD b877
_0x7D8BA05688AD64C7
void STATS::_0x7D8BA05688AD64C7(Any p0) // 0x7D8BA05688AD64C7 b944
_0x0B565B0AAE56A0E8
void STATS::_0x0B565B0AAE56A0E8(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x0B565B0AAE56A0E8 b877
_0x28ECB8AC2F607DB2
void STATS::_0x28ECB8AC2F607DB2(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x28ECB8AC2F607DB2 b877
_PLAYSTATS_CHANGE_MC_EMBLEM
void STATS::_PLAYSTATS_CHANGE_MC_EMBLEM(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x0A50D2604E05CB94 b877
_0xCC25A4553DFBF9EA
void STATS::_0xCC25A4553DFBF9EA(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xCC25A4553DFBF9EA b877
_0xF534D94DFA2EAD26
void STATS::_0xF534D94DFA2EAD26(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xF534D94DFA2EAD26 b877
_0xD558BEC0BBA7E8D2
void STATS::_0xD558BEC0BBA7E8D2(Any p0, Any p1, Any p2, Any p3, Any p4) // 0xD558BEC0BBA7E8D2 b877
_PLAYSTATS_EARNED_MC_POINTS
void STATS::_PLAYSTATS_EARNED_MC_POINTS(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x501478855A6074CE b877
_0x03C2EEBB04B3FB72
void STATS::_0x03C2EEBB04B3FB72(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x03C2EEBB04B3FB72 b877
_0x8989CBD7B4E82534
void STATS::_0x8989CBD7B4E82534(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x8989CBD7B4E82534 b877
_0x27AA1C973CACFE63
void STATS::_0x27AA1C973CACFE63(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0x27AA1C973CACFE63 b944
_PLAYSTATS_COPY_RANK_INTO_NEW_SLOT
void STATS::_PLAYSTATS_COPY_RANK_INTO_NEW_SLOT(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0xB7257BA2550EA10A b877
_PLAYSTATS_DUPE_DETECTION
void STATS::_PLAYSTATS_DUPE_DETECTION(Any* data) // 0x848B66100EE33B05 b1011
_PLAYSTATS_BAN_ALERT
void STATS::_PLAYSTATS_BAN_ALERT(int p0) // 0x516FC96EB88EEFE5 b1011
_PLAYSTATS_GUNRUN_MISSION_ENDED
void STATS::_PLAYSTATS_GUNRUN_MISSION_ENDED(Any* data) // 0x0EACDF8487D5155A b1103
_0xDAF80797FC534BEC
void STATS::_0xDAF80797FC534BEC(Any p0) // 0xDAF80797FC534BEC b1103
_0x316DB59CD14C1774
void STATS::_0x316DB59CD14C1774(Any p0) // 0x316DB59CD14C1774 b1493
_0x2D7A9B577E72385E
void STATS::_0x2D7A9B577E72385E(Any p0) // 0x2D7A9B577E72385E b1493
_0x830C3A44EB3F2CF9
void STATS::_0x830C3A44EB3F2CF9(Any p0) // 0x830C3A44EB3F2CF9 b1493
_0xB26F670685631727
void STATS::_0xB26F670685631727(Any p0, Any p1) // 0xB26F670685631727 b1493
_0xC14BD9F5337219B2
void STATS::_0xC14BD9F5337219B2(Any p0, Any p1) // 0xC14BD9F5337219B2 b1493
_PLAYSTATS_STONE_HATCHET_END
void STATS::_PLAYSTATS_STONE_HATCHET_END(Any* data) // 0x35E39E5570358630 b1493
_PLAYSTATS_SMUG_MISSION_ENDED
void STATS::_PLAYSTATS_SMUG_MISSION_ENDED(Any* data) // 0x320C35147D5B5DDD b1180
_PLAYSTATS_H2_FMPREP_END
void STATS::_PLAYSTATS_H2_FMPREP_END(Any* data) // 0xD8AFB345A9C5CCBB b1290
_PLAYSTATS_H2_INSTANCE_END
void STATS::_PLAYSTATS_H2_INSTANCE_END(Any* data, Any p1, Any p2, Any p3) // 0x1E1497D0D2108115 b1290
_PLAYSTATS_DAR_MISSION_END
void STATS::_PLAYSTATS_DAR_MISSION_END(Any* data) // 0x0BC254FF3A911501 b1290
_PLAYSTATS_ENTER_SESSION_PACK
void STATS::_PLAYSTATS_ENTER_SESSION_PACK(Any* data) // 0x878FF156D36E9956 b1290
_PLAYSTATS_DRONE_USAGE
void STATS::_PLAYSTATS_DRONE_USAGE(int p0, int p1, int p2) // 0x66C7BB2416ED3FCE b1493
_PLAYSTATS_SPECTATOR_WHEEL_SPIN
void STATS::_PLAYSTATS_SPECTATOR_WHEEL_SPIN(int p0, int p1, int p2, int p3) // 0x6731DE84A38BFAD0 b1604
_PLAYSTATS_ARENA_WAR_SPECTATOR
void STATS::_PLAYSTATS_ARENA_WAR_SPECTATOR(int p0, int p1, int p2, int p3, int p4) // 0x6F4F599753F8200A b1604
_PLAYSTATS_ARENA_WARS_ENDED
void STATS::_PLAYSTATS_ARENA_WARS_ENDED(Any* data) // 0xB479D9F0D48A1BC5 b1604
_PLAYSTATS_PASSIVE_MODE
void STATS::_PLAYSTATS_PASSIVE_MODE(BOOL p0, int p1, int p2, int p3) // 0x35EEC6C2BC821A71 b1734
_PLAYSTATS_COLLECTIBLE
void STATS::_PLAYSTATS_COLLECTIBLE(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0xCD0A8A9338681CF2 b1734
_PLAYSTATS_CASINO_STORY_MISSION_ENDED
void STATS::_PLAYSTATS_CASINO_STORY_MISSION_ENDED(Any p0, Any p1) // 0xFCCCAC2BD3C1F180 b1734
_PLAYSTATS_CASINO_CHIP
void STATS::_PLAYSTATS_CASINO_CHIP(Any p0) // 0x0999F3F090EC5012 b1734
_PLAYSTATS_CASINO_ROULETTE
void STATS::_PLAYSTATS_CASINO_ROULETTE(Any p0) // 0x95101C443A84E7F1 b1734
_PLAYSTATS_CASINO_BLACKJACK
void STATS::_PLAYSTATS_CASINO_BLACKJACK(Any p0) // 0x3EAE97309727E7AD b1734
_PLAYSTATS_CASINO_THREECARDPOKER
void STATS::_PLAYSTATS_CASINO_THREECARDPOKER(Any p0) // 0xF740FB339D471C35 b1734
_PLAYSTATS_CASINO_SLOTMACHINE
void STATS::_PLAYSTATS_CASINO_SLOTMACHINE(Any p0) // 0xEF5EC67D392B830A b1734
_PLAYSTATS_CASINO_INSIDETRACK
void STATS::_PLAYSTATS_CASINO_INSIDETRACK(Any p0) // 0x049F059625058A86 b1734
_PLAYSTATS_CASINO_LUCKYSEVEN
void STATS::_PLAYSTATS_CASINO_LUCKYSEVEN(Any p0) // 0x0C432C1435F5E4FA b1734
_PLAYSTATS_CASINO_ROULETTE_LIGHT
void STATS::_PLAYSTATS_CASINO_ROULETTE_LIGHT(Any p0) // 0x6572ABA3DE1197FC b1734
_PLAYSTATS_CASINO_BLACKJACK_LIGHT
void STATS::_PLAYSTATS_CASINO_BLACKJACK_LIGHT(Any p0) // 0xD5451C7BF151EB6F b1734
_PLAYSTATS_CASINO_THREECARDPOKER_LIGHT
void STATS::_PLAYSTATS_CASINO_THREECARDPOKER_LIGHT(Any p0) // 0xC9001364B4388F22 b1734
_PLAYSTATS_CASINO_SLOTMACHINE_LIGHT
void STATS::_PLAYSTATS_CASINO_SLOTMACHINE_LIGHT(Any p0) // 0xE60054A0FAE8227F b1734
_PLAYSTATS_CASINO_INSIDETRACK_LIGHT
void STATS::_PLAYSTATS_CASINO_INSIDETRACK_LIGHT(Any p0) // 0x23A3CBCD50D54E47 b1734
_PLAYSTATS_ARCADEGAME
void STATS::_PLAYSTATS_ARCADEGAME(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x533A7D1EA58DF958 b1734
_0x4FCDBD3F0A813C25
void STATS::_0x4FCDBD3F0A813C25(Any p0, Any p1) // 0x4FCDBD3F0A813C25 b1868
_PLAYSTATS_CASINO_MISSION_ENDED
void STATS::_PLAYSTATS_CASINO_MISSION_ENDED(Any* data) // 0x1A0D4A6C336B7BC5 b1734
_0xDFBD93BF2943E29B
void STATS::_0xDFBD93BF2943E29B(Any p0) // 0xDFBD93BF2943E29B b1868
_0x92FC0EEDFAC04A14
void STATS::_0x92FC0EEDFAC04A14(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x92FC0EEDFAC04A14 b1868
_0x0077F15613D36993
void STATS::_0x0077F15613D36993(Any p0, Any p1, Any p2, Any p3) // 0x0077F15613D36993 b1868
_0xF9096193DF1F99D4
void STATS::_0xF9096193DF1F99D4(Any p0) // 0xF9096193DF1F99D4 b1868
_0x2E0259BABC27A327
void STATS::_0x2E0259BABC27A327(Any p0) // 0x2E0259BABC27A327 b1868
_0x53C31853EC9531FF
void STATS::_0x53C31853EC9531FF(Any p0) // 0x53C31853EC9531FF b1868
_0x810B5FCC52EC7FF0
void STATS::_0x810B5FCC52EC7FF0(Any p0, Any p1, Any p2, Any p3) // 0x810B5FCC52EC7FF0 b1868
_0x5BF29846C6527C54
void STATS::_0x5BF29846C6527C54(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x5BF29846C6527C54 b1868
_0xC03FAB2C2F92289B
void STATS::_0xC03FAB2C2F92289B(Any p0) // 0xC03FAB2C2F92289B b1868
_0x5CDAED54B34B0ED0
void STATS::_0x5CDAED54B34B0ED0(Any p0) // 0x5CDAED54B34B0ED0 b1868
_0x4AFF7E02E485E92B
void STATS::_0x4AFF7E02E485E92B() // 0x4AFF7E02E485E92B b1868
_0xDFCDB14317A9B361
void STATS::_0xDFCDB14317A9B361(Any p0) // 0xDFCDB14317A9B361 b2189
_0xC1E963C58664B556
void STATS::_0xC1E963C58664B556(Any p0) // 0xC1E963C58664B556 b2189
_0x2FA3173480008493
void STATS::_0x2FA3173480008493(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x2FA3173480008493 b2189
_0xD4367D310F079DB0
void STATS::_0xD4367D310F079DB0(Any p0, Any p1, Any p2, Any p3) // 0xD4367D310F079DB0 b2189
_0x4DC416F246A41FC8
void STATS::_0x4DC416F246A41FC8(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x4DC416F246A41FC8 b2189
_0x2818FF6638CB09DE
void STATS::_0x2818FF6638CB09DE(Any p0) // 0x2818FF6638CB09DE b2189
_0xD6CA58B3B53A0F22
void STATS::_0xD6CA58B3B53A0F22(Any p0) // 0xD6CA58B3B53A0F22 b2189
STREAMING
LOAD_ALL_OBJECTS_NOW
void STREAMING::LOAD_ALL_OBJECTS_NOW() // 0xBD6E84632DD4CB3F 0xC9DBDA90 b323
LOAD_SCENE
void STREAMING::LOAD_SCENE(float x, float y, float z) // 0x4448EB75B4904BDB 0xB72403F5 b323
NETWORK_UPDATE_LOAD_SCENE
BOOL STREAMING::NETWORK_UPDATE_LOAD_SCENE() // 0xC4582015556D1C46 0xC76E023C b323
IS_NETWORK_LOADING_SCENE
BOOL STREAMING::IS_NETWORK_LOADING_SCENE() // 0x41CA5A33160EA4AB 0x6DCFC021 b323
SET_INTERIOR_ACTIVE
void STREAMING::SET_INTERIOR_ACTIVE(int interiorID, BOOL toggle) // 0xE37B76C387BE28ED 0xE1013910 b323
REQUEST_MODEL
void STREAMING::REQUEST_MODEL(Hash model) // 0x963D27A58DF860AC 0xFFF1B500 b323
Request a model to be loaded into memory.
REQUEST_MENU_PED_MODEL
void STREAMING::REQUEST_MENU_PED_MODEL(Hash model) // 0xA0261AEF7ACFC51E 0x48CEB6B4 b323
HAS_MODEL_LOADED
BOOL STREAMING::HAS_MODEL_LOADED(Hash model) // 0x98A4EB5D89A0C952 0x62BFDB37 b323
Checks if the specified model has loaded into memory.
REQUEST_MODELS_IN_ROOM
void STREAMING::REQUEST_MODELS_IN_ROOM(Interior interior, const char* roomName) // 0x8A7A40100EDFEC58 0x939243FB b323
STREAMING::REQUEST_MODELS_IN_ROOM(l_13BC, "V_FIB01_cur_elev"); STREAMING::REQUEST_MODELS_IN_ROOM(l_13BC, "limbo"); STREAMING::REQUEST_MODELS_IN_ROOM(l_13BB, "V_Office_gnd_lifts"); STREAMING::REQUEST_MODELS_IN_ROOM(l_13BB, "limbo"); STREAMING::REQUEST_MODELS_IN_ROOM(l_13BC, "v_fib01_jan_elev"); STREAMING::REQUEST_MODELS_IN_ROOM(l_13BC, "limbo");
SET_MODEL_AS_NO_LONGER_NEEDED
void STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(Hash model) // 0xE532F5D78798DAAB 0xAE0F069E b323
Unloads model from memory
IS_MODEL_IN_CDIMAGE
BOOL STREAMING::IS_MODEL_IN_CDIMAGE(Hash model) // 0x35B9E0803292B641 0x1094782F b323
Check if model is in cdimage(rpf)
IS_MODEL_VALID
BOOL STREAMING::IS_MODEL_VALID(Hash model) // 0xC0296A2EDF545E92 0xAF8F8E9D b323
Returns whether the specified model exists in the game.
IS_MODEL_A_PED
BOOL STREAMING::IS_MODEL_A_PED(Hash model) // 0x75816577FEA6DAD5 b1103
IS_MODEL_A_VEHICLE
BOOL STREAMING::IS_MODEL_A_VEHICLE(Hash model) // 0x19AAC8F07BFEC53E 0xFFFC85D4 b323
Returns whether the specified model represents a vehicle.
REQUEST_COLLISION_AT_COORD
void STREAMING::REQUEST_COLLISION_AT_COORD(float x, float y, float z) // 0x07503F7948F491A7 0xCD9805E7 b323
REQUEST_COLLISION_FOR_MODEL
void STREAMING::REQUEST_COLLISION_FOR_MODEL(Hash model) // 0x923CB32A3B874FCB 0x3930C042 b323
HAS_COLLISION_FOR_MODEL_LOADED
BOOL STREAMING::HAS_COLLISION_FOR_MODEL_LOADED(Hash model) // 0x22CCA434E368F03A 0x41A094F8 b323
REQUEST_ADDITIONAL_COLLISION_AT_COORD
void STREAMING::REQUEST_ADDITIONAL_COLLISION_AT_COORD(float x, float y, float z) // 0xC9156DC11411A9EA 0xC2CC1DF2 b323
MulleDK19: Alias of REQUEST_COLLISION_AT_COORD.
DOES_ANIM_DICT_EXIST
BOOL STREAMING::DOES_ANIM_DICT_EXIST(const char* animDict) // 0x2DA49C3B79856961 0xCD31C872 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
REQUEST_ANIM_DICT
void STREAMING::REQUEST_ANIM_DICT(const char* animDict) // 0xD3BD40951412FEF6 0xDCA96950 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
HAS_ANIM_DICT_LOADED
BOOL STREAMING::HAS_ANIM_DICT_LOADED(const char* animDict) // 0xD031A9162D01088C 0x05E6763C b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
REMOVE_ANIM_DICT
void STREAMING::REMOVE_ANIM_DICT(const char* animDict) // 0xF66A602F829E2A06 0x0AE050B5 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
REQUEST_ANIM_SET
void STREAMING::REQUEST_ANIM_SET(const char* animSet) // 0x6EA47DAE7FAD0EED 0x2988B3FC b323
Starts loading the specified animation set. An animation set provides movement animations for a ped. See SET_PED_MOVEMENT_CLIPSET. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
HAS_ANIM_SET_LOADED
BOOL STREAMING::HAS_ANIM_SET_LOADED(const char* animSet) // 0xC4EA073D86FB29B0 0x4FFF397D b323
Gets whether the specified animation set has finished loading. An animation set provides movement animations for a ped. See SET_PED_MOVEMENT_CLIPSET. Animation set and clip set are synonymous. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
REMOVE_ANIM_SET
void STREAMING::REMOVE_ANIM_SET(const char* animSet) // 0x16350528F93024B3 0xD04A817A b323
Unloads the specified animation set. An animation set provides movement animations for a ped. See SET_PED_MOVEMENT_CLIPSET. Animation set and clip set are synonymous. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
REQUEST_CLIP_SET
void STREAMING::REQUEST_CLIP_SET(const char* clipSet) // 0xD2A71E1A77418A49 0x546C627A b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
HAS_CLIP_SET_LOADED
BOOL STREAMING::HAS_CLIP_SET_LOADED(const char* clipSet) // 0x318234F4F3738AF3 0x230D5455 b323
Alias for HAS_ANIM_SET_LOADED. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
REMOVE_CLIP_SET
void STREAMING::REMOVE_CLIP_SET(const char* clipSet) // 0x01F73A131C18CD94 0x1E21F7AA b323
Alias for REMOVE_ANIM_SET. Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json Full list of movement clipsets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/movementClipsetsCompact.json
REQUEST_IPL
void STREAMING::REQUEST_IPL(const char* iplName) // 0x41B4893843BBDB74 0x3B70D1DB b323
Exemple: REQUEST_IPL("TrevorsTrailerTrash"); Full list of IPLs and interior entity sets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ipls.json
REMOVE_IPL
void STREAMING::REMOVE_IPL(const char* iplName) // 0xEE6C5AD3ECE0A82D 0xDF7CBD36 b323
Removes an IPL from the map. Full list of IPLs and interior entity sets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ipls.json Example: C#: Function.Call(Hash.REMOVE_IPL, "trevorstrailertidy"); C++: STREAMING::REMOVE_IPL("trevorstrailertidy"); iplName = Name of IPL you want to remove.
IS_IPL_ACTIVE
BOOL STREAMING::IS_IPL_ACTIVE(const char* iplName) // 0x88A741E44A2B3495 0xB2C33714 b323
Full list of IPLs and interior entity sets by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/ipls.json
SET_STREAMING
void STREAMING::SET_STREAMING(BOOL toggle) // 0x6E0C692677008888 0x27EF6CB2 b323
_LOAD_GLOBAL_WATER_TYPE
void STREAMING::_LOAD_GLOBAL_WATER_TYPE(int waterType) // 0x7E3F55ED251B76D3 b2189
0 - default 1 - HeistIsland
_GET_GLOBAL_WATER_TYPE
int STREAMING::_GET_GLOBAL_WATER_TYPE() // 0xF741BD853611592D b2189
SET_GAME_PAUSES_FOR_STREAMING
void STREAMING::SET_GAME_PAUSES_FOR_STREAMING(BOOL toggle) // 0x717CD6E6FAEBBEDC 0x9211A28A b323
SET_REDUCE_PED_MODEL_BUDGET
void STREAMING::SET_REDUCE_PED_MODEL_BUDGET(BOOL toggle) // 0x77B5F9A36BF96710 0xAFCB2B86 b323
SET_REDUCE_VEHICLE_MODEL_BUDGET
void STREAMING::SET_REDUCE_VEHICLE_MODEL_BUDGET(BOOL toggle) // 0x80C527893080CCF3 0xCDB4FB7E b323
SET_DITCH_POLICE_MODELS
void STREAMING::SET_DITCH_POLICE_MODELS(BOOL toggle) // 0x42CBE54462D92634 0x3EA7FCE4 b323
This is a NOP function. It does nothing at all.
GET_NUMBER_OF_STREAMING_REQUESTS
int STREAMING::GET_NUMBER_OF_STREAMING_REQUESTS() // 0x4060057271CEBC89 0xC2EE9A02 b323
REQUEST_PTFX_ASSET
void STREAMING::REQUEST_PTFX_ASSET() // 0x944955FB2A3935C8 0x2C649263 b323
maps script name (thread + 0xD0) by lookup via scriptfx.dat - does nothing when script name is empty
HAS_PTFX_ASSET_LOADED
BOOL STREAMING::HAS_PTFX_ASSET_LOADED() // 0xCA7D9B86ECA7481B 0x3EFF96BE b323
REMOVE_PTFX_ASSET
void STREAMING::REMOVE_PTFX_ASSET() // 0x88C6814073DD4A73 0xC10F178C b323
REQUEST_NAMED_PTFX_ASSET
void STREAMING::REQUEST_NAMED_PTFX_ASSET(const char* fxName) // 0xB80D8756B4668AB6 0xCFEA19A9 b323
From the b678d decompiled scripts: STREAMING::REQUEST_NAMED_PTFX_ASSET("core_snow"); STREAMING::REQUEST_NAMED_PTFX_ASSET("fm_mission_controler"); STREAMING::REQUEST_NAMED_PTFX_ASSET("proj_xmas_firework"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_apartment_mp"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_biolab_heist"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_indep_fireworks"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_indep_parachute"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_indep_wheelsmoke"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_mp_cig_plane"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_mp_creator"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_mp_tankbattle"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_ornate_heist"); STREAMING::REQUEST_NAMED_PTFX_ASSET("scr_prison_break_heist_station");
HAS_NAMED_PTFX_ASSET_LOADED
BOOL STREAMING::HAS_NAMED_PTFX_ASSET_LOADED(const char* fxName) // 0x8702416E512EC454 0x9ACC6446 b323
REMOVE_NAMED_PTFX_ASSET
void STREAMING::REMOVE_NAMED_PTFX_ASSET(const char* fxName) // 0x5F61EBBE1A00F96D 0xC44762A1 b323
SET_VEHICLE_POPULATION_BUDGET
void STREAMING::SET_VEHICLE_POPULATION_BUDGET(int p0) // 0xCB9E1EB3BE2AF4E9 0x1D56993C b323
SET_PED_POPULATION_BUDGET
void STREAMING::SET_PED_POPULATION_BUDGET(int p0) // 0x8C95333CFC3340F3 0xD2D026CD b323
Control how many new (ambient?) peds will spawn in the game world. Range for p0 seems to be 0-3, where 0 is none and 3 is the normal level.
CLEAR_FOCUS
void STREAMING::CLEAR_FOCUS() // 0x31B73D1EA9F01DA2 0x34D91E7A b323
SET_FOCUS_POS_AND_VEL
void STREAMING::SET_FOCUS_POS_AND_VEL(float x, float y, float z, float offsetX, float offsetY, float offsetZ) // 0xBB7454BAFF08FE25 0x14680A60 b323
Override the area where the camera will render the terrain. p3, p4 and p5 are usually set to 0.0
SET_FOCUS_ENTITY
void STREAMING::SET_FOCUS_ENTITY(Entity entity) // 0x198F77705FA0931D 0x18DB04AC b323
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.
IS_ENTITY_FOCUS
BOOL STREAMING::IS_ENTITY_FOCUS(Entity entity) // 0x2DDFF3FB9075D747 0xB456D707 b323
_0x0811381EF5062FEC
void STREAMING::_0x0811381EF5062FEC(Entity p0) // 0x0811381EF5062FEC b323
SET_MAPDATACULLBOX_ENABLED
void STREAMING::SET_MAPDATACULLBOX_ENABLED(const char* name, BOOL toggle) // 0xAF12610C644A35C9 0x403CD434 b323
Possible p0 values: "prologue" "Prologue_Main"
_0x4E52E752C76E7E7A
void STREAMING::_0x4E52E752C76E7E7A(Any p0) // 0x4E52E752C76E7E7A 0xA07BAEB9 b323
This native does absolutely nothing, just a nullsub
FORMAT_FOCUS_HEADING
Any STREAMING::FORMAT_FOCUS_HEADING(float x, float y, float z, float rad, Any p4, Any p5) // 0x219C7B8D53E429FD 0x10B6AB36 b323
_0x1F3F018BC3AFA77C
Any STREAMING::_0x1F3F018BC3AFA77C(float p0, float p1, float p2, float p3, float p4, float p5, float p6, Any p7, Any p8) // 0x1F3F018BC3AFA77C 0x72344191 b323
_0x0AD9710CEE2F590F
Any STREAMING::_0x0AD9710CEE2F590F(float p0, float p1, float p2, float p3, float p4, float p5, Any p6) // 0x0AD9710CEE2F590F 0xC0157255 b323
_0x1EE7D8DF4425F053
void STREAMING::_0x1EE7D8DF4425F053(Any p0) // 0x1EE7D8DF4425F053 0xE80F8ABE b323
_0x7D41E9D2D17C5B2D
Any STREAMING::_0x7D41E9D2D17C5B2D(Any p0) // 0x7D41E9D2D17C5B2D 0x1B3521F4 b323
_0x07C313F94746702C
Any STREAMING::_0x07C313F94746702C(Any p0) // 0x07C313F94746702C 0x42CFE9C0 b323
_0xBC9823AB80A3DCAC
Any STREAMING::_0xBC9823AB80A3DCAC() // 0xBC9823AB80A3DCAC 0x56253356 b323
NEW_LOAD_SCENE_START
BOOL STREAMING::NEW_LOAD_SCENE_START(float posX, float posY, float posZ, float offsetX, float offsetY, float offsetZ, float radius, int p7) // 0x212A8D0D2BABFAC2 0xDF9C38B6 b323
`radius` value is usually between `3f` and `7000f` in original 1868 scripts. `p7` is 0, 1, 2, 3 or 4 used in decompiled scripts, 0 is by far the most common. Returns True if success, used only 7 times in decompiled scripts of 1868
NEW_LOAD_SCENE_START_SPHERE
BOOL STREAMING::NEW_LOAD_SCENE_START_SPHERE(float x, float y, float z, float radius, Any p4) // 0xACCFB4ACF53551B0 0xFA037FEB b323
if (!sub_8f12("START LOAD SCENE SAFE")) { if (CUTSCENE::GET_CUTSCENE_TIME() > 4178) { STREAMING::_ACCFB4ACF53551B0(1973.845458984375, 3818.447265625, 32.43629837036133, 15.0, 2); sub_8e9e("START LOAD SCENE SAFE", 1); } } (Previously known as STREAMING::_NEW_LOAD_SCENE_START_SAFE)
NEW_LOAD_SCENE_STOP
void STREAMING::NEW_LOAD_SCENE_STOP() // 0xC197616D221FF4A4 0x7C05B1F6 b323
IS_NEW_LOAD_SCENE_ACTIVE
BOOL STREAMING::IS_NEW_LOAD_SCENE_ACTIVE() // 0xA41A05B6CB741B85 0xAD234B7F b323
IS_NEW_LOAD_SCENE_LOADED
BOOL STREAMING::IS_NEW_LOAD_SCENE_LOADED() // 0x01B8247A7A8B9AD1 0x3ECD839F b323
_0x71E7B2E657449AAD
Any STREAMING::_0x71E7B2E657449AAD() // 0x71E7B2E657449AAD 0xEAA51103 b323
START_PLAYER_SWITCH
void STREAMING::START_PLAYER_SWITCH(Ped from, Ped to, int flags, int switchType) // 0xFAA23F2CBA159D67 0x0829E975 b323
// this enum comes directly from R* so don't edit this enum ePlayerSwitchTypes { SWITCH_TYPE_AUTO, SWITCH_TYPE_LONG, SWITCH_TYPE_MEDIUM, SWITCH_TYPE_SHORT }; Use GET_IDEAL_PLAYER_SWITCH_TYPE for the best switch type. ---------------------------------------------------- Examples from the decompiled scripts: STREAMING::START_PLAYER_SWITCH(l_832._f3, PLAYER::PLAYER_PED_ID(), 0, 3); STREAMING::START_PLAYER_SWITCH(l_832._f3, PLAYER::PLAYER_PED_ID(), 2050, 3); STREAMING::START_PLAYER_SWITCH(PLAYER::PLAYER_PED_ID(), l_832._f3, 1024, 3); STREAMING::START_PLAYER_SWITCH(g_141F27, PLAYER::PLAYER_PED_ID(), 513, v_14); Note: DO NOT, use SWITCH_TYPE_LONG with flag 513. It leaves you stuck in the clouds. You'll have to call STOP_PLAYER_SWITCH() to return to your ped. Flag 8 w/ SWITCH_TYPE_LONG will zoom out 3 steps, then zoom in 2/3 steps and stop on the 3rd and just hang there. Flag 8 w/ SWITCH_TYPE_MEDIUM will zoom out 1 step, and just hang there.
STOP_PLAYER_SWITCH
void STREAMING::STOP_PLAYER_SWITCH() // 0x95C0A5BBDC189AA1 0x2832C010 b323
IS_PLAYER_SWITCH_IN_PROGRESS
BOOL STREAMING::IS_PLAYER_SWITCH_IN_PROGRESS() // 0xD9D2CFFF49FAB35F 0x56135ACC b323
Returns true if the player is currently switching, false otherwise. (When the camera is in the sky moving from Trevor to Franklin for example)
GET_PLAYER_SWITCH_TYPE
int STREAMING::GET_PLAYER_SWITCH_TYPE() // 0xB3C94A90D9FC9E62 0x280DC015 b323
GET_IDEAL_PLAYER_SWITCH_TYPE
int STREAMING::GET_IDEAL_PLAYER_SWITCH_TYPE(float x1, float y1, float z1, float x2, float y2, float z2) // 0xB5D7B26B45720E05 0xD5A450F1 b323
x1, y1, z1 -- Coords of your ped model x2, y2, z2 -- Coords of the ped you want to switch to
GET_PLAYER_SWITCH_STATE
int STREAMING::GET_PLAYER_SWITCH_STATE() // 0x470555300D10B2A5 0x39A0E1F2 b323
GET_PLAYER_SHORT_SWITCH_STATE
int STREAMING::GET_PLAYER_SHORT_SWITCH_STATE() // 0x20F898A5D9782800 0x9B7BA38F b323
_0x5F2013F8BC24EE69
void STREAMING::_0x5F2013F8BC24EE69(int p0) // 0x5F2013F8BC24EE69 0xF0BD420D b323
SET_PLAYER_*
GET_PLAYER_SWITCH_JUMP_CUT_INDEX
int STREAMING::GET_PLAYER_SWITCH_JUMP_CUT_INDEX() // 0x78C0D93253149435 0x02BA7AC2 b323
SET_PLAYER_SWITCH_OUTRO
void STREAMING::SET_PLAYER_SWITCH_OUTRO(float cameraCoordX, float cameraCoordY, float cameraCoordZ, float camRotationX, float camRotationY, float camRotationZ, float camFov, float camFarClip, int rotationOrder) // 0xC208B673CE446B61 0x47352E14 b323
SET_PLAYER_SWITCH_ESTABLISHING_SHOT
void STREAMING::SET_PLAYER_SWITCH_ESTABLISHING_SHOT(const char* name) // 0x0FDE9DBFC0A6BC65 0x279077B0 b323
All names can be found in playerswitchestablishingshots.meta
ALLOW_PLAYER_SWITCH_PAN
void STREAMING::ALLOW_PLAYER_SWITCH_PAN() // 0x43D1680C6D19A8E9 0x55CB21F9 b323
ALLOW_PLAYER_SWITCH_OUTRO
void STREAMING::ALLOW_PLAYER_SWITCH_OUTRO() // 0x74DE2E8739086740 0x1084F2F4 b323
ALLOW_PLAYER_SWITCH_ASCENT
void STREAMING::ALLOW_PLAYER_SWITCH_ASCENT() // 0x8E2A065ABDAE6994 0x5B1E995D b323
ALLOW_PLAYER_SWITCH_DESCENT
void STREAMING::ALLOW_PLAYER_SWITCH_DESCENT() // 0xAD5FDF34B81BFE79 0x4B4B9A13 b323
IS_SWITCH_READY_FOR_DESCENT
BOOL STREAMING::IS_SWITCH_READY_FOR_DESCENT() // 0xDFA80CB25D0A19B3 0x408F7148 b323
ENABLE_SWITCH_PAUSE_BEFORE_DESCENT
void STREAMING::ENABLE_SWITCH_PAUSE_BEFORE_DESCENT() // 0xD4793DFF3AF2ABCD 0x4062FF73 b323
DISABLE_SWITCH_OUTRO_FX
void STREAMING::DISABLE_SWITCH_OUTRO_FX() // 0xBD605B8E0E18B3BB 0x59CC312D b323
_SWITCH_OUT_PLAYER
void STREAMING::_SWITCH_OUT_PLAYER(Ped ped, int flags, int switchType) // 0xAAB3200ED59016BC 0xFB4D062D b323
doesn't act normally when used on mount chilliad Flags is a bitflag: 2^n - Enabled Functionality: 0 - Skip camera rotate up 3 - Wait for SET_PLAYER_SWITCH_ESTABLISHING_SHOT / hang at last step. You will still need to run 0x74DE2E8739086740 to exit "properly" and then STOP_PLAYER_SWITCH 6 - Invert Switch Direction (false = out, true = in) 8 - Hang above ped switchType: 0 - 3 0: 1 step towards ped 1: 3 steps out from ped 2: 1 step out from ped 3: 1 step towards ped
_SWITCH_IN_PLAYER
void STREAMING::_SWITCH_IN_PLAYER(Ped ped) // 0xD8295AF639FD9CB8 0x2349373B b323
_0x933BBEEB8C61B5F4
BOOL STREAMING::_0x933BBEEB8C61B5F4() // 0x933BBEEB8C61B5F4 0x74C16879 b323
Probably IS_SWITCH_*
GET_PLAYER_SWITCH_INTERP_OUT_DURATION
int STREAMING::GET_PLAYER_SWITCH_INTERP_OUT_DURATION() // 0x08C2D6C52A3104BB 0x569847E3 b323
_0x5B48A06DD0E792A5
Any STREAMING::_0x5B48A06DD0E792A5() // 0x5B48A06DD0E792A5 0xC7A3D279 b323
IS_SWITCH_SKIPPING_DESCENT
BOOL STREAMING::IS_SWITCH_SKIPPING_DESCENT() // 0x5B74EA8CFD5E3E7E 0x90F64284 b323
_0x1E9057A74FD73E23
void STREAMING::_0x1E9057A74FD73E23() // 0x1E9057A74FD73E23 b323
GET_LODSCALE
float STREAMING::GET_LODSCALE() // 0x0C15B0E443B2349D 0x7154B6FD b323
OVERRIDE_LODSCALE_THIS_FRAME
void STREAMING::OVERRIDE_LODSCALE_THIS_FRAME(float scaling) // 0xA76359FC80B2438E 0xE5612C1A b323
This allows you to override "extended distance scaling" setting. Needs to be called each frame. Max scaling seems to be 200.0, normal is 1.0 See https://gfycat.com/DetailedHauntingIncatern
_0xBED8CA5FF5E04113
void STREAMING::_0xBED8CA5FF5E04113(float p0, float p1, float p2, float p3) // 0xBED8CA5FF5E04113 0x9CD6A451 b323
_0x472397322E92A856
void STREAMING::_0x472397322E92A856() // 0x472397322E92A856 0x4267DA87 b323
_0x40AEFD1A244741F2
void STREAMING::_0x40AEFD1A244741F2(BOOL p0) // 0x40AEFD1A244741F2 0x9FA4AF99 b323
_0x03F1A106BDA7DD3E
void STREAMING::_0x03F1A106BDA7DD3E() // 0x03F1A106BDA7DD3E b323
_0x95A7DABDDBB78AE7
void STREAMING::_0x95A7DABDDBB78AE7(const char* iplName1, const char* iplName2) // 0x95A7DABDDBB78AE7 0x9EF0A9CF b323
_0x63EB2B972A218CAC
void STREAMING::_0x63EB2B972A218CAC() // 0x63EB2B972A218CAC 0xF2CDD6A8 b323
_0xFB199266061F820A
BOOL STREAMING::_0xFB199266061F820A() // 0xFB199266061F820A 0x17B0A1CD b323
_0xF4A0DADB70F57FA6
void STREAMING::_0xF4A0DADB70F57FA6() // 0xF4A0DADB70F57FA6 0x3DA7AA5D b323
_0x5068F488DDB54DD8
Any STREAMING::_0x5068F488DDB54DD8() // 0x5068F488DDB54DD8 0xDAB4BAC0 b323
PREFETCH_SRL
void STREAMING::PREFETCH_SRL(const char* srl) // 0x3D245789CE12982C 0x37BE2FBB b323
This native is used to attribute the SRL that BEGIN_SRL is going to load. This is usually used for 'in-game' cinematics (not cutscenes but camera stuff) instead of SET_FOCUS_POS_AND_VEL because it loads a specific area of the map which is pretty useful when the camera moves from distant areas. For instance, GTA:O opening cutscene. https://pastebin.com/2EeKVeLA : a list of SRL found in srllist.meta https://pastebin.com/zd9XYUWY here is the content of a SRL file opened with codewalker.
IS_SRL_LOADED
BOOL STREAMING::IS_SRL_LOADED() // 0xD0263801A4C5B0BB 0x670FA2A6 b323
Returns true when the srl from BEGIN_SRL is loaded.
BEGIN_SRL
void STREAMING::BEGIN_SRL() // 0x9BADDC94EF83B823 0x24F49427 b323
END_SRL
void STREAMING::END_SRL() // 0x0A41540E63C9EE17 0x1977C56A b323
Clear the current srl and stop rendering the area selected by PREFETCH_SRL and started with BEGIN_SRL.
SET_SRL_TIME
void STREAMING::SET_SRL_TIME(float p0) // 0xA74A541C6884E7B8 0x30F8A487 b323
_0xEF39EE20C537E98C
void STREAMING::_0xEF39EE20C537E98C(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0xEF39EE20C537E98C 0x814D0752 b323
_0xBEB2D9A1D9A8F55A
void STREAMING::_0xBEB2D9A1D9A8F55A(Any p0, Any p1, Any p2, Any p3) // 0xBEB2D9A1D9A8F55A 0x62F02485 b323
_0x20C6C7E4EB082A7F
void STREAMING::_0x20C6C7E4EB082A7F(BOOL p0) // 0x20C6C7E4EB082A7F 0xA6459CAA b323
_0xF8155A7F03DDFC8E
void STREAMING::_0xF8155A7F03DDFC8E(Any p0) // 0xF8155A7F03DDFC8E 0xF8F515E4 b323
SET_HD_AREA
void STREAMING::SET_HD_AREA(float x, float y, float z, float radius) // 0xB85F26619073E775 0x80BAA035 b323
CLEAR_HD_AREA
void STREAMING::CLEAR_HD_AREA() // 0xCE58B1CFB9290813 0x7CAC6FA0 b323
INIT_CREATOR_BUDGET
void STREAMING::INIT_CREATOR_BUDGET() // 0xB5A4DB34FE89B88A 0xE243B2AF b323
SHUTDOWN_CREATOR_BUDGET
void STREAMING::SHUTDOWN_CREATOR_BUDGET() // 0xCCE26000E9A6FAD7 0x897A510F b323
ADD_MODEL_TO_CREATOR_BUDGET
BOOL STREAMING::ADD_MODEL_TO_CREATOR_BUDGET(Hash modelHash) // 0x0BC3144DEB678666 0xC0E83320 b323
REMOVE_MODEL_FROM_CREATOR_BUDGET
void STREAMING::REMOVE_MODEL_FROM_CREATOR_BUDGET(Hash modelHash) // 0xF086AD9354FAC3A3 0x1C576388 b323
_GET_USED_CREATOR_MODEL_MEMORY_PERCENTAGE
float STREAMING::_GET_USED_CREATOR_MODEL_MEMORY_PERCENTAGE() // 0x3D3D8B3BE5A83D35 0x3E9C4CBE b323
0.0 = no memory used 1.0 = all memory used Maximum model memory (as defined in common\data\missioncreatordata.meta) is 100 MiB GET_*
_SET_ISLAND_HOPPER_ENABLED
void STREAMING::_SET_ISLAND_HOPPER_ENABLED(const char* name, BOOL toggle) // 0x9A9D1BA639675CF1 b2189
Enables the specified island. For more information, see islandhopper.meta
TASK
TASK_PAUSE
void TASK::TASK_PAUSE(Ped ped, int ms) // 0xE73A266DB0CA9042 0x17A64668 b323
Stand still (?)
TASK_STAND_STILL
void TASK::TASK_STAND_STILL(Ped ped, int time) // 0x919BE13EED931959 0x6F80965D b323
Makes the specified ped stand still for (time) milliseconds.
TASK_JUMP
void TASK::TASK_JUMP(Ped ped, BOOL unused, Any p2, Any p3) // 0x0AE4086104E067B1 0x0356E3CE b323
Definition is wrong. This has 4 parameters (Not sure when they were added. v350 has 2, v678 has 4). v350: Ped ped, bool unused v678: Ped ped, bool unused, bool flag1, bool flag2 flag1 = super jump, flag2 = do nothing if flag1 is false and doubles super jump height if flag1 is true.
TASK_COWER
void TASK::TASK_COWER(Ped ped, int duration) // 0x3EB1FE9E8E908E15 0x9CF1C19B b323
TASK_HANDS_UP
void TASK::TASK_HANDS_UP(Ped ped, int duration, Ped facingPed, int p3, BOOL p4) // 0xF2EAB31979A7F910 0x8DCC19C5 b323
In the scripts, p3 was always -1. p3 seems to be duration or timeout of turn animation. Also facingPed can be 0 or -1 so ped will just raise hands up.
UPDATE_TASK_HANDS_UP_DURATION
void TASK::UPDATE_TASK_HANDS_UP_DURATION(Ped ped, int duration) // 0xA98FCAFD7893C834 0x3AA39BE9 b323
TASK_OPEN_VEHICLE_DOOR
void TASK::TASK_OPEN_VEHICLE_DOOR(Ped ped, Vehicle vehicle, int timeOut, int seat, float speed) // 0x965791A9A488A062 0x8EE06BF4 b323
The given ped will try to open the nearest door to 'seat'. Example: telling the ped to open the door for the driver seat does not necessarily mean it will open the driver door, it may choose to open the passenger door instead if that one is closer.
TASK_ENTER_VEHICLE
void TASK::TASK_ENTER_VEHICLE(Ped ped, Vehicle vehicle, int timeout, int seat, float speed, int flag, Any p6) // 0xC20E50AA46D09CA8 0xB8689B4E b323
speed 1.0 = walk, 2.0 = run p5 1 = normal, 3 = teleport to vehicle, 16 = teleport directly into vehicle p6 is always 0 Usage of seat -1 = driver 0 = passenger 1 = left back seat 2 = right back seat 3 = outside left 4 = outside right
TASK_LEAVE_VEHICLE
void TASK::TASK_LEAVE_VEHICLE(Ped ped, Vehicle vehicle, int flags) // 0xD3DBCE61A490BE02 0x7B1141C6 b323
Flags from decompiled scripts: 0 = normal exit and closes door. 1 = normal exit and closes door. 16 = teleports outside, door kept closed. 64 = normal exit and closes door, maybe a bit slower animation than 0. 256 = normal exit but does not close the door. 4160 = ped is throwing himself out, even when the vehicle is still. 262144 = ped moves to passenger seat first, then exits normally Others to be tried out: 320, 512, 131072.
TASK_GET_OFF_BOAT
void TASK::TASK_GET_OFF_BOAT(Ped ped, Vehicle boat) // 0x9C00E77AF14B2DFF 0x4293601F b323
TASK_SKY_DIVE
void TASK::TASK_SKY_DIVE(Ped ped, BOOL p1) // 0x601736CFE536B0A0 0xD3874AFA b323
TASK_PARACHUTE
void TASK::TASK_PARACHUTE(Ped ped, BOOL p1, BOOL p2) // 0xD2F1C53C97EE81AB 0xEC3060A2 b323
Second parameter is unused. second parameter was for jetpack in the early stages of gta and the hard coded code is now removed
TASK_PARACHUTE_TO_TARGET
void TASK::TASK_PARACHUTE_TO_TARGET(Ped ped, float x, float y, float z) // 0xB33E291AFA6BD03A 0xE0104D6C b323
makes ped parachute to coords x y z. Works well with PATHFIND::GET_SAFE_COORD_FOR_PED
SET_PARACHUTE_TASK_TARGET
void TASK::SET_PARACHUTE_TASK_TARGET(Ped ped, float x, float y, float z) // 0xC313379AF0FCEDA7 0x6ED3AD81 b323
SET_PARACHUTE_TASK_THRUST
void TASK::SET_PARACHUTE_TASK_THRUST(Ped ped, float thrust) // 0x0729BAC1B8C64317 0xD07C8AAA b323
TASK_RAPPEL_FROM_HELI
void TASK::TASK_RAPPEL_FROM_HELI(Ped ped, float p1) // 0x09693B0312F91649 0x2C7ADB93 b323
Only appears twice in the scripts. TASK::TASK_RAPPEL_FROM_HELI(PLAYER::PLAYER_PED_ID(), 0x41200000); TASK::TASK_RAPPEL_FROM_HELI(a_0, 0x41200000);
TASK_VEHICLE_DRIVE_TO_COORD
void TASK::TASK_VEHICLE_DRIVE_TO_COORD(Ped ped, Vehicle vehicle, float x, float y, float z, float speed, Any p6, Hash vehicleModel, int drivingMode, float stopRange, float p10) // 0xE2A2AA2F659D77A7 0xE4AC0387 b323
info about driving modes: HTTP://gtaforums.com/topic/822314-guide-driving-styles/ --------------------------------------------------------------- Passing P6 value as floating value didn't throw any errors, though unsure what is it exactly, looks like radius or something. P10 though, it is mentioned as float, however, I used bool and set it to true, that too worked. Here the e.g. code I used Function.Call(Hash.TASK_VEHICLE_DRIVE_TO_COORD, Ped, Vehicle, Cor X, Cor Y, Cor Z, 30f, 1f, Vehicle.GetHashCode(), 16777216, 1f, true);
TASK_VEHICLE_DRIVE_TO_COORD_LONGRANGE
void TASK::TASK_VEHICLE_DRIVE_TO_COORD_LONGRANGE(Ped ped, Vehicle vehicle, float x, float y, float z, float speed, int driveMode, float stopRange) // 0x158BB33F920D360C 0x1490182A b323
TASK_VEHICLE_DRIVE_WANDER
void TASK::TASK_VEHICLE_DRIVE_WANDER(Ped ped, Vehicle vehicle, float speed, int drivingStyle) // 0x480142959D337D00 0x36EC0EB0 b323
TASK_FOLLOW_TO_OFFSET_OF_ENTITY
void TASK::TASK_FOLLOW_TO_OFFSET_OF_ENTITY(Ped ped, Entity entity, float offsetX, float offsetY, float offsetZ, float movementSpeed, int timeout, float stoppingRange, BOOL persistFollowing) // 0x304AE42E357B8C7E 0x2DF5A6AC b323
p6 always -1 p7 always 10.0 p8 always 1
TASK_GO_STRAIGHT_TO_COORD
void TASK::TASK_GO_STRAIGHT_TO_COORD(Ped ped, float x, float y, float z, float speed, int timeout, float targetHeading, float distanceToSlide) // 0xD76B57B44F1E6F8B 0x80A9E7A7 b323
TASK_GO_STRAIGHT_TO_COORD_RELATIVE_TO_ENTITY
void TASK::TASK_GO_STRAIGHT_TO_COORD_RELATIVE_TO_ENTITY(Entity entity1, Entity entity2, float p2, float p3, float p4, float p5, Any p6) // 0x61E360B7E040D12E 0xD26CAC68 b323
TASK_ACHIEVE_HEADING
void TASK::TASK_ACHIEVE_HEADING(Ped ped, float heading, int timeout) // 0x93B93A37987F1F3D 0x0A0E9B42 b323
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 cancelled, and the ped will stay at the heading it managed to reach in the time.
TASK_FLUSH_ROUTE
void TASK::TASK_FLUSH_ROUTE() // 0x841142A1376E9006 0x34219154 b323
MulleKD19: Clears the current point route. Call this before TASK_EXTEND_ROUTE and TASK_FOLLOW_POINT_ROUTE.
TASK_EXTEND_ROUTE
void TASK::TASK_EXTEND_ROUTE(float x, float y, float z) // 0x1E7889778264843A 0x43271F69 b323
MulleKD19: 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.
TASK_FOLLOW_POINT_ROUTE
void TASK::TASK_FOLLOW_POINT_ROUTE(Ped ped, float speed, int unknown) // 0x595583281858626E 0xB837C816 b323
MulleKD19: Makes the ped go on the created point route. ped: The ped to give the task to. speed: The speed to move at in m/s. int: Unknown. Can be 0, 1, 2 or 3. Example: TASK_FLUSH_ROUTE(); TASK_EXTEND_ROUTE(0f, 0f, 70f); TASK_EXTEND_ROUTE(10f, 0f, 70f); TASK_EXTEND_ROUTE(10f, 10f, 70f); TASK_FOLLOW_POINT_ROUTE(GET_PLAYER_PED(), 1f, 0);
TASK_GO_TO_ENTITY
void TASK::TASK_GO_TO_ENTITY(Entity entity, Entity target, int duration, float distance, float speed, float p5, int p6) // 0x6A071245EB0D1882 0x374827C2 b323
The entity will move towards the target until time is over (duration) or get in target's range (distance). p5 and p6 are unknown, but you could leave p5 = 1073741824 or 100 or even 0 (didn't see any difference but on the decompiled scripts, they use 1073741824 mostly) and p6 = 0 Note: I've only tested it on entity -> ped and target -> vehicle. It could work differently on other entities, didn't try it yet. Example: TASK::TASK_GO_TO_ENTITY(pedHandle, vehicleHandle, 5000, 4.0, 100, 1073741824, 0) Ped will run towards the vehicle for 5 seconds and stop when time is over or when he gets 4 meters(?) around the vehicle (with duration = -1, the task duration will be ignored).
TASK_SMART_FLEE_COORD
void TASK::TASK_SMART_FLEE_COORD(Ped ped, float x, float y, float z, float distance, int time, BOOL p6, BOOL p7) // 0x94587F17E9C365D5 0xB2E686FC b323
Makes the specified ped flee the specified distance from the specified position.
TASK_SMART_FLEE_PED
void TASK::TASK_SMART_FLEE_PED(Ped ped, Ped fleeTarget, float distance, Any fleeTime, BOOL p4, BOOL p5) // 0x22B0D0E37CCB840D 0xE52EB560 b323
Makes a ped run away from another ped (fleeTarget). distance = ped will flee this distance. fleeTime = ped will flee for this amount of time, set to "-1" to flee forever
TASK_REACT_AND_FLEE_PED
void TASK::TASK_REACT_AND_FLEE_PED(Ped ped, Ped fleeTarget) // 0x72C896464915D1B1 0x8A632BD8 b323
TASK_SHOCKING_EVENT_REACT
void TASK::TASK_SHOCKING_EVENT_REACT(Ped ped, int eventHandle) // 0x452419CBD838065B 0x9BD00ACF b323
TASK_WANDER_IN_AREA
void TASK::TASK_WANDER_IN_AREA(Ped ped, float x, float y, float z, float radius, float minimalLength, float timeBetweenWalks) // 0xE054346CA3A0F315 0xC6981FB9 b323
TASK_WANDER_STANDARD
void TASK::TASK_WANDER_STANDARD(Ped ped, float p1, int p2) // 0xBB9CE077274F6A1B 0xAF59151A b323
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.
TASK_WANDER_SPECIFIC
void TASK::TASK_WANDER_SPECIFIC(Any p0, Any p1, Any p2, Any p3) // 0x6919A2F136426098 b1868
TASK_VEHICLE_PARK
void TASK::TASK_VEHICLE_PARK(Ped ped, Vehicle vehicle, float x, float y, float z, float heading, int mode, float radius, BOOL keepEngineOn) // 0x0F3E34E968EA374E 0x5C85FF90 b323
Modes: 0 - ignore heading 1 - park forward 2 - park backwards Depending on the angle of approach, the vehicle can park at the specified heading or at its exact opposite (-180) angle. Radius seems to define how close the vehicle has to be -after parking- to the position for this task considered completed. If the value is too small, the vehicle will try to park again until it's exactly where it should be. 20.0 Works well but lower values don't, like the radius is measured in centimeters or something.
TASK_STEALTH_KILL
void TASK::TASK_STEALTH_KILL(Ped killer, Ped target, Hash actionType, float p3, Any p4) // 0xAA5DC05579D60BD9 0x0D64C2FA b323
known "killTypes" are: "AR_stealth_kill_knife" and "AR_stealth_kill_a".
TASK_PLANT_BOMB
void TASK::TASK_PLANT_BOMB(Ped ped, float x, float y, float z, float heading) // 0x965FEC691D55E9BF 0x33457535 b323
TASK_FOLLOW_NAV_MESH_TO_COORD
void TASK::TASK_FOLLOW_NAV_MESH_TO_COORD(Ped ped, float x, float y, float z, float speed, int timeout, float stoppingRange, BOOL persistFollowing, float unk) // 0x15D3A79D4E44B913 0xFE4A10D9 b323
If no timeout, set timeout to -1.
TASK_FOLLOW_NAV_MESH_TO_COORD_ADVANCED
void TASK::TASK_FOLLOW_NAV_MESH_TO_COORD_ADVANCED(Ped ped, float x, float y, float z, float speed, int timeout, float unkFloat, int unkInt, float unkX, float unkY, float unkZ, float unk_40000f) // 0x17F58B88D085DBAC 0x6BF6E296 b323
SET_PED_PATH_CAN_USE_CLIMBOVERS
void TASK::SET_PED_PATH_CAN_USE_CLIMBOVERS(Ped ped, BOOL Toggle) // 0x8E06A6FE76C9EFF4 0xB7B7D442 b323
SET_PED_PATH_CAN_USE_LADDERS
void TASK::SET_PED_PATH_CAN_USE_LADDERS(Ped ped, BOOL Toggle) // 0x77A5B103C87F476E 0x53A879EE b323
SET_PED_PATH_CAN_DROP_FROM_HEIGHT
void TASK::SET_PED_PATH_CAN_DROP_FROM_HEIGHT(Ped ped, BOOL Toggle) // 0xE361C5C71C431A4F 0x394B7AC9 b323
SET_PED_PATH_CLIMB_COST_MODIFIER
void TASK::SET_PED_PATH_CLIMB_COST_MODIFIER(Ped ped, float modifier) // 0x88E32DB8C1A4AA4B 0x55E06443 b323
Default modifier is 1.0, minimum is 0.0 and maximum is 10.0.
SET_PED_PATH_MAY_ENTER_WATER
void TASK::SET_PED_PATH_MAY_ENTER_WATER(Ped ped, BOOL mayEnterWater) // 0xF35425A4204367EC 0x9C606EE3 b323
SET_PED_PATH_PREFER_TO_AVOID_WATER
void TASK::SET_PED_PATH_PREFER_TO_AVOID_WATER(Ped ped, BOOL avoidWater) // 0x38FE1EC73743793C 0x0EA39A29 b323
SET_PED_PATH_AVOID_FIRE
void TASK::SET_PED_PATH_AVOID_FIRE(Ped ped, BOOL avoidFire) // 0x4455517B28441E60 0xDCC5B934 b323
SET_GLOBAL_MIN_BIRD_FLIGHT_HEIGHT
void TASK::SET_GLOBAL_MIN_BIRD_FLIGHT_HEIGHT(float height) // 0x6C6B148586F934F7 0x2AFB14B8 b323
Needs to be looped! And yes, it does work and is not a hash collision. Birds will try to reach the given height.
GET_NAVMESH_ROUTE_DISTANCE_REMAINING
int TASK::GET_NAVMESH_ROUTE_DISTANCE_REMAINING(Ped ped, float* distanceRemaining, BOOL* isPathReady) // 0xC6F5C0BCDC74D62D 0xD9281778 b323
Looks like the last parameter returns true if the path has been calculated, while the first returns the remaining distance to the end of the path. Return value of native is the same as GET_NAVMESH_ROUTE_RESULT Looks like the native returns an int for the path's state: 1 - ??? 2 - ??? 3 - Finished Generating
GET_NAVMESH_ROUTE_RESULT
int TASK::GET_NAVMESH_ROUTE_RESULT(Ped ped) // 0x632E831F382A0FA8 0x96491602 b323
See GET_NAVMESH_ROUTE_DISTANCE_REMAINING for more details.
_0x3E38E28A1D80DDF6
BOOL TASK::_0x3E38E28A1D80DDF6(Ped ped) // 0x3E38E28A1D80DDF6 0x54856309 b323
IS_*
TASK_GO_TO_COORD_ANY_MEANS
void TASK::TASK_GO_TO_COORD_ANY_MEANS(Ped ped, float x, float y, float z, float speed, Any p5, BOOL p6, int walkingStyle, float p8) // 0x5BC448CB78FA3E88 0xF91DF93B b323
example from fm_mission_controller TASK::TASK_GO_TO_COORD_ANY_MEANS(l_649, sub_f7e86(-1, 0), 1.0, 0, 0, 786603, 0xbf800000);
TASK_GO_TO_COORD_ANY_MEANS_EXTRA_PARAMS
void TASK::TASK_GO_TO_COORD_ANY_MEANS_EXTRA_PARAMS(Ped ped, float x, float y, float z, float speed, Any p5, BOOL p6, int walkingStyle, float p8, Any p9, Any p10, Any p11, Any p12) // 0x1DD45F9ECFDB1BC9 0x094B75EF b323
TASK_GO_TO_COORD_ANY_MEANS_EXTRA_PARAMS_WITH_CRUISE_SPEED
void TASK::TASK_GO_TO_COORD_ANY_MEANS_EXTRA_PARAMS_WITH_CRUISE_SPEED(Ped ped, float x, float y, float z, float speed, Any p5, BOOL p6, int walkingStyle, float p8, Any p9, Any p10, Any p11, Any p12, Any p13) // 0xB8ECD61F531A7B02 0x86DC03F9 b323
TASK_PLAY_ANIM
void TASK::TASK_PLAY_ANIM(Ped ped, const char* animDictionary, const char* animationName, float blendInSpeed, float blendOutSpeed, int duration, int flag, float playbackRate, BOOL lockX, BOOL lockY, BOOL lockZ) // 0xEA47FE3719165B94 0x5AB552C6 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json float speed > normal speed is 8.0f ---------------------- float speedMultiplier > multiply the playback speed ---------------------- int duration: time in millisecond ---------------------- -1 _ _ _ _ _ _ _> Default (see flag) 0 _ _ _ _ _ _ _ > Not play at all Small value _ _ > Slow down animation speed Other _ _ _ _ _ > freeze player control until specific time (ms) has _ _ _ _ _ _ _ _ _ passed. (No effect if flag is set to be _ _ _ _ _ _ _ _ _ controllable.) int flag: ---------------------- enum eAnimationFlags { ANIM_FLAG_NORMAL = 0, ANIM_FLAG_REPEAT = 1, ANIM_FLAG_STOP_LAST_FRAME = 2, ANIM_FLAG_UPPERBODY = 16, ANIM_FLAG_ENABLE_PLAYER_CONTROL = 32, ANIM_FLAG_CANCELABLE = 120, }; Odd number : loop infinitely Even number : Freeze at last frame Multiple of 4: Freeze at last frame but controllable 01 to 15 > Full body 10 to 31 > Upper body 32 to 47 > Full body > Controllable 48 to 63 > Upper body > Controllable ... 001 to 255 > Normal 256 to 511 > Garbled ... playbackRate: values are between 0.0 and 1.0 lockX: 0 in most cases 1 for rcmepsilonism8 and rcmpaparazzo_3 > 1 for mini@sprunk lockY: 0 in most cases 1 for missfam5_yoga, missfra1mcs_2_crew_react lockZ: 0 for single player Can be 1 but only for MP
TASK_PLAY_ANIM_ADVANCED
void TASK::TASK_PLAY_ANIM_ADVANCED(Ped ped, const char* animDict, const char* animName, float posX, float posY, float posZ, float rotX, float rotY, float rotZ, float animEnterSpeed, float animExitSpeed, int duration, Any flag, float animTime, Any p14, Any p15) // 0x83CDB10EA29B370B 0x3DDEB0E6 b323
It's similar to TASK_PLAY_ANIM, except the first 6 floats let you specify the initial position and rotation of the task. (Ped gets teleported to the position). Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
STOP_ANIM_TASK
void TASK::STOP_ANIM_TASK(Ped ped, const char* animDictionary, const char* animationName, float p3) // 0x97FF36A1D40EA00A 0x2B520A57 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
TASK_SCRIPTED_ANIMATION
void TASK::TASK_SCRIPTED_ANIMATION(Ped ped, Any* p1, Any* p2, Any* p3, float p4, float p5) // 0x126EF75F1E17ABE5 0xFC2DCF47 b323
From fm_mission_controller.c: reserve_network_mission_objects(get_num_reserved_mission_objects(0) + 1); vVar28 = {0.094f, 0.02f, -0.005f}; vVar29 = {-92.24f, 63.64f, 150.24f}; func_253(&uVar30, joaat("prop_ld_case_01"), Global_1592429.imm_34757[iParam1 <268>], 1, 1, 0, 1); set_entity_lod_dist(net_to_ent(uVar30), 500); attach_entity_to_entity(net_to_ent(uVar30), iParam0, get_ped_bone_index(iParam0, 28422), vVar28, vVar29, 1, 0, 0, 0, 2, 1); Var31.imm_4 = 1065353216; Var31.imm_5 = 1065353216; Var31.imm_9 = 1065353216; Var31.imm_10 = 1065353216; Var31.imm_14 = 1065353216; Var31.imm_15 = 1065353216; Var31.imm_17 = 1040187392; Var31.imm_18 = 1040187392; Var31.imm_19 = -1; Var32.imm_4 = 1065353216; Var32.imm_5 = 1065353216; Var32.imm_9 = 1065353216; Var32.imm_10 = 1065353216; Var32.imm_14 = 1065353216; Var32.imm_15 = 1065353216; Var32.imm_17 = 1040187392; Var32.imm_18 = 1040187392; Var32.imm_19 = -1; Var31 = 1; Var31.imm_1 = "weapons@misc@jerrycan@mp_male"; Var31.imm_2 = "idle"; Var31.imm_20 = 1048633; Var31.imm_4 = 0.5f; Var31.imm_16 = get_hash_key("BONEMASK_ARMONLY_R"); task_scripted_animation(iParam0, &Var31, &Var32, &Var32, 0f, 0.25f); set_model_as_no_longer_needed(joaat("prop_ld_case_01")); remove_anim_dict("anim@heists@biolab@");
PLAY_ENTITY_SCRIPTED_ANIM
void TASK::PLAY_ENTITY_SCRIPTED_ANIM(Any p0, Any* p1, Any* p2, Any* p3, float p4, float p5) // 0x77A1EEC547E7FCF1 0x02F72AE5 b323
STOP_ANIM_PLAYBACK
void TASK::STOP_ANIM_PLAYBACK(Ped ped, int p1, BOOL p2) // 0xEE08C992D238C5D1 0xE5F16398 b323
Looks like p1 may be a flag, still need to do some research, though.
SET_ANIM_WEIGHT
void TASK::SET_ANIM_WEIGHT(Any p0, float p1, Any p2, Any p3, BOOL p4) // 0x207F1A47C0342F48 0x17229D98 b323
SET_ANIM_RATE
void TASK::SET_ANIM_RATE(Any p0, float p1, Any p2, BOOL p3) // 0x032D49C5E359C847 0x6DB46584 b323
SET_ANIM_LOOPED
void TASK::SET_ANIM_LOOPED(Any p0, BOOL p1, Any p2, BOOL p3) // 0x70033C3CC29A1FF4 0x095D61A4 b323
TASK_PLAY_PHONE_GESTURE_ANIMATION
void TASK::TASK_PLAY_PHONE_GESTURE_ANIMATION(Ped ped, const char* animDict, const char* animation, const char* boneMaskType, float p4, float p5, BOOL p6, BOOL p7) // 0x8FBB6758B3B3E9EC 0x1582162C b323
Example from the scripts: TASK::TASK_PLAY_PHONE_GESTURE_ANIMATION(PLAYER::PLAYER_PED_ID(), v_3, v_2, v_4, 0.25, 0.25, 0, 0); ========================================================= ^^ No offense, but Idk how that would really help anyone. As for the animDict & animation, they're both store in a global in all 5 scripts. So if anyone would be so kind as to read that global and comment what strings they use. Thanks. Known boneMaskTypes' "BONEMASK_HEADONLY" "BONEMASK_HEAD_NECK_AND_ARMS" "BONEMASK_HEAD_NECK_AND_L_ARM" "BONEMASK_HEAD_NECK_AND_R_ARM" p4 known args - 0.0f, 0.5f, 0.25f p5 known args - 0.0f, 0.25f p6 known args - 1 if a global if check is passed. p7 known args - 1 if a global if check is passed. The values found above, I found within the 5 scripts this is ever called in. (fmmc_launcher, fm_deathmatch_controller, fm_impromptu_dm_controller, fm_mission_controller, and freemode). ========================================================= Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
TASK_STOP_PHONE_GESTURE_ANIMATION
void TASK::TASK_STOP_PHONE_GESTURE_ANIMATION(Ped ped, Any p1) // 0x3FA00D4F4641BFAE 0x5A32D4B4 b323
IS_PLAYING_PHONE_GESTURE_ANIM
BOOL TASK::IS_PLAYING_PHONE_GESTURE_ANIM(Ped ped) // 0xB8EBB1E9D3588C10 0x500B6805 b323
GET_PHONE_GESTURE_ANIM_CURRENT_TIME
float TASK::GET_PHONE_GESTURE_ANIM_CURRENT_TIME(Ped ped) // 0x47619ABE8B268C60 0x7B72AFD1 b323
GET_PHONE_GESTURE_ANIM_TOTAL_TIME
float TASK::GET_PHONE_GESTURE_ANIM_TOTAL_TIME(Ped ped) // 0x1EE0F68A7C25DEC6 0xEF8C3959 b323
TASK_VEHICLE_PLAY_ANIM
void TASK::TASK_VEHICLE_PLAY_ANIM(Vehicle vehicle, const char* animationSet, const char* animationName) // 0x69F5C3BD0F3EBD89 0x2B28F598 b323
Most probably plays a specific animation on vehicle. For example getting chop out of van etc... Here's how its used - TASK::TASK_VEHICLE_PLAY_ANIM(l_325, "rcmnigel1b", "idle_speedo"); TASK::TASK_VEHICLE_PLAY_ANIM(l_556[0/*1*/], "missfra0_chop_drhome", "InCar_GetOutofBack_Speedo"); FYI : Speedo is the name of van in which chop was put in the mission.
TASK_LOOK_AT_COORD
void TASK::TASK_LOOK_AT_COORD(Entity entity, float x, float y, float z, int duration, Any p5, Any p6) // 0x6FA46612594F7973 0x7B784DD8 b323
p5 = 0, p6 = 2
TASK_LOOK_AT_ENTITY
void TASK::TASK_LOOK_AT_ENTITY(Ped ped, Entity lookAt, int duration, int unknown1, int unknown2) // 0x69F4BE8C8CC4796C 0x991D6619 b323
param3: duration in ms, use -1 to look forever param4: using 2048 is fine param5: using 3 is fine
TASK_CLEAR_LOOK_AT
void TASK::TASK_CLEAR_LOOK_AT(Ped ped) // 0x0F804F1DB19B9689 0x60EB4054 b323
Not clear what it actually does, but here's how script uses it - if (OBJECT::HAS_PICKUP_BEEN_COLLECTED(...) { if(ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID())) { TASK::TASK_CLEAR_LOOK_AT(PLAYER::PLAYER_PED_ID()); } ... } Another one where it doesn't "look" at current player - TASK::TASK_PLAY_ANIM(l_3ED, "missheist_agency2aig_2", "look_at_phone_a", 1000.0, -2.0, -1, 48, v_2, 0, 0, 0); PED::_2208438012482A1A(l_3ED, 0, 0); TASK::TASK_CLEAR_LOOK_AT(l_3ED);
OPEN_SEQUENCE_TASK
void TASK::OPEN_SEQUENCE_TASK(int* taskSequenceId) // 0xE8854A4326B9E12B 0xABA6923E b323
CLOSE_SEQUENCE_TASK
void TASK::CLOSE_SEQUENCE_TASK(int taskSequenceId) // 0x39E72BC99E6360CB 0x1A7CEBD0 b323
TASK_PERFORM_SEQUENCE
void TASK::TASK_PERFORM_SEQUENCE(Ped ped, int taskSequenceId) // 0x5ABA3986D90D8A3B 0x4D9FBD11 b323
TASK_PERFORM_SEQUENCE_LOCALLY
void TASK::TASK_PERFORM_SEQUENCE_LOCALLY(Ped ped, int taskSequenceId) // 0x8C33220C8D78CA0D b944
CLEAR_SEQUENCE_TASK
void TASK::CLEAR_SEQUENCE_TASK(int* taskSequenceId) // 0x3841422E9C488D8C 0x47ED03CE b323
SET_SEQUENCE_TO_REPEAT
void TASK::SET_SEQUENCE_TO_REPEAT(int taskSequenceId, BOOL repeat) // 0x58C70CF3A41E4AE7 0xCDDF1508 b323
GET_SEQUENCE_PROGRESS
int TASK::GET_SEQUENCE_PROGRESS(Ped ped) // 0x00A9010CFE1E3533 0xA3419909 b323
returned values: 0 to 7 = task that's currently in progress, 0 meaning the first one. -1 no task sequence in progress.
GET_IS_TASK_ACTIVE
BOOL TASK::GET_IS_TASK_ACTIVE(Ped ped, int taskIndex) // 0xB0760331C7AA4155 0x86FDDF55 b323
Task index enum: https://alloc8or.re/gta5/doc/enums/eTaskTypeIndex.txt
GET_SCRIPT_TASK_STATUS
int TASK::GET_SCRIPT_TASK_STATUS(Ped ped, Hash taskHash) // 0x77F1BEB8863288D5 0xB2477B23 b323
Gets the status of a script-assigned task. taskHash: https://alloc8or.re/gta5/doc/enums/eScriptTaskHash.txt
GET_ACTIVE_VEHICLE_MISSION_TYPE
int TASK::GET_ACTIVE_VEHICLE_MISSION_TYPE(Vehicle vehicle) // 0x534AEBA6E5ED4CAB 0xAFA914EF b323
https://alloc8or.re/gta5/doc/enums/eVehicleMissionType.txt
TASK_LEAVE_ANY_VEHICLE
void TASK::TASK_LEAVE_ANY_VEHICLE(Ped ped, int p1, int flags) // 0x504D54DF3F6F2247 0xDBDD79FA b323
Flags are the same flags used in TASK_LEAVE_VEHICLE
TASK_AIM_GUN_SCRIPTED
void TASK::TASK_AIM_GUN_SCRIPTED(Ped ped, Hash scriptTask, BOOL p2, BOOL p3) // 0x7A192BE16D373D00 0x9D296BCD b323
TASK_AIM_GUN_SCRIPTED_WITH_TARGET
void TASK::TASK_AIM_GUN_SCRIPTED_WITH_TARGET(Any p0, Any p1, float p2, float p3, float p4, Any p5, BOOL p6, BOOL p7) // 0x8605AF0DE8B3A5AC 0xFD517CE3 b323
UPDATE_TASK_AIM_GUN_SCRIPTED_TARGET
void TASK::UPDATE_TASK_AIM_GUN_SCRIPTED_TARGET(Ped p0, Ped p1, float p2, float p3, float p4, BOOL p5) // 0x9724FB59A3E72AD0 0x67E73525 b323
GET_CLIP_SET_FOR_SCRIPTED_GUN_TASK
const char* TASK::GET_CLIP_SET_FOR_SCRIPTED_GUN_TASK(int p0) // 0x3A8CADC7D37AACC5 0x249EB4EB b323
TASK_AIM_GUN_AT_ENTITY
void TASK::TASK_AIM_GUN_AT_ENTITY(Ped ped, Entity entity, int duration, BOOL p3) // 0x9B53BB6E8943AF53 0xBE32B3B6 b323
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
TASK_TURN_PED_TO_FACE_ENTITY
void TASK::TASK_TURN_PED_TO_FACE_ENTITY(Ped ped, Entity entity, int duration) // 0x5AD23D40115353AC 0x3C37C767 b323
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
TASK_AIM_GUN_AT_COORD
void TASK::TASK_AIM_GUN_AT_COORD(Ped ped, float x, float y, float z, int time, BOOL p5, BOOL p6) // 0x6671F3EEC681BDA1 0xFBF44AD3 b323
TASK_SHOOT_AT_COORD
void TASK::TASK_SHOOT_AT_COORD(Ped ped, float x, float y, float z, int duration, Hash firingPattern) // 0x46A6CC01E0826106 0x601C22E3 b323
Firing Pattern Hash Information: https://pastebin.com/Px036isB
TASK_SHUFFLE_TO_NEXT_VEHICLE_SEAT
void TASK::TASK_SHUFFLE_TO_NEXT_VEHICLE_SEAT(Ped ped, Vehicle vehicle, Any p2) // 0x7AA80209BDA643EB 0xBEAF8F67 b323
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.
CLEAR_PED_TASKS
void TASK::CLEAR_PED_TASKS(Ped ped) // 0xE1EF3C1216AFF2CD 0xDE3316AB b323
CLEAR_PED_SECONDARY_TASK
void TASK::CLEAR_PED_SECONDARY_TASK(Ped ped) // 0x176CECF6F920D707 0xA635F451 b323
TASK_EVERYONE_LEAVE_VEHICLE
void TASK::TASK_EVERYONE_LEAVE_VEHICLE(Vehicle vehicle) // 0x7F93691AB4B92272 0xC1971F30 b323
TASK_GOTO_ENTITY_OFFSET
void TASK::TASK_GOTO_ENTITY_OFFSET(Ped ped, Any p1, Any p2, float x, float y, float z, int duration) // 0xE39B4FF4FDEBDE27 0x1A17A85E b323
TASK_GOTO_ENTITY_OFFSET_XY
void TASK::TASK_GOTO_ENTITY_OFFSET_XY(int p0, Ped oed, int duration, float p3, float p4, float p5, float p6, BOOL p7) // 0x338E7EF52B6095A9 0xBC1E3D0A b323
TASK_TURN_PED_TO_FACE_COORD
void TASK::TASK_TURN_PED_TO_FACE_COORD(Ped ped, float x, float y, float z, int duration) // 0x1DDA930A0AC38571 0x30463D73 b323
duration in milliseconds
TASK_VEHICLE_TEMP_ACTION
void TASK::TASK_VEHICLE_TEMP_ACTION(Ped driver, Vehicle vehicle, int action, int time) // 0xC429DCEEB339E129 0x0679DFB8 b323
'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
TASK_VEHICLE_MISSION
void TASK::TASK_VEHICLE_MISSION(Ped driver, Vehicle vehicle, Vehicle vehicleTarget, int missionType, float p4, Any p5, float p6, float p7, BOOL DriveAgainstTraffic) // 0x659427E0EF36BCDE 0x20609E56 b323
missionType: https://alloc8or.re/gta5/doc/enums/eVehicleMissionType.txt
TASK_VEHICLE_MISSION_PED_TARGET
void TASK::TASK_VEHICLE_MISSION_PED_TARGET(Ped ped, Vehicle vehicle, Ped pedTarget, int missionType, float maxSpeed, int drivingStyle, float minDistance, float p7, BOOL DriveAgainstTraffic) // 0x9454528DF15D657A 0xC81C4677 b323
See TASK_VEHICLE_MISSION
TASK_VEHICLE_MISSION_COORS_TARGET
void TASK::TASK_VEHICLE_MISSION_COORS_TARGET(Ped ped, Vehicle vehicle, float x, float y, float z, int p5, int p6, int p7, float p8, float p9, BOOL DriveAgainstTraffic) // 0xF0AF20AA7731F8C3 0x6719C109 b323
See TASK_VEHICLE_MISSION
TASK_VEHICLE_ESCORT
void TASK::TASK_VEHICLE_ESCORT(Ped ped, Vehicle vehicle, Vehicle targetVehicle, int mode, float speed, int drivingStyle, float minDistance, int p7, float noRoadsDistance) // 0x0FA6E4B75F302400 0x9FDCB250 b323
Makes a ped follow the targetVehicle with <minDistance> in between. note: minDistance is ignored if drivingstyle is avoiding traffic, but Rushed is fine. Mode: The mode defines the relative position to the targetVehicle. The ped will try to position its vehicle there. -1 = behind 0 = ahead 1 = left 2 = right 3 = back left 4 = back right if the target is closer than noRoadsDistance, the driver will ignore pathing/roads and follow you directly. Driving Styles guide: gtaforums.com/topic/822314-guide-driving-styles/
TASK_VEHICLE_FOLLOW
void TASK::TASK_VEHICLE_FOLLOW(Ped driver, Vehicle vehicle, Entity targetEntity, float speed, int drivingStyle, int minDistance) // 0xFC545A9F0626E3B6 0xA8B917D7 b323
Makes a ped in a vehicle follow an entity (ped, vehicle, etc.) drivingStyle: http://gtaforums.com/topic/822314-guide-driving-styles/
TASK_VEHICLE_CHASE
void TASK::TASK_VEHICLE_CHASE(Ped driver, Entity targetEnt) // 0x3C08A8E30363B353 0x55634798 b323
chases targetEnt fast and aggressively -- Makes ped (needs to be in vehicle) chase targetEnt.
TASK_VEHICLE_HELI_PROTECT
void TASK::TASK_VEHICLE_HELI_PROTECT(Ped pilot, Vehicle vehicle, Entity entityToFollow, float targetSpeed, int p4, float radius, int altitude, int p7) // 0x1E09C32048FEFD1C 0x0CB415EE b323
pilot, vehicle and altitude are rather self-explanatory. p4: is unused variable in the function. entityToFollow: you can provide a Vehicle entity or a Ped entity, the heli will protect them. 'targetSpeed': The pilot will dip the nose AS MUCH AS POSSIBLE so as to reach this value AS FAST AS POSSIBLE. As such, you'll want to modulate it as opposed to calling it via a hard-wired, constant #. 'radius' isn't just "stop within radius of X of target" like with ground vehicles. In this case, the pilot will fly an entire circle around 'radius' and continue to do so. NOT CONFIRMED: p7 appears to be a FlyingStyle enum. Still investigating it as of this writing, but playing around with values here appears to result in different -behavior- as opposed to offsetting coordinates, altitude, target speed, etc. NOTE: If the pilot finds enemies, it will engage them until it kills them, but will return to protect the ped/vehicle given shortly thereafter.
SET_TASK_VEHICLE_CHASE_BEHAVIOR_FLAG
void TASK::SET_TASK_VEHICLE_CHASE_BEHAVIOR_FLAG(Ped ped, int flag, BOOL set) // 0xCC665AAC360D31E7 0x2A83083F b323
Flag 8: Medium-aggressive boxing tactic with a bit of PIT Flag 1: Aggressive ramming of suspect Flag 2: Ram attempts Flag 32: Stay back from suspect, no tactical contact. Convoy-like. Flag 16: Ramming, seems to be slightly less aggressive than 1-2.
SET_TASK_VEHICLE_CHASE_IDEAL_PURSUIT_DISTANCE
void TASK::SET_TASK_VEHICLE_CHASE_IDEAL_PURSUIT_DISTANCE(Ped ped, float distance) // 0x639B642FACBE4EDD 0x04FD3EE7 b323
TASK_HELI_CHASE
void TASK::TASK_HELI_CHASE(Ped pilot, Entity entityToFollow, float x, float y, float z) // 0xAC83B1DB38D0ADA0 0xAC290A21 b323
Ped pilot should be in a heli. EntityToFollow can be a vehicle or Ped. x,y,z appear to be how close to the EntityToFollow the heli should be. Scripts use 0.0, 0.0, 80.0. Then the heli tries to position itself 80 units above the EntityToFollow. If you reduce it to -5.0, it tries to go below (if the EntityToFollow is a heli or plane) NOTE: If the pilot finds enemies, it will engage them, then remain there idle, not continuing to chase the Entity given.
TASK_PLANE_CHASE
void TASK::TASK_PLANE_CHASE(Ped pilot, Entity entityToFollow, float x, float y, float z) // 0x2D2386F273FF7A25 0x12FA1C28 b323
TASK_PLANE_LAND
void TASK::TASK_PLANE_LAND(Ped pilot, Vehicle plane, float runwayStartX, float runwayStartY, float runwayStartZ, float runwayEndX, float runwayEndY, float runwayEndZ) // 0xBF19721FA34D32C0 0x5F7E23EA b323
_0x6100B3CEFD43452E
void TASK::_0x6100B3CEFD43452E(Any p0) // 0x6100B3CEFD43452E b2189
_CLEAR_VEHICLE_TASKS
void TASK::_CLEAR_VEHICLE_TASKS(Vehicle vehicle) // 0xDBBC7A2432524127 b1290
Seems to stop the engine
_0x53DDC75BC3AC0A90
void TASK::_0x53DDC75BC3AC0A90(Vehicle vehicle) // 0x53DDC75BC3AC0A90 b1290
CLEAR_*
TASK_PLANE_GOTO_PRECISE_VTOL
void TASK::TASK_PLANE_GOTO_PRECISE_VTOL(Ped ped, Vehicle vehicle, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0xF7F9DCCA89E7505B b1290
TASK_SUBMARINE_GOTO_AND_STOP
void TASK::TASK_SUBMARINE_GOTO_AND_STOP(Any p0, Vehicle submarine, float x, float y, float z, Any p5) // 0xC22B40579A498CA4 b2189
Used in am_vehicle_spawn.ysc and am_mp_submarine.ysc. p0 is always 0, p5 is always 1 p1 is the vehicle handle of the submarine. Submarine must have a driver, but the ped handle is not passed to the native. Speed can be set by calling SET_DRIVE_TASK_CRUISE_SPEED after
TASK_HELI_MISSION
void TASK::TASK_HELI_MISSION(Ped pilot, Vehicle aircraft, Vehicle targetVehicle, Ped targetPed, float destinationX, float destinationY, float destinationZ, int missionFlag, float maxSpeed, float landingRadius, float targetHeading, int unk1, int unk2, Hash unk3, int landingFlags) // 0xDAD029E187A2BEB4 0x0C143E97 b323
Needs more research. Default value of p13 is -1.0 or 0xBF800000. Default value of p14 is 0. Modified examples from "fm_mission_controller.ysc", line ~203551: TASK::TASK_HELI_MISSION(ped, vehicle, 0, 0, posX, posY, posZ, 4, 1.0, -1.0, -1.0, 10, 10, 5.0, 0); TASK::TASK_HELI_MISSION(ped, vehicle, 0, 0, posX, posY, posZ, 4, 1.0, -1.0, -1.0, 0, ?, 5.0, 4096); int mode seams to set mission type 4 = coords target, 23 = ped target. int 14 set to 32 = ped will land at destination. My findings: mode 4 or 7 forces heli to snap to the heading set 8 makes the heli flee from the ped. 9 circles around ped with angle set 10, 11 normal + imitate ped heading 20 makes the heli land when he's near the ped. It won't resume chasing. 21 emulates an helicopter crash 23 makes the heli circle erratically around ped I change p2 to 'vehicleToFollow' as it seems to work like the task natives to set targets. In the heli_taxi script where as the merryweather heli takes you to your waypoint it has no need to follow a vehicle or a ped, so of course both have 0 set.
TASK_HELI_ESCORT_HELI
void TASK::TASK_HELI_ESCORT_HELI(Ped pilot, Vehicle heli1, Vehicle heli2, float p3, float p4, float p5) // 0xB385523325077210 b1290
TASK_PLANE_MISSION
void TASK::TASK_PLANE_MISSION(Ped pilot, Vehicle aircraft, Vehicle targetVehicle, Ped targetPed, float destinationX, float destinationY, float destinationZ, int missionFlag, float angularDrag, float unk, float targetHeading, float maxZ, float minZ, Any p13) // 0x23703CD154E83B88 0x1D007E65 b323
EXAMPLE USAGE: Fly around target (Precautiously, keeps high altitude): Function.Call(Hash.TASK_PLANE_MISSION, pilot, selectedAirplane, 0, 0, Target.X, Target.Y, Target.Z, 4, 100f, 0f, 90f, 0, 200f); Fly around target (Dangerously, keeps VERY low altitude): Function.Call(Hash.TASK_PLANE_MISSION, pilot, selectedAirplane, 0, 0, Target.X, Target.Y, Target.Z, 4, 100f, 0f, 90f, 0, -500f); Fly directly into target: Function.Call(Hash.TASK_PLANE_MISSION, pilot, selectedAirplane, 0, 0, Target.X, Target.Y, Target.Z, 4, 100f, 0f, 90f, 0, -5000f); EXPANDED INFORMATION FOR ADVANCED USAGE (custom pilot) 'physicsSpeed': (THIS IS NOT YOUR ORDINARY SPEED PARAMETER: READ!!) Think of this -first- as a radius value, not a true speed value. The ACTUAL effective speed of the plane will be that of the maximum speed permissible to successfully fly in a -circle- with a radius of 'physicsSpeed'. This also means that the plane must complete a circle before it can begin its "bombing run", its straight line pass towards the target. p9 appears to influence the angle at which a "bombing run" begins, although I can't confirm yet. VERY IMPORTANT: A "bombing run" will only occur if a plane can successfully determine a possible navigable route (the slower the value of 'physicsSpeed', the more precise the pilot can be due to less influence of physics on flightpath). Otherwise, the pilot will continue to patrol around Destination (be it a dynamic Entity position vector or a fixed world coordinate vector.) 0 = Plane's physics are almost entirely frozen, plane appears to "orbit" around precise destination point 1-299 = Blend of "frozen, small radius" vs. normal vs. "accelerated, hyperfast, large radius" 300+ = Vehicle behaves entirely like a normal gameplay plane. 'patrolBlend' (The lower the value, the more the Destination is treated as a "fly AT" rather than a "fly AROUND point".) Scenario: Destination is an Entity on ground level, wide open field -5000 = Pilot kamikazes directly into Entity -1000 = Pilot flies extremely low -around- Entity, very prone to crashing -200 = Pilot flies lower than average around Entity. 0 = Pilot flies around Entity, normal altitude 200 = Pilot flies an extra eighty units or so higher than 0 while flying around Destination (this doesn't seem to correlate directly into distance units.) -- Valid mission types found in the exe: -- 0 = None 1 = Unk 2 = CTaskVehicleRam 3 = CTaskVehicleBlock 4 = CTaskVehicleGoToPlane 5 = CTaskVehicleStop 6 = CTaskVehicleAttack 7 = CTaskVehicleFollow 8 = CTaskVehicleFleeAirborne 9= CTaskVehicleCircle 10 = CTaskVehicleEscort 15 = CTaskVehicleFollowRecording 16 = CTaskVehiclePoliceBehaviour 17 = CTaskVehicleCrash
TASK_PLANE_TAXI
void TASK::TASK_PLANE_TAXI(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0x92C360B5F15D2302 b1103
TASK_BOAT_MISSION
void TASK::TASK_BOAT_MISSION(Ped pedDriver, Vehicle boat, Any p2, Any p3, float x, float y, float z, Any p7, float maxSpeed, int drivingStyle, float p10, Any p11) // 0x15C86013127CE63F 0x5865B031 b323
You need to call PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS after TASK_BOAT_MISSION in order for the task to execute. Working example float vehicleMaxSpeed = VEHICLE::_GET_VEHICLE_MAX_SPEED(ENTITY::GET_ENTITY_MODEL(pedVehicle)); TASK::TASK_BOAT_MISSION(pedDriver, pedVehicle, 0, 0, waypointCoord.x, waypointCoord.y, waypointCoord.z, 4, vehicleMaxSpeed, 786469, -1.0, 7); PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(pedDriver, 1); P8 appears to be driving style flag - see gtaforums.com/topic/822314-guide-driving-styles/ for documentation
TASK_DRIVE_BY
void TASK::TASK_DRIVE_BY(Ped driverPed, Ped targetPed, Vehicle targetVehicle, float targetX, float targetY, float targetZ, float distanceToShoot, int pedAccuracy, BOOL p8, Hash firingPattern) // 0x2F8AF0E82773A171 0x2B84D1C4 b323
Example: TASK::TASK_DRIVE_BY(l_467[1/*22*/], PLAYER::PLAYER_PED_ID(), 0, 0.0, 0.0, 2.0, 300.0, 100, 0, ${firing_pattern_burst_fire_driveby}); Needs working example. Doesn't seem to do anything. I marked p2 as targetVehicle as all these shooting related tasks seem to have that in common. I marked p6 as distanceToShoot as if you think of GTA's Logic with the native SET_VEHICLE_SHOOT natives, it won't shoot till it gets within a certain distance of the target. I marked p7 as pedAccuracy as it seems it's mostly 100 (Completely Accurate), 75, 90, etc. Although this could be the ammo count within the gun, but I highly doubt it. I will change this comment once I find out if it's ammo count or not.
SET_DRIVEBY_TASK_TARGET
void TASK::SET_DRIVEBY_TASK_TARGET(Ped shootingPed, Ped targetPed, Vehicle targetVehicle, float x, float y, float z) // 0xE5B302114D8162EE 0xDA6A6FC1 b323
For p1 & p2 (Ped, Vehicle). I could be wrong, as the only time this native is called in scripts is once and both are 0, but I assume this native will work like SET_MOUNTED_WEAPON_TARGET in which has the same exact amount of parameters and the 1st and last 3 parameters are right and the same for both natives.
CLEAR_DRIVEBY_TASK_UNDERNEATH_DRIVING_TASK
void TASK::CLEAR_DRIVEBY_TASK_UNDERNEATH_DRIVING_TASK(Ped ped) // 0xC35B5CDB2824CF69 0x9B76F7E6 b323
IS_DRIVEBY_TASK_UNDERNEATH_DRIVING_TASK
BOOL TASK::IS_DRIVEBY_TASK_UNDERNEATH_DRIVING_TASK(Ped ped) // 0x8785E6E40C7A8818 0xB23F46E6 b323
CONTROL_MOUNTED_WEAPON
BOOL TASK::CONTROL_MOUNTED_WEAPON(Ped ped) // 0xDCFE42068FE0135A 0x500D9244 b323
Forces the ped to use the mounted weapon. Returns false if task is not possible.
SET_MOUNTED_WEAPON_TARGET
void TASK::SET_MOUNTED_WEAPON_TARGET(Ped shootingPed, Ped targetPed, Vehicle targetVehicle, float x, float y, float z, Any p6, Any p7) // 0xCCD892192C6D2BB9 0x98713C68 b323
Note: Look in decompiled scripts and the times that p1 and p2 aren't 0. They are filled with vars. If you look through out that script what other natives those vars are used in, you can tell p1 is a ped and p2 is a vehicle. Which most likely means if you want the mounted weapon to target a ped set targetVehicle to 0 or vice-versa.
IS_MOUNTED_WEAPON_TASK_UNDERNEATH_DRIVING_TASK
BOOL TASK::IS_MOUNTED_WEAPON_TASK_UNDERNEATH_DRIVING_TASK(Ped ped) // 0xA320EF046186FA3B 0x291E938C b323
TASK_USE_MOBILE_PHONE
void TASK::TASK_USE_MOBILE_PHONE(Ped ped, int p1, Any p2) // 0xBD2A8EC3AF4DE7DB 0x225A38C8 b323
Actually has 3 params, not 2. p0: Ped p1: int (or bool?) p2: int
TASK_USE_MOBILE_PHONE_TIMED
void TASK::TASK_USE_MOBILE_PHONE_TIMED(Ped ped, int duration) // 0x5EE02954A14C69DB 0xC99C19F5 b323
TASK_CHAT_TO_PED
void TASK::TASK_CHAT_TO_PED(Ped ped, Ped target, Any p2, float p3, float p4, float p5, float p6, float p7) // 0x8C338E0263E4FD19 0xA2BE1821 b323
p2 tend to be 16, 17 or 1 p3 to p7 tend to be 0.0
TASK_WARP_PED_INTO_VEHICLE
void TASK::TASK_WARP_PED_INTO_VEHICLE(Ped ped, Vehicle vehicle, int seat) // 0x9A7D091411C5F684 0x65D4A35D b323
Seat Numbers ------------------------------- Driver = -1 Any = -2 Left-Rear = 1 Right-Front = 0 Right-Rear = 2 Extra seats = 3-14(This may differ from vehicle type e.g. Firetruck Rear Stand, Ambulance Rear)
TASK_SHOOT_AT_ENTITY
void TASK::TASK_SHOOT_AT_ENTITY(Entity entity, Entity target, int duration, Hash firingPattern) // 0x08DA95E8298AE772 0xAC0631C9 b323
//this part of the code is to determine at which entity the player is aiming, for example if you want to create a mod where you give orders to peds Entity aimedentity; Player player = PLAYER::PLAYER_ID(); PLAYER::_GET_AIMED_ENTITY(player, &aimedentity); //bg is an array of peds TASK::TASK_SHOOT_AT_ENTITY(bg[i], aimedentity, 5000, MISC::GET_HASH_KEY("FIRING_PATTERN_FULL_AUTO")); in practical usage, getting the entity the player is aiming at and then task the peds to shoot at the entity, at a button press event would be better. Firing Pattern Hash Information: https://pastebin.com/Px036isB
TASK_CLIMB
void TASK::TASK_CLIMB(Ped ped, BOOL unused) // 0x89D9FCC2435112F1 0x90847790 b323
Climbs or vaults the nearest thing.
TASK_CLIMB_LADDER
void TASK::TASK_CLIMB_LADDER(Ped ped, int p1) // 0xB6C987F9285A3814 0x35BB4EE0 b323
TASK_RAPPEL_DOWN_WALL
void TASK::TASK_RAPPEL_DOWN_WALL(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9, Any p10) // 0xEAF66ACDDC794793 b1868
_0x9D252648778160DF
Any TASK::_0x9D252648778160DF(Any p0) // 0x9D252648778160DF b1868
CLEAR_PED_TASKS_IMMEDIATELY
void TASK::CLEAR_PED_TASKS_IMMEDIATELY(Ped ped) // 0xAAA34F8A7CB32098 0xBC045625 b323
Immediately stops the pedestrian from whatever it's doing. They stop fighting, animations, etc. they forget what they were doing.
TASK_PERFORM_SEQUENCE_FROM_PROGRESS
void TASK::TASK_PERFORM_SEQUENCE_FROM_PROGRESS(Any p0, Any p1, Any p2, Any p3) // 0x89221B16730234F0 0xFA60601B b323
SET_NEXT_DESIRED_MOVE_STATE
void TASK::SET_NEXT_DESIRED_MOVE_STATE(float p0) // 0xF1B9F16E89E2C93A 0x4E937D57 b323
This native does absolutely nothing, just a nullsub
SET_PED_DESIRED_MOVE_BLEND_RATIO
void TASK::SET_PED_DESIRED_MOVE_BLEND_RATIO(Ped ped, float p1) // 0x1E982AC8716912C5 0xC65FC712 b323
GET_PED_DESIRED_MOVE_BLEND_RATIO
float TASK::GET_PED_DESIRED_MOVE_BLEND_RATIO(Ped ped) // 0x8517D4A6CA8513ED 0x5FEFAB72 b323
TASK_GOTO_ENTITY_AIMING
void TASK::TASK_GOTO_ENTITY_AIMING(Ped ped, Entity target, float distanceToStopAt, float StartAimingDist) // 0xA9DA48FAB8A76C12 0xF1C493CF b323
eg TASK::TASK_GOTO_ENTITY_AIMING(v_2, PLAYER::PLAYER_PED_ID(), 5.0, 25.0); 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.
TASK_SET_DECISION_MAKER
void TASK::TASK_SET_DECISION_MAKER(Ped ped, Hash p1) // 0xEB8517DDA73720DA 0x830AD50C b323
p1 is always GET_HASH_KEY("empty") in scripts, for the rare times this is used
TASK_SET_SPHERE_DEFENSIVE_AREA
void TASK::TASK_SET_SPHERE_DEFENSIVE_AREA(Any p0, float p1, float p2, float p3, float p4) // 0x933C06518B52A9A4 0x9F3C5D6A b323
TASK_CLEAR_DEFENSIVE_AREA
void TASK::TASK_CLEAR_DEFENSIVE_AREA(Any p0) // 0x95A6C46A31D1917D 0x7A05BF0D b323
TASK_PED_SLIDE_TO_COORD
void TASK::TASK_PED_SLIDE_TO_COORD(Ped ped, float x, float y, float z, float heading, float p5) // 0xD04FE6765D990A06 0x225380EF b323
TASK_PED_SLIDE_TO_COORD_HDG_RATE
void TASK::TASK_PED_SLIDE_TO_COORD_HDG_RATE(Ped ped, float x, float y, float z, float heading, float p5, float p6) // 0x5A4A6A6D3DC64F52 0x38A995C1 b323
ADD_COVER_POINT
ScrHandle TASK::ADD_COVER_POINT(float p0, float p1, float p2, float p3, Any p4, Any p5, Any p6, BOOL p7) // 0xD5C12A75C7B9497F 0xA0AF0B98 b323
REMOVE_COVER_POINT
void TASK::REMOVE_COVER_POINT(ScrHandle coverpoint) // 0xAE287C923D891715 0x0776888B b323
DOES_SCRIPTED_COVER_POINT_EXIST_AT_COORDS
BOOL TASK::DOES_SCRIPTED_COVER_POINT_EXIST_AT_COORDS(float x, float y, float z) // 0xA98B8E3C088E5A31 0x29F97A71 b323
Checks if there is a cover point at position
GET_SCRIPTED_COVER_POINT_COORDS
Vector3 TASK::GET_SCRIPTED_COVER_POINT_COORDS(ScrHandle coverpoint) // 0x594A1028FC2A3E85 0xC6B6CCC1 b323
TASK_COMBAT_PED
void TASK::TASK_COMBAT_PED(Ped ped, Ped targetPed, int p2, int p3) // 0xF166E48407BAC484 0xCB0D8932 b323
Makes the specified ped attack the target ped. p2 should be 0 p3 should be 16
TASK_COMBAT_PED_TIMED
void TASK::TASK_COMBAT_PED_TIMED(Any p0, Ped ped, int p2, Any p3) // 0x944F30DCB7096BDE 0xF5CA2A45 b323
TASK_SEEK_COVER_FROM_POS
void TASK::TASK_SEEK_COVER_FROM_POS(Ped ped, float x, float y, float z, int duration, BOOL p5) // 0x75AC2B60386D89F2 0x83F18EE9 b323
TASK_SEEK_COVER_FROM_PED
void TASK::TASK_SEEK_COVER_FROM_PED(Ped ped, Ped target, int duration, BOOL p3) // 0x84D32B3BEC531324 0xC1EC907E b323
TASK_SEEK_COVER_TO_COVER_POINT
void TASK::TASK_SEEK_COVER_TO_COVER_POINT(Any p0, Any p1, float p2, float p3, float p4, Any p5, BOOL p6) // 0xD43D95C7A869447F 0x3D026B29 b323
TASK_SEEK_COVER_TO_COORDS
void TASK::TASK_SEEK_COVER_TO_COORDS(Ped ped, float x1, float y1, float z1, float x2, float y2, float z2, Any p7, BOOL p8) // 0x39246A6958EF072C 0xFFFE754E b323
from michael2: TASK::TASK_SEEK_COVER_TO_COORDS(ped, 967.5164794921875, -2121.603515625, 30.479299545288086, 978.94677734375, -2125.84130859375, 29.4752, -1, 1); appears to be shorter variation from michael3: TASK::TASK_SEEK_COVER_TO_COORDS(ped, -2231.011474609375, 263.6326599121094, 173.60195922851562, -1, 0);
TASK_PUT_PED_DIRECTLY_INTO_COVER
void TASK::TASK_PUT_PED_DIRECTLY_INTO_COVER(Ped ped, float x, float y, float z, Any timeout, BOOL p5, float p6, BOOL p7, BOOL p8, Any p9, BOOL p10) // 0x4172393E6BE1FECE 0xC9F00E68 b323
TASK_EXIT_COVER
void TASK::TASK_EXIT_COVER(Any p0, Any p1, float p2, float p3, float p4) // 0x79B258E397854D29 0xC829FAC9 b323
TASK_PUT_PED_DIRECTLY_INTO_MELEE
void TASK::TASK_PUT_PED_DIRECTLY_INTO_MELEE(Ped ped, Ped meleeTarget, float p2, float p3, float p4, BOOL p5) // 0x1C6CD14A876FFE39 0x79E1D27D b323
from armenian3.c4 TASK::TASK_PUT_PED_DIRECTLY_INTO_MELEE(PlayerPed, armenianPed, 0.0, -1.0, 0.0, 0);
TASK_TOGGLE_DUCK
void TASK::TASK_TOGGLE_DUCK(BOOL p0, BOOL p1) // 0xAC96609B9995EDF8 0x61CFBCBF b323
used in sequence task both parameters seems to be always 0
TASK_GUARD_CURRENT_POSITION
void TASK::TASK_GUARD_CURRENT_POSITION(Ped p0, float p1, float p2, BOOL p3) // 0x4A58A47A72E3FCB4 0x2FB099E9 b323
From re_prisonvanbreak: TASK::TASK_GUARD_CURRENT_POSITION(l_DD, 35.0, 35.0, 1);
TASK_GUARD_ASSIGNED_DEFENSIVE_AREA
void TASK::TASK_GUARD_ASSIGNED_DEFENSIVE_AREA(Any p0, float p1, float p2, float p3, float p4, float p5, Any p6) // 0xD2A207EEBDF9889B 0x7AF0133D b323
TASK_GUARD_SPHERE_DEFENSIVE_AREA
void TASK::TASK_GUARD_SPHERE_DEFENSIVE_AREA(Ped p0, float p1, float p2, float p3, float p4, float p5, Any p6, float p7, float p8, float p9, float p10) // 0xC946FE14BE0EB5E2 0x86B76CB7 b323
p0 - Guessing PedID p1, p2, p3 - XYZ? p4 - ??? p5 - Maybe the size of sphere from XYZ? p6 - ??? p7, p8, p9 - XYZ again? p10 - Maybe the size of sphere from second XYZ?
TASK_STAND_GUARD
void TASK::TASK_STAND_GUARD(Ped ped, float x, float y, float z, float heading, const char* scenarioName) // 0xAE032F8BBA959E90 0xD130F636 b323
scenarioName example: "WORLD_HUMAN_GUARD_STAND"
SET_DRIVE_TASK_CRUISE_SPEED
void TASK::SET_DRIVE_TASK_CRUISE_SPEED(Ped driver, float cruiseSpeed) // 0x5C9B84BD7D31D908 0x3CEC07B1 b323
SET_DRIVE_TASK_MAX_CRUISE_SPEED
void TASK::SET_DRIVE_TASK_MAX_CRUISE_SPEED(Any p0, float p1) // 0x404A5AA9B9F0B746 0x7FDF6131 b323
SET_DRIVE_TASK_DRIVING_STYLE
void TASK::SET_DRIVE_TASK_DRIVING_STYLE(Ped ped, int drivingStyle) // 0xDACE1BE37D88AF67 0x59C5FAD7 b323
This native is used to set the driving style for specific ped. Driving styles id seems to be: 786468 262144 786469 http://gtaforums.com/topic/822314-guide-driving-styles/
ADD_COVER_BLOCKING_AREA
void TASK::ADD_COVER_BLOCKING_AREA(float playerX, float playerY, float playerZ, float radiusX, float radiusY, float radiusZ, BOOL p6, BOOL p7, BOOL p8, BOOL p9) // 0x45C597097DD7CB81 0x3536946F b323
REMOVE_ALL_COVER_BLOCKING_AREAS
void TASK::REMOVE_ALL_COVER_BLOCKING_AREAS() // 0xDB6708C0B46F56D8 0xCF9221A7 b323
_0xFA83CA6776038F64
void TASK::_0xFA83CA6776038F64(float x, float y, float z) // 0xFA83CA6776038F64 b1493
REMOVE_*
_0x1F351CF1C6475734
void TASK::_0x1F351CF1C6475734(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9) // 0x1F351CF1C6475734 b505
TASK_START_SCENARIO_IN_PLACE
void TASK::TASK_START_SCENARIO_IN_PLACE(Ped ped, const char* scenarioName, int unkDelay, BOOL playEnterAnim) // 0x142A02425FF02BD9 0xE50D6DDE b323
Plays a scenario on a Ped at their current location. unkDelay - Usually 0 or -1, doesn't seem to have any effect. Might be a delay between sequences. playEnterAnim - Plays the "Enter" anim if true, otherwise plays the "Exit" anim. Scenarios that don't have any "Enter" anims won't play if this is set to true. ---- From "am_hold_up.ysc.c4" at line 339: TASK::TASK_START_SCENARIO_IN_PLACE(NETWORK::NET_TO_PED(l_8D._f4), sub_adf(), 0, 1); I'm unsure of what the last two parameters are, however sub_adf() randomly returns 1 of 3 scenarios, those being: WORLD_HUMAN_SMOKING WORLD_HUMAN_HANG_OUT_STREET WORLD_HUMAN_STAND_MOBILE This makes sense, as these are what I commonly see when going by a liquor store. ------------------------- List of scenarioNames: pastebin.com/6mrYTdQv (^ Thank you so fucking much for this) Also these: WORLD_FISH_FLEE DRIVE WORLD_HUMAN_HIKER WORLD_VEHICLE_ATTRACTOR WORLD_VEHICLE_BICYCLE_MOUNTAIN WORLD_VEHICLE_BIKE_OFF_ROAD_RACE WORLD_VEHICLE_BIKER WORLD_VEHICLE_CONSTRUCTION_PASSENGERS WORLD_VEHICLE_CONSTRUCTION_SOLO WORLD_VEHICLE_DRIVE_PASSENGERS WORLD_VEHICLE_DRIVE_SOLO WORLD_VEHICLE_EMPTY WORLD_VEHICLE_PARK_PARALLEL WORLD_VEHICLE_PARK_PERPENDICULAR_NOSE_IN WORLD_VEHICLE_POLICE_BIKE WORLD_VEHICLE_POLICE_CAR WORLD_VEHICLE_POLICE_NEXT_TO_CAR WORLD_VEHICLE_SALTON_DIRT_BIKE WORLD_VEHICLE_TRUCK_LOGS Full list of ped scenarios by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/scenariosCompact.json
TASK_START_SCENARIO_AT_POSITION
void TASK::TASK_START_SCENARIO_AT_POSITION(Ped ped, const char* scenarioName, float x, float y, float z, float heading, int duration, BOOL sittingScenario, BOOL teleport) // 0xFA4EFC79F69D4F07 0xAA2C4AC2 b323
Full list of ped scenarios by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/scenariosCompact.json Also a few more listed at TASK::TASK_START_SCENARIO_IN_PLACE just above. --------------- The first parameter in every scenario has always been a Ped of some sort. The second like TASK_START_SCENARIO_IN_PLACE is the name of the scenario. The next 4 parameters were harder to decipher. After viewing "hairdo_shop_mp.ysc.c4", and being confused from seeing the case in other scripts, they passed the first three of the arguments as one array from a function, and it looked like it was obviously x, y, and z. I haven't seen the sixth parameter go to or over 360, making me believe that it is rotation, but I really can't confirm anything. I have no idea what the last 3 parameters are, but I'll try to find out. -going on the last 3 parameters, they appear to always be "0, 0, 1" p6 -1 also used in scrips p7 used for sitting scenarios p8 teleports ped to position
TASK_USE_NEAREST_SCENARIO_TO_COORD
void TASK::TASK_USE_NEAREST_SCENARIO_TO_COORD(Ped ped, float x, float y, float z, float distance, int duration) // 0x277F471BA9DB000B 0x9C50FBF0 b323
Updated variables An alternative to TASK::TASK_USE_NEAREST_SCENARIO_TO_COORD_WARP. Makes the ped walk to the scenario instead.
TASK_USE_NEAREST_SCENARIO_TO_COORD_WARP
void TASK::TASK_USE_NEAREST_SCENARIO_TO_COORD_WARP(Ped ped, float x, float y, float z, float radius, Any p5) // 0x58E2E0F23F6B76C3 0x1BE9D65C b323
TASK_USE_NEAREST_SCENARIO_CHAIN_TO_COORD
void TASK::TASK_USE_NEAREST_SCENARIO_CHAIN_TO_COORD(Any p0, float p1, float p2, float p3, float p4, Any p5) // 0x9FDA1B3D7E7028B3 0xE32FFB22 b323
TASK_USE_NEAREST_SCENARIO_CHAIN_TO_COORD_WARP
void TASK::TASK_USE_NEAREST_SCENARIO_CHAIN_TO_COORD_WARP(Any p0, float p1, float p2, float p3, float p4, Any p5) // 0x97A28E63F0BA5631 0xBAB4C0AE b323
DOES_SCENARIO_EXIST_IN_AREA
BOOL TASK::DOES_SCENARIO_EXIST_IN_AREA(float x, float y, float z, float radius, BOOL b) // 0x5A59271FFADD33C1 0xFA7F5047 b323
DOES_SCENARIO_OF_TYPE_EXIST_IN_AREA
BOOL TASK::DOES_SCENARIO_OF_TYPE_EXIST_IN_AREA(float p0, float p1, float p2, Any* p3, float p4, BOOL p5) // 0x0A9D0C2A3BBC86C1 0x0FB138A5 b323
IS_SCENARIO_OCCUPIED
BOOL TASK::IS_SCENARIO_OCCUPIED(float p0, float p1, float p2, float p3, BOOL p4) // 0x788756D73AC2E07C 0x697FC008 b323
PED_HAS_USE_SCENARIO_TASK
BOOL TASK::PED_HAS_USE_SCENARIO_TASK(Ped ped) // 0x295E3CCEC879CCD7 0x9BE9C691 b323
PLAY_ANIM_ON_RUNNING_SCENARIO
void TASK::PLAY_ANIM_ON_RUNNING_SCENARIO(Ped ped, const char* animDict, const char* animName) // 0x748040460F8DF5DC 0x1984A5D1 b323
Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
DOES_SCENARIO_GROUP_EXIST
BOOL TASK::DOES_SCENARIO_GROUP_EXIST(const char* scenarioGroup) // 0xF9034C136C9E00D3 0x5F072EB9 b323
Occurrences in the b617d scripts: "ARMY_GUARD", "ARMY_HELI", "Cinema_Downtown", "Cinema_Morningwood", "Cinema_Textile", "City_Banks", "Countryside_Banks", "DEALERSHIP", "GRAPESEED_PLANES", "KORTZ_SECURITY", "LOST_BIKERS", "LSA_Planes", "LSA_Planes", "MP_POLICE", "Observatory_Bikers", "POLICE_POUND1", "POLICE_POUND2", "POLICE_POUND3", "POLICE_POUND4", "POLICE_POUND5" "QUARRY", "SANDY_PLANES", "SCRAP_SECURITY", "SEW_MACHINE", "SOLOMON_GATE", "Triathlon_1_Start", "Triathlon_2_Start", "Triathlon_3_Start" Sometimes used with IS_SCENARIO_GROUP_ENABLED: if (TASK::DOES_SCENARIO_GROUP_EXIST("Observatory_Bikers") && (!TASK::IS_SCENARIO_GROUP_ENABLED("Observatory_Bikers"))) { else if (TASK::IS_SCENARIO_GROUP_ENABLED("BLIMP")) {
IS_SCENARIO_GROUP_ENABLED
BOOL TASK::IS_SCENARIO_GROUP_ENABLED(const char* scenarioGroup) // 0x367A09DED4E05B99 0x90991122 b323
Occurrences in the b617d scripts: "ARMY_GUARD", "ARMY_HELI", "BLIMP", "Cinema_Downtown", "Cinema_Morningwood", "Cinema_Textile", "City_Banks", "Countryside_Banks", "DEALERSHIP", "KORTZ_SECURITY", "LSA_Planes", "MP_POLICE", "Observatory_Bikers", "POLICE_POUND1", "POLICE_POUND2", "POLICE_POUND3", "POLICE_POUND4", "POLICE_POUND5", "Rampage1", "SANDY_PLANES", "SCRAP_SECURITY", "SEW_MACHINE", "SOLOMON_GATE" Sometimes used with DOES_SCENARIO_GROUP_EXIST: if (TASK::DOES_SCENARIO_GROUP_EXIST("Observatory_Bikers") && (!TASK::IS_SCENARIO_GROUP_ENABLED("Observatory_Bikers"))) { else if (TASK::IS_SCENARIO_GROUP_ENABLED("BLIMP")) {
SET_SCENARIO_GROUP_ENABLED
void TASK::SET_SCENARIO_GROUP_ENABLED(const char* scenarioGroup, BOOL p1) // 0x02C8E5B49848664E 0x116997B1 b323
Occurrences in the b617d scripts: pastebin.com/Tvg2PRHU
RESET_SCENARIO_GROUPS_ENABLED
void TASK::RESET_SCENARIO_GROUPS_ENABLED() // 0xDD902D0349AFAD3A 0xBF55025D b323
SET_EXCLUSIVE_SCENARIO_GROUP
void TASK::SET_EXCLUSIVE_SCENARIO_GROUP(const char* scenarioGroup) // 0x535E97E1F7FC0C6A 0x59DB8F26 b323
Groups found in the scripts used with this native: "AMMUNATION", "QUARRY", "Triathlon_1", "Triathlon_2", "Triathlon_3"
RESET_EXCLUSIVE_SCENARIO_GROUP
void TASK::RESET_EXCLUSIVE_SCENARIO_GROUP() // 0x4202BBCB8684563D 0x17F9DFE8 b323
IS_SCENARIO_TYPE_ENABLED
BOOL TASK::IS_SCENARIO_TYPE_ENABLED(const char* scenarioType) // 0x3A815DB3EA088722 0xAE37E969 b323
Occurrences in the b617d scripts: "PROP_HUMAN_SEAT_CHAIR", "WORLD_HUMAN_DRINKING", "WORLD_HUMAN_HANG_OUT_STREET", "WORLD_HUMAN_SMOKING", "WORLD_MOUNTAIN_LION_WANDER", "WORLD_HUMAN_DRINKING" Sometimes used together with MISC::IS_STRING_NULL_OR_EMPTY in the scripts. scenarioType could be the same as scenarioName, used in for example TASK::TASK_START_SCENARIO_AT_POSITION.
SET_SCENARIO_TYPE_ENABLED
void TASK::SET_SCENARIO_TYPE_ENABLED(const char* scenarioType, BOOL toggle) // 0xEB47EC4E34FB7EE1 0xDB18E5DE b323
seems to enable/disable specific scenario-types from happening in the game world. Here are some scenario types from the scripts: "WORLD_MOUNTAIN_LION_REST" "WORLD_MOUNTAIN_LION_WANDER" "DRIVE" "WORLD_VEHICLE_POLICE_BIKE" "WORLD_VEHICLE_POLICE_CAR" "WORLD_VEHICLE_POLICE_NEXT_TO_CAR" "WORLD_VEHICLE_DRIVE_SOLO" "WORLD_VEHICLE_BIKER" "WORLD_VEHICLE_DRIVE_PASSENGERS" "WORLD_VEHICLE_SALTON_DIRT_BIKE" "WORLD_VEHICLE_BICYCLE_MOUNTAIN" "PROP_HUMAN_SEAT_CHAIR" "WORLD_VEHICLE_ATTRACTOR" "WORLD_HUMAN_LEANING" "WORLD_HUMAN_HANG_OUT_STREET" "WORLD_HUMAN_DRINKING" "WORLD_HUMAN_SMOKING" "WORLD_HUMAN_GUARD_STAND" "WORLD_HUMAN_CLIPBOARD" "WORLD_HUMAN_HIKER" "WORLD_VEHICLE_EMPTY" "WORLD_VEHICLE_BIKE_OFF_ROAD_RACE" "WORLD_HUMAN_PAPARAZZI" "WORLD_VEHICLE_PARK_PERPENDICULAR_NOSE_IN" "WORLD_VEHICLE_PARK_PARALLEL" "WORLD_VEHICLE_CONSTRUCTION_SOLO" "WORLD_VEHICLE_CONSTRUCTION_PASSENGERS" "WORLD_VEHICLE_TRUCK_LOGS" -alphazolam scenarioType could be the same as scenarioName, used in for example TASK::TASK_START_SCENARIO_AT_POSITION.
RESET_SCENARIO_TYPES_ENABLED
void TASK::RESET_SCENARIO_TYPES_ENABLED() // 0x0D40EE2A7F2B2D6D 0xF58FDEB4 b323
IS_PED_ACTIVE_IN_SCENARIO
BOOL TASK::IS_PED_ACTIVE_IN_SCENARIO(Ped ped) // 0xAA135F9482C82CC3 0x05038F1A b323
IS_PED_PLAYING_BASE_CLIP_IN_SCENARIO
BOOL TASK::IS_PED_PLAYING_BASE_CLIP_IN_SCENARIO(Ped ped) // 0x621C6E4729388E41 0xA0DA6B1D b323
Used only once (am_mp_property_int) ped was PLAYER_PED_ID() Related to CTaskAmbientClips.
SET_PED_CAN_PLAY_AMBIENT_IDLES
void TASK::SET_PED_CAN_PLAY_AMBIENT_IDLES(Ped ped, BOOL p1, BOOL p2) // 0x8FD89A6240813FD0 0xB5AD044E b323
Appears only in fm_mission_controller and used only 3 times. ped was always PLAYER_PED_ID() p1 was always true p2 was always true
TASK_COMBAT_HATED_TARGETS_IN_AREA
void TASK::TASK_COMBAT_HATED_TARGETS_IN_AREA(Ped ped, float x, float y, float z, float radius, Any p5) // 0x4CF5F55DAC3280A0 0xDF099E18 b323
Despite its name, it only attacks ONE hated target. The one closest to the specified position.
TASK_COMBAT_HATED_TARGETS_AROUND_PED
void TASK::TASK_COMBAT_HATED_TARGETS_AROUND_PED(Ped ped, float radius, int p2) // 0x7BF835BB9E2698C8 0x2E7064E4 b323
Despite its name, it only attacks ONE hated target. The one closest hated target. p2 seems to be always 0
TASK_COMBAT_HATED_TARGETS_AROUND_PED_TIMED
void TASK::TASK_COMBAT_HATED_TARGETS_AROUND_PED_TIMED(Any p0, float p1, Any p2, Any p3) // 0x2BBA30B854534A0C 0xF127AD6A b323
TASK_THROW_PROJECTILE
void TASK::TASK_THROW_PROJECTILE(Ped ped, float x, float y, float z, Any p4, Any p5) // 0x7285951DBF6B5A51 0xF65C20A7 b323
In every case of this native, I've only seen the first parameter passed as 0, although I believe it's a Ped after seeing tasks around it using 0. That's because it's used in a Sequence Task. The last 3 parameters are definitely coordinates after seeing them passed in other scripts, and even being used straight from the player's coordinates. --- It seems that - in the decompiled scripts - this native was used on a ped who was in a vehicle to throw a projectile out the window at the player. This is something any ped will naturally do if they have a throwable and they are doing driveby-combat (although not very accurately). It is possible, however, that this is how SWAT throws smoke grenades at the player when in cover. ---------------------------------------------------- The first comment is right it definately is the ped as if you look in script finale_heist2b.c line 59628 in Xbox Scripts atleast you will see task_throw_projectile and the first param is Local_559[2 <14>] if you look above it a little bit line 59622 give_weapon_to_ped uses the same exact param Local_559[2 <14>] and we all know the first param of that native is ped. So it guaranteed has to be ped. 0 just may mean to use your ped by default for some reason.
TASK_SWAP_WEAPON
void TASK::TASK_SWAP_WEAPON(Ped ped, BOOL p1) // 0xA21C51255B205245 0xDAF4F8FC b323
TASK_RELOAD_WEAPON
void TASK::TASK_RELOAD_WEAPON(Ped ped, BOOL unused) // 0x62D2916F56B9CD2D 0xCA6E91FD b323
The 2nd param (unused) is not implemented. ----------------------------------------------------------------------- The only occurrence I found in a R* script ("assassin_construction.ysc.c4"): if (((v_3 < v_4) && (TASK::GET_SCRIPT_TASK_STATUS(PLAYER::PLAYER_PED_ID(), 0x6a67a5cc) != 1)) && (v_5 > v_3)) { TASK::TASK_RELOAD_WEAPON(PLAYER::PLAYER_PED_ID(), 1); }
IS_PED_GETTING_UP
BOOL TASK::IS_PED_GETTING_UP(Ped ped) // 0x2A74E1D5F2F00EEC 0x320813E6 b323
TASK_WRITHE
void TASK::TASK_WRITHE(Ped ped, Ped target, int time, int p3, Any p4, Any p5) // 0xCDDC2B77CE54AC6E 0x0FDC54FC b323
EX: Function.Call(Ped1, Ped2, Time, 0); The last parameter is always 0 for some reason I do not know. The first parameter is the pedestrian who will writhe to the pedestrian in the other parameter. The third paremeter is how long until the Writhe task ends. When the task ends, the ped will die. If set to -1, he will not die automatically, and the task will continue until something causes it to end. This can be being touched by an entity, being shot, explosion, going into ragdoll, having task cleared. Anything that ends the current task will kill the ped at this point. MulleDK19: Third parameter does not appear to be time. The last parameter is not implemented (It's not used, regardless of value).
IS_PED_IN_WRITHE
BOOL TASK::IS_PED_IN_WRITHE(Ped ped) // 0xDEB6D52126E7D640 0x09E61921 b323
This native checks if a ped is on the ground, in pain from a (gunshot) wound. Returns `true` if the ped is in writhe, `false` otherwise.
OPEN_PATROL_ROUTE
void TASK::OPEN_PATROL_ROUTE(const char* patrolRoute) // 0xA36BFB5EE89F3D82 0xF33F83CA b323
patrolRoutes found in the b617d scripts: "miss_Ass0", "miss_Ass1", "miss_Ass2", "miss_Ass3", "miss_Ass4", "miss_Ass5", "miss_Ass6", "MISS_PATROL_6", "MISS_PATROL_7", "MISS_PATROL_8", "MISS_PATROL_9", "miss_Tower_01", "miss_Tower_02", "miss_Tower_03", "miss_Tower_04", "miss_Tower_05", "miss_Tower_06", "miss_Tower_07", "miss_Tower_08", "miss_Tower_10"
CLOSE_PATROL_ROUTE
void TASK::CLOSE_PATROL_ROUTE() // 0xB043ECA801B8CBC1 0x67305E59 b323
ADD_PATROL_ROUTE_NODE
void TASK::ADD_PATROL_ROUTE_NODE(int p0, const char* p1, float x1, float y1, float z1, float x2, float y2, float z2, int p8) // 0x8EDF950167586B7C 0x21B48F10 b323
Example: TASK::ADD_PATROL_ROUTE_NODE(2, "WORLD_HUMAN_GUARD_STAND", -193.4915, -2378.864990234375, 10.9719, -193.4915, -2378.864990234375, 10.9719, 3000); p0 is between 0 and 4 in the scripts. p1 is "WORLD_HUMAN_GUARD_STAND" or "StandGuard". p2, p3 and p4 is only one parameter sometimes in the scripts. Most likely a Vector3 hence p2, p3 and p4 are coordinates. Examples: TASK::ADD_PATROL_ROUTE_NODE(1, "WORLD_HUMAN_GUARD_STAND", l_739[7/*3*/], 0.0, 0.0, 0.0, 0); TASK::ADD_PATROL_ROUTE_NODE(1, "WORLD_HUMAN_GUARD_STAND", l_B0[17/*44*/]._f3, l_B0[17/*44*/]._f3, 2000); p5, p6 and p7 are for example set to: 1599.0406494140625, 2713.392578125, 44.4309. p8 is an int, often random set to for example: MISC::GET_RANDOM_INT_IN_RANGE(5000, 10000).
ADD_PATROL_ROUTE_LINK
void TASK::ADD_PATROL_ROUTE_LINK(Any p0, Any p1) // 0x23083260DEC3A551 0xD8761BB3 b323
CREATE_PATROL_ROUTE
void TASK::CREATE_PATROL_ROUTE() // 0xAF8A443CCC8018DC 0x0A6C7864 b323
DELETE_PATROL_ROUTE
void TASK::DELETE_PATROL_ROUTE(const char* patrolRoute) // 0x7767DD9D65E91319 0x2A4E6706 b323
From the b617d scripts: TASK::DELETE_PATROL_ROUTE("miss_merc0"); TASK::DELETE_PATROL_ROUTE("miss_merc1"); TASK::DELETE_PATROL_ROUTE("miss_merc2"); TASK::DELETE_PATROL_ROUTE("miss_dock");
TASK_PATROL
void TASK::TASK_PATROL(Ped ped, const char* p1, Any p2, BOOL p3, BOOL p4) // 0xBDA5DF49D080FE4E 0xB92E5AF6 b323
After looking at some scripts the second parameter seems to be an id of some kind. Here are some I found from some R* scripts: "miss_Tower_01" (this went from 01 - 10) "miss_Ass0" (0, 4, 6, 3) "MISS_PATROL_8" I think they're patrol routes, but I'm not sure. And I believe the 3rd parameter is a BOOL, but I can't confirm other than only seeing 0 and 1 being passed. As far as I can see the patrol routes names such as "miss_Ass0" have been defined earlier in the scripts. This leads me to believe we can defined our own new patrol routes by following the same approach. From the scripts TASK::OPEN_PATROL_ROUTE("miss_Ass0"); TASK::ADD_PATROL_ROUTE_NODE(0, "WORLD_HUMAN_GUARD_STAND", l_738[0/*3*/], -139.4076690673828, -993.4732055664062, 26.2754, MISC::GET_RANDOM_INT_IN_RANGE(5000, 10000)); TASK::ADD_PATROL_ROUTE_NODE(1, "WORLD_HUMAN_GUARD_STAND", l_738[1/*3*/], -116.1391830444336, -987.4984130859375, 26.38541030883789, MISC::GET_RANDOM_INT_IN_RANGE(5000, 10000)); TASK::ADD_PATROL_ROUTE_NODE(2, "WORLD_HUMAN_GUARD_STAND", l_738[2/*3*/], -128.46847534179688, -979.0340576171875, 26.2754, MISC::GET_RANDOM_INT_IN_RANGE(5000, 10000)); TASK::ADD_PATROL_ROUTE_LINK(0, 1); TASK::ADD_PATROL_ROUTE_LINK(1, 2); TASK::ADD_PATROL_ROUTE_LINK(2, 0); TASK::CLOSE_PATROL_ROUTE(); TASK::CREATE_PATROL_ROUTE();
TASK_STAY_IN_COVER
void TASK::TASK_STAY_IN_COVER(Ped ped) // 0xE5DA8615A6180789 0xA27A9413 b323
Makes the ped run to take cover
ADD_VEHICLE_SUBTASK_ATTACK_COORD
void TASK::ADD_VEHICLE_SUBTASK_ATTACK_COORD(Ped ped, float x, float y, float z) // 0x5CF0D8F9BBA0DD75 0x50779A2C b323
x, y, z: offset in world coords from some entity.
ADD_VEHICLE_SUBTASK_ATTACK_PED
void TASK::ADD_VEHICLE_SUBTASK_ATTACK_PED(Ped ped, Ped ped2) // 0x85F462BADC7DA47F 0x80461113 b323
TASK_VEHICLE_SHOOT_AT_PED
void TASK::TASK_VEHICLE_SHOOT_AT_PED(Ped ped, Ped target, float p2) // 0x10AB107B887214D8 0x59677BA0 b323
TASK_VEHICLE_AIM_AT_PED
void TASK::TASK_VEHICLE_AIM_AT_PED(Ped ped, Ped target) // 0xE41885592B08B097 0x920AE6DB b323
TASK_VEHICLE_SHOOT_AT_COORD
void TASK::TASK_VEHICLE_SHOOT_AT_COORD(Ped ped, float x, float y, float z, float p4) // 0x5190796ED39C9B6D 0xA7AAA4D6 b323
TASK_VEHICLE_AIM_AT_COORD
void TASK::TASK_VEHICLE_AIM_AT_COORD(Ped ped, float x, float y, float z) // 0x447C1E9EF844BC0F 0x010F47CE b323
TASK_VEHICLE_GOTO_NAVMESH
void TASK::TASK_VEHICLE_GOTO_NAVMESH(Ped ped, Vehicle vehicle, float x, float y, float z, float speed, int behaviorFlag, float stoppingRange) // 0x195AEEB13CEFE2EE 0x55CF3BCD b323
Differs from TASK_VEHICLE_DRIVE_TO_COORDS in that it will pick the shortest possible road route without taking one-way streets and other "road laws" into consideration. WARNING: A behaviorFlag value of 0 will result in a clunky, stupid driver! Recommended settings: speed = 30.0f, behaviorFlag = 156, stoppingRange = 5.0f; If you simply want to have your driver move to a fixed location, call it only once, or, when necessary in the event of interruption. If using this to continually follow a Ped who is on foot: You will need to run this in a tick loop. Call it in with the Ped's updated coordinates every 20 ticks or so and you will have one hell of a smart, fast-reacting NPC driver -- provided he doesn't get stuck. If your update frequency is too fast, the Ped may not have enough time to figure his way out of being stuck, and thus, remain stuck. One way around this would be to implement an "anti-stuck" mechanism, which allows the driver to realize he's stuck, temporarily pause the tick, unstuck, then resume the tick. EDIT: This is being discussed in more detail at http://gtaforums.com/topic/818504-any-idea-on-how-to-make-peds-clever-and-insanely-fast-c/
TASK_GO_TO_COORD_WHILE_AIMING_AT_COORD
void TASK::TASK_GO_TO_COORD_WHILE_AIMING_AT_COORD(Ped ped, float x, float y, float z, float aimAtX, float aimAtY, float aimAtZ, float moveSpeed, BOOL p8, float p9, float p10, BOOL p11, Any flags, BOOL p13, Hash firingPattern) // 0x11315AB3385B8AC0 0x1552DC91 b323
movement_speed: mostly 2f, but also 1/1.2f, etc. p8: always false p9: 2f p10: 0.5f p11: true p12: 0 / 512 / 513, etc. p13: 0 firing_pattern: ${firing_pattern_full_auto}, 0xC6EE6B4C
TASK_GO_TO_COORD_WHILE_AIMING_AT_ENTITY
void TASK::TASK_GO_TO_COORD_WHILE_AIMING_AT_ENTITY(Any p0, float p1, float p2, float p3, Any p4, float p5, BOOL p6, float p7, float p8, BOOL p9, Any p10, BOOL p11, Any p12, Any p13) // 0xB2A16444EAD9AE47 0x9BD52ABD b323
TASK_GO_TO_COORD_AND_AIM_AT_HATED_ENTITIES_NEAR_COORD
void TASK::TASK_GO_TO_COORD_AND_AIM_AT_HATED_ENTITIES_NEAR_COORD(Ped pedHandle, float goToLocationX, float goToLocationY, float goToLocationZ, float focusLocationX, float focusLocationY, float focusLocationZ, float speed, BOOL shootAtEnemies, float distanceToStopAt, float noRoadsDistance, BOOL unkTrue, int unkFlag, int aimingFlag, Hash firingPattern) // 0xA55547801EB331FC 0x3F91358E b323
The ped will walk or run towards goToLocation, aiming towards goToLocation or focusLocation (depending on the aimingFlag) and shooting if shootAtEnemies = true to any enemy in his path. If the ped is closer than noRoadsDistance, the ped will ignore pathing/navmesh and go towards goToLocation directly. This could cause the ped to get stuck behind tall walls if the goToLocation is on the other side. To avoid this, use 0.0f and the ped will always use pathing/navmesh to reach his destination. If the speed is set to 0.0f, the ped will just stand there while aiming, if set to 1.0f he will walk while aiming, 2.0f will run while aiming. The ped will stop aiming when he is closer than distanceToStopAt to goToLocation. I still can't figure out what unkTrue is used for. I don't notice any difference if I set it to false but in the decompiled scripts is always true. I think that unkFlag, like the driving styles, could be a flag that "work as a list of 32 bits converted to a decimal integer. Each bit acts as a flag, and enables or disables a function". What leads me to this conclusion is the fact that in the decompiled scripts, unkFlag takes values like: 0, 1, 5 (101 in binary) and 4097 (4096 + 1 or 1000000000001 in binary). For now, I don't know what behavior enable or disable this possible flag so I leave it at 0. Note: After some testing, using unkFlag = 16 (0x10) enables the use of sidewalks while moving towards goToLocation. The aimingFlag takes 2 values: 0 to aim at the focusLocation, 1 to aim at where the ped is heading (goToLocation). Example: enum AimFlag { AimAtFocusLocation, AimAtGoToLocation }; Vector3 goToLocation1 = { 996.2867f, 0, -2143.044f, 0, 28.4763f, 0 }; // remember the padding. Vector3 goToLocation2 = { 990.2867f, 0, -2140.044f, 0, 28.4763f, 0 }; // remember the padding. Vector3 focusLocation = { 994.3478f, 0, -2136.118f, 0, 29.2463f, 0 }; // the coord z should be a little higher, around +1.0f to avoid aiming at the ground // 1st example TASK::TASK_GO_TO_COORD_AND_AIM_AT_HATED_ENTITIES_NEAR_COORD(pedHandle, goToLocation1.x, goToLocation1.y, goToLocation1.z, focusLocation.x, focusLocation.y, focusLocation.z, 2.0f /*run*/, true /*shoot*/, 3.0f /*stop at*/, 0.0f /*noRoadsDistance*/, true /*always true*/, 0 /*possible flag*/, AimFlag::AimAtGoToLocation, -957453492 /*FullAuto pattern*/); // 2nd example TASK::TASK_GO_TO_COORD_AND_AIM_AT_HATED_ENTITIES_NEAR_COORD(pedHandle, goToLocation2.x, goToLocation2.y, goToLocation2.z, focusLocation.x, focusLocation.y, focusLocation.z, 1.0f /*walk*/, false /*don't shoot*/, 3.0f /*stop at*/, 0.0f /*noRoadsDistance*/, true /*always true*/, 0 /*possible flag*/, AimFlag::AimAtFocusLocation, -957453492 /*FullAuto pattern*/); 1st example: The ped (pedhandle) will run towards goToLocation1. While running and aiming towards goToLocation1, the ped will shoot on sight to any enemy in his path, using "FullAuto" firing pattern. The ped will stop once he is closer than distanceToStopAt to goToLocation1. 2nd example: The ped will walk towards goToLocation2. This time, while walking towards goToLocation2 and aiming at focusLocation, the ped will point his weapon on sight to any enemy in his path without shooting. The ped will stop once he is closer than distanceToStopAt to goToLocation2.
TASK_GO_TO_ENTITY_WHILE_AIMING_AT_COORD
void TASK::TASK_GO_TO_ENTITY_WHILE_AIMING_AT_COORD(Any p0, Any p1, float p2, float p3, float p4, float p5, BOOL p6, float p7, float p8, BOOL p9, BOOL p10, Any p11) // 0x04701832B739DCE5 0xD896CD82 b323
TASK_GO_TO_ENTITY_WHILE_AIMING_AT_ENTITY
void TASK::TASK_GO_TO_ENTITY_WHILE_AIMING_AT_ENTITY(Ped ped, Entity entityToWalkTo, Entity entityToAimAt, float speed, BOOL shootatEntity, float p5, float p6, BOOL p7, BOOL p8, Hash firingPattern) // 0x97465886D35210E9 0x68E36B7A b323
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.
SET_HIGH_FALL_TASK
void TASK::SET_HIGH_FALL_TASK(Ped ped, Any p1, Any p2, Any p3) // 0x8C825BDC7741D37C 0xBBB26172 b323
Makes the ped ragdoll like when falling from a great height
REQUEST_WAYPOINT_RECORDING
void TASK::REQUEST_WAYPOINT_RECORDING(const char* name) // 0x9EEFB62EB27B5792 0xAFABFB5D b323
Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json For a full list of the points, see here: goo.gl/wIH0vn Max number of loaded recordings is 32.
GET_IS_WAYPOINT_RECORDING_LOADED
BOOL TASK::GET_IS_WAYPOINT_RECORDING_LOADED(const char* name) // 0xCB4E8BE8A0063C5D 0x87125F5D b323
Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json
REMOVE_WAYPOINT_RECORDING
void TASK::REMOVE_WAYPOINT_RECORDING(const char* name) // 0xFF1B8B4AA1C25DC8 0x624530B0 b323
Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json
WAYPOINT_RECORDING_GET_NUM_POINTS
BOOL TASK::WAYPOINT_RECORDING_GET_NUM_POINTS(const char* name, int* points) // 0x5343532C01A07234 0xF5F9B71E b323
Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json For a full list of the points, see here: goo.gl/wIH0vn
WAYPOINT_RECORDING_GET_COORD
BOOL TASK::WAYPOINT_RECORDING_GET_COORD(const char* name, int point, Vector3* coord) // 0x2FB897405C90B361 0x19266913 b323
Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json For a full list of the points, see here: goo.gl/wIH0vn
WAYPOINT_RECORDING_GET_SPEED_AT_POINT
float TASK::WAYPOINT_RECORDING_GET_SPEED_AT_POINT(const char* name, int point) // 0x005622AEBC33ACA9 0xC765633A b323
Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json
WAYPOINT_RECORDING_GET_CLOSEST_WAYPOINT
BOOL TASK::WAYPOINT_RECORDING_GET_CLOSEST_WAYPOINT(const char* name, float x, float y, float z, int* point) // 0xB629A298081F876F 0xC4CD35AF b323
Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json For a full list of the points, see here: goo.gl/wIH0vn
TASK_FOLLOW_WAYPOINT_RECORDING
void TASK::TASK_FOLLOW_WAYPOINT_RECORDING(Any p0, Any p1, Any p2, Any p3, Any p4) // 0x0759591819534F7B 0xADF9904D b323
IS_WAYPOINT_PLAYBACK_GOING_ON_FOR_PED
BOOL TASK::IS_WAYPOINT_PLAYBACK_GOING_ON_FOR_PED(Any p0) // 0xE03B3F2D3DC59B64 0x85B7725F b323
GET_PED_WAYPOINT_PROGRESS
int TASK::GET_PED_WAYPOINT_PROGRESS(Ped ped) // 0x2720AAA75001E094 0x3595B104 b323
GET_PED_WAYPOINT_DISTANCE
float TASK::GET_PED_WAYPOINT_DISTANCE(Any p0) // 0xE6A877C64CAF1BC5 0x084B35B0 b323
SET_PED_WAYPOINT_ROUTE_OFFSET
Any TASK::SET_PED_WAYPOINT_ROUTE_OFFSET(Any p0, Any p1, Any p2, Any p3) // 0xED98E10B0AFCE4B4 0xF867F747 b323
GET_WAYPOINT_DISTANCE_ALONG_ROUTE
float TASK::GET_WAYPOINT_DISTANCE_ALONG_ROUTE(const char* p0, int p1) // 0xA5B769058763E497 0xE8422AC4 b323
WAYPOINT_PLAYBACK_GET_IS_PAUSED
BOOL TASK::WAYPOINT_PLAYBACK_GET_IS_PAUSED(Any p0) // 0x701375A7D43F01CB 0xA6BB5717 b323
WAYPOINT_PLAYBACK_PAUSE
void TASK::WAYPOINT_PLAYBACK_PAUSE(Any p0, BOOL p1, BOOL p2) // 0x0F342546AA06FED5 0xFE39ECF8 b323
WAYPOINT_PLAYBACK_RESUME
void TASK::WAYPOINT_PLAYBACK_RESUME(Any p0, BOOL p1, Any p2, Any p3) // 0x244F70C84C547D2D 0x50F392EF b323
WAYPOINT_PLAYBACK_OVERRIDE_SPEED
void TASK::WAYPOINT_PLAYBACK_OVERRIDE_SPEED(Any p0, float p1, BOOL p2) // 0x7D7D2B47FA788E85 0x23E6BA96 b323
WAYPOINT_PLAYBACK_USE_DEFAULT_SPEED
void TASK::WAYPOINT_PLAYBACK_USE_DEFAULT_SPEED(Any p0) // 0x6599D834B12D0800 0x1BBB2CAC b323
USE_WAYPOINT_RECORDING_AS_ASSISTED_MOVEMENT_ROUTE
void TASK::USE_WAYPOINT_RECORDING_AS_ASSISTED_MOVEMENT_ROUTE(const char* name, BOOL p1, float p2, float p3) // 0x5A353B8E6B1095B5 0x4DFD5FEC b323
WAYPOINT_PLAYBACK_START_AIMING_AT_PED
void TASK::WAYPOINT_PLAYBACK_START_AIMING_AT_PED(Any p0, Any p1, BOOL p2) // 0x20E330937C399D29 0x75E60CF6 b323
WAYPOINT_PLAYBACK_START_AIMING_AT_COORD
void TASK::WAYPOINT_PLAYBACK_START_AIMING_AT_COORD(Any p0, float p1, float p2, float p3, BOOL p4) // 0x8968400D900ED8B3 0xF120A34E b323
WAYPOINT_PLAYBACK_START_SHOOTING_AT_PED
void TASK::WAYPOINT_PLAYBACK_START_SHOOTING_AT_PED(Any p0, Any p1, BOOL p2, Any p3) // 0xE70BA7B90F8390DC 0xBD5F0EB8 b323
WAYPOINT_PLAYBACK_START_SHOOTING_AT_COORD
void TASK::WAYPOINT_PLAYBACK_START_SHOOTING_AT_COORD(Any p0, float p1, float p2, float p3, BOOL p4, Any p5) // 0x057A25CFCC9DB671 0xCDDB44D5 b323
WAYPOINT_PLAYBACK_STOP_AIMING_OR_SHOOTING
void TASK::WAYPOINT_PLAYBACK_STOP_AIMING_OR_SHOOTING(Any p0) // 0x47EFA040EBB8E2EA 0x6D7CF40C b323
ASSISTED_MOVEMENT_REQUEST_ROUTE
void TASK::ASSISTED_MOVEMENT_REQUEST_ROUTE(const char* route) // 0x817268968605947A 0x48262EDA b323
Routes: "1_FIBStairs", "2_FIBStairs", "3_FIBStairs", "4_FIBStairs", "5_FIBStairs", "5_TowardsFire", "6a_FIBStairs", "7_FIBStairs", "8_FIBStairs", "Aprtmnt_1", "AssAfterLift", "ATM_1", "coroner2", "coroner_stairs", "f5_jimmy1", "fame1", "family5b", "family5c", "Family5d", "family5d", "FIB_Glass1", "FIB_Glass2", "FIB_Glass3", "finaBroute1A", "finalb1st", "finalB1sta", "finalbround", "finalbroute2", "Hairdresser1", "jan_foyet_ft_door", "Jo_3", "Lemar1", "Lemar2", "mansion_1", "Mansion_1", "pols_1", "pols_2", "pols_3", "pols_4", "pols_5", "pols_6", "pols_7", "pols_8", "Pro_S1", "Pro_S1a", "Pro_S2", "Towards_case", "trev_steps", "tunrs1", "tunrs2", "tunrs3", "Wave01457s"
ASSISTED_MOVEMENT_REMOVE_ROUTE
void TASK::ASSISTED_MOVEMENT_REMOVE_ROUTE(const char* route) // 0x3548536485DD792B 0xB3CEC06F b323
ASSISTED_MOVEMENT_IS_ROUTE_LOADED
BOOL TASK::ASSISTED_MOVEMENT_IS_ROUTE_LOADED(const char* route) // 0x60F9A4393A21F741 0x79B067AF b323
ASSISTED_MOVEMENT_SET_ROUTE_PROPERTIES
void TASK::ASSISTED_MOVEMENT_SET_ROUTE_PROPERTIES(const char* route, int props) // 0xD5002D78B7162E1B 0x01CAAFCC b323
ASSISTED_MOVEMENT_OVERRIDE_LOAD_DISTANCE_THIS_FRAME
void TASK::ASSISTED_MOVEMENT_OVERRIDE_LOAD_DISTANCE_THIS_FRAME(float dist) // 0x13945951E16EF912 0x8FB923EC b323
TASK_VEHICLE_FOLLOW_WAYPOINT_RECORDING
void TASK::TASK_VEHICLE_FOLLOW_WAYPOINT_RECORDING(Ped ped, Vehicle vehicle, const char* WPRecording, int p3, int p4, int p5, int p6, float p7, BOOL p8, float p9) // 0x3123FAA6DB1CF7ED 0x959818B6 b323
task_vehicle_follow_waypoint_recording(Ped p0, Vehicle p1, string p2, int p3, int p4, int p5, int p6, float.x p7, float.Y p8, float.Z p9, bool p10, int p11) p2 = Waypoint recording string (found in update\update.rpf\x64\levels\gta5\waypointrec.rpf p3 = 786468 p4 = 0 p5 = 16 p6 = -1 (angle?) p7/8/9 = usually v3.zero p10 = bool (repeat?) p11 = 1073741824 -khorio Full list of waypoint recordings by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/waypointRecordings.json
IS_WAYPOINT_PLAYBACK_GOING_ON_FOR_VEHICLE
BOOL TASK::IS_WAYPOINT_PLAYBACK_GOING_ON_FOR_VEHICLE(Vehicle vehicle) // 0xF5134943EA29868C 0x80DD15DB b323
GET_VEHICLE_WAYPOINT_PROGRESS
int TASK::GET_VEHICLE_WAYPOINT_PROGRESS(Vehicle vehicle) // 0x9824CFF8FC66E159 0xD3CCF64E b323
GET_VEHICLE_WAYPOINT_TARGET_POINT
int TASK::GET_VEHICLE_WAYPOINT_TARGET_POINT(Vehicle vehicle) // 0x416B62AC8B9E5BBD 0x81049608 b323
VEHICLE_WAYPOINT_PLAYBACK_PAUSE
void TASK::VEHICLE_WAYPOINT_PLAYBACK_PAUSE(Vehicle vehicle) // 0x8A4E6AC373666BC5 0x7C00B415 b323
VEHICLE_WAYPOINT_PLAYBACK_RESUME
void TASK::VEHICLE_WAYPOINT_PLAYBACK_RESUME(Vehicle vehicle) // 0xDC04FCAA7839D492 0xBEB14C82 b323
VEHICLE_WAYPOINT_PLAYBACK_USE_DEFAULT_SPEED
void TASK::VEHICLE_WAYPOINT_PLAYBACK_USE_DEFAULT_SPEED(Vehicle vehicle) // 0x5CEB25A7D2848963 0x923C3AA4 b323
VEHICLE_WAYPOINT_PLAYBACK_OVERRIDE_SPEED
void TASK::VEHICLE_WAYPOINT_PLAYBACK_OVERRIDE_SPEED(Vehicle vehicle, float speed) // 0x121F0593E0A431D7 0xBE1E7BB4 b323
TASK_SET_BLOCKING_OF_NON_TEMPORARY_EVENTS
void TASK::TASK_SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(Ped ped, BOOL toggle) // 0x90D2156198831D69 0x1B54FB6B b323
I cant believe I have to define this, this is one of the best natives. It makes the ped ignore basically all shocking events around it. Occasionally the ped may comment or gesture, but other than that they just continue their daily activities. This includes shooting and wounding the ped. And - most importantly - they do not flee. Since it is a task, every time the native is called the ped will stop for a moment.
TASK_FORCE_MOTION_STATE
void TASK::TASK_FORCE_MOTION_STATE(Ped ped, Hash state, BOOL p2) // 0x4F056E1AFFEF17AB 0xCAD2EF77 b323
p2 always false [30/03/2017] ins1de : See FORCE_PED_MOTION_STATE
TASK_MOVE_NETWORK_BY_NAME
void TASK::TASK_MOVE_NETWORK_BY_NAME(Ped ped, const char* task, float multiplier, BOOL p3, const char* animDict, int flags) // 0x2D537BA194896636 0x6F5D215F b323
Example: TASK::TASK_MOVE_NETWORK_BY_NAME(PLAYER::PLAYER_PED_ID(), "arm_wrestling_sweep_paired_a_rev3", 0.0f, true, "mini@arm_wrestling", 0);
TASK_MOVE_NETWORK_ADVANCED_BY_NAME
void TASK::TASK_MOVE_NETWORK_ADVANCED_BY_NAME(Ped ped, const char* p1, float p2, float p3, float p4, float p5, float p6, float p7, Any p8, float p9, BOOL p10, const char* animDict, int flags) // 0xD5B35BEA41919ACB 0x71A5C5DB b323
Example: TASK::TASK_MOVE_NETWORK_ADVANCED_BY_NAME(PLAYER::PLAYER_PED_ID(), "minigame_tattoo_michael_parts", 324.13f, 181.29f, 102.6f, 0.0f, 0.0f, 22.32f, 2, 0, false, 0, 0);
_TASK_MOVE_NETWORK_BY_NAME_WITH_INIT_PARAMS
void TASK::_TASK_MOVE_NETWORK_BY_NAME_WITH_INIT_PARAMS(Ped ped, const char* p1, Any* data, float p3, BOOL p4, const char* animDict, int flags) // 0x3D45B0B355C5E0C9 b1493
Used only once in the scripts (am_mp_nightclub)
_0x29682E2CCF21E9B5
void TASK::_0x29682E2CCF21E9B5(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8, Any p9, Any p10, Any p11, Any p12, Any p13) // 0x29682E2CCF21E9B5 b1868
IS_TASK_MOVE_NETWORK_ACTIVE
BOOL TASK::IS_TASK_MOVE_NETWORK_ACTIVE(Ped ped) // 0x921CE12C489C4C41 0x902656EB b323
IS_TASK_MOVE_NETWORK_READY_FOR_TRANSITION
BOOL TASK::IS_TASK_MOVE_NETWORK_READY_FOR_TRANSITION(Ped ped) // 0x30ED88D5E0C56A37 0x92FDBAE6 b323
REQUEST_TASK_MOVE_NETWORK_STATE_TRANSITION
BOOL TASK::REQUEST_TASK_MOVE_NETWORK_STATE_TRANSITION(Ped ped, const char* name) // 0xD01015C7316AE176 0x885724DE b323
_0xAB13A5565480B6D9
Any TASK::_0xAB13A5565480B6D9(Ped ped, const char* p1) // 0xAB13A5565480B6D9 0x1E58A7AD b323
Used only once in the scripts (fm_mission_controller) like so: TASK::_0xAB13A5565480B6D9(iLocal_3160, "Cutting"); SET_*
GET_TASK_MOVE_NETWORK_STATE
const char* TASK::GET_TASK_MOVE_NETWORK_STATE(Ped ped) // 0x717E4D1F2048376D 0x96C0277B b323
_0x8423541E8B3A1589
void TASK::_0x8423541E8B3A1589(Any p0, Any p1, Any p2) // 0x8423541E8B3A1589 b1493
SET_TASK_MOVE_NETWORK_SIGNAL_FLOAT
void TASK::SET_TASK_MOVE_NETWORK_SIGNAL_FLOAT(Ped ped, const char* signalName, float value) // 0xD5BB4025AE449A4E 0xA79BE783 b323
p0 - PLAYER::PLAYER_PED_ID(); p1 - "Phase", "Wobble", "x_axis","y_axis","introphase","speed". p2 - From what i can see it goes up to 1f (maybe). -LcGamingHD Example: TASK::_D5BB4025AE449A4E(PLAYER::PLAYER_PED_ID(), "Phase", 0.5);
_SET_TASK_MOVE_NETWORK_SIGNAL_FLOAT_2
void TASK::_SET_TASK_MOVE_NETWORK_SIGNAL_FLOAT_2(Ped ped, const char* signalName, float value) // 0x373EF409B82697A3 b1493
_0x8634CEF2522D987B
void TASK::_0x8634CEF2522D987B(Ped ped, const char* p1, float value) // 0x8634CEF2522D987B b1493
SET_TASK_MOVE_NETWORK_SIGNAL_BOOL
void TASK::SET_TASK_MOVE_NETWORK_SIGNAL_BOOL(Ped ped, const char* signalName, BOOL value) // 0xB0A6CFD2C69C1088 0xF3538041 b323
_GET_TASK_MOVE_NETWORK_SIGNAL_FLOAT
float TASK::_GET_TASK_MOVE_NETWORK_SIGNAL_FLOAT(Ped ped, const char* signalName) // 0x44AB0B3AFECCE242 b1493
GET_TASK_MOVE_NETWORK_SIGNAL_BOOL
BOOL TASK::GET_TASK_MOVE_NETWORK_SIGNAL_BOOL(Ped ped, const char* signalName) // 0xA7FFBA498E4AAF67 0x1EBB6F3D b323
GET_TASK_MOVE_NETWORK_EVENT
BOOL TASK::GET_TASK_MOVE_NETWORK_EVENT(Ped ped, const char* eventName) // 0xB4F47213DF45A64C 0x72FA5EF2 b323
_0x0FFB3C758E8C07B9
Any TASK::_0x0FFB3C758E8C07B9(Ped ped, BOOL p1) // 0x0FFB3C758E8C07B9 b2060
Doesn't actually return anything.
IS_MOVE_BLEND_RATIO_STILL
BOOL TASK::IS_MOVE_BLEND_RATIO_STILL(Ped ped) // 0x349CE7B56DAFD95C 0xE9DAF877 b323
IS_MOVE_BLEND_RATIO_WALKING
BOOL TASK::IS_MOVE_BLEND_RATIO_WALKING(Ped ped) // 0xF133BBBE91E1691F 0xD21639A8 b323
IS_MOVE_BLEND_RATIO_RUNNING
BOOL TASK::IS_MOVE_BLEND_RATIO_RUNNING(Ped ped) // 0xD4D8636C0199A939 0xE76A2353 b323
IS_MOVE_BLEND_RATIO_SPRINTING
BOOL TASK::IS_MOVE_BLEND_RATIO_SPRINTING(Ped ped) // 0x24A2AD74FA9814E2 0xDD616893 b323
IS_PED_STILL
BOOL TASK::IS_PED_STILL(Ped ped) // 0xAC29253EEF8F0180 0x09E3418D b323
IS_PED_WALKING
BOOL TASK::IS_PED_WALKING(Ped ped) // 0xDE4C184B2B9B071A 0x4B865C4A b323
IS_PED_RUNNING
BOOL TASK::IS_PED_RUNNING(Ped ped) // 0xC5286FFC176F28A2 0xE9A5578F b323
IS_PED_SPRINTING
BOOL TASK::IS_PED_SPRINTING(Ped ped) // 0x57E457CD2C0FC168 0x4F3E0633 b323
IS_PED_STRAFING
BOOL TASK::IS_PED_STRAFING(Ped ped) // 0xE45B7F222DE47E09 0xEFEED13C b323
What's strafing?
TASK_SYNCHRONIZED_SCENE
void TASK::TASK_SYNCHRONIZED_SCENE(Ped ped, int scene, const char* animDictionary, const char* animationName, float speed, float speedMultiplier, int duration, int flag, float playbackRate, Any p9) // 0xEEA929141F699854 0x4F217E7B b323
TASK::TASK_SYNCHRONIZED_SCENE(ped, scene, "creatures@rottweiler@in_vehicle@std_car", "get_in", 1000.0, -8.0, 4, 0, 0x447a0000, 0); Full list of animation dictionaries and anims by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/animDictsCompact.json
TASK_AGITATED_ACTION
void TASK::TASK_AGITATED_ACTION(Ped ped, Ped ped2) // 0x19D1B791CB3670FE b877
TASK_SWEEP_AIM_ENTITY
void TASK::TASK_SWEEP_AIM_ENTITY(Ped ped, const char* anim, const char* p2, const char* p3, const char* p4, int p5, Vehicle vehicle, float p7, float p8) // 0x2047C02158D6405A 0x4D210467 b323
This function is called on peds in vehicles. anim: animation name p2, p3, p4: "sweep_low", "sweep_med" or "sweep_high" p5: no idea what it does but is usually -1
UPDATE_TASK_SWEEP_AIM_ENTITY
void TASK::UPDATE_TASK_SWEEP_AIM_ENTITY(Ped ped, Entity entity) // 0xE4973DBDBE6E44B3 0xF65F0F4F b323
TASK_SWEEP_AIM_POSITION
void TASK::TASK_SWEEP_AIM_POSITION(Any p0, Any* p1, Any* p2, Any* p3, Any* p4, Any p5, float p6, float p7, float p8, float p9, float p10) // 0x7AFE8FDC10BC07D2 0x1683FE66 b323
UPDATE_TASK_SWEEP_AIM_POSITION
void TASK::UPDATE_TASK_SWEEP_AIM_POSITION(Any p0, float p1, float p2, float p3) // 0xBB106883F5201FC4 0x6345EC80 b323
TASK_ARREST_PED
void TASK::TASK_ARREST_PED(Ped ped, Ped target) // 0xF3B9A78A178572B1 0xBC0F153D b323
Example from "me_amanda1.ysc.c4": TASK::TASK_ARREST_PED(l_19F /* This is a Ped */ , PLAYER::PLAYER_PED_ID()); Example from "armenian1.ysc.c4": if (!PED::IS_PED_INJURED(l_B18[0/*1*/])) { TASK::TASK_ARREST_PED(l_B18[0/*1*/], PLAYER::PLAYER_PED_ID()); } I would love to have time to experiment to see if a player Ped can arrest another Ped. Might make for a good cop mod. Looks like only the player can be arrested this way. Peds react and try to arrest you if you task them, but the player charater doesn't do anything if tasked to arrest another ped.
IS_PED_RUNNING_ARREST_TASK
BOOL TASK::IS_PED_RUNNING_ARREST_TASK(Ped ped) // 0x3DC52677769B4AE0 0x6942DB7A b323
IS_PED_BEING_ARRESTED
BOOL TASK::IS_PED_BEING_ARRESTED(Ped ped) // 0x90A09F3A45FED688 0x5FF6C2ED b323
This function is hard-coded to always return 0.
UNCUFF_PED
void TASK::UNCUFF_PED(Ped ped) // 0x67406F2C8F87FC4F 0xA23A1D61 b323
IS_PED_CUFFED
BOOL TASK::IS_PED_CUFFED(Ped ped) // 0x74E559B3BC910685 0x511CE741 b323
VEHICLE
CREATE_VEHICLE
Vehicle VEHICLE::CREATE_VEHICLE(Hash modelHash, float x, float y, float z, float heading, BOOL isNetwork, BOOL bScriptHostVeh, BOOL p7) // 0xAF35D0D2583051B0 0xDD75460A b323
p7 when set to true allows you to spawn vehicles under -100 z. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
DELETE_VEHICLE
void VEHICLE::DELETE_VEHICLE(Vehicle* vehicle) // 0xEA386986E786A54F 0x9803AF60 b323
Deletes a vehicle. The vehicle must be a mission entity to delete, so call this before deleting: SET_ENTITY_AS_MISSION_ENTITY(vehicle, true, true); eg how to use: SET_ENTITY_AS_MISSION_ENTITY(vehicle, true, true); DELETE_VEHICLE(&vehicle); Deletes the specified vehicle, then sets the handle pointed to by the pointer to NULL.
_0x7D6F9A3EF26136A0
void VEHICLE::_0x7D6F9A3EF26136A0(Vehicle vehicle, BOOL toggle, BOOL p2) // 0x7D6F9A3EF26136A0 0xBB54ECCA b323
SET_VEHICLE_AL*
_SET_VEHICLE_CAN_BE_LOCKED_ON
void VEHICLE::_SET_VEHICLE_CAN_BE_LOCKED_ON(Vehicle vehicle, BOOL canBeLockedOn, BOOL unk) // 0x1DDA078D12879EEE b463
SET_VEHICLE_AL*
SET_VEHICLE_ALLOW_NO_PASSENGERS_LOCKON
void VEHICLE::SET_VEHICLE_ALLOW_NO_PASSENGERS_LOCKON(Vehicle veh, BOOL toggle) // 0x5D14D4154BFE7B2C 0x8BAAC437 b323
Makes the vehicle accept no passengers.
GET_VEHICLE_HOMING_LOCKON_STATE
int VEHICLE::GET_VEHICLE_HOMING_LOCKON_STATE(Vehicle vehicle) // 0xE6B0E8CFC3633BF0 0xFBDE9FD8 b323
Returns a value depending on the lock-on state of vehicle weapons. 0: not locked on 1: locking on 2: locked on
_0x6EAAEFC76ACC311F
Any VEHICLE::_0x6EAAEFC76ACC311F(Any p0) // 0x6EAAEFC76ACC311F b757
_0x407DC5E97DB1A4D3
void VEHICLE::_0x407DC5E97DB1A4D3(Any p0, Any p1) // 0x407DC5E97DB1A4D3 b1493
IS_VEHICLE_MODEL
BOOL VEHICLE::IS_VEHICLE_MODEL(Vehicle vehicle, Hash model) // 0x423E8DE37D934D89 0x013B10B6 b323
DOES_SCRIPT_VEHICLE_GENERATOR_EXIST
BOOL VEHICLE::DOES_SCRIPT_VEHICLE_GENERATOR_EXIST(int vehicleGenerator) // 0xF6086BC836400876 0xF6BDDA30 b323
CREATE_SCRIPT_VEHICLE_GENERATOR
int VEHICLE::CREATE_SCRIPT_VEHICLE_GENERATOR(float x, float y, float z, float heading, float p4, float p5, Hash modelHash, int p7, int p8, int p9, int p10, BOOL p11, BOOL p12, BOOL p13, BOOL p14, BOOL p15, int p16) // 0x9DEF883114668116 0x25A9A261 b323
Creates a script vehicle generator at the given coordinates. Most parameters after the model hash are unknown. Parameters: x/y/z - Generator position heading - Generator heading p4 - Unknown (always 5.0) p5 - Unknown (always 3.0) modelHash - Vehicle model hash p7/8/9/10 - Unknown (always -1) p11 - Unknown (usually TRUE, only one instance of FALSE) p12/13 - Unknown (always FALSE) p14 - Unknown (usally FALSE, only two instances of TRUE) p15 - Unknown (always TRUE) p16 - Unknown (always -1) Vector3 coords = GET_ENTITY_COORDS(PLAYER_PED_ID(), 0); CREATE_SCRIPT_VEHICLE_GENERATOR(coords.x, coords.y, coords.z, 1.0f, 5.0f, 3.0f, GET_HASH_KEY("adder"), -1. -1, -1, -1, -1, true, false, false, false, true, -1);
DELETE_SCRIPT_VEHICLE_GENERATOR
void VEHICLE::DELETE_SCRIPT_VEHICLE_GENERATOR(int vehicleGenerator) // 0x22102C9ABFCF125D 0xE4328E3F b323
SET_SCRIPT_VEHICLE_GENERATOR
void VEHICLE::SET_SCRIPT_VEHICLE_GENERATOR(int vehicleGenerator, BOOL enabled) // 0xD9D620E0AC6DC4B0 0x40D73747 b323
Only called once in the decompiled scripts. Presumably activates the specified generator.
SET_ALL_VEHICLE_GENERATORS_ACTIVE_IN_AREA
void VEHICLE::SET_ALL_VEHICLE_GENERATORS_ACTIVE_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, BOOL p6, BOOL p7) // 0xC12321827687FE4D 0xB4E0E69A b323
SET_ALL_VEHICLE_GENERATORS_ACTIVE
void VEHICLE::SET_ALL_VEHICLE_GENERATORS_ACTIVE() // 0x34AD89078831A4BC 0xAB1FDD76 b323
SET_ALL_LOW_PRIORITY_VEHICLE_GENERATORS_ACTIVE
void VEHICLE::SET_ALL_LOW_PRIORITY_VEHICLE_GENERATORS_ACTIVE(BOOL active) // 0x608207E7A8FB787C 0x87F767F2 b323
_0x9A75585FB2E54FAD
void VEHICLE::_0x9A75585FB2E54FAD(float x, float y, float z, float radius) // 0x9A75585FB2E54FAD 0x935A95DA b323
Related to car generators & CPlayerSwitchMgrLong SET_VEHICLE_* SET_VEHICLE_GENERATORS_EXPECTED_GAMEPLAY_PT ?
_0x0A436B8643716D14
void VEHICLE::_0x0A436B8643716D14() // 0x0A436B8643716D14 0x6C73E45A b323
CLEAR_VEHICLE_*
SET_VEHICLE_ON_GROUND_PROPERLY
BOOL VEHICLE::SET_VEHICLE_ON_GROUND_PROPERLY(Vehicle vehicle, float p1) // 0x49733E92263139D1 0xE14FDBA6 b323
Sets a vehicle on the ground on all wheels. Returns whether or not the operation was successful. sfink: This has an additional param(Vehicle vehicle, float p1) which is always set to 5.0f in the b944 scripts.
SET_VEHICLE_USE_CUTSCENE_WHEEL_COMPRESSION
Any VEHICLE::SET_VEHICLE_USE_CUTSCENE_WHEEL_COMPRESSION(Vehicle p0, BOOL p1, BOOL p2, BOOL p3) // 0xE023E8AC4EF7C117 0xA0909ADB b323
IS_VEHICLE_STUCK_ON_ROOF
BOOL VEHICLE::IS_VEHICLE_STUCK_ON_ROOF(Vehicle vehicle) // 0xB497F06B288DCFDF 0x18D07C6C b323
ADD_VEHICLE_UPSIDEDOWN_CHECK
void VEHICLE::ADD_VEHICLE_UPSIDEDOWN_CHECK(Vehicle vehicle) // 0xB72E26D81006005B 0x3A13D384 b323
REMOVE_VEHICLE_UPSIDEDOWN_CHECK
void VEHICLE::REMOVE_VEHICLE_UPSIDEDOWN_CHECK(Vehicle vehicle) // 0xC53EB42A499A7E90 0xF390BA1B b323
IS_VEHICLE_STOPPED
BOOL VEHICLE::IS_VEHICLE_STOPPED(Vehicle vehicle) // 0x5721B434AD84D57A 0x655F072C b323
Returns true if the vehicle's current speed is less than, or equal to 0.0025f. For some vehicles it returns true if the current speed is <= 0.00039999999.
GET_VEHICLE_NUMBER_OF_PASSENGERS
int VEHICLE::GET_VEHICLE_NUMBER_OF_PASSENGERS(Vehicle vehicle) // 0x24CB2137731FFE89 0x1EF20849 b323
Gets the number of passengers, NOT including the driver. Use IS_VEHICLE_SEAT_FREE(Vehicle, -1) to also check for the driver
GET_VEHICLE_MAX_NUMBER_OF_PASSENGERS
int VEHICLE::GET_VEHICLE_MAX_NUMBER_OF_PASSENGERS(Vehicle vehicle) // 0xA7C4F2C6E744A550 0x0A2FC08C b323
GET_VEHICLE_MODEL_NUMBER_OF_SEATS
int VEHICLE::GET_VEHICLE_MODEL_NUMBER_OF_SEATS(Hash modelHash) // 0x2AD93716F184EDA4 0x838F7BF7 b323
Returns max number of passengers (including the driver) for the specified vehicle model. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
IS_SEAT_WARP_ONLY
BOOL VEHICLE::IS_SEAT_WARP_ONLY(Vehicle vehicle, int seatIndex) // 0xF7F203E31F96F6A1 0x769E5CF2 b323
IS_TURRET_SEAT
BOOL VEHICLE::IS_TURRET_SEAT(Vehicle vehicle, int seatIndex) // 0xE33FFA906CE74880 0x7C43D32A b323
_DOES_VEHICLE_ALLOW_RAPPEL
BOOL VEHICLE::_DOES_VEHICLE_ALLOW_RAPPEL(Vehicle vehicle) // 0x4E417C547182C84D b757
Returns true if the vehicle has the FLAG_ALLOWS_RAPPEL flag set.
SET_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME
void VEHICLE::SET_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME(float multiplier) // 0x245A6883D966D537 0xF4187E51 b323
Use this native inside a looped function. Values: - `0.0` = no vehicles on streets - `1.0` = normal vehicles on streets
SET_RANDOM_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME
void VEHICLE::SET_RANDOM_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME(float multiplier) // 0xB3B3359379FE77D3 0x543F712B b323
SET_PARKED_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME
void VEHICLE::SET_PARKED_VEHICLE_DENSITY_MULTIPLIER_THIS_FRAME(float multiplier) // 0xEAE6DCC7EEE3DB1D 0xDD46CEBE b323
SET_DISABLE_RANDOM_TRAINS_THIS_FRAME
void VEHICLE::SET_DISABLE_RANDOM_TRAINS_THIS_FRAME(BOOL toggle) // 0xD4B8E3D1917BC86B 0x09462665 b323
SET_AMBIENT_VEHICLE_RANGE_MULTIPLIER_THIS_FRAME
void VEHICLE::SET_AMBIENT_VEHICLE_RANGE_MULTIPLIER_THIS_FRAME(float value) // 0x90B6DA738A9A25DA 0xDAE2A2BE b323
SET_FAR_DRAW_VEHICLES
void VEHICLE::SET_FAR_DRAW_VEHICLES(BOOL toggle) // 0x26324F33423F3CC3 0x9F019C49 b323
SET_NUMBER_OF_PARKED_VEHICLES
void VEHICLE::SET_NUMBER_OF_PARKED_VEHICLES(int value) // 0xCAA15F13EBD417FF 0x206A58E8 b323
SET_VEHICLE_DOORS_LOCKED
void VEHICLE::SET_VEHICLE_DOORS_LOCKED(Vehicle vehicle, int doorLockStatus) // 0xB664292EAECF7FA6 0x4CDD35D0 b323
0 - CARLOCK_NONE 1 - CARLOCK_UNLOCKED 2 - CARLOCK_LOCKED (locked) 3 - CARLOCK_LOCKOUT_PLAYER_ONLY 4 - CARLOCK_LOCKED_PLAYER_INSIDE (can get in, can't leave) (maybe, these are leftovers from GTA:VC) 5 - CARLOCK_LOCKED_INITIALLY 6 - CARLOCK_FORCE_SHUT_DOORS 7 - CARLOCK_LOCKED_BUT_CAN_BE_DAMAGED (source: GTA VC miss2 leak, matching constants for 0/2/4, testing) They use 10 in am_mp_property_int, don't know what it does atm.
SET_VEHICLE_INDIVIDUAL_DOORS_LOCKED
void VEHICLE::SET_VEHICLE_INDIVIDUAL_DOORS_LOCKED(Vehicle vehicle, int doorIndex, int destroyType) // 0xBE70724027F85BCD 0xD61D182D b323
destroyType is 1 for opens on damage, 2 for breaks on damage.
SET_VEHICLE_HAS_MUTED_SIRENS
void VEHICLE::SET_VEHICLE_HAS_MUTED_SIRENS(Vehicle vehicle, BOOL toggle) // 0xD8050E0EB60CF274 0xC54156A9 b323
if set to true, prevents vehicle sirens from having sound, leaving only the lights.
SET_VEHICLE_DOORS_LOCKED_FOR_PLAYER
void VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_PLAYER(Vehicle vehicle, Player player, BOOL toggle) // 0x517AAF684BB50CD1 0x49829236 b323
GET_VEHICLE_DOORS_LOCKED_FOR_PLAYER
BOOL VEHICLE::GET_VEHICLE_DOORS_LOCKED_FOR_PLAYER(Vehicle vehicle, Player player) // 0xF6AF6CB341349015 0x1DC50247 b323
SET_VEHICLE_DOORS_LOCKED_FOR_ALL_PLAYERS
void VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_ALL_PLAYERS(Vehicle vehicle, BOOL toggle) // 0xA2F80B8D040727CC 0x891BA8A4 b323
After some analysis, I've decided that these are what the parameters are. We can see this being used in R* scripts such as "am_mp_property_int.ysc.c4": l_11A1 = PED::GET_VEHICLE_PED_IS_IN(PLAYER::PLAYER_PED_ID(), 1); ... VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_ALL_PLAYERS(l_11A1, 1);
SET_VEHICLE_DOORS_LOCKED_FOR_NON_SCRIPT_PLAYERS
void VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_NON_SCRIPT_PLAYERS(Vehicle vehicle, BOOL toggle) // 0x9737A37136F07E75 0xE4EF6514 b323
SET_VEHICLE_DOORS_LOCKED_FOR_TEAM
void VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_TEAM(Vehicle vehicle, int team, BOOL toggle) // 0xB81F6D4A8F5EEBA8 0x4F85E783 b323
_SET_VEHICLE_DOORS_LOCKED_FOR_UNK
void VEHICLE::_SET_VEHICLE_DOORS_LOCKED_FOR_UNK(Vehicle vehicle, BOOL toggle) // 0x203B527D1B77904C b1365
_0x76D26A22750E849E
void VEHICLE::_0x76D26A22750E849E(Vehicle vehicle) // 0x76D26A22750E849E b1103
SET_VEHICLE_*
EXPLODE_VEHICLE
void VEHICLE::EXPLODE_VEHICLE(Vehicle vehicle, BOOL isAudible, BOOL isInvisible) // 0xBA71116ADF5B514C 0xBEDEACEB b323
Explodes a selected vehicle. Vehicle vehicle = Vehicle you want to explode. BOOL isAudible = If explosion makes a sound. BOOL isInvisible = If the explosion is invisible or not. First BOOL does not give any visual explosion, the vehicle just falls apart completely but slowly and starts to burn.
SET_VEHICLE_OUT_OF_CONTROL
void VEHICLE::SET_VEHICLE_OUT_OF_CONTROL(Vehicle vehicle, BOOL killDriver, BOOL explodeOnImpact) // 0xF19D095E42D430CC 0x3764D734 b323
Tested on the player's current vehicle. Unless you kill the driver, the vehicle doesn't loose control, however, if enabled, explodeOnImpact is still active. The moment you crash, boom.
SET_VEHICLE_TIMED_EXPLOSION
void VEHICLE::SET_VEHICLE_TIMED_EXPLOSION(Vehicle vehicle, Ped ped, BOOL toggle) // 0x2E0A74E1002380B1 0xDB8CB8E2 b323
ADD_VEHICLE_PHONE_EXPLOSIVE_DEVICE
void VEHICLE::ADD_VEHICLE_PHONE_EXPLOSIVE_DEVICE(Vehicle vehicle) // 0x99AD4CCCB128CBC9 0x811373DE b323
_CLEAR_VEHICLE_PHONE_EXPLOSIVE_DEVICE
void VEHICLE::_CLEAR_VEHICLE_PHONE_EXPLOSIVE_DEVICE() // 0xAA3F739ABDDCF21F b463
HAS_VEHICLE_PHONE_EXPLOSIVE_DEVICE
BOOL VEHICLE::HAS_VEHICLE_PHONE_EXPLOSIVE_DEVICE() // 0x6ADAABD3068C5235 0xA4E69134 b323
DETONATE_VEHICLE_PHONE_EXPLOSIVE_DEVICE
void VEHICLE::DETONATE_VEHICLE_PHONE_EXPLOSIVE_DEVICE() // 0xEF49CF0270307CBE 0x65255524 b323
SET_TAXI_LIGHTS
void VEHICLE::SET_TAXI_LIGHTS(Vehicle vehicle, BOOL state) // 0x598803E85E8448D9 0x68639D85 b323
This is not tested - it's just an assumption. - Nac Doesn't seem to work. I'll try with an int instead. --JT Read the scripts, im dumpass. if (!VEHICLE::IS_TAXI_LIGHT_ON(l_115)) { VEHICLE::SET_TAXI_LIGHTS(l_115, 1); }
IS_TAXI_LIGHT_ON
BOOL VEHICLE::IS_TAXI_LIGHT_ON(Vehicle vehicle) // 0x7504C0F113AB50FC 0x6FC4924A b323
IS_VEHICLE_IN_GARAGE_AREA
BOOL VEHICLE::IS_VEHICLE_IN_GARAGE_AREA(const char* garageName, Vehicle vehicle) // 0xCEE4490CD57BB3C2 0xA90EC257 b323
garageName example "Michael - Beverly Hills" Full list of garages by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/garages.json
SET_VEHICLE_COLOURS
void VEHICLE::SET_VEHICLE_COLOURS(Vehicle vehicle, int colorPrimary, int colorSecondary) // 0x4F1D4BE3A7F24601 0x57F24253 b323
colorPrimary & colorSecondary are the paint index for the vehicle. For a list of valid paint indexes, view: pastebin.com/pwHci0xK ------------------------------------------------------------------------- Use this to get the number of color indices: pastebin.com/RQEeqTSM Note: minimum color index is 0, maximum color index is (numColorIndices - 1) Full list of vehicle colors by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicleColors.json
SET_VEHICLE_FULLBEAM
void VEHICLE::SET_VEHICLE_FULLBEAM(Vehicle vehicle, BOOL toggle) // 0x8B7FD87F0DDB421E 0x9C49CC15 b323
It switch to highbeam when p1 is set to true.
SET_VEHICLE_IS_RACING
void VEHICLE::SET_VEHICLE_IS_RACING(Vehicle vehicle, BOOL toggle) // 0x07116E24E9D1929D 0xA59E3DCD b323
p1 (toggle) was always 1 (true) except in one case in the b678 scripts.
SET_VEHICLE_CUSTOM_PRIMARY_COLOUR
void VEHICLE::SET_VEHICLE_CUSTOM_PRIMARY_COLOUR(Vehicle vehicle, int r, int g, int b) // 0x7141766F91D15BEA 0x8DF9F9BC b323
p1, p2, p3 are RGB values for color (255,0,0 for Red, ect)
GET_VEHICLE_CUSTOM_PRIMARY_COLOUR
void VEHICLE::GET_VEHICLE_CUSTOM_PRIMARY_COLOUR(Vehicle vehicle, int* r, int* g, int* b) // 0xB64CF2CCA9D95F52 0x1C2B9FEF b323
CLEAR_VEHICLE_CUSTOM_PRIMARY_COLOUR
void VEHICLE::CLEAR_VEHICLE_CUSTOM_PRIMARY_COLOUR(Vehicle vehicle) // 0x55E1D2758F34E437 0x51E1E33D b323
GET_IS_VEHICLE_PRIMARY_COLOUR_CUSTOM
BOOL VEHICLE::GET_IS_VEHICLE_PRIMARY_COLOUR_CUSTOM(Vehicle vehicle) // 0xF095C0405307B21B 0xD7EC8760 b323
SET_VEHICLE_CUSTOM_SECONDARY_COLOUR
void VEHICLE::SET_VEHICLE_CUSTOM_SECONDARY_COLOUR(Vehicle vehicle, int r, int g, int b) // 0x36CED73BFED89754 0x9D77259E b323
p1, p2, p3 are RGB values for color (255,0,0 for Red, ect)
GET_VEHICLE_CUSTOM_SECONDARY_COLOUR
void VEHICLE::GET_VEHICLE_CUSTOM_SECONDARY_COLOUR(Vehicle vehicle, int* r, int* g, int* b) // 0x8389CD56CA8072DC 0x3FF247A2 b323
CLEAR_VEHICLE_CUSTOM_SECONDARY_COLOUR
void VEHICLE::CLEAR_VEHICLE_CUSTOM_SECONDARY_COLOUR(Vehicle vehicle) // 0x5FFBDEEC3E8E2009 0x7CE00B29 b323
GET_IS_VEHICLE_SECONDARY_COLOUR_CUSTOM
BOOL VEHICLE::GET_IS_VEHICLE_SECONDARY_COLOUR_CUSTOM(Vehicle vehicle) // 0x910A32E7AAD2656C 0x288AD228 b323
Check if Vehicle Secondary is avaliable for customize
SET_VEHICLE_ENVEFF_SCALE
void VEHICLE::SET_VEHICLE_ENVEFF_SCALE(Vehicle vehicle, float fade) // 0x3AFDC536C3D01674 0x8332730C b323
formerly known as _SET_VEHICLE_PAINT_FADE The parameter fade is a value from 0-1, where 0 is fresh paint.
GET_VEHICLE_ENVEFF_SCALE
float VEHICLE::GET_VEHICLE_ENVEFF_SCALE(Vehicle vehicle) // 0xA82819CAC9C4C403 0xD5F1EEE1 b323
formerly known as _GET_VEHICLE_PAINT_FADE The result is a value from 0-1, where 0 is fresh paint.
SET_CAN_RESPRAY_VEHICLE
void VEHICLE::SET_CAN_RESPRAY_VEHICLE(Vehicle vehicle, BOOL state) // 0x52BBA29D5EC69356 0x37677590 b323
Hardcoded to not work in multiplayer.
_0xAB31EF4DE6800CE9
void VEHICLE::_0xAB31EF4DE6800CE9(Any p0, Any p1) // 0xAB31EF4DE6800CE9 b573
_0x1B212B26DD3C04DF
void VEHICLE::_0x1B212B26DD3C04DF(Vehicle vehicle, BOOL toggle) // 0x1B212B26DD3C04DF b757
Sets a value that appears to affect door opening behavior when damaged. SET_*
FORCE_SUBMARINE_SURFACE_MODE
void VEHICLE::FORCE_SUBMARINE_SURFACE_MODE(Vehicle vehicle, BOOL toggle) // 0x33506883545AC0DF 0x54E9EE75 b323
_0xC67DB108A9ADE3BE
void VEHICLE::_0xC67DB108A9ADE3BE(Any p0, Any p1) // 0xC67DB108A9ADE3BE b2189
SET_SUBMARINE_CRUSH_DEPTHS
void VEHICLE::SET_SUBMARINE_CRUSH_DEPTHS(Vehicle vehicle, BOOL p1, float depth1, float depth2, float depth3) // 0xC59872A5134879C7 0x4A46E814 b323
_GET_SUBMARINE_IS_BELOW_FIRST_CRUSH_DEPTH
BOOL VEHICLE::_GET_SUBMARINE_IS_BELOW_FIRST_CRUSH_DEPTH(Vehicle submarine) // 0x3E71D0B300B7AA79 b2189
_GET_SUBMARINE_CRUSH_DEPTH_WARNING_STATE
int VEHICLE::_GET_SUBMARINE_CRUSH_DEPTH_WARNING_STATE(Vehicle submarine) // 0x093D6DDCA5B8FBAE b2189
_0xED5EDE9E676643C9
void VEHICLE::_0xED5EDE9E676643C9(Any p0, Any p1) // 0xED5EDE9E676643C9 b944
SET_BOAT_ANCHOR
void VEHICLE::SET_BOAT_ANCHOR(Vehicle vehicle, BOOL toggle) // 0x75DBEC174AEEAD10 0xA3906284 b323
CAN_ANCHOR_BOAT_HERE
BOOL VEHICLE::CAN_ANCHOR_BOAT_HERE(Vehicle vehicle) // 0x26C10ECBDA5D043B 0xE97A4F5E b323
_CAN_ANCHOR_BOAT_HERE_2
BOOL VEHICLE::_CAN_ANCHOR_BOAT_HERE_2(Vehicle vehicle) // 0x24F4121D07579880 b678
_SET_BOAT_FROZEN_WHEN_ANCHORED
void VEHICLE::_SET_BOAT_FROZEN_WHEN_ANCHORED(Vehicle vehicle, BOOL toggle) // 0xE3EBAAE484798530 0x0ED84792 b323
_0xB28B1FE5BFADD7F5
void VEHICLE::_0xB28B1FE5BFADD7F5(Vehicle vehicle, BOOL p1) // 0xB28B1FE5BFADD7F5 0xA739012A b323
No observed effect.
_SET_BOAT_MOVEMENT_RESISTANCE
void VEHICLE::_SET_BOAT_MOVEMENT_RESISTANCE(Vehicle vehicle, float value) // 0xE842A9398079BD82 0x66FA450C b323
_IS_BOAT_ANCHORED_AND_FROZEN
BOOL VEHICLE::_IS_BOAT_ANCHORED_AND_FROZEN(Vehicle vehicle) // 0xB0AD1238A709B1A2 b573
IS_*
SET_BOAT_SINKS_WHEN_WRECKED
void VEHICLE::SET_BOAT_SINKS_WHEN_WRECKED(Vehicle vehicle, BOOL toggle) // 0x8F719973E1445BA2 0x35614622 b323
_SET_BOAT_IS_SINKING
void VEHICLE::_SET_BOAT_IS_SINKING(Any p0) // 0xBD32E46AA95C1DD2 b757
SET_VEHICLE_SIREN
void VEHICLE::SET_VEHICLE_SIREN(Vehicle vehicle, BOOL toggle) // 0xF4924635A19EB37D 0x4AC1EFC7 b323
Activate siren on vehicle (Only works if the vehicle has a siren).
IS_VEHICLE_SIREN_ON
BOOL VEHICLE::IS_VEHICLE_SIREN_ON(Vehicle vehicle) // 0x4C9BF537BE2634B2 0x25EB5873 b323
IS_VEHICLE_SIREN_AUDIO_ON
BOOL VEHICLE::IS_VEHICLE_SIREN_AUDIO_ON(Vehicle vehicle) // 0xB5CC40FBCB586380 0xC9458688 b323
SET_VEHICLE_STRONG
void VEHICLE::SET_VEHICLE_STRONG(Vehicle vehicle, BOOL toggle) // 0x3E8C8727991A8A0B 0xC758D19F b323
If set to true, vehicle will not take crash damage, but is still susceptible to damage from bullets and explosives
REMOVE_VEHICLE_STUCK_CHECK
void VEHICLE::REMOVE_VEHICLE_STUCK_CHECK(Vehicle vehicle) // 0x8386BFB614D06749 0x81594917 b323
GET_VEHICLE_COLOURS
void VEHICLE::GET_VEHICLE_COLOURS(Vehicle vehicle, int* colorPrimary, int* colorSecondary) // 0xA19435F193E081AC 0x40D82D88 b323
IS_VEHICLE_SEAT_FREE
BOOL VEHICLE::IS_VEHICLE_SEAT_FREE(Vehicle vehicle, int seatIndex, BOOL isTaskRunning) // 0x22AC59A870E6A669 0xDAF42B02 b323
Check if a vehicle seat is free. seatIndex = -1 being the driver seat. Use GET_VEHICLE_MAX_NUMBER_OF_PASSENGERS(vehicle) - 1 for last seat index. isTaskRunning = on true the function returns already false while a task on the target seat is running (TASK_ENTER_VEHICLE/TASK_SHUFFLE_TO_NEXT_VEHICLE_SEAT) - on false only when a ped is finally sitting in the seat.
GET_PED_IN_VEHICLE_SEAT
Ped VEHICLE::GET_PED_IN_VEHICLE_SEAT(Vehicle vehicle, int seatIndex, BOOL p2) // 0xBB40DD2270B65366 0x388FDE9A b323
If there is no ped in the seat, and the game considers the vehicle as ambient population, this will create a random occupant ped in the seat, which may be cleaned up by the game fairly soon if not marked as script-owned mission entity. Seat indexes: -1 = Driver 0 = Front Right Passenger 1 = Back Left Passenger 2 = Back Right Passenger 3 = Further Back Left Passenger (vehicles > 4 seats) 4 = Further Back Right Passenger (vehicles > 4 seats) etc. If p2 is true it uses a different GetOccupant function.
GET_LAST_PED_IN_VEHICLE_SEAT
Ped VEHICLE::GET_LAST_PED_IN_VEHICLE_SEAT(Vehicle vehicle, int seatIndex) // 0x83F969AA1EE2A664 0xF7C6792D b323
GET_VEHICLE_LIGHTS_STATE
BOOL VEHICLE::GET_VEHICLE_LIGHTS_STATE(Vehicle vehicle, BOOL* lightsOn, BOOL* highbeamsOn) // 0xB91B4C20085BD12F 0x7C278621 b323
IS_VEHICLE_TYRE_BURST
BOOL VEHICLE::IS_VEHICLE_TYRE_BURST(Vehicle vehicle, int wheelID, BOOL completely) // 0xBA291848A0815CA9 0x48C80210 b323
wheelID used for 4 wheelers seem to be (0, 1, 4, 5) completely - is to check if tire completely gone from rim. '0 = wheel_lf / bike, plane or jet front '1 = wheel_rf '2 = wheel_lm / in 6 wheels trailer, plane or jet is first one on left '3 = wheel_rm / in 6 wheels trailer, plane or jet is first one on right '4 = wheel_lr / bike rear / in 6 wheels trailer, plane or jet is last one on left '5 = wheel_rr / in 6 wheels trailer, plane or jet is last one on right '45 = 6 wheels trailer mid wheel left '47 = 6 wheels trailer mid wheel right
SET_VEHICLE_FORWARD_SPEED
void VEHICLE::SET_VEHICLE_FORWARD_SPEED(Vehicle vehicle, float speed) // 0xAB54A438726D25D5 0x69880D14 b323
SCALE: Setting the speed to 30 would result in a speed of roughly 60mph, according to speedometer. Speed is in meters per second You can convert meters/s to mph here: http://www.calculateme.com/Speed/MetersperSecond/ToMilesperHour.htm
_0x6501129C9E0FFA05
void VEHICLE::_0x6501129C9E0FFA05(Any p0, Any p1) // 0x6501129C9E0FFA05 b877
BRING_VEHICLE_TO_HALT
void VEHICLE::BRING_VEHICLE_TO_HALT(Vehicle vehicle, float distance, int duration, BOOL unknown) // 0x260BE8F09E326A20 0xCBC7D3C8 b323
This native makes the vehicle stop immediately, as happens when we enter a MP garage. . distance defines how far it will travel until stopping. Garage doors use 3.0. . If killEngine is set to 1, you cannot resume driving the vehicle once it stops. This looks like is a bitmapped integer.
_0xDCE97BDF8A0EABC8
void VEHICLE::_0xDCE97BDF8A0EABC8(Vehicle vehicle, Any p1) // 0xDCE97BDF8A0EABC8 b1103
_0x9849DE24FCF23CCC
void VEHICLE::_0x9849DE24FCF23CCC(Vehicle vehicle, BOOL toggle) // 0x9849DE24FCF23CCC b1604
Sets some bit of vehicle. _SET_VEHICLE_*
_0x8664170EF165C4A6
void VEHICLE::_0x8664170EF165C4A6(Any p0, Any p1) // 0x8664170EF165C4A6 b2189
_STOP_BRING_VEHICLE_TO_HALT
void VEHICLE::_STOP_BRING_VEHICLE_TO_HALT(Vehicle vehicle) // 0x7C06330BFDDA182E b1103
Stops CTaskBringVehicleToHalt
_IS_VEHICLE_BEING_HALTED
BOOL VEHICLE::_IS_VEHICLE_BEING_HALTED(Vehicle vehicle) // 0xC69BB1D832A710EF b1493
Returns true if vehicle is halted by BRING_VEHICLE_TO_HALT _IS_VEHICLE_*
SET_FORKLIFT_FORK_HEIGHT
void VEHICLE::SET_FORKLIFT_FORK_HEIGHT(Vehicle vehicle, float height) // 0x37EBBF3117BD6A25 0x943A6CFC b323
0.0 = Lowest 1.0 = Highest. This is best to be used if you wanna pick-up a car since un-realistically on GTA V forklifts can't pick up much of anything due to vehicle mass. If you put this under a car then set it above 0.0 to a 'lifted-value' it will raise the car with no issue lol
IS_ENTITY_ATTACHED_TO_HANDLER_FRAME
BOOL VEHICLE::IS_ENTITY_ATTACHED_TO_HANDLER_FRAME(Vehicle vehicle, Entity entity) // 0x57715966069157AD 0x7FB25568 b323
IS_ANY_ENTITY_ATTACHED_TO_HANDLER_FRAME
BOOL VEHICLE::IS_ANY_ENTITY_ATTACHED_TO_HANDLER_FRAME(Vehicle vehicle) // 0x62CA17B74C435651 0x593143B9 b323
_FIND_VEHICLE_CARRYING_THIS_ENTITY
Vehicle VEHICLE::_FIND_VEHICLE_CARRYING_THIS_ENTITY(Entity entity) // 0x375E7FC44F21C8AB 0x70DD5E25 b323
Finds the vehicle that is carrying this entity with a handler frame. The model of the entity must be prop_contr_03b_ld or the function will return 0.
_IS_HANDLER_FRAME_ABOVE_CONTAINER
BOOL VEHICLE::_IS_HANDLER_FRAME_ABOVE_CONTAINER(Vehicle vehicle, Entity entity) // 0x89D630CF5EA96D23 0xFBF5536A b323
_0x6A98C2ECF57FA5D4
void VEHICLE::_0x6A98C2ECF57FA5D4(Vehicle vehicle, Entity entity) // 0x6A98C2ECF57FA5D4 0x20AB5783 b323
DETACH_CONTAINER_FROM_HANDLER_FRAME
void VEHICLE::DETACH_CONTAINER_FROM_HANDLER_FRAME(Vehicle vehicle) // 0x7C0043FDFF6436BC 0x0F11D01F b323
_0x8AA9180DE2FEDD45
void VEHICLE::_0x8AA9180DE2FEDD45(Vehicle vehicle, BOOL p1) // 0x8AA9180DE2FEDD45 0xAE040377 b323
SET_BOAT_DISABLE_AVOIDANCE
void VEHICLE::SET_BOAT_DISABLE_AVOIDANCE(Vehicle vehicle, BOOL p1) // 0x0A6A279F3AA4FD70 0x4C0E4031 b323
IS_HELI_LANDING_AREA_BLOCKED
BOOL VEHICLE::IS_HELI_LANDING_AREA_BLOCKED(Vehicle vehicle) // 0x634148744F385576 0x6346B7CC b323
_0x107A473D7A6647A9
void VEHICLE::_0x107A473D7A6647A9(Vehicle vehicle) // 0x107A473D7A6647A9 b1290
Used on helicopters and blimps during the CTaskVehicleLand task. Sets a value on the task to 10f
SET_HELI_TURBULENCE_SCALAR
void VEHICLE::SET_HELI_TURBULENCE_SCALAR(Vehicle vehicle, float p1) // 0xE6F13851780394DA 0xCCB41A55 b323
SET_CAR_BOOT_OPEN
void VEHICLE::SET_CAR_BOOT_OPEN(Vehicle vehicle) // 0xFC40CBF7B90CA77C b877
Initially used in Max Payne 3, that's why we know the name.
SET_VEHICLE_TYRE_BURST
void VEHICLE::SET_VEHICLE_TYRE_BURST(Vehicle vehicle, int index, BOOL onRim, float p3) // 0xEC6A202EE4960385 0x89D28068 b323
"To burst tyres VEHICLE::SET_VEHICLE_TYRE_BURST(vehicle, 0, true, 1000.0) to burst all tyres type it 8 times where p1 = 0 to 7. p3 seems to be how much damage it has taken. 0 doesn't deflate them, 1000 completely deflates them. '0 = wheel_lf / bike, plane or jet front '1 = wheel_rf '2 = wheel_lm / in 6 wheels trailer, plane or jet is first one on left '3 = wheel_rm / in 6 wheels trailer, plane or jet is first one on right '4 = wheel_lr / bike rear / in 6 wheels trailer, plane or jet is last one on left '5 = wheel_rr / in 6 wheels trailer, plane or jet is last one on right '45 = 6 wheels trailer mid wheel left '47 = 6 wheels trailer mid wheel right
SET_VEHICLE_DOORS_SHUT
void VEHICLE::SET_VEHICLE_DOORS_SHUT(Vehicle vehicle, BOOL closeInstantly) // 0x781B3D62BB013EF5 0xBB1FF6E7 b323
Closes all doors of a vehicle:
SET_VEHICLE_TYRES_CAN_BURST
void VEHICLE::SET_VEHICLE_TYRES_CAN_BURST(Vehicle vehicle, BOOL toggle) // 0xEB9DC3C7D8596C46 0xA198DB54 b323
Allows you to toggle bulletproof tires.
GET_VEHICLE_TYRES_CAN_BURST
BOOL VEHICLE::GET_VEHICLE_TYRES_CAN_BURST(Vehicle vehicle) // 0x678B9BB8C3F58FEB 0x4D76CD2F b323
SET_VEHICLE_WHEELS_CAN_BREAK
void VEHICLE::SET_VEHICLE_WHEELS_CAN_BREAK(Vehicle vehicle, BOOL enabled) // 0x29B18B4FD460CA8F 0x829ED654 b323
SET_VEHICLE_DOOR_OPEN
void VEHICLE::SET_VEHICLE_DOOR_OPEN(Vehicle vehicle, int doorIndex, BOOL loose, BOOL openInstantly) // 0x7C65DAC73C35C862 0xBB75D38B b323
doorIndex: 0 = Front Left Door 1 = Front Right Door 2 = Back Left Door 3 = Back Right Door 4 = Hood 5 = Trunk 6 = Back 7 = Back2
_0x3B458DDB57038F08
void VEHICLE::_0x3B458DDB57038F08(Vehicle vehicle, int doorIndex, BOOL toggle) // 0x3B458DDB57038F08 b877
Usually used alongside other vehicle door natives.
_0xA247F9EF01D8082E
void VEHICLE::_0xA247F9EF01D8082E(Any p0) // 0xA247F9EF01D8082E b1103
REMOVE_VEHICLE_WINDOW
void VEHICLE::REMOVE_VEHICLE_WINDOW(Vehicle vehicle, int windowIndex) // 0xA711568EEDB43069 0xBB8104A3 b323
windowIndex: 0 = Front Right Window 1 = Front Left Window 2 = Back Right Window 3 = Back Left Window 4 = Unknown 5 = Unknown 6 = Windscreen 7 = Rear Windscreen
ROLL_DOWN_WINDOWS
void VEHICLE::ROLL_DOWN_WINDOWS(Vehicle vehicle) // 0x85796B0549DDE156 0x51A16DC6 b323
Roll down all the windows of the vehicle passed through the first parameter.
ROLL_DOWN_WINDOW
void VEHICLE::ROLL_DOWN_WINDOW(Vehicle vehicle, int windowIndex) // 0x7AD9E6CE657D69E3 0xF840134C b323
windowIndex: 0 = Front Right Window 1 = Front Left Window 2 = Back Right Window 3 = Back Left Window
ROLL_UP_WINDOW
void VEHICLE::ROLL_UP_WINDOW(Vehicle vehicle, int windowIndex) // 0x602E548F46E24D59 0x83B7E06A b323
Window indexes: 0 = Front Left Window 1 = Front Right Window 2 = Back Left Window 3 = Back Right Window
SMASH_VEHICLE_WINDOW
void VEHICLE::SMASH_VEHICLE_WINDOW(Vehicle vehicle, int index) // 0x9E5B5E4D2CCD2259 0xDDD9A8C2 b323
`index` = 0 to 13 0 = front right window 1 = front left window 2 = rear right window 3 = rear left window 4 = unsure 5 = unsure 6 = windowscreen 7 = rear windowscreen 8 = unsure 9 = unsure 10 = unsure 11 = unsure 12 = unsure 13 = unsure
FIX_VEHICLE_WINDOW
void VEHICLE::FIX_VEHICLE_WINDOW(Vehicle vehicle, int index) // 0x772282EBEB95E682 0x6B8E990D b323
`index` = 0 to 13 0 = front right window 1 = front left window 2 = rear right window 3 = rear left window 4 = unsure 5 = unsure 6 = windowscreen 7 = rear windowscreen 8 = unsure 9 = unsure 10 = unsure 11 = unsure 12 = unsure 13 = unsure Additional information: FIX_VEHICLE_WINDOW (0x140D0BB88) references an array of bone vehicle indices (0x141D4B3E0) { 2Ah, 2Bh, 2Ch, 2Dh, 2Eh, 2Fh, 28h, 29h } that correspond to: window_lf, window_rf, window_lr, window_rr, window_lm, window_rm, windscreen, windscreen_r. This array is used by most vehwindow natives. Also, this function is coded to not work on vehicles of type: CBike, Bmx, CBoat, CTrain, and CSubmarine.
POP_OUT_VEHICLE_WINDSCREEN
void VEHICLE::POP_OUT_VEHICLE_WINDSCREEN(Vehicle vehicle) // 0x6D645D59FB5F5AD3 0xCC95C96B b323
Detaches the vehicle's windscreen. For further information, see : gtaforums.com/topic/859570-glass/#entry1068894566 Old name: _DETACH_VEHICLE_WINDSCREEN
_EJECT_JB700_ROOF
void VEHICLE::_EJECT_JB700_ROOF(Vehicle vehicle, float x, float y, float z) // 0xE38CB9D7D39FDBCC 0xFDA7B6CA b323
SET_VEHICLE_LIGHTS
void VEHICLE::SET_VEHICLE_LIGHTS(Vehicle vehicle, int state) // 0x34E710FF01247C5A 0xE8930226 b323
set's if the vehicle has lights or not. not an on off toggle. p1 = 0 ;vehicle normal lights, off then lowbeams, then highbeams p1 = 1 ;vehicle doesn't have lights, always off p1 = 2 ;vehicle has always on lights p1 = 3 ;or even larger like 4,5,... normal lights like =1 note1: when using =2 on day it's lowbeam,highbeam but at night it's lowbeam,lowbeam,highbeam note2: when using =0 it's affected by day or night for highbeams don't exist in daytime.
SET_VEHICLE_USE_PLAYER_LIGHT_SETTINGS
void VEHICLE::SET_VEHICLE_USE_PLAYER_LIGHT_SETTINGS(Vehicle vehicle, BOOL toggle) // 0xC45C27EF50F36ADC 0x4221E435 b323
_SET_VEHICLE_LIGHTS_MODE
void VEHICLE::_SET_VEHICLE_LIGHTS_MODE(Vehicle vehicle, int p1) // 0x1FD09E7390A74D54 b323
p1 can be either 0, 1 or 2. Determines how vehicle lights behave when toggled. 0 = Default (Lights can be toggled between off, normal and high beams) 1 = Lights Disabled (Lights are fully disabled, cannot be toggled) 2 = Always On (Lights can be toggled between normal and high beams)
SET_VEHICLE_ALARM
void VEHICLE::SET_VEHICLE_ALARM(Vehicle vehicle, BOOL state) // 0xCDE5E70C1DDB954C 0x24877D84 b323
START_VEHICLE_ALARM
void VEHICLE::START_VEHICLE_ALARM(Vehicle vehicle) // 0xB8FF7AB45305C345 0x5B451FF7 b323
IS_VEHICLE_ALARM_ACTIVATED
BOOL VEHICLE::IS_VEHICLE_ALARM_ACTIVATED(Vehicle vehicle) // 0x4319E335B71FFF34 0xF2630A4C b323
SET_VEHICLE_INTERIORLIGHT
void VEHICLE::SET_VEHICLE_INTERIORLIGHT(Vehicle vehicle, BOOL toggle) // 0xBC2042F090AF6AD3 0x9AD1FE1E b323
_0x8821196D91FA2DE5
void VEHICLE::_0x8821196D91FA2DE5(Vehicle vehicle, BOOL toggle) // 0x8821196D91FA2DE5 b1290
Sets some bit of vehicle _SET_VEHICLE_*
SET_VEHICLE_LIGHT_MULTIPLIER
void VEHICLE::SET_VEHICLE_LIGHT_MULTIPLIER(Vehicle vehicle, float multiplier) // 0xB385454F8791F57C 0x48039D6A b323
multiplier = brightness of head lights. this value isn't capped afaik. multiplier = 0.0 no lights multiplier = 1.0 default game value
ATTACH_VEHICLE_TO_TRAILER
void VEHICLE::ATTACH_VEHICLE_TO_TRAILER(Vehicle vehicle, Vehicle trailer, float radius) // 0x3C7D42D58F770B54 0x2133977F b323
ATTACH_VEHICLE_ON_TO_TRAILER
void VEHICLE::ATTACH_VEHICLE_ON_TO_TRAILER(Vehicle vehicle, Vehicle trailer, float offsetX, float offsetY, float offsetZ, float coordsX, float coordsY, float coordsZ, float rotationX, float rotationY, float rotationZ, float disableCollisions) // 0x16B5E274BDE402F8 0x12AC1A16 b323
This is the proper way of attaching vehicles to the car carrier, it's what Rockstar uses. Video Demo: https://www.youtube.com/watch?v=2lVEIzf7bgo
STABILISE_ENTITY_ATTACHED_TO_HELI
void VEHICLE::STABILISE_ENTITY_ATTACHED_TO_HELI(Vehicle vehicle, Entity entity, float p2) // 0x374706271354CB18 0x40C4763F b323
DETACH_VEHICLE_FROM_TRAILER
void VEHICLE::DETACH_VEHICLE_FROM_TRAILER(Vehicle vehicle) // 0x90532EDF0D2BDD86 0xB5DBF91D b323
IS_VEHICLE_ATTACHED_TO_TRAILER
BOOL VEHICLE::IS_VEHICLE_ATTACHED_TO_TRAILER(Vehicle vehicle) // 0xE7CF3C4F9F489F0C 0xE142BBCC b323
SET_TRAILER_INVERSE_MASS_SCALE
void VEHICLE::SET_TRAILER_INVERSE_MASS_SCALE(Vehicle vehicle, float p1) // 0x2A8F319B392E7B3F 0xE74E85CE b323
SET_TRAILER_LEGS_RAISED
void VEHICLE::SET_TRAILER_LEGS_RAISED(Vehicle vehicle) // 0x95CF53B3D687F9FA 0x06C47A6F b323
in the decompiled scripts, seems to be always called on the vehicle right after being attached to a trailer.
_SET_TRAILER_LEGS_LOWERED
void VEHICLE::_SET_TRAILER_LEGS_LOWERED(Any p0) // 0x878C75C09FBDB942 b1103
SET_VEHICLE_TYRE_FIXED
void VEHICLE::SET_VEHICLE_TYRE_FIXED(Vehicle vehicle, int tyreIndex) // 0x6E13FC662B882D1D 0xA42EFA6B b323
tyreIndex = 0 to 4 on normal vehicles '0 = wheel_lf / bike, plane or jet front '1 = wheel_rf '2 = wheel_lm / in 6 wheels trailer, plane or jet is first one on left '3 = wheel_rm / in 6 wheels trailer, plane or jet is first one on right '4 = wheel_lr / bike rear / in 6 wheels trailer, plane or jet is last one on left '5 = wheel_rr / in 6 wheels trailer, plane or jet is last one on right '45 = 6 wheels trailer mid wheel left '47 = 6 wheels trailer mid wheel right
SET_VEHICLE_NUMBER_PLATE_TEXT
void VEHICLE::SET_VEHICLE_NUMBER_PLATE_TEXT(Vehicle vehicle, const char* plateText) // 0x95A88F0B409CDA47 0x400F9556 b323
Sets a vehicle's license plate text. 8 chars maximum. Example: Ped playerPed = PLAYER::PLAYER_PED_ID(); Vehicle veh = PED::GET_VEHICLE_PED_IS_USING(playerPed); char *plateText = "KING"; VEHICLE::SET_VEHICLE_NUMBER_PLATE_TEXT(veh, plateText);
GET_VEHICLE_NUMBER_PLATE_TEXT
const char* VEHICLE::GET_VEHICLE_NUMBER_PLATE_TEXT(Vehicle vehicle) // 0x7CE1CCB9B293020E 0xE8522D58 b323
Returns the license plate text from a vehicle. 8 chars maximum.
GET_NUMBER_OF_VEHICLE_NUMBER_PLATES
int VEHICLE::GET_NUMBER_OF_VEHICLE_NUMBER_PLATES() // 0x4C4D6B2644F458CB 0xD24BC1AE b323
Returns the number of *types* of licence plates, enumerated below in SET_VEHICLE_NUMBER_PLATE_TEXT_INDEX.
SET_VEHICLE_NUMBER_PLATE_TEXT_INDEX
void VEHICLE::SET_VEHICLE_NUMBER_PLATE_TEXT_INDEX(Vehicle vehicle, int plateIndex) // 0x9088EB5A43FFB0A1 0xA1A1890E b323
Plates: Blue/White - 0 Yellow/black - 1 Yellow/Blue - 2 Blue/White2 - 3 Blue/White3 - 4 Yankton - 5
GET_VEHICLE_NUMBER_PLATE_TEXT_INDEX
int VEHICLE::GET_VEHICLE_NUMBER_PLATE_TEXT_INDEX(Vehicle vehicle) // 0xF11BC2DD9A3E7195 0x499747B6 b323
Returns the PlateType of a vehicle Blue_on_White_1 = 3, Blue_on_White_2 = 0, Blue_on_White_3 = 4, Yellow_on_Blue = 2, Yellow_on_Black = 1, North_Yankton = 5,
SET_RANDOM_TRAINS
void VEHICLE::SET_RANDOM_TRAINS(BOOL toggle) // 0x80D9F74197EA47D9 0xD461CA7F b323
CREATE_MISSION_TRAIN
Vehicle VEHICLE::CREATE_MISSION_TRAIN(int variation, float x, float y, float z, BOOL direction) // 0x63C6CCA8E68AE8C8 0xD4C2EAFD b323
Train models HAVE TO be loaded (requested) before you use this. For variation 15 - request: freight freightcar freightgrain freightcont1 freightcont2 freighttrailer
SWITCH_TRAIN_TRACK
void VEHICLE::SWITCH_TRAIN_TRACK(int trackId, BOOL state) // 0xFD813BB7DB977F20 0x68BFDD61 b323
Toggles whether ambient trains can spawn on the specified track or not `trackId` is the internal id of the train track to switch. `state` is whether ambient trains can spawn or not trackIds 0 (`trains1.dat`) Main track around SA 1 (`trains2.dat`) Davis Quartz Quarry branch 2 (`trains3.dat`) Second track alongside live track along Roy Lewenstein Blv. 3 (`trains4.dat`) Metro track circuit 4 (`trains5.dat`) Branch in Mirror Park Railyard 5 (`trains6.dat`) Branch in Mirror Park Railyard 6 (`trains7.dat`) LS branch to Mirror Park Railyard 7 (`trains8.dat`) Overground part of metro track along Forum Dr. 8 (`trains9.dat`) Branch to Mirror Park Railyard 9 (`trains10.dat`) Yankton train 10 (`trains11.dat`) Part of metro track near mission row 11 (`trains12.dat`) Yankton prologue mission train
SET_TRAIN_TRACK_SPAWN_FREQUENCY
void VEHICLE::SET_TRAIN_TRACK_SPAWN_FREQUENCY(int trackIndex, int frequency) // 0x21973BBF8D17EDFA 0xD5774FB7 b323
Only called once inside main_persitant with the parameters p0 = 0, p1 = 120000 trackIndex: 0 - 26
DELETE_ALL_TRAINS
void VEHICLE::DELETE_ALL_TRAINS() // 0x736A718577F39C7D 0x83DE7ABF b323
SET_TRAIN_SPEED
void VEHICLE::SET_TRAIN_SPEED(Vehicle train, float speed) // 0xAA0BC91BE0B796E3 0xDFC35E4D b323
SET_TRAIN_CRUISE_SPEED
void VEHICLE::SET_TRAIN_CRUISE_SPEED(Vehicle train, float speed) // 0x16469284DB8C62B5 0xB507F51D b323
SET_RANDOM_BOATS
void VEHICLE::SET_RANDOM_BOATS(BOOL toggle) // 0x84436EC293B1415F 0xB505BD89 b323
SET_GARBAGE_TRUCKS
void VEHICLE::SET_GARBAGE_TRUCKS(BOOL toggle) // 0x2AFD795EEAC8D30D 0xD9ABB0FF b323
DOES_VEHICLE_HAVE_STUCK_VEHICLE_CHECK
BOOL VEHICLE::DOES_VEHICLE_HAVE_STUCK_VEHICLE_CHECK(Vehicle vehicle) // 0x57E4C39DE5EE8470 0x5D91D9AC b323
Maximum amount of vehicles with vehicle stuck check appears to be 16.
GET_VEHICLE_RECORDING_ID
int VEHICLE::GET_VEHICLE_RECORDING_ID(int recording, const char* script) // 0x21543C612379DB3C 0x328D601D b323
See REQUEST_VEHICLE_RECORDING
REQUEST_VEHICLE_RECORDING
void VEHICLE::REQUEST_VEHICLE_RECORDING(int recording, const char* script) // 0xAF514CABE74CBF15 0x91AFEFD9 b323
Request the vehicle recording defined by the lowercase format string "%s%03d.yvr". For example, REQUEST_VEHICLE_RECORDING(1, "FBIs1UBER") corresponds to fbis1uber001.yvr. For all vehicle recording/playback natives, "script" is a common prefix that usually corresponds to the script/mission the recording is used in, "recording" is its int suffix, and "id" (e.g., in native GET_TOTAL_DURATION_OF_VEHICLE_RECORDING_ID) corresponds to a unique identifier within the recording streaming module. Note that only 24 recordings (hardcoded in multiple places) can ever active at a given time before clobbering begins.
HAS_VEHICLE_RECORDING_BEEN_LOADED
BOOL VEHICLE::HAS_VEHICLE_RECORDING_BEEN_LOADED(int recording, const char* script) // 0x300D614A4C785FC4 0xF52CD7F5 b323
See REQUEST_VEHICLE_RECORDING
REMOVE_VEHICLE_RECORDING
void VEHICLE::REMOVE_VEHICLE_RECORDING(int recording, const char* script) // 0xF1160ACCF98A3FC8 0xD3C05B00 b323
See REQUEST_VEHICLE_RECORDING
GET_POSITION_OF_VEHICLE_RECORDING_ID_AT_TIME
Vector3 VEHICLE::GET_POSITION_OF_VEHICLE_RECORDING_ID_AT_TIME(int id, float time) // 0x92523B76657A517D 0xF31973BB b323
GET_POSITION_OF_VEHICLE_RECORDING_AT_TIME
Vector3 VEHICLE::GET_POSITION_OF_VEHICLE_RECORDING_AT_TIME(int recording, float time, const char* script) // 0xD242728AA6F0FBA2 0x7178558D b323
This native does no interpolation between pathpoints. The same position will be returned for all times up to the next pathpoint in the recording. See REQUEST_VEHICLE_RECORDING
GET_ROTATION_OF_VEHICLE_RECORDING_ID_AT_TIME
Vector3 VEHICLE::GET_ROTATION_OF_VEHICLE_RECORDING_ID_AT_TIME(int id, float time) // 0xF0F2103EFAF8CBA7 0x4D1C15C2 b323
GET_ROTATION_OF_VEHICLE_RECORDING_AT_TIME
Vector3 VEHICLE::GET_ROTATION_OF_VEHICLE_RECORDING_AT_TIME(int recording, float time, const char* script) // 0x2058206FBE79A8AD 0xD96DEC68 b323
This native does no interpolation between pathpoints. The same rotation will be returned for all times up to the next pathpoint in the recording. See REQUEST_VEHICLE_RECORDING
GET_TOTAL_DURATION_OF_VEHICLE_RECORDING_ID
float VEHICLE::GET_TOTAL_DURATION_OF_VEHICLE_RECORDING_ID(int id) // 0x102D125411A7B6E6 0x7116785E b323
GET_TOTAL_DURATION_OF_VEHICLE_RECORDING
float VEHICLE::GET_TOTAL_DURATION_OF_VEHICLE_RECORDING(int recording, const char* script) // 0x0E48D1C262390950 0x5B35EEB7 b323
See REQUEST_VEHICLE_RECORDING
GET_POSITION_IN_RECORDING
float VEHICLE::GET_POSITION_IN_RECORDING(Vehicle vehicle) // 0x2DACD605FC681475 0x7DCD644C b323
Distance traveled in the vehicles current recording.
GET_TIME_POSITION_IN_RECORDING
float VEHICLE::GET_TIME_POSITION_IN_RECORDING(Vehicle vehicle) // 0x5746F3A7AB7FE544 0xF8C3E4A2 b323
Can be used with GET_TOTAL_DURATION_OF_VEHICLE_RECORDING{_ID} to compute a percentage.
START_PLAYBACK_RECORDED_VEHICLE
void VEHICLE::START_PLAYBACK_RECORDED_VEHICLE(Vehicle vehicle, int recording, const char* script, BOOL p3) // 0x3F878F92B3A7A071 0xCF614CA8 b323
p3 is some flag related to 'trailers' (invokes CVehicle::GetTrailer). See REQUEST_VEHICLE_RECORDING
START_PLAYBACK_RECORDED_VEHICLE_WITH_FLAGS
void VEHICLE::START_PLAYBACK_RECORDED_VEHICLE_WITH_FLAGS(Vehicle vehicle, int recording, const char* script, int flags, int time, int drivingStyle) // 0x7D80FD645D4DA346 0x4E721AD2 b323
flags requires further research, e.g., 0x4/0x8 are related to the AI driving task and 0x20 is internally set and interacts with dynamic entity components. time, often zero and capped at 500, is related to SET_PLAYBACK_TO_USE_AI_TRY_TO_REVERT_BACK_LATER
FORCE_PLAYBACK_RECORDED_VEHICLE_UPDATE
void VEHICLE::FORCE_PLAYBACK_RECORDED_VEHICLE_UPDATE(Vehicle vehicle, BOOL p1) // 0x1F2E4E06DEA8992B 0x01B91CD0 b323
Often called after START_PLAYBACK_RECORDED_VEHICLE and SKIP_TIME_IN_PLAYBACK_RECORDED_VEHICLE; similar in use to FORCE_ENTITY_AI_AND_ANIMATION_UPDATE.
STOP_PLAYBACK_RECORDED_VEHICLE
void VEHICLE::STOP_PLAYBACK_RECORDED_VEHICLE(Vehicle vehicle) // 0x54833611C17ABDEA 0xAE99C57C b323
PAUSE_PLAYBACK_RECORDED_VEHICLE
void VEHICLE::PAUSE_PLAYBACK_RECORDED_VEHICLE(Vehicle vehicle) // 0x632A689BF42301B1 0xCCF54912 b323
UNPAUSE_PLAYBACK_RECORDED_VEHICLE
void VEHICLE::UNPAUSE_PLAYBACK_RECORDED_VEHICLE(Vehicle vehicle) // 0x8879EE09268305D5 0x59060F75 b323
IS_PLAYBACK_GOING_ON_FOR_VEHICLE
BOOL VEHICLE::IS_PLAYBACK_GOING_ON_FOR_VEHICLE(Vehicle vehicle) // 0x1C8A4C2C19E68EEC 0x61F7650D b323
IS_PLAYBACK_USING_AI_GOING_ON_FOR_VEHICLE
BOOL VEHICLE::IS_PLAYBACK_USING_AI_GOING_ON_FOR_VEHICLE(Vehicle vehicle) // 0xAEA8FD591FAD4106 0x63022C58 b323
GET_CURRENT_PLAYBACK_FOR_VEHICLE
int VEHICLE::GET_CURRENT_PLAYBACK_FOR_VEHICLE(Vehicle vehicle) // 0x42BC05C27A946054 0xA3F44390 b323
SKIP_TO_END_AND_STOP_PLAYBACK_RECORDED_VEHICLE
void VEHICLE::SKIP_TO_END_AND_STOP_PLAYBACK_RECORDED_VEHICLE(Vehicle vehicle) // 0xAB8E2EDA0C0A5883 0x8DEA18C8 b323
SET_PLAYBACK_SPEED
void VEHICLE::SET_PLAYBACK_SPEED(Vehicle vehicle, float speed) // 0x6683AB880E427778 0x684E26E4 b323
START_PLAYBACK_RECORDED_VEHICLE_USING_AI
void VEHICLE::START_PLAYBACK_RECORDED_VEHICLE_USING_AI(Vehicle vehicle, int recording, const char* script, float speed, int drivingStyle) // 0x29DE5FA52D00428C 0x8DE8E24E b323
AI abides by the provided driving style (e.g., stopping at red lights or waiting behind traffic) while executing the specificed vehicle recording. 0x1F2E4E06DEA8992B is a related native that deals with the AI physics for such recordings.
SKIP_TIME_IN_PLAYBACK_RECORDED_VEHICLE
void VEHICLE::SKIP_TIME_IN_PLAYBACK_RECORDED_VEHICLE(Vehicle vehicle, float time) // 0x9438F7AD68771A20 0xCF3EFA4B b323
SET_TIME_POSITION_IN_RECORDING can be emulated by: desired_time - GET_TIME_POSITION_IN_RECORDING(vehicle)
SET_PLAYBACK_TO_USE_AI
void VEHICLE::SET_PLAYBACK_TO_USE_AI(Vehicle vehicle, int drivingStyle) // 0xA549C3B37EA28131 0xB536CCD7 b323
Identical to SET_PLAYBACK_TO_USE_AI_TRY_TO_REVERT_BACK_LATER with 0 as arguments for p1 and p3.
SET_PLAYBACK_TO_USE_AI_TRY_TO_REVERT_BACK_LATER
void VEHICLE::SET_PLAYBACK_TO_USE_AI_TRY_TO_REVERT_BACK_LATER(Vehicle vehicle, int time, int drivingStyle, BOOL p3) // 0x6E63860BBB190730 0x0C8ABAA4 b323
Time is number of milliseconds before reverting, zero for indefinitely.
_0x5845066D8A1EA7F7
void VEHICLE::_0x5845066D8A1EA7F7(Vehicle vehicle, float x, float y, float z, Any p4) // 0x5845066D8A1EA7F7 0x943A58EB b323
_0x796A877E459B99EA
void VEHICLE::_0x796A877E459B99EA(Any p0, float p1, float p2, float p3) // 0x796A877E459B99EA 0x5C9F477C b323
_0xFAF2A78061FD9EF4
void VEHICLE::_0xFAF2A78061FD9EF4(Any p0, float p1, float p2, float p3) // 0xFAF2A78061FD9EF4 0xCD83C393 b323
_0x063AE2B2CC273588
void VEHICLE::_0x063AE2B2CC273588(Vehicle vehicle, BOOL p1) // 0x063AE2B2CC273588 0x2EF8435C b323
A vehicle recording playback flag only used in jewelry_heist
EXPLODE_VEHICLE_IN_CUTSCENE
void VEHICLE::EXPLODE_VEHICLE_IN_CUTSCENE(Vehicle vehicle, BOOL p1) // 0x786A4EB67B01BF0B 0xA85207B5 b323
ADD_VEHICLE_STUCK_CHECK_WITH_WARP
void VEHICLE::ADD_VEHICLE_STUCK_CHECK_WITH_WARP(Any p0, float p1, Any p2, BOOL p3, BOOL p4, BOOL p5, Any p6) // 0x2FA9923062DD396C 0xC8B789AD b323
SET_VEHICLE_MODEL_IS_SUPPRESSED
void VEHICLE::SET_VEHICLE_MODEL_IS_SUPPRESSED(Hash model, BOOL suppressed) // 0x0FC2D89AC25A5814 0x42A08C9B b323
seems to make the vehicle stop spawning naturally in traffic. Here's an essential example: VEHICLE::SET_VEHICLE_MODEL_IS_SUPPRESSED(MISC::GET_HASH_KEY("taco"), true); god I hate taco vans Confirmed to work? Needs to be looped? Can not get it to work.
GET_RANDOM_VEHICLE_IN_SPHERE
Vehicle VEHICLE::GET_RANDOM_VEHICLE_IN_SPHERE(float x, float y, float z, float radius, Hash modelHash, int flags) // 0x386F6CE5BAF6091C 0x57216D03 b323
Gets a random vehicle in a sphere at the specified position, of the specified radius. x: The X-component of the position of the sphere. y: The Y-component of the position of the sphere. z: The Z-component of the position of the sphere. radius: The radius of the sphere. Max is 9999.9004. modelHash: The vehicle model to limit the selection to. Pass 0 for any model. flags: The bitwise flags that modifies the behaviour of this function. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_RANDOM_VEHICLE_FRONT_BUMPER_IN_SPHERE
Vehicle VEHICLE::GET_RANDOM_VEHICLE_FRONT_BUMPER_IN_SPHERE(float p0, float p1, float p2, float p3, int p4, int p5, int p6) // 0xC5574E0AEB86BA68 0xDCADEB66 b323
GET_RANDOM_VEHICLE_BACK_BUMPER_IN_SPHERE
Vehicle VEHICLE::GET_RANDOM_VEHICLE_BACK_BUMPER_IN_SPHERE(float p0, float p1, float p2, float p3, int p4, int p5, int p6) // 0xB50807EABE20A8DC 0xD6343F6B b323
GET_CLOSEST_VEHICLE
Vehicle VEHICLE::GET_CLOSEST_VEHICLE(float x, float y, float z, float radius, Hash modelHash, int flags) // 0xF73EB622C4F1689B 0xD7E26B2C b323
Example usage VEHICLE::GET_CLOSEST_VEHICLE(x, y, z, radius, hash, unknown leave at 70) x, y, z: Position to get closest vehicle to. radius: Max radius to get a vehicle. modelHash: Limit to vehicles with this model. 0 for any. flags: The bitwise flags altering the function's behaviour. Does not return police cars or helicopters. It seems to return police cars for me, does not seem to return helicopters, planes or boats for some reason Only returns non police cars and motorbikes with the flag set to 70 and modelHash to 0. ModelHash seems to always be 0 when not a modelHash in the scripts, as stated above. These flags were found in the b617d scripts: 0,2,4,6,7,23,127,260,2146,2175,12294,16384,16386,20503,32768,67590,67711,98309,100359. Converted to binary, each bit probably represents a flag as explained regarding another native here: gtaforums.com/topic/822314-guide-driving-styles Conversion of found flags to binary: pastebin.com/kghNFkRi At exactly 16384 which is 0100000000000000 in binary and 4000 in hexadecimal only planes are returned. It's probably more convenient to use worldGetAllVehicles(int *arr, int arrSize) and check the shortest distance yourself and sort if you want by checking the vehicle type with for example VEHICLE::IS_THIS_MODEL_A_BOAT ------------------------------------------------------------------------- Conclusion: This native is not worth trying to use. Use something like this instead: pastebin.com/xiFdXa7h Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_TRAIN_CARRIAGE
Entity VEHICLE::GET_TRAIN_CARRIAGE(Vehicle train, int trailerNumber) // 0x08AAFD0814722BC3 0x2544E7A6 b323
Corrected p1. it's basically the 'carriage/trailer number'. So if the train has 3 trailers you'd call the native once with a var or 3 times with 1, 2, 3.
DELETE_MISSION_TRAIN
void VEHICLE::DELETE_MISSION_TRAIN(Vehicle* train) // 0x5B76B14AE875C795 0x86C9497D b323
SET_MISSION_TRAIN_AS_NO_LONGER_NEEDED
void VEHICLE::SET_MISSION_TRAIN_AS_NO_LONGER_NEEDED(Vehicle* train, BOOL p1) // 0xBBE7648349B49BE8 0x19808560 b323
p1 is always 0
SET_MISSION_TRAIN_COORDS
void VEHICLE::SET_MISSION_TRAIN_COORDS(Vehicle train, float x, float y, float z) // 0x591CA673AA6AB736 0xD6D70803 b323
IS_THIS_MODEL_A_BOAT
BOOL VEHICLE::IS_THIS_MODEL_A_BOAT(Hash model) // 0x45A9187928F4B9E3 0x10F6085C b323
IS_THIS_MODEL_A_JETSKI
BOOL VEHICLE::IS_THIS_MODEL_A_JETSKI(Hash model) // 0x9537097412CF75FE b323
Checks if model is a boat, then checks for FLAG_IS_JETSKI.
IS_THIS_MODEL_A_PLANE
BOOL VEHICLE::IS_THIS_MODEL_A_PLANE(Hash model) // 0xA0948AB42D7BA0DE 0x3B3907BB b323
IS_THIS_MODEL_A_HELI
BOOL VEHICLE::IS_THIS_MODEL_A_HELI(Hash model) // 0xDCE4334788AF94EA 0x8AF7F568 b323
IS_THIS_MODEL_A_CAR
BOOL VEHICLE::IS_THIS_MODEL_A_CAR(Hash model) // 0x7F6DB52EEFC96DF8 0x60E4C22F b323
To check if the model is an amphibious car, see gtaforums.com/topic/717612-v-scriptnative-documentation-and-research/page-33#entry1069317363 (for build 944 and above only!)
IS_THIS_MODEL_A_TRAIN
BOOL VEHICLE::IS_THIS_MODEL_A_TRAIN(Hash model) // 0xAB935175B22E822B 0xF87DCFFD b323
IS_THIS_MODEL_A_BIKE
BOOL VEHICLE::IS_THIS_MODEL_A_BIKE(Hash model) // 0xB50C0B0CEDC6CE84 0x7E702CDD b323
IS_THIS_MODEL_A_BICYCLE
BOOL VEHICLE::IS_THIS_MODEL_A_BICYCLE(Hash model) // 0xBF94DD42F63BDED2 0x328E6FF5 b323
IS_THIS_MODEL_A_QUADBIKE
BOOL VEHICLE::IS_THIS_MODEL_A_QUADBIKE(Hash model) // 0x39DAC362EE65FA28 0xC1625277 b323
_IS_THIS_MODEL_AN_AMPHIBIOUS_CAR
BOOL VEHICLE::_IS_THIS_MODEL_AN_AMPHIBIOUS_CAR(Hash model) // 0x633F6F44A537EBB6 b944
_IS_THIS_MODEL_AN_AMPHIBIOUS_QUADBIKE
BOOL VEHICLE::_IS_THIS_MODEL_AN_AMPHIBIOUS_QUADBIKE(Hash model) // 0xA1A9FC1C76A6730D b1103
SET_HELI_BLADES_FULL_SPEED
void VEHICLE::SET_HELI_BLADES_FULL_SPEED(Vehicle vehicle) // 0xA178472EBB8AE60D 0x033A9408 b323
Equivalent of SET_HELI_BLADES_SPEED(vehicleHandle, 1.0f); this native works on planes to?
SET_HELI_BLADES_SPEED
void VEHICLE::SET_HELI_BLADES_SPEED(Vehicle vehicle, float speed) // 0xFD280B4D7F3ABC4D 0x5C7D4EA9 b323
Sets the speed of the helicopter blades in percentage of the full speed. vehicleHandle: The helicopter. speed: The speed in percentage, 0.0f being 0% and 1.0f being 100%.
_0x99CAD8E7AFDB60FA
void VEHICLE::_0x99CAD8E7AFDB60FA(Vehicle vehicle, float p1, float p2) // 0x99CAD8E7AFDB60FA 0x1128A45B b323
SET_VEHICLE_CAN_BE_TARGETTED
void VEHICLE::SET_VEHICLE_CAN_BE_TARGETTED(Vehicle vehicle, BOOL state) // 0x3750146A28097A82 0x64B70B1D b323
This has not yet been tested - it's just an assumption of what the types could be.
_0xDBC631F109350B8C
void VEHICLE::_0xDBC631F109350B8C(Vehicle vehicle, BOOL p1) // 0xDBC631F109350B8C 0x486C1280 b323
Related to locking the vehicle or something similar. In the decompiled scripts, its always called after VEHICLE::_SET_EXCLUSIVE_DRIVER(a_0, 0, 0); VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_ALL_PLAYERS(a_0, 1); VEHICLE::SET_VEHICLE_DOORS_LOCKED_FOR_PLAYER(a_0, PLAYER::PLAYER_ID(), 0); -->VEHICLE::_DBC631F109350B8C(a_0, 1);
SET_VEHICLE_CAN_BE_VISIBLY_DAMAGED
void VEHICLE::SET_VEHICLE_CAN_BE_VISIBLY_DAMAGED(Vehicle vehicle, BOOL state) // 0x4C7028F78FFD3681 0xC5D94017 b323
SET_VEHICLE_HAS_UNBREAKABLE_LIGHTS
void VEHICLE::SET_VEHICLE_HAS_UNBREAKABLE_LIGHTS(Vehicle vehicle, BOOL p1) // 0x1AA8A837D2169D94 0x009AB49E b323
_0x2311DD7159F00582
void VEHICLE::_0x2311DD7159F00582(Vehicle vehicle, BOOL p1) // 0x2311DD7159F00582 0x758C5E2E b323
_0x065D03A9D6B2C6B5
void VEHICLE::_0x065D03A9D6B2C6B5(Any p0, Any p1) // 0x065D03A9D6B2C6B5 b463
GET_VEHICLE_DIRT_LEVEL
float VEHICLE::GET_VEHICLE_DIRT_LEVEL(Vehicle vehicle) // 0x8F17BC8BA08DA62B 0xFD15C065 b323
Dirt level 0..15
SET_VEHICLE_DIRT_LEVEL
void VEHICLE::SET_VEHICLE_DIRT_LEVEL(Vehicle vehicle, float dirtLevel) // 0x79D3B596FE44EE8B 0x2B39128B b323
You can't use values greater than 15.0 You can see why here: pastebin.com/Wbn34fGD Also, R* does (float)(rand() % 15) to get a random dirt level when generating a vehicle.
_IS_VEHICLE_DAMAGED
BOOL VEHICLE::_IS_VEHICLE_DAMAGED(Vehicle vehicle) // 0xBCDC5017D3CE1E9E 0xDAC523BC b323
Appears to return true if the vehicle has any damage, including cosmetically. GET_*
IS_VEHICLE_DOOR_FULLY_OPEN
BOOL VEHICLE::IS_VEHICLE_DOOR_FULLY_OPEN(Vehicle vehicle, int doorIndex) // 0x3E933CFF7B111C22 0xC2385B6F b323
doorIndex: 0 = Front Left Door 1 = Front Right Door 2 = Back Left Door 3 = Back Right Door 4 = Hood 5 = Trunk 6 = Trunk2
SET_VEHICLE_ENGINE_ON
void VEHICLE::SET_VEHICLE_ENGINE_ON(Vehicle vehicle, BOOL value, BOOL instantly, BOOL disableAutoStart) // 0x2497C4717C8B881E 0x7FBC86F1 b323
Starts or stops the engine on the specified vehicle. vehicle: The vehicle to start or stop the engine on. value: true to turn the vehicle on; false to turn it off. instantly: if true, the vehicle will be set to the state immediately; otherwise, the current driver will physically turn on or off the engine. disableAutoStart: If true, the system will prevent the engine from starting when the player got into it. from what I've tested when I do this to a helicopter the propellers turn off after the engine has started. so is there any way to keep the heli propellers on?
SET_VEHICLE_UNDRIVEABLE
void VEHICLE::SET_VEHICLE_UNDRIVEABLE(Vehicle vehicle, BOOL toggle) // 0x8ABA6AF54B942B95 0x48D02A4E b323
SET_VEHICLE_PROVIDES_COVER
void VEHICLE::SET_VEHICLE_PROVIDES_COVER(Vehicle vehicle, BOOL toggle) // 0x5AFEEDD9BB2899D7 0xEFC01CA9 b323
SET_VEHICLE_DOOR_CONTROL
void VEHICLE::SET_VEHICLE_DOOR_CONTROL(Vehicle vehicle, int doorIndex, int speed, float angle) // 0xF2BFA0430F0A0FCB 0x572DD360 b323
doorIndex: 0 = Front Left Door (driver door) 1 = Front Right Door 2 = Back Left Door 3 = Back Right Door 4 = Hood 5 = Trunk 6 = Trunk2 p2: mostly use 0 and 1, very rare using 3 and 5 p3: It seems it is an angle Example in VB: Public Shared Sub Set_Vehicle_Door_Angle(Vehicle As Vehicle, Door As VehicleDoor, Angle As Single) Native.Function.Call(Hash.SET_VEHICLE_DOOR_CONTROL, Vehicle.Handle, Door, 1, Angle) End Sub I'm Not MentaL sfink: p2 is speed, 5 is fast, 1 is slow 3 is medium
SET_VEHICLE_DOOR_LATCHED
void VEHICLE::SET_VEHICLE_DOOR_LATCHED(Vehicle vehicle, int doorIndex, BOOL p2, BOOL p3, BOOL p4) // 0xA5A9653A8D2CAF48 0x4EB7BBFC b323
GET_VEHICLE_DOOR_ANGLE_RATIO
float VEHICLE::GET_VEHICLE_DOOR_ANGLE_RATIO(Vehicle vehicle, int door) // 0xFE3F9C29F7B32BD5 0x0E399C26 b323
example in vb: Public Shared Function Get_Vehicle_Door_Angle(Vehicle As Vehicle, Door As VehicleDoor) As Single Return Native.Function.Call(Of Single)(Hash.GET_VEHICLE_DOOR_ANGLE_RATIO, Vehicle.Handle, Door) End Function I'm Not MentaL
GET_PED_USING_VEHICLE_DOOR
Ped VEHICLE::GET_PED_USING_VEHICLE_DOOR(Vehicle vehicle, int doorIndex) // 0x218297BF0CFD853B 0x0630101F b323
SET_VEHICLE_DOOR_SHUT
void VEHICLE::SET_VEHICLE_DOOR_SHUT(Vehicle vehicle, int doorIndex, BOOL closeInstantly) // 0x93D9BD300D7789E5 0x142606BD b323
doorIndex: 0 = Front Left Door 1 = Front Right Door 2 = Back Left Door 3 = Back Right Door 4 = Hood 5 = Trunk 6 = Trunk2
SET_VEHICLE_DOOR_BROKEN
void VEHICLE::SET_VEHICLE_DOOR_BROKEN(Vehicle vehicle, int doorIndex, BOOL deleteDoor) // 0xD4D4F6A4AB575A33 0x8147FEA7 b323
doorIndex: 0 = Front Right Door 1 = Front Left Door 2 = Back Right Door 3 = Back Left Door 4 = Hood 5 = Trunk Changed last paramater from CreateDoorObject To NoDoorOnTheFloor because when on false, the door object is created,and not created when on true...the former parameter name was counter intuitive...(by Calderon) Calderon is a moron.
SET_VEHICLE_CAN_BREAK
void VEHICLE::SET_VEHICLE_CAN_BREAK(Vehicle vehicle, BOOL toggle) // 0x59BF8C3D52C92F66 0x90A810D1 b323
DOES_VEHICLE_HAVE_ROOF
BOOL VEHICLE::DOES_VEHICLE_HAVE_ROOF(Vehicle vehicle) // 0x8AC862B0B32C5B80 0xDB817403 b323
_0xC4B3347BD68BD609
void VEHICLE::_0xC4B3347BD68BD609(Any p0) // 0xC4B3347BD68BD609 b573
_0xD3301660A57C9272
void VEHICLE::_0xD3301660A57C9272(Any p0) // 0xD3301660A57C9272 b757
_0xB9562064627FF9DB
void VEHICLE::_0xB9562064627FF9DB(Any p0, Any p1) // 0xB9562064627FF9DB b573
IS_BIG_VEHICLE
BOOL VEHICLE::IS_BIG_VEHICLE(Vehicle vehicle) // 0x9F243D3919F442FE 0x9CDBA8DE b323
GET_NUMBER_OF_VEHICLE_COLOURS
int VEHICLE::GET_NUMBER_OF_VEHICLE_COLOURS(Vehicle vehicle) // 0x3B963160CD65D41E 0xF2442EE2 b323
Actually number of color combinations
SET_VEHICLE_COLOUR_COMBINATION
void VEHICLE::SET_VEHICLE_COLOUR_COMBINATION(Vehicle vehicle, int colorCombination) // 0x33E8CD3322E2FE31 0xA557AEAD b323
Sets the selected vehicle's colors to their default value (specific variant specified using the colorCombination parameter). Range of possible values for colorCombination is currently unknown, I couldn't find where these values are stored either (Disquse's guess was vehicles.meta but I haven't seen it in there.)
GET_VEHICLE_COLOUR_COMBINATION
int VEHICLE::GET_VEHICLE_COLOUR_COMBINATION(Vehicle vehicle) // 0x6A842D197F845D56 0x77AC1B4C b323
_SET_VEHICLE_XENON_LIGHTS_COLOR
void VEHICLE::_SET_VEHICLE_XENON_LIGHTS_COLOR(Vehicle vehicle, int colorIndex) // 0xE41033B25D003A07 b1604
`color`: is the paint index for the vehicle. Paint index goes from 0 to 12. Be aware that it only works on xenon lights. Example: https://i.imgur.com/yV3cpG9.png
_GET_VEHICLE_XENON_LIGHTS_COLOR
int VEHICLE::_GET_VEHICLE_XENON_LIGHTS_COLOR(Vehicle vehicle) // 0x3DFF319A831E0CDB b1604
Returns the headlight color index from the vehicle. Value between 0, 12. Use _SET_VEHICLE_HEADLIGHTS_COLOUR to set the headlights color for the vehicle. Must enable xenon headlights before it'll take affect. Returns an int, value between 0-12 or 255 if no color is set.
SET_VEHICLE_IS_CONSIDERED_BY_PLAYER
void VEHICLE::SET_VEHICLE_IS_CONSIDERED_BY_PLAYER(Vehicle vehicle, BOOL toggle) // 0x31B927BBC44156CD 0x14413319 b323
Setting this to false, makes the specified vehicle to where if you press Y your character doesn't even attempt the animation to enter the vehicle. Hence it's not considered aka ignored.
_0xBE5C1255A1830FF5
void VEHICLE::_0xBE5C1255A1830FF5(Vehicle vehicle, BOOL toggle) // 0xBE5C1255A1830FF5 0xA6D8D7A5 b323
_0x9BECD4B9FEF3F8A6
void VEHICLE::_0x9BECD4B9FEF3F8A6(Vehicle vehicle, BOOL p1) // 0x9BECD4B9FEF3F8A6 0xACAB8FF3 b323
_0x88BC673CA9E0AE99
void VEHICLE::_0x88BC673CA9E0AE99(Vehicle vehicle, BOOL p1) // 0x88BC673CA9E0AE99 0xF0E5C41D b323
_0xE851E480B814D4BA
void VEHICLE::_0xE851E480B814D4BA(Vehicle vehicle, BOOL p1) // 0xE851E480B814D4BA 0x2F98B4B7 b323
GET_RANDOM_VEHICLE_MODEL_IN_MEMORY
void VEHICLE::GET_RANDOM_VEHICLE_MODEL_IN_MEMORY(BOOL p0, Hash* modelHash, int* successIndicator) // 0x055BF0AC0C34F4FD 0xE2C45631 b323
Not present in the retail version! It's just a nullsub. p0 always true (except in one case) successIndicator: 0 if success, -1 if failed
GET_VEHICLE_DOOR_LOCK_STATUS
int VEHICLE::GET_VEHICLE_DOOR_LOCK_STATUS(Vehicle vehicle) // 0x25BC98A59C2EA962 0x0D72CEF2 b323
enum VehicleLockStatus = { None = 0, Unlocked = 1, Locked = 2, LockedForPlayer = 3, StickPlayerInside = 4, -- Doesn't allow players to exit the vehicle with the exit vehicle key. CanBeBrokenInto = 7, -- Can be broken into the car. If the glass is broken, the value will be set to 1 CanBeBrokenIntoPersist = 8, -- Can be broken into persist CannotBeTriedToEnter = 10, -- Cannot be tried to enter (Nothing happens when you press the vehicle enter key). }
_GET_VEHICLE_DOOR_DESTROY_TYPE
int VEHICLE::_GET_VEHICLE_DOOR_DESTROY_TYPE(Vehicle vehicle, int doorIndex) // 0xCA4AC3EAAE46EC7B b1103
Returns vehicle door destroy type previously set with _SET_VEHICLE_DOOR_DESTROY_TYPE
IS_VEHICLE_DOOR_DAMAGED
BOOL VEHICLE::IS_VEHICLE_DOOR_DAMAGED(Vehicle veh, int doorID) // 0xB8E181E559464527 0x4999E3C3 b323
doorID starts at 0, not seeming to skip any numbers. Four door vehicles intuitively range from 0 to 3.
_SET_VEHICLE_DOOR_CAN_BREAK
void VEHICLE::_SET_VEHICLE_DOOR_CAN_BREAK(Vehicle vehicle, int doorIndex, BOOL isBreakable) // 0x2FA133A4A9D37ED8 0x065B92B3 b323
Keeps Vehicle Doors/Hood/Trunk from breaking off
IS_VEHICLE_BUMPER_BOUNCING
BOOL VEHICLE::IS_VEHICLE_BUMPER_BOUNCING(Vehicle vehicle, BOOL frontBumper) // 0x27B926779DEB502D 0xB3A2CC4F b323
IS_VEHICLE_BUMPER_BROKEN_OFF
BOOL VEHICLE::IS_VEHICLE_BUMPER_BROKEN_OFF(Vehicle vehicle, BOOL front) // 0x468056A6BB6F3846 0xAF25C027 b323
IS_COP_VEHICLE_IN_AREA_3D
BOOL VEHICLE::IS_COP_VEHICLE_IN_AREA_3D(float x1, float x2, float y1, float y2, float z1, float z2) // 0x7EEF65D5F153E26A 0xFB16C6D1 b323
Usage: public bool isCopInRange(Vector3 Location, float Range) { return Function.Call<bool>(Hash.IS_COP_PED_IN_AREA_3D, Location.X - Range, Location.Y - Range, Location.Z - Range, Location.X + Range, Location.Y + Range, Location.Z + Range); }
IS_VEHICLE_ON_ALL_WHEELS
BOOL VEHICLE::IS_VEHICLE_ON_ALL_WHEELS(Vehicle vehicle) // 0xB104CD1BABF302E2 0x10089F8E b323
Public Function isVehicleOnAllWheels(vh As Vehicle) As Boolean Return Native.Function.Call(Of Boolean)(Hash.IS_VEHICLE_ON_ALL_WHEELS, vh) End Function
_GET_VEHICLE_MODEL_MONETARY_VALUE
int VEHICLE::_GET_VEHICLE_MODEL_MONETARY_VALUE(Hash vehicleModel) // 0x5873C14A52D74236 b463
Returns `nMonetaryValue` from handling.meta for specific model.
GET_VEHICLE_LAYOUT_HASH
Hash VEHICLE::GET_VEHICLE_LAYOUT_HASH(Vehicle vehicle) // 0x28D37D4F71AC5C58 0xE0B35187 b323
_0xA01BC64DD4BFBBAC
Any VEHICLE::_0xA01BC64DD4BFBBAC(Vehicle vehicle, int p1) // 0xA01BC64DD4BFBBAC b323
SET_RENDER_TRAIN_AS_DERAILED
void VEHICLE::SET_RENDER_TRAIN_AS_DERAILED(Vehicle train, BOOL toggle) // 0x317B11A312DF5534 0x899D9092 b323
makes the train all jumbled up and derailed as it moves on the tracks (though that wont stop it from its normal operations)
SET_VEHICLE_EXTRA_COLOURS
void VEHICLE::SET_VEHICLE_EXTRA_COLOURS(Vehicle vehicle, int pearlescentColor, int wheelColor) // 0x2036F561ADD12E33 0x515DB2A0 b323
They use the same color indexs as SET_VEHICLE_COLOURS.
GET_VEHICLE_EXTRA_COLOURS
void VEHICLE::GET_VEHICLE_EXTRA_COLOURS(Vehicle vehicle, int* pearlescentColor, int* wheelColor) // 0x3BC4245933A166F7 0x80E4659B b323
_SET_VEHICLE_INTERIOR_COLOR
void VEHICLE::_SET_VEHICLE_INTERIOR_COLOR(Vehicle vehicle, int color) // 0xF40DD601A65F7F19 b505
_GET_VEHICLE_INTERIOR_COLOR
void VEHICLE::_GET_VEHICLE_INTERIOR_COLOR(Vehicle vehicle, int* color) // 0x7D1464D472D32136 b505
_SET_VEHICLE_DASHBOARD_COLOR
void VEHICLE::_SET_VEHICLE_DASHBOARD_COLOR(Vehicle vehicle, int color) // 0x6089CDF6A57F326C b505
_GET_VEHICLE_DASHBOARD_COLOR
void VEHICLE::_GET_VEHICLE_DASHBOARD_COLOR(Vehicle vehicle, int* color) // 0xB7635E80A5C31BFF b505
STOP_ALL_GARAGE_ACTIVITY
void VEHICLE::STOP_ALL_GARAGE_ACTIVITY() // 0x0F87E938BDF29D66 0x17A0BCE5 b323
SET_VEHICLE_FIXED
void VEHICLE::SET_VEHICLE_FIXED(Vehicle vehicle) // 0x115722B1B9C14C1C 0x17469AA1 b323
This fixes a vehicle. If the vehicle's engine's broken then you cannot fix it with this native.
SET_VEHICLE_DEFORMATION_FIXED
void VEHICLE::SET_VEHICLE_DEFORMATION_FIXED(Vehicle vehicle) // 0x953DA1E1B12C0491 0xDD2920C8 b323
This fixes the deformation of a vehicle but the vehicle health doesn't improve
_SET_VEHICLE_CAN_ENGINE_OPERATE_ON_FIRE
void VEHICLE::_SET_VEHICLE_CAN_ENGINE_OPERATE_ON_FIRE(Vehicle vehicle, BOOL toggle) // 0x206BC5DC9D1AC70A 0x8EACBD13 b323
SET_VEHICLE_CAN_LEAK_OIL
void VEHICLE::SET_VEHICLE_CAN_LEAK_OIL(Vehicle vehicle, BOOL toggle) // 0x51BB2D88D31A914B 0x88F0F7E7 b323
SET_VEHICLE_CAN_LEAK_PETROL
void VEHICLE::SET_VEHICLE_CAN_LEAK_PETROL(Vehicle vehicle, BOOL toggle) // 0x192547247864DFDD 0x90D6EE57 b323
SET_DISABLE_VEHICLE_PETROL_TANK_FIRES
void VEHICLE::SET_DISABLE_VEHICLE_PETROL_TANK_FIRES(Vehicle vehicle, BOOL toggle) // 0x465BF26AB9684352 0xC40192B5 b323
SET_DISABLE_VEHICLE_PETROL_TANK_DAMAGE
void VEHICLE::SET_DISABLE_VEHICLE_PETROL_TANK_DAMAGE(Vehicle vehicle, BOOL toggle) // 0x37C8252A7C92D017 0xAD3E05F2 b323
SET_DISABLE_VEHICLE_ENGINE_FIRES
void VEHICLE::SET_DISABLE_VEHICLE_ENGINE_FIRES(Vehicle vehicle, BOOL toggle) // 0x91A0BD635321F145 0x1784BA1A b323
_0xC50CE861B55EAB8B
void VEHICLE::_0xC50CE861B55EAB8B(Vehicle vehicle, BOOL p1) // 0xC50CE861B55EAB8B 0x40C323AE b323
SET_VEHICLE_LI*
_0x6EBFB22D646FFC18
void VEHICLE::_0x6EBFB22D646FFC18(Vehicle vehicle, BOOL p1) // 0x6EBFB22D646FFC18 0x847F1304 b323
sfink: sets bit in vehicle's structure, used by maintransition, fm_mission_controller, mission_race and a couple of other scripts. see dissassembly: CVehicle *__fastcall sub_140CDAA10(signed int a1, char a2) { CVehicle *result; // rax@1 result = EntityAsCVehicle(a1); if ( result ) { result->field_886 &= 0xEFu; result->field_886 |= 16 * (a2 & 1); } return result; }
SET_DISABLE_PRETEND_OCCUPANTS
void VEHICLE::SET_DISABLE_PRETEND_OCCUPANTS(Vehicle vehicle, BOOL toggle) // 0x25367DE49D64CF16 0xCBD98BA1 b323
REMOVE_VEHICLES_FROM_GENERATORS_IN_AREA
void VEHICLE::REMOVE_VEHICLES_FROM_GENERATORS_IN_AREA(float x1, float y1, float z1, float x2, float y2, float z2, Any unk) // 0x46A1E1A299EC4BBA 0x42CC15E0 b323
SET_VEHICLE_STEER_BIAS
void VEHICLE::SET_VEHICLE_STEER_BIAS(Vehicle vehicle, float value) // 0x42A8EC77D5150CBE 0x7357C1EB b323
Locks the vehicle's steering to the desired angle, explained below. Requires to be called onTick. Steering is unlocked the moment the function stops being called on the vehicle. Steer bias: -1.0 = full right 0.0 = centered steering 1.0 = full left
IS_VEHICLE_EXTRA_TURNED_ON
BOOL VEHICLE::IS_VEHICLE_EXTRA_TURNED_ON(Vehicle vehicle, int extraId) // 0xD2E6822DBFD6C8BD 0x042098B5 b323
SET_VEHICLE_EXTRA
void VEHICLE::SET_VEHICLE_EXTRA(Vehicle vehicle, int extraId, BOOL disable) // 0x7EE3A3C5E4A40CC9 0x642D065C b323
Note: only some vehicle have extras extra ids are from 1 - 9 depending on the vehicle ------------------------------------------------- ^ not sure if outdated or simply wrong. Max extra ID for b944 is 14 ------------------------------------------------- p2 is not a on/off toggle. mostly 0 means on and 1 means off. not sure if it really should be a BOOL.
DOES_EXTRA_EXIST
BOOL VEHICLE::DOES_EXTRA_EXIST(Vehicle vehicle, int extraId) // 0x1262D55792428154 0x409411CC b323
Checks via CVehicleModelInfo
_DOES_VEHICLE_TYRE_EXIST
BOOL VEHICLE::_DOES_VEHICLE_TYRE_EXIST(Vehicle vehicle, int tyreIndex) // 0x534E36D4DB9ECC5D b1493
Checks if vehicle tyre at index exists. Also returns false if tyre was removed.
SET_CONVERTIBLE_ROOF
void VEHICLE::SET_CONVERTIBLE_ROOF(Vehicle vehicle, BOOL p1) // 0xF39C4F538B5124C2 0xC87B6A51 b323
LOWER_CONVERTIBLE_ROOF
void VEHICLE::LOWER_CONVERTIBLE_ROOF(Vehicle vehicle, BOOL instantlyLower) // 0xDED51F703D0FA83D 0xC5F72EAE b323
RAISE_CONVERTIBLE_ROOF
void VEHICLE::RAISE_CONVERTIBLE_ROOF(Vehicle vehicle, BOOL instantlyRaise) // 0x8F5FB35D7E88FC70 0xA4E4CBA3 b323
GET_CONVERTIBLE_ROOF_STATE
int VEHICLE::GET_CONVERTIBLE_ROOF_STATE(Vehicle vehicle) // 0xF8C397922FC03F41 0x1B09714D b323
0 -> up 1 -> lowering down 2 -> down 3 -> raising up
IS_VEHICLE_A_CONVERTIBLE
BOOL VEHICLE::IS_VEHICLE_A_CONVERTIBLE(Vehicle vehicle, BOOL p1) // 0x52F357A30698BCCE 0x6EF54490 b323
p1 is false almost always. However, in launcher_carwash/carwash1/carwash2 scripts, p1 is true and is accompanied by DOES_VEHICLE_HAVE_ROOF
_TRANSFORM_VEHICLE_TO_SUBMARINE
void VEHICLE::_TRANSFORM_VEHICLE_TO_SUBMARINE(Vehicle vehicle, BOOL noAnimation) // 0xBE4C854FFDB6EEBE b1365
Transforms the `stormberg` to its "water vehicle" variant. If the vehicle is already in that state then the vehicle transformation audio will still play, but the vehicle won't change at all.
_TRANSFORM_SUBMARINE_TO_VEHICLE
void VEHICLE::_TRANSFORM_SUBMARINE_TO_VEHICLE(Vehicle vehicle, BOOL noAnimation) // 0x2A69FFD1B42BFF9E b1290
Transforms the `stormberg` to its "road vehicle" variant. If the vehicle is already in that state then the vehicle transformation audio will still play, but the vehicle won't change at all.
_GET_IS_SUBMARINE_VEHICLE_TRANSFORMED
BOOL VEHICLE::_GET_IS_SUBMARINE_VEHICLE_TRANSFORMED(Vehicle vehicle) // 0xA77DC70BD689A1E5 b1290
IS_VEHICLE_STOPPED_AT_TRAFFIC_LIGHTS
BOOL VEHICLE::IS_VEHICLE_STOPPED_AT_TRAFFIC_LIGHTS(Vehicle vehicle) // 0x2959F696AE390A99 0x69200FA4 b323
Is this for red lights only? more testing required.
SET_VEHICLE_DAMAGE
void VEHICLE::SET_VEHICLE_DAMAGE(Vehicle vehicle, float xOffset, float yOffset, float zOffset, float damage, float radius, BOOL focusOnModel) // 0xA1DD317EA8FD4F29 0x21B458B2 b323
Apply damage to vehicle at a location. Location is relative to vehicle model (not world). Radius of effect damage applied in a sphere at impact location When `focusOnModel` set to `true`, the damage sphere will travel towards the vehicle from the given point, thus guaranteeing an impact
_0x35BB21DE06784373
void VEHICLE::_0x35BB21DE06784373(Any p0, Any p1) // 0x35BB21DE06784373 b463
GET_VEHICLE_ENGINE_HEALTH
float VEHICLE::GET_VEHICLE_ENGINE_HEALTH(Vehicle vehicle) // 0xC45D23BAF168AAB8 0x8880038A b323
Returns 1000.0 if the function is unable to get the address of the specified vehicle or if it's not a vehicle. Minimum: -4000 Maximum: 1000 -4000: Engine is destroyed 0 and below: Engine catches fire and health rapidly declines 300: Engine is smoking and losing functionality 1000: Engine is perfect
SET_VEHICLE_ENGINE_HEALTH
void VEHICLE::SET_VEHICLE_ENGINE_HEALTH(Vehicle vehicle, float health) // 0x45F6D8EEF34ABEF1 0x1B760FB5 b323
1000 is max health Begins leaking gas at around 650 health -999.90002441406 appears to be minimum health, although nothing special occurs <- false statement ------------------------- Minimum: -4000 Maximum: 1000 -4000: Engine is destroyed 0 and below: Engine catches fire and health rapidly declines 300: Engine is smoking and losing functionality 1000: Engine is perfect
_SET_PLANE_ENGINE_HEALTH
void VEHICLE::_SET_PLANE_ENGINE_HEALTH(Vehicle vehicle, float health) // 0x2A86A0475B6A1434 b1103
Works just like SET_VEHICLE_ENGINE_HEALTH, didn't saw any difference. But this native works only for planes.
GET_VEHICLE_PETROL_TANK_HEALTH
float VEHICLE::GET_VEHICLE_PETROL_TANK_HEALTH(Vehicle vehicle) // 0x7D5DABE888D2D074 0xE41595CE b323
1000 is max health Begins leaking gas at around 650 health -999.90002441406 appears to be minimum health, although nothing special occurs
SET_VEHICLE_PETROL_TANK_HEALTH
void VEHICLE::SET_VEHICLE_PETROL_TANK_HEALTH(Vehicle vehicle, float health) // 0x70DB57649FA8D0D8 0x660A3692 b323
1000 is max health Begins leaking gas at around 650 health -999.90002441406 appears to be minimum health, although nothing special occurs
IS_VEHICLE_STUCK_TIMER_UP
BOOL VEHICLE::IS_VEHICLE_STUCK_TIMER_UP(Vehicle vehicle, int p1, int p2) // 0x679BE1DAF71DA874 0x2FCF58C1 b323
p1 can be anywhere from 0 to 3 in the scripts. p2 is generally somewhere in the 1000 to 10000 range.
RESET_VEHICLE_STUCK_TIMER
void VEHICLE::RESET_VEHICLE_STUCK_TIMER(Vehicle vehicle, int nullAttributes) // 0xD7591B0065AFAA7A 0xEF2A6016 b323
The inner function has a switch on the second parameter. It's the stuck timer index. Here's some pseudo code I wrote for the inner function: void __fastcall NATIVE_RESET_VEHICLE_STUCK_TIMER_INNER(CUnknown* unknownClassInVehicle, int timerIndex) { switch (timerIndex) { case 0: unknownClassInVehicle->FirstStuckTimer = (WORD)0u; case 1: unknownClassInVehicle->SecondStuckTimer = (WORD)0u; case 2: unknownClassInVehicle->ThirdStuckTimer = (WORD)0u; case 3: unknownClassInVehicle->FourthStuckTimer = (WORD)0u; case 4: unknownClassInVehicle->FirstStuckTimer = (WORD)0u; unknownClassInVehicle->SecondStuckTimer = (WORD)0u; unknownClassInVehicle->ThirdStuckTimer = (WORD)0u; unknownClassInVehicle->FourthStuckTimer = (WORD)0u; break; }; }
IS_VEHICLE_DRIVEABLE
BOOL VEHICLE::IS_VEHICLE_DRIVEABLE(Vehicle vehicle, BOOL isOnFireCheck) // 0x4C241E39B23DF959 0x41A7267A b323
p1 is always 0 in the scripts. p1 = check if vehicle is on fire
SET_VEHICLE_HAS_BEEN_OWNED_BY_PLAYER
void VEHICLE::SET_VEHICLE_HAS_BEEN_OWNED_BY_PLAYER(Vehicle vehicle, BOOL owned) // 0x2B5F9D2AF1F1722D 0xB4D3DBFB b323
SET_VEHICLE_NEEDS_TO_BE_HOTWIRED
void VEHICLE::SET_VEHICLE_NEEDS_TO_BE_HOTWIRED(Vehicle vehicle, BOOL toggle) // 0xFBA550EA44404EE6 0xD8260751 b323
_0x9F3F689B814F2599
void VEHICLE::_0x9F3F689B814F2599(Vehicle vehicle, BOOL p1) // 0x9F3F689B814F2599 b323
_0x4E74E62E0A97E901
void VEHICLE::_0x4E74E62E0A97E901(Vehicle vehicle, BOOL p1) // 0x4E74E62E0A97E901 b323
START_VEHICLE_HORN
void VEHICLE::START_VEHICLE_HORN(Vehicle vehicle, int duration, Hash mode, BOOL forever) // 0x9C8C6504B5B63D2C 0x0DF5ADB3 b323
Sounds the horn for the specified vehicle. vehicle: The vehicle to activate the horn for. mode: The hash of "NORMAL" or "HELDDOWN". Can be 0. duration: The duration to sound the horn, in milliseconds. Note: If a player is in the vehicle, it will only sound briefly.
_SET_VEHICLE_SILENT
void VEHICLE::_SET_VEHICLE_SILENT(Vehicle vehicle, BOOL toggle) // 0x9D44FCCE98450843 0x968E5770 b323
If set to TRUE, it seems to suppress door noises and doesn't allow the horn to be continuous. -Doesn't seem to suppress door noises for me, at least with the vehicle add-on I tried
SET_VEHICLE_HAS_STRONG_AXLES
void VEHICLE::SET_VEHICLE_HAS_STRONG_AXLES(Vehicle vehicle, BOOL toggle) // 0x92F0CF722BC4202F 0x0D1CBC65 b323
if true, axles won't bend.
GET_DISPLAY_NAME_FROM_VEHICLE_MODEL
const char* VEHICLE::GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(Hash modelHash) // 0xB215AAC32D25D019 0xEC86DF39 b323
Returns model name of vehicle in all caps. Needs to be displayed through localizing text natives to get proper display name. ----------------------------------------------------------------------------------------------------------------------------------------- While often the case, this does not simply return the model name of the vehicle (which could be hashed to return the model hash). Variations of the same vehicle may also use the same display name. ----------------------------------------------------------------------------------------------------------------------------------------- Returns "CARNOTFOUND" if the hash doesn't match a vehicle hash. Using HUD::_GET_LABEL_TEXT, you can get the localized name. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
_GET_MAKE_NAME_FROM_VEHICLE_MODEL
const char* VEHICLE::_GET_MAKE_NAME_FROM_VEHICLE_MODEL(Hash modelHash) // 0xF7AF4F159FF99F97 b1868
Will return a vehicle's manufacturer display label. Returns "CARNOTFOUND" if the hash doesn't match a vehicle hash. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_VEHICLE_DEFORMATION_AT_POS
Vector3 VEHICLE::GET_VEHICLE_DEFORMATION_AT_POS(Vehicle vehicle, float offsetX, float offsetY, float offsetZ) // 0x4EC6CFBC7B2E9536 0xABF02075 b323
The only example I can find of this function in the scripts, is this: struct _s = VEHICLE::GET_VEHICLE_DEFORMATION_AT_POS(rPtr((A_0) + 4), 1.21f, 6.15f, 0.3f); ----------------------------------------------------------------------------------------------------------------------------------------- PC scripts: v_5/*{3}*/ = VEHICLE::GET_VEHICLE_DEFORMATION_AT_POS(a_0._f1, 1.21, 6.15, 0.3);
SET_VEHICLE_LIVERY
void VEHICLE::SET_VEHICLE_LIVERY(Vehicle vehicle, int livery) // 0x60BF608F1B8CD1B6 0x7AD87059 b323
GET_VEHICLE_LIVERY
int VEHICLE::GET_VEHICLE_LIVERY(Vehicle vehicle) // 0x2BB9230590DA5E8A 0xEC82A51D b323
-1 = no livery
GET_VEHICLE_LIVERY_COUNT
int VEHICLE::GET_VEHICLE_LIVERY_COUNT(Vehicle vehicle) // 0x87B63E25A529D526 0xFB0CA947 b323
Returns -1 if the vehicle has no livery
_SET_VEHICLE_ROOF_LIVERY
void VEHICLE::_SET_VEHICLE_ROOF_LIVERY(Vehicle vehicle, int livery) // 0xA6D3A8750DC73270 b505
Used to set the tornado custom (convertible) rooftop livery. Livery value that works for tornado custom is between 0 and 9 from what i can tell. Maybe 0-8 even. Might work on other custom vehicles but im not sure what those might be, only confirmed it working with the tornado custom.
_GET_VEHICLE_ROOF_LIVERY
int VEHICLE::_GET_VEHICLE_ROOF_LIVERY(Vehicle vehicle) // 0x60190048C0764A26 b505
Returns index of the current vehicle's rooftop livery. A getter for _SET_VEHICLE_ROOF_LIVERY.
_GET_VEHICLE_ROOF_LIVERY_COUNT
int VEHICLE::_GET_VEHICLE_ROOF_LIVERY_COUNT(Vehicle vehicle) // 0x5ECB40269053C0D4 b505
Returns a number of available rooftop liveries, or -1 if vehicle has no rooftop liveries available.
IS_VEHICLE_WINDOW_INTACT
BOOL VEHICLE::IS_VEHICLE_WINDOW_INTACT(Vehicle vehicle, int windowIndex) // 0x46E571A0E20D01F1 0xAC4EF23D b323
This will return false if the window is broken, or rolled down. Window indexes: 0 = Front Right Window 1 = Front Left Window 2 = Back Right Window 3 = Back Left Window Those numbers go on for vehicles that have more than 4 doors with windows.
ARE_ALL_VEHICLE_WINDOWS_INTACT
BOOL VEHICLE::ARE_ALL_VEHICLE_WINDOWS_INTACT(Vehicle vehicle) // 0x11D862A3E977A9EF 0xBB619744 b323
Appears to return false if any window is broken.
ARE_ANY_VEHICLE_SEATS_FREE
BOOL VEHICLE::ARE_ANY_VEHICLE_SEATS_FREE(Vehicle vehicle) // 0x2D34FC3BC4ADB780 0x648E685A b323
Returns false if every seat is occupied.
RESET_VEHICLE_WHEELS
void VEHICLE::RESET_VEHICLE_WHEELS(Vehicle vehicle, BOOL toggle) // 0x21D2E5662C1F6FED 0xD5FFE779 b323
IS_HELI_PART_BROKEN
BOOL VEHICLE::IS_HELI_PART_BROKEN(Vehicle vehicle, BOOL p1, BOOL p2, BOOL p3) // 0xBC74B4BE25EB6C8A 0xF4E4C439 b323
GET_HELI_MAIN_ROTOR_HEALTH
float VEHICLE::GET_HELI_MAIN_ROTOR_HEALTH(Vehicle vehicle) // 0xE4CB7541F413D2C5 0xF01E2AAB b323
Max 1000. At 0 the main rotor will stall.
GET_HELI_TAIL_ROTOR_HEALTH
float VEHICLE::GET_HELI_TAIL_ROTOR_HEALTH(Vehicle vehicle) // 0xAE8CE82A4219AC8C 0xA41BC13D b323
Max 1000. At 0 the tail rotor will stall.
GET_HELI_TAIL_BOOM_HEALTH
float VEHICLE::GET_HELI_TAIL_BOOM_HEALTH(Vehicle vehicle) // 0xAC51915D27E4A5F7 0x8A68388F b323
Max 1000. At -100 both helicopter rotors will stall.
_0x4056EA1105F5ABD7
void VEHICLE::_0x4056EA1105F5ABD7(Any p0, Any p1) // 0x4056EA1105F5ABD7 b463
_SET_HELI_TAIL_ROTOR_HEALTH
void VEHICLE::_SET_HELI_TAIL_ROTOR_HEALTH(Vehicle vehicle, float health) // 0xFE205F38AAA58E5B b463
SET_HELI_TAIL_EXPLODE_THROW_DASHBOARD
void VEHICLE::SET_HELI_TAIL_EXPLODE_THROW_DASHBOARD(Vehicle vehicle, BOOL p1) // 0x3EC8BF18AA453FE9 0x2916D69B b323
SET_VEHICLE_NAME_DEBUG
void VEHICLE::SET_VEHICLE_NAME_DEBUG(Vehicle vehicle, const char* name) // 0xBFDF984E2C22B94F 0xA712FF5C b323
NOTE: Debugging functions are not present in the retail version of the game.
SET_VEHICLE_EXPLODES_ON_HIGH_EXPLOSION_DAMAGE
void VEHICLE::SET_VEHICLE_EXPLODES_ON_HIGH_EXPLOSION_DAMAGE(Vehicle vehicle, BOOL toggle) // 0x71B0892EC081D60A 0x38CC692B b323
Sets a vehicle to be strongly resistant to explosions. p0 is the vehicle; set p1 to false to toggle the effect on/off.
_0xD565F438137F0E10
void VEHICLE::_0xD565F438137F0E10(Any p0, Any p1) // 0xD565F438137F0E10 b1103
_0x3441CAD2F2231923
void VEHICLE::_0x3441CAD2F2231923(Vehicle vehicle, BOOL p1) // 0x3441CAD2F2231923 0xC306A9A3 b323
SET_VEHICLE_DISABLE_TOWING
void VEHICLE::SET_VEHICLE_DISABLE_TOWING(Vehicle vehicle, BOOL toggle) // 0x2B6747FAA9DB9D6B 0x95A9ACCB b323
_DOES_VEHICLE_HAVE_LANDING_GEAR
BOOL VEHICLE::_DOES_VEHICLE_HAVE_LANDING_GEAR(Vehicle vehicle) // 0xE43701C36CAFF1A4 b1180
CONTROL_LANDING_GEAR
void VEHICLE::CONTROL_LANDING_GEAR(Vehicle vehicle, int state) // 0xCFC8BE9A5E1FE575 0x24F873FB b323
Works for vehicles with a retractable landing gear landing gear states: 0: Deployed 1: Closing 2: Opening 3: Retracted what can I use to make the hydra thing forward?
GET_LANDING_GEAR_STATE
int VEHICLE::GET_LANDING_GEAR_STATE(Vehicle vehicle) // 0x9B0F3DCA3DB0F4CD 0xA6F02670 b323
Landing gear states: 0: Deployed 1: Closing (Retracting) 2:(Landing gear state 2 is never used.) 3: Opening (Deploying) 4: Retracted Returns the current state of the vehicles landing gear.
IS_ANY_VEHICLE_NEAR_POINT
BOOL VEHICLE::IS_ANY_VEHICLE_NEAR_POINT(float x, float y, float z, float radius) // 0x61E1DD6125A3EEE6 0x2867A834 b323
REQUEST_VEHICLE_HIGH_DETAIL_MODEL
void VEHICLE::REQUEST_VEHICLE_HIGH_DETAIL_MODEL(Vehicle vehicle) // 0xA6E9FDCB2C76785E 0x9DA21956 b323
REMOVE_VEHICLE_HIGH_DETAIL_MODEL
void VEHICLE::REMOVE_VEHICLE_HIGH_DETAIL_MODEL(Vehicle vehicle) // 0x00689CDE5F7C6787 0x382BE070 b323
IS_VEHICLE_HIGH_DETAIL
BOOL VEHICLE::IS_VEHICLE_HIGH_DETAIL(Vehicle vehicle) // 0x1F25887F3C104278 0x55D41928 b323
REQUEST_VEHICLE_ASSET
void VEHICLE::REQUEST_VEHICLE_ASSET(Hash vehicleHash, int vehicleAsset) // 0x81A15811460FAB3A 0x902B4F06 b323
REQUEST_VEHICLE_ASSET(GET_HASH_KEY(cargobob3), 3); vehicle found that have asset's: cargobob3 submersible blazer
HAS_VEHICLE_ASSET_LOADED
BOOL VEHICLE::HAS_VEHICLE_ASSET_LOADED(int vehicleAsset) // 0x1BBE0523B8DB9A21 0x8DAAC3CB b323
REMOVE_VEHICLE_ASSET
void VEHICLE::REMOVE_VEHICLE_ASSET(int vehicleAsset) // 0xACE699C71AB9DEB5 0x9620E9C6 b323
SET_VEHICLE_TOW_TRUCK_ARM_POSITION
void VEHICLE::SET_VEHICLE_TOW_TRUCK_ARM_POSITION(Vehicle vehicle, float position) // 0xFE54B92A344583CA 0x88236E22 b323
Sets how much the crane on the tow truck is raised, where 0.0 is fully lowered and 1.0 is fully raised.
ATTACH_VEHICLE_TO_TOW_TRUCK
void VEHICLE::ATTACH_VEHICLE_TO_TOW_TRUCK(Vehicle towTruck, Vehicle vehicle, BOOL rear, float hookOffsetX, float hookOffsetY, float hookOffsetZ) // 0x29A16F8D621C4508 0x8151571A b323
HookOffset defines where the hook is attached. leave at 0 for default attachment.
DETACH_VEHICLE_FROM_TOW_TRUCK
void VEHICLE::DETACH_VEHICLE_FROM_TOW_TRUCK(Vehicle towTruck, Vehicle vehicle) // 0xC2DB6B6708350ED8 0xC666CF33 b323
First two parameters swapped. Scripts verify that towTruck is the first parameter, not the second.
DETACH_VEHICLE_FROM_ANY_TOW_TRUCK
BOOL VEHICLE::DETACH_VEHICLE_FROM_ANY_TOW_TRUCK(Vehicle vehicle) // 0xD0E9CE05A1E68CD8 0x3BF93651 b323
IS_VEHICLE_ATTACHED_TO_TOW_TRUCK
BOOL VEHICLE::IS_VEHICLE_ATTACHED_TO_TOW_TRUCK(Vehicle towTruck, Vehicle vehicle) // 0x146DF9EC4C4B9FD4 0x9699CFDC b323
Scripts verify that towTruck is the first parameter, not the second.
GET_ENTITY_ATTACHED_TO_TOW_TRUCK
Entity VEHICLE::GET_ENTITY_ATTACHED_TO_TOW_TRUCK(Vehicle towTruck) // 0xEFEA18DCF10F8F75 0x11EC7844 b323
SET_VEHICLE_AUTOMATICALLY_ATTACHES
Any VEHICLE::SET_VEHICLE_AUTOMATICALLY_ATTACHES(Vehicle vehicle, BOOL p1, Any p2) // 0x8BA6F76BC53A1493 0x4273A8D3 b323
SET_VEHICLE_BULLDOZER_ARM_POSITION
void VEHICLE::SET_VEHICLE_BULLDOZER_ARM_POSITION(Vehicle vehicle, float position, BOOL p2) // 0xF8EBCCC96ADB9FB7 0xED23C8A3 b323
Sets the arm position of a bulldozer. Position must be a value between 0.0 and 1.0. Ignored when `p2` is set to false, instead incrementing arm position by 0.1 (or 10%).
SET_VEHICLE_TANK_TURRET_POSITION
void VEHICLE::SET_VEHICLE_TANK_TURRET_POSITION(Vehicle vehicle, float position, BOOL p2) // 0x56B94C6D7127DFBA 0xB1A52EF7 b323
_0x0581730AB9380412
void VEHICLE::_0x0581730AB9380412(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0x0581730AB9380412 b1103
_0x737E398138550FFF
void VEHICLE::_0x737E398138550FFF(Any p0, Any p1) // 0x737E398138550FFF b944
SET_VEHICLE_TURRET_SPEED_THIS_FRAME
void VEHICLE::SET_VEHICLE_TURRET_SPEED_THIS_FRAME(Vehicle vehicle, float speed) // 0x1093408B4B9D1146 0xF30C566F b323
_DISABLE_VEHICLE_TURRET_MOVEMENT_THIS_FRAME
void VEHICLE::_DISABLE_VEHICLE_TURRET_MOVEMENT_THIS_FRAME(Vehicle vehicle) // 0x32CAEDF24A583345 b463
SET_VEHICLE_FLIGHT_NOZZLE_POSITION
void VEHICLE::SET_VEHICLE_FLIGHT_NOZZLE_POSITION(Vehicle vehicle, float angleRatio) // 0x30D779DE7C4F6DD3 0xA7DF64D7 b323
SET_VEHICLE_FLIGHT_NOZZLE_POSITION_IMMEDIATE
void VEHICLE::SET_VEHICLE_FLIGHT_NOZZLE_POSITION_IMMEDIATE(Vehicle vehicle, float angle) // 0x9AA47FFF660CB932 0xDD7936F5 b323
_GET_VEHICLE_FLIGHT_NOZZLE_POSITION
float VEHICLE::_GET_VEHICLE_FLIGHT_NOZZLE_POSITION(Vehicle plane) // 0xDA62027C8BDB326E b1180
_SET_DISABLE_VEHICLE_FLIGHT_NOZZLE_POSITION
void VEHICLE::_SET_DISABLE_VEHICLE_FLIGHT_NOZZLE_POSITION(Vehicle vehicle, BOOL toggle) // 0xCE2B43770B655F8F b1290
True stops vtols from switching modes. Doesn't stop the sound though.
_0xA4822F1CF23F4810
BOOL VEHICLE::_0xA4822F1CF23F4810(Vector3* outVec, Any p1, Vector3* outVec1, Any p3, Any p4, Any p5, Any p6, Any p7, Any p8) // 0xA4822F1CF23F4810 0x34E02FCD b323
SET_VEHICLE_BURNOUT
void VEHICLE::SET_VEHICLE_BURNOUT(Vehicle vehicle, BOOL toggle) // 0xFB8794444A7D60FB 0x9B6EF0EA b323
On accelerating, spins the driven wheels with the others braked, so you don't go anywhere.
IS_VEHICLE_IN_BURNOUT
BOOL VEHICLE::IS_VEHICLE_IN_BURNOUT(Vehicle vehicle) // 0x1297A88E081430EB 0x6632BC12 b323
Returns whether the specified vehicle is currently in a burnout. vb.net Public Function isVehicleInBurnout(vh As Vehicle) As Boolean Return Native.Function.Call(Of Boolean)(Hash.IS_VEHICLE_IN_BURNOUT, vh) End Function
SET_VEHICLE_REDUCE_GRIP
void VEHICLE::SET_VEHICLE_REDUCE_GRIP(Vehicle vehicle, BOOL toggle) // 0x222FF6A823D122E2 0x90D3A0D9 b323
Reduces grip significantly so it's hard to go anywhere.
_SET_VEHICLE_REDUCE_TRACTION
void VEHICLE::_SET_VEHICLE_REDUCE_TRACTION(Vehicle vehicle, int val) // 0x6DEE944E1EE90CFB b1604
val is 0-3 Often used in conjunction with: SET_VEHICLE_REDUCE_GRIP
SET_VEHICLE_INDICATOR_LIGHTS
void VEHICLE::SET_VEHICLE_INDICATOR_LIGHTS(Vehicle vehicle, int turnSignal, BOOL toggle) // 0xB5D45264751B7DF0 0xA6073B5D b323
Sets the turn signal enabled for a vehicle. Set turnSignal to 1 for left light, 0 for right light.
SET_VEHICLE_BRAKE_LIGHTS
void VEHICLE::SET_VEHICLE_BRAKE_LIGHTS(Vehicle vehicle, BOOL toggle) // 0x92B35082E0B42F66 0x6D9BA11E b323
SET_VEHICLE_HANDBRAKE
void VEHICLE::SET_VEHICLE_HANDBRAKE(Vehicle vehicle, BOOL toggle) // 0x684785568EF26A22 0xBA729A25 b323
SET_VEHICLE_BRAKE
void VEHICLE::SET_VEHICLE_BRAKE(Vehicle vehicle, BOOL toggle) // 0xE4E2FD323574965C 0x5A36BC37 b757
INSTANTLY_FILL_VEHICLE_POPULATION
void VEHICLE::INSTANTLY_FILL_VEHICLE_POPULATION() // 0x48ADC8A773564670 0x37BC6ACB b323
_HAS_FILLED_VEHICLE_POPULATION
BOOL VEHICLE::_HAS_FILLED_VEHICLE_POPULATION() // 0x91D6DD290888CBAB 0x71D898EF b323
HAS_*
_0x51DB102F4A3BA5E0
void VEHICLE::_0x51DB102F4A3BA5E0(BOOL toggle) // 0x51DB102F4A3BA5E0 0x0B0523B0 b323
_0xA4A9A4C40E615885
void VEHICLE::_0xA4A9A4C40E615885(int p0) // 0xA4A9A4C40E615885 b1604
Default:1000||This sets a value which is used when _0x51db102f4a3ba5e0(true) is called each frame.
GET_VEHICLE_TRAILER_VEHICLE
BOOL VEHICLE::GET_VEHICLE_TRAILER_VEHICLE(Vehicle vehicle, Vehicle* trailer) // 0x1CDD6BADC297830D 0xAE84D758 b323
Gets the trailer of a vehicle and puts it into the trailer parameter.
SET_VEHICLE_USES_LARGE_REAR_RAMP
void VEHICLE::SET_VEHICLE_USES_LARGE_REAR_RAMP(Vehicle vehicle, BOOL toggle) // 0xCAC66558B944DA67 0x0B200CE2 b323
vehicle must be a plane
SET_VEHICLE_RUDDER_BROKEN
void VEHICLE::SET_VEHICLE_RUDDER_BROKEN(Vehicle vehicle, BOOL toggle) // 0x09606148B6C71DEF 0x3FAC3CD4 b323
SET_CONVERTIBLE_ROOF_LATCH_STATE
void VEHICLE::SET_CONVERTIBLE_ROOF_LATCH_STATE(Vehicle vehicle, BOOL state) // 0x1A78AD3D8240536F 0x0858678C b323
GET_VEHICLE_ESTIMATED_MAX_SPEED
float VEHICLE::GET_VEHICLE_ESTIMATED_MAX_SPEED(Vehicle vehicle) // 0x53AF99BAA671CA47 0x7D1A0616 b323
GET_VEHICLE_MAX_BRAKING
float VEHICLE::GET_VEHICLE_MAX_BRAKING(Vehicle vehicle) // 0xAD7E85FC227197C4 0x03B926F6 b323
GET_VEHICLE_MAX_TRACTION
float VEHICLE::GET_VEHICLE_MAX_TRACTION(Vehicle vehicle) // 0xA132FB5370554DB0 0x7E5A1587 b323
GET_VEHICLE_ACCELERATION
float VEHICLE::GET_VEHICLE_ACCELERATION(Vehicle vehicle) // 0x5DD35C8D074E57AE 0x00478321 b323
static - max acceleration
GET_VEHICLE_MODEL_ESTIMATED_MAX_SPEED
float VEHICLE::GET_VEHICLE_MODEL_ESTIMATED_MAX_SPEED(Hash modelHash) // 0xF417C2502FFFED43 0x8F291C4A b323
Returns max speed (without mods) of the specified vehicle model in m/s. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_VEHICLE_MODEL_MAX_BRAKING
float VEHICLE::GET_VEHICLE_MODEL_MAX_BRAKING(Hash modelHash) // 0xDC53FD41B4ED944C 0x7EF02883 b323
Returns max braking of the specified vehicle model. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_VEHICLE_MODEL_MAX_BRAKING_MAX_MODS
float VEHICLE::GET_VEHICLE_MODEL_MAX_BRAKING_MAX_MODS(Hash modelHash) // 0xBFBA3BA79CFF7EBF 0xF3A7293F b323
Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_VEHICLE_MODEL_MAX_TRACTION
float VEHICLE::GET_VEHICLE_MODEL_MAX_TRACTION(Hash modelHash) // 0x539DE94D44FDFD0D 0x7F985597 b323
Returns max traction of the specified vehicle model. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_VEHICLE_MODEL_ACCELERATION
float VEHICLE::GET_VEHICLE_MODEL_ACCELERATION(Hash modelHash) // 0x8C044C5C84505B6A 0x29CB3537 b323
Returns the acceleration of the specified model. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
_GET_VEHICLE_MODEL_ESTIMATED_AGILITY
float VEHICLE::_GET_VEHICLE_MODEL_ESTIMATED_AGILITY(Hash modelHash) // 0x53409B5163D5B846 0x37FBA7BC b323
GET_VEHICLE_MODEL_* 9.8 * thrust if air vehicle, else 0.38 + drive force? Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
_GET_VEHICLE_MODEL_MAX_KNOTS
float VEHICLE::_GET_VEHICLE_MODEL_MAX_KNOTS(Hash modelHash) // 0xC6AD107DDC9054CC 0x95BB67EB b323
GET_VEHICLE_MODEL_* Function pertains only to aviation vehicles. Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
_GET_VEHICLE_MODEL_MOVE_RESISTANCE
float VEHICLE::_GET_VEHICLE_MODEL_MOVE_RESISTANCE(Hash modelHash) // 0x5AA3F878A178C4FC 0x87C5D271 b323
GET_VEHICLE_MODEL_* called if the vehicle is a boat -- returns vecMoveResistanceX? Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
GET_VEHICLE_CLASS_ESTIMATED_MAX_SPEED
float VEHICLE::GET_VEHICLE_CLASS_ESTIMATED_MAX_SPEED(int vehicleClass) // 0x00C09F246ABEDD82 0xCE67162C b323
GET_VEHICLE_CLASS_MAX_TRACTION
float VEHICLE::GET_VEHICLE_CLASS_MAX_TRACTION(int vehicleClass) // 0xDBC86D85C5059461 0x5B4FDC16 b323
GET_VEHICLE_CLASS_MAX_AGILITY
float VEHICLE::GET_VEHICLE_CLASS_MAX_AGILITY(int vehicleClass) // 0x4F930AD022D6DE3B 0x45F2BD83 b323
GET_VEHICLE_CLASS_MAX_ACCELERATION
float VEHICLE::GET_VEHICLE_CLASS_MAX_ACCELERATION(int vehicleClass) // 0x2F83E7E45D9EA7AE 0x3E220A9B b323
GET_VEHICLE_CLASS_MAX_BRAKING
float VEHICLE::GET_VEHICLE_CLASS_MAX_BRAKING(int vehicleClass) // 0x4BF54C16EC8FEC03 0xD08CC1A5 b323
ADD_ROAD_NODE_SPEED_ZONE
int VEHICLE::ADD_ROAD_NODE_SPEED_ZONE(float x, float y, float z, float radius, float speed, BOOL p5) // 0x2CE544C68FB812A0 0xD6685803 b323
REMOVE_ROAD_NODE_SPEED_ZONE
BOOL VEHICLE::REMOVE_ROAD_NODE_SPEED_ZONE(int speedzone) // 0x1033371FC8E842A7 0x0C0332A6 b323
OPEN_BOMB_BAY_DOORS
void VEHICLE::OPEN_BOMB_BAY_DOORS(Vehicle vehicle) // 0x87E7F24270732CB1 0x6574041D b323
CLOSE_BOMB_BAY_DOORS
void VEHICLE::CLOSE_BOMB_BAY_DOORS(Vehicle vehicle) // 0x3556041742A0DC74 0xF8EC5751 b323
_ARE_BOMB_BAY_DOORS_OPEN
BOOL VEHICLE::_ARE_BOMB_BAY_DOORS_OPEN(Vehicle aircraft) // 0xD0917A423314BBA8 b1180
Returns true when the bomb bay doors of this plane are open. False if they're closed.
IS_VEHICLE_SEARCHLIGHT_ON
BOOL VEHICLE::IS_VEHICLE_SEARCHLIGHT_ON(Vehicle vehicle) // 0xC0F97FCE55094987 0xADAF3513 b323
Possibly: Returns whether the searchlight (found on police vehicles) is toggled on. @Author Nac
SET_VEHICLE_SEARCHLIGHT
void VEHICLE::SET_VEHICLE_SEARCHLIGHT(Vehicle heli, BOOL toggle, BOOL canBeUsedByAI) // 0x14E85C5EE7A4D542 0xE2C0DD8A b323
Only works during nighttime.
_DOES_VEHICLE_HAVE_SEARCHLIGHT
BOOL VEHICLE::_DOES_VEHICLE_HAVE_SEARCHLIGHT(Vehicle vehicle) // 0x99015ED7DBEA5113 b2189
_IS_VEHICLE_SEAT_ACCESSIBLE
BOOL VEHICLE::_IS_VEHICLE_SEAT_ACCESSIBLE(Ped ped, Vehicle vehicle, int seatIndex, BOOL side, BOOL onEnter) // 0x639431E895B9AA57 0xAB0E79EB b323
Check if a vehicle seat is accessible. If you park your vehicle near a wall and the ped cannot enter/exit this side, the return value toggles from true (not blocked) to false (blocked). seatIndex = -1 being the driver seat. Use GET_VEHICLE_MAX_NUMBER_OF_PASSENGERS(vehicle) - 1 for last seat index. side = only relevant for bikes/motorcycles to check if the left (false)/right (true) side is blocked. onEnter = check if you can enter (true) or exit (false) a vehicle.
_GET_ENTRY_POSITION_OF_DOOR
Vector3 VEHICLE::_GET_ENTRY_POSITION_OF_DOOR(Vehicle vehicle, int doorIndex) // 0xC0572928C0ABFDA3 b944
CAN_SHUFFLE_SEAT
BOOL VEHICLE::CAN_SHUFFLE_SEAT(Vehicle vehicle, int seatIndex) // 0x30785D90C956BF35 0xB3EB01ED b323
GET_NUM_MOD_KITS
int VEHICLE::GET_NUM_MOD_KITS(Vehicle vehicle) // 0x33F2E3FE70EAAE1D 0xE4903AA0 b323
SET_VEHICLE_MOD_KIT
void VEHICLE::SET_VEHICLE_MOD_KIT(Vehicle vehicle, int modKit) // 0x1F2AA07F00B3217A 0xB8132158 b323
Set modKit to 0 if you plan to call SET_VEHICLE_MOD. That's what the game does. Most body modifications through SET_VEHICLE_MOD will not take effect until this is set to 0. Full list of vehicle mod kits and mods by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicleModKits.json
GET_VEHICLE_MOD_KIT
int VEHICLE::GET_VEHICLE_MOD_KIT(Vehicle vehicle) // 0x6325D1A044AE510D 0x9FE60927 b323
GET_VEHICLE_MOD_KIT_TYPE
int VEHICLE::GET_VEHICLE_MOD_KIT_TYPE(Vehicle vehicle) // 0xFC058F5121E54C32 0xE5F76765 b323
GET_VEHICLE_WHEEL_TYPE
int VEHICLE::GET_VEHICLE_WHEEL_TYPE(Vehicle vehicle) // 0xB3ED1BFB4BE636DC 0xDA58D7AE b323
Returns an int Wheel Types: 0: Sport 1: Muscle 2: Lowrider 3: SUV 4: Offroad 5: Tuner 6: Bike Wheels 7: High End Tested in Los Santos Customs
SET_VEHICLE_WHEEL_TYPE
void VEHICLE::SET_VEHICLE_WHEEL_TYPE(Vehicle vehicle, int WheelType) // 0x487EB21CC7295BA1 0x64BDAAAD b323
0: Sport 1: Muscle 2: Lowrider 3: SUV 4: Offroad 5: Tuner 6: Bike Wheels 7: High End
GET_NUM_MOD_COLORS
int VEHICLE::GET_NUM_MOD_COLORS(int paintType, BOOL p1) // 0xA551BE18C11A476D 0x73722CD9 b323
paintType: 0: Normal 1: Metallic 2: Pearl 3: Matte 4: Metal 5: Chrome
SET_VEHICLE_MOD_COLOR_1
void VEHICLE::SET_VEHICLE_MOD_COLOR_1(Vehicle vehicle, int paintType, int color, int pearlescentColor) // 0x43FEB945EE7F85B8 0xCBE9A54D b323
paintType: 0: Normal 1: Metallic 2: Pearl 3: Matte 4: Metal 5: Chrome color: number of the color. p3 seems to always be 0. Full list of vehicle colors and vehicle plates by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicleColors.json
SET_VEHICLE_MOD_COLOR_2
void VEHICLE::SET_VEHICLE_MOD_COLOR_2(Vehicle vehicle, int paintType, int color) // 0x816562BADFDEC83E 0xC32613C2 b323
Changes the secondary paint type and color paintType: 0: Normal 1: Metallic 2: Pearl 3: Matte 4: Metal 5: Chrome color: number of the color Full list of vehicle colors and vehicle plates by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicleColors.json
GET_VEHICLE_MOD_COLOR_1
void VEHICLE::GET_VEHICLE_MOD_COLOR_1(Vehicle vehicle, int* paintType, int* color, int* pearlescentColor) // 0xE8D65CA700C9A693 0xE625510A b323
GET_VEHICLE_MOD_COLOR_2
void VEHICLE::GET_VEHICLE_MOD_COLOR_2(Vehicle vehicle, int* paintType, int* color) // 0x81592BE4E3878728 0x9B76BB8E b323
GET_VEHICLE_MOD_COLOR_1_NAME
const char* VEHICLE::GET_VEHICLE_MOD_COLOR_1_NAME(Vehicle vehicle, BOOL p1) // 0xB45085B721EFD38C 0x9A0840FD b323
returns a string which is the codename of the vehicle's currently selected primary color p1 is always 0
GET_VEHICLE_MOD_COLOR_2_NAME
const char* VEHICLE::GET_VEHICLE_MOD_COLOR_2_NAME(Vehicle vehicle) // 0x4967A516ED23A5A1 0x9BDC0B49 b323
returns a string which is the codename of the vehicle's currently selected secondary color
HAVE_VEHICLE_MODS_STREAMED_IN
BOOL VEHICLE::HAVE_VEHICLE_MODS_STREAMED_IN(Vehicle vehicle) // 0x9A83F5F9963775EF 0x112D637A b323
SET_VEHICLE_MOD
void VEHICLE::SET_VEHICLE_MOD(Vehicle vehicle, int modType, int modIndex, BOOL customTires) // 0x6AF0636DDEDCB6DD 0xB52E5ED5 b323
In b944, there are 50 (0 - 49) mod types. Sets the vehicle mod. The vehicle must have a mod kit first. Any out of range ModIndex is stock. #Mod Type Spoilers - 0 Front Bumper - 1 Rear Bumper - 2 Side Skirt - 3 Exhaust - 4 Frame - 5 Grille - 6 Hood - 7 Fender - 8 Right Fender - 9 Roof - 10 Engine - 11 Brakes - 12 Transmission - 13 Horns - 14 (modIndex from 0 to 51) Suspension - 15 Armor - 16 Front Wheels - 23 Back Wheels - 24 //only for motocycles Plate holders - 25 Trim Design - 27 Ornaments - 28 Dial Design - 30 Steering Wheel - 33 Shifter Leavers - 34 Plaques - 35 Hydraulics - 38 Livery - 48 ENUMS: pastebin.com/QzEAn02v
GET_VEHICLE_MOD
int VEHICLE::GET_VEHICLE_MOD(Vehicle vehicle, int modType) // 0x772960298DA26FDB 0xDC520069 b323
In b944, there are 50 (0 - 49) mod types. Returns -1 if the vehicle mod is stock
GET_VEHICLE_MOD_VARIATION
BOOL VEHICLE::GET_VEHICLE_MOD_VARIATION(Vehicle vehicle, int modType) // 0xB3924ECD70E095DC 0xC1B92003 b323
Only used for wheels(ModType = 23/24) Returns true if the wheels are custom wheels
GET_NUM_VEHICLE_MODS
int VEHICLE::GET_NUM_VEHICLE_MODS(Vehicle vehicle, int modType) // 0xE38E9162A2500646 0x8A814FF9 b323
Returns how many possible mods a vehicle has for a given mod type
REMOVE_VEHICLE_MOD
void VEHICLE::REMOVE_VEHICLE_MOD(Vehicle vehicle, int modType) // 0x92D619E420858204 0x9CC80A43 b323
TOGGLE_VEHICLE_MOD
void VEHICLE::TOGGLE_VEHICLE_MOD(Vehicle vehicle, int modType, BOOL toggle) // 0x2A1F4F37F95BAD08 0xD095F811 b323
Toggles: UNK17 - 17 Turbo - 18 UNK19 - 19 Tire Smoke - 20 UNK21 - 21 Xenon Headlights - 22
IS_TOGGLE_MOD_ON
BOOL VEHICLE::IS_TOGGLE_MOD_ON(Vehicle vehicle, int modType) // 0x84B233A8C8FC8AE7 0xF0E1689F b323
GET_MOD_TEXT_LABEL
const char* VEHICLE::GET_MOD_TEXT_LABEL(Vehicle vehicle, int modType, int modValue) // 0x8935624F8C5592CC 0x0BA39CA7 b323
Returns the text label of a mod type for a given vehicle Use _GET_LABEL_TEXT to get the part name in the game's language
GET_MOD_SLOT_NAME
const char* VEHICLE::GET_MOD_SLOT_NAME(Vehicle vehicle, int modType) // 0x51F0FEB9F6AE98C0 0x5E113483 b323
Returns the name for the type of vehicle mod(Armour, engine etc)
GET_LIVERY_NAME
const char* VEHICLE::GET_LIVERY_NAME(Vehicle vehicle, int liveryIndex) // 0xB4C7A93837C91A1F 0xED80B5BE b323
Second Param = LiveryIndex example int count = VEHICLE::GET_VEHICLE_LIVERY_COUNT(veh); for (int i = 0; i < count; i++) { const char* LiveryName = VEHICLE::GET_LIVERY_NAME(veh, i); } this example will work fine to fetch all names for example for Sanchez we get SANC_LV1 SANC_LV2 SANC_LV3 SANC_LV4 SANC_LV5 Use _GET_LABEL_TEXT, to get the localized livery name. Full list of vehicle mod kits and mods by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicleModKits.json
GET_VEHICLE_MOD_MODIFIER_VALUE
float VEHICLE::GET_VEHICLE_MOD_MODIFIER_VALUE(Vehicle vehicle, int modType, int modIndex) // 0x90A38E9838E0A8C1 0x73AE5505 b323
GET_VEHICLE_MOD_IDENTIFIER_HASH
Hash VEHICLE::GET_VEHICLE_MOD_IDENTIFIER_HASH(Vehicle vehicle, int modType, int modIndex) // 0x4593CF82AA179706 0x94850968 b323
Can be used for IS_DLC_VEHICLE_MOD and _0xC098810437312FFF
PRELOAD_VEHICLE_MOD
void VEHICLE::PRELOAD_VEHICLE_MOD(Any p0, int modType, Any p2) // 0x758F49C24925568A 0x6EA5F4A8 b323
HAS_PRELOAD_MODS_FINISHED
BOOL VEHICLE::HAS_PRELOAD_MODS_FINISHED(Any p0) // 0x06F43E5175EB6D96 0xA8A0D246 b323
RELEASE_PRELOAD_MODS
void VEHICLE::RELEASE_PRELOAD_MODS(Vehicle vehicle) // 0x445D79F995508307 0xD442521F b323
SET_VEHICLE_TYRE_SMOKE_COLOR
void VEHICLE::SET_VEHICLE_TYRE_SMOKE_COLOR(Vehicle vehicle, int r, int g, int b) // 0xB5BA80F839791C0F 0x3EDEC0DB b323
Sets the tire smoke's color of this vehicle. vehicle: The vehicle that is the target of this method. r: The red level in the RGB color code. g: The green level in the RGB color code. b: The blue level in the RGB color code. Note: setting r,g,b to 0 will give the car independance day tyre smoke
GET_VEHICLE_TYRE_SMOKE_COLOR
void VEHICLE::GET_VEHICLE_TYRE_SMOKE_COLOR(Vehicle vehicle, int* r, int* g, int* b) // 0xB635392A4938B3C3 0x75280015 b323
SET_VEHICLE_WINDOW_TINT
void VEHICLE::SET_VEHICLE_WINDOW_TINT(Vehicle vehicle, int tint) // 0x57C51E6BAD752696 0x497C8787 b323
enum WindowTints { WINDOWTINT_NONE, WINDOWTINT_PURE_BLACK, WINDOWTINT_DARKSMOKE, WINDOWTINT_LIGHTSMOKE, WINDOWTINT_STOCK, WINDOWTINT_LIMO, WINDOWTINT_GREEN };
GET_VEHICLE_WINDOW_TINT
int VEHICLE::GET_VEHICLE_WINDOW_TINT(Vehicle vehicle) // 0x0EE21293DAD47C95 0x13D53892 b323
GET_NUM_VEHICLE_WINDOW_TINTS
int VEHICLE::GET_NUM_VEHICLE_WINDOW_TINTS() // 0x9D1224004B3A6707 0x625C7B66 b323
GET_VEHICLE_COLOR
void VEHICLE::GET_VEHICLE_COLOR(Vehicle vehicle, int* r, int* g, int* b) // 0xF3CC740D36221548 0x03BC8F1B b323
What's this for? Primary and Secondary RGB have their own natives and this one doesn't seem specific.
_0xEEBFC7A7EFDC35B4
int VEHICLE::_0xEEBFC7A7EFDC35B4(Vehicle vehicle) // 0xEEBFC7A7EFDC35B4 0x749DEEA2 b323
Some kind of flags.
GET_VEHICLE_CAUSE_OF_DESTRUCTION
Hash VEHICLE::GET_VEHICLE_CAUSE_OF_DESTRUCTION(Vehicle vehicle) // 0xE495D1EF4C91FD20 0x7F8C20DD b323
iVar3 = get_vehicle_cause_of_destruction(uLocal_248[iVar2]); if (iVar3 == joaat("weapon_stickybomb")) { func_171(726); iLocal_260 = 1; }
_0x5EE5632F47AE9695
void VEHICLE::_0x5EE5632F47AE9695(Vehicle vehicle, float health) // 0x5EE5632F47AE9695 b463
Sets some health value. Looks like it's used for helis.
GET_IS_LEFT_VEHICLE_HEADLIGHT_DAMAGED
BOOL VEHICLE::GET_IS_LEFT_VEHICLE_HEADLIGHT_DAMAGED(Vehicle vehicle) // 0x5EF77C9ADD3B11A3 0xA0777943 b323
From the driver's perspective, is the left headlight broken.
GET_IS_RIGHT_VEHICLE_HEADLIGHT_DAMAGED
BOOL VEHICLE::GET_IS_RIGHT_VEHICLE_HEADLIGHT_DAMAGED(Vehicle vehicle) // 0xA7ECB73355EB2F20 0xF178390B b323
From the driver's perspective, is the right headlight broken.
_IS_VEHICLE_ENGINE_ON_FIRE
BOOL VEHICLE::_IS_VEHICLE_ENGINE_ON_FIRE(Vehicle vehicle) // 0xEC69ADF931AAE0C3 b505
Only ever used once in decompiled scripts: **am_pi_menu**: Returns true if the engine is on fire, or if the vehicle engine health is < 0 and it **has been** on fire. It sometimes doesn't return true when the vehicle engine has been on fire, and has since been fixed. I'm not really sure what the exact conditions are. This usually returns true even if there are no visible flames yet (engine health > 0). However if you monitor engine health you'll see that it starts decreasing as soon as this returns true.
MODIFY_VEHICLE_TOP_SPEED
void VEHICLE::MODIFY_VEHICLE_TOP_SPEED(Vehicle vehicle, float value) // 0x93A3996368C94158 0xE943B09C b323
_SET_VEHICLE_MAX_SPEED
void VEHICLE::_SET_VEHICLE_MAX_SPEED(Vehicle vehicle, float speed) // 0xBAA045B4E42F3C06 b1103
To reset the max speed, set the `speed` value to `0.0` or lower.
_0x1CF38D529D7441D9
void VEHICLE::_0x1CF38D529D7441D9(Vehicle vehicle, BOOL toggle) // 0x1CF38D529D7441D9 0xDF594D8D b323
Has something to do with trains. Always precedes SET_MISSION_TRAIN_AS_NO_LONGER_NEEDED. May be true that it can be used with trains not sure, but not specifically for trains. Go find Xbox360 decompiled scripts and search for 'func_1333' in freemode.c it isn't used just for trains. Thanks for the info tho.
_0x1F9FB66F3A3842D2
void VEHICLE::_0x1F9FB66F3A3842D2(Vehicle vehicle, BOOL p1) // 0x1F9FB66F3A3842D2 0x4D840FC4 b323
_0x59C3757B3B7408E8
void VEHICLE::_0x59C3757B3B7408E8(Vehicle vehicle, BOOL toggle, float p2) // 0x59C3757B3B7408E8 b1493
Sets some bit and float of vehicle. float is >= 0 SET_VEHICLE_*
ADD_VEHICLE_COMBAT_ANGLED_AVOIDANCE_AREA
Any VEHICLE::ADD_VEHICLE_COMBAT_ANGLED_AVOIDANCE_AREA(float p0, float p1, float p2, float p3, float p4, float p5, float p6) // 0x54B0F614960F4A5F 0x5AB26C2B b323
REMOVE_VEHICLE_COMBAT_AVOIDANCE_AREA
void VEHICLE::REMOVE_VEHICLE_COMBAT_AVOIDANCE_AREA(Any p0) // 0xE30524E1871F481D 0xEF05F807 b323
IS_ANY_PED_RAPPELLING_FROM_HELI
BOOL VEHICLE::IS_ANY_PED_RAPPELLING_FROM_HELI(Vehicle vehicle) // 0x291E373D483E7EE7 0xD656E7E5 b323
SET_VEHICLE_CHEAT_POWER_INCREASE
void VEHICLE::SET_VEHICLE_CHEAT_POWER_INCREASE(Vehicle vehicle, float value) // 0xB59E4BD37AE292DB 0x642DA5AA b323
<1.0 - Decreased torque =1.0 - Default torque >1.0 - Increased torque Negative values will cause the vehicle to go backwards instead of forwards while accelerating. value - is between 0.2 and 1.8 in the decompiled scripts. This needs to be called every frame to take effect.
_0x0AD9E8F87FF7C16F
void VEHICLE::_0x0AD9E8F87FF7C16F(Any p0, BOOL p1) // 0x0AD9E8F87FF7C16F 0x04F5546C b323
SET_VEHICLE_IS_WANTED
void VEHICLE::SET_VEHICLE_IS_WANTED(Vehicle vehicle, BOOL state) // 0xF7EC25A3EBEEC726 0xDAA388E8 b323
Sets the wanted state of this vehicle.
_SET_BOAT_BOOM_POSITION_RATIO
void VEHICLE::_SET_BOAT_BOOM_POSITION_RATIO(Vehicle vehicle, float ratio) // 0xF488C566413B4232 0xA25CCB8C b323
Sets the boat boom position for the `TR3` trailer. Ratio value is between `0.0` and `1.0`, where `0.0` is 90 degrees to the left of the boat, and `1.0` is just slightly to the right/back of the boat. To get the current boom position ratio, use GET_BOAT_BOOM_POSITION_RATIO
_GET_BOAT_BOOM_POSITION_RATIO_2
void VEHICLE::_GET_BOAT_BOOM_POSITION_RATIO_2(Vehicle vehicle, BOOL p1) // 0xC1F981A6F74F0C23 0x00966934 b323
Same call as VEHICLE::_0x0F3B4D4E43177236
_GET_BOAT_BOOM_POSITION_RATIO_3
void VEHICLE::_GET_BOAT_BOOM_POSITION_RATIO_3(Vehicle vehicle, BOOL p1) // 0x0F3B4D4E43177236 0x113DF5FD b323
GET_BOAT_BOOM_POSITION_RATIO
float VEHICLE::GET_BOAT_BOOM_POSITION_RATIO(Vehicle vehicle) // 0x6636C535F6CC2725 0x7C8D6464 b323
DISABLE_PLANE_AILERON
void VEHICLE::DISABLE_PLANE_AILERON(Vehicle vehicle, BOOL p1, BOOL p2) // 0x23428FC53C60919C 0x7E84C45C b323
GET_IS_VEHICLE_ENGINE_RUNNING
BOOL VEHICLE::GET_IS_VEHICLE_ENGINE_RUNNING(Vehicle vehicle) // 0xAE31E7DF9B5B132E 0x7DC6D022 b323
Returns true when in a vehicle, false whilst entering/exiting.
SET_VEHICLE_USE_ALTERNATE_HANDLING
void VEHICLE::SET_VEHICLE_USE_ALTERNATE_HANDLING(Vehicle vehicle, BOOL toggle) // 0x1D97D1E3A70A649F 0xA03E42DF b323
SET_BIKE_ON_STAND
void VEHICLE::SET_BIKE_ON_STAND(Vehicle vehicle, float x, float y) // 0x9CFA4896C3A53CBB 0x15D40761 b323
Only works on bikes, both X and Y work in the -1 - 1 range. X forces the bike to turn left or right (-1, 1) Y forces the bike to lean to the left or to the right (-1, 1) Example with X -1/Y 1 http://i.imgur.com/TgIuAPJ.jpg
_0xAB04325045427AAE
void VEHICLE::_0xAB04325045427AAE(Vehicle vehicle, BOOL p1) // 0xAB04325045427AAE 0x1984F88D b323
_0xCFD778E7904C255E
void VEHICLE::_0xCFD778E7904C255E(Vehicle vehicle) // 0xCFD778E7904C255E 0x3FBE904F b323
what does this do?
SET_LAST_DRIVEN_VEHICLE
void VEHICLE::SET_LAST_DRIVEN_VEHICLE(Vehicle vehicle) // 0xACFB2463CC22BED2 0xD1B71A25 b323
GET_LAST_DRIVEN_VEHICLE
Vehicle VEHICLE::GET_LAST_DRIVEN_VEHICLE() // 0xB2D06FAEDE65B577 0xFEB0C0C8 b323
CLEAR_LAST_DRIVEN_VEHICLE
void VEHICLE::CLEAR_LAST_DRIVEN_VEHICLE() // 0xE01903C47C7AC89E 0x07186AD9 b323
SET_VEHICLE_HAS_BEEN_DRIVEN_FLAG
void VEHICLE::SET_VEHICLE_HAS_BEEN_DRIVEN_FLAG(Vehicle vehicle, BOOL toggle) // 0x02398B627547189C 0x08CD58F9 b323
SET_TASK_VEHICLE_GOTO_PLANE_MIN_HEIGHT_ABOVE_TERRAIN
void VEHICLE::SET_TASK_VEHICLE_GOTO_PLANE_MIN_HEIGHT_ABOVE_TERRAIN(Vehicle plane, int height) // 0xB893215D8D4C015B 0x8C4B63E2 b323
SET_VEHICLE_LOD_MULTIPLIER
void VEHICLE::SET_VEHICLE_LOD_MULTIPLIER(Vehicle vehicle, float multiplier) // 0x93AE6A61BE015BF1 0x569E5AE3 b323
SET_VEHICLE_CAN_SAVE_IN_GARAGE
void VEHICLE::SET_VEHICLE_CAN_SAVE_IN_GARAGE(Vehicle vehicle, BOOL toggle) // 0x428BACCDF5E26EAD 0x1604C2F5 b323
_GET_VEHICLE_NUMBER_OF_BROKEN_OFF_BONES
int VEHICLE::_GET_VEHICLE_NUMBER_OF_BROKEN_OFF_BONES(Vehicle vehicle) // 0x42A4BEB35D372407 0x8CDB0C09 b323
Also includes some "turnOffBones" when vehicle mods are installed.
_GET_VEHICLE_NUMBER_OF_BROKEN_BONES
int VEHICLE::_GET_VEHICLE_NUMBER_OF_BROKEN_BONES(Vehicle vehicle) // 0x2C8CBFE1EA5FC631 0xABC99E21 b323
_0x4D9D109F63FEE1D4
void VEHICLE::_0x4D9D109F63FEE1D4(Any p0, BOOL p1) // 0x4D9D109F63FEE1D4 0x900C878C b323
_0x279D50DE5652D935
void VEHICLE::_0x279D50DE5652D935(Vehicle vehicle, BOOL toggle) // 0x279D50DE5652D935 0xB3200F72 b323
SET_VEHICLE_*
COPY_VEHICLE_DAMAGES
void VEHICLE::COPY_VEHICLE_DAMAGES(Vehicle sourceVehicle, Vehicle targetVehicle) // 0xE44A982368A4AF23 0xBAE491C7 b323
Copies sourceVehicle's damage (broken bumpers, broken lights, etc.) to targetVehicle.
_0xF25E02CB9C5818F8
void VEHICLE::_0xF25E02CB9C5818F8() // 0xF25E02CB9C5818F8 0xF0E59BC1 b323
SET_LIGHTS_CUTOFF_DISTANCE_TWEAK
void VEHICLE::SET_LIGHTS_CUTOFF_DISTANCE_TWEAK(float distance) // 0xBC3CCA5844452B06 0x929801C6 b323
SET_VEHICLE_SHOOT_AT_TARGET
void VEHICLE::SET_VEHICLE_SHOOT_AT_TARGET(Ped driver, Entity entity, float xTarget, float yTarget, float zTarget) // 0x74CD9A9327A282EA 0x2343FFDF b323
Commands the driver of an armed vehicle (p0) to shoot its weapon at a target (p1). p3, p4 and p5 are the coordinates of the target. Example: WEAPON::SET_CURRENT_PED_VEHICLE_WEAPON(pilot,MISC::GET_HASH_KEY("VEHICLE_WEAPON_PLANE_ROCKET")); VEHICLE::SET_VEHICLE_SHOOT_AT_TARGET(pilot, target, targPos.x, targPos.y, targPos.z);
GET_VEHICLE_LOCK_ON_TARGET
BOOL VEHICLE::GET_VEHICLE_LOCK_ON_TARGET(Vehicle vehicle, Entity* entity) // 0x8F5EBAB1F260CFCE 0x4A557117 b323
SET_FORCE_HD_VEHICLE
void VEHICLE::SET_FORCE_HD_VEHICLE(Vehicle vehicle, BOOL toggle) // 0x97CE68CB032583F0 0xE0FC6A32 b323
_0x182F266C2D9E2BEB
void VEHICLE::_0x182F266C2D9E2BEB(Vehicle vehicle, float p1) // 0x182F266C2D9E2BEB 0x7D0DE7EA b323
GET_VEHICLE_PLATE_TYPE
int VEHICLE::GET_VEHICLE_PLATE_TYPE(Vehicle vehicle) // 0x9CCC9525BF2408E0 0x65CA9286 b323
TRACK_VEHICLE_VISIBILITY
void VEHICLE::TRACK_VEHICLE_VISIBILITY(Vehicle vehicle) // 0x64473AEFDCF47DCA 0x78122DC1 b323
in script hook .net Vehicle v = ...; Function.Call(Hash.TRACK_VEHICLE_VISIBILITY, v.Handle);
IS_VEHICLE_VISIBLE
BOOL VEHICLE::IS_VEHICLE_VISIBLE(Vehicle vehicle) // 0xAA0A52D24FB98293 0x7E0D6056 b323
must be called after TRACK_VEHICLE_VISIBILITY it's not instant so probabilly must pass an 'update' to see correct result.
SET_VEHICLE_GRAVITY
void VEHICLE::SET_VEHICLE_GRAVITY(Vehicle vehicle, BOOL toggle) // 0x89F149B6131E57DA 0x07B2A6DC b323
SET_ENABLE_VEHICLE_SLIPSTREAMING
void VEHICLE::SET_ENABLE_VEHICLE_SLIPSTREAMING(BOOL toggle) // 0xE6C0C80B8C867537 0xD2B8ACBD b323
Enable/Disables global slipstream physics
_0xF051D9BFB6BA39C0
void VEHICLE::_0xF051D9BFB6BA39C0(Any p0) // 0xF051D9BFB6BA39C0 b877
_GET_VEHICLE_CURRENT_SLIPSTREAM_DRAFT
float VEHICLE::_GET_VEHICLE_CURRENT_SLIPSTREAM_DRAFT(Vehicle vehicle) // 0x36492C2F0D134C56 0xA4A75FCF b323
Returns a float value between 0.0 and 3.0 related to its slipstream draft (boost/speedup). GET_VEHICLE_*
_IS_VEHICLE_SLIPSTREAM_LEADER
BOOL VEHICLE::_IS_VEHICLE_SLIPSTREAM_LEADER(Vehicle vehicle) // 0x48C633E94A8142A7 b877
Returns true if the vehicle is being slipstreamed by another vehicle
SET_VEHICLE_INACTIVE_DURING_PLAYBACK
void VEHICLE::SET_VEHICLE_INACTIVE_DURING_PLAYBACK(Vehicle vehicle, BOOL toggle) // 0x06582AFF74894C75 0x50F89338 b323
SET_VEHICLE_ACTIVE_DURING_PLAYBACK
void VEHICLE::SET_VEHICLE_ACTIVE_DURING_PLAYBACK(Any p0, BOOL p1) // 0xDFFCEF48E511DB48 0xEB7D7C27 b323
IS_VEHICLE_SPRAYABLE
BOOL VEHICLE::IS_VEHICLE_SPRAYABLE(Vehicle vehicle) // 0x8D474C8FAEFF6CDE 0x5EB00A6A b323
Returns false if the vehicle has the FLAG_NO_RESPRAY flag set.
SET_VEHICLE_ENGINE_CAN_DEGRADE
void VEHICLE::SET_VEHICLE_ENGINE_CAN_DEGRADE(Vehicle vehicle, BOOL toggle) // 0x983765856F2564F9 0x081DAC12 b323
_SET_VEHICLE_SHADOW_EFFECT
void VEHICLE::_SET_VEHICLE_SHADOW_EFFECT(Vehicle vehicle, int p1, int p2) // 0xF0E4BA16D1DB546C 0x5BD8D82D b323
Adds some kind of shadow to the vehicle. -1 disables the effect. DISABLE_*
_REMOVE_VEHICLE_SHADOW_EFFECT
void VEHICLE::_REMOVE_VEHICLE_SHADOW_EFFECT(Vehicle vehicle) // 0xF87D9F2301F7D206 0x450AD03A b323
Remove the weird shadow applied by _SET_VEHICLE_SHADOW_EFFECT. ENABLE_*
IS_PLANE_LANDING_GEAR_INTACT
BOOL VEHICLE::IS_PLANE_LANDING_GEAR_INTACT(Vehicle plane) // 0x4198AB0022B15F87 0xBD085DCA b323
ARE_PLANE_PROPELLERS_INTACT
BOOL VEHICLE::ARE_PLANE_PROPELLERS_INTACT(Vehicle plane) // 0x755D6D5267CBBD7E 0xABBDD5C6 b323
_0x4C815EB175086F84
Any VEHICLE::_0x4C815EB175086F84(Any p0, Any p1) // 0x4C815EB175086F84 b1103
SET_VEHICLE_CAN_DEFORM_WHEELS
void VEHICLE::SET_VEHICLE_CAN_DEFORM_WHEELS(Vehicle vehicle, BOOL toggle) // 0x0CDDA42F9E360CA6 0x9B581DE7 b323
IS_VEHICLE_STOLEN
BOOL VEHICLE::IS_VEHICLE_STOLEN(Vehicle vehicle) // 0x4AF9BD80EEBEB453 0x20B61DDE b323
SET_VEHICLE_IS_STOLEN
void VEHICLE::SET_VEHICLE_IS_STOLEN(Vehicle vehicle, BOOL isStolen) // 0x67B2C79AA7FF5738 0x70912E42 b323
SET_PLANE_TURBULENCE_MULTIPLIER
void VEHICLE::SET_PLANE_TURBULENCE_MULTIPLIER(Vehicle vehicle, float multiplier) // 0xAD2D28A1AFDFF131 0xED159AE6 b323
This native sets the turbulence multiplier. It only works for planes. 0.0 = no turbulence at all. 1.0 = heavy turbulence. Works by just calling it once, does not need to be called every tick.
_ARE_PLANE_WINGS_INTACT
BOOL VEHICLE::_ARE_PLANE_WINGS_INTACT(Vehicle plane) // 0x5991A01434CE9677 0xAF8CB3DF b323
ADD_A_MARKER_OVER_VEHICLE was a hash collision!!! Can be used for planes only!
_0xB264C4D2F2B0A78B
void VEHICLE::_0xB264C4D2F2B0A78B(Vehicle vehicle) // 0xB264C4D2F2B0A78B 0x45F72495 b323
This native doesn't seem to do anything, might be a debug-only native. Confirmed, it is a debug native.
DETACH_VEHICLE_FROM_CARGOBOB
void VEHICLE::DETACH_VEHICLE_FROM_CARGOBOB(Vehicle vehicle, Vehicle cargobob) // 0x0E21D3DF1051399D 0x83D3D331 b323
DETACH_VEHICLE_FROM_ANY_CARGOBOB
BOOL VEHICLE::DETACH_VEHICLE_FROM_ANY_CARGOBOB(Vehicle vehicle) // 0xADF7BE450512C12F 0x50E0EABE b323
_DETACH_ENTITY_FROM_CARGOBOB
Any VEHICLE::_DETACH_ENTITY_FROM_CARGOBOB(Vehicle cargobob, Entity entity) // 0xAF03011701811146 b678
IS_VEHICLE_ATTACHED_TO_CARGOBOB
BOOL VEHICLE::IS_VEHICLE_ATTACHED_TO_CARGOBOB(Vehicle cargobob, Vehicle vehicleAttached) // 0xD40148F22E81A1D9 0x5DEEC76C b323
GET_VEHICLE_ATTACHED_TO_CARGOBOB
Vehicle VEHICLE::GET_VEHICLE_ATTACHED_TO_CARGOBOB(Vehicle cargobob) // 0x873B82D42AC2B9E5 0x301A1D24 b323
Returns attached vehicle (Vehicle in parameter must be cargobob)
_GET_ENTITY_ATTACHED_TO_CARGOBOB
Any VEHICLE::_GET_ENTITY_ATTACHED_TO_CARGOBOB(Any p0) // 0x99093F60746708CA b1103
ATTACH_VEHICLE_TO_CARGOBOB
void VEHICLE::ATTACH_VEHICLE_TO_CARGOBOB(Vehicle vehicle, Vehicle cargobob, int p2, float x, float y, float z) // 0x4127F1D84E347769 0x607DC9D5 b323
_ATTACH_ENTITY_TO_CARGOBOB
void VEHICLE::_ATTACH_ENTITY_TO_CARGOBOB(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5) // 0xA1DD82F3CCF9A01E b944
_SET_CARGOBOB_HOOK_CAN_DETACH
void VEHICLE::_SET_CARGOBOB_HOOK_CAN_DETACH(Vehicle cargobob, BOOL toggle) // 0x571FEB383F629926 0xAEB29F98 b323
Stops cargobob from beeing able to detach the attached vehicle.
_0x1F34B0626C594380
void VEHICLE::_0x1F34B0626C594380(Any p0, Any p1) // 0x1F34B0626C594380 b757
_0x2C1D8B3B19E517CC
Any VEHICLE::_0x2C1D8B3B19E517CC(Any p0, Any p1) // 0x2C1D8B3B19E517CC b757
_GET_CARGOBOB_HOOK_POSITION
Vector3 VEHICLE::_GET_CARGOBOB_HOOK_POSITION(Vehicle cargobob) // 0xCBDB9B923CACC92D b323
Gets the position of the cargobob hook, in world coords.
DOES_CARGOBOB_HAVE_PICK_UP_ROPE
BOOL VEHICLE::DOES_CARGOBOB_HAVE_PICK_UP_ROPE(Vehicle cargobob) // 0x1821D91AD4B56108 0xAF769B81 b323
Returns true only when the hook is active, will return false if the magnet is active
CREATE_PICK_UP_ROPE_FOR_CARGOBOB
void VEHICLE::CREATE_PICK_UP_ROPE_FOR_CARGOBOB(Vehicle cargobob, int state) // 0x7BEB0C7A235F6F3B 0x4D3C9A99 b323
Drops the Hook/Magnet on a cargobob state enum eCargobobHook { CARGOBOB_HOOK = 0, CARGOBOB_MAGNET = 1, };
REMOVE_PICK_UP_ROPE_FOR_CARGOBOB
void VEHICLE::REMOVE_PICK_UP_ROPE_FOR_CARGOBOB(Vehicle cargobob) // 0x9768CF648F54C804 0xA8211EE9 b323
Retracts the hook on the cargobob. Note: after you retract it the natives for dropping the hook no longer work
SET_PICKUP_ROPE_LENGTH_FOR_CARGOBOB
void VEHICLE::SET_PICKUP_ROPE_LENGTH_FOR_CARGOBOB(Vehicle cargobob, float length1, float length2, BOOL p3) // 0x877C1EAEAC531023 0x3A8AB081 b323
min: 1.9f, max: 100.0f
_0xC0ED6438E6D39BA8
void VEHICLE::_0xC0ED6438E6D39BA8(Any p0, Any p1, Any p2) // 0xC0ED6438E6D39BA8 b944
SET_CARGOBOB_PICKUP_ROPE_DAMPING_MULTIPLIER
void VEHICLE::SET_CARGOBOB_PICKUP_ROPE_DAMPING_MULTIPLIER(Any p0, Any p1) // 0xCF1182F682F65307 0x7D927E1B b323
SET_CARGOBOB_PICKUP_ROPE_TYPE
void VEHICLE::SET_CARGOBOB_PICKUP_ROPE_TYPE(Any p0, Any p1) // 0x0D5F65A8F4EBDAB5 0xF258ADA1 b1103
DOES_CARGOBOB_HAVE_PICKUP_MAGNET
BOOL VEHICLE::DOES_CARGOBOB_HAVE_PICKUP_MAGNET(Vehicle cargobob) // 0x6E08BF5B3722BAC9 0x4778CA0A b323
Returns true only when the magnet is active, will return false if the hook is active
SET_CARGOBOB_PICKUP_MAGNET_ACTIVE
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_ACTIVE(Vehicle cargobob, BOOL isActive) // 0x9A665550F8DA349B 0xF57066DA b323
Won't attract or magnetize to any helicopters or planes of course, but that's common sense.
SET_CARGOBOB_PICKUP_MAGNET_STRENGTH
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_STRENGTH(Vehicle cargobob, float strength) // 0xBCBFCD9D1DAC19E2 0xCC3CF97D b323
SET_CARGOBOB_PICKUP_MAGNET_EFFECT_RADIUS
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_EFFECT_RADIUS(Vehicle cargobob, float p1) // 0xA17BAD153B51547E 0xE5DCD62F b323
SET_CARGOBOB_PICKUP_MAGNET_REDUCED_FALLOFF
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_REDUCED_FALLOFF(Vehicle cargobob, float p1) // 0x66979ACF5102FD2F 0x1CF139C6 b323
SET_CARGOBOB_PICKUP_MAGNET_PULL_ROPE_LENGTH
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_PULL_ROPE_LENGTH(Vehicle cargobob, float p1) // 0x6D8EAC07506291FB 0x60E29B78 b323
SET_CARGOBOB_PICKUP_MAGNET_PULL_STRENGTH
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_PULL_STRENGTH(Vehicle cargobob, float p1) // 0xED8286F71A819BAA 0x8191BC1A b323
SET_CARGOBOB_PICKUP_MAGNET_FALLOFF
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_FALLOFF(Vehicle vehicle, float p1) // 0x685D5561680D088B 0x91C80401 b323
SET_CARGOBOB_PICKUP_MAGNET_REDUCED_STRENGTH
void VEHICLE::SET_CARGOBOB_PICKUP_MAGNET_REDUCED_STRENGTH(Vehicle vehicle, Vehicle cargobob) // 0xE301BD63E9E13CF0 0x47D98A2E b323
_0x9BDDC73CC6A115D4
void VEHICLE::_0x9BDDC73CC6A115D4(Vehicle vehicle, BOOL p1, BOOL p2) // 0x9BDDC73CC6A115D4 0x50CDB295 b323
_0x56EB5E94318D3FB6
void VEHICLE::_0x56EB5E94318D3FB6(Vehicle vehicle, BOOL p1) // 0x56EB5E94318D3FB6 0x30F43FE3 b323
DOES_VEHICLE_HAVE_WEAPONS
BOOL VEHICLE::DOES_VEHICLE_HAVE_WEAPONS(Vehicle vehicle) // 0x25ECB9F8017D98E0 0xB2E1E1FB b323
_0x2C4A1590ABF43E8B
void VEHICLE::_0x2C4A1590ABF43E8B(Vehicle vehicle, BOOL p1) // 0x2C4A1590ABF43E8B 0x2EC19A8B b323
SET_VEHICLE_W* (next character is either H or I)
DISABLE_VEHICLE_WEAPON
void VEHICLE::DISABLE_VEHICLE_WEAPON(BOOL disabled, Hash weaponHash, Vehicle vehicle, Ped owner) // 0xF4FC6A6F67D8D856 0xA688B7D1 b323
how does this work?
_IS_VEHICLE_WEAPON_DISABLED
BOOL VEHICLE::_IS_VEHICLE_WEAPON_DISABLED(Hash weaponHash, Vehicle vehicle, Ped owner) // 0x563B65A643ED072E b1011
_0xE05DD0E9707003A3
void VEHICLE::_0xE05DD0E9707003A3(Any p0, BOOL p1) // 0xE05DD0E9707003A3 0x123E5B90 b323
SET_VEHICLE_ACTIVE_FOR_PED_NAVIGATION
void VEHICLE::SET_VEHICLE_ACTIVE_FOR_PED_NAVIGATION(Vehicle vehicle, BOOL toggle) // 0x21115BCD6E44656A 0xEBC225C1 b323
GET_VEHICLE_CLASS
int VEHICLE::GET_VEHICLE_CLASS(Vehicle vehicle) // 0x29439776AAA00A62 0xC025338E b323
Returns an int Vehicle Classes: 0: Compacts 1: Sedans 2: SUVs 3: Coupes 4: Muscle 5: Sports Classics 6: Sports 7: Super 8: Motorcycles 9: Off-road 10: Industrial 11: Utility 12: Vans 13: Cycles 14: Boats 15: Helicopters 16: Planes 17: Service 18: Emergency 19: Military 20: Commercial 21: Trains char buffer[128]; std::sprintf(buffer, "VEH_CLASS_%i", VEHICLE::GET_VEHICLE_CLASS(vehicle)); const char* className = HUD::_GET_LABEL_TEXT(buffer);
GET_VEHICLE_CLASS_FROM_NAME
int VEHICLE::GET_VEHICLE_CLASS_FROM_NAME(Hash modelHash) // 0xDEDF1C8BD47C2200 0xEA469980 b323
For a full enum, see here : pastebin.com/i2GGAjY0 char buffer[128]; std::sprintf(buffer, "VEH_CLASS_%i", VEHICLE::GET_VEHICLE_CLASS_FROM_NAME (hash)); const char* className = HUD::_GET_LABEL_TEXT(buffer); Full list of vehicles by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/vehicles.json
SET_PLAYERS_LAST_VEHICLE
void VEHICLE::SET_PLAYERS_LAST_VEHICLE(Vehicle vehicle) // 0xBCDF8BAF56C87B6A 0xDE86447D b323
SET_VEHICLE_CAN_BE_USED_BY_FLEEING_PEDS
void VEHICLE::SET_VEHICLE_CAN_BE_USED_BY_FLEEING_PEDS(Vehicle vehicle, BOOL toggle) // 0x300504B23BD3B711 0x5130DB1E b323
_0xE5810AC70602F2F5
void VEHICLE::_0xE5810AC70602F2F5(Vehicle vehicle, float p1) // 0xE5810AC70602F2F5 0xB6BE07E0 b323
SET_VEHICLE_DROPS_MONEY_WHEN_BLOWN_UP
void VEHICLE::SET_VEHICLE_DROPS_MONEY_WHEN_BLOWN_UP(Vehicle vehicle, BOOL toggle) // 0x068F64F2470F9656 0x4BB5605D b323
Money pickups are created around cars when they explode. Only works when the vehicle model is a car. A single pickup is between 1 and 18 dollars in size. All car models seem to give the same amount of money. youtu.be/3arlUxzHl5Y i.imgur.com/WrNpYFs.jpg
_SET_VEHICLE_JET_ENGINE_ON
void VEHICLE::_SET_VEHICLE_JET_ENGINE_ON(Vehicle vehicle, BOOL toggle) // 0xB8FBC8B1330CA9B4 0x51E0064F b323
VEHICLE::SET_VEHICLE_ENGINE_ON is not enough to start jet engines when not inside the vehicle. But with this native set to true it works: youtu.be/OK0ps2fDpxs i.imgur.com/7XA14pX.png Certain planes got jet engines.
_0x6A973569BA094650
void VEHICLE::_0x6A973569BA094650(Vehicle vehicle, Any p1) // 0x6A973569BA094650 b1604
Seems to copy some values in vehicle
_SET_VEHICLE_HANDLING_HASH_FOR_AI
void VEHICLE::_SET_VEHICLE_HANDLING_HASH_FOR_AI(Vehicle vehicle, Hash hash) // 0x10655FAB9915623D b323
Use the "AIHandling" string found in handling.meta
SET_VEHICLE_EXTENDED_REMOVAL_RANGE
void VEHICLE::SET_VEHICLE_EXTENDED_REMOVAL_RANGE(Vehicle vehicle, int range) // 0x79DF7E806202CE01 0xAEF9611C b323
Max value is 32767
SET_VEHICLE_STEERING_BIAS_SCALAR
void VEHICLE::SET_VEHICLE_STEERING_BIAS_SCALAR(Any p0, float p1) // 0x9007A2F21DC108D4 0x585E49B6 b323
_SET_HELICOPTER_ROLL_PITCH_YAW_MULT
void VEHICLE::_SET_HELICOPTER_ROLL_PITCH_YAW_MULT(Vehicle helicopter, float multiplier) // 0x6E0859B530A365CC 0x6E67FD35 b323
value between 0.0 and 1.0
SET_VEHICLE_FRICTION_OVERRIDE
void VEHICLE::SET_VEHICLE_FRICTION_OVERRIDE(Vehicle vehicle, float friction) // 0x1837AF7C627009BA 0x32AFD42E b323
Seems to be related to the metal parts, not tyres (like i was expecting lol)
SET_VEHICLE_WHEELS_CAN_BREAK_OFF_WHEN_BLOW_UP
void VEHICLE::SET_VEHICLE_WHEELS_CAN_BREAK_OFF_WHEN_BLOW_UP(Vehicle vehicle, BOOL toggle) // 0xA37B9A517B133349 0x670913A4 b323
_0xF78F94D60248C737
BOOL VEHICLE::_0xF78F94D60248C737(Vehicle vehicle, BOOL p1) // 0xF78F94D60248C737 0x3B51B348 b323
SET_VEHICLE_CEILING_HEIGHT
void VEHICLE::SET_VEHICLE_CEILING_HEIGHT(Vehicle vehicle, float height) // 0xA46413066687A328 0x98A10A86 b323
Previously named GET_VEHICLE_DEFORMATION_GET_TREE (hash collision) from Decrypted Scripts I found VEHICLE::SET_VEHICLE_CEILING_HEIGHT(l_BD9[2/*2*/], 420.0);
_0x5E569EC46EC21CAE
void VEHICLE::_0x5E569EC46EC21CAE(Vehicle vehicle, BOOL toggle) // 0x5E569EC46EC21CAE 0xBC649C49 b323
CLEAR_VEHICLE_ROUTE_HISTORY
void VEHICLE::CLEAR_VEHICLE_ROUTE_HISTORY(Vehicle vehicle) // 0x6D6AF961B72728AE 0x8DD9AA0C b323
DOES_VEHICLE_EXIST_WITH_DECORATOR
BOOL VEHICLE::DOES_VEHICLE_EXIST_WITH_DECORATOR(const char* decorator) // 0x956B409B984D9BF7 0x39E68EDD b323
_0x41062318F23ED854
void VEHICLE::_0x41062318F23ED854(Vehicle vehicle, BOOL toggle) // 0x41062318F23ED854 0xFF62D324 b323
Used to be incorrectly named SET_VEHICLE_EXCLUSIVE_DRIVER Likely SET_VEHICLE_ALLOW_* Jenkins hash may be wrong, unsure at this time. Toggles a flag related to SET_VEHICLE_EXCLUSIVE_DRIVER, however, doesn't enable that feature (or trigger script events related to it).
SET_VEHICLE_EXCLUSIVE_DRIVER
void VEHICLE::SET_VEHICLE_EXCLUSIVE_DRIVER(Vehicle vehicle, Ped ped, int index) // 0xB5C51B5502E85E83 0xAA8BD440 b323
index: 0 - 1 Used to be incorrectly named _SET_VEHICLE_EXCLUSIVE_DRIVER_2
_IS_PED_EXCLUSIVE_DRIVER_OF_VEHICLE
BOOL VEHICLE::_IS_PED_EXCLUSIVE_DRIVER_OF_VEHICLE(Ped ped, Vehicle vehicle, int* outIndex) // 0xB09D25E77C33EB3F b463
_DISABLE_PLANE_PROPELLER
void VEHICLE::_DISABLE_PLANE_PROPELLER(Vehicle vehicle, Any p1) // 0x500873A45724C863 0x004926A3 b323
SET_VEHICLE_FORCE_AFTERBURNER
void VEHICLE::SET_VEHICLE_FORCE_AFTERBURNER(Vehicle vehicle, BOOL toggle) // 0xB055A34527CB8FD7 0xC195803B b323
_SET_DISABLE_VEHICLE_WINDOW_COLLISIONS
void VEHICLE::_SET_DISABLE_VEHICLE_WINDOW_COLLISIONS(Vehicle vehicle, BOOL toggle) // 0x1087BC8EC540DAEB b1103
R* used it to "remove" vehicle windows when "nightshark" had some mod, which adding some kind of armored windows. When enabled, you can't break vehicles glass. All your bullets wiil shoot through glass. You also will not able to break the glass with any other way (hitting and etc)
_0x4AD280EB48B2D8E6
void VEHICLE::_0x4AD280EB48B2D8E6(Vehicle vehicle, BOOL togle) // 0x4AD280EB48B2D8E6 b1868
_0xB68CFAF83A02768D
void VEHICLE::_0xB68CFAF83A02768D(Vehicle vehicle, BOOL toggle) // 0xB68CFAF83A02768D b1290
Sets value for vehicle. Vehicle is a helicopter? _SET_HELICOPTER_*
_0x0205F5365292D2EB
void VEHICLE::_0x0205F5365292D2EB(Vehicle vehicle, float p1) // 0x0205F5365292D2EB b1290
Sets some float for vehicle (def -1f) SET_VEHICLE_*
_0xCF9159024555488C
void VEHICLE::_0xCF9159024555488C(Any p0) // 0xCF9159024555488C b944
SET_DISTANT_CARS_ENABLED
void VEHICLE::SET_DISTANT_CARS_ENABLED(BOOL toggle) // 0xF796359A959DF65D 0xB5CC548B b323
Toggles to render distant vehicles. They may not be vehicles but images to look like vehicles.
_SET_VEHICLE_NEON_LIGHTS_COLOUR
void VEHICLE::_SET_VEHICLE_NEON_LIGHTS_COLOUR(Vehicle vehicle, int r, int g, int b) // 0x8E0A582209A62695 b323
Sets the color of the neon lights of the specified vehicle. More info: pastebin.com/G49gqy8b
_0xB93B2867F7B479D1
void VEHICLE::_0xB93B2867F7B479D1(Vehicle vehicle, int index) // 0xB93B2867F7B479D1 b1493
Sets some value for vehicle from array based on index _SET_VEHICLE_*
_GET_VEHICLE_NEON_LIGHTS_COLOUR
void VEHICLE::_GET_VEHICLE_NEON_LIGHTS_COLOUR(Vehicle vehicle, int* r, int* g, int* b) // 0x7619EEE8C886757F b323
Gets the color of the neon lights of the specified vehicle. See _SET_VEHICLE_NEON_LIGHTS_COLOUR (0x8E0A582209A62695) for more information
_SET_VEHICLE_NEON_LIGHT_ENABLED
void VEHICLE::_SET_VEHICLE_NEON_LIGHT_ENABLED(Vehicle vehicle, int index, BOOL toggle) // 0x2AA720E4287BF269 b323
Sets the neon lights of the specified vehicle on/off. Indices: 0 = Left 1 = Right 2 = Front 3 = Back
_IS_VEHICLE_NEON_LIGHT_ENABLED
BOOL VEHICLE::_IS_VEHICLE_NEON_LIGHT_ENABLED(Vehicle vehicle, int index) // 0x8C4B92553E4766A5 b323
indices: 0 = Left 1 = Right 2 = Front 3 = Back
_0x35E0654F4BAD7971
void VEHICLE::_0x35E0654F4BAD7971(BOOL p0) // 0x35E0654F4BAD7971 b323
_DISABLE_VEHICLE_NEON_LIGHTS
void VEHICLE::_DISABLE_VEHICLE_NEON_LIGHTS(Vehicle vehicle, BOOL toggle) // 0x83F813570FF519DE b573
_SET_DISABLE_SUPERDUMMY_MODE
void VEHICLE::_SET_DISABLE_SUPERDUMMY_MODE(Vehicle vehicle, BOOL p1) // 0xB088E9A47AE6EDD5 b323
_REQUEST_VEHICLE_DASHBOARD_SCALEFORM_MOVIE
void VEHICLE::_REQUEST_VEHICLE_DASHBOARD_SCALEFORM_MOVIE(Vehicle vehicle) // 0xDBA3C090E3D74690 b323
REQUEST_VEHICLE_*
GET_VEHICLE_BODY_HEALTH
float VEHICLE::GET_VEHICLE_BODY_HEALTH(Vehicle vehicle) // 0xF271147EB7B40F12 0x2B2FCC28 b323
Seems related to vehicle health, like the one in IV. Max 1000, min 0. Vehicle does not necessarily explode or become undrivable at 0.
SET_VEHICLE_BODY_HEALTH
void VEHICLE::SET_VEHICLE_BODY_HEALTH(Vehicle vehicle, float value) // 0xB77D05AC8C78AADB 0x920C2517 b323
p2 often set to 1000.0 in the decompiled scripts.
_GET_VEHICLE_SUSPENSION_BOUNDS
void VEHICLE::_GET_VEHICLE_SUSPENSION_BOUNDS(Vehicle vehicle, Vector3* out1, Vector3* out2) // 0xDF7E3EEB29642C38 b323
Outputs 2 Vector3's. Scripts check if out2.x - out1.x > someshit.x Could be suspension related, as in max suspension height and min suspension height, considering the natives location.
_GET_VEHICLE_SUSPENSION_HEIGHT
float VEHICLE::_GET_VEHICLE_SUSPENSION_HEIGHT(Vehicle vehicle) // 0x53952FD2BAA19F17 0xB73A1486 b323
Gets the height of the vehicle's suspension. The higher the value the lower the suspension. Each 0.002 corresponds with one more level lowered. 0.000 is the stock suspension. 0.008 is Ultra Suspension.
_SET_CAR_HIGH_SPEED_BUMP_SEVERITY_MULTIPLIER
void VEHICLE::_SET_CAR_HIGH_SPEED_BUMP_SEVERITY_MULTIPLIER(float multiplier) // 0x84FD40F56075E816 b323
Something to do with "high speed bump severity"? if (!sub_87a46("SET_CAR_HIGH_SPEED_BUMP_SEVERITY_MULTIPLIER")) { VEHICLE::_84FD40F56075E816(0.0); sub_8795b("SET_CAR_HIGH_SPEED_BUMP_SEVERITY_MULTIPLIER", 1); }
_GET_NUMBER_OF_VEHICLE_DOORS
int VEHICLE::_GET_NUMBER_OF_VEHICLE_DOORS(Vehicle vehicle) // 0x92922A607497B14D b463
_SET_HYDRAULIC_RAISED
void VEHICLE::_SET_HYDRAULIC_RAISED(Any p0, Any p1) // 0x28B18377EB6E25F6 b505
_0xA7DCDF4DED40A8F4
void VEHICLE::_0xA7DCDF4DED40A8F4(Vehicle vehicle, BOOL p1) // 0xA7DCDF4DED40A8F4 b323
_GET_VEHICLE_BODY_HEALTH_2
float VEHICLE::_GET_VEHICLE_BODY_HEALTH_2(Vehicle vehicle, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6) // 0xB8EF61207C2393A9 b323
0 min 100 max starts at 100 Seams to have health zones Front of vehicle when damaged goes from 100-50 and stops at 50. Rear can be damaged from 100-0 Only tested with two cars. any idea how this differs from the first one? -- May return the vehicle health on a scale of 0.0 - 100.0 (needs to be confirmed) example: v_F = ENTITY::GET_ENTITY_MODEL(v_3); if (((v_F == ${tanker}) || (v_F == ${armytanker})) || (v_F == ${tanker2})) { if (VEHICLE::_GET_VEHICLE_BODY_HEALTH_2(v_3) <= 1.0) { NETWORK::NETWORK_EXPLODE_VEHICLE(v_3, 1, 1, -1); } }
_0xD4C4642CB7F50B5D
BOOL VEHICLE::_0xD4C4642CB7F50B5D(Vehicle vehicle) // 0xD4C4642CB7F50B5D b323
Only used like this: if (VEHICLE::_D4C4642CB7F50B5D(ENTITY::GET_VEHICLE_INDEX_FROM_ENTITY_INDEX(v_3))) { sub_157e9c(g_40001._f1868, 0); }
_0xC361AA040D6637A8
void VEHICLE::_0xC361AA040D6637A8(Vehicle vehicle, BOOL p1) // 0xC361AA040D6637A8 b323
SET_VEHICLE_KERS_ALLOWED
void VEHICLE::SET_VEHICLE_KERS_ALLOWED(Vehicle vehicle, BOOL toggle) // 0x99C82F8A139F3E4E 0x71CDD52F b323
GET_VEHICLE_HAS_KERS
BOOL VEHICLE::GET_VEHICLE_HAS_KERS(Vehicle vehicle) // 0x50634E348C8D44EF 0x0761E635 b372
Returns true if the vehicle has a kers boost (for instance the lectro or the vindicator)
_0xE16142B94664DEFD
void VEHICLE::_0xE16142B94664DEFD(Vehicle vehicle, BOOL p1) // 0xE16142B94664DEFD b323
_0x26D99D5A82FD18E8
void VEHICLE::_0x26D99D5A82FD18E8(Any p0) // 0x26D99D5A82FD18E8 b463
_SET_HYDRAULIC_WHEEL_VALUE
void VEHICLE::_SET_HYDRAULIC_WHEEL_VALUE(Vehicle vehicle, int wheelId, float value) // 0x84EA99C62CB3EF0C b505
Works only on vehicles that support hydraulic.
_SET_CAMBERED_WHEELS_DISABLED
void VEHICLE::_SET_CAMBERED_WHEELS_DISABLED(Any p0, Any p1) // 0x1201E8A3290A3B98 b505
_SET_HYDRAULIC_WHEEL_STATE
void VEHICLE::_SET_HYDRAULIC_WHEEL_STATE(Any p0, Any p1) // 0x8EA86DF356801C7D b505
_SET_HYDRAULIC_WHEEL_STATE_TRANSITION
void VEHICLE::_SET_HYDRAULIC_WHEEL_STATE_TRANSITION(Vehicle vehicle, int wheelId, int state, float value, Any p4) // 0xC24075310A8B9CD1 b505
Sets vehicle wheel hydraulic states transition. Known states: 0 - reset 1 - raise wheel (uses value arg, works just like _SET_VEHICLE_HYDRAULIC_WHEEL_VALUE) 2 - jump using wheel
_0x5BA68A0840D546AC
Any VEHICLE::_0x5BA68A0840D546AC(Any p0, Any p1) // 0x5BA68A0840D546AC b463
_0x4419966C9936071A
void VEHICLE::_0x4419966C9936071A(Vehicle vehicle) // 0x4419966C9936071A b463
CLEAR_VEHICLE_*
_0x870B8B7A766615C8
void VEHICLE::_0x870B8B7A766615C8(Any p0, Any p1, Any p2) // 0x870B8B7A766615C8 b505
_0x8533CAFDE1F0F336
Any VEHICLE::_0x8533CAFDE1F0F336(Any p0) // 0x8533CAFDE1F0F336 b505
_SET_VEHICLE_DAMAGE_MODIFIER
Any VEHICLE::_SET_VEHICLE_DAMAGE_MODIFIER(Vehicle vehicle, float p1) // 0x4E20D2A627011E8E b757
SET_VEHICLE_D*
_SET_VEHICLE_UNK_DAMAGE_MULTIPLIER
void VEHICLE::_SET_VEHICLE_UNK_DAMAGE_MULTIPLIER(Vehicle vehicle, float multiplier) // 0x45A561A9421AB6AD b944
_0xD4196117AF7BB974
Any VEHICLE::_0xD4196117AF7BB974(Any p0, Any p1) // 0xD4196117AF7BB974 b757
_0xBB2333BB87DDD87F
void VEHICLE::_0xBB2333BB87DDD87F(Any p0, Any p1) // 0xBB2333BB87DDD87F b757
_0x73561D4425A021A2
void VEHICLE::_0x73561D4425A021A2(Any p0, Any p1) // 0x73561D4425A021A2 b791
_SET_VEHICLE_CONTROLS_INVERTED
void VEHICLE::_SET_VEHICLE_CONTROLS_INVERTED(Vehicle vehicle, BOOL state) // 0x5B91B229243351A8 b791
Inverts vehicle's controls. So INPUT_VEH_ACCELERATE will be INPUT_VEH_BRAKE and vise versa (same for A/D controls) Doesn't work for planes/helis.
_0x7BBE7FF626A591FE
void VEHICLE::_0x7BBE7FF626A591FE(Any p0) // 0x7BBE7FF626A591FE b877
_0x65B080555EA48149
void VEHICLE::_0x65B080555EA48149(Any p0) // 0x65B080555EA48149 b1011
_0x428AD3E26C8D9EB0
void VEHICLE::_0x428AD3E26C8D9EB0(Vehicle vehicle, float x, float y, float z, float p4) // 0x428AD3E26C8D9EB0 b877
SET_*
_0xE2F53F172B45EDE1
void VEHICLE::_0xE2F53F172B45EDE1() // 0xE2F53F172B45EDE1 b877
RESET_* Resets the effect of 0x428AD3E26C8D9EB0
_0xBA91D045575699AD
BOOL VEHICLE::_0xBA91D045575699AD(Vehicle vehicle) // 0xBA91D045575699AD b877
_0x80E3357FDEF45C21
void VEHICLE::_0x80E3357FDEF45C21(Any p0, Any p1) // 0x80E3357FDEF45C21 b944
_SET_VEHICLE_RAMP_LAUNCH_MODIFIER
void VEHICLE::_SET_VEHICLE_RAMP_LAUNCH_MODIFIER(Any p0, Any p1) // 0xEFC13B1CE30D755D b944
_GET_IS_DOOR_VALID
BOOL VEHICLE::_GET_IS_DOOR_VALID(Vehicle vehicle, int doorIndex) // 0x645F4B6E8499F632 b944
_SET_VEHICLE_ROCKET_BOOST_REFILL_TIME
void VEHICLE::_SET_VEHICLE_ROCKET_BOOST_REFILL_TIME(Vehicle vehicle, float seconds) // 0xE00F2AB100B76E89 b944
_GET_HAS_ROCKET_BOOST
BOOL VEHICLE::_GET_HAS_ROCKET_BOOST(Vehicle vehicle) // 0x36D782F68B309BDA b944
_IS_VEHICLE_ROCKET_BOOST_ACTIVE
BOOL VEHICLE::_IS_VEHICLE_ROCKET_BOOST_ACTIVE(Vehicle vehicle) // 0x3D34E80EED4AE3BE b944
_SET_VEHICLE_ROCKET_BOOST_ACTIVE
void VEHICLE::_SET_VEHICLE_ROCKET_BOOST_ACTIVE(Vehicle vehicle, BOOL active) // 0x81E1552E35DC3839 b944
_GET_HAS_RETRACTABLE_WHEELS
BOOL VEHICLE::_GET_HAS_RETRACTABLE_WHEELS(Vehicle vehicle) // 0xDCA174A42133F08C b944
_GET_IS_WHEELS_LOWERED_STATE_ACTIVE
BOOL VEHICLE::_GET_IS_WHEELS_LOWERED_STATE_ACTIVE(Vehicle vehicle) // 0x1DA0DA9CB3F0C8BF b944
_RAISE_RETRACTABLE_WHEELS
void VEHICLE::_RAISE_RETRACTABLE_WHEELS(Vehicle vehicle) // 0xF660602546D27BA8 b944
_LOWER_RETRACTABLE_WHEELS
void VEHICLE::_LOWER_RETRACTABLE_WHEELS(Vehicle vehicle) // 0x5335BE58C083E74E b1011
_GET_CAN_VEHICLE_JUMP
BOOL VEHICLE::_GET_CAN_VEHICLE_JUMP(Vehicle vehicle) // 0x9078C0C5EF8C19E9 b944
Returns true if the vehicle has the FLAG_JUMPING_CAR flag set.
_SET_USE_HIGHER_VEHICLE_JUMP_FORCE
void VEHICLE::_SET_USE_HIGHER_VEHICLE_JUMP_FORCE(Vehicle vehicle, BOOL toggle) // 0xF06A16CA55D138D8 b944
Allows vehicles with the FLAG_JUMPING_CAR flag to jump higher (i.e. Ruiner 2000).
_0xB2E0C0D6922D31F2
void VEHICLE::_0xB2E0C0D6922D31F2(Vehicle vehicle, BOOL toggle) // 0xB2E0C0D6922D31F2 b944
SET_C*
_SET_VEHICLE_WEAPON_CAPACITY
void VEHICLE::_SET_VEHICLE_WEAPON_CAPACITY(Vehicle vehicle, int weaponIndex, int capacity) // 0x44CD1F493DB2A0A6 b944
Set vehicle's primary mounted weapon 2 ammo. For example, use it on APC. For example, you can "remove" any vehicle weapon from any vehicle. ammoAmount -1 = infinite ammo (default value for any spawned vehicle tho)
_GET_VEHICLE_WEAPON_CAPACITY
int VEHICLE::_GET_VEHICLE_WEAPON_CAPACITY(Vehicle vehicle, int weaponIndex) // 0x8181CE2F25CB9BB7 b1011
_GET_VEHICLE_HAS_PARACHUTE
BOOL VEHICLE::_GET_VEHICLE_HAS_PARACHUTE(Vehicle vehicle) // 0xBC9CFF381338CB4F b944
_GET_VEHICLE_CAN_ACTIVATE_PARACHUTE
BOOL VEHICLE::_GET_VEHICLE_CAN_ACTIVATE_PARACHUTE(Vehicle vehicle) // 0xA916396DF4154EE3 b944
_SET_VEHICLE_PARACHUTE_ACTIVE
void VEHICLE::_SET_VEHICLE_PARACHUTE_ACTIVE(Vehicle vehicle, BOOL active) // 0x0BFFB028B3DD0A97 b944
_0x3DE51E9C80B116CF
Any VEHICLE::_0x3DE51E9C80B116CF(Any p0) // 0x3DE51E9C80B116CF b1011
_SET_VEHICLE_RECEIVES_RAMP_DAMAGE
void VEHICLE::_SET_VEHICLE_RECEIVES_RAMP_DAMAGE(Vehicle vehicle, BOOL toggle) // 0x28D034A93FE31BF5 b944
_SET_VEHICLE_RAMP_SIDEWAYS_LAUNCH_MOTION
void VEHICLE::_SET_VEHICLE_RAMP_SIDEWAYS_LAUNCH_MOTION(Any p0, Any p1) // 0x1BBAC99C0BC53656 b944
_SET_VEHICLE_RAMP_UPWARDS_LAUNCH_MOTION
void VEHICLE::_SET_VEHICLE_RAMP_UPWARDS_LAUNCH_MOTION(Any p0, Any p1) // 0x756AE6E962168A04 b944
_0x9D30687C57BAA0BB
void VEHICLE::_0x9D30687C57BAA0BB(Any p0) // 0x9D30687C57BAA0BB b1011
_SET_VEHICLE_WEAPONS_DISABLED
void VEHICLE::_SET_VEHICLE_WEAPONS_DISABLED(Any p0, Any p1) // 0x86B4B6212CB8B627 b1011
_0x41290B40FA63E6DA
void VEHICLE::_0x41290B40FA63E6DA(Any p0) // 0x41290B40FA63E6DA b1011
_SET_VEHICLE_PARACHUTE_MODEL
void VEHICLE::_SET_VEHICLE_PARACHUTE_MODEL(Vehicle vehicle, Hash modelHash) // 0x4D610C6B56031351 b1011
parachuteModel = 230075693
_SET_VEHICLE_PARACHUTE_TEXTURE_VARIATIION
void VEHICLE::_SET_VEHICLE_PARACHUTE_TEXTURE_VARIATIION(Vehicle vehicle, int textureVariation) // 0xA74AD2439468C883 b1011
colorIndex = 0 - 7
_0x0419B167EE128F33
Any VEHICLE::_0x0419B167EE128F33(Any p0, Any p1) // 0x0419B167EE128F33 b1103
_0xF3B0E0AED097A3F5
Any VEHICLE::_0xF3B0E0AED097A3F5(Any p0, Any p1) // 0xF3B0E0AED097A3F5 b1103
_0xD3E51C0AB8C26EEE
Any VEHICLE::_0xD3E51C0AB8C26EEE(Any p0, Any p1) // 0xD3E51C0AB8C26EEE b1103
_GET_ALL_VEHICLES
int VEHICLE::_GET_ALL_VEHICLES(int* vehsStruct) // 0x9B8E1BF04B51F2E8 b1103
_0x72BECCF4B829522E
void VEHICLE::_0x72BECCF4B829522E(Any p0, Any p1) // 0x72BECCF4B829522E b1103
_0x66E3AAFACE2D1EB8
void VEHICLE::_0x66E3AAFACE2D1EB8(Any p0, Any p1, Any p2) // 0x66E3AAFACE2D1EB8 b1103
_0x1312DDD8385AEE4E
void VEHICLE::_0x1312DDD8385AEE4E(Any p0, Any p1) // 0x1312DDD8385AEE4E b1103
_0xEDBC8405B3895CC9
void VEHICLE::_0xEDBC8405B3895CC9(Any p0, Any p1) // 0xEDBC8405B3895CC9 b1103
_0x26E13D440E7F6064
void VEHICLE::_0x26E13D440E7F6064(Vehicle vehicle, float value) // 0x26E13D440E7F6064 b1290
_0x2FA2494B47FDD009
void VEHICLE::_0x2FA2494B47FDD009(Any p0, Any p1) // 0x2FA2494B47FDD009 b1103
_SET_VEHICLE_ROCKET_BOOST_PERCENTAGE
void VEHICLE::_SET_VEHICLE_ROCKET_BOOST_PERCENTAGE(Vehicle vehicle, float percentage) // 0xFEB2DDED3509562E b1103
_SET_OPPRESSOR_TRANSFORM_STATE
void VEHICLE::_SET_OPPRESSOR_TRANSFORM_STATE(Vehicle vehicle, BOOL state) // 0x544996C0081ABDEB b1103
Set state to true to extend the wings, false to retract them.
_0x78CEEE41F49F421F
void VEHICLE::_0x78CEEE41F49F421F(Any p0, Any p1) // 0x78CEEE41F49F421F b1103
_0xAF60E6A2936F982A
void VEHICLE::_0xAF60E6A2936F982A(Any p0, Any p1) // 0xAF60E6A2936F982A b1103
_0x430A7631A84C9BE7
void VEHICLE::_0x430A7631A84C9BE7(Any p0) // 0x430A7631A84C9BE7 b1180
_DISABLE_VEHICLE_WORLD_COLLISION
void VEHICLE::_DISABLE_VEHICLE_WORLD_COLLISION(Vehicle vehicle) // 0x75627043C6AA90AD b1180
Disables collision for this vehicle (maybe it also supports other entities, not sure). Only world/building/fixed world objects will have their collisions disabled, props, peds, or any other entity still collides with the vehicle. Example: https://streamable.com/6n45d5 Not sure if there is a native (and if so, which one) that resets the collisions.
_0x8235F1BEAD557629
void VEHICLE::_0x8235F1BEAD557629(Vehicle vehicle, BOOL toggle) // 0x8235F1BEAD557629 b1180
Sets some value for vehicle SET_VEHICLE_*
_0x9640E30A7F395E4B
void VEHICLE::_0x9640E30A7F395E4B(Vehicle vehicle, Any p1, Any p2, Any p3, Any p4) // 0x9640E30A7F395E4B b1290
_0x0BBB9A7A8FFE931B
void VEHICLE::_0x0BBB9A7A8FFE931B(Any p0, Any p1, Any p2) // 0x0BBB9A7A8FFE931B b1290
_SET_CARGOBOB_HOOK_CAN_ATTACH
void VEHICLE::_SET_CARGOBOB_HOOK_CAN_ATTACH(Vehicle vehicle, BOOL toggle) // 0x94A68DA412C4007D b1180
Stops the cargobob from being able to attach any vehicle
_SET_VEHICLE_BOMB_COUNT
void VEHICLE::_SET_VEHICLE_BOMB_COUNT(Vehicle vehicle, int bombCount) // 0xF4B2ED59DEB5D774 b1180
Sets the amount of bombs that this vehicle has. As far as I know, this does _not_ impact vehicle weapons or the ammo of those weapons in any way, it is just a way to keep track of the amount of bombs in a specific plane.
_GET_VEHICLE_BOMB_COUNT
int VEHICLE::_GET_VEHICLE_BOMB_COUNT(Vehicle vehicle) // 0xEA12BD130D7569A1 b1180
Gets the amount of bombs that this vehicle has. As far as I know, this does _not_ impact vehicle weapons or the ammo of those weapons in any way, it is just a way to keep track of the amount of bombs in a specific plane.
_SET_VEHICLE_COUNTERMEASURE_COUNT
void VEHICLE::_SET_VEHICLE_COUNTERMEASURE_COUNT(Vehicle vehicle, int counterMeasureCount) // 0x9BDA23BF666F0855 b1180
Similar to 0xF4B2ED59DEB5D774, this sets the amount of countermeasures that are present on this vehicle. Use 0xF846AA63DF56B804 to get the current amount.
_GET_VEHICLE_COUNTERMEASURE_COUNT
int VEHICLE::_GET_VEHICLE_COUNTERMEASURE_COUNT(Vehicle vehicle) // 0xF846AA63DF56B804 b1180
Similar to `0xEA12BD130D7569A1`, this gets the amount of countermeasures that are present on this vehicle. Use 0x9BDA23BF666F0855 to set the current amount.
_0x0A3F820A9A9A9AC5
void VEHICLE::_0x0A3F820A9A9A9AC5(Vehicle vehicle, float x, float y, float z) // 0x0A3F820A9A9A9AC5 b1180
Used on helicopters SET_HELICOPTER_??
_0x51F30DB60626A20E
BOOL VEHICLE::_0x51F30DB60626A20E(Vehicle vehicle, float x, float y, float z, float rotX, float rotY, float rotZ, int p7, Any p8) // 0x51F30DB60626A20E b1180
Used in decompiled scripts in combination with _GET_VEHICLE_SUSPENSION_BOUNDS p7 is usually 2 p8 is usually 1
_0x97841634EF7DF1D6
void VEHICLE::_0x97841634EF7DF1D6(Vehicle vehicle, BOOL toggle) // 0x97841634EF7DF1D6 b1180
Sets a flag on heli and another vehicle type. _SET_VEHICLE_??
_SET_VEHICLE_HOVER_TRANSFORM_RATIO
void VEHICLE::_SET_VEHICLE_HOVER_TRANSFORM_RATIO(Vehicle vehicle, float ratio) // 0xD138FA15C9776837 b1290
_SET_VEHICLE_HOVER_TRANSFORM_PERCENTAGE
void VEHICLE::_SET_VEHICLE_HOVER_TRANSFORM_PERCENTAGE(Vehicle vehicle, float percentage) // 0x438B3D7CA026FE91 b1290
According to decompiled scripts this should work with the `deluxo` and `oppressor2` vehicles. I've only seen this work for `deluxo` though, can't figure out what it's supposed to do on `oppressor2`. For the deluxo: - Set `state` to `0.0`: Fully transform to a 'road' vehicle (non-hover mode). - Set `state` to `1.0`: Fully transform to a 'flying' vehicle (hover mode). If you set it to something like 0.5, then something [weird happens](https://streamable.com/p6wmr), you end up in some 50% hover mode, 50% not hover mode. This doesn't need to be called every tick, just once and the vehicle will transform to that state at the usual transform speed. It'll just stop transforming when it reaches the state you provided. Once this native is used then players will just be able to hit the vehicle transform key to toggle the transformation cycle; it won't block users from using the key.
_SET_VEHICLE_HOVER_TRANSFORM_ENABLED
void VEHICLE::_SET_VEHICLE_HOVER_TRANSFORM_ENABLED(Vehicle vehicle, BOOL toggle) // 0xF1211889DF15A763 b1290
It will override the ability to transform deluxo. For oppressor it will work just like 0x2D55FE374D5FDB91
_SET_VEHICLE_HOVER_TRANSFORM_ACTIVE
void VEHICLE::_SET_VEHICLE_HOVER_TRANSFORM_ACTIVE(Vehicle vehicle, BOOL toggle) // 0x2D55FE374D5FDB91 b1290
Disables "wings" for some flying vehicles. Works only for oppressor _2_ and deluxo. For deluxo it just immediately removes vehicle's "wings" and you will be not able to fly up. For oppressor 2 it will remove wings right after you land. And you will not able to fly up anymore too. But for opressor 2 you still can fly if you somehow get back in the air.
_0x3A9128352EAC9E85
Any VEHICLE::_0x3A9128352EAC9E85(Any p0) // 0x3A9128352EAC9E85 b1290
_FIND_RANDOM_POINT_IN_SPACE
Vector3 VEHICLE::_FIND_RANDOM_POINT_IN_SPACE(Ped ped) // 0x8DC9675797123522 b1290
Native is significantly more complicated than simply generating a random vector & length. The 'point' is either 400.0 or 250.0 units away from the Ped's current coordinates; and paths into functions like rage::grcViewport___IsSphereVisible
_SET_DEPLOY_HELI_STUB_WINGS
void VEHICLE::_SET_DEPLOY_HELI_STUB_WINGS(Vehicle vehicle, BOOL deploy, BOOL p2) // 0xB251E0B33E58B424 b1290
Only used with the "akula" and "annihilator2" in the decompiled native scripts.
_ARE_HELI_STUB_WINGS_DEPLOYED
BOOL VEHICLE::_ARE_HELI_STUB_WINGS_DEPLOYED(Vehicle vehicle) // 0xAEF12960FA943792 b1290
Only used with the "akula" and "annihilator2" in the decompiled native scripts.
_0xAA653AE61924B0A0
void VEHICLE::_0xAA653AE61924B0A0(Vehicle vehicle, BOOL toggle) // 0xAA653AE61924B0A0 b1290
Sets some vehicle value _SET_VEHICLE_?
_SET_VEHICLE_TURRET_UNK
void VEHICLE::_SET_VEHICLE_TURRET_UNK(Vehicle vehicle, int index, BOOL toggle) // 0xC60060EB0D8AC7B1 b1290
Toggles specific flag on turret
_SET_SPECIALFLIGHT_WING_RATIO
void VEHICLE::_SET_SPECIALFLIGHT_WING_RATIO(Vehicle vehicle, float ratio) // 0x70A252F60A3E036B b1365
_SET_DISABLE_TURRET_MOVEMENT_THIS_FRAME
void VEHICLE::_SET_DISABLE_TURRET_MOVEMENT_THIS_FRAME(Vehicle vehicle, int turretId) // 0xE615BB7A7752C76A b1365
Disables turret movement when called in a loop. You can still fire and aim. You cannot shoot backwards though.
_0x887FA38787DE8C72
void VEHICLE::_0x887FA38787DE8C72(Vehicle vehicle) // 0x887FA38787DE8C72 b1365
Sets some vehicle value to 1 SET_VEHICLE_??
_SET_UNK_FLOAT_0x104_FOR_SUBMARINE_VEHICLE_TASK
void VEHICLE::_SET_UNK_FLOAT_0x104_FOR_SUBMARINE_VEHICLE_TASK(Vehicle vehicle, float value) // 0x498218259FB7C72D b1365
_SET_UNK_BOOL_0x102_FOR_SUBMARINE_VEHICLE_TASK
void VEHICLE::_SET_UNK_BOOL_0x102_FOR_SUBMARINE_VEHICLE_TASK(Vehicle vehicle, BOOL value) // 0x41B9FB92EDED32A6 b1365
_0x36DE109527A2C0C4
void VEHICLE::_0x36DE109527A2C0C4(BOOL toggle) // 0x36DE109527A2C0C4 b1604
Does nothing. It's a nullsub.
_0x82E0AC411E41A5B4
void VEHICLE::_0x82E0AC411E41A5B4(BOOL toggle) // 0x82E0AC411E41A5B4 b1604
Does nothing. It's a nullsub.
_0x99A05839C46CE316
void VEHICLE::_0x99A05839C46CE316(BOOL toggle) // 0x99A05839C46CE316 b1604
Does nothing. It's a nullsub.
_GET_IS_VEHICLE_SHUNT_BOOST_ACTIVE
BOOL VEHICLE::_GET_IS_VEHICLE_SHUNT_BOOST_ACTIVE(Vehicle vehicle) // 0xA2459F72C14E2E8D b1604
_0xE8718FAF591FD224
BOOL VEHICLE::_0xE8718FAF591FD224(Vehicle vehicle) // 0xE8718FAF591FD224 b1604
GET_H*
_GET_LAST_RAMMED_VEHICLE
Vehicle VEHICLE::_GET_LAST_RAMMED_VEHICLE(Vehicle vehicle) // 0x04F2FA6E234162F7 b1604
Returns last vehicle that was rammed by the given vehicle using the shunt boost.
_SET_DISABLE_VEHICLE_UNK
void VEHICLE::_SET_DISABLE_VEHICLE_UNK(BOOL toggle) // 0x143921E45EC44D62 b1604
_SET_VEHICLE_NITRO_ENABLED
void VEHICLE::_SET_VEHICLE_NITRO_ENABLED(Vehicle vehicle, BOOL toggle, float level, float power, float rechargeTime, BOOL disableSound) // 0xC8E9B6B71B8E660D b1604
_SET_VEHICLE_WHEELS_DEAL_DAMAGE
void VEHICLE::_SET_VEHICLE_WHEELS_DEAL_DAMAGE(Vehicle vehicle, BOOL toggle) // 0x2970EAA18FD5E42F b1604
_SET_DISABLE_VEHICLE_UNK_2
void VEHICLE::_SET_DISABLE_VEHICLE_UNK_2(BOOL toggle) // 0x211E95CE9903940C b1604
Sets some global vehicle related bool
_0x5BBCF35BF6E456F7
void VEHICLE::_0x5BBCF35BF6E456F7(BOOL toggle) // 0x5BBCF35BF6E456F7 b1604
_GET_DOES_VEHICLE_HAVE_TOMBSTONE
BOOL VEHICLE::_GET_DOES_VEHICLE_HAVE_TOMBSTONE(Vehicle vehicle) // 0x71AFB258CCED3A27 b1604
_HIDE_VEHICLE_TOMBSTONE
void VEHICLE::_HIDE_VEHICLE_TOMBSTONE(Vehicle vehicle, BOOL toggle) // 0xAE71FB656C600587 b1604
Disables detachable bumber from domnator4, dominator5, dominator6, see https://gfycat.com/SecondUnluckyGosling
_GET_IS_VEHICLE_EMP_DISABLED
BOOL VEHICLE::_GET_IS_VEHICLE_EMP_DISABLED(Vehicle vehicle) // 0x0506ED94363AD905 b1604
Returns whether this vehicle is currently disabled by an EMP mine.
_0x8F0D5BA1C2CC91D7
void VEHICLE::_0x8F0D5BA1C2CC91D7(BOOL toggle) // 0x8F0D5BA1C2CC91D7 b1604
_GET_TYRE_HEALTH
float VEHICLE::_GET_TYRE_HEALTH(Vehicle vehicle, int wheelIndex) // 0x55EAB010FAEE9380 b1868
Usable wheels: 0: wheel_lf 1: wheel_rf 2: wheel_lm1 3: wheel_rm1 4: wheel_lr 5: wheel_rr
_SET_TYRE_HEALTH
void VEHICLE::_SET_TYRE_HEALTH(Vehicle vehicle, int wheelIndex, float health) // 0x74C68EF97645E79D b1868
_SET_TYRE_WEAR_MULTIPLIER must be active, otherwise values set to <1000.0f will default to 350.0f Usable wheels: 0: wheel_lf 1: wheel_rf 2: wheel_lm1 3: wheel_rm1 4: wheel_lr 5: wheel_rr
_GET_TYRE_WEAR_MULTIPLIER
float VEHICLE::_GET_TYRE_WEAR_MULTIPLIER(Vehicle vehicle, int wheelIndex) // 0x6E387895952F4F71 b2060
Returns the multiplier value from _SET_TYRE_WEAR_MULTIPLIER Usable wheels: 0: wheel_lf 1: wheel_rf 2: wheel_lm1 3: wheel_rm1 4: wheel_lr 5: wheel_rr
_SET_TYRE_WEAR_MULTIPLIER
void VEHICLE::_SET_TYRE_WEAR_MULTIPLIER(Vehicle vehicle, int wheelIndex, float multiplier) // 0x01894E2EDE923CA2 b1868
Needs to be run for tire wear to work. Multiplier affects the downforce and how fast the tires will wear out, higher values essentially make the vehicle slower on straights and its tires will wear down quicker when cornering. Value must be >0f. Default value in Rockstar's Open Wheel Race JSON's ("owrtws", "owrtwm", "owrtwh") is 1.0 Usable wheels: 0: wheel_lf 1: wheel_rf 2: wheel_lm1 3: wheel_rm1 4: wheel_lr 5: wheel_rr
_SET_TYRE_SOFTNESS_MULTIPLIER
void VEHICLE::_SET_TYRE_SOFTNESS_MULTIPLIER(Vehicle vehicle, int wheelIndex, float multiplier) // 0x392183BB9EA57697 b2060
Controls how fast the tires wear out. Default values from Rockstar's Open Wheel Race JSON's: "owrtss" (Soft): 2.2 "owrtsm" (Medium): 1.7 "owrtsh" (Hard): 1.2 Usable wheels: 0: wheel_lf 1: wheel_rf 2: wheel_lm1 3: wheel_rm1 4: wheel_lr 5: wheel_rr
_SET_TYRE_TRACTION_LOSS_MULTIPLIER
void VEHICLE::_SET_TYRE_TRACTION_LOSS_MULTIPLIER(Vehicle vehicle, int wheelIndex, float multiplier) // 0xC970D0E0FC31D768 b2060
Controls how much traction the wheel loses. Default values from Rockstar's Open Wheel Race JSON's: "owrtds" (Soft): 0.05 "owrtdm" (Medium): 0.45 "owrtdh" (Hard): 0.8 Usable wheels: 0: wheel_lf 1: wheel_rf 2: wheel_lm1 3: wheel_rm1 4: wheel_lr 5: wheel_rr
_0xF8B49F5BA7F850E7
void VEHICLE::_0xF8B49F5BA7F850E7(Vehicle vehicle, int p1) // 0xF8B49F5BA7F850E7 b2060
WATER
GET_WATER_HEIGHT
BOOL WATER::GET_WATER_HEIGHT(float x, float y, float z, float* height) // 0xF6829842C06AE524 0xD864E17C b323
This function set height to the value of z-axis of the water surface. This function works with sea and lake. However it does not work with shallow rivers (e.g. raton canyon will return -100000.0f) note: seems to return true when you are in water
GET_WATER_HEIGHT_NO_WAVES
BOOL WATER::GET_WATER_HEIGHT_NO_WAVES(float x, float y, float z, float* height) // 0x8EE6B53CE13A9794 0x262017F8 b323
TEST_PROBE_AGAINST_WATER
BOOL WATER::TEST_PROBE_AGAINST_WATER(float x1, float y1, float z1, float x2, float y2, float z2, Vector3* result) // 0xFFA5D878809819DB 0xAA4AE00C b323
TEST_PROBE_AGAINST_ALL_WATER
BOOL WATER::TEST_PROBE_AGAINST_ALL_WATER(Any p0, Any p1, Any p2, Any p3, Any p4, Any p5, Any p6, Any p7) // 0x8974647ED222EA5F 0x4A962D55 b323
TEST_VERTICAL_PROBE_AGAINST_ALL_WATER
BOOL WATER::TEST_VERTICAL_PROBE_AGAINST_ALL_WATER(float x, float y, float z, Any p3, float* height) // 0x2B3451FA1E3142E2 0x4C71D143 b323
MODIFY_WATER
void WATER::MODIFY_WATER(float x, float y, float radius, float height) // 0xC443FD757C3BA637 0xC49E005A b323
Sets the water height for a given position and radius.
_ADD_CURRENT_RISE
int WATER::_ADD_CURRENT_RISE(float x, float y, float z, float radius, float unk) // 0xFDBF4CDBC07E1706 0x45268B6F b323
Most likely ADD_CURRENT_*
_REMOVE_CURRENT_RISE
void WATER::_REMOVE_CURRENT_RISE(int p0) // 0xB1252E3E59A82AAF 0x7DBCEF6F b323
p0 is the handle returned from _0xFDBF4CDBC07E1706 Most likely REMOVE_CURRENT_*
SET_DEEP_OCEAN_SCALER
void WATER::SET_DEEP_OCEAN_SCALER(float intensity) // 0xB96B00E976BE977F 0x53B694B1 b323
Sets a value that determines how aggressive the ocean waves will be. Values of 2.0 or more make for very aggressive waves like you see during a thunderstorm. Works only ~200 meters around the player.
GET_DEEP_OCEAN_SCALER
float WATER::GET_DEEP_OCEAN_SCALER() // 0x2B2A2CC86778B619 0xBD0A67FB b323
Gets the aggressiveness factor of the ocean waves.
_0x547237AA71AB44DE
void WATER::_0x547237AA71AB44DE(float p0) // 0x547237AA71AB44DE b573
RESET_DEEP_OCEAN_SCALER
void WATER::RESET_DEEP_OCEAN_SCALER() // 0x5E5E99285AE812DB 0x4AD23212 b323
Sets the waves intensity back to original (1.0 in most cases).
WEAPON
ENABLE_LASER_SIGHT_RENDERING
void WEAPON::ENABLE_LASER_SIGHT_RENDERING(BOOL toggle) // 0xC8B46D7727D864AA 0xE3438955 b323
Enables laser sight on any weapon. It doesn't work. Neither on tick nor OnKeyDown
GET_WEAPON_COMPONENT_TYPE_MODEL
Hash WEAPON::GET_WEAPON_COMPONENT_TYPE_MODEL(Hash componentHash) // 0x0DB57B41EC1DB083 0x324FA47A b323
GET_WEAPONTYPE_MODEL
Hash WEAPON::GET_WEAPONTYPE_MODEL(Hash weaponHash) // 0xF46CDC33180FDA94 0x44E1C269 b323
Returns the model of any weapon. Can also take an ammo hash? sub_6663a(&l_115B, WEAPON::GET_WEAPONTYPE_MODEL(${ammo_rpg}));
GET_WEAPONTYPE_SLOT
Hash WEAPON::GET_WEAPONTYPE_SLOT(Hash weaponHash) // 0x4215460B9B8B7FA0 0x2E3759AF b323
GET_WEAPONTYPE_GROUP
Hash WEAPON::GET_WEAPONTYPE_GROUP(Hash weaponHash) // 0xC3287EE3050FB74C 0x5F2DE833 b323
_GET_WEAPON_COMPONENT_VARIANT_EXTRA_COMPONENT_COUNT
int WEAPON::_GET_WEAPON_COMPONENT_VARIANT_EXTRA_COMPONENT_COUNT(Hash componentHash) // 0x6558AC7C17BFEF58 b372
Returns the amount of extra components the specified component has. Returns -1 if the component isn't of type CWeaponComponentVariantModel.
_GET_WEAPON_COMPONENT_VARIANT_EXTRA_COMPONENT_MODEL
Hash WEAPON::_GET_WEAPON_COMPONENT_VARIANT_EXTRA_COMPONENT_MODEL(Hash componentHash, int extraComponentIndex) // 0x4D1CB8DC40208A17 b372
Returns the model hash of the extra component at specified index.
SET_CURRENT_PED_WEAPON
void WEAPON::SET_CURRENT_PED_WEAPON(Ped ped, Hash weaponHash, BOOL bForceInHand) // 0xADF692B254977C0C 0xB8278882 b323
GET_CURRENT_PED_WEAPON
BOOL WEAPON::GET_CURRENT_PED_WEAPON(Ped ped, Hash* weaponHash, BOOL p2) // 0x3A87E44BB9A01D54 0xB0237302 b323
The return value seems to indicate returns true if the hash of the weapon object weapon equals the weapon hash. p2 seems to be 1 most of the time. p2 is not implemented disassembly said that?
GET_CURRENT_PED_WEAPON_ENTITY_INDEX
Entity WEAPON::GET_CURRENT_PED_WEAPON_ENTITY_INDEX(Ped ped, Any p1) // 0x3B390A939AF0B5FC 0x5D73CD20 b323
GET_BEST_PED_WEAPON
Hash WEAPON::GET_BEST_PED_WEAPON(Ped ped, BOOL p1) // 0x8483E98E8B888AE2 0xB998D444 b323
p1 is always 0 in the scripts.
SET_CURRENT_PED_VEHICLE_WEAPON
BOOL WEAPON::SET_CURRENT_PED_VEHICLE_WEAPON(Ped ped, Hash weaponHash) // 0x75C55983C2C39DAA 0x8E6F2AF1 b323
GET_CURRENT_PED_VEHICLE_WEAPON
BOOL WEAPON::GET_CURRENT_PED_VEHICLE_WEAPON(Ped ped, Hash* weaponHash) // 0x1017582BCD3832DC 0xF26C5D65 b323
Example in VB Public Shared Function GetVehicleCurrentWeapon(Ped As Ped) As Integer Dim arg As New OutputArgument() Native.Function.Call(Hash.GET_CURRENT_PED_VEHICLE_WEAPON, Ped, arg) Return arg.GetResult(Of Integer)() End Function Usage: If GetVehicleCurrentWeapon(Game.Player.Character) = -821520672 Then ...Do something Note: -821520672 = VEHICLE_WEAPON_PLANE_ROCKET
_0x50276EF8172F5F12
void WEAPON::_0x50276EF8172F5F12(Ped ped) // 0x50276EF8172F5F12 b1734
SET_PED_*
IS_PED_ARMED
BOOL WEAPON::IS_PED_ARMED(Ped ped, int typeFlags) // 0x475768A975D5AD17 0x0BFC892C b323
Checks if the ped is currently equipped with a weapon matching a bit specified using a bitwise-or in typeFlags. Type flag bit values: 1 = Melee weapons 2 = Explosive weapons 4 = Any other weapons Not specifying any bit will lead to the native *always* returning 'false', and for example specifying '4 | 2' will check for any weapon except fists and melee weapons. 7 returns true if you are equipped with any weapon except your fists. 6 returns true if you are equipped with any weapon except melee weapons. 5 returns true if you are equipped with any weapon except the Explosives weapon group. 4 returns true if you are equipped with any weapon except Explosives weapon group AND melee weapons. 3 returns true if you are equipped with either Explosives or Melee weapons (the exact opposite of 4). 2 returns true only if you are equipped with any weapon from the Explosives weapon group. 1 returns true only if you are equipped with any Melee weapon. 0 never returns true. Note: When I say "Explosives weapon group", it does not include the Jerry can and Fire Extinguisher.
IS_WEAPON_VALID
BOOL WEAPON::IS_WEAPON_VALID(Hash weaponHash) // 0x937C71165CF334B3 0x38CA2954 b323
HAS_PED_GOT_WEAPON
BOOL WEAPON::HAS_PED_GOT_WEAPON(Ped ped, Hash weaponHash, BOOL p2) // 0x8DECB02F88F428BC 0x43D2FA82 b323
p2 should be FALSE, otherwise it seems to always return FALSE Bool does not check if the weapon is current equipped, unfortunately.
IS_PED_WEAPON_READY_TO_SHOOT
BOOL WEAPON::IS_PED_WEAPON_READY_TO_SHOOT(Ped ped) // 0xB80CA294F2F26749 0x02A32CB0 b323
GET_PED_WEAPONTYPE_IN_SLOT
Hash WEAPON::GET_PED_WEAPONTYPE_IN_SLOT(Ped ped, Hash weaponSlot) // 0xEFFED78E9011134D 0x9BC64E16 b323
GET_AMMO_IN_PED_WEAPON
int WEAPON::GET_AMMO_IN_PED_WEAPON(Ped ped, Hash weaponhash) // 0x015A522136D7F951 0x0C755733 b323
WEAPON::GET_AMMO_IN_PED_WEAPON(PLAYER::PLAYER_PED_ID(), a_0) From decompiled scripts Returns total ammo in weapon GTALua Example : natives.WEAPON.GET_AMMO_IN_PED_WEAPON(plyPed, WeaponHash)
ADD_AMMO_TO_PED
void WEAPON::ADD_AMMO_TO_PED(Ped ped, Hash weaponHash, int ammo) // 0x78F0424C34306220 0x7F0580C7 b323
SET_PED_AMMO
void WEAPON::SET_PED_AMMO(Ped ped, Hash weaponHash, int ammo, BOOL p3) // 0x14E56BC5B5DB6A19 0xBF90DF1A b323
SET_PED_INFINITE_AMMO
void WEAPON::SET_PED_INFINITE_AMMO(Ped ped, BOOL toggle, Hash weaponHash) // 0x3EDCB0505123623B 0x9CB8D278 b323
SET_PED_INFINITE_AMMO_CLIP
void WEAPON::SET_PED_INFINITE_AMMO_CLIP(Ped ped, BOOL toggle) // 0x183DADC6AA953186 0x5A5E3B67 b323
_0x24C024BA8379A70A
void WEAPON::_0x24C024BA8379A70A(Any p0, Any p1) // 0x24C024BA8379A70A b1868
GIVE_WEAPON_TO_PED
void WEAPON::GIVE_WEAPON_TO_PED(Ped ped, Hash weaponHash, int ammoCount, BOOL isHidden, BOOL bForceInHand) // 0xBF0FD6E56C964FCB 0xC4D88A85 b323
GIVE_DELAYED_WEAPON_TO_PED
void WEAPON::GIVE_DELAYED_WEAPON_TO_PED(Ped ped, Hash weaponHash, int ammoCount, BOOL bForceInHand) // 0xB282DC6EBD803C75 0x5868D20D b323
Gives a weapon to PED with a delay, example: WEAPON::GIVE_DELAYED_WEAPON_TO_PED(PED::PLAYER_PED_ID(), MISC::GET_HASH_KEY("WEAPON_PISTOL"), 1000, false)
REMOVE_ALL_PED_WEAPONS
void WEAPON::REMOVE_ALL_PED_WEAPONS(Ped ped, BOOL p1) // 0xF25DF915FA38C5F3 0xA44CE817 b323
setting the last params to false it does that same so I would suggest its not a toggle
REMOVE_WEAPON_FROM_PED
void WEAPON::REMOVE_WEAPON_FROM_PED(Ped ped, Hash weaponHash) // 0x4899CB088EDF59B8 0x9C37F220 b323
This native removes a specified weapon from your selected ped. Weapon Hashes: pastebin.com/0wwDZgkF Example: C#: Function.Call(Hash.REMOVE_WEAPON_FROM_PED, Game.Player.Character, 0x99B507EA); C++: WEAPON::REMOVE_WEAPON_FROM_PED(PLAYER::PLAYER_PED_ID(), 0x99B507EA); The code above removes the knife from the player.
HIDE_PED_WEAPON_FOR_SCRIPTED_CUTSCENE
void WEAPON::HIDE_PED_WEAPON_FOR_SCRIPTED_CUTSCENE(Ped ped, BOOL toggle) // 0x6F6981D2253C208F 0x00CFD6E9 b323
Hides the players weapon during a cutscene.
SET_PED_CURRENT_WEAPON_VISIBLE
void WEAPON::SET_PED_CURRENT_WEAPON_VISIBLE(Ped ped, BOOL visible, BOOL deselectWeapon, BOOL p3, BOOL p4) // 0x0725A4CCFDED9A70 0x00BECD77 b323
Has 5 parameters since latest patches.
SET_PED_DROPS_WEAPONS_WHEN_DEAD
void WEAPON::SET_PED_DROPS_WEAPONS_WHEN_DEAD(Ped ped, BOOL toggle) // 0x476AE72C1D19D1A8 0x8A444056 b323
HAS_PED_BEEN_DAMAGED_BY_WEAPON
BOOL WEAPON::HAS_PED_BEEN_DAMAGED_BY_WEAPON(Ped ped, Hash weaponHash, int weaponType) // 0x2D343D2219CD027A 0xCDFBBCC6 b323
It determines what weapons caused damage: If you want to define only a specific weapon, second parameter=weapon hash code, third parameter=0 If you want to define any melee weapon, second parameter=0, third parameter=1. If you want to identify any weapon (firearms, melee, rockets, etc.), second parameter=0, third parameter=2.
CLEAR_PED_LAST_WEAPON_DAMAGE
void WEAPON::CLEAR_PED_LAST_WEAPON_DAMAGE(Ped ped) // 0x0E98F88A24C5F4B8 0x52C68832 b323
Does NOT seem to work with HAS_PED_BEEN_DAMAGED_BY_WEAPON. Use CLEAR_ENTITY_LAST_WEAPON_DAMAGE and HAS_ENTITY_BEEN_DAMAGED_BY_WEAPON instead.
HAS_ENTITY_BEEN_DAMAGED_BY_WEAPON
BOOL WEAPON::HAS_ENTITY_BEEN_DAMAGED_BY_WEAPON(Entity entity, Hash weaponHash, int weaponType) // 0x131D401334815E94 0x6DAABB39 b323
It determines what weapons caused damage: If you want to define only a specific weapon, second parameter=weapon hash code, third parameter=0 If you want to define any melee weapon, second parameter=0, third parameter=1. If you want to identify any weapon (firearms, melee, rockets, etc.), second parameter=0, third parameter=2.
CLEAR_ENTITY_LAST_WEAPON_DAMAGE
void WEAPON::CLEAR_ENTITY_LAST_WEAPON_DAMAGE(Entity entity) // 0xAC678E40BE7C74D2 0xCEC2732B b323
SET_PED_DROPS_WEAPON
void WEAPON::SET_PED_DROPS_WEAPON(Ped ped) // 0x6B7513D9966FBEC0 0x3D3329FA b323
SET_PED_DROPS_INVENTORY_WEAPON
void WEAPON::SET_PED_DROPS_INVENTORY_WEAPON(Ped ped, Hash weaponHash, float xOffset, float yOffset, float zOffset, int ammoCount) // 0x208A1888007FC0E6 0x81FFB874 b323
GET_MAX_AMMO_IN_CLIP
int WEAPON::GET_MAX_AMMO_IN_CLIP(Ped ped, Hash weaponHash, BOOL p2) // 0xA38DCFFCEA8962FA 0x6961E2A4 b323
p2 is mostly 1 in the scripts.
GET_AMMO_IN_CLIP
BOOL WEAPON::GET_AMMO_IN_CLIP(Ped ped, Hash weaponHash, int* ammo) // 0x2E1202248937775C 0x73C100C3 b323
SET_AMMO_IN_CLIP
BOOL WEAPON::SET_AMMO_IN_CLIP(Ped ped, Hash weaponHash, int ammo) // 0xDCD2A934D65CB497 0xA54B0B10 b323
GET_MAX_AMMO
BOOL WEAPON::GET_MAX_AMMO(Ped ped, Hash weaponHash, int* ammo) // 0xDC16122C7A20C933 0x0B294796 b323
_GET_MAX_AMMO_BY_TYPE
BOOL WEAPON::_GET_MAX_AMMO_BY_TYPE(Ped ped, Hash ammoTypeHash, int* ammo) // 0x585847C5E4E11709 b1103
Returns the max ammo for an ammo type. Ammo types: https://gist.github.com/root-cause/faf41f59f7a6d818b7db0b839bd147c1
_ADD_AMMO_TO_PED_BY_TYPE
void WEAPON::_ADD_AMMO_TO_PED_BY_TYPE(Ped ped, Hash ammoTypeHash, int ammo) // 0x2472622CE1F2D45F b1103
Ammo types: https://gist.github.com/root-cause/faf41f59f7a6d818b7db0b839bd147c1
SET_PED_AMMO_BY_TYPE
void WEAPON::SET_PED_AMMO_BY_TYPE(Ped ped, Hash ammoTypeHash, int ammo) // 0x5FD1E1F011E76D7E 0x311C52BB b323
Ammo types: https://gist.github.com/root-cause/faf41f59f7a6d818b7db0b839bd147c1
GET_PED_AMMO_BY_TYPE
int WEAPON::GET_PED_AMMO_BY_TYPE(Ped ped, Hash ammoTypeHash) // 0x39D22031557946C1 0x54077C4D b323
SET_PED_AMMO_TO_DROP
void WEAPON::SET_PED_AMMO_TO_DROP(Ped ped, int p1) // 0xA4EFEF9440A5B0EF 0x2386A307 b323
SET_PICKUP_AMMO_AMOUNT_SCALER
void WEAPON::SET_PICKUP_AMMO_AMOUNT_SCALER(float p0) // 0xE620FD3512A04F18 0xD6460EA2 b323
GET_PED_AMMO_TYPE_FROM_WEAPON
Hash WEAPON::GET_PED_AMMO_TYPE_FROM_WEAPON(Ped ped, Hash weaponHash) // 0x7FEAD38B326B9F74 0x09337863 b323
Returns the current ammo type of the specified ped's specified weapon. MkII magazines will change the return value, like Pistol MkII returning AMMO_PISTOL without any components and returning AMMO_PISTOL_TRACER after Tracer Rounds component is attached. Use 0xF489B44DD5AF4BD9 if you always want AMMO_PISTOL.
_GET_PED_AMMO_TYPE_FROM_WEAPON_2
Hash WEAPON::_GET_PED_AMMO_TYPE_FROM_WEAPON_2(Ped ped, Hash weaponHash) // 0xF489B44DD5AF4BD9 b1103
Returns the base/default ammo type of the specified ped's specified weapon. Use GET_PED_AMMO_TYPE_FROM_WEAPON if you want current ammo type (like AMMO_MG_INCENDIARY/AMMO_MG_TRACER while using MkII magazines) and use this if you want base ammo type. (AMMO_MG)
GET_PED_LAST_WEAPON_IMPACT_COORD
BOOL WEAPON::GET_PED_LAST_WEAPON_IMPACT_COORD(Ped ped, Vector3* coords) // 0x6C4D0409BA1A2BC2 0x9B266079 b323
Pass ped. Pass address of Vector3. The coord will be put into the Vector3. The return will determine whether there was a coord found or not.
SET_PED_GADGET
void WEAPON::SET_PED_GADGET(Ped ped, Hash gadgetHash, BOOL p2) // 0xD0D7B1E680ED4A1A 0x8A256D0A b323
p1/gadgetHash was always 0xFBAB5776 ("GADGET_PARACHUTE"). p2 is always true.
GET_IS_PED_GADGET_EQUIPPED
BOOL WEAPON::GET_IS_PED_GADGET_EQUIPPED(Ped ped, Hash gadgetHash) // 0xF731332072F5156C 0x8DDD0B5B b323
gadgetHash - was always 0xFBAB5776 ("GADGET_PARACHUTE").
GET_SELECTED_PED_WEAPON
Hash WEAPON::GET_SELECTED_PED_WEAPON(Ped ped) // 0x0A6DB4965674D243 0xD240123E b323
Returns the hash of the weapon. var num7 = WEAPON::GET_SELECTED_PED_WEAPON(num4); sub_27D3(num7); switch (num7) { case 0x24B17070: Also see WEAPON::GET_CURRENT_PED_WEAPON. Difference? ------------------------------------------------------------------------- The difference is that GET_SELECTED_PED_WEAPON simply returns the ped's current weapon hash but GET_CURRENT_PED_WEAPON also checks the weapon object and returns true if the hash of the weapon object equals the weapon hash
EXPLODE_PROJECTILES
void WEAPON::EXPLODE_PROJECTILES(Ped ped, Hash weaponHash, BOOL p2) // 0xFC4BD125DE7611E4 0x35A0B955 b323
WEAPON::EXPLODE_PROJECTILES(PLAYER::PLAYER_PED_ID(), func_221(0x00000003), 0x00000001);
REMOVE_ALL_PROJECTILES_OF_TYPE
void WEAPON::REMOVE_ALL_PROJECTILES_OF_TYPE(Hash weaponHash, BOOL explode) // 0xFC52E0F37E446528 0xA5F89919 b323
If `explode` true, then removal is done through exploding the projectile. Basically the same as EXPLODE_PROJECTILES but without defining the owner ped.
GET_LOCKON_DISTANCE_OF_CURRENT_PED_WEAPON
float WEAPON::GET_LOCKON_DISTANCE_OF_CURRENT_PED_WEAPON(Ped ped) // 0x840F03E9041E2C9C 0x3612110D b323
GET_MAX_RANGE_OF_CURRENT_PED_WEAPON
float WEAPON::GET_MAX_RANGE_OF_CURRENT_PED_WEAPON(Ped ped) // 0x814C9D19DFD69679 0xB2B2BBAA b323
HAS_VEHICLE_GOT_PROJECTILE_ATTACHED
BOOL WEAPON::HAS_VEHICLE_GOT_PROJECTILE_ATTACHED(Ped driver, Vehicle vehicle, Hash weaponHash, Any p3) // 0x717C8481234E3B88 0xA57E2E80 b323
Third Parameter = unsure, but pretty sure it is weapon hash --> get_hash_key("weapon_stickybomb") Fourth Parameter = unsure, almost always -1
GIVE_WEAPON_COMPONENT_TO_PED
void WEAPON::GIVE_WEAPON_COMPONENT_TO_PED(Ped ped, Hash weaponHash, Hash componentHash) // 0xD966D51AA5B28BB9 0x3E1E286D b323
REMOVE_WEAPON_COMPONENT_FROM_PED
void WEAPON::REMOVE_WEAPON_COMPONENT_FROM_PED(Ped ped, Hash weaponHash, Hash componentHash) // 0x1E8BE90C74FB4C09 0x412AA00D b323
HAS_PED_GOT_WEAPON_COMPONENT
BOOL WEAPON::HAS_PED_GOT_WEAPON_COMPONENT(Ped ped, Hash weaponHash, Hash componentHash) // 0xC593212475FAE340 0xDC0FC145 b323
IS_PED_WEAPON_COMPONENT_ACTIVE
BOOL WEAPON::IS_PED_WEAPON_COMPONENT_ACTIVE(Ped ped, Hash weaponHash, Hash componentHash) // 0x0D78DE0572D3969E 0x7565FB19 b323
REFILL_AMMO_INSTANTLY
BOOL WEAPON::REFILL_AMMO_INSTANTLY(Ped ped) // 0x8C0D57EA686FAD87 0x82EEAF0F b323
Old name: _PED_SKIP_NEXT_RELOADING
MAKE_PED_RELOAD
BOOL WEAPON::MAKE_PED_RELOAD(Ped ped) // 0x20AE33F3AC9C0033 0x515292C2 b323
Forces a ped to reload only if they are able to; if they have a full magazine, they will not reload.
REQUEST_WEAPON_ASSET
void WEAPON::REQUEST_WEAPON_ASSET(Hash weaponHash, int p1, int p2) // 0x5443438F033E29C3 0x65D139A5 b323
Nearly every instance of p1 I found was 31. Nearly every instance of p2 I found was 0. REQUEST_WEAPON_ASSET(iLocal_1888, 31, 26);
HAS_WEAPON_ASSET_LOADED
BOOL WEAPON::HAS_WEAPON_ASSET_LOADED(Hash weaponHash) // 0x36E353271F0E90EE 0x1891D5BB b323
REMOVE_WEAPON_ASSET
void WEAPON::REMOVE_WEAPON_ASSET(Hash weaponHash) // 0xAA08EF13F341C8FC 0x2C0DFE3C b323
CREATE_WEAPON_OBJECT
Object WEAPON::CREATE_WEAPON_OBJECT(Hash weaponHash, int ammoCount, float x, float y, float z, BOOL showWorldModel, float scale, Any p7, Any p8, Any p9) // 0x9541D3CF0D398F36 0x62F5987F b323
Now has 8 params.
GIVE_WEAPON_COMPONENT_TO_WEAPON_OBJECT
void WEAPON::GIVE_WEAPON_COMPONENT_TO_WEAPON_OBJECT(Object weaponObject, Hash addonHash) // 0x33E179436C0B31DB 0xF7612A37 b323
addonHash: (use WEAPON::GET_WEAPON_COMPONENT_TYPE_MODEL() to get hash value) ${component_at_ar_flsh}, ${component_at_ar_supp}, ${component_at_pi_flsh}, ${component_at_scope_large}, ${component_at_ar_supp_02}
REMOVE_WEAPON_COMPONENT_FROM_WEAPON_OBJECT
void WEAPON::REMOVE_WEAPON_COMPONENT_FROM_WEAPON_OBJECT(Any p0, Any p1) // 0xF7D82B0D66777611 0xA6E7ED3C b323
HAS_WEAPON_GOT_WEAPON_COMPONENT
BOOL WEAPON::HAS_WEAPON_GOT_WEAPON_COMPONENT(Object weapon, Hash addonHash) // 0x76A18844E743BF91 0x1D368510 b323
GIVE_WEAPON_OBJECT_TO_PED
void WEAPON::GIVE_WEAPON_OBJECT_TO_PED(Object weaponObject, Ped ped) // 0xB1FA61371AF7C4B7 0x639AF3EF b323
DOES_WEAPON_TAKE_WEAPON_COMPONENT
BOOL WEAPON::DOES_WEAPON_TAKE_WEAPON_COMPONENT(Hash weaponHash, Hash componentHash) // 0x5CEE3DF569CECAB0 0xB1817BAA b323
GET_WEAPON_OBJECT_FROM_PED
Object WEAPON::GET_WEAPON_OBJECT_FROM_PED(Ped ped, BOOL p1) // 0xCAE1DC9A0E22A16D 0xDF939A38 b323
Drops the current weapon and returns the object Unknown behavior when unarmed.
_GIVE_LOADOUT_TO_PED
void WEAPON::_GIVE_LOADOUT_TO_PED(Ped ped, Hash loadoutHash) // 0x68F8BE6AF5CDF8A6 b505
GIVE_*
SET_PED_WEAPON_TINT_INDEX
void WEAPON::SET_PED_WEAPON_TINT_INDEX(Ped ped, Hash weaponHash, int tintIndex) // 0x50969B9B89ED5738 0xEB2A7B23 b323
tintIndex can be the following: 0 - Normal 1 - Green 2 - Gold 3 - Pink 4 - Army 5 - LSPD 6 - Orange 7 - Platinum
GET_PED_WEAPON_TINT_INDEX
int WEAPON::GET_PED_WEAPON_TINT_INDEX(Ped ped, Hash weaponHash) // 0x2B9EEDC07BD06B9F 0x3F9C90A7 b323
SET_WEAPON_OBJECT_TINT_INDEX
void WEAPON::SET_WEAPON_OBJECT_TINT_INDEX(Object weapon, int tintIndex) // 0xF827589017D4E4A9 0x44ACC1DA b323
GET_WEAPON_OBJECT_TINT_INDEX
int WEAPON::GET_WEAPON_OBJECT_TINT_INDEX(Object weapon) // 0xCD183314F7CD2E57 0xD91D9576 b323
GET_WEAPON_TINT_COUNT
int WEAPON::GET_WEAPON_TINT_COUNT(Hash weaponHash) // 0x5DCF6C5CAB2E9BF7 0x99E4EAAB b323
_SET_PED_WEAPON_LIVERY_COLOR
void WEAPON::_SET_PED_WEAPON_LIVERY_COLOR(Ped ped, Hash weaponHash, Hash camoComponentHash, int colorIndex) // 0x9FE5633880ECD8ED b1103
Colors: 0 = Gray 1 = Dark Gray 2 = Black 3 = White 4 = Blue 5 = Cyan 6 = Aqua 7 = Cool Blue 8 = Dark Blue 9 = Royal Blue 10 = Plum 11 = Dark Purple 12 = Purple 13 = Red 14 = Wine Red 15 = Magenta 16 = Pink 17 = Salmon 18 = Hot Pink 19 = Rust Orange 20 = Brown 21 = Earth 22 = Orange 23 = Light Orange 24 = Dark Yellow 25 = Yellow 26 = Light Brown 27 = Lime Green 28 = Olive 29 = Moss 30 = Turquoise 31 = Dark Green
_GET_PED_WEAPON_LIVERY_COLOR
int WEAPON::_GET_PED_WEAPON_LIVERY_COLOR(Ped ped, Hash weaponHash, Hash camoComponentHash) // 0xF0A60040BE558F2D b1103
Returns -1 if camoComponentHash is invalid/not attached to the weapon.
_SET_WEAPON_OBJECT_LIVERY_COLOR
void WEAPON::_SET_WEAPON_OBJECT_LIVERY_COLOR(Object weaponObject, Hash camoComponentHash, int colorIndex) // 0x5DA825A85D0EA6E6 b1103
Colors: 0 = Gray 1 = Dark Gray 2 = Black 3 = White 4 = Blue 5 = Cyan 6 = Aqua 7 = Cool Blue 8 = Dark Blue 9 = Royal Blue 10 = Plum 11 = Dark Purple 12 = Purple 13 = Red 14 = Wine Red 15 = Magenta 16 = Pink 17 = Salmon 18 = Hot Pink 19 = Rust Orange 20 = Brown 21 = Earth 22 = Orange 23 = Light Orange 24 = Dark Yellow 25 = Yellow 26 = Light Brown 27 = Lime Green 28 = Olive 29 = Moss 30 = Turquoise 31 = Dark Green
_GET_WEAPON_OBJECT_LIVERY_COLOR
int WEAPON::_GET_WEAPON_OBJECT_LIVERY_COLOR(Object weaponObject, Hash camoComponentHash) // 0xB3EA4FEABF41464B b1103
Returns -1 if camoComponentHash is invalid/not attached to the weapon object.
_0xA2C9AC24B4061285
int WEAPON::_0xA2C9AC24B4061285(Ped ped, Hash weaponHash) // 0xA2C9AC24B4061285 b1103
GET_PED_WEAPON_*
_0x977CA98939E82E4B
void WEAPON::_0x977CA98939E82E4B(Object weaponObject, int p1) // 0x977CA98939E82E4B b1103
SET_WEAPON_OBJECT_*
GET_WEAPON_HUD_STATS
BOOL WEAPON::GET_WEAPON_HUD_STATS(Hash weaponHash, Any* outData) // 0xD92C739EE34C9EBA 0xA9AD3D98 b323
struct WeaponHudStatsData { BYTE hudDamage; // 0x0000 char _0x0001[0x7]; // 0x0001 BYTE hudSpeed; // 0x0008 char _0x0009[0x7]; // 0x0009 BYTE hudCapacity; // 0x0010 char _0x0011[0x7]; // 0x0011 BYTE hudAccuracy; // 0x0018 char _0x0019[0x7]; // 0x0019 BYTE hudRange; // 0x0020 }; Usage: WeaponHudStatsData data; if (GET_WEAPON_HUD_STATS(weaponHash, (int *)&data)) { // BYTE damagePercentage = data.hudDamage and so on }
GET_WEAPON_COMPONENT_HUD_STATS
BOOL WEAPON::GET_WEAPON_COMPONENT_HUD_STATS(Hash componentHash, int* outData) // 0xB3CAF387AE12E9F8 0xBB5498F4 b323
GET_WEAPON_DAMAGE
float WEAPON::GET_WEAPON_DAMAGE(Hash weaponHash, Hash componentHash) // 0x3133B907D8B32053 0xE81649C0 b323
This native does not return damages of weapons from the melee and explosive group.
GET_WEAPON_CLIP_SIZE
int WEAPON::GET_WEAPON_CLIP_SIZE(Hash weaponHash) // 0x583BE370B1EC6EB4 0x8D515E66 b323
// Returns the size of the default weapon component clip. Use it like this: char cClipSize[32]; Hash cur; if (WEAPON::GET_CURRENT_PED_WEAPON(playerPed, &cur, 1)) { if (WEAPON::IS_WEAPON_VALID(cur)) { int iClipSize = WEAPON::GET_WEAPON_CLIP_SIZE(cur); sprintf_s(cClipSize, "ClipSize: %.d", iClipSize); vDrawString(cClipSize, 0.5f, 0.5f); } }
_GET_WEAPON_TIME_BETWEEN_SHOTS
float WEAPON::_GET_WEAPON_TIME_BETWEEN_SHOTS(Hash weaponHash) // 0x065D2AACAD8CF7A4 b1290
SET_PED_CHANCE_OF_FIRING_BLANKS
void WEAPON::SET_PED_CHANCE_OF_FIRING_BLANKS(Ped ped, float xBias, float yBias) // 0x8378627201D5497D 0xB4F44C6E b323
SET_PED_SHOOT_ORDNANCE_WEAPON
Object WEAPON::SET_PED_SHOOT_ORDNANCE_WEAPON(Ped ped, float p1) // 0xB4C8D77C80C0421E 0xEC2E5304 b323
Returns handle of the projectile.
REQUEST_WEAPON_HIGH_DETAIL_MODEL
void WEAPON::REQUEST_WEAPON_HIGH_DETAIL_MODEL(Entity weaponObject) // 0x48164DBB970AC3F0 0xE3BD00F9 b323
_SET_WEAPON_DAMAGE_MODIFIER_THIS_FRAME
void WEAPON::_SET_WEAPON_DAMAGE_MODIFIER_THIS_FRAME(Hash weaponHash, float damageMultiplier) // 0x4757F00BC6323CFE b505
Changes the weapon damage output by the given multiplier value. Must be run every frame.
IS_PED_CURRENT_WEAPON_SILENCED
BOOL WEAPON::IS_PED_CURRENT_WEAPON_SILENCED(Ped ped) // 0x65F0C5AE05943EC7 0xBAF7BFBE b323
This native returns a true or false value. Ped ped = The ped whose weapon you want to check.
IS_FLASH_LIGHT_ON
BOOL WEAPON::IS_FLASH_LIGHT_ON(Ped ped) // 0x4B7620C47217126C 0x76876154 b323
SET_FLASH_LIGHT_FADE_DISTANCE
Any WEAPON::SET_FLASH_LIGHT_FADE_DISTANCE(float distance) // 0xCEA66DAD478CD39B 0xB0127EA7 b323
_SET_FLASH_LIGHT_ENABLED
void WEAPON::_SET_FLASH_LIGHT_ENABLED(Ped ped, BOOL toggle) // 0x988DB6FE9B3AC000 b2060
Enables/disables flashlight on ped's weapon.
SET_WEAPON_ANIMATION_OVERRIDE
void WEAPON::SET_WEAPON_ANIMATION_OVERRIDE(Ped ped, Hash animStyle) // 0x1055AC3A667F09D9 0xA5DF7484 b323
Changes the selected ped aiming animation style. Note : You must use GET_HASH_KEY! Strings to use with GET_HASH_KEY : "Ballistic", "Default", "Fat", "Female", "FirstPerson", "FirstPersonAiming", "FirstPersonFranklin", "FirstPersonFranklinAiming", "FirstPersonFranklinRNG", "FirstPersonFranklinScope", "FirstPersonMPFemale", "FirstPersonMichael", "FirstPersonMichaelAiming", "FirstPersonMichaelRNG", "FirstPersonMichaelScope", "FirstPersonRNG", "FirstPersonScope", "FirstPersonTrevor", "FirstPersonTrevorAiming", "FirstPersonTrevorRNG", "FirstPersonTrevorScope", "Franklin", "Gang", "Gang1H", "GangFemale", "Hillbilly", "MP_F_Freemode", "Michael", "SuperFat", "Trevor"
GET_WEAPON_DAMAGE_TYPE
int WEAPON::GET_WEAPON_DAMAGE_TYPE(Hash weaponHash) // 0x3BE0BB12D25FB305 0x013AFC13 b323
0=unknown (or incorrect weaponHash) 1= no damage (flare,snowball, petrolcan) 2=melee 3=bullet 4=force ragdoll fall 5=explosive (RPG, Railgun, grenade) 6=fire(molotov) 8=fall(WEAPON_HELI_CRASH) 10=electric 11=barbed wire 12=extinguisher 13=gas 14=water cannon(WEAPON_HIT_BY_WATER_CANNON)
_0xE4DCEC7FD5B739A5
void WEAPON::_0xE4DCEC7FD5B739A5(Ped ped) // 0xE4DCEC7FD5B739A5 0x64646F1D b323
CAN_USE_WEAPON_ON_PARACHUTE
BOOL WEAPON::CAN_USE_WEAPON_ON_PARACHUTE(Hash weaponHash) // 0xBC7BE5ABC0879F74 0x135E7AD4 b323
this returns if you can use the weapon while using a parachute
_CREATE_AIR_DEFENSE_SPHERE
int WEAPON::_CREATE_AIR_DEFENSE_SPHERE(float x, float y, float z, float radius, float p4, float p5, float p6, Hash weaponHash) // 0x91EF34584710BE99 b573
Both coordinates are from objects in the decompiled scripts. Native related to 0xECDC202B25E5CF48 p1 value. The only weapon hash used in the decompiled scripts is weapon_air_defence_gun. These two natives are used by the yacht script, decompiled scripts suggest it and the weapon hash used (valkyrie's rockets) are also used by yachts.
_CREATE_AIR_DEFENSE_AREA
int WEAPON::_CREATE_AIR_DEFENSE_AREA(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7, float p8, float p9, Hash weaponHash) // 0x9DA58CDBF6BDBC08 b1011
_REMOVE_AIR_DEFENSE_ZONE
BOOL WEAPON::_REMOVE_AIR_DEFENSE_ZONE(int zoneId) // 0x0ABF535877897560 b573
_REMOVE_ALL_AIR_DEFENSE_ZONES
void WEAPON::_REMOVE_ALL_AIR_DEFENSE_ZONES() // 0x1E45B34ADEBEE48E b573
_SET_PLAYER_AIR_DEFENSE_ZONE_FLAG
void WEAPON::_SET_PLAYER_AIR_DEFENSE_ZONE_FLAG(Player player, int zoneId, BOOL enable) // 0xECDC202B25E5CF48 b573
_IS_ANY_AIR_DEFENSE_ZONE_INSIDE_SPHERE
BOOL WEAPON::_IS_ANY_AIR_DEFENSE_ZONE_INSIDE_SPHERE(float x, float y, float z, float radius, int* outZoneId) // 0xDAB963831DBFD3F4 b1103
_FIRE_AIR_DEFENSE_WEAPON
void WEAPON::_FIRE_AIR_DEFENSE_WEAPON(int zoneId, float x, float y, float z) // 0x44F1012B69313374 b573
_DOES_AIR_DEFENSE_ZONE_EXIST
BOOL WEAPON::_DOES_AIR_DEFENSE_ZONE_EXIST(int zoneId) // 0xCD79A550999D7D4F b678
_SET_CAN_PED_EQUIP_WEAPON
void WEAPON::_SET_CAN_PED_EQUIP_WEAPON(Ped ped, Hash weaponHash, BOOL toggle) // 0xB4771B9AAF4E68E4 b1103
Disables selecting the given weapon. Ped isn't forced to put the gun away. However you can't reselect the weapon if you holster then unholster. Weapon is also grayed out on the weapon wheel.
_SET_CAN_PED_EQUIP_ALL_WEAPONS
void WEAPON::_SET_CAN_PED_EQUIP_ALL_WEAPONS(Ped ped, BOOL toggle) // 0xEFF296097FF1E509 b1103
Disable all weapons. Does the same as 0xB4771B9AAF4E68E4 except for all weapons.
ZONE
GET_ZONE_AT_COORDS
int ZONE::GET_ZONE_AT_COORDS(float x, float y, float z) // 0x27040C25DE6CB2F4 0xC9018181 b323
GET_ZONE_FROM_NAME_ID
int ZONE::GET_ZONE_FROM_NAME_ID(const char* zoneName) // 0x98CD1D2934B76CC1 0x8EC68304 b323
'zoneName' corresponds to an entry in 'popzone.ipl'. AIRP = Los Santos International Airport ALAMO = Alamo Sea ALTA = Alta ARMYB = Fort Zancudo BANHAMC = Banham Canyon Dr BANNING = Banning BEACH = Vespucci Beach BHAMCA = Banham Canyon BRADP = Braddock Pass BRADT = Braddock Tunnel BURTON = Burton CALAFB = Calafia Bridge CANNY = Raton Canyon CCREAK = Cassidy Creek CHAMH = Chamberlain Hills CHIL = Vinewood Hills CHU = Chumash CMSW = Chiliad Mountain State Wilderness CYPRE = Cypress Flats DAVIS = Davis DELBE = Del Perro Beach DELPE = Del Perro DELSOL = La Puerta DESRT = Grand Senora Desert DOWNT = Downtown DTVINE = Downtown Vinewood EAST_V = East Vinewood EBURO = El Burro Heights ELGORL = El Gordo Lighthouse ELYSIAN = Elysian Island GALFISH = Galilee GOLF = GWC and Golfing Society GRAPES = Grapeseed GREATC = Great Chaparral HARMO = Harmony HAWICK = Hawick HORS = Vinewood Racetrack HUMLAB = Humane Labs and Research JAIL = Bolingbroke Penitentiary KOREAT = Little Seoul LACT = Land Act Reservoir LAGO = Lago Zancudo LDAM = Land Act Dam LEGSQU = Legion Square LMESA = La Mesa LOSPUER = La Puerta MIRR = Mirror Park MORN = Morningwood MOVIE = Richards Majestic MTCHIL = Mount Chiliad MTGORDO = Mount Gordo MTJOSE = Mount Josiah MURRI = Murrieta Heights NCHU = North Chumash NOOSE = N.O.O.S.E OCEANA = Pacific Ocean PALCOV = Paleto Cove PALETO = Paleto Bay PALFOR = Paleto Forest PALHIGH = Palomino Highlands PALMPOW = Palmer-Taylor Power Station PBLUFF = Pacific Bluffs PBOX = Pillbox Hill PROCOB = Procopio Beach RANCHO = Rancho RGLEN = Richman Glen RICHM = Richman ROCKF = Rockford Hills RTRAK = Redwood Lights Track SANAND = San Andreas SANCHIA = San Chianski Mountain Range SANDY = Sandy Shores SKID = Mission Row SLAB = Stab City STAD = Maze Bank Arena STRAW = Strawberry TATAMO = Tataviam Mountains TERMINA = Terminal TEXTI = Textile City TONGVAH = Tongva Hills TONGVAV = Tongva Valley VCANA = Vespucci Canals VESP = Vespucci VINE = Vinewood WINDF = Ron Alternates Wind Farm WVINE = West Vinewood ZANCUDO = Zancudo River ZP_ORT = Port of South Los Santos ZQ_UAR = Davis Quartz Full list of zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/zones.json
GET_ZONE_POPSCHEDULE
int ZONE::GET_ZONE_POPSCHEDULE(int zoneId) // 0x4334BC40AA0CB4BB 0x20AB2FC9 b323
GET_NAME_OF_ZONE
const char* ZONE::GET_NAME_OF_ZONE(float x, float y, float z) // 0xCD90657D4C30E1CA 0x7875CE91 b323
AIRP = Los Santos International Airport ALAMO = Alamo Sea ALTA = Alta ARMYB = Fort Zancudo BANHAMC = Banham Canyon Dr BANNING = Banning BEACH = Vespucci Beach BHAMCA = Banham Canyon BRADP = Braddock Pass BRADT = Braddock Tunnel BURTON = Burton CALAFB = Calafia Bridge CANNY = Raton Canyon CCREAK = Cassidy Creek CHAMH = Chamberlain Hills CHIL = Vinewood Hills CHU = Chumash CMSW = Chiliad Mountain State Wilderness CYPRE = Cypress Flats DAVIS = Davis DELBE = Del Perro Beach DELPE = Del Perro DELSOL = La Puerta DESRT = Grand Senora Desert DOWNT = Downtown DTVINE = Downtown Vinewood EAST_V = East Vinewood EBURO = El Burro Heights ELGORL = El Gordo Lighthouse ELYSIAN = Elysian Island GALFISH = Galilee GOLF = GWC and Golfing Society GRAPES = Grapeseed GREATC = Great Chaparral HARMO = Harmony HAWICK = Hawick HORS = Vinewood Racetrack HUMLAB = Humane Labs and Research JAIL = Bolingbroke Penitentiary KOREAT = Little Seoul LACT = Land Act Reservoir LAGO = Lago Zancudo LDAM = Land Act Dam LEGSQU = Legion Square LMESA = La Mesa LOSPUER = La Puerta MIRR = Mirror Park MORN = Morningwood MOVIE = Richards Majestic MTCHIL = Mount Chiliad MTGORDO = Mount Gordo MTJOSE = Mount Josiah MURRI = Murrieta Heights NCHU = North Chumash NOOSE = N.O.O.S.E OCEANA = Pacific Ocean PALCOV = Paleto Cove PALETO = Paleto Bay PALFOR = Paleto Forest PALHIGH = Palomino Highlands PALMPOW = Palmer-Taylor Power Station PBLUFF = Pacific Bluffs PBOX = Pillbox Hill PROCOB = Procopio Beach RANCHO = Rancho RGLEN = Richman Glen RICHM = Richman ROCKF = Rockford Hills RTRAK = Redwood Lights Track SANAND = San Andreas SANCHIA = San Chianski Mountain Range SANDY = Sandy Shores SKID = Mission Row SLAB = Stab City STAD = Maze Bank Arena STRAW = Strawberry TATAMO = Tataviam Mountains TERMINA = Terminal TEXTI = Textile City TONGVAH = Tongva Hills TONGVAV = Tongva Valley VCANA = Vespucci Canals VESP = Vespucci VINE = Vinewood WINDF = Ron Alternates Wind Farm WVINE = West Vinewood ZANCUDO = Zancudo River ZP_ORT = Port of South Los Santos ZQ_UAR = Davis Quartz Full list of zones by DurtyFree: https://github.com/DurtyFree/gta-v-data-dumps/blob/master/zones.json
SET_ZONE_ENABLED
void ZONE::SET_ZONE_ENABLED(int zoneId, BOOL toggle) // 0xBA5ECEEA120E5611 0x04E21B03 b323
GET_ZONE_SCUMMINESS
int ZONE::GET_ZONE_SCUMMINESS(int zoneId) // 0x5F7B268D15BA0739 0xB2FB5C4C b323
cellphone range 1- 5 used for signal bar in iFruit phone
OVERRIDE_POPSCHEDULE_VEHICLE_MODEL
void ZONE::OVERRIDE_POPSCHEDULE_VEHICLE_MODEL(int scheduleId, Hash vehicleHash) // 0x5F7D596BAC2E7777 0x3F0A3680 b323
Only used once in the decompiled scripts. Seems to be related to scripted vehicle generators. Modified example from "am_imp_exp.c4", line 6406: /* popSchedules[0] = ZONE::GET_ZONE_POPSCHEDULE(ZONE::GET_ZONE_AT_COORDS(891.3, 807.9, 188.1)); etc. */ ZONE::OVERRIDE_POPSCHEDULE_VEHICLE_MODEL(popSchedules[index], vehicleHash); STREAMING::REQUEST_MODEL(vehicleHash);
CLEAR_POPSCHEDULE_OVERRIDE_VEHICLE_MODEL
void ZONE::CLEAR_POPSCHEDULE_OVERRIDE_VEHICLE_MODEL(int scheduleId) // 0x5C0DE367AA0D911C 0x7A72A24E b323
Only used once in the decompiled scripts. Seems to be related to scripted vehicle generators. Modified example from "am_imp_exp.c4", line 6418: /* popSchedules[0] = ZONE::GET_ZONE_POPSCHEDULE(ZONE::GET_ZONE_AT_COORDS(891.3, 807.9, 188.1)); etc. */ STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(vehicleHash); ZONE::CLEAR_POPSCHEDULE_OVERRIDE_VEHICLE_MODEL(popSchedules[index]);
GET_HASH_OF_MAP_AREA_AT_COORDS
Hash ZONE::GET_HASH_OF_MAP_AREA_AT_COORDS(float x, float y, float z) // 0x7EE64D51E8498728 0xB5C5C99B b323
Returns a hash representing which part of the map the given coords are located. Possible return values: (Hash of) city -> -289320599 (Hash of) countryside -> 2072609373 C# Example : Ped player = Game.Player.Character; Hash h = Function.Call<Hash>(Hash.GET_HASH_OF_MAP_AREA_AT_COORDS, player.Position.X, player.Position.Y, player.Position.Z);
This page is public domain
This page was generated from alloc8or's NativeDB. alloc8or's NativeDB is a “fork” of Alexander Blade's Native DB. Much of the documentation of the functions was done by people in the community.
gtav/natives.txt · Last modified: 2022/02/01 23:18 by jitnaught