Nova HUD
By QBₓ BØNES · v1.0.0
A modern, fully configurable HUD for FiveM. It works with QBCore, Qbox, ESX and standalone servers.
It has 7 ready-made themes, 14 speedometers, a drag-and-drop layout editor, aircraft and boat gauges, a rounded minimap, postals, speed limits, a seatbelt, turn signals and more. Every player can restyle it in game with /hud.
Install
- Put the
nova-hudfolder in yourresourcesfolder. - Add this line to
server.cfg, after your framework (qb-core / qbx_core / es_extended):ensure nova-hud - Give your admins the map permission (used by
/hudmapdefault):add_ace group.admin nova-hud.admin allow - Restart the server.
That's it. Nova finds your framework, fuel, voice and postal scripts by itself.
Remove your old HUD
Stop or remove any other HUD resource (qb-hud, ps-hud, esx_hud, jg-hud and so on), or you'll see two HUDs. If you keep a separate seatbelt script, set Config.Seatbelt.Enabled = false. If you keep a separate turn signal script, set Config.Indicators.Enabled = false.
Commands
| Command | Who | What it does |
|---|---|---|
/hud |
everyone | Opens the settings: presets, styles, colors, effects, display options, and Edit layout to move and resize anything |
/hudmap |
everyone | Lines the rounded minimap corners up with the map (only needed once per screen size) |
/hudmapdefault |
admins | Saves the minimap as it is on your screen now (size, spot, rounded fit) for every player. /hudmapdefault clear removes it |
/hudpostal |
everyone | Shows in F8 where postals come from (to troubleshoot) |
/cinematic |
everyone | Movie bars on, HUD hidden, for clips and screenshots |
/togglehud |
everyone | Hides or shows the whole HUD |
/blinker left \| right \| hazard \| off |
everyone | Turn signals from chat or another script |
/anchor |
everyone | Drops or raises a boat anchor (stop first) |
Keys (players can rebind them in Settings > Key Bindings > FiveM): - B is the seatbelt. - ← and → are the turn signals, and ↓ is the hazards.
Themes (presets)
| Preset | Look |
|---|---|
| Standard | Clean everyday look, the default |
| Patrol | Police. Interceptor speedometer, siren light bar, agency badges (LSPD, LSSD, BCSO, SAST, FIB) |
| Medic | EMS. Lifeline heartbeat speedometer with the Star of Life, red and white siren lights, EMT and Fire badges |
| Street King | Street sign, wallet cards, Hustle speedometer, voice equalizer, money rain when you get paid |
| Netrunner | Cyber. Neural speedometer, text that decrypts into place, glitch effects |
| JDM | Tuner tach with shift lights, drift meter, Japanese expressway sign, kanji panels, Japanese speed sign |
| VHS | Synthwave. Retro speedometer, VHS "PLAY" area title cards |
Every part can also be mixed by hand in /hud (status icons, speedometer, job and money panel, street name, compass, minimap frame, panel graphics, font, colors and so on).
Set the default look for new players in config.lua with Config.Defaults.preset.
Configuration (config.lua)
| Option | What it does |
|---|---|
Config.Framework |
'auto' (recommended) or force 'qbx', 'qb', 'esx' or 'standalone' |
Config.SettingsCommand / Config.CinematicCommand |
Command names |
Config.UpdateOnFoot / Config.UpdateInVehicle |
How often the HUD refreshes in ms. Higher means lighter on resmon |
Config.Postal / Config.PostalMap |
Postals (see below) |
Config.SpeedLimit |
Limits for town, back roads and highways, plus exact limits per street |
Config.Indicators |
Turn signal keys and auto-cancel |
Config.Fuel |
'native' (LegacyFuel, cdn-fuel, ps-fuel...) or 'ox' (ox_fuel) |
Config.MinimapOnlyInVehicle |
Hide the minimap on foot |
Config.Seatbelt |
Built-in seatbelt and its key |
Config.BoatAnchor |
The /anchor command |
Config.Minimap |
Minimap control, rounded corners, backdrop, hiding GTA's health bars |
Config.AdminAce |
The permission for /hudmapdefault |
Config.HideUntilLoaded / Config.HideOnScriptedCam |
Hide the HUD on character select, spawn selectors and cutscenes |
Config.VersionUrl |
Optional update check |
Config.Defaults |
The default look and options for every player |
Postals
Nova finds postals automatically:
- Your own postal file. Put the
.jsoninnova-hud/postals/and setConfig.PostalMap = 'your_file_name'(without.json). The format is the same as nearest-postal uses:[{"code":"001","x":57.8,"y":7211.6}, ...]. - Any postal script your server runs (nearest-postal and others). It's found by itself.
- The built-in maps. These are
'new'(New & Improved, the default),'ocrp'and'old'.
Type /hudpostal in F8 to see which one is used.
Speed limits
GTA has no real speed limits, so Nova works them out. By default that's 70 mph on highways and 50 everywhere else. Set exact limits for single streets in Config.SpeedLimit.Streets.
The minimap
- One map for everyone: line the map up in game (size, position and the
/hudmapfit), then type/hudmapdefault. - Rounded corners: if the corners don't line up on a screen size, use
/hudmap. The arrow keys move it, W/S and A/D resize it, and Save keeps it. - Another script controls your minimap: set
Config.Minimap.Control = false.
For other scripts
-- your own seatbelt script tells Nova the state
TriggerEvent('nova-hud:seatbelt', true)
-- hide / show the HUD
exports['nova-hud']:ToggleHud(false)
Turn signals are synced to everyone through the vehicle state bag novaBlink (0 off, 1 left, 2 right, 3 hazards).
Troubleshooting
| Problem | Fix |
|---|---|
| Two HUDs on screen | Stop your old HUD resource |
| No hunger, thirst or stress | Make sure your framework starts before nova-hud |
| Minimap in the wrong place or corners off | /hudmap, then save. Admins: /hudmapdefault |
| No postal | /hudpostal in F8 shows what was found |
| Turn signals don't work | Check for another blinker script; try /blinker left |
| HUD shows on character select | Keep Config.HideUntilLoaded = true and start your framework first |
Credits
- Nova HUD is made by QBₓ BØNES. Do not resell or reupload it.
- Fonts: Google Fonts, under the SIL Open Font License.
- Icons: Font Awesome Free 6.5.2. Icons are CC BY 4.0 and the fonts are SIL OFL.
- Built-in postal coordinates: nearest-postal by BlockBa5her, under the MIT License (see
postals/LICENSE.txt).