Frage- und Hilfebereich für Entwickler

  • jop, da müsste es einen building_new_marker o.ä. geben, musst mal den Code von /buildings/new anschauen, da steht der korrekte Name drin.

    Bin nur gerade unterwegs und kann deshalb nicht selber nachschauen.

  • Gibt es eine Möglichkeit die Einstellungen für ELW1 (SEG) und FuStW DGL für den Abtransport der Patienten bzw. Gefangenen über die API abzufragen? Hintergrund ist, ich würde gerne ein Script erstellen, welches mir die gewünschten Einstellungen überprüft und abweichende Fahrzeuge auflistet. Angeschaut habe ich mir die Auflistung aller Fahrzeuge (https://www.leitstellenspiel.de/api/v2/vehicles/) sowie der Endpunkt einzelner Fahrzeuge (https://www.leitstellenspiel.de/api/v2/vehicles/{vehicle-id}).

  • Wollte ich gerade auch drauf hinweisen.

  • Bin mit der Performance der Einsatzliste nicht zufrieden. Momentan werden bei mir 1'000 Einsätze generiert und es werden mehr. Ich bin am überlegen, welche Möglichkeiten zur Optimierung es hier gibt. Ich habe mir die Applikation noch nicht genauer angesehen. Wird die Einsatzliste rein über die DOM Versuche mal einen Lösungsansatz laut zu durchdenken. Wird die Einsatzliste direkt über das DOM verwaltet und mutiert? Falls ja, wäre ein Store in JS performanter aus welchem eine Liste generiert wird (ähnlich wie in SPAs)?


    Auf den ersten Blick sieht es danach aus, als würden die Einsatzdaten über eine Socketverbindung aktualisiert und darüber eine Art RPC ausgeführt (vehicleMarkerAdd, missionMarkerAdd, ...). Evtl. wäre es möglich sich hier einzuhaken.


    Wäre das ein gangbarer Weg oder stelle ich mir das zu einfach vor? Gibt es schon ähnliche Ansätze?

  • Bin mit der Performance der Einsatzliste nicht zufrieden. Momentan werden bei mir 1'000 Einsätze generiert und es werden mehr. Ich bin am überlegen, welche Möglichkeiten zur Optimierung es hier gibt. Ich habe mir die Applikation noch nicht genauer angesehen. Wird die Einsatzliste rein über die DOM Versuche mal einen Lösungsansatz laut zu durchdenken. Wird die Einsatzliste direkt über das DOM verwaltet und mutiert? Falls ja, wäre ein Store in JS performanter aus welchem eine Liste generiert wird (ähnlich wie in SPAs)?


    Auf den ersten Blick sieht es danach aus, als würden die Einsatzdaten über eine Socketverbindung aktualisiert und darüber eine Art RPC ausgeführt (vehicleMarkerAdd, missionMarkerAdd, ...). Evtl. wäre es möglich sich hier einzuhaken.


    Wäre das ein gangbarer Weg oder stelle ich mir das zu einfach vor? Gibt es schon ähnliche Ansätze?

    Bislang gibt es noch keine Implementierung dieses Ansatzes, ich hab mir aber schon länger überlegt, ob man das nicht so ähnlich in den LSSM implementieren könnte, um gewisse Performance-Verbesserungen zu erreichen.
    Das Problem ist dabei halt immer, dass wenn neue Features hinzukommen, das Script auch möglichst schnell daran angepasst werden sollte, damit alles benötigte angezeigt wird.


    Grundsätzlich gibt es da eine Menge zu optimieren, zu einem gewissen Grad muss das aber auch spielseitig passieren. Die Tatsache, dass teilweise JS-Schnippsel übertragen und ausgeführt werden ist einfach nicht besonders intelligent und erleichtert einem Script die Arbeit auch nicht unbedingt.

  • Nach Neuerstellung diverser Leitstellen, möchte ich meine Einsatzgebiete aktualisieren, indem die Wachen der nächstgelegenen Leitstelle zuweisen werden. Mit einem Script konnte ich ca. 2'000 betroffene Wachen ausfindig machen. Die Leitstelle, welche einer Wache am nächsten ist, berechne ich hierfür über die Distanz zwischen den Koordinaten beider Gebäude.


    Für die Zuweisung der neuen Leitstelle benötige ich etwas Unterstützung. Für die Bearbeitung eines Gebäudes steht ein Formular zur Verfügung. Ist es möglich das Absenden des Formulars zu emulieren? Oder gibt es eine bessere Lösung?


    Vielen Dank im Voraus!

  • Über die Leitstelle gibt es die Möglichkeit, die Leitstelle eines Gebäudes zu ändern (müsste glaub nur ein Link sein). Das geht deutlich einfacher, als sich das gesamte Formular zu holen und bearbeitet wieder abzusenden.

  • Über die Leitstelle gibt es die Möglichkeit, die Leitstelle eines Gebäudes zu ändern (müsste glaub nur ein Link sein). Das geht deutlich einfacher, als sich das gesamte Formular zu holen und bearbeitet wieder abzusenden.

    Sehr guter Hinweis. Das schaue ich mir näher an. Vielen Dank!

  • Analog zum Fetchen und Persistieren der Gebäude wollte ich dies für die Fahrzeuge umsetzen. Mit einem abgespeckten Fahrzeug-Objekt komme ich bei ~30'000 Fahrzeugen auf eine Grösse von ca. 4 MB. Zusammen mit den anderen Daten wird die zulässige Quota für den SessionStorage überschritten. Die Folge ist, dass es nicht persistiert wird und die Fahrzeuge bei jeder Ausführung des Scripts nach einem Page Reload geladen werden.


    Der LocalStorage bietet mit 10 MB pro Origin etwas mehr Speicher. Der Fehler beim Persistieren tritt also erst später auf, aber er tritt irgendwann auf.


    Gibt es eine andere Möglichkeit des Cachens der Fahrzeugdaten? Wie ist das in anderen Scripts gelöst?


    Motivation ist vorrangig die Entlastung der API. Oder mache ich mir hier zu viele Gedanken und ist Overkill?

  • Aktuell umgehe ich das Problem immer mit einem einfachen try-catch, um keinen Fehler auszuwerfen, wenn das zu viele Daten zum Speichern sind. Ist aber auch absolut keine gute Lösung.


    Die Anfrage, eine Query mit in der API zu übergeben, um nicht alle Attribute sondern nur zu benötigte zu bekommen ist bereits raus, aber leider noch nicht umgesetzt worden.


    Ansonsten, ist mir aber bislang auch noch keine zufriedenstellende Lösung eingefallen, wie man die Speicherung vornehmen kann ?(

  • Traxx hatte mal einen Versuch gestartet die Daten zu komprimieren vor dem speichern. Hat nur den Nachteil das die Daten nicht mehr nativ lesbar sind und man immer die lib zum (de)komprimieren.

    Ein Vakuum, geschaffen durch fehlende Kommunikation,

    füllt sich in kürzester Zeit mit falscher Darstellung, Gerüchten, Geschwätz und Gift. - Cyril Northcote Parkinson


    Der beste Verband in Aachen und Umgebung: leitstellenspiel.de/alliances/1100



    Schraube manchmal am LSSM V4 rum.

  • Aktuell umgehe ich das Problem immer mit einem einfachen try-catch, um keinen Fehler auszuwerfen, wenn das zu viele Daten zum Speichern sind. Ist aber auch absolut keine gute Lösung.


    Die Anfrage, eine Query mit in der API zu übergeben, um nicht alle Attribute sondern nur zu benötigte zu bekommen ist bereits raus, aber leider noch nicht umgesetzt worden.


    Ansonsten, ist mir aber bislang auch noch keine zufriedenstellende Lösung eingefallen, wie man die Speicherung vornehmen kann ?(

    Ok, danke für die Info.

  • Traxx hatte mal einen Versuch gestartet die Daten zu komprimieren vor dem speichern. Hat nur den Nachteil das die Daten nicht mehr nativ lesbar sind und man immer die lib zum (de)komprimieren.

    Danke für den Hinweis, das könnte noch interessant sein.

  • Ich habe mir mithilfe von Jan (jxn_30) vor einer etwas längeren Zeit ein code erstellt, der bestimmte Daten von einem Einsatz an mein Handy sendet und dies vorliest (Quasi eine Leitstelle) und dies auch soweit umgesetzt das es fast fertig ist, nun würde ich das aber gerne noch so machen, dass er mir die Wache nennt, die denn Einsatz erstellt hat, habe da aber jetzt nichts gesehen gibt es da noch eine Möglichkeit oder ist das gar nicht möglich dies abzufragen