Skip to main content

FAQ

  • RoadGarage reads the vehicles from your framework’s table (owned_vehicles on ESX, player_vehicles on QBCore and Qbox). A vehicle must be owned by the character you play.
  • A garage only lists vehicles of its kind: boats in boat garages, aircraft in hangars and helipads.
  • Vehicles that are out or impounded appear under Away or Impounded, not under In this garage.
Every parking slot of the garage has another vehicle within Config.SpawnClearance metres. Move the vehicles away, or add more slots to the garage’s spawns.
RoadGarage detects the common key scripts on its own (qb-vehiclekeys, qbx_vehiclekeys, qs-vehiclekeys, wasabi_carlock and others). For any other script, give the keys in ClientHooks.GiveKeys in client/hooks.lua and return true. See Hooks.
The fuel scripts listed under Hooks are detected on their own. For another script, read and set the level in ClientHooks.GetFuel and ClientHooks.SetFuel.
Another garage script is still running. Two garage systems compete for the same vehicles and the same key. Stop the old one and keep only RoadGarage.
Your database user may not change tables. Run sql/install.sql (and sql/esx_columns.sql on ESX) yourself, or sql/migrations/1.1.0.sql when you update from 1.0.0. See Installation.
It is out, but no longer exists in the world, for example after a server restart. The owner recovers it at any garage or impound lot for Config.RecoveryFee. With Config.ReturnLostOnStart = true, missing vehicles return to their last garage when RoadGarage starts.
Yes. RoadGarage keeps vehicle state in the framework’s own columns, so the app and the valet keep working. With Config.roadGarage = true in RoadPhone 3.0, the app also shows garage names, nicknames, mileage, impound details and shared vehicles. See Installation.
Yes. RoadGarage runs on ESX Legacy, QBCore, Qbox and standalone. OneSync, oxmysql (or mysql-async) and ox_lib are always required.
Webhook URLs go into API.lua, not config.lua. A channel without a URL uses default; when default is empty too, nothing is posted. See Discord logs.
Add an entry to Config.Garages with coordinates for the attendant and at least one parking slot. See Adding a garage. Housing and other scripts can add garages at runtime with RegisterGarage.
Still stuck? Open a ticket on our Discord.