![Legacy Scoreboard [QB / QBX / ESX]](/_next/image?url=https%3A%2F%2Fdunb17ur4ymx4.cloudfront.net%2Fpackages%2Fimages%2F5a5883739c304f5e161ecb6892dbc68d2fd111d8.png&w=3840&q=75)
Legacy Scoreboard [QB / QBX / ESX]
Frameworks
QBX
Updated
17 Sept 2026
Category
Packages
Docs
Full documentation
excl. VAT
Add 3 more scripts to unlock: Buy 3 scripts, get the cheapest FREE!
What's Included
- Instant download after purchase
- Lifetime updates — free forever
- Full documentation & setup guides
- Dedicated Discord support
Everyone in your city, on one board
Players press a key and see who is online, which services are on duty, and which activities are unlocked right now. There is no database to import and nothing to place in the world. It works the moment you start it.
Who is in the city
Every player online, with the server ID they will be asked for in a report. Job roles carry a coloured chip and a matching spine down the edge of the row, staff are marked, and each row shows a live ping with a signal meter. The capacity bar reads your sv_maxclients directly, so it is correct without being configured.
Service counts that mean something
The strip across the top counts only players who are actually clocked on, not everyone who happens to hold the job. A single entry can span several job names, so Police can add your police and BCSO together and show one honest number. These colours deliberately sit outside your theme: a player should recognise the police count instantly whatever accent colour you have chosen.
Heists that open with your police count
Each activity lists how many police it needs before it counts as available. When the city is quiet, a meter shows how close it is rather than leaving players to guess, which is usually enough to stop the question arriving in Discord for the fourth time that night. Set the list to empty and the whole panel disappears.
Two police on duty, one activity open
How close each locked entry is
Search by name or server ID
The list filters as a player types, matching either a name or an ID. Sorting flips between server ID and ping. Both matter when someone is trying to report a player or work out whether the lag is theirs: the ID is on every row, and the footer says what to do with it.
Filtering on a partial name
Sorted by ping, worst connections first
Players can hide their name
One toggle hides a player's name and job from everyone else on the board. Their server ID stays visible, because reports still need it. The choice is stored against their character, so it survives a reconnect and a server restart, and a staff badge is suppressed for as long as they are hidden.
One theme, one logo, every Legacy script
Colours and the logo come from legacy-lib, so you set them once and everything you run from us follows. Change your accent colour and the board changes with it. Status colours do not move, because an activity that is open should read as open whatever palette you picked. Every font is bundled with the script, so nothing is fetched from the internet and nothing falls back to a default typeface on a server with outbound requests blocked.
What you need
Works on qb-core, qbx_core and es_extended, detected automatically. It needs ox_lib and legacy-lib, our shared library, which is free on our GitHub and is what every Legacy script uses for framework detection, theming and locales.
There is no SQL to import and no database table to create. Drop the folder in, add it to your server.cfg below legacy-lib, and press the key. What you will want to change first is your server name and the Discord link in the footer, then the job and activity lists if your city runs differently to the defaults.
Documentation at docs.legacyscripts.net
Support and updates in our Discord
![Legacy Billing [QB / QBX / ESX]](/_next/image?url=https%3A%2F%2Fdunb17ur4ymx4.cloudfront.net%2Fpackages%2Fimages%2F1cc4e368d1f09e50e64e00950b23ab27c8be659b.png&w=3840&q=75)
