ð§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:
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:
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:
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:
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:
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:
logsMasterSwitch
Easily enable or disable all logging with a master switch. Example:
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:
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:
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:
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:
impound
Various settings for the impounds.
impound.command
Command to prompt the impound menu. Example:
impound.defaultPrice
Default price is applied when you get your vehicle through ensureVehicleExistenceor the onRestart functionality. Example:
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.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:
impound.jobs
All jobs able to perform impound actions. Example:
impound.jobs[x].name
The name of the job. Example:
impound.jobs[x].label
Neatly typed label for the menu. Example:
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:
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:
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:
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:
impound.length[x].value
The length of the restriction in seconds.
Example:
impound.length[x].label
Neatly typed label for the option.
Example:
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:
storeVehicle
Various settings for storing vehicles. Example:
storeVehicle.openKey
Default key to press to store your vehicles. Utilizes keymapping. Example:
storeVehicle.displayOptions
Various display options to visualize that you are in an area where you can store your vehicle. Example:
blipDetails
Global blip settings for all garages, unless new settings are applied in the garage builder. Example:
blipDetails.enabled
Enable or disable the blip. Example:
blipDetails.icon
The icon for the garage blip on the map. Example:
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:
blipDetails.color
Color of the blip, set to -1 to disable.
Example:
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:
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:
fakePlate
Various settings for the fake plate. Example:
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:
wipeVehicle
Various settings for the wipe vehicle functionality. Note that you have to sit in a vehicle to wipe it. Example:
wipeVehicle.enabled
Enable/disable this functionality enitrely. Example:
wipeVehicle.command
The command for wiping a vehicle. Example:
wipeVehicle.permission
The required permission to perform this action. Example:
setPlate
Various settings for setting a vehicle plate. Example:
setPlate.enabled
Enable/disable this functionality entirely. Example:
setPlate.command
The command for setting a plate. Example:
setPlate.permission
The required permission to perform this action. Example:
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
The command to save the vehicle. Example:
saveVehicle.jobs
The jobs allowed to manually save a vehicle. This is recommended to limit to jobs that can modify or repair vehicles. Example:
claimVehicle
Various settings for claiming vehicles. Example:
claimVehicle.command
Command to claim a vehicle. Example:
claimVehicle.enabledForPersonalVehicles
Enabling this feature allows admins to claim another person's vehicle and transfer the ownership. Example:
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:
claimVehicle.permission
The permission required to perform this action. Example:
vehicleTypes
All vehicle types that exist. Not recommended to touch, unless chaning the label. Example:
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:
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
Enable or disable lockpicking with a simple switch Example:
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:
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:
lockpicking.restrictedVehicles.personal
Personal vehicles are simply vehicles owned by players. Example:
lockpicking.restrictedVehicles.profession
Profession vehicles are vehicles owned by jobs or gangs. Example:
lockpicking.timeToLockpick
The time it takes to lockpick a vehicle, in seconds. Example:
lockpicking.items
The available lockpicking items that you can use and their settings. Example:
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:
lockpicking.dict
The animation dictionary that will be used when lockpicking. Example:
lockpicking.anim
The animation "clip" that will be used when lockpicking. This is the specific animation inside of the dictionary. Example:
garageTransfers
Various settings for garage transfers. Example:
garageTransfers.enabled
Enable or disable transferring vehicles between different garagers. Example:
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:
gargeTransfers.price
This is the price you pay when transferring your vehicles. Set to
0
to disable. Example:
initializeVehicles
Various settings for initializing vehicles, this is for migrating vehicles from an old garage system to ours. Example:
initializeVehicles.permission
The permission required to run the command. Example:
initializeVehicles.command
Command to initialize vehicles. Example:
garageBuild
Various settings for the garage builder. Example:
garageBuild.command
The command to open the garage builder. Example:
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:
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:
spawnMenu
Various settings and display functions for the spawn menu. Example:
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:
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:
deleteGarage
Various settings for deleting garages If you want to completely disable deleting garages, set
allowedForCreator
tofalse
andpermission
tonil
. You can still delete garages that are still being created, as cancelling the creation completely deletes the progress. Example:
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:
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 tonil
or remove it completely to remove this feature. Example:
garageInterior
Various settings and locations for the garage interiors. Example:
garageInterior.existGarage
Key to exit the garage when you are in the correct location. Example:
garageInterior.interiors
A list of available interiors that you can use. Example:
garageInterior.interiors[x].label
Neatly typed label for the menu. Example:
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:
garageInterior.interiors[x].allowedTypes
The allowed vehicle types for the garage. This will mostly be limited to
automobile
andbike
as they are the only ones to fit. Example:
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:
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:
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:
vehicleActions
Various settings for vehicle actions. Example:
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:
availableProfessions
Do not touch.
garageSettings
Various settings for garage settings. Example:
garageSettings.command
The command to open the menu.
Example:
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:
garageSettings.settings
A list of settings. Should not touch this unless you are changing icons or the
default
option. Example:
garageSettings.name
A unique name for the setting. Can be changed, but not recommended to touch. Example:
garageSettings.default
The default value for this setting. Example:
garageSettings.enabledIcon
Icon in the menu when the setting is enabled. Example:
garageSettings.disabledIcon
Icon in the menu when the setting is disabled. Example:
garageSettings.onSelect
The function that runs when you press the option in the menu. Probably shouldn't touch. Example:
keys
Various settings for keys. Example:
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
keys.item
The name of the item for the vehicle keys. Example:
keys.newKeyPrice
The price to pay to get a new key. Set to
0
to get them for free. Example:
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
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:
persistentVehicles.distances.registerInteraction
The units between you and the vehicle to register that you are within the interaction range. Example:
persistentVehicles.distances.registerInProximity
The units between you and the vehicle to register that you are in the proximity of it. Example:
persistentVehicles.cleanup
Various settings for cleanup. Example:
persistentVehicles.cleanup.permission
The permission required to change the cleanup settings. Example:
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:
Last updated