Skip to main content

Installation

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: set onesync on.

oxmysql and MariaDB 10.10+

oxmysql must start before RoadCasino. The database must be MariaDB 10.10 or newer: RoadCasino seeds its random number generator with the database function RANDOM_BYTES, which older versions lack.

Framework

ESX, QBCore or Qbox, found automatically.

road_world_map

A separate download on the cfx.re Portal. It holds the original GTA map files that several RoadShop maps change.

Game build 3889

sv_enforceGameBuild 3889. The casino is built and tested on this build.
Check your database version before you install: run SELECT VERSION(); in your database tool. XAMPP and many older Linux packages ship MariaDB 10.4 to 10.6. With those, the console shows Startup gated: secure_random_unavailable and the casino does not open.

πŸš€ Setup Instructions

1

Add road_world_map

Download road_world_map on the cfx.re Portal and copy its [road_world_map] folder into your resources. If the folder is already there from another RoadShop map, keep the newer one; its version is in [road_world_map]/road_world_map/fxmanifest.lua.
2

Extract the resources

Copy the three casino resources into your resources. We recommend a [road] folder alongside our other scripts:
The folder names must stay road_casino, road_casino_map and road_casino_props.
3

Start them after your framework and oxmysql

server.cfg
Start road_world_map as shown, not the whole [road_world_map] folder. Some RoadShop maps change the same original GTA map files and FiveM keeps only one copy of each file, so road_casino_map does not ship them: road_world_map holds them for every combination of RoadShop maps and starts the set that matches your server.
4

Database

On the first start, RoadCasino creates its tables (roadshop_casino_*). If your database user may not create tables, run road_casino/install/schema.sql yourself.
5

Create the casino job

The staff menu opens for players with the job in Config.Staff.Job (default casino). Create that job in your framework.
6

Give your admins management access (optional)

server.cfg
This opens the management pages without the job and unlocks the cashier’s exchange recovery.
7

Restart and reconnect

Restart the server and reconnect. New map files load only after a full restart.

🌐 Language

config.lua
English (en) and German (de) are built in. Menu texts are in road_casino/public/locales/, the lift texts in road_casino/lift/locales/.

βœ… Verification

  1. The server console shows a line starting with [RoadCasino] Persistent Lua engine loaded with layout ready=true, and no Startup gated line.
  2. The casino building stands at about (-480, -975, 24).
  3. At the main cashier on the ground floor (-459.1, -1012.9, 24.0), E opens the cashier.
  4. At a slot machine or a table, E gives you a free seat.

πŸ”„ Updating

Delete the old road_casino, road_casino_map and road_casino_props folders before you copy the new ones, and keep your road_casino/config.lua. Copying over the old folders leaves old files behind. New options work without a config change: their defaults live in the script.

πŸ“š Next Steps

Games

Chips, slots, tables and salons

Staff & ranks

Staff menu, ranks and cashback

Configuration

Every option in config.lua

FAQ

Any problems or questions?