Jump to content

[V] Script/Native Documentation and Research


Recommended Posts

Alexander Blade

fOmey, XeClutch

let's end this offtopic , even if you were managed to do whatever you are trying to do it would work only for simple natives

Edited by Alexander Blade
  • Like 2

 

I recently started working on a C# RPC tool for the PS3, I've hit a bit of a road block..

 

Im attempting to utilize "GET_ENTITY_COORDS" native..

 

 

I wasnt aware of what a Vector3 was until coming across this thread to be honest, from what I gather its simply a array which generally holds coordinates.

 

 

The issue I'm having and what I'm not getting my head around is the data being returned from the native...

 

The data being returned is: "2.369571E-38", I assumed it would be a float as per the code posted on this thread so I'm treating it like one.. I may return a double for experimentation

 

Shortly after returning that value GTA V freezes.. I'm quite stumped to be honest, any assistance, advice or further information would be greatly appreciated.

I can't even get it working, my console freezes when I call it. I use this:

Vector3 GET_ENTITY_COORDS(){    float[] xyz = Jtag.CallArray<float>(0x82C500A8, 3, PLAYER_PED_ID(), 1);    Vector3 v;    v.x = xyz[0];    v.y = xyz[1];    v.z = xyz[2];    return v;}

Thank you sir, Will definitely give it a shot. Appreciate the help..

 

fOmey, XeClutch

let's end this offtopic , even if you were managed to do whatever you are trying to do it would work only for simple natives

Not my intention at all, I personally think my question was right on the mark with the thread title..

Hi,

I have checked out this nice bruteforce tool! Good work but it's very slow...

 


They bruteforce the hash. I made a program to do it awhile back.

http://pastebin.com/kH3FM6aU

 

 

So I decided to make my own tool using another bruteforce method (looking for keywords). It reads all unknown hashs (1895!) like _0x274631FE form "native_decl.h".

Everything works good but the annoying thing is that many 'found' natives are pretty pointless - I'm sure most of them are crap and/or double!

 

Here some examples:

0x294405D4 -> AIR_STR_PATH0x39AA9FC8 -> BALANCE_ANIMAL_STOLEN0x3ED21C90 -> AIMING_LOCKED_SNOW0x451A2644 -> ACCELERATION_CONVERSATION_ATTACHED0x4A124267 -> AGGRESSIVE_GADGET_FORMATION0x4B37333C -> ABILITY_FOUND_MICROPHONE_POPSCHEDULE0x51E7A037 -> AIMING_LOWER_SYSTEM0x60E1FEDF -> NETWORK_CAN_BAIL0x68C9AF69 -> AGAINST_PARENTS_TURNING0x69956127 -> AIM_ALIVE_MAXIMUM0x6B34A160 -> AI_PHONE_ARGS0x6F009E33 -> ALIVE_DO_STANDARD0x6F8350CE -> ACOS_CUSTOM_AND0x771FE190 -> SET_OFFSCREEN_SCENARIO0x882D3EB3 -> ABILITY_FIRING_ODDJOB_DRAWABLE0x8866D9D0 -> TRANSITIONING_SECONDS_BUY0x8E101F5C -> ACCELERATION_ACHIEVE_HASH0x900C878C -> ABSI_VELOCITY_RUDDER0x913FD7D6 -> POINTING_ROTATE0x94119534 -> ALIVE_OCCUPIED_BLINK0x96525B06 -> IS_MOOD_TYRES0x9678D4FF -> CREATE_VDIST2_MAP0x9BDC0B49 -> ACHIEVEMENT_TRAILER_FULL0x9C84BDA0 -> AI_PLAYING_READY0xA0777943 -> ALIVE_BEGIN_LEFT0xB41064A4 -> AGGRESSIVE_EXCLUSIVE_LINE0xB59D74CA -> NETWORK_BAIL_TRANSITION0xB986FF47 -> ABILITY_EVERYONE_HELI_MAKE0xBA9AD458 -> AGGRESSIVENESS_SEARCHLIGHT_HOSPITAL0xBF6993C7 -> REACT_DISPATCH_PAD0xC67D5CF6 -> ACOS_THREAD_INDEX0xC969F2D0 -> ACCURACY_IMPACTED_PULSE0xC9C13D8D -> ACCELERATION_AT_SKY0xD15C4B1C -> ABILITY_CUSTOM_WAITUNPAUSED_BITS0xD32FA11F -> AGGRESSIVE_CASH_SUBTITLE0xD87AF337 -> ACTIVATION_LONGER_REGIONS0xD9660339 -> ACCELERATION_APPLY_INVINCIBILITY0xE0F0684F -> ACTIONS_RESERVE_OVERLAY0xE30A64DC -> AGILITY_DESTRUCTION_PEEK0xE3BD00F9 -> ACCEPT_ALARM_AUDIO0xFC0DB4C3 -> ACTIVITY_TRANSITION_WHILE

...and some double:

0x3A7E5FB6 -> COORDS_CLOTH_CLIPSET0x3A7E5FB6 -> UNDER_SPEECH_DIST0x47017C90 -> ABILITY_DATA_NOW_RENDER0x47017C90 -> ABILITY_JUST_REFRESH_DEATH0x59B5C2A2 -> ONSCREEN_TOUCHING_PORTABLE0x59B5C2A2 -> SHOOTS_FORMAT_METER0x74D42C03 -> ABILITY_AI_CONSIDERED_DESTROY0x74D42C03 -> ABILITY_CHASE_PITCH_DEFORMATION0x74D42C03 -> HANDLES_WANTED_GADGET0xAF7AFCC4 -> HIGH_CARWASH_LIVERY0xAF7AFCC4 -> NEAR_PAD_COLOUR

Using all 1342(!) GTA V keywords... that takes a lot of computing time :sui: Maybe next week I will finish this tool. Hope I can speed it up a little...

 

Skorpro

  • Like 2

Im attempting to discover what native is used to apply performance mods to vehicles,

 

Visuals like, spoilers, front bumpers, rear bumps etc. are applied using:

set_vehicle_mod(vehicleID, modTypeInt, styleOfMod);

modTypeInt = 1 = Spoiler

modTypeInt = 2 = Front Bumper etc.

 

styleOfMod = 1 = Spoiler 1

styleOfMod = 2 = Spoiler 2 etc.

 

 

Although armour, turbo, suspension seem to be a mystery.. Wondering if anyone can shed some light on what native/params to be using ?

 

 

I have a gut feeling its:

toggle_vehicle_mod(vehicleID, modTypeInt, modLevel);

But I may be wrong..

 

 

EDIT: Shortly after writing this performance upgrades begin after int 7..

 

Any comments are welcome.

Edited by fOmey

Hi,

I have checked out this nice bruteforce tool! Good work but it's very slow...

 

 

They bruteforce the hash. I made a program to do it awhile back.

http://pastebin.com/kH3FM6aU

 

 

So I decided to make my own tool using another bruteforce method (looking for keywords). It reads all unknown hashs (1895!) like _0x274631FE form "native_decl.h".

Everything works good but the annoying thing is that many 'found' natives are pretty pointless - I'm sure most of them are crap and/or double!

 

Here some examples:

0x294405D4 -> AIR_STR_PATH0x39AA9FC8 -> BALANCE_ANIMAL_STOLEN0x3ED21C90 -> AIMING_LOCKED_SNOW0x451A2644 -> ACCELERATION_CONVERSATION_ATTACHED0x4A124267 -> AGGRESSIVE_GADGET_FORMATION0x4B37333C -> ABILITY_FOUND_MICROPHONE_POPSCHEDULE0x51E7A037 -> AIMING_LOWER_SYSTEM0x60E1FEDF -> NETWORK_CAN_BAIL0x68C9AF69 -> AGAINST_PARENTS_TURNING0x69956127 -> AIM_ALIVE_MAXIMUM0x6B34A160 -> AI_PHONE_ARGS0x6F009E33 -> ALIVE_DO_STANDARD0x6F8350CE -> ACOS_CUSTOM_AND0x771FE190 -> SET_OFFSCREEN_SCENARIO0x882D3EB3 -> ABILITY_FIRING_ODDJOB_DRAWABLE0x8866D9D0 -> TRANSITIONING_SECONDS_BUY0x8E101F5C -> ACCELERATION_ACHIEVE_HASH0x900C878C -> ABSI_VELOCITY_RUDDER0x913FD7D6 -> POINTING_ROTATE0x94119534 -> ALIVE_OCCUPIED_BLINK0x96525B06 -> IS_MOOD_TYRES0x9678D4FF -> CREATE_VDIST2_MAP0x9BDC0B49 -> ACHIEVEMENT_TRAILER_FULL0x9C84BDA0 -> AI_PLAYING_READY0xA0777943 -> ALIVE_BEGIN_LEFT0xB41064A4 -> AGGRESSIVE_EXCLUSIVE_LINE0xB59D74CA -> NETWORK_BAIL_TRANSITION0xB986FF47 -> ABILITY_EVERYONE_HELI_MAKE0xBA9AD458 -> AGGRESSIVENESS_SEARCHLIGHT_HOSPITAL0xBF6993C7 -> REACT_DISPATCH_PAD0xC67D5CF6 -> ACOS_THREAD_INDEX0xC969F2D0 -> ACCURACY_IMPACTED_PULSE0xC9C13D8D -> ACCELERATION_AT_SKY0xD15C4B1C -> ABILITY_CUSTOM_WAITUNPAUSED_BITS0xD32FA11F -> AGGRESSIVE_CASH_SUBTITLE0xD87AF337 -> ACTIVATION_LONGER_REGIONS0xD9660339 -> ACCELERATION_APPLY_INVINCIBILITY0xE0F0684F -> ACTIONS_RESERVE_OVERLAY0xE30A64DC -> AGILITY_DESTRUCTION_PEEK0xE3BD00F9 -> ACCEPT_ALARM_AUDIO0xFC0DB4C3 -> ACTIVITY_TRANSITION_WHILE

...and some double:

0x3A7E5FB6 -> COORDS_CLOTH_CLIPSET0x3A7E5FB6 -> UNDER_SPEECH_DIST0x47017C90 -> ABILITY_DATA_NOW_RENDER0x47017C90 -> ABILITY_JUST_REFRESH_DEATH0x59B5C2A2 -> ONSCREEN_TOUCHING_PORTABLE0x59B5C2A2 -> SHOOTS_FORMAT_METER0x74D42C03 -> ABILITY_AI_CONSIDERED_DESTROY0x74D42C03 -> ABILITY_CHASE_PITCH_DEFORMATION0x74D42C03 -> HANDLES_WANTED_GADGET0xAF7AFCC4 -> HIGH_CARWASH_LIVERY0xAF7AFCC4 -> NEAR_PAD_COLOUR

Using all 1342(!) GTA V keywords... that takes a lot of computing time :sui: Maybe next week I will finish this tool. Hope I can speed it up a little...

 

Skorpro

You should release it, I know a few people with pretty high power computers and would be happy to run it in the background.

Im attempting to discover what native is used to apply performance mods to vehicles,

 

Visuals like, spoilers, front bumpers, rear bumps etc. are applied using:

set_vehicle_mod(vehicleID, modTypeInt, styleOfMod);

modTypeInt = 1 = Spoiler

modTypeInt = 2 = Front Bumper etc.

 

styleOfMod = 1 = Spoiler 1

styleOfMod = 2 = Spoiler 2 etc.

 

 

Although armour, turbo, suspension seem to be a mystery.. Wondering if anyone can shed some light on what native/params to be using ?

 

 

I have a gut feeling its:

toggle_vehicle_mod(vehicleID, modTypeInt, modLevel);

But I may be wrong..

 

 

EDIT: Shortly after writing this performance upgrades begin after int 7..

 

Any comments are welcome.

Not sure if these would work for set/toggle_vehicle_mod but it looks like they wouid.

https://docs.google.com/spreadsheet/ccc?key=0AixUkyNxN55gdF83LWI1MVFaeE9CY0ptdFEyYVFPV3c&usp=sharing#gid=0

Alexander Blade

Seems like I still need to publish my tool cuz ppl are still bruteforcing :)

Edited by Alexander Blade

Hi,

I have checked out this nice bruteforce tool! Good work but it's very slow...

 

 

They bruteforce the hash. I made a program to do it awhile back.

http://pastebin.com/kH3FM6aU

 

 

So I decided to make my own tool using another bruteforce method (looking for keywords). It reads all unknown hashs (1895!) like _0x274631FE form "native_decl.h".

Everything works good but the annoying thing is that many 'found' natives are pretty pointless - I'm sure most of them are crap and/or double!

 

Here some examples:

0x294405D4 -> AIR_STR_PATH0x39AA9FC8 -> BALANCE_ANIMAL_STOLEN0x3ED21C90 -> AIMING_LOCKED_SNOW0x451A2644 -> ACCELERATION_CONVERSATION_ATTACHED0x4A124267 -> AGGRESSIVE_GADGET_FORMATION0x4B37333C -> ABILITY_FOUND_MICROPHONE_POPSCHEDULE0x51E7A037 -> AIMING_LOWER_SYSTEM0x60E1FEDF -> NETWORK_CAN_BAIL0x68C9AF69 -> AGAINST_PARENTS_TURNING0x69956127 -> AIM_ALIVE_MAXIMUM0x6B34A160 -> AI_PHONE_ARGS0x6F009E33 -> ALIVE_DO_STANDARD0x6F8350CE -> ACOS_CUSTOM_AND0x771FE190 -> SET_OFFSCREEN_SCENARIO0x882D3EB3 -> ABILITY_FIRING_ODDJOB_DRAWABLE0x8866D9D0 -> TRANSITIONING_SECONDS_BUY0x8E101F5C -> ACCELERATION_ACHIEVE_HASH0x900C878C -> ABSI_VELOCITY_RUDDER0x913FD7D6 -> POINTING_ROTATE0x94119534 -> ALIVE_OCCUPIED_BLINK0x96525B06 -> IS_MOOD_TYRES0x9678D4FF -> CREATE_VDIST2_MAP0x9BDC0B49 -> ACHIEVEMENT_TRAILER_FULL0x9C84BDA0 -> AI_PLAYING_READY0xA0777943 -> ALIVE_BEGIN_LEFT0xB41064A4 -> AGGRESSIVE_EXCLUSIVE_LINE0xB59D74CA -> NETWORK_BAIL_TRANSITION0xB986FF47 -> ABILITY_EVERYONE_HELI_MAKE0xBA9AD458 -> AGGRESSIVENESS_SEARCHLIGHT_HOSPITAL0xBF6993C7 -> REACT_DISPATCH_PAD0xC67D5CF6 -> ACOS_THREAD_INDEX0xC969F2D0 -> ACCURACY_IMPACTED_PULSE0xC9C13D8D -> ACCELERATION_AT_SKY0xD15C4B1C -> ABILITY_CUSTOM_WAITUNPAUSED_BITS0xD32FA11F -> AGGRESSIVE_CASH_SUBTITLE0xD87AF337 -> ACTIVATION_LONGER_REGIONS0xD9660339 -> ACCELERATION_APPLY_INVINCIBILITY0xE0F0684F -> ACTIONS_RESERVE_OVERLAY0xE30A64DC -> AGILITY_DESTRUCTION_PEEK0xE3BD00F9 -> ACCEPT_ALARM_AUDIO0xFC0DB4C3 -> ACTIVITY_TRANSITION_WHILE

...and some double:

0x3A7E5FB6 -> COORDS_CLOTH_CLIPSET0x3A7E5FB6 -> UNDER_SPEECH_DIST0x47017C90 -> ABILITY_DATA_NOW_RENDER0x47017C90 -> ABILITY_JUST_REFRESH_DEATH0x59B5C2A2 -> ONSCREEN_TOUCHING_PORTABLE0x59B5C2A2 -> SHOOTS_FORMAT_METER0x74D42C03 -> ABILITY_AI_CONSIDERED_DESTROY0x74D42C03 -> ABILITY_CHASE_PITCH_DEFORMATION0x74D42C03 -> HANDLES_WANTED_GADGET0xAF7AFCC4 -> HIGH_CARWASH_LIVERY0xAF7AFCC4 -> NEAR_PAD_COLOUR

Using all 1342(!) GTA V keywords... that takes a lot of computing time :sui: Maybe next week I will finish this tool. Hope I can speed it up a little...

 

Skorpro

0x60E1FEDF -> NETWORK_CAN_BAIL0xB59D74CA -> NETWORK_BAIL_TRANSITION

98% Confirmed .

Alexander Blade

Seems like wiki can't handle such a page as native declarations , so sometimes it writes them incorrectly . Compare the page via history after the editing .

 

Can we do something with this issue ?

Seems like I still need to publish my tool cuz ppl are still bruteforcing :)

Sounds interesting, I know hashes cannot be reversed, are you using a premade database or something?

Seems like wiki can't handle such a page as native declarations , so sometimes it writes them incorrectly . Compare the page via history after the editing .

 

Can we do something with this issue ?

Just make an account on http://www.pastebin.com/ for now and post everything on there. It is really handy (especially if you organize it).

http://www.pastebin.com/u/IAmXeClutch

Im attempting to discover what native is used to apply performance mods to vehicles,

 

Visuals like, spoilers, front bumpers, rear bumps etc. are applied using:

set_vehicle_mod(vehicleID, modTypeInt, styleOfMod);

modTypeInt = 1 = Spoiler

modTypeInt = 2 = Front Bumper etc.

 

styleOfMod = 1 = Spoiler 1

styleOfMod = 2 = Spoiler 2 etc.

 

 

Although armour, turbo, suspension seem to be a mystery.. Wondering if anyone can shed some light on what native/params to be using ?

 

 

I have a gut feeling its:

toggle_vehicle_mod(vehicleID, modTypeInt, modLevel);

But I may be wrong..

 

 

EDIT: Shortly after writing this performance upgrades begin after int 7..

 

Any comments are welcome.

 

Turbo is a toggle and suspension is set_vehicle_mod:

void set_vehicle_mod(uint vehicleID, int modIndex, int modLevel);

Mod Indexes:

https://dl.dropboxusercontent.com/u/57962764/V%20Car%20Mods.txt

 

Mod levels from 0 to:

int GET_NUM_VEHICLE_MODS(uint veh, int modIndex); //Returns max amount of mods for this vehicle in it's mod index category.  -1 means no mods available.
Edited by XBLToothPik

 

Hi,

I have checked out this nice bruteforce tool! Good work but it's very slow...

 

 

They bruteforce the hash. I made a program to do it awhile back.

http://pastebin.com/kH3FM6aU

 

 

So I decided to make my own tool using another bruteforce method (looking for keywords). It reads all unknown hashs (1895!) like _0x274631FE form "native_decl.h".

Everything works good but the annoying thing is that many 'found' natives are pretty pointless - I'm sure most of them are crap and/or double!

 

Here some examples:

0x294405D4 -> AIR_STR_PATH0x39AA9FC8 -> BALANCE_ANIMAL_STOLEN0x3ED21C90 -> AIMING_LOCKED_SNOW0x451A2644 -> ACCELERATION_CONVERSATION_ATTACHED0x4A124267 -> AGGRESSIVE_GADGET_FORMATION0x4B37333C -> ABILITY_FOUND_MICROPHONE_POPSCHEDULE0x51E7A037 -> AIMING_LOWER_SYSTEM0x60E1FEDF -> NETWORK_CAN_BAIL0x68C9AF69 -> AGAINST_PARENTS_TURNING0x69956127 -> AIM_ALIVE_MAXIMUM0x6B34A160 -> AI_PHONE_ARGS0x6F009E33 -> ALIVE_DO_STANDARD0x6F8350CE -> ACOS_CUSTOM_AND0x771FE190 -> SET_OFFSCREEN_SCENARIO0x882D3EB3 -> ABILITY_FIRING_ODDJOB_DRAWABLE0x8866D9D0 -> TRANSITIONING_SECONDS_BUY0x8E101F5C -> ACCELERATION_ACHIEVE_HASH0x900C878C -> ABSI_VELOCITY_RUDDER0x913FD7D6 -> POINTING_ROTATE0x94119534 -> ALIVE_OCCUPIED_BLINK0x96525B06 -> IS_MOOD_TYRES0x9678D4FF -> CREATE_VDIST2_MAP0x9BDC0B49 -> ACHIEVEMENT_TRAILER_FULL0x9C84BDA0 -> AI_PLAYING_READY0xA0777943 -> ALIVE_BEGIN_LEFT0xB41064A4 -> AGGRESSIVE_EXCLUSIVE_LINE0xB59D74CA -> NETWORK_BAIL_TRANSITION0xB986FF47 -> ABILITY_EVERYONE_HELI_MAKE0xBA9AD458 -> AGGRESSIVENESS_SEARCHLIGHT_HOSPITAL0xBF6993C7 -> REACT_DISPATCH_PAD0xC67D5CF6 -> ACOS_THREAD_INDEX0xC969F2D0 -> ACCURACY_IMPACTED_PULSE0xC9C13D8D -> ACCELERATION_AT_SKY0xD15C4B1C -> ABILITY_CUSTOM_WAITUNPAUSED_BITS0xD32FA11F -> AGGRESSIVE_CASH_SUBTITLE0xD87AF337 -> ACTIVATION_LONGER_REGIONS0xD9660339 -> ACCELERATION_APPLY_INVINCIBILITY0xE0F0684F -> ACTIONS_RESERVE_OVERLAY0xE30A64DC -> AGILITY_DESTRUCTION_PEEK0xE3BD00F9 -> ACCEPT_ALARM_AUDIO0xFC0DB4C3 -> ACTIVITY_TRANSITION_WHILE

...and some double:

0x3A7E5FB6 -> COORDS_CLOTH_CLIPSET0x3A7E5FB6 -> UNDER_SPEECH_DIST0x47017C90 -> ABILITY_DATA_NOW_RENDER0x47017C90 -> ABILITY_JUST_REFRESH_DEATH0x59B5C2A2 -> ONSCREEN_TOUCHING_PORTABLE0x59B5C2A2 -> SHOOTS_FORMAT_METER0x74D42C03 -> ABILITY_AI_CONSIDERED_DESTROY0x74D42C03 -> ABILITY_CHASE_PITCH_DEFORMATION0x74D42C03 -> HANDLES_WANTED_GADGET0xAF7AFCC4 -> HIGH_CARWASH_LIVERY0xAF7AFCC4 -> NEAR_PAD_COLOUR

Using all 1342(!) GTA V keywords... that takes a lot of computing time :sui: Maybe next week I will finish this tool. Hope I can speed it up a little...

 

Skorpro

0x60E1FEDF -> NETWORK_CAN_BAIL0xB59D74CA -> NETWORK_BAIL_TRANSITION

98% Confirmed .

 

 

Yea, most of those are just hash collisions.

 

Yea, those two are right. Can see NETWORK_CAN_BAIL being used here: https://dl.dropboxusercontent.com/u/57962764/scripts/am_mp_property_int.c

 

(Search for it's hash, not the name)

Edited by XBLToothPik

 

Im attempting to discover what native is used to apply performance mods to vehicles,

 

Visuals like, spoilers, front bumpers, rear bumps etc. are applied using:

set_vehicle_mod(vehicleID, modTypeInt, styleOfMod);

modTypeInt = 1 = Spoiler

modTypeInt = 2 = Front Bumper etc.

 

styleOfMod = 1 = Spoiler 1

styleOfMod = 2 = Spoiler 2 etc.

 

 

Although armour, turbo, suspension seem to be a mystery.. Wondering if anyone can shed some light on what native/params to be using ?

 

 

I have a gut feeling its:

toggle_vehicle_mod(vehicleID, modTypeInt, modLevel);

But I may be wrong..

 

 

EDIT: Shortly after writing this performance upgrades begin after int 7..

 

Any comments are welcome.

 

Turbo is a toggle and suspension is set_vehicle_mod:

void set_vehicle_mod(uint vehicleID, int modIndex, int modLevel);

Mod Indexes:

https://dl.dropboxusercontent.com/u/57962764/V%20Car%20Mods.txt

 

Mod levels from 0 to:

int GET_NUM_VEHICLE_MODS(uint veh, int modIndex); //Returns max amount of mods for this vehicle in it's mod index category.  -1 means no mods available.

Oh man, I wish I saw this earlier ! I sat there and manually figured them out.. your a life saver anyway tho because there were a few that were "unknowns" that you have shed some light on. Thanks so much

 

For the life of me tho, I cant seem to figure out how to toggle custom wheels and tyre smoke ? I bruteforced my way through set_vehicle_mod & toggle_vehicle_mod.. no dice tho sadly..

 

I have tested the native to change tyre smoke colour, that seems to work fine.. although actually turning custom tyre smoke on, I cant quite figure out.

 

 

 

 

 

Slightly off topic although relevant to my research, a sneak peak of the project I'm working on:

 

SOLCYVV.png

 

 

Edited by fOmey

 

 

Im attempting to discover what native is used to apply performance mods to vehicles,

 

Visuals like, spoilers, front bumpers, rear bumps etc. are applied using:

set_vehicle_mod(vehicleID, modTypeInt, styleOfMod);

modTypeInt = 1 = Spoiler

modTypeInt = 2 = Front Bumper etc.

 

styleOfMod = 1 = Spoiler 1

styleOfMod = 2 = Spoiler 2 etc.

 

 

Although armour, turbo, suspension seem to be a mystery.. Wondering if anyone can shed some light on what native/params to be using ?

 

 

I have a gut feeling its:

toggle_vehicle_mod(vehicleID, modTypeInt, modLevel);

But I may be wrong..

 

 

EDIT: Shortly after writing this performance upgrades begin after int 7..

 

Any comments are welcome.

 

Turbo is a toggle and suspension is set_vehicle_mod:

void set_vehicle_mod(uint vehicleID, int modIndex, int modLevel);

Mod Indexes:

https://dl.dropboxusercontent.com/u/57962764/V%20Car%20Mods.txt

 

Mod levels from 0 to:

int GET_NUM_VEHICLE_MODS(uint veh, int modIndex); //Returns max amount of mods for this vehicle in it's mod index category.  -1 means no mods available.

Oh man, I wish I saw this earlier ! I sat there and manually figured them out.. your a life saver anyway tho because there were a few that were "unknowns" that you have shed some light on. Thanks so much

 

For the life of me tho, I cant seem to figure out how to toggle custom wheels and tyre smoke ? I bruteforced my way through set_vehicle_mod & toggle_vehicle_mod.. no dice tho sadly..

 

I have tested the native to change tyre smoke colour, that seems to work fine.. although actually turning custom tyre smoke on, I cant quite figure out.

 

 

 

 

 

Slightly off topic although relevant to my research, a sneak peak of the project I'm working on:

 

SOLCYVV.png

 

 

 

I haven't been able to get Tire Smoke working either. For wheels you can do.

 

SET_VEHICLE_WHEEL_TYPE(uint veh, int wheelIndex)
unknown modder

 

 

 

 

Oh man, I wish I saw this earlier ! I sat there and manually figured them out.. your a life saver anyway tho because there were a few that were "unknowns" that you have shed some light on. Thanks so much

 

 

For the life of me tho, I cant seem to figure out how to toggle custom wheels and tyre smoke ? I bruteforced my way through set_vehicle_mod & toggle_vehicle_mod.. no dice tho sadly..

 

I have tested the native to change tyre smoke colour, that seems to work fine.. although actually turning custom tyre smoke on, I cant quite figure out.

 

 

 

 

 

Slightly off topic although relevant to my research, a sneak peak of the project I'm working on:

 

SOLCYVV.png

 

 

 

If custom tyres refers to atomic on the tyres/white rings around tyres

//normal codeset_vehicle_mod(vehicle, 23, wheel_style, custom_tyres_on);set_vehicle_mod(vehicle, 24, wheel_style, custom_tyres_on);//bike rear wheels//just set custom tyres without changing wheel styleset_vehicle_mod(vehicle, 23, get_vehicle_mod(vehicle, 23), custom_tyres_on);set_vehicle_mod(vehicle, 24, get_vehicle_mod(vehicle, 24), custom_tyres_on);//bike rear wheels//to get if the vehicle has custom tyrescustom_tyres = get_vehicle_mod_variation(vehicle, 23);custom_tyres = get_vehicle_mod_variation(vehicle, 23);//bike rear wheels//easy toggle codeset_vehicle_mod(vehicle, 23, get_vehicle_mod(vehicle, 23), !get_vehicle_mod_variation(vehicle, 23));set_vehicle_mod(vehicle, 24, get_vehicle_mod(vehicle, 24), !get_vehicle_mod_variation(vehicle, 24));
Edited by unknown modder
Alexander Blade

Here is the bruteforce what I've been using , check the readme first , link is added into the 1st post as well

 

multithreaded native bruteforce

Edited by Alexander Blade
  • Like 3

 

 

 

Im attempting to discover what native is used to apply performance mods to vehicles,

 

Visuals like, spoilers, front bumpers, rear bumps etc. are applied using:

set_vehicle_mod(vehicleID, modTypeInt, styleOfMod);

modTypeInt = 1 = Spoiler

modTypeInt = 2 = Front Bumper etc.

 

styleOfMod = 1 = Spoiler 1

styleOfMod = 2 = Spoiler 2 etc.

 

 

Although armour, turbo, suspension seem to be a mystery.. Wondering if anyone can shed some light on what native/params to be using ?

 

 

I have a gut feeling its:

toggle_vehicle_mod(vehicleID, modTypeInt, modLevel);

But I may be wrong..

 

 

EDIT: Shortly after writing this performance upgrades begin after int 7..

 

Any comments are welcome.

 

Turbo is a toggle and suspension is set_vehicle_mod:

void set_vehicle_mod(uint vehicleID, int modIndex, int modLevel);

Mod Indexes:

https://dl.dropboxusercontent.com/u/57962764/V%20Car%20Mods.txt

 

Mod levels from 0 to:

int GET_NUM_VEHICLE_MODS(uint veh, int modIndex); //Returns max amount of mods for this vehicle in it's mod index category.  -1 means no mods available.

Oh man, I wish I saw this earlier ! I sat there and manually figured them out.. your a life saver anyway tho because there were a few that were "unknowns" that you have shed some light on. Thanks so much

 

For the life of me tho, I cant seem to figure out how to toggle custom wheels and tyre smoke ? I bruteforced my way through set_vehicle_mod & toggle_vehicle_mod.. no dice tho sadly..

 

I have tested the native to change tyre smoke colour, that seems to work fine.. although actually turning custom tyre smoke on, I cant quite figure out.

 

 

 

 

 

Slightly off topic although relevant to my research, a sneak peak of the project I'm working on:

 

SOLCYVV.png

 

 

 

I haven't been able to get Tire Smoke working either. For wheels you can do.

SET_VEHICLE_WHEEL_TYPE(uint veh, int wheelIndex)

 

Thanks excellent thanks for trying to help, although I meant the white walls around tyres, atomic etc.

 

Although I know RockStar implemented a new byte for tyre smoke when the independence day DLC came out.. At least for RTM garage editors.. My gut is telling me thats what needs to be toggled...

 

 

 

 

 

 

Oh man, I wish I saw this earlier ! I sat there and manually figured them out.. your a life saver anyway tho because there were a few that were "unknowns" that you have shed some light on. Thanks so much

 

 

For the life of me tho, I cant seem to figure out how to toggle custom wheels and tyre smoke ? I bruteforced my way through set_vehicle_mod & toggle_vehicle_mod.. no dice tho sadly..

 

I have tested the native to change tyre smoke colour, that seems to work fine.. although actually turning custom tyre smoke on, I cant quite figure out.

 

 

 

 

 

Slightly off topic although relevant to my research, a sneak peak of the project I'm working on:

 

SOLCYVV.png

 

 

 

If custom tyres refers to atomic on the tyres/white rings around tyres

//normal codeset_vehicle_mod(vehicle, 23, wheel_style, custom_tyres_on);set_vehicle_mod(vehicle, 24, wheel_style, custom_tyres_on);//bike rear wheels//just set custom tyres without changing wheel styleset_vehicle_mod(vehicle, 23, get_vehicle_mod(vehicle, 23), custom_tyres_on);set_vehicle_mod(vehicle, 24, get_vehicle_mod(vehicle, 24), custom_tyres_on);//bike rear wheels//to get if the vehicle has custom tyrescustom_tyres = get_vehicle_mod_variation(vehicle, 23);custom_tyres = get_vehicle_mod_variation(vehicle, 23);//bike rear wheels//easy toggle codeset_vehicle_mod(vehicle, 23, get_vehicle_mod(vehicle, 23), !get_vehicle_mod_variation(vehicle, 23));set_vehicle_mod(vehicle, 24, get_vehicle_mod(vehicle, 24), !get_vehicle_mod_variation(vehicle, 24));

 

Thanks excellent, thanks so much.. Love your coding style.

 

 

I'll keep you guys posted on my progress with tyre smoke.. if I have any ! :p

Edited by fOmey

You should release it, I know a few people with pretty high power computers and would be happy to run it in the background.

 

Here is my unfinished tool... Yeah, no need to finish it now -> thank you Alexander :D More time for other things ;)

 

 

Here is the bruteforce what I've been using , check the readme first , link is added into the 1st post as well

 

multithreaded native bruteforce

Awesome work, love the multithread support :cookie:

Can anyone shed some light on how native "GET_CLOSEST_OBJECT_OF_TYPE" works ? Does this work off coordinates as get_closest_vehicle ?

 

Some further explanation of the params would be appreciated.

Edited by fOmey
unknown modder

Can anyone shed some light on how native "GET_CLOSEST_OBJECT_OF_TYPE" works ? Does this work off coordinates as get_closest_vehicle ?

 

Some further explanation of the params would be appreciated.

var object = get_closest_object_of_type(x_pos, y_pos, z_pos, max_distance, object_hash, unk_bool);

Its pretty similar to get closest vehicle only you have to specify the exact model hash you're searching for

  • Like 2

 

 

 

 

 

Can anyone shed some light on how native "GET_CLOSEST_OBJECT_OF_TYPE" works ? Does this work off coordinates as get_closest_vehicle ?

 

Some further explanation of the params would be appreciated.

var object = get_closest_object_of_type(x_pos, y_pos, z_pos, max_distance, object_hash, unk_bool);

Its pretty similar to get closest vehicle only you have to specify the exact model hash you're searching for

 

 

Thank you very much, that helps alot.

 

 

I was actually about to edit my post to add a additional question, I just started messing about with "SET_ENTITY_HEADING" & "GET_ENTITY_HEADING".

 

The goal is to code a spin function of such, this is what I have:

Natives.set_entity_heading(vehicleID, Natives.get_entity_heading(vehicleID) + 10f);

I also have a identical function although "-10f" to spin the opposite way.

 

 

It works the first time executing, although if I attempt to execute it again to spin further more.. it simply doesn't.

 

"GET_ENTITY_HEADING" returns a float if I'm not mistaken, along with "SET_ENTITY_HEADING" second param being a float also.. is this correct ?

 

Is their any reason why this wouldn't work after the initial interaction ?

 

 

 

 

 

EDIT:

 

I think I was going about it wrong, the heading acts like a angle I believe...

 

I used the following:

            switch ((int)lastSpin)            {                case 0:                    Natives.set_entity_heading((int)vehicleID, 45f);                    lastSpin = 1;                    break;                case 1:                    Natives.set_entity_heading((int)vehicleID, 90f);                    lastSpin = 2;                    break;                case 2:                    Natives.set_entity_heading((int)vehicleID, 135f);                    lastSpin = 3;                    break;                case 3:                    Natives.set_entity_heading((int)vehicleID, 180f);                    lastSpin = 4;                    break;                case 4:                    Natives.set_entity_heading((int)vehicleID, 225f);                    lastSpin = 5;                    break;                case 5:                    Natives.set_entity_heading((int)vehicleID, 270f);                    lastSpin = 6;                    break;                case 6:                    Natives.set_entity_heading((int)vehicleID, 315f);                    lastSpin = 7;                    break;                case 7:                    Natives.set_entity_heading((int)vehicleID, 360f);                    lastSpin = 0;                    break;            }
Edited by fOmey
unknown modder

 

 

 

 

 

 

Can anyone shed some light on how native "GET_CLOSEST_OBJECT_OF_TYPE" works ? Does this work off coordinates as get_closest_vehicle ?

 

Some further explanation of the params would be appreciated.

var object = get_closest_object_of_type(x_pos, y_pos, z_pos, max_distance, object_hash, unk_bool);

Its pretty similar to get closest vehicle only you have to specify the exact model hash you're searching for

 

 

Thank you very much, that helps alot.

 

 

I was actually about to edit my post to add a additional question, I just started messing about with "SET_ENTITY_HEADING" & "GET_ENTITY_HEADING".

 

The goal is to code a spin function of such, this is what I have:

Natives.set_entity_heading(vehicleID, Natives.get_entity_heading(vehicleID) + 10f);

I also have a identical function although "-10f" to spin the opposite way.

 

 

It works the first time executing, although if I attempt to execute it again to spin further more.. it simply doesn't.

 

"GET_ENTITY_HEADING" returns a float if I'm not mistaken, along with "SET_ENTITY_HEADING" second param being a float also.. is this correct ?

 

Is their any reason why this wouldn't work after the initial interaction ?

My only suggestion is your heading may be at 360 degrees, and if you try and set a heading > 360 it wont change

Here is setting RP:

// enumerationenum CharRP{    char1 = 0x3E68C21F, // mp0_char_xp_fm    char2 = 0x74693442, // mp1_char_xp_fm    char3 = 0xFF09C2A9, // mp2_char_xp_fm    char4 = 0x6272E33B, // mp3_char_xp_fm    char5 = 0x494A75B3, // mp4_char_xp_fm}; // methodvoid SetRP(uint Char, int RP){    STAT_SET_INT(Char, RP);} // example callsSetRP(char1, 0);SetRP(0x3E68C21F, 0);

EDIT: Here is setting rank (untested).

// enumerationenum CharRank{    char1 = 0xA888343F, // mp0_char_rank_fm    char2 = 0x22F6EB98, // mp1_char_rank_fm    char3 = 0xD3342A23, // mp2_char_rank_fm    char4 = 0xB2614471, // mp3_char_rank_fm    char5 = 0x92F6FB54, // mp4_char_rank_fm};// methodvoid SetRank(uint Char, int Rank){    STAT_SET_INT(Char, Rank);}// example callsSetRank(char1, 0);SetRank(0xA888343F, 0);
Edited by XeClutch

Is there any compiler out ?

 

I was writing mine, but it a lost of time if there is already one released.

Probably someone will release a compiler after GTAV PC release .

Right now some are using RPC as a method to call natives .

Is there any compiler out ?

 

I was writing mine, but it a lost of time if there is already one released.

Nope.

 

 

Is there any compiler out ?

 

I was writing mine, but it a lost of time if there is already one released.

Probably someone will release a compiler after GTAV PC release .

Right now some are using RPC as a method to call natives .

 

Alex said he would port scocl to V after PC release.

Alexander

Please Don't Pass Away,Run,Stop Playing,etc before Making V Scocl. xD

 

Really will you make a v Scocl. Ofcourse It won't work with The GTA IV one?

 

Although i am very confused. the game files were written in low level.

how did you make them high level even before the game pc release?

 

Also i would like to thank you. I've converted some v files to iv and compiled them using Scocl. it is awesome!

 

All RAGE Games uses the same bytecode

Does GTA V Use SCO also. and you will make a compiler called V Scocl?

 

and the HELL! the same as gta iv variables, IU(any number) sub(any number) G_(any word)

and also what are those memory addreses example.(0x4B37333C) there is no a documentation in gtamodding. and gta iv was C and GTA V is C++ cool.

 

edit : Is there any IRC server where you guys talk about your researchs ?

I hate IRC, Teamspeak(Teamsh*t) and all these kinds of things. i can't join LAPD in SA-MP becuase of Teamsh*t.

anyways here are my expectations

Skype

Mobile

Cacao

Tango

Teamsh*t3

Online Chat Box

IRC Server *LOL*

 

and what is matrix?

and fromwhere you got these lowlevel codes?

First of all, we can generate high level code from low level.

The syntax of GTA IV's one and GTA V' one is the same because, sub_XXXX means subroutine_XXXX.

 

A subroutine is a portion of code (a function if you want) called from an other portion of code, G_XXX means Global_XXX for a global variable, that's why.

Those "memory addresses" (I suppose you're talking about the one used to call natives) are the native's hash, they were documented on GTA IV because we had the list of them, unfortunately we don't have it on GTA V, so we need to use their hash.

Some of these hash are documented, look at the first page of this topic.

 

Then, both GTA IV and GTA V we're written in C++ ;)

 

Finally, the lowlevel code on my sign is from SA-MP, this was when I was developping an open source version of SA-MP.

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
  • 0 User Currently Viewing
    0 members, 0 Anonymous, 0 Guests

×
×
  • Create New...

Important Information

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