FirstResponderReloaded
Hallo zusammen
Nachdem JuMaHo und DrTraxx nun leider beide nicht mehr aktiv sind habe ich für mich das FirstResponder Skript überarbeitet und möchte euch dieses nun zur Verfügung stellen. Grundlegend basiert es noch auf dem Skript von DrTraxx mit ein paar Verbesserungen. Daher referenziere ich hier die beiden sehr gerne. Ich kann sie leider nicht um Erlaubnis bitten, da ich keine Kontaktdaten der beiden finden kann. Sollte noch jemand zu ihnen Kontakt haben, könnt ihr mir gerne eine PN schreiben. Da JuMaHo schon einmal einverstanden war mit der Überarbeitung und DrTraxx auf seinem Github die MIT Lizenz nutzt (Für das was noch öffentlich ist) gehe ich erst mal davon aus, dass nichts dagegenspricht. Meine Version nutzt die API von LSSM V4. Vielen Dank für die Bereitstellung. Des Weiteren ist mir aufgefallen, dass die Umsetzung meines HotKeys inkl. Alarmierung sehr dem OneKey Skript von JuMaHo, Jan (jxn_30) und Crazycake ähneln. Daher verlinke ich gerne auch dieses: OneKey. Außerdem ist mir BOS-Ernie mit seinem Skript ein bisschen zuvorgekommen. Wer auf die Einstellmöglichkeiten via PopUp, die Speicherung der Einstellungen im Browser (Und deren Nachteile) sowie die API Schnittstelle verzichten kann/will sollte sich das Skript Ersthelfer anschauen.
Zum Skript:
- Das FirstResponderReloaded Skript wählt über einen AAO Button das Fahrzeug aus, welches am schnellsten am jeweiligen Einsatzort sein kann. Dies ist besonders für das mitverdienen bei Verbandseinsätzen hilfreich. Die Funktion eines FirstResponders aus dem RL im eigentlichen Sinn ist zwar teilweise im Spiel umgesetzt aber darauf zielt dieses Skript NICHT ab!
- Ihr könnt auswählen welche Fahrzeugtypen als FirstResponder verwendet werden dürfen.
- Ihr könnt einstellen, dass nur Fahrzeuge gewisser Leitstellen alarmiert werden dürfen.
- Wird die Funktion mit der "Leitstellen Beschränkung" verwendet, könnt ihr zusätzlich in jeder Wache auswählen ob Fahrzeuge dieser Wache dennoch alarmiert werden dürfen (Auch wenn sie nicht zu den gewählten Leitstellen gehört).
- Die Alarmierung erfolgt über den in den Einstellungen ausgewählte AAO-Button oder per HotKey. Aktuell ist die Taste V als HotKey ausgewählt. Wird eine der beiden Möglichkeiten betätigt wird das Fahrzeug ausgewählt, alarmiert und zum nächsten Einsatz gesprungen.
Anleitung:
- Ihr müsst zuerst eine leere AAO erstellen die ihr für den First Responder nutzen wollt. Nachdem ihr die neue AAO erstellt habt müsst ihr diese bearbeiten (vorher kann die AAO ID nicht abgegriffen werden). Im Bearbeitungsfenster der AAO müsst ihr dann das Häkchen bei "Diese ID für den First Responder nutzen" setzen. Solltet ihr versuchen eine zweite AAO zu nutzen, wird durch das Skript lediglich die zuletzt gewählte AAO genutzt.
- Ihr öffnet einen beliebigen Einsatz. Neben der zuvor erstellten AAO sollte nun ein Button mit Zahnrad-Icon sein. Wenn ihr dieses anklickt gelangt ihr zu den Einstellungen.
- Im Dialog wählt ihr die erlaubten Fahrzeuge aus indem ihr sie markiert (Hintergrund wird grau). Eine Mehrfachauswahl ist mit dem Gedrückthalten der Strg-Taste möglich. Gleiches gilt für die Leitstellenauswahl. Die Leitstellenauswahl ist nur aktiv, wenn ihr auch das zugehörige Häkchen setzt.
- Speichern nicht vergessen
- Solltet ihr die Leitstellenbegrenzung nutzen könnt ihr in jeder Wache zusätzlich nochmal auswählen ob die Wache dennoch
berücksichtigt werden soll. Dazu die Wache bearbeiten und folgendes Häkchen setzen:
- Anschließend könnt ihr mit der Taste V oder dem AAO Button fleißig euren First Responder alarmieren und zum nächsten Einsatz springen.
Verbesserungen und Kompatibilität (im Vergleich zu DrTraxx Skript):
- Wurde zuvor das Skript von DrTraxx verwendet werden die Einstellung übernommen. Ihr solltet nur das alte Skript in Tempermonkey entfernen/abschalten!
- Fahrzeugdaten werden maximal alle 5 Minuten aus der LSSM V4 API entnommen (Auch wenn ich mal inaktiv oder gebannt sein sollte ). Heißt aber auch wenn es Probleme beim LSSM gibt funktioniert die Aktualisierung der Daten in meinem Skript nicht mehr!
- Es wird ein Präfix vor die Fahrzeugtypen geschrieben um doppelte Fahrzeuge (z.B. die NEAs) auseinander halten zu können und eine bessere Sortierung zu gewährleisten. Es gibt dabei leider Fahrzeuge die in mehreren Organisationen vorhanden sind (z.B. RTW). Ich habe hier eine Priorisierung eingebaut. So sind RTW beispielsweise als Rettung bezeichnet. Es werden jedoch auch Feuerwehr RTW alarmiert.
- Die Fahrzeit der AAO (da kein Fahrzeug hinterlegt ist immer "-") wird mit der Fahrzeit des FirstResponders beschrieben
- HotKey Funktion sowie automatische Alarmierung
- Für mich: Kommentare im Skript, Logging sowie Updatefunktionalität
Ausschluss von Gewährleistung:
Es ist mir leider nicht möglich gewesen abschließend zu klären ob dieses Skript gegen die AGB verstößt. Ich habe dazu einen Moderator angeschrieben der mir nun seit mehreren Wochen nicht mehr antwortet. Ich weiß nicht ob die Prüfung tatsächlich so viel Zeit in Anspruch nimmt aber nicht mehr zu reagieren ist irgendwie auch komisch.
ABER: Aufgrund der Tatsache, dass es die Funktionen an sich schon mehrere Jahre gibt (Skripte OneKey von JuMaHo, Jan und Crazycake, der Ursprüngliche FirstResponder von JuMaHo und DrTraxx sowie die Neuauflage Ersthelfer von BOS-Ernie) gehe ich aktuell davon aus, dass mein "Zusammenschluss" dieser Funktionen ebenfalls erlaubt ist.
Zum Schutz habe ich eine kleine Verzögerungszeit von einer Sekunde eingebaut. Diese ist nach meiner Erfahrung kaum zu spüren. Ob das wirklich hilft weiß ich allerdings auch nicht.
Sollte es dahingehend eine negative Rückmeldung geben werde ich schnellstmöglich mein Skript anpassen/entfernen!
Dennoch möchte ich hiermit klarstellen:
- Ich übernehme keine Verantwortung/Haftung für durch die Nutzung des Skripts entstandene Schäden (z.B. Sperrung eines Accounts).
- ich gebe keine Garantie auf die fehlerfreie Funktion des Skripts
- Die Nutzung des Skripts ist also auf eigene Gefahr!
Installation:
- Bitte lest euch zuerst alle Informationen in diesem Beitrag durch!
- Für das Skript wird die Browsererweiterung Tempermonkey benötigt (Sollte eigentlich bekannt sein).
- ist Tempermonkey installiert wird das Skript über folgenden Link installiert:
FirstResponderReloaded V1.0.0
Bekannte Fehler und geplante Updates:
- Aktuell kann ich nur die deutsche Variante vom Leitstellenspiel supporten. Dementsprechend wird das Skript nur auf leistellenspiel.de sowie polizei.leitstellenspiel.de ausgeführt. Es ist geplant weitere Welten zu unterstützen. Je nachdem wie ich Zeit dazu habe.
- Die Fahrzeit wird aktuell in das bestehende Feld geschrieben. Dieses wird leider durch das Spiel nach einer gewissen Zeit aktualisiert. Ich schreibe deshalb die Zeit erst nach einer Sekunde rein. Manchmal kann es jedoch passieren, dass es dennoch wieder überschrieben wird (Je nach Ladezeit). Zukünftig möchte ich daher einen eigenen Button mit Fahrzeit einfügen und auf die Nutzung der AAO verzichten.
- Die Daten aus der LSSM API bzw. dem Speicher des Browsers werden bei jeder Ausführung bearbeitet um sie nutzbar zu machen. Ich habe es leider nicht geschafft den Code so umzuschreiben, dass ich die ID aus DrTraxx API nicht mehr benötige. Außerdem wird der Präfix immer neu geschrieben. Dies soll ebenfalls nur noch dann ausgeführt werden, wenn nach 5 Minuten die API wieder neu abgefragt wurde.
- Ich möchte den Button für die Einstellungen aus dem Alarmfenster entfernen und auf die Startseite vom LSS setzen (Oben im Menü).
- Ich möchte den HotKey über den Einstellungsdialog wählbar machen. Aktuell ist dieser fest auf die Taste V gelegt.
- Ich möchte eine Export/Import Funktion implementieren um die Einstellungen zu sichern. Dann würden die Nachteile der Speicherung im Browser zumindest abgeschwächt.
- Ich möchte eine Rückfallebene schaffen falls es mal keine API mehr geben sollte, aus der man die Fahrzeugdaten auslesen kann. Eventuell auch über Export/Import Funktion.
Kurz zu mir:
Ich habe erst vor kurzem angefangen mit dem Scripting. Ein eigenes Skript würde ich mit meinem aktuellen Wissensstand nicht schaffen und viele Änderungen habe ich nur mit Hilfe gewisser "Chat Bots" geschafft. Habt also ein bisschen Nachsicht, dass mein Code nicht perfekt aussieht und ich an vielen Stellen unnötige Kommentare habe. Nur so habe ich es geschafft die Funktionsweise einiger Dinge zu verstehen . Ich nutze dieses Skript um noch weiter zu üben. Daher wird es noch das ein oder andere Update geben. Den Zeitlichen Rahmen kann ich euch noch nicht nennen. Wie ich halt neben meinem eigentlichen Job und meinem Privatleben Zeit hab. Wäre toll, wenn ihr die Update URL nicht gleich entfernen und meine Versuche mitmachen würdet . Größere Funktionsupdates kündige ich hier natürlich im Voraus an.
Solltet ihr Vorschläge oder Wünsche für das Skript haben oder Fehler melden wollen, schreibt gerne hier rein. Außerdem gibt es ein Github Repository mit dem ich noch ein bisschen auf Kriegsfuß stehe. Aber ihr findet es hier: Github SaibotH FirstResponderReloaded
Gruß