🔧Config

Explanations for all config values.

General Information

Additional Settings If there is a feature within the script that you can't find in the script's config, there is a chance that the configuration lies within Zyke Lib. Keymapping When stated to utilize keymapping, the key can be changed in your GTA / FiveM keybinds. Keys All available keys can be found here. Prop Models All prop models can be found here. Ped Models All ped models can be found here. Blip Settings All blip settings can be found here.

Config.Settings

All basic settings.

debug

Debugging is a development tool used to track values within the resource. If you are experiencing odd issues, we recommend using the debug functionality to have a transparent view of what happens within the script. Utilizing debug can help you spot weird values and easily address the problem. Example:

debug = false

displayGarageCoverage

This is another development tool. By enabling this you can have a rough overview of the garages spread out across the map. This can help locate deadspots where the accessibility to very limited. Example:

displayGarageCoverage = false

language

Set this to a language file available. By default there is "en". You can create your own translations in the locales folder and set your language here. Example:

language = "en"

ensureVehicleExistence

If the vehicle has a parked state of 0, which means that it is not parked, and it does not exist in the world, enabling this setting will ensure that it exists in the default impound. This is to prevent situations where your vehicle has been taken out, removed for any reason and can no longer be used. Example:

ensureVehicleExistence = true

vehiclesMenuKey

The default key used to open the vehicle actions menu. It is utilizing FiveM's keymapping, which means each person can adjust this in their game settings. Example:

vehiclesMenuKey = "U"

gradeNameSeparator

When handling and tracking profession-based access we separate other types of identifiers from profession grades by adding this separator at the very beginning. If you have any grades with the separator already in their name, it will cause issues. It will format "chief" to "grade:chief". Example:

gradeNameSeparator = "grade:"

logsMasterSwitch

Easily enable or disable all logging with a master switch. Example:

logsMasterSwitch = true

useDeformation

By enabling this, we utilize a 3rd party script to track the deformation on your vehicle. This is to more accurately track and apply damages to your vehicle. Example:

useDeformation = true

reservedBuckets

Routing buckets are what is used to distribute people across "private sessions". We utilize them to only display entities or players in certain private garages or prevent problems when using the garage builder. When entering a private garage it will take the reserved value plus the index of the garage, which is basically in which order you created the garages. So if you have 100 garages, your range would be between 1001-1101 if you have 1000 as your value. It is important that these are unique to not cause any issues with other resources. Example:

reservedBucket = 1000

vinLength

Number of characters the vin number will be. Should not touch this. Note that if you change this after vehicles have received a vin, it may break certain functionalities, also important that it has to be larger than entity identifiers, which is ~7 Example:

vinLength = 13

lockNpcCars

Enabling this will create a loop running in the background to ensure all vehicles that are not owned to be locked. There is built-in functionality for temporary keys to these vehicles, so they are not completely disabled to use. Example:

lockNpcCars = true

impound

Various settings for the impounds.

impound = {
    command = "impound",
    defaultPrice = 2500,
    priceStepper = 500,
    useSocietyPayout = true,
    jobs = {
        {name = "mechanic", garage = "mechanic_impound", society = "mechanic", label = "Mechanic", restricted = 6, maxPrice = 20000, allowLicenseRequirement = true},
        {name = "police",  garage = "police_impound", society = "police", label = "Police", maxPrice = 50000, allowLicenseRequirement = true},
        {name = "security",  garage = "security_impound", society = "security", label = "Security", restricted = 3, maxPrice = 5000},
    },
    length = {
        {value = 0, label = "Available Instantly"},
        {value = 3600, label = "1 Hour"},
        {value = 14400, label = "4 Hours"},
        {value = 43200, label = "12 Hours"},
        {value = 86400, label = "1 Day"},
        {value = 172800, label = "2 Days"},
        {value = 345600, label = "4 Days"},
        {value = 604800, label = "7 Days"},
    },
}

impound.command

Command to prompt the impound menu. Example:

command = "impound"

impound.defaultPrice

Default price is applied when you get your vehicle through ensureVehicleExistenceor the onRestart functionality. Example:

defaultPrice = 2500

impound.priceStepper

This is the stepper for the impound price using the ox_lib slider. Every "tick" on the slider is now the stepper instead of 1, this allows for easy and accurate adjustment at higher prices. Recommended to have the defaultPrice and impound max prices divisible by the stepper for a smoother end result.

Example:

impound = {
    priceStepper = 500,
}

impound.useSocietyPayout

If enabled, all the money paid for impounds will go to the society account of the impounder. If disabled, it will not pay out to anything, just remove the money from the player. Example:

useSocietyPayout = true,

impound.jobs

All jobs able to perform impound actions. Example:

jobs = {
    {name = "mechanic", garage = "mechanic_impound", society = "mechanic", label = "Mechanic", restricted = 6, maxPrice = 20000, allowLicenseRequirement = true},
    {name = "police",  garage = "police_impound", society = "police", label = "Police", maxPrice = 50000, allowLicenseRequirement = true},
    {name = "security",  garage = "security_impound", society = "security", label = "Security", restricted = 3, maxPrice = 5000},
},

impound.jobs[x].name

The name of the job. Example:

name = "mechanic"

impound.jobs[x].label

Neatly typed label for the menu. Example:

label = "Mechanic"

impound.jobs[x].restricted

Utilizing the restricted value, you can restrict the max time a job can impound a vehicle for. The number you set is the index inside of lengths found here: impound.length. Restricting in this way means that the vehicle can not have it's impound fee paid for and can not be driven at all. This is recommended to only be utilized by law enforcement. Set the value to 1 to completely disable this feature as it will only allow the impounder to set it to instantly available. Example:

restricted = 6

impound.jobs[x].maxPrice

Limit the max price this job can set as your impound fee. Recommended to have it divisble by the price stepper to make the UI cleaner. Example:

maxPrice = 20000

impound.jobs[x].allowLicenseRequirement

If enabled, your job can require a drivers license for the owner of the vehicle to pay the impound fee. This is mainly meant for police when they remove someone's license, impounds the vehicle and don't want them to access the vehicle before receiving a new license. Example:

allowLicenseRequirement = true

impound.length

Different lengths impounders can lock a vehicle for. Always keep at least one value in here, otherwise it is free to change however you want. Example:

length = {
    {value = 0, label = "Available Instantly"},
    {value = 3600, label = "1 Hour"},
    {value = 14400, label = "4 Hours"},
    {value = 43200, label = "12 Hours"},
    {value = 86400, label = "1 Day"},
    {value = 172800, label = "2 Days"},
    {value = 345600, label = "4 Days"},
    {value = 604800, label = "7 Days"},
}

impound.length[x].value

The length of the restriction in seconds.

Example:

value = 3600

impound.length[x].label

Neatly typed label for the option.

Example:

label = "1 Hour"

retrictedProfessions

Adding a profession into here will restrict their profession-locked vehicles. Parking, accessing and transferring to other garages will be locked. You will only be able to access the profession-locked vehicles inside of garages that are locked to that profession. Note that you can still transfer your vehicles from another garage into the profession garage in case it has appeared there for some reason, such as switching this setting. Example:

restrictedProfessions = {
    ["police"] = true,
    ["mechanic"] = true,
    ["lostmc"] = true,
},

storeVehicle

Various settings for storing vehicles. Example:

storeVehicle = {
    openKey = "E",
    displayOptions = {
        drawMissionText = false,
        textOnPlayer = false,
        helpNotification = true,
    },
}

storeVehicle.openKey

Default key to press to store your vehicles. Utilizes keymapping. Example:

openKey = "E"

storeVehicle.displayOptions

Various display options to visualize that you are in an area where you can store your vehicle. Example:

displayOptions = {
    drawMissionText = false,
    textOnPlayer = false,
    helpNotification = true,
}

blipDetails

Global blip settings for all garages, unless new settings are applied in the garage builder. Example:

blipDetails = {
    enabled = true,
    icon = 357,
    scale = 0.8,
    color = 3,
    shortRange = true,
    scaleRange = {0.2, 1.0},
}

blipDetails.enabled

Enable or disable the blip. Example:

enabled = true

blipDetails.icon

The icon for the garage blip on the map. Example:

icon = 357

blipDetails.scale

The scale / size of the blip. The default is a great middleground, can be smaller if you want to make the map more clean. Example:

scale = 0.8

blipDetails.color

Color of the blip, set to -1 to disable.

Example:

color = 3

blipDetails.shortrange

Enabling shortrange will hide the icon on your minimap unless you are close enough to it where it can be properly shown. Recommended to keep this set as true, otherwise your minimap will get very cluttered. Example:

shortRange = true

blipDetails.scaleRange

Minimum and maximum scale allowed for the blip settings in the garage builder. This means that the garage builder can set the blip to any value in here. Recommended to modify to your server's needs, perhaps even setting both the minimum and maximum to the default scale to enforce consitency throughout the map. Note that anything below 0.2 will be invisible, hence why the minimum is set as that. Example:

scaleRange = {0.2, 1.0}

fakePlate

Various settings for the fake plate. Example:

fakePlate = {
    ensureUniqueFakePlate = false,
}

fakePlate.ensureUniqueFakePlate

If enabled, you can not set a fake plate to any real for or any other fake plate. This means that all plates will be unique. If you want fake plates to be a part of your server where a criminal can mask their vehicle, keep this false. Example:

ensureUniqueFakePlate = false

wipeVehicle

Various settings for the wipe vehicle functionality. Note that you have to sit in a vehicle to wipe it. Example:

wipeVehicle = {
    enabled = true,
    command = "wipevehicle",
    permission = "admin",
}

wipeVehicle.enabled

Enable/disable this functionality enitrely. Example:

enabled = true

wipeVehicle.command

The command for wiping a vehicle. Example:

command = "wipevehicle"

wipeVehicle.permission

The required permission to perform this action. Example:

permission = "admin"

setPlate

Various settings for setting a vehicle plate. Example:

setPlate = {
    enabled = true,
    command = "setplate",
    permission = "admin",
}

setPlate.enabled

Enable/disable this functionality entirely. Example:

enabled = true

setPlate.command

The command for setting a plate. Example:

command = "setplate"

setPlate.permission

The required permission to perform this action. Example:

permission = "admin"

saveVehicle

Various settings for saving the vehicle manually. This functionality is mainly meant to aid jobs that modify your vehicle. Instead of driving it into the garage to save it, running the command will do it. Utilizing our save system will ensure that you have the correct values in the database. Can also be used for mechanics or other jobs that can repair vehicles. Note that we also offer an export to do this (LINK EXPORT). Example:

saveVehicle = {
    command = "savevehicle",
    jobs = {"mechanic", "bennys"}
}

saveVehicle.command

The command to save the vehicle. Example:

command = "savevehicle"

saveVehicle.jobs

The jobs allowed to manually save a vehicle. This is recommended to limit to jobs that can modify or repair vehicles. Example:

jobs = {"mechanic", "bennys"}

claimVehicle

Various settings for claiming vehicles. Example:

claimVehicle = {
    command = "claimvehicle",
    enabledForPersonalVehicles = true,
    enabledForPublicVehicles = true,
    permission = "admin",
}

claimVehicle.command

Command to claim a vehicle. Example:

command = "claimvehicle"

claimVehicle.enabledForPersonalVehicles

Enabling this feature allows admins to claim another person's vehicle and transfer the ownership. Example:

enabledForPersonalVehicles = true

claimVehicle.enabledForPublicVehicles

Enabling this feature allows admins to claim "NPC" vehicles and transfer the ownership. This means that any vehicle that is not owned in the database can be claimed. Example:

enabledForPublicVehicles = true

claimVehicle.permission

The permission required to perform this action. Example:

permission = "admin"

vehicleTypes

All vehicle types that exist. Not recommended to touch, unless chaning the label. Example:

vehicleTypes = {
    {name = "automobile", label = "Car"},
    {name = "bike", label = "Bike"},
    {name = "trailer", label = "Trailer"},
    {name = "boat", label = "Boat"},
    {name = "submarine", label = "Submarine"},
    {name = "heli", label = "Helicopter"},
    {name = "plane", label = "Plane"},
    {name = "train", label = "Train"},
}

vehicleTypes[x].name

The name for the vehicle type. Do not touch as all types are already added and properly named.

vehicleTypes[x].label

Neatly typed label for the menu. Example:

label = "Car"

lockpicking

Various settings for lockpicking vehicles. All of these settings are part of the unlocked lockpicking file, so if not used, all of it can be removed. Example:

lockpicking = {
    enabled = true,
    restrictedVehicles = {
        temp = false,
        personal = false,
        profession = true,
    },
    timeToLockpick = 10000,
    items = {
        ["lockpick"] = {timeMultiplier = 1.2},
        ["advancedlockpick"] = {timeMultiplier = 0.5}
    },
    dict = "anim@gangops@facility@servers@",
    anim = "hotwire",
}

lockpicking.enabled

Enable or disable lockpicking with a simple switch Example:

enabled = true

lockpicking.restrictedVehicles

Enable or disable the ability to lock certain vehicles. Enabling a category here will restrict that category from being able to be lockpicked. Example:

restrictedVehicles = {
    temp = false,
    personal = false,
    profession = true,
}

lockpicking.restrictedVehicles.temp

Temporary vehicles are vehicles that are not owned by anyone. If you have lockNpcCars set to true, this setting allows you to pick the locks of those vehicles. Note that vehicles with given temp keys, such as rented vehicles, also fall under this category. Example:

temp = false

lockpicking.restrictedVehicles.personal

Personal vehicles are simply vehicles owned by players. Example:

personal = false

lockpicking.restrictedVehicles.profession

Profession vehicles are vehicles owned by jobs or gangs. Example:

profession = true

lockpicking.timeToLockpick

The time it takes to lockpick a vehicle, in seconds. Example:

timeToLockpick = 10

lockpicking.items

The available lockpicking items that you can use and their settings. Example:

items = {
    ["lockpick"] = {timeMultiplier = 1.2},
    ["advancedlockpick"] = {timeMultiplier = 0.5}
}

lockpicking.items[x].timeMultiplier

This setting allows you to use different tiers of lockpicks to speed up or slow down the time it takes. It is a multiplier for the original value. 1.2 will make it take 20% longer. Example:

timeMultiplier = 1.2

lockpicking.dict

The animation dictionary that will be used when lockpicking. Example:

dict = "anim@gangops@facility@servers@"

lockpicking.anim

The animation "clip" that will be used when lockpicking. This is the specific animation inside of the dictionary. Example:

anim = "hotwire"

garageTransfers

Various settings for garage transfers. Example:

garageTransfers = {
    enabled = true,
    automaticTransfer = false,
    price = 1250,
}

garageTransfers.enabled

Enable or disable transferring vehicles between different garagers. Example:

enabled = true

garageTranfers.automaticTransfers

Enabling this will remove the transfer button and let you take our vehicles out without any extra steps. The price, if it does cost to take vehicles out, will be displayed and paid when you take the vehicle out. This functionality exists for those that want to open the garage and drive away swiftly. Example:

automaticTransfer = false

gargeTransfers.price

This is the price you pay when transferring your vehicles. Set to 0 to disable. Example:

price = 1250

initializeVehicles

Various settings for initializing vehicles, this is for migrating vehicles from an old garage system to ours. Example:

initializeVehicles = {
    permission = "admin",
    command = "dev_initvehicles",
}

initializeVehicles.permission

The permission required to run the command. Example:

permission = "admin"

initializeVehicles.command

Command to initialize vehicles. Example:

command = "dev_initvehicles"

garageBuild

Various settings for the garage builder. Example:

garageBuild = {
    command = "garage_build",
    jobs = {"realestate"},
    permission = "admin",
}

garageBuild.command

The command to open the garage builder. Example:

command = "garage_build"

garagebuild.jobs

Jobs allowed to open the garage builder. This is recommended to only allow individuals that create properties to use. With this ability they can create and modify garages. Note that you can only modify garages made by your current job, unless you are an admin. Admins can change the creator job to lock it or allow a new job to manage it. Example:

jobs = {"realestate"}

garageBuild.permission

Permission required to open the menu without having the proper job. Having the correct permission also allows you to manage any garage and change the creator value, meaning you can lock modifications to garages. Example:

permission = "admin"

spawnMenu

Various settings and display functions for the spawn menu. Example:

spawnMenu = {
    openKey = "E",
    displayers = {
        marker = {
            enabled = true,
            func = function()
                -- Function can be found in the config file
            end,
        },
        text3d = {
            enabled = true,
            func = function()
                -- Function can be found in the config file
            end,
        }
    }
}

spawnMenu.openKey

The key to open the garage menu when inside of a spawn menu zone. This is only relevant if you are not using a target system. Example:

openKey = "E"

spawnMenu.displayers

Various displayers to show where the spawn menu is at. Set enabled to true to utilize them. You can edit the functions as you wish to display it differently. By default they are fading in using size and opacity. Example:

displayers = {
    marker = {
        enabled = true,
        func = function()
            -- Function can be found in the config file
        end,
    },
    text3d = {
        enabled = true,
        func = function()
            -- Function can be found in the config file
        end,
    }
}

deleteGarage

Various settings for deleting garages If you want to completely disable deleting garages, set allowedForCreator to false and permission to nil. You can still delete garages that are still being created, as cancelling the creation completely deletes the progress. Example:

deleteGarage = {
    allowedForCreator = true,
    permission = "admin",
}

deleteGarage.allowedForCreator

Allow the creator of the garage to delete it. Note that it checks for the job, so anyone with the real estate job can delete garages created by another real estate agent. Example:

allowedForCreator = true

deleteGarage

If you want your admins to be able to delete garages despite not having the correct job, you can set this to true. Set the permission to nil or remove it completely to remove this feature. Example:

permission = "admin"

garageInterior

Various settings and locations for the garage interiors. Example:

Config.Settings = {
    exitGarage = "E",
    interiors = {
        {
            label = "Small (2 Slots)",
            name = "small_car",
            allowedTypes = {"automobile", "bike"},
            teleport = vec4(178.96, -1000.28, -98.99, 179.49),
            computer = {
                target = vec3(172.93, -999.41, -98.97),
                position = vec3(172.96463012695, -1000.1442260742, -98.999992370605),
            },
            vehiclePositions = {
                vec4(174.9736328125, -1004.135925293, -99.98, 180.0),
                vec4(171.43930053711, -1004.1841430664, -99.98, 180.0),
            }
        },
        -- 6 vehicles, 10 vehicles and hangar are also mapped in the config
    }
}

garageInterior.existGarage

Key to exit the garage when you are in the correct location. Example:

exitGarage = "E"

garageInterior.interiors

A list of available interiors that you can use. Example:

interiors = {
    {
        label = "Small (2 Slots)",
        name = "small_car",
        allowedTypes = {"automobile", "bike"},
        teleport = vec4(178.96, -1000.28, -98.99, 179.49),
        computer = {
            target = vec3(172.93, -999.41, -98.97),
            position = vec3(172.96463012695, -1000.1442260742, -98.999992370605),
        },
        vehiclePositions = {
            vec4(174.9736328125, -1004.135925293, -99.98, 180.0),
            vec4(171.43930053711, -1004.1841430664, -99.98, 180.0),
        }
    },
    -- 6 vehicles, 10 vehicles and hangar are also mapped in the config
}

garageInterior.interiors[x].label

Neatly typed label for the menu. Example:

label = "Small (2 Slots)"

garageInterior.interiors[x].name

A unique identifier for the garage. Can be anything, as long as it's unique, but recommended to be somewhat descriptive of what interior it is. Example:

name = "small_car"

garageInterior.interiors[x].allowedTypes

The allowed vehicle types for the garage. This will mostly be limited to automobile and bike as they are the only ones to fit. Example:

allowedTypes = {"automobile", "bike"}

garageInterior.interiors[x].teleport

This is the location you will be teleported to when entering the interior, or teleport from to the outside. Make sure to provide x, y, z and the heading. Example:

teleport = vec4(178.96, -1000.28, -98.99, 179.49)

garageInterior.interiors[x].computer

The location for the computer, so that you can transfer vehicles, inside of the garage. Make sure to configure based on your settings, if you are using a target system or not. Example:

computer = {
    target = vec3(235.8563, -975.5742, -98.9819),
    position = vec3(235.1254, -976.1618, -98.9999)
}

garageInterior.interiors[x].vehiclePositions

The locations for the vehicles inside of the interior. This can be modified to fit more or less vehicles, or just rearrange them if wanted. Make sure to provide x, y, z and the heading. Example:

vehiclePositions = {
    vec4(174.9736328125, -1004.135925293, -99.98, 180.0),
    vec4(171.43930053711, -1004.1841430664, -99.98, 180.0),
}

vehicleActions

Various settings for vehicle actions. Example:

vehicleActions = {
    maxDistance = -1,
}

vehicleActions.maxDistance

The max distance to perform vehicle actions. Configuring this to -1 will allow you to perform any vehicle actions despite the distance between you and the vehicle. If set to any number, that will be the max distance between you and the vehicle to perform any actions to it. Example:

maxDistance = -1

availableProfessions

Do not touch.

garageSettings

Various settings for garage settings. Example:

garageSettings = {
    command = "garage_settings",
    kvp = "garage_personal_settings",
    settings = {
        {
            name = "displayLockedGarages",
            default = false,
            enabledIcon = "fa-solid fa-eye",
            disabledIcon = "fa-solid fa-eye-slash",
            onSelect = function(name)
                ToggleGarageSettings(name)

                RefreshGarageBlips()
            end
        }
    }
},

garageSettings.command

The command to open the menu.

Example:

command = "garage_settings"

garageSettings.kvp

This identifier decides where the information is stored. We utilize the client's kvp storage to store the settings. This means that the settings are completely client-sided. Should not need to change this key, but you can if you wish. Just remember to keep it as unique key. Example:

kvp = "garage_personal_settings"

garageSettings.settings

A list of settings. Should not touch this unless you are changing icons or the default option. Example:

settings = {
    {
        name = "displayLockedGarages",
        default = false,
        enabledIcon = "fa-solid fa-eye",
        disabledIcon = "fa-solid fa-eye-slash",
        onSelect = function(name)
            ToggleGarageSettings(name)

            RefreshGarageBlips()
        end
    }
}

garageSettings.name

A unique name for the setting. Can be changed, but not recommended to touch. Example:

name = "displayLockedGarages"

garageSettings.default

The default value for this setting. Example:

default = false

garageSettings.enabledIcon

Icon in the menu when the setting is enabled. Example:

enabledIcon = "fa-solid fa-eye"

garageSettings.disabledIcon

Icon in the menu when the setting is disabled. Example:

disabledIcon = "fa-solid fa-eye-slash"

garageSettings.onSelect

The function that runs when you press the option in the menu. Probably shouldn't touch. Example:

onSelect = function(name)
    ToggleGarageSettings(name)

    RefreshGarageBlips()
end

keys

Various settings for keys. Example:

keys = {
    enabled = false,
    item = "vehicle_keys",
    newKeyPrice = 500,
},

keys.enabled

Enabling this will completely switch over to our item-based access system. Ownership works like usual, but the access to a vehicle is completely determined by the keys in your inventory. Example

enabled = false

keys.item

The name of the item for the vehicle keys. Example:

item = "vehicle_keys"

keys.newKeyPrice

The price to pay to get a new key. Set to 0 to get them for free. Example:

newKeyPrice = 500

persistentVehicles

Various settings for persistent vehicles. Note that all of the cleanup settings for these vehicles can be found in the garage builder menu. Example:

persistentVehicles = {
    kvpString = "persistent_vehicles",x
    distances = {
        registerInteraction = 50,
        registerInProximity = 200,
    },
    cleanup = {
        permission = "admin",
    }
}

persistentVehicles.kvpString

Don't touch this unless you know what you are doing. Should not need to be changed.

persitentVehicles.distances

Various settings for registering distances. Should not change these values, hence why they're not part of the cleanup settings ui. Example:

distances = {
    registerInteraction = 50,
    registerInProximity = 200,
},

persistentVehicles.distances.registerInteraction

The units between you and the vehicle to register that you are within the interaction range. Example:

registerInteraction = 50

persistentVehicles.distances.registerInProximity

The units between you and the vehicle to register that you are in the proximity of it. Example:

registerInProximity = 200

persistentVehicles.cleanup

Various settings for cleanup. Example:

cleanup = {
    permission = "admin",
}

persistentVehicles.cleanup.permission

The permission required to change the cleanup settings. Example:

permission = "admin"

Config.Database

This is where we have translated previous database values into our own. This is to make the script framework-independent and allow you to migrate from other garages to ours by changing values. With this approach you can easily switch over to our script without any database hassle. Example:

Config.Database = {
    ["QBCore"] = {
        ["player_vehicles"] = "player_vehicles",

        -- Previously exsting
        ["id"] = "id",
        ["license"] = "license",
        ["owner"] = "citizenid",
        ["vehicle"] = "vehicle",
        ["mods"] = "mods",
        ["plate"] = "plate",
        ["fakePlate"] = "fakeplate",
        ["garage"] = "garage",
        ["parked"] = "state",
        ["fuel"] = "fuel",
        ["engine"] = "engine",
        ["body"] = "body",
        ["distancedriven"] = "drivingdistance",
        ["balance"] = "balance",
        ["paymentamount"] = "paymentamount",
        ["paymentsleft"] = "paymentsleft",
        ["financetime"] = "financetime",

        -- Additions
        ["vin"] = "vin",
        ["access"] = "access",
        ["type"] = "type",
        ["impound"] = "impound",
        ["deformation"] = "deformation",
        ["temp"] = "temp",
        ["nickname"] = "nickname",
    },
    ["ESX"] = {
        ["player_vehicles"] = "owned_vehicles",

        -- Previously existing
        ["owner"] = "owner",
        ["mods"] = "vehicle",
        ["plate"] = "plate",
        ["garage"] = "parking",
        ["impound"] = "pound",
        ["parked"] = "stored",
        ["type"] = "type",
        ["vehicle"] = "model",

        -- Additions
        ["id"] = "id",
        ["license"] = "license",
        ["vin"] = "vin",
        ["access"] = "access",
        ["fakePlate"] = "fakeplate",
        ["fuel"] = "fuel",
        ["engine"] = "engine",
        ["body"] = "body",
        ["distancedriven"] = "distancedriven",
        ["balance"] = "balance",
        ["paymentamount"] = "paymentamount",
        ["paymentsleft"] = "paymentsleft",
        ["financetime"] = "financetime",
        ["deformation"] = "deformation",
        ["temp"] = "temp",
        ["nickname"] = "nickname",
    },
}

Last updated