Skip to main content

Configuration

These files stay readable after the Asset Escrow upload:
Every key has a built-in default. A key missing from your config.lua, for example after an update added a new one, uses that default, so an older config keeps working.
config.lua is sent to every player. Never put webhook URLs or other secrets into it: they belong in API.lua.

General

config.lua
InteractKey is only the default of a FiveM key binding. Players who have already changed the binding keep their own key.

Vehicles, fees and sharing

config.lua

Parking spaces

config.lua
slots on a single garage overrides Config.SlotLimit for that garage.

Mileage and service

config.lua

Impound

config.lua
The lots are Config.ImpoundLots, see Impound.

Fees and societies

false means the money goes to nobody. The society account is the job’s account in esx_addonaccount (ESX), qb-management or qb-banking (QBCore) or qbx_management (Qbox).

Admin

config.lua

Staff and blips

config.lua

Adding a garage

config.lua
The table key (pillbox) is the garage id. Keep it once players have parked there: their vehicles are stored under it. To add a garage, stand where players should open it, copy your coordinates and heading, then drive a vehicle onto each parking slot and copy those too.

Discord logs

API.lua is loaded on the server only. Paste Discord webhook URLs per channel; empty channels use default, and an empty default turns logging off.
API.lua

Hooks

Keys and fuel are detected automatically. RoadGarage works with these scripts:
  • Keys: qb-vehiclekeys, qbx_vehiclekeys, qs-vehiclekeys, wasabi_carlock, MrNewbVehicleKeys, Renewed-Vehiclekeys and more.
  • Fuel: ox_fuel, LegacyFuel, cdn-fuel, ps-fuel, lj-fuel, qb-fuel, okokGasStation, ti_fuel, qs-fuelstations, BigDaddy-Fuel, rcore_fuel, lc_fuel, x-fuel and ND_Fuel.
Use the hooks for anything else.
client/hooks.lua

Language

Config.Locale sets the language of the in-game texts and of the garage screen. English (en) and German (de) are built in. To add a language, for example French:
1

Copy the English files

Copy locales/en.lua to locales/fr.lua and public/locales/en.json to public/locales/fr.json.
2

Translate them

In locales/fr.lua, change Locales['en'] to Locales['fr']. Keep the keys and placeholders (%s in Lua, {name} in JSON) as they are.
3

Switch the language

config.lua
fxmanifest.lua already loads every file in locales/. A text you leave out of either file falls back to English.