Skip to main content

Installation

RoadGarage covers garages, impound lots and vehicle sharing for your server. It handles public car, boat and air garages, job and gang garages with fleets, police impounds with a fee and a hold time, and selling a car to the player in front of you. Players use it at garage attendants and impound lots on the map, in the same design as RoadPhone. Vehicle state is stored in your frameworkโ€™s own columns, so other scripts that read owned_vehicles or player_vehicles keep working.
RoadGarage garage list at Pillbox Garage
Do not use FileZilla. It can corrupt or skip hidden files during upload. We recommend WinSCP.
The download comes from the cfx.re Portal. The database tables are created automatically on the first start.

๐Ÿ“‹ Prerequisites

OneSync

Required: vehicles are spawned on the server (set onesync on).

oxmysql and ox_lib

Both are required and must start before RoadGarage. mysql-async works instead of oxmysql.

Framework

ESX Legacy, QBCore, Qbox or no framework (standalone).

Optional

ox_target or qb-target, a vehicle key script and a fuel script. All of them are detected automatically.

๐Ÿš€ Setup Instructions

1

Extract the resource

Put the folder into your resources. We recommend a [road] folder alongside our other scripts:
The folder name must stay road_garage. Events and exports use this name.
2

Start it after its dependencies

server.cfg
Start RoadGarage after your housing script if you use house garages.
3

Stop your old garage script

Run only one garage system. Two garage scripts compete for the same vehicles and the same key. Stop the old one (for example qb-garages or qbx_garages) before you start RoadGarage.
4

Database

On the first start, RoadGarage creates its tables. On ESX it also adds garage_id and impounded to owned_vehicles.If your database user has no ALTER rights, run the files yourself:
5

Give your admins access (optional)

server.cfg
This unlocks /garageadmin.

๐ŸŒ Language

config.lua
English (en) and German (de) are built in. The setting changes both the in-game texts and the garage screen. To add your own language, see Configuration.

๐Ÿ“ฑ RoadPhone

RoadGarage keeps vehicle state in the frameworkโ€™s own columns (stored / state, garage_id / garage). RoadPhoneโ€™s Garage app and valet therefore keep working without changes. With Config.roadGarage = true in RoadPhone 3.0, the Garage app also shows:
  • garage names and nicknames;
  • mileage and impound details;
  • vehicles shared with the player.
The valet then delivers through RoadGarage, with saved damage, fuel, keys and the activity log.

โœ… Verification

  1. The server console shows no road_garage errors on start.
  2. Garage and impound blips appear on the map.
  3. At a garage attendant you get the target option or the E help text, and the garage opens with your vehicles.
  4. A vehicle you take out spawns on a free parking slot. With a key script, you get its keys.

๐Ÿ“š Next Steps

Using garages

Opening, parking, the vehicle page and the live preview

Impound

Impounding, hold times, fees and release

Configuration

Garages, fees, parking spaces, mileage and hooks

FAQ

Any problems or questions?