Before You Begin#
Before installing Scoreboard, make sure your server meets the minimum requirements. Two resources are mandatory, plus one of the supported frameworks; everything else is optional and picked up on its own.
Requirement | Status | Notes |
|---|---|---|
| Required | Reads job levels and experience. Nothing is written. |
| Required | The keybind and the server callback behind the list. |
Framework | Required | ESX, QBCore or Qbox — auto-detected. |
Quasar jobs | Optional | Fill the Job Progress panel with each player's level and experience. |
Duty exports | Optional | Real on-shift counts and duty badges from your own job scripts. |
The framework is chosen by looking at what is already running:
Framework | Detected from | Player identifier |
|---|---|---|
ESX |
|
|
QBCore |
|
|
Qbox |
|
|
If your core runs under a different resource name, add it to the detection list at the top of config/config.lua. Integrations shows how.
Downloading Scoreboard#
After purchasing Scoreboard, the resource is automatically linked to your CFX Portal account.
Sign in to the CFX Portal using the same account used during checkout, open Granted Assets, and download Scoreboard.
After extracting the download, you should have the following folder:
qs-scoreboard/
├── config/
│ └── config.lua -- everything you configure
├── client/
│ ├── framework/ -- ESX and QBCore bridges (editable)
│ └── main.lua -- protected
├── server/
│ ├── framework/ -- ESX and QBCore bridges (editable)
│ └── main.lua -- protected
├── web/dist/ -- the interface, ready to use
└── fxmanifest.luaThe folder must be named
qs-scoreboard. The script checks its own name on start; under any other name it printsYou have renamed the script!and freezes the server console on purpose, so the server never finishes starting.
Installing the Resource#
Move the qs-scoreboard folder into your server's resources directory. It can live anywhere inside it, including a category folder:
resources/
└── [qs]/
└── qs-scoreboard/Once copied, open your server.cfg and make sure every dependency starts before Scoreboard:
ensure oxmysql
ensure ox_lib
# Framework
ensure es_extended
# ensure qb-core
# ensure qbx_core
# Quasar jobs (optional) — for the Job Progress panel
# ensure qs-minerjob
# ensure qs-truckjob
ensure qs-scoreboardThe loading order matters. The framework is detected from resources that are already started, so a core that starts after Scoreboard is not found and the list cannot be built. Quasar jobs are checked again on every refresh, but keeping them above Scoreboard is simplest.
The Database#
There is no SQL file to import. Scoreboard creates no tables and writes nothing — it only reads the level and experience that the Quasar job resources already store for each player:
Job | Resource | Table read |
|---|---|---|
Miner |
|
|
Garbage Collector |
|
|
Dog Walker |
|
|
Newspaper Delivery |
|
|
Taxi Driver |
|
|
Bus Driver |
|
|
Truck Driver |
|
|
Hunter |
|
|
Treasure Hunter |
|
|
Fisher |
|
|
Lumberjack |
|
|
Lifeguard |
|
|
A job is only queried while its resource is started. Jobs you do not run are skipped, so there is nothing to switch off.
Configuring the Resource#
Everything is configured in one open file, config/config.lua. It is grouped like this:
Section | Options |
|---|---|
Framework |
|
Key and cooldown |
|
Player list |
|
Server overview |
|
Police and heists |
|
Active jobs |
|
Job progress |
|
Look and texts |
|
The values worth reviewing first:
Config.ScoreBoardKey = "z" -- the key that opens it
Config.DisplayablePlayerJobs = { "miner", "police", "ambulance", "mechanic", "truck_driver" }
Config.PoliceJobNames = { "police" } -- counted for the heist cards
Config.DisplayFivemName = true -- false = character names
Config.PeakPlayers = "150" -- the peak shown in the overview
Config.Translations = {
serverName = "GAME SERVER", -- the name in the header
-- ...
}Changes apply after
restart qs-scoreboardor a server restart. The one exception is the key: players who already joined keep the key they have — see Keybinds and Exports.
Verifying the Installation#
After completing the installation, restart your server, join it and work through the first loop:
Open the scoreboard
Press
Z. The list opens with every online player, your own row tagged YOU, and the online count in the header.Open the dashboard
Press Open Full Screen in the header. The heists appear on the left, the server overview and active jobs on the right.
Check the job progress
If you run any Quasar job and have played it, Job Progress lists your level under the heists. It fills a few seconds after the resource starts and refreshes every five minutes.
Close it
Press
Escape,Zagain, or the ESC button.
That is the whole setup. Usage covers each panel and the options behind it.



