server consolestarting
  1. > ensure fivestacks_garage
  2. [fivestacks_garage] v1.0.0 started, framework: qbx, vehicles: player_vehicles, fuel: ox_fuel, mileage: player_vehicles, 5 garage(s), 1 impound lot(s), fivestacks.dev
resmonidle

fivestacks_garage

0.00ms

Take the tour

What each part of the menu does. Hover or tap a point.

The garage page in game, in German: search, filter chips and the vehicle list on the left, the Penumbra in the middle with favorite, rename and take out buttons below, location, condition, damage and tuning on the right

What Garage does

Players open a fullscreen page with their vehicles on the left, the selected one standing live on the parking spot in the middle and its condition on the right. They search, filter, mark favorites and give nicknames, then take a vehicle out with the fuel, damage, dirt and dents it was parked with. Vehicles in another garage, lost or impounded come back for a fee.

  • 5 garages (3 car, 1 boat, 1 air) and 1 impound lot out of the box
  • Locate a vehicle that is out with a waypoint and a blip
  • Mileage from QBCore drivingdistance, or measured by the garage
  • Submarines, trailers and add-on vehicles through Config.SpawnTypes
  • Optional company account for the fees and a Discord log
  • CanTakeOut and OnChange hooks and exports for other scripts
  • Page scale and accent color in the config

Live preview

The selected vehicle stands on the parking spot with its real colors, tuning, dirt, damage and dents. It turns slowly, players drag it and zoom with the mouse wheel, and only they see it.

Kept as parked

Fuel, engine, body, tank, dirt and broken tyres, windows and doors are saved in the framework's own format. Dents are measured at 30 points of the body and pressed in again.

Search, filter, sort

Search by name, plate or model, filter by favorites, here, out or impounded and pick a vehicle class. Sort by name, last use, fuel, condition or mileage.

Favorites and nicknames

A star per vehicle puts favorites first in the list. Players give each vehicle a nickname of up to 24 characters, and an empty name goes back to the model name.

Transfer, recover, impound

Vehicles in another garage are brought here for 250 and lost ones recovered for 750 by default. Police or tow scripts impound with an export, and the impound lot releases for a fee.

Safe take outs

One compare-and-set update flips the stored flag, so no vehicle comes out twice. Plates are checked for duplicates, health is read by the server, and a take out that fails costs nothing.

Fits into your server

Fuel and key scripts are detected automatically, and any other one can be added in the config without touching code. The database type is read from your oxmysql connection string.

Fuel

  • ox_fuel
  • LegacyFuel
  • cdn-fuel
  • ps-fuel
  • lj-fuel
  • qb-fuel
  • native

Vehicle keys

  • qbx_vehiclekeys
  • qb-vehiclekeys
  • wasabi_carlock
  • MrNewbVehicleKeys

Vehicle properties

  • ESX.Game
  • QBCore.Functions
  • built-in

Society money

  • esx_addonaccount
  • qb-banking
  • qb-management
  • Renewed-Banking

Database

  • MySQL
  • MariaDB
  • PostgreSQL

Controls

  • Open the garage, or park the vehicle you driveE
  • Choose a vehicle↑↓
  • Take out, bring here, recover or locateEnter
  • FavoriteF
  • RenameR
  • Search/
  • CloseEsc
  • Turn the vehicleDrag
  • ZoomScroll

Config and exports

The config, locales and framework bridges are plain Lua you can edit. These snippets come straight from the files you get.

config/config.lua

Config.Garages.legion = {
    Label = { de = 'Würfelpark', en = 'Legion Square' },
    Type = 'car',                                 -- 'car', 'boat' or 'air'
    Coords = vector3(213.83, -808.79, 31.01),     -- open on foot, park within StoreRadius
    Spawns = {
        vector4(233.53, -799.59, 30.49, 160.04),  -- the first free one is used
        vector4(237.67, -788.22, 30.57, 157.44),
    },
    -- Preview = vector4(...)                     -- optional, the first spawn otherwise
    -- Blip = false                               -- hide the map icon
}

-- impounded vehicles are released here for a fee
Config.Impounds.davis = {
    Label = { de = 'Abschlepphof Davis', en = 'Davis impound lot' },
    Coords = vector3(400.45, -1630.87, 29.29),
    Spawns = { vector4(407.20, -1645.58, 29.31, 228.28) },
}

Installation

6 steps from download to a running script. Pick a step to see what goes where.

  1. resources
    resources/└─ [fivestacks]/ └─ fivestacks_garage/    ├─ bridge/    ├─ client/    ├─ config/    ├─ locales/    ├─ server/    ├─ shared/    ├─ sql/    ├─ web/    ├─ fxmanifest.lua    └─ README.md
    Step 1 of 6

Frameworks

FrameworkMoneyDetected by
QboxCash and bank through qbx_core exportsqbx_core
QBCoreCash and bank through player functionsqb-core
ESXMoney and bank accountses_extended

Changelog

  1. v1.0.0Sep 29, 2026

    • First release

How buying works

Sales open on October 16. Until then you can look around and ask questions on Discord.

  1. 1

    Open a ticket

    Pick a script and open a ticket on our Discord to buy it.

  2. 2

    Get the resource

    You receive the resource folder, with the config, locales and framework bridges open to edit.

  3. 3

    Ensure it

    Drop it into your resources, add ensure to server.cfg and restart.

More scripts