HUD
This is a step-by-step installation guide, configuration preview, and full explanation of all settings for legends_hud.
If you lack programming experience, ensure you read each step thoroughly without skipping, as all documentation is essential!
Before submitting a support ticket or following the guides in this documentation, please make sure that you are running the latest version of the resource.
What is legends_hud?
legends_hud is a clean, modern heads-up display for FiveM that auto-detects your full server stack ā framework, inventory, notify, fuel, voice, and medical ā and slots in without code edits. Players see real-time vitals (health, armor, hunger, thirst, stamina, stress, oxygen), full vehicle telemetry, aircraft instruments, a physics-based seatbelt that ejects unbelted occupants on hard collisions, a three-tier voice proximity ring, and a square minimap with optional tilt mode. A built-in preferences panel lets every player retune colors, icon shapes, display toggles, and speedometer style live ā no resource restart required.
The resource auto-detects ESX, QB-Core, QBox, or standalone, plus 8 inventories, 7 notify systems, 6 fuel scripts, 3 voice mods, and 7 ambulance/medical scripts. Every category is overrideable in Config.Integrations.
Key Features
- Multi-Framework Auto-Detection ā Resolves ESX, QB-Core, QBox, or standalone at startup; manual overrides live in
Config.Integrationsinconfig.lua - Comprehensive Vitals ā Health, armor, hunger, thirst, stamina, stress, and oxygen, each with per-bar color and icon-shape customization (circle, square, hexagon, heart, star, percent)
- Full Vehicle Telemetry ā Speed (km/h or mph), RPM, gear, fuel, engine health, and seatbelt status, plus aircraft instruments (altitude, heading, pitch, roll, airspeed)
- Physics-Based Restraint System ā Real-time collision detection ejects unbelted occupants with kinetic-energy damage; boats, helicopters, planes, submarines, and trains are auto-exempt
- Three-Tier Voice Proximity ā Whisper (35m), normal (65m), and shout (100m) ranges with radio transmission status from pma-voice, saltychat, or mumble-voip
- Square Minimap with Tilt Mode ā Optional perspective minimap that hides on foot, plus optional street, region, and heading display
- In-Game Preferences Panel ā Players adjust colors, icon shapes, display toggles, and speedometer style without restarting the resource ā settings persist via KVP
- Wide Integration Surface ā Auto-detects 8 inventories, 7 notify systems, 6 fuel scripts, 3 voice mods, and 7 medical/ambulance scripts; every category overrideable per server
- Custom Integration Hooks ā Seven
lhud:*events let custom medical, voice, or status systems feed values into the HUD without modifying its source - Lightweight Dependency Surface ā Only ox_lib is required; no oxmysql, no MariaDB, no extra UI libraries
Compatibility Matrix
| Category | Auto-Detected Targets |
|---|---|
| Framework | ESX (es_extended), QB-Core (qb-core), QBox (qbx_core), standalone |
| Inventory | ox_inventory, qs-inventory, codem-inventory, origen_inventory, tgiann-inventory, qb-inventory, ps-inventory, native |
| Notify | ox_lib, okokNotify, t-notify, mythic_notify, motion_notify, qb-core, es_extended, native feed |
| Fuel | ox_fuel, LegacyFuel, ps-fuel, cdn-fuel, lj-fuel, ND_Fuel, native (GetVehicleFuelLevel) |
| Voice | pma-voice, saltychat, mumble-voip |
| Medical | qb-ambulancejob, qbx_medical, qbx_ambulancejob, wasabi_ambulance, codem-ambulance, ps-medical, esx_ambulancejob, standalone |
Default Keybinds
| Action | Key |
|---|---|
| Toggle seatbelt | B |
| Open HUD preferences panel | I |
| Toggle cinematic widescreen bars | (configurable) |
All keybinds register via RegisterKeyMapping, so players can rebind them from the FiveM keybinds menu without editing config.
Need help? Join our Discord (opens in a new tab) for support!
FAQ
Which frameworks, inventories, notify systems, fuel scripts, voice mods, and ambulance scripts are auto-detected?
Frameworks: ESX, QB-Core, QBox, standalone. Inventory: ox_inventory, qs-inventory, codem-inventory, origen_inventory, tgiann-inventory, qb-inventory, ps-inventory, 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, native. Voice: pma-voice, saltychat, mumble-voip. Medical: qb-ambulancejob, qbx_medical, qbx_ambulancejob, wasabi_ambulance, codem-ambulance, ps-medical, esx_ambulancejob, standalone. Every category is overrideable in Config.Integrations in config.lua.
How does the physics-based seatbelt system work?
The HUD samples vehicle velocity every tick. When deceleration exceeds 35 m/s² (a hard collision) and the player is unbelted, it ragdolls them out of the seat with kinetic-energy-scaled damage. Belted players stay put. Boats, helicopters, planes, submarines, and trains are exempt by default; you can add or remove vehicle classes and per-model exclusions in config.lua under profile.vehicle.
Can players customize colors, icon shapes, and toggles without restarting the resource?
Yes. The default I keybind opens the in-game preferences panel. Players can change every status bar color, swap icon shapes (circle, square, hexagon, heart, star, percent), toggle individual widgets (cash, bank, job, ID, compass, street info, cinematic bars), and switch between advanced and minimal speedometer styles. Settings persist via KVP across reconnects.
How do I tune the three voice proximity tiers (whisper / normal / shout)?
Voice ranges live in profile.voiceSteps in config.lua as { 35, 65, 100 } ā three radii in metres for whisper, normal, and shout respectively. Edit the numbers to match your roleplay distances. The HUD then mirrors whatever pma-voice, saltychat, or mumble-voip sets via the standard talking-mode events.
Will it conflict with cd_hud, qb-hud, ps-hud, or okok-hud?
Yes ā it replaces them. Remove the old HUD's ensure line from server.cfg before adding ensure legends_hud. Both the radar/minimap and the per-frame HUD scaleforms are taken over by Legends HUD. If you keep an old HUD running you'll see overlapping bars and double minimaps.
How do I plug in a custom medical, voice, or status system that isn't auto-detected?
Use the lhud:* event hooks documented on the Exports & API page. Trigger lhud:setNeeds, lhud:setStress, lhud:setVoiceStep, lhud:setRadioActive, lhud:suppressHud, lhud:suppressRadar, or lhud:setIncapacitated from your custom scripts to feed values into the HUD without touching its source.