FJX Studios Dokumentation

Konfiguration

Werte der config.lua, Ingame-Einstellungen im Creator, Dispatch-Systeme und Speicherung.

Zuletzt aktualisiert: 21. August 2026

FJX Notrufsäulen ist so gebaut, dass die meisten Einstellungen ingame im Creator gesetzt werden. In der config.lua stehen nur die Werte, die schon vor dem Serverstart feststehen müssen.

Allgemein

Option Standard Beschreibung
Config.Locale 'de' Sprache: 'de' oder 'en'
Config.Debug false Debug-Ausgaben in der Konsole
Config.Command 'notrufsaeulen' Command zum Öffnen des Creators
Config.DefaultProp 'notrufsaeule' Standardprop, falls eine Säule keinen eigenen hinterlegt hat

Framework

Option Standard Beschreibung
Config.Framework 'auto' 'auto', 'esx', 'qbcore' oder 'standalone'
Config.ESXResource 'es_extended' nur anpassen, wenn abweichend
Config.QBResource 'qb-core' nur anpassen, wenn abweichend

'auto' versucht zuerst ESX, dann QB-Core, sonst Standalone.

Berechtigungen

Option Standard Beschreibung
Config.PermissionMode 'both' 'ace', 'group' oder 'both' — eine der beiden Prüfungen genügt
Config.AcePermission 'fjx.notrufsaeulen' ACE-Permission, die den Creator freigibt
Config.AllowedGroups { 'projektinhaber', 'superadmin' } erlaubte ESX-/QB-Gruppen

Interaktion & Sound

Option Standard Beschreibung
Config.InteractDistance 2.5 Distanz zur Säule in Metern, in der man interagieren kann
Config.ColumnCloseDistance 15.0 Distanz, ab der sich das geöffnete Säulen-Fenster automatisch schließt
Config.SoundFullDistance 1.5 bis zu dieser Distanz volle Lautstärke (Meter)
Config.SoundMaxDistance 6.0 ab dieser Distanz nicht mehr hörbar (Meter)
Config.SoundMasterVolume 1.0 Gesamt-Lautstärke-Deckel (0.0 – 1.0)

Der Sound geht von der Säule aus und ist für alle Spieler in der Nähe hörbar — je näher, desto lauter (quadratischer Falloff zwischen SoundFullDistance und SoundMaxDistance). Mehrere Säulen klingen gleichzeitig und unabhängig.

Spamschutz & Speicher

Option Standard Beschreibung
Config.CooldownMinutes 3 Minuten zwischen zwei Auslösungen pro Spieler
Config.Storage 'json' 'json' (keine DB nötig) oder 'mysql' (oxmysql)
Config.MySQLTable 'fjx_notrufsaeulen' Tabellenname bei Config.Storage = 'mysql'

Dispatch-Priorität

config.lua
lua
Config.DispatchPriority = {
    'ps-dispatch',
    'qs-dispatch',
    'ls-dispatch',
    'emergencydispatch',
    'cd_dispatch',
    'core_dispatch',
    'linden_outlawalert',
    'custom'
}

Bei der Einstellung „Automatisch erkennen" wird das erste laufende System aus dieser Liste genutzt. Die Reihenfolge bestimmt die Priorität. Im Creator lässt sich pro Server auch ein System fest erzwingen.

Blip

Feld Standard Beschreibung
enabled true Blips auf der Karte anzeigen
sprite 658 Blip-Symbol
color 1 Blip-Farbe
scale 0.7 Größe
shortRange true nur in der Nähe sichtbar

Ingame-Einstellungen (Creator)

Über das Zahnrad unten links im Creator:

Einstellung Beschreibung
Interaktionsart ox_target / qb-target oder 3D-Text
Dispatch-System automatisch erkennen oder ein System erzwingen
Jobs für Notruf welche Jobs den Notruf erhalten (mehrere mit Komma)
Jobs für Pannenhilfe welche Jobs die Pannenhilfe erhalten
Mindestanzahl online wie viele Einsatzkräfte im Dienst sein müssen
Verhalten ohne Dienst Notruf blockieren oder trotzdem absetzen
Cooldown Spamschutz pro Spieler

Pro Säule lassen sich Name, Prop, Position/Höhe und das Neu-Positionieren direkt in der Detailansicht setzen.

Dispatch-Systeme

Unterstützt werden sieben Systeme plus ein Custom-Hook, jeweils nach offizieller API angebunden:

  • ps-dispatch, qs-dispatch, ls-dispatch (CustomAlert)
  • emergencydispatch (LoveRP)
  • cd_dispatch, core_dispatch
  • linden_outlawalert (wf-alerts)

Online-Prüfung: Das Skript zählt die im Dienst befindlichen Einsatzkräfte der Zieljobs. Ist die Mindestanzahl nicht erreicht, greift das eingestellte „Verhalten ohne Dienst". Der Sirenen-Sound wird nur abgespielt, wenn der Einsatz wirklich an erreichbare Kräfte übermittelt wurde.

Eigenes System anbinden

Nutzt du ein Dispatch-System, das nicht dabei ist, setze im Creator das System auf Custom und passe escrow_ignore/custom_dispatch.lua an — diese Datei liegt außerhalb des Escrows und ist frei editierbar.

Speicher: JSON oder MySQL

Speichert in saeulen.json im Resource-Ordner. Keine Datenbank nötig, Plug & Play.

Die Datei wird beim ersten Speichervorgang automatisch angelegt.

Config.Storage = 'mysql' setzen. Die Tabellen werden beim Start automatisch per CREATE TABLE IF NOT EXISTS angelegt — oxmysql muss laufen.

Nächster Schritt