Generated 13 Jun 2019
  • void _0x36F1B38855F2A8DF(Player player) // 36F1B38855F2A8DF 3A7E5FB6
  • void _0xDC64D2C53493ED12(Player player) // DC64D2C53493ED12 D15C4B1C
    Has something to do with police.
  • void _0xB45EFF719D8427A6(float p0) // B45EFF719D8427A6 BF6993C7
    PLAYER::0xBF6993C7(rPtr((&l_122) + 71)); // Found in decompilation


    In "am_hold_up.ysc" used once:

    l_8d._f47 = GAMEPLAY::GET_RANDOM_FLOAT_IN_RANGE(18.0, 28.0);
  • void _0x0032A6DBA562C518() // 0032A6DBA562C518 47CAB814
    2 matches in 1 script - am_hold_up

    Used in multiplayer scripts?
  • BOOL CAN_PLAYER_START_MISSION(Player player) // DE7465A27D403C06 39E3CB3F
  • BOOL IS_PLAYER_TARGETTING_ENTITY(Player player, Entity entity) // 7912F7FC4F6264B6 F3240B77
  • BOOL GET_PLAYER_TARGET_ENTITY(Player player, Entity *entity) // 13EDE1A5DBF797C9 F6AAA2D7
    Assigns the handle of locked-on melee target to *entity that you pass it.
    Returns false if no entity found.
  • BOOL IS_PLAYER_FREE_AIMING(Player player) // 2E397FD2ECD37C87 1DEC67B7
    Gets a value indicating whether the specified player is currently aiming freely.
  • BOOL IS_PLAYER_FREE_AIMING_AT_ENTITY(Player player, Entity entity) // 3C06B5C839B38F7B 7D80EEAA
    Gets a value indicating whether the specified player is currently aiming freely at the specified entity.
  • BOOL GET_ENTITY_PLAYER_IS_FREE_AIMING_AT(Player player, Entity *entity) // 2975C866E6713290 8866D9D0
    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.
  • void SET_PLAYER_LOCKON_RANGE_OVERRIDE(Player player, float range) // 29961D490E5814FD 74D42C03
    Affects the range of auto aim target.
  • void SET_PLAYER_CAN_DO_DRIVE_BY(Player player, BOOL toggle) // 6E8834B52EC20C77 F4D99685
    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."
  • void SET_PLAYER_CAN_BE_HASSLED_BY_GANGS(Player player, BOOL toggle) // D5E460AD7020A246 71B305BB
    Sets whether this player can be hassled by gangs.
  • void SET_PLAYER_CAN_USE_COVER(Player player, BOOL toggle) // D465A8599DFF6814 13CAFAFA
    Sets whether this player can take cover.
  • int GET_MAX_WANTED_LEVEL() // 462E0DB9B137DC5F 457F1E44
    Gets the maximum wanted level the player can get.
    Ranges from 0 to 5.
  • BOOL IS_PLAYER_TARGETTING_ANYTHING(Player player) // 78CFE51896B6B8A4 456DB50D
  • void SET_PLAYER_SPRINT(Player player, BOOL toggle) // A01B8075D8B92DF4 7DD7900C
  • void RESET_PLAYER_STAMINA(Player player) // A6F312FCCE9C1DFE C0445A9C
  • void RESTORE_PLAYER_STAMINA(Player player, float p1) // A352C1B864CAFD33 62A93608
  • float GET_PLAYER_SPRINT_STAMINA_REMAINING(Player player) // 3F9F16F8E65A7ED7 47017C90
  • float GET_PLAYER_SPRINT_TIME_REMAINING(Player player) // 1885BC9B108B4C99 40E80543
  • float GET_PLAYER_UNDERWATER_TIME_REMAINING(Player player) // A1FCF8E6AF40B731 1317125A
  • int GET_PLAYER_GROUP(Player player) // 0D127585F77030AF A5EDCDE8
    Returns the group ID the player is member of.
  • int GET_PLAYER_MAX_ARMOUR(Player player) // 92659B4CE1863CB3 02A50657
  • BOOL IS_PLAYER_CONTROL_ON(Player player) // 49C32D60007AFA47 618857F2
    Can the player control him-/herself, used to disable controls for player for things like a cutscene.


    You can't disable controls with this, use SET_PLAYER_CONTROL(...) for this.
    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.
  • BOOL IS_PLAYER_SCRIPT_CONTROL_ON(Player player) // 8A876A65283DD7D7 61B00A84
  • BOOL IS_PLAYER_CLIMBING(Player player) // 95E8F73DC65EFB9C 4A9E9AE0
    Returns TRUE if the player ('s ped) is climbing at the moment.
  • BOOL IS_PLAYER_BEING_ARRESTED(Player player, BOOL atArresting) // 388A47C51ABDAC8E 7F6A60D3
    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.

    NOTE: if your player model is black this boolean will always return true!
  • void RESET_PLAYER_ARREST_STATE(Player player) // 2D03E13C460760D6 453C7CAB
  • Vehicle GET_PLAYERS_LAST_VEHICLE() // B6997A7EB3F5C8C0 E2757AC1
    Alternative: GET_VEHICLE_PED_IS_IN(PLAYER_PED_ID(), 1);
  • Player GET_PLAYER_INDEX() // A5EDC40EF369B48D 309BBDC1
    Returns the same as PLAYER_ID and NETWORK_PLAYER_ID_TO_INT
  • Player INT_TO_PLAYERINDEX(int value) // 41BD2A6B006AF756 98DD98F1
    Simply returns whatever is passed to it (Regardless of whether the handle is valid or not).
  • int INT_TO_PARTICIPANTINDEX(Player value) // 9EC6603812C24710 98F3B274
    Simply returns whatever is passed to it (Regardless of whether the handle is valid or not).
  • int GET_TIME_SINCE_PLAYER_HIT_VEHICLE(Player player) // 5D35ECF3A81A0EE0 6E9B8B9E
  • int GET_TIME_SINCE_PLAYER_HIT_PED(Player player) // E36A25322DC35F42 B6209195
  • int GET_TIME_SINCE_PLAYER_DROVE_ON_PAVEMENT(Player player) // D559D2BE9E37853B 8836E732
  • int GET_TIME_SINCE_PLAYER_DROVE_AGAINST_TRAFFIC(Player player) // DB89591E290D9182 9F27D00E
  • Player IS_PLAYER_FREE_FOR_AMBIENT_TASK(Player player) // DCCFD3F106C36AB4 85C7E232
  • Player PLAYER_ID() // 4F8644AF03D0E0D6 8AEA886C
    This returns YOUR 'identity' as a Player type.

    Always returns 0 in story mode.
  • Ped PLAYER_PED_ID() // D80958FC74E988A6 FA92E226
    Returns current player ped
  • int NETWORK_PLAYER_ID_TO_INT() // EE68096F9F37341E 8DD5B838
    Does exactly the same thing as PLAYER_ID()
  • BOOL HAS_FORCE_CLEANUP_OCCURRED(int cleanupFlags) // C968670BFACE42D9 4B37333C
  • void FORCE_CLEANUP(int cleanupFlags) // BC8983F38F78ED51 FDAAEA2B
    used with 1,2,8,64,128 in the scripts
  • void FORCE_CLEANUP_FOR_ALL_THREADS_WITH_THIS_NAME(char *name, int cleanupFlags) // 4C68DDDDF0097317 04256C73
    PLAYER::FORCE_CLEANUP_FOR_ALL_THREADS_WITH_THIS_NAME("pb_prostitute", 1); // Found in decompilation
  • void FORCE_CLEANUP_FOR_THREAD_WITH_THIS_ID(int id, int cleanupFlags) // F745B37630DF176B 882D3EB3
  • Vehicle *GET_CAUSE_OF_MOST_RECENT_FORCE_CLEANUP() // 9A41CF4674A12272 39AA9FC8
  • void SET_PLAYER_MAY_ONLY_ENTER_THIS_VEHICLE(Player player, Vehicle vehicle) // 8026FF78F208978A A454DD29
  • int GIVE_ACHIEVEMENT_TO_PLAYER(int achievement) // BEC7076D64130195 822BC992
    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.
    This seems to be related to Steam achievements.

    p0 and p1 are int (?)


    Can't say anything ab0U0UPUUUPU@PUnderscore (1/6/18):
    This has to do with achievement progression. If this achievement has progression, it will set the progression of it to this value.
    Only tested on un-achieved achievements, Steamworks probably just rejects it if it has already been achieved.
    Steamworks also seems to not like reversing achievement progression.
  • int _GET_ACHIEVEMENT_PROGRESSION(int achId) // 1C186837D0619335
    p0 = int (?)

    Dr. Underscore (1/6/18):
    This gets the progression of an achievement. Returns 0 if the achievement cannot be progressed.
  • BOOL HAS_ACHIEVEMENT_BEEN_PASSED(int achievement) // 867365E111A3B6EB 136A5BE9
  • BOOL IS_PLAYER_ONLINE() // F25D331DC2627BBC 9FAB6729
    Returns TRUE if the game is in online mode and FALSE if in offline mode.

    This is an alias for NETWORK_IS_SIGNED_ONLINE.
  • BOOL IS_PLAYER_LOGGING_IN_NP() // 74556E1420867ECA 8F72FAD0
    this function is hard-coded to always return 0.
  • void DISPLAY_SYSTEM_SIGNIN_UI(BOOL unk) // 94DD7888C10A979E 4264CED2
    Purpose of the BOOL currently unknown.
    Both, true and false, work
  • void SET_PLAYER_INVINCIBLE(Player player, BOOL toggle) // 239528EACDC3E7DE DFB9A2A2
    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);
  • BOOL GET_PLAYER_INVINCIBLE(Player player) // B721981B2B939E07 680C90EE
    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;

    This has bothered me for too long, whoever may come across this, where did anyone ever come up with this made up hash? 0x733A643B5B0C53C1 I've looked all over old hash list, and this nativedb I can not find that PC hash anywhere. What native name is it now or was it?
  • void _0xCAC57395B151135F(Player player, BOOL p1) // CAC57395B151135F 00563E0D
    Found in "director_mode", "fm_bj_race_controler", "fm_deathmatch_controler", "fm_impromptu_dm_controler", "fm_race_controler", "gb_deathmatch".
  • void REMOVE_PLAYER_HELMET(Player player, BOOL p2) // F3AC26D3CC576528 6255F3B4
    Removes the player's helmet. Works on all helmets as far as I can tell.

    p2- Simple true/false on if to remove the helmet

  • void GIVE_PLAYER_RAGDOLL_CONTROL(Player player, BOOL toggle) // 3C49C870E66F0A28 C7B4D7AC
  • void SET_PLAYER_LOCKON(Player player, BOOL toggle) // 5C8B2F450EE4328E 0B270E0F
    Example from fm_mission_controler.ysc.c4:


    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.
  • void SET_PLAYER_TARGETING_MODE(int targetMode) // B1906895227793F3 61CAE253
    Sets your targeting mode.
    0 = Traditional GTA
    1 = Assisted Aiming
    2 = Free Aim

    Even tho gtaforums nor Alexander B supports this, if you're online in freemode already it's nice to have this since retail or otherwise you have to go to SP to change it.
  • void _0x5702B917B99DB1CD(int p0) // 5702B917B99DB1CD
    Jenkins hash: 0x772DA539

    p0 looks like Player or int (found in "am_pi_menu")

    Dr. Underscore (1/6/18):
    It isn't Player, it is an int.
    Only two references anywhere, both in am_pi_menu.
    One uses globals, the other one uses a helper function that is passing in the outValue of "STATS::STAT_GET_INT"; I have no clue what is being passed in for the stat hash.
  • BOOL _0xB9CF1F793A9F1BF1() // B9CF1F793A9F1BF1
    Seem to return bool

    Dr. Underscore (1/6/18):
    It does return bool.
  • BOOL HAS_PLAYER_DAMAGED_AT_LEAST_ONE_PED(Player player) // 20CE80B0C2BF4ACC 14F52453
  • void SET_AIR_DRAG_MULTIPLIER_FOR_PLAYERS_VEHICLE(Player player, float multiplier) // CA7DC8329F0A1E9E F20F72E5
    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.

    On PC the multiplier can be between 0.0f and 50.0f (inclusive).

  • void SET_SWIM_MULTIPLIER_FOR_PLAYER(Ped player, float multiplier) // A91C6F0FF7D16A13 B986FF47
    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.
  • void SET_RUN_SPRINT_MULTIPLIER_FOR_PLAYER(Player player, float multiplier) // 6DB47AA77FD94E09 825423C2
    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.

    It is not possible to "decrease" speed. Anything below 1 will be ignored.
  • int GET_TIME_SINCE_LAST_ARREST() // 5063F92F07C2A316 62824EF4
    Returns the time since the character was arrested in (ms) milliseconds.


    var time =<int>(Hash.GET_TIME_SINCE_LAST_ARREST();


    if player has not been arrested, the int returned will be -1.
  • int GET_TIME_SINCE_LAST_DEATH() // C7034807558DDFCA 24BC5AC0
    Returns the time since the character died in (ms) milliseconds.


    var time =<int>(Hash.GET_TIME_SINCE_LAST_DEATH();


    if player has not died, the int returned will be -1.
  • void SET_PLAYER_FORCED_AIM(Player player, BOOL toggle) // 0FEE4F80AC44A726 94E42E2E
  • void SET_PLAYER_FORCED_ZOOM(Player player, BOOL toggle) // 75E7D505F2B15902 B0C576CB
  • void SET_PLAYER_FORCE_SKIP_AIM_INTRO(Player player, BOOL toggle) // 7651BC64AE59E128 374F42F0
  • void DISABLE_PLAYER_FIRING(Player player, BOOL toggle) // 5E6CC07646BBEAB8 30CB28CB
    Inhibits the player from using any method of combat including melee and firearms.

    NOTE: Only disables the firing for one frame
  • void _0xB885852C39CC265D() // B885852C39CC265D
    Old Gen: 0x47D6004E

    Disables something. Used only once in R* scripts (freemode.ysc).

    Sets a ped flag in cped

  • void SET_DISABLE_AMBIENT_MELEE_MOVE(Player player, BOOL toggle) // 2E8AABFA40A84F8C CCD937E7
  • void SET_PLAYER_MAX_ARMOUR(Player player, int value) // 77DFCCF5948B8C71 C6C3C53B
    Default is 100. Use player id and not ped id. For instance: PLAYER::SET_PLAYER_MAX_ARMOUR(PLAYER::PLAYER_ID(), 100); // main_persistent.ct4
  • void SPECIAL_ABILITY_DEACTIVATE(Player player) // D6A953C6D1492057 80C2AB09
    If the special ability is on turn it off. Why are you reading this, it's simple.
  • void SPECIAL_ABILITY_DEACTIVATE_FAST(Player player) // 9CB5CE07A3968D5A 0751908A
  • void SPECIAL_ABILITY_RESET(Player player) // 375F0E738F861A94 A7D8BCD3
  • void _0xC9A763D8FE87436A(Player player) // C9A763D8FE87436A 4136829A
  • void SPECIAL_ABILITY_CHARGE_SMALL(Player player, BOOL p1, BOOL p2) // 2E7B9B683481687D 6F463F56
    Every occurrence of p1 & p2 were both true.
  • void SPECIAL_ABILITY_CHARGE_MEDIUM(Player player, Vehicle p1, Vehicle p2) // F113E3AA9BC54613 AB55D8F3
    Only 1 match. Both p1 & p2 were true.
  • void SPECIAL_ABILITY_CHARGE_LARGE(Player player, int p1, Hash p2) // F733F45FA4497D93 F440C04D0U0UPUUUPU@PU"fntype">void SPECIAL_ABILITY_CHARGE_CONTINUOUS(Player player, Ped p2) // ED481732DFF7E997 5FEE98A2
    p1 appears to always be 1 (only comes up twice)
  • void SPECIAL_ABILITY_CHARGE_ABSOLUTE(Player player, int p1, BOOL p2) // B7B0870EB531D08D 72429998
    p1 appears as 5, 10, 15, 25, or 30. p2 is always true.
  • void SPECIAL_ABILITY_CHARGE_NORMALIZED(Player player, float normalizedValue, BOOL p2) // A0696A65F009EE18 8C7E68C1

    normalizedValue is from 0.0 - 1.0
    p2 is always 1
  • void SPECIAL_ABILITY_FILL_METER(Player player, BOOL p1) // 3DACA8DDC6FD4980 B71589DA
  • void SPECIAL_ABILITY_DEPLETE_METER(Player player, BOOL p1) // 1D506DBBBC51E64B 9F80F6DF
    p1 was always true.
  • void SPECIAL_ABILITY_LOCK(Hash playerModel) // 6A09D0D590A47D13 1B7BB388
  • void SPECIAL_ABILITY_UNLOCK(Hash playerModel) // F145F3BE2EFA9A3B 1FDB2919
  • BOOL IS_SPECIAL_ABILITY_UNLOCKED(Hash playerModel) // C6017F6A6CDFA694 C9C75E82
  • BOOL IS_SPECIAL_ABILITY_ACTIVE(Ped player) // 3E5F7FC85D854E15 1B17E334
  • BOOL IS_SPECIAL_ABILITY_METER_FULL(Player player) // 05A1FE504B7F2587 2E19D7F6
  • void ENABLE_SPECIAL_ABILITY(Player *player, BOOL toggle) // 181EC197DAEFE121 C86C1B4E
  • void SET_SPECIAL_ABILITY_MULTIPLIER(float multiplier) // A49C426ED0CA4AB7 FF1BC556
  • void _0xFFEE8FA29AB9A18E(Player player) // FFEE8FA29AB9A18E 5D0FE25B
  • BOOL _0x5FC472C501CCADB3(Player player) // 5FC472C501CCADB3 46E7E31D
    Appears once in "re_dealgonewrong"
  • BOOL _0xF10B44FD479D69F3(Player player, int p1) // F10B44FD479D69F3 1E359CC8
    Only 1 occurrence. p1 was 2.
  • BOOL _IS_PLAYER_WITHIN_TEST_CAPSULE(Player player, float p1) // DD2620B7B9D16FF1 8CB53C9F
    2 occurrences in agency_heist3a. p1 was 0.7f then 0.4f.
  • void START_PLAYER_TELEPORT(Player player, float x, float y, float z, float heading, Any keepVehicle, Any keepVelocity, Any p7) // AD15F075A4DA0FDE C552E06C
  • BOOL _HAS_PLAYER_TELEPORT_FINISHED(Player player) // E23D5873C2394C61
  • void STOP_PLAYER_TELEPORT() // C449EDED9D73009C 86AB8DBB
    Disables the player's teleportation
  • BOOL IS_PLAYER_TELEPORT_ACTIVE() // 02B15662D7F8886F 3A11D118
  • float GET_PLAYER_CURRENT_STEALTH_NOISE(Player player) // 2F395D61F3A1F877 C3B02362
  • void SET_PLAYER_HEALTH_RECHARGE_MULTIPLIER(Player player, float regenRate) // 5DB660B38DD98A31 45514731
  • void SET_PLAYER_WEAPON_DAMAGE_MODIFIER(Player player, Pickup *damageAmount) // CE07B9F7817AADA3 B02C2F39
    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.
  • void SET_PLAYER_WEAPON_DEFENSE_MODIFIER(Player player, float modifier) // 2D83BC011CA14A3C AE446344
  • void SET_PLAYER_MELEE_WEAPON_DAMAGE_MODIFIER(Player player, float modifier) // 4A3DC7ECCC321032 362E69AD
  • void SET_PLAYER_MELEE_WEAPON_DEFENSE_MODIFIER(Player player, float modifier) // AE540335B4ABC4E2 9F3D577F
  • void SET_PLAYER_VEHICLE_DAMAGE_MODIFIER(Player player, float damageAmount) // A50E117CDDF82F0C 823ECA63
  • void SET_PLAYER_VEHICLE_DEFENSE_MODIFIER(Player player, float modifier) // 4C60E6EFDAFF2462 A16626C7
  • void SET_PLAYER_PARACHUTE_TINT_INDEX(Ped ped, Vehicle *vehicleindex) // A3D0E54541D9A5E5 8EA12EDB
    None = -1,
    Rainbow = 0,
    Red = 1,
    SeasideStripes = 2,
    WidowMaker = 3,
    Patriot = 4,
    Blue = 5,
    Black = 6,
    Hornet = 7,
    AirFocce = 8,
    Desert = 9,
    Shadow = 0,
    HighAltitude = 1,
    Airbone = 0,
    Sunrise = 0,
  • void GET_PLAYER_PARACHUTE_TINT_INDEX(Player Player, int *tintIndex) // 75D3F7A1B0D9B145 432B0509
    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,
  • void SET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX(Player player, int index) // AF04C87F5DC1DF38 70689638
    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,
  • void GET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX(Player player, int *index) // D5A016BC3C09CF40 77B8EF01
    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,
  • void SET_PLAYER_PARACHUTE_PACK_TINT_INDEX(Player player, int tintIndex) // 93B0FB27C9A04060 D79D5D1B
    tints 0- 13
    0 - unkown
    1 - unkown
    2 - unkown
    3 - unkown
    4 - unkown
  • void GET_PLAYER_PARACHUTE_PACK_TINT_INDEX(Player player, int *tintIndex) // 6E9C742F340CE5A2 4E418E13
  • void SET_PLAYER_HAS_RESERVE_PARACHUTE(Player player) // 7DDAB28D31FAC363 A3E4798E
  • void SET_PLAYER_CAN_LEAVE_PARACHUTE_SMOKE_TRAIL(Player player, BOOL enabled) // F401B182DBA8AF53 832DEB7A
  • void SET_PLAYER_PARACHUTE_SMOKE_TRAIL_COLOR(Player player, int r, int g, int b) // 8217FD371A4625CF 14FE9264
  • void GET_PLAYER_PARACHUTE_SMOKE_TRAIL_COLOR(Player player, int *r, int *g, int *b) // EF56DBABD3CD4887 F66E5CDD
  • void SET_PLAYER_RESET_FLAG_PREFER_REAR_SEATS(Player player, int flags) // 11D5F725F0E780E0 725C6174

    flags: 0-6


    wouldnt the flag be the seatIndex?

    this native is a hash collision and whoever actually put it in should fking neck themselves back to fivem

    it changes the phone color, stupid fking china interns dont ever generate hashes ever again
  • void SET_PLAYER_NOISE_MULTIPLIER(Player player, float multiplier) // DB89EF50FF25FCE9 15786DD1
  • void SET_PLAYER_SNEAKING_NOISE_MULTIPLIER(Player player, float multiplier) // B2C1A29588A9F47C 8D2D89C4
    Values around 1.0f to 2.0f used in game scripts.
  • BOOL CAN_PED_HEAR_PLAYER(Player player, Ped ped) // F297383AA91DCA29 1C70B2EB
  • void SIMULATE_PLAYER_INPUT_GAIT(Player control, float amount, int gaitType, float speed, BOOL p4, BOOL p5) // 477D5D63E63ECA5D 0D77CC34
    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
  • void RESET_PLAYER_INPUT_GAIT(Player player) // 19531C47A2ABD691 4A701EE1
  • void SET_AUTO_GIVE_PARACHUTE_WHEN_ENTER_PLANE(Player player, BOOL toggle) // 9F343285A00B4BB6 A97C2059
  • void _0xD2B315B6689D537D(Player player, BOOL p1) // D2B315B6689D537D A25D767E
    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;
  • void SET_PLAYER_STEALTH_PERCEPTION_MODIFIER(Player player, float value) // 4E9021C1FCDD507A 3D26105F
  • BOOL _0x690A61A6D13583F6(Ped p0) // 690A61A6D13583F6 1D371529
    p0 seems to be Ped

    Dr. Underscore (1/6/18):
    Has to do something with vehicles and teams. (same teams don't jack each other out of vehicles?)
  • void _0x9EDD76E87D5D51BA(Player player) // 9EDD76E87D5D51BA E30A64DC
  • void SET_PLAYER_SIMULATE_AIMING(Player player, BOOL toggle) // C54C95DA968EC5B5 F1E0CAFC
  • void SET_PLAYER_CLOTH_PIN_FRAMES(Player player, BOOL toggle) // 749FADDF97DFE930 F7A0F00F
    Every occurrence of p1 I found was true.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;
  • void SET_PLAYER_CLOTH_PACKAGE_INDEX(int index) // 9F7BBA2EA6372500 B8209F16
    Every occurrence was either 0 or 2.
  • void SET_PLAYER_CLOTH_LOCK_COUNTER(int value) // 14D913B777DFF5DA 8D9FD4D1
    6 matches across 4 scripts. 5 occurrences were 240. The other was 255.
  • void PLAYER_ATTACH_VIRTUAL_BOUND(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7) // ED51733DC73AED51 ECD12E60
    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;
  • void PLAYER_DETACH_VIRTUAL_BOUND() // 1DD5897E2FA6E7C9 96100EA4
    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;
  • BOOL _0x38D28DA81E4E9BF9(Player player) // 38D28DA81E4E9BF9 013B4F72
    Returns true if an unk value is greater than 0.0f
  • BOOL _0xBC0753C9CA14B506(Player player, int p1, BOOL p2) // BC0753C9CA14B506 9DF75B2A
    var num3 = PLAYER::GET_PLAYER_PED(l_2171); // proof l_2171 is a player

    var num17 = PLAYER::0x9DF75B2A(l_2171, 100, 0); // l_2171

    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
    } else {
    PLAYER::_4669B3ED80F24B4E(l_6EF); // l_6EF
    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

  • void _EXPAND_WORLD_LIMITS(float x, float y, float z) // 5006D96C995A5827
    Will change world AABB so that given point will be inside of the world limits.

    You want world limits to be -9000<X<10000 -11000<Y<12000 and leave Z limits as is.
    You should call this function two times:

    Appears only 3 times in the scripts, more specifically in michael1.ysc

    Console hash: 0x64ddb07d

    This can be used to prevent dying if you are "out of the world"
  • BOOL IS_PLAYER_RIDING_TRAIN(Player player) // 4EC12697209F2196 9765E71D
    Returns true if the player is riding a train.
  • BOOL HAS_PLAYER_LEFT_THE_WORLD(Player player) // D55DDFB47991A294 FEA40B6C
    Gets the player's info and calls a function that checks the player's ped position.

    Here's the decompiled function that checks the position:

    This checks if they left the world limits, which is decided on stuff like if it will auto kill u or not.
  • void _0xFF300C7649724A0B(Player player, BOOL p1) // FF300C7649724A0B AD8383FA
    gets byte at offset 0x862 in the specified players data (ped data + 0xbd0) and stores the bool p1 in it.
    lwz r3, 0xBD0(r3) ;r3 is player data
    lbz r4, 0x862(r3) ;r4 is now the byte
    insrwi r4, r31, 1,28 ;stores p1 as a bit in place 28 idk
    stb r4, 0x862(r3) ; puts the newly modified one back in

  • void SET_PLAYER_PARACHUTE_VARIATION_OVERRIDE(Player player, int p1, Any p2, Any p3, BOOL p4) // D9284A8C0D48352C 9254249D
    p1 was always 5.
    p4 was always false.
  • void SET_PLAYER_PARACHUTE_MODEL_OVERRIDE(Player player, Hash model) // 977DB4641F6FC3DB 5D382498

  • void CLEAR_PLAYER_PARACHUTE_MODEL_OVERRIDE(Player player) // 8753997EB5F6EE3F 6FF034BB
  • void SET_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE(Player player, Hash model) // DC80A4C2F18A2B64 A877FF5E
  • void CLEAR_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE(Player player) // 10C54E4389C12B42 BB62AAC5
  • void DISABLE_PLAYER_VEHICLE_REWARDS(Player player) // C142BE3BB9CE125F 8C6E611D
  • void _0x2F7CEB6520288061(BOOL p0) // 2F7CEB6520288061 2849D4B2
    Used with radios:

    void sub_cf383(auto _a0) {
    if ((a_0)==1) {
    if (GAMEPLAY::IS_BIT_SET((g_240005._f1), 3)) {
    AUDIO::SET_AUDIO_FLAG("AllowRadioDuringSwitch", 0);
    AUDIO::SET_AUDIO_FLAG("MobileRadioInGame", 0);
    } else {
    if (GAMEPLAY::IS_BIT_SET((g_240005._f1), 3)) {
    AUDIO::SET_AUDIO_FLAG("AllowRadioDuringSwitch", 1);
    AUDIO::SET_AUDIO_FLAG("MobileRadioInGame", 1);

  • void _0x5DC40A8869C22141(BOOL p0, ScrHandle p1) // 5DC40A8869C22141
  • BOOL _0x65FAEE425DE637B0(Player player) // 65FAEE425DE637B0


    console hash: 0xEA01BD4A
    //hardcoded to return true always

    Returns (*(BYTE*)(playerInfo + 0xE74) >> 2) & 1.
    -Pocakking, 2019
  • void _0x5501B7A5CDB79D37(Player player) // 5501B7A5CDB79D37
    seems to make everyone in discord that this image is sent to acknowledge that the first argument's discord owner is gay and has smol pp.

    p0 is usually: Xi1337#1337


    Sets a frameflag (1 << 24).
    -Pocakking, 2019
  • Player _0x56105E599CAB0EFA(int *p0) // 56105E599CAB0EFA

    Seems to do something with network (?)
  • PED
  • AI