🛡️ Admin dashboard
The admin dashboard is the in-game control center for TGG Casino & Slots. From here you manage machines, players, jackpots, promos, casinos, CCTV, displays, custom slots, and most live settings that used to live only in config files.
How to open it
You need admin permission (see Permissions below). Then open the dashboard in either way:
- Anywhere on the server — run:
Code/slotdashboard
This opens the admin UI without sitting at a machine (requires ACE — see below).
- From an in-world machine lobby — sit at / open a slot machine. Your slot account is resolved automatically. If you have ACE admin, an admin icon appears in the lobby header (or Machine Metrics in the mobile menu). Click it to enter the admin view.
The phone lobby app is players-only — it has no admin access. Use /slotdashboard or an in-world machine lobby.
Permissions
Edit these in tgg-slots-server/config/config.lua, then grant matching ACE entries in your server.cfg.
| Config key | Default | What it controls |
|---|---|---|
Config.AdminAcePermission | 'admin' | Native ACE object checked with IsPlayerAceAllowed for the dashboard UI, placement, settings, and other admin callbacks. If empty/nil, the code falls back to 'admin'. |
Config.AdminCommandsPermission | 'group.admin' | ox_lib command restriction only (restricted = …). Used by /slotdashboard, /slots_reset_password, /slots_account_info, and /jackpotstatus. Not passed to IsPlayerAceAllowed. |
Example server.cfg (default ACE object admin)
Code# Let the admin group use the ACE object checked by the slots script add_ace group.admin admin allow # Let that group run ox_lib-restricted commands add_ace group.admin command allow # Put a staff member into group.admin (use their license / identifier) add_principal identifier.license:YOUR_LICENSE_HERE group.admin
Custom ACE object
If you set a custom object in config:
luaConfig.AdminAcePermission = 'tgg.slots.admin' Config.AdminCommandsPermission = 'group.admin'
then grant that object instead:
Codeadd_ace group.admin tgg.slots.admin allow add_ace group.admin command allow add_principal identifier.license:YOUR_LICENSE_HERE group.admin
Advanced: IsAdminSource export
Server scripts can check the same gate the dashboard uses:
lualocal isAdmin = exports['tgg-slots-server']:IsAdminSource(source)
This returns true when the player passes the configured AdminAcePermission check (same path as admin callbacks). Prefer this over inventing a second admin list.
Admin tabs
Once the dashboard is open, these tabs are available (labels match the UI):
- Machine Metrics — Performance and activity per registered machine/table (spins, wagered, wins, and related machine stats).
- Player management — Slot accounts overview: balances, play stats, online status, and account actions such as freeze/unfreeze.
- Game Metrics — Totals rolled up by game type across machines and tables.
- Jackpots — Configure Grand/Major progressive pools and review recent jackpot wins.
- Promos — Create and manage promotions/contests that players can claim in the lobby. See Promos.
- Custom Slots — Build and publish custom slot games (assets, bets, sounds, live tune). See Custom games.
- Casinos — Create and manage venues (casinos), place machines/tables, and open per-venue settings. See Venues & placement and Cashiers & economy.
- CCTV — Place and manage casino CCTV cameras for admin viewing. See CCTV & displays.
- Jackpot TVs — Assign and manage world TV boards that show jackpot/winner content. See CCTV & displays.
- Settings — Global and per-game live settings (currency, economy, lobby look, table-game defaults, and more). Many options that used to sit only in Lua config are edited here. Per-venue overrides are edited from the Casinos tab (venue → Settings), not as a separate top-level tab.
- Reconciliation — Integrity checks comparing machine, account, and game totals (including payout-queue health). Shown only after it is unlocked in the admin UI; most operators can ignore this day to day.
Settings tab (what lives here)
Use Settings for server-wide behavior and per-game overrides without restarting for every tweak:
- Global economy/currency and payment-method related options
- Lobby branding (title, theme/colors, hero banner)
- Table-game defaults and per-game setting maps
- Other formerly config-only toggles that the admin settings service now stores live
Venue-specific overrides (cashier limits, local economy, etc.) stay under Casinos → Settings for that venue.
Admin commands
These ox_lib commands use Config.AdminCommandsPermission (default group.admin):
| Command | Purpose |
|---|---|
/slotdashboard | Open the admin dashboard from anywhere (also requires AdminAcePermission). |
/slots_reset_password <username> <newPassword> | Reset a slot account password. |
/slots_account_info <username> | Show account summary (notify + detailed print in server console). |
/jackpotstatus | Show current Grand/Major jackpot values and pending-win status. |