Garages — Configuration
Everything lives in config/config.lua and config/garages.lua, both left unencrypted. Garages themselves are created in-game rather than in a file.
Core behaviour
| Key | Default | What it does |
|---|---|---|
AutoRespawn | true | Store cars left out when the server restarts |
SharedGarages | false | Take any owned car from any garage, rather than only from where it is stored |
ClassSystem | false | Restrict which vehicle classes a garage accepts |
Warp | false | Put the player straight into the driver's seat on take-out |
DoNotSpawnInsideVehicle | true | Spawn outside the garage zone — safer on busy servers |
CheckVehicleModel | true | Verify the spawned model matches the database row |
SaveVehicleDamage | true | Persist and re-apply body and engine damage |
DistanceUnit | 'mi' | Odometer unit — 'mi' or 'km' |
GarageAccess | 'radial' | How players open a garage — radial or keypress |
OpenGarageKeyBind | 38 | Control id, 38 is E |
Leave CheckVehicleModel on. It is the check that stops a modified client asking for a different model than the one stored against the plate.
Buyable parking spaces
A per-garage cap on how many cars a player may keep, with extra spaces sold as a permanent money sink. Set Parking.Enabled = false to switch the whole system off and leave every garage unlimited.
| Key | Default | What it does |
|---|---|---|
FreeSpots | 1 | Spaces every player gets free at every capped garage |
MaxSpots | 6 | Hard ceiling on total spaces per garage, free plus bought |
BasePrice | 25000 | Price of the first bought space. A garage's own spotPrice overrides it |
PriceScale | 1.5 | Each further space costs this much more than the last |
AllowSell | true | Let players sell an empty bought space back |
SellRefund | 0.5 | Fraction of the paid price refunded on sale |
Society | '' | Society account that receives the money. Empty means a pure money sink |
Grandfather | true | On first boot, gift spaces to players already over the limit |
Leave Grandfather on the first time you enable parking. Without it, anyone already storing more cars than the new cap loses access to the overflow until they buy space.
Parking.Types decides which garage types are capped. Anything not listed stays unlimited.
Phone notifications
Optional mail when something happens to a player's vehicle. System defaults to 'auto' and detects lb-phone, yseries or qb-phone; set it explicitly or use 'custom' to wire your own.
| Event | Sent when |
|---|---|
Impounded | Police impounded one of their vehicles |
Towed | A car left out was towed on restart — delivered at next login |
Received | A vehicle was gifted or sold to them |
Sold | Their sale went through |
Creating garages
Garages are not defined in a config file. Run /garageeditor in-game to create, edit and delete them — everything saves to the jj_garages table and applies immediately.
Types available: public, job, gang, impound, private and shared. Job and gang garages are grade-gated spawners for preset service vehicles rather than personal storage.
Next: Troubleshooting.