Installation
Requirements
Required
- ox_lib — Utility library used for
lib.notifyand other helpers (GitHub (opens in a new tab))
Optional (Auto-detected)
- Framework — ESX (
es_extended), QB-Core (qb-core), or QBox (qbx_core). If none are present the HUD runs standalone. - Inventory — ox_inventory, qs-inventory, codem-inventory, origen_inventory, tgiann-inventory, qb-inventory, ps-inventory, or native.
- Notify — ox_lib, okokNotify, t-notify, mythic_notify, motion_notify, plus QB and ESX natives.
- Fuel — ox_fuel, LegacyFuel, ps-fuel, cdn-fuel, lj-fuel, ND_Fuel, or native (
GetVehicleFuelLevel). - Voice — pma-voice, saltychat, or mumble-voip.
- Medical / Ambulance — qb-ambulancejob, qbx_medical, qbx_ambulancejob, wasabi_ambulance, codem-ambulance, ps-medical, esx_ambulancejob, or standalone.
The HUD auto-detects all of the above on startup. In most setups you can drop it in and ensure it without editing a single Lua file. Manual overrides live in Config.Integrations in config.lua.
Installation Steps
Step 1: Download the Resource
Download legends_hud from your Keymaster grants or the store page (opens in a new tab) (Tebex package 7415683 — free).
Step 2: Extract to Resources
Place the legends_hud folder into your server's resources directory.
resources/
└── legends_hud/
├── fxmanifest.lua
├── config.lua
├── client.lua
├── server.lua
├── restraint.lua
├── bridge/
│ ├── shared.lua
│ ├── client.lua
│ └── server.lua
├── html/
│ └── dist/
│ ├── index.html
│ ├── assets/
│ ├── css/
│ ├── images/
│ ├── shapes/
│ ├── sounds/
│ └── Config.json
└── stream/Step 3: Remove Conflicting HUDs
If you currently run another HUD resource, disable it before enabling legends_hud. Common ones to remove or comment out:
# ensure cd_hud
# ensure qb-hud
# ensure ps-hud
# ensure okok-hudLeaving an old HUD enabled alongside Legends HUD will produce overlapping status bars, two minimaps, and conflicting voice/seatbelt indicators. Disable the old one first.
Step 4: Add to Server Config
Add the following to your server.cfg:
# Required
ensure ox_lib
# Then the HUD
ensure legends_hudImportant: ox_lib must start before legends_hud.
Step 5: Configure (Optional)
Customize the HUD in config.lua. Most servers leave everything on 'auto' and don't touch this file. See the Configuration page for every option.
Common first-edit targets:
Config.Integrations.*— pin a specific framework, inventory, notify, fuel, voice, or medical resource if auto-detection picks the wrong oneprofile.units— switch betweenmetric(km/h) andimperial(mph)profile.voiceSteps— change whisper / normal / shout radii (default{ 35, 65, 100 })profile.binds— rebind seatbelt (B), preferences panel (I), or cinematic widescreenprofile.toggles.minimapVehicleOnly— hide the minimap when on footprofile.vehicle.exemptClasses— vehicle classes excluded from the restraint system (default: boats, helicopters, planes, submarines, trains)
Step 6: Restart Server
Restart your server, or run refresh and ensure legends_hud from the live console.
Verification
After installation:
- Connect to your server. Vitals (health bar, armor bar, hunger, thirst) should appear at the bottom of the screen.
- Enter a car. The speedometer, fuel gauge, and seatbelt indicator should appear next to the minimap.
- Press I to open the preferences panel. Try changing a status bar color or icon shape — the HUD should update live.
- Press B in a non-exempt vehicle. The seatbelt indicator should toggle. Crash hard while unbelted to test ejection.
- Talk on voice. The voice proximity ring should update; press the voice toggle key to step between whisper / normal / shout.
Troubleshooting
HUD detected the wrong framework or inventory? Pin it explicitly in Config.Integrations. For example:
Config.Integrations = {
Framework = 'qbx_core', -- force QBox
Inventory = 'ox_inventory',
Notify = 'ox_lib',
Fuel = 'LegacyFuel',
Voice = 'pma-voice',
Medical = 'qbx_medical',
}Cash / bank not showing? The HUD reads cash from your inventory's items file via the configured cashItem (default money). If your inventory uses a different item name, edit profile.finance.cashItem in config.lua.
Need help? Join our Discord (opens in a new tab) and open a support ticket!