Shopping Cart
How ToVideo Addons how to and converting to an addon

Checklist of all wheels for GTA V/FiveM autos and a small information how one can use it in your scripts – Modding Tutorials


FiveM Modding Tutorial

Howdy, I’ve been engaged on some customized scripts just lately and have did not discover a record of full, up to date wheels in GTA V.
So I took it as much as myself to compile such an inventory and share it with y’all.
Idk which tag within the title to make use of for this one, don’t hate me for it please.

Remember the fact that you’ll have to really write some code to utilise this, copy pasting stuff is not going to work. Particularly with ESX menus.


gtavwheels.json (70.9 KB)

VirustTotal of a JSON file, for these on the market who gained’t click on obtain and not using a virus scan.


You should utilize this JSON file nonetheless you wish to however the meant methodology of utilization is:

  1. Use this guide to load the JSON file server aspect

  2. Ship the info you will have loaded utilizing the information to the consumer, you’ll most likely have to make use of a customized script that will seem like this on the consumer aspect to load the info, presumably in a occasion handler. :slight_smile:

    -- Make these world (at high of script)
    native WheelsSport = {}

    native WheelsMuscle = {}

    -- Add the remaining


    -- Put the code beneath in a occasion handler

    for i = 1, #information, 1 do

        if (information[i].CarType == 0) then

            desk.insert(WheelsSport, {Class = information[i].CarType, Label = information[i].Wheel, vID = information[i].vID})

        elseif (information[i].CarType == 1) then

            desk.insert(WheelsMuscle, {Class = information[i].CarType, Label = information[i].Wheel, vID = information[i].vID})


        -- This operate shouldn't be completed, it is advisable to full it with the opposite Wheel varieties.

        -- https://docs.fivem.web/natives/?_0xB3ED1BFB4BE636DC


There’s a information on the underside of the publish with elements of the code that may assist you with implementing this in your scripts.

:question:How do I exploit this with ESX?

ESX.Recreation.SetVehicleProperties(automobile, {

        wheels = 0,

        modFrontWheels =  -1

This units automobile wheel kind to sport and wheel mod to default, change values with what suits your code.

:question:How do I exploit this with out ESX?

SetVehicleWheelType(automobile, 0)
SetVehicleMod(automobile, 23, -1)

Units automobile to sport with default wheels mod, additionally change values with what suits your code.

:interrobang:I don’t wish to use this record however to make gamers solely capable of purchase wheels for the automobile they’re driving.

You normally wish to get all obtainable wheels in a single record, this one is appropriate to be used with ESX menus, simply change worth to what you’re going to make use of.

native Wheels = {}
for i = -1, GetNumVehicleMods(automobile, 23) -1, 1 do
    desk.insert(Wheels, {label = GetLabelText(GetModTextLabel(automobile, 23, i)), worth="changeme", vID = i}

:bulb: use it with a ESX menu

 native parts = Wheels
   if (information.present.worth == 'changeme') then
    for i = 1, #Wheels, do
     if (information.present.vID == Wheels[i].vID) then
      ESX.Recreation.SetVehicleProperties(automobile, {
          wheels = Wheels[i].Class,
          modFrontWheels = Wheels[i].vID

:question: show all of the wheel classes for any kind of car?

Create a brand new ESX menu with parts containing your wheel varieties.

parts = {
  {label="Sport", worth="wheels_sport", class = 0},
  {label="Muscle", worth="wheels_muscle", class = 1}
-- ^ end the record with the sorts of wheels you need

Use some code from above to vary the automobile kind to the one chosen.
It is advisable add the chosen record (that you simply added earlier than, with a occasion handler) to a brand new parts record in a brand new sub-menu.

native elementsSport = {}
if (information.present.worth == 'wheels_sport') then 
  for i = 1, #WheelsSport, 1 do
    desk.insert(elementsSport, {label = WheelsSport[i].Label, worth="changeme", class =  WheelsSport[i].Class, vID = WheelsSport[i].vID} 
-- If a person has chosen a menu choice for sport wheels, we'll load the wheels situated in WheelsSport

Now we deal with person choice inside the brand new menu that exhibits all wheels and labels.

if (information.present.worth == 'changeme') then
        ESX.Recreation.SetVehicleProperties(automobile, {
                wheels = information.present.class,
                modFrontWheels =  information.present.vID

That’s just about it.
In the event you created your menus and sub-menus accurately and loaded the JSON information into particular classes like proven how one can originally of the publish you’ll be set to go and use this.

As soon as once more, the menu examples proven right here is not going to work should you copy + paste, it is advisable to make your individual menus and construction them accordingly

When you’ve got observed something improper with the code offered on this publish or with the JSON file please notify me ASAP and I’ll attempt to make modifications if wanted.
There is likely to be a wheel or two lacking because of the method I checked for wheels however it looks as if I bought essentially the most of them.

If anybody is , right here is the code I used to acquire the record.

    native automobile = GetVehiclePedIsIn(PlayerPedId(), false)
    SetVehicleModKit(automobile , 0)

    -- Bikes are i = 6
    -- So for the first set (0-5) I set the i loop to five instances, then I used a unique little bit of code you'll find on the backside for bikes.
    -- So after bikes have been achieved, I set i again to 7 and accomplished the loop.

    for i = 1, 11, 1 do

        print('Setting automobile wheel class to ' .. i)

        ESX.Recreation.SetVehicleProperties(automobile, {

            wheels = i


        print('Car wheel class set to ' .. GetVehicleWheelType(automobile))

        for b = -1, GetNumVehicleMods(automobile, 23) -1, 1 do

            if (GetModTextLabel(automobile, 23) == nil) then

                print('Error! Did you set modkit?')



                desk.insert(VehicleWheels, {CarType = WheelType, Wheel = GetLabelText(GetModTextLabel(automobile, 23, b)), ID = b})

                print('Verify ' .. b .. ' for ' .. GetVehicleWheelType(automobile))




Code I used to get bike wheels

for i = -1, GetNumVehicleMods(automobile, 23) -1, 1 do

        if (GetModTextLabel(automobile, 23) == nil) then

            print('Error! Did you set modkit?')


            desk.insert(VehicleWheels, {CarType = GetVehicleWheelType(automobile), Wheel = GetLabelText(GetModTextLabel(automobile, 23, i)), ID = i})

            print('Verify ' .. i .. ' for ' .. GetVehicleWheelType(automobile))



Edit: I observed after posting that you should utilize the strategy I used to get the record to vary the autos wheel kind to what the participant has chosen after which do GetNumVehicleMods for the brand new wheel class that has been set to the automobile. :slight_smile:

Thanks for studying!


Authentic supply: https://discussion

Leave a Reply
FiveM ESX Scripts

The best scripts and maps

Best support

Problems? We are there to help!

Wide range of products

We have a wide range of products

100% Secure Checkout

Easy and encrypted