π TRI-RENTAL
Premium car rental β walk up, pick a car, drive.
https://youtu.be/iyl0adRGxcU
The rental system your server actually deserves
Tri-Rental is a full system: a three-column NUI storefront where players browse a live fleet, pick colors and duration, and confirm a rental with an itemised up-front charge. While they drive, the server tracks every kilometre and fuel percent. When they return, a red-accent bill modal breaks down exactly what they owe β base rate, fuel used, damage if any, and mileage overage.
Owners with the rental job can add any GTA vehicle to the fleet at runtime through a separate Fleet Panel, complete with a live preview. Or flip one config flag to run it as a self-serve kiosk with no job required.
Works with Qbox, QBCore, and ESX β flip one line in config.lua and you're done.
β¨ What makes it different
-
π― Itemised return bill β base rate, fuel deduction, damage fee, and mileage overage broken out separately so renters know exactly what they owe. Not a flat-fee guess.
-
π₯οΈ Three-column Tier 1 NUI β dark glass shell, teal-gradient accents, Poppins font, inline SVG icons. The storefront looks as premium as the rest of your server.
-
π Live server telemetry β distance and fuel sampled every 5 seconds (configurable). Accurate billing. No server restarts nullifying trips.
-
π§ Owner Fleet Panel β add any GTA vehicle model to the fleet at runtime, live preview updates as you type. Saved to the database and rehydrated on restart.
-
π Single config, three frameworks β Qbox, QBCore, and ESX share one
config.lua. Bridge files stay unencrypted so you can swap frameworks without re-buying.
π§© What's inside
- | Section | Features |
- |---|---|
- | Storefront | 3-column NUI, vehicle list with Rented By badges, 8 paint swatches, duration slider, mileage display, up-front rental summary |
- | Rental flow | Server-authoritative: validates cap + availability, debits up-front charge, spawns at lot, applies chosen color, stamps RENT-XXXX plate, warps player to driver seat |
- | Live telemetry | 5s server tick β accumulates KM from coord deltas, reads fuel via
ox_fuel/LegacyFuel/cdn-fuel/ native statebag fallback, records damage baseline at spawn | - | Return & billing | Itemised modal (base + fuel + damage + mileage overage), server-side return-radius check, charge or refund on confirm |
- | Owner panel | Add Vehicle (model, label, $/hr, category, top speed, image, notes + live preview), View Rentals (all active rentals with time/KM/fuel status dots), Force Return |
- | Rental papers |
rental_papersinventory item stamped with rental metadata β auto-detected forox_inventoryorqb-inventory| - | Infrastructure | Fleet persistence to
tri_rental_fleettable viaoxmysql(optional), dark/light theme toggle with KVP persistence, disconnect void handling, multi-lot support |
βοΈ Everything is config-driven
- β
Framework:
'qbox'/'qbcore'/'esx' - β Payment method: cash or bank
- β Damage deduction flat fee
- β Mileage overage rate (per KM or MI)
- β Fuel refund/deduction rate per percent
- β Duration bounds (min, max, default in hours)
- β Mileage cap before overage kicks in
- β Max active rentals per player (or unlimited)
- β Return radius in meters
- β Per-vehicle base rate, label, category, display speed, image
- β 8-swatch color palette (GTA color IDs + hex for swatch display)
- β KM or MI distance unit β affects all telemetry, billing, and displays
- β
Fleet persistence on/off (removes
oxmysqldependency when off) - β Unattended / kiosk mode (no job required)
- β Owner job name + minimum grade
π Performance
- βΈ Server telemetry tick runs per-rental, not globally β no overhead when no rentals are active
- βΈ NUI uses no
backdrop-filter, no scroll overflow, no external CDN calls at runtime - βΈ Bridge files resolve framework once at resource start, not per event
- βΈ Fleet state broadcast is delta-only β only fires on rent and return, not on a continuous tick
π What you're getting
- β
Full tri-rental resource (Escrow-encrypted β
config.lua+ both bridge files stay editable) - β
README.mdwith full install guide, framework notes, fuel tracking setup, rental papers item registration - β
3-vehicle starter fleet (
sultan,buffalo3,zentorno) β replace or extend via config - β 8 default paint swatches β swap to your server's palette via config
- β
items/rental_papers.pngplaceholder (256Γ256) β copy into your inventory'sweb/images/folder
π§ Requirements
-
Framework: Qbox (
qbx_core) / QBCore (qb-core) / ESX (es_extended) -
Dependencies:
ox_libΒ·ox_targetΒ·ox_inventory -
Optional:
oxmysql(only required whenConfig.PersistFleet = true) -
Vehicle keys:
qbx_vehiclekeys(Qbox) Β·qb-vehiclekeys(QBCore) Β·qs-vehiclekeys/wasabi_carlock/ genericvehiclekeys:client:SetOwner(ESX) β auto-detected -
Fuel (optional):
ox_fuel/LegacyFuel/cdn-fuelβ or leave blank to use native vehicle statebag - FiveM: FXServer build 6116+
π¬ Support
Join the Tri Studios Discord for setup help, bug reports, and feature requests. Community support for Standard buyers.
