X-SOLUTION
Dokumentation

X-HUD einrichten

Modulares HUD mit Live-Studio für ESX Legacy und QBCore. Diese Anleitung führt dich vom Download bis zum fertig eingerichteten HUD.

Voraussetzungen

  • FiveM Server mit aktuellem Artifact
  • es_extended (ESX Legacy) oder qb-core — X-HUD läuft auch standalone
  • Keine Datenbank nötig. Die Einstellungen deiner Spieler landen in settings.json innerhalb der Resource.

Optional, wird automatisch erkannt:

  • Voice: pma-voice, saltychat oder mumble-voip
  • Tank: ox_fuel, cdn-fuel, lc_fuel, ps-fuel, LegacyFuel oder die native Tankanzeige

Installation

  1. Lade x-hud aus dem Cfx.re Portal herunter.
  2. Entpacke den Ordner nach resources/[x-solution]/x-hud.
  3. Trage die Resource in deiner server.cfg ein, nach dem Framework:
ensure es_extended
ensure x-hud
  1. Server neu starten. In der Konsole steht dann, welches Framework, welcher Voice- und welcher Tank-Anbieter erkannt wurde.

Befehle und Tasten

Befehl Standardtaste Wirkung
/hud F7 Studio öffnen und HUD frei gestalten
/hudtoggle F5 HUD ein- und ausblenden
/hudreset Eigene Einstellungen zurücksetzen
B Sicherheitsgurt
ENTF Tempomat

Befehle und Tasten änderst du in Config.Commands und Config.Keys. Setzt du eine Taste auf false, wird keine Belegung registriert und Spieler vergeben sie selbst in den FiveM-Einstellungen.

Wichtige Einstellungen

Anbindungen

Config.Providers = {
    framework = 'auto',
    voice = 'auto',
    fuel = 'auto'
}

auto prüft beim Start, welche Resources laufen. Nur wenn mehrere gleichzeitig laufen oder die Erkennung danebenliegt, trägst du hier fest ein, was genutzt werden soll.

Fahrzeug

Config.Vehicle = {
    speedUnit = 'kmh',
    maxSpeed = 300,
    fuelWarning = 20,
    engineWarning = 40,
    cruiseControl = true,
    cruiseMinSpeed = 30
}

speedUnit akzeptiert kmh oder mph. Die Warnwerte sind Prozentangaben, ab denen Tank- und Motoranzeige rot werden.

Sicherheitsgurt

Config.Seatbelt = {
    enabled = true,
    ejectSpeed = 110,
    ejectForce = 15.0,
    lethal = false,
    blockExitAbove = 20,
    warningSpeed = 60
}

Ohne Gurt fliegt der Fahrer ab ejectSpeed aus dem Fahrzeug. Mit lethal = true endet der Aufprall tödlich. blockExitAbove verhindert das Aussteigen oberhalb dieser Geschwindigkeit.

Status-Werte

Config.Status = {
    hunger = true,
    thirst = true,
    stress = true,
    esxStatusNames = {
        hunger = 'hunger',
        thirst = 'thirst',
        stress = 'stress'
    }
}

Nutzt dein Server abweichende Namen in esx_status, trag sie in esxStatusNames ein. Sonst bleiben die Ringe leer.

Benachrichtigungen

Config.Notifications = {
    enabled = true,
    maxVisible = 4,
    replaceEsx = true,
    replaceQb = false
}

Mit replaceEsx beziehungsweise replaceQb übernimmt X-HUD die Benachrichtigungen deines Frameworks, ohne dass du andere Scripts anfassen musst.

Module und Design

In Config.Modules schaltest du serverweit einzelne Bereiche ab, etwa weapon = false, wenn du keine Munitionsanzeige möchtest. Config.Design legt Grundfarbe, Skalierung, Deckkraft und Eckenradius fest.

Config.AllowPlayerLayout = true
Config.AllowPlayerTheme = true

Damit entscheidest du, ob Spieler Position und Farben selbst anpassen dürfen. Stehen beide auf false, gilt für alle dein Design aus der Config.

Studio

Das Studio öffnest du mit /hud oder F7. Elemente werden angeklickt, mit der Maus verschoben und gespeichert. Die Einstellungen liegen pro Identifier auf dem Server und überstehen Reconnects wie Neustarts.

Gespeichert wird in settings.json im Resource-Ordner. Sichere diese Datei vor einem Update, wenn du die Resource komplett ersetzt — sonst verlieren deine Spieler ihre Anpassungen.

Andere Scripts anbinden

X-HUD bringt Exports mit, die du aus deinen eigenen Scripts heraus nutzen kannst:

exports['x-hud']:notify({ type = 'success', message = 'Auftrag erledigt', duration = 4000 })
exports['x-hud']:showNotification('Kurze Meldung', 'info', 3000)

exports['x-hud']:progress({ label = 'Wird durchsucht', duration = 5000 })
exports['x-hud']:cancelProgress()

exports['x-hud']:showHint('Drücke zum Öffnen', 'E')
exports['x-hud']:hideHint()

exports['x-hud']:toggleHud(false)
exports['x-hud']:isHudVisible()
exports['x-hud']:isBuckled()

Serverseitig geht das ebenfalls, mit der Spieler-ID als erstem Wert:

exports['x-hud']:notify(source, { type = 'error', message = 'Nicht genug Geld' })

Alternativ per Event:

TriggerClientEvent('x-hud:notify', source, { type = 'info', message = 'Hallo' })

Häufige Fragen

Das HUD erscheint nicht

Prüfe die Reihenfolge in der server.cfg: X-HUD muss nach dem Framework geladen werden. In der Serverkonsole steht beim Start, welches Framework erkannt wurde.

Die Tankanzeige bleibt leer

Dein Tank-Script wurde nicht erkannt. Trag es fest in Config.Providers.fuel ein, zum Beispiel 'ox_fuel' oder 'LegacyFuel'.

Hunger und Durst bleiben auf null

Die Statusnamen stimmen nicht. Vergleiche Config.Status.esxStatusNames mit dem, was esx_status auf deinem Server registriert.

Die Sprachanzeige reagiert nicht

Setze Config.Providers.voice fest auf 'pma-voice', 'saltychat' oder 'mumble', statt auf 'auto' zu vertrauen.

Ein Spieler hat sich das HUD zerschossen

/hudreset setzt die persönlichen Einstellungen zurück. Serverweit löschst du dafür die settings.json und startest die Resource neu.

Leistung auf vollen Servern

Config.Rates bestimmt, wie oft die einzelnen Bereiche aktualisiert werden — höhere Werte bedeuten weniger Last. Config.Performance pausiert das HUD zusätzlich, wenn es ausgeblendet ist oder das Pausenmenü offen steht.

Support

Kommst du nicht weiter, melde dich auf Discord. Halte bitte die Serverkonsole vom Start und deine Resource-Version bereit.

Etwas unklar geblieben?

Schreib uns auf Discord, wir ergänzen die Anleitung.

Discord