HM Notrufsäulen - Überblick
Das Script HM_Notrufsaeulen bringt voll funktionsfähige Notrufsäulen auf deinen FiveM-Server. Säulen werden direkt im Spiel über einen 3D-Placer gesetzt, über ein umfangreiches Config-Tablet verwaltet und lösen bei Benutzung echte Dispatch-Meldungen (z. B. an Leitstellen oder Einsatzkräfte) aus.
Das System ist vollständig Standalone lauffähig. Frameworks wie ESX oder QBCore werden automatisch erkannt und für Spielernamen, Dienstprüfungen (Jobs) sowie optionale Tablet-Items herangezogen.
Features im Überblick
Abschnitt betitelt „Features im Überblick“- Config-Tablet als NUI (
/notruf_config, Item oder Keybind): Eigenes Interface im modernen HM_ELSPlus-Look (Tabs, Karten, Modals, Suche) zum Anlegen, Bearbeiten, Verschieben und Löschen von Säulen. - Rechte über ACE oder JSON-Liste: Beides gleichzeitig möglich (
both). Berechtigungen können direkt im Tablet an Online-Spieler vergeben werden. - Ingame-Placer: Props millimetergenau mit der Kamera ausrichten, drehen, Höhe und Abstand feinjustieren sowie Boden-Snap ein-/ausschalten.
- Templates statt Einzelprops: Prop, Ausrichtung und Dienstumfang einmal als Template festlegen – neue Säulen erben alle Eigenschaften auf Knopfdruck.
- Frei konfigurierbare Notrufdienste: Bezeichnung, Rufnummer, Jobs, Dispatch-Adapter, Meldecode, Cooldown sowie individuelle SVG-Logos je Behörde/Organisation.
- Interaktive Karte mit Satellitenbild: Säulen als Symbole, eigene Spielerposition live mitlaufend und Ingame-Kalibrierungsfunktion (Einmessen ohne Koordinatenraten).
- Einstellungen im Tablet (nur Admin): Cooldowns, Verbindungsaufbau, Redundanz und Prop-Auswahl direkt im Spiel ohne Dateizugriff anpassen.
- Dispatch-Anbindung: Standard-Adapter für Emergency Dispatch (LoveRP Scripts) ist integriert. Weitere Schnittstellen lassen sich flexibel über eigene Adapter anbinden; automatische Job-Benachrichtigung als Redundanz.
- Eigenes Bedienfeld an der Säule: Authentisches NUI im Look echter Autobahn-Notrufsäulen inklusive Schild für Autobahn, Kilometer, Säulen-Nummer, Standortanzeige und Tasten pro Notrufdienst. Antworten der Leitstelle werden in einer Sprechblase dargestellt.
- Flexible Interaktion: Wahlweise über
ox_targetoderTextUI(automatischer Fallback auf TextUI, fallsox_targetnicht vorhanden ist). - Sicherheit & Performance: Serverseitige Distanz- und Cooldown-Prüfungen, Unterstützung für anonyme Meldungen sowie DE/EN-Locales.
Abhängigkeiten
Abschnitt betitelt „Abhängigkeiten“| Resource | Pflicht | Zweck |
|---|---|---|
| ox_lib | Ja | Callbacks, Points, Notifications, TextUI |
| ox_target | Optional | 3D-Interaktion an der Notrufsäule (fällt sonst auf TextUI zurück) |
| ox_inventory / ESX / QBCore | Optional | Verwendung des Config-Tablets als Inventar-Item |
| Dispatch-Resource | Optional | Weitergabe von Notrufen (z. B. Emergency Dispatch, Roadphone, etc.) |
Dateien & Ordnerstruktur
Abschnitt betitelt „Dateien & Ordnerstruktur“Das Paket ist in zwei Resourcen aufgeteilt:
[hm_Notrufsaeulen-Pack]/├── hm_Notrufsaeulen/ # Logik, UI, Daten & Adapter└── hm_Notrufsaeulen_stream/ # Prop & Archetype (nicht im laufenden Betrieb neustarten)Die Hauptresource hm_Notrufsaeulen gliedert sich wie folgt:
hm_Notrufsaeulen/├── config/│ ├── config.lua # Hauptkonfiguration│ └── services.lua # Standard-Notrufdienste (Seed für data/services.json)├── data/ # Laufzeitdaten (JSON, server-only)│ ├── pillars.json # Angelegte Säulen│ ├── templates.json # Vorlagen / Templates│ ├── services.json # Konfigurierte Notrufdienste│ ├── permissions.json # Berechtigungsliste│ ├── settings.json # Im Tablet geänderte Einstellungen│ └── map.json # Kartengrenzen nach Kalibrierung├── html/ # NUI-Dateien für Tablet & Säule│ ├── saeule.svg # Symbol der Säule (Tablet & Karte)│ ├── eigen_gps.svg # Eigener Standortmarker│ └── map.jpg # Satellitenkarte├── locales/ # de.json / en.json Sprachdateien├── server/│ ├── adapters/ # Aktive Dispatch-Adapter (z. B. emergencydispatch.lua)│ │ └── beispiele/ # Vorlagen für weitere Systeme (roadphone.lua, custom.lua)│ ├── bridge.lua / storage.lua / permissions.lua / dispatch.lua / main.lua├── shared/│ ├── settings.lua # Schema für Tablet-Einstellungen│ └── utils.lua└── client/Bekannte Stolpersteine & Hinweise
Abschnitt betitelt „Bekannte Stolpersteine & Hinweise“Bitte beachten
- Schreibrechte für
data/: Der Ordnerdata/muss auf dem Server beschreibbar sein (chmod -R 775 data/) und darf nicht gelöscht werden, da FiveM (SaveResourceFile) keine fehlenden Verzeichnisse anlegt. - Beim Update nicht überschreiben: Sichere vor dem Update deiner Resource immer den Ordner
data/, da dort alle platzierten Säulen, Templates, Rechte und Kalibrierungen gespeichert sind. Kopiere ihn nach dem Update zurück. - Kein Neustart von
hm_Notrufsaeulen_stream: Starte die Stream-Resource nicht während Spieler verbunden sind neu. Das Entladen von.ytyp-Archetypes im laufenden FiveM-Client führt zu Spielabstürzen. Die Logik-Resourcehm_Notrufsaeulenkann hingegen jederzeit gefahrlos neu gestartet werden. - Jobnamen mit Emergency Dispatch abgleichen: Meldet die Säule „Meldung weitergeleitet“, obwohl Personal online ist, stimmen die in den Notrufdiensten hinterlegten Jobnamen nicht mit den in Emergency Dispatch registrierten Einteilungen überein. Nutze den Befehl
notruf_dutyin der Serverkonsole zum Abgleich. config.luavs.data/settings.json: Änderungen an derconfig/config.luaerfordern einen Resource-Restart (restart hm_Notrufsaeulen). Der Konsolenbefehlnotruf_reloadlädt ausschließlich die dynamischen JSON-Dateien indata/neu.