Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. The Criminal Enterprises
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Announcements

    2. Support

    3. Suggestions

Getting objects from hashes?


kasakka
 Share

Recommended Posts

Can anyone explain to me how the hashes work in GTA V?

 

For example if I want to get the current weapon the player has, I can use the

WEAPON.GET_SELECTED_PED_WEAPON(player, weaponHash, true) 

to fill variable weaponHash. However, if I then want to get the weapon OBJECT, how do I do that? Is every object type (WEAPON, PLAYER, VEHICLE etc) supposed to have its own function to get an object from hash?

 

I'm trying to make a mod that allows you to toggle weapon attachments like silencer on and off but have difficulty getting the needed weapon and attachment (referred to as weapon component in the functions I think) objects. Getting the hashes seems to be easier.

Link to comment
Share on other sites

BoXz_modder

Can anyone explain to me how the hashes work in GTA V?

 

For example if I want to get the current weapon the player has, I can use the

WEAPON.GET_SELECTED_PED_WEAPON(player, weaponHash, true) 

to fill variable weaponHash. However, if I then want to get the weapon OBJECT, how do I do that? Is every object type (WEAPON, PLAYER, VEHICLE etc) supposed to have its own function to get an object from hash?

 

I'm trying to make a mod that allows you to toggle weapon attachments like silencer on and off but have difficulty getting the needed weapon and attachment (referred to as weapon component in the functions I think) objects. Getting the hashes seems to be easier.

 

What language are you writing in?

Link to comment
Share on other sites

 

Hash weaponPed playerPed= PLAYER::PLAYER_PED_ID();WEAPON::GET_CURRENT_PED_WEAPON(playerPed,&weapon,1);

Easy.

 

You already have the hash, that hash is used to do stuff with the weapon, like adding ammo, adding attachments etc.

 

To get the hash for say WEAPON_PISTOL you would simply do:

 

hash Pistol=GET_HASH_KEY("WEAPON_PISTOL");

 

That native works for Cars, Peds Weapons and objects.

Edited by sjaak327
Link to comment
Share on other sites

Hi,

 

I don't know if I understand you correctly, but internally all is masked using hashes instead of clear names. So for each native to spawn something you'd need the object hash (object in terms of vehicle, peds and objects), so we got for example Hash GAMEPLAY::GET_HASH_KEY(char*) to translate a "clear name" into a hash that can than be used. Always provided your "clear name" is an object name that translates into a hash that is actually in the game.

 

I didn't try, but in C++ I'd do something like this:

Ped playerPed = PLAYER::PLAYER_PED_ID();Hash weaponHash = WEAPON::GET_SELECTED_PED_WEAPON(playerPed);WEAPON::GIVE_WEAPON_COMPONENT_TO_PED(playerPed, weaponHash, weaponComponentHash);

Of course you'd need to test if weaponHash is actually a weapon and you need the suitable weaponComponentHash.

 

This is not tested, though but this is, what I'd try.

Link to comment
Share on other sites

thewhitehammer99

converted the above code to C# (looks like thats what op is using)

            int pedID = PLAYER_PED_ID();            int weapon = GET_SELECTED_PED_WEAPON(pedID);            GIVE_WEAPON_COMPONENT_TO_PED(pedID, weapon, /*weapon component hash*/);

edit - sorry :/ i stuffed up the code, but it should be right now :D

Edited by thewhitehammer99
Link to comment
Share on other sites

That's one step more than needed. GET_CURRENT_PED_WEAPON will get the weapon hash and can be directly used for GIVE_WEAPON_COMPONENT_TO_PED

 

 

Unless I am missing something, but isn't the selected weapon always the current weapon ?

Link to comment
Share on other sites

So basically you don't need to get the weapon or attachment object first to do stuff with them, the hash is enough? So for example if in LUA I do

local playerPed = PLAYER.PLAYER_PED_ID()local player = PLAYER.GET_PLAYER_PED(playerPed)

Is the player variable now just a hash representing the player pedestrian?

Link to comment
Share on other sites

So basically you don't need to get the weapon or attachment object first to do stuff with them, the hash is enough? So for example if in LUA I do

local playerPed = PLAYER.PLAYER_PED_ID()local player = PLAYER.GET_PLAYER_PED(playerPed)

Is the player variable now just a hash representing the player pedestrian?

those functions return handles, not hashes... when you work with models for example you will have to take a model's string name and convert to hash value in order to use with natives.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.