[Script] MissionValueGraph

  • Moin,

    ich habe hier ein Skript für euch welches den Wert der angefahrenen und der verfügbaren Missionen in Credits anzeigt, als Zahl und graphisch mit dem geschätzten / wahren Datum der Fertigstellung. Die meiste Arbeit ist dabei in den graphischen Teil geflossen, bei dem der Zeitpunkt der Erstellung bei der Alarmierung gespeichert wird. Anwendungen sind z.B. kurzfristige Planung für verfügabre Investitionssummen oder eine Übersicht darüber, wann Missionen geteilt werden. Denkt daran einen geeigneten Wert für die Missionsdaduer anzugeben.


    Vorschau:



    Verwendung (Tampermonkey):

    https://github.com/Cyclefly/Mi…MissionValueGraph.user.js


    Allgemein:

    • Es werden fast keine extra Serveranfragen gemacht, nur einmal pro Session um alle verfügbaren Einsätze ("Missions-Katalog") mit Ihrem Wert zu laden.
    • Für euch interessant ist vor allem missionDuration: Die geschätzte Missionsdauer, die Ihr direkt zu Beginn des Skripts anpassen solltet. In unserem Verein gibt es zum Beispiel die Regel, dass nach 20 Stunden alles beendet werden darf und es ist nahezu rund um die Uhr jemand aktiv. Voreingestellt sind 20 Stunden, mit 0 Stunden könnt Ihr sehen, wann die Missionen erstellt wurden.


    Missionswert-Anzeige:

    • Der obere Wert gibt an, wieviel die von euch angefahrenen Einsätze wert sind.
    • Der untere Wert gibt an, wieviel alle verfügbaren Einsätze wert sind.
    • Es fließen alle Einsätze mit ihrem durchschnittlichen Wert ein.
    • Das Skript aktualisiert sich alle 5 Sekunden.
    • Missionen zu denen Ihr keine Fahrzeuge in Reichweite habt zählen nicht mit, Ihr solltet also den Wert der verfügbaren Einsätze erreichen können.


    Graph:

    • Dieser wird durch einen Klick auf den Missionswert geöffnet.
    • Angezeigt wird nur der Missionswert der angefahrenen Einsätze, sowie der Kontostand mit den verdienten Credits zum gleichen Zeitpunkt, zur Planung.
    • Ebenfalls angezeigt wird der aktulle Zeitpunkt mit einer roten, vertikalen Linie. Solltet ihr eine Missionsdauer größer 0 gewählt haben und es sind Einträge auf der linken Seite heißt dass für euch, dass diese schon beendet werden können, Ihr könntet Sie also sofort beenden und das Geld verdienen, weswegen Sie auch mit aufaddiert werden.
    • Der Graph ist darauf angewiesen, dass zu den jeweiligen Missionen eine Zeit im lokalen Speicher hinterlegt ist. Wenn Ihr also viel am Handy spielt könnte der dargestellte Missionswert am Ende weniger ergeben als in der Ansicht auf der Hauptseite. Aktuell werden diese Missionen mit Link zur Mission in der Konsole ausgegeben, falls Ihr sie noch dargestellt haben wollt kurz öffnen und nochmal den Graphen öffnen.
    • Es müssen mindestens 3 Einsätze angefahren werden, die auch mit Zeit hinterlegt sind (Alarmierungsfenster des Einsatzes wurde im Browser betrachtet). Ansonsten gibt es Fehler bei der Erstellung des Graphen. In diesem Fall wird anstatt dem Graphen eine enstprechender Hinweis ausgegeben.
    • Geplante Einsätze werden mit Ihrer wahren Zeit der Fertigstellung dargestellt.
    • Falls Ihr den Missionswert nicht gut erkennen könnt da Ihr zu viel Geld auf dem Konto habt: Durch einen Klick auf den unerwünschten Datensatz in der Legende wird dieser nicht mehr dargestellt.


    Aussicht:

    • Eventuell lasse ich zu einem späteren Zeitpunkt die Missionsdauer anhand des Missionstypes und dem Datum der Erstellung berechnen. Das eine Mission um 4 Uhr morgens berechnet wird ist in der Regel wohl unwahrscheinlicher als zu den Stoßzeiten. Den Zusammenhang zu lernen ist dabei kein Problem, aber es müssen auch erstmal Daten erhoben werden. Außerdem variiert die Missionsdauer dann noch von Verein zu Verein usw.


    Ich hoffe das Skript ist für euch nützlich und ich bin offen für Feedback und Vorschläge.

    Einmal editiert, zuletzt von Cyclefly ()

  • Cyclefly

    Hat den Titel des Themas von „MissionValueGraph“ zu „[Script] MissionValueGraph“ geändert.
  • Kann jemand evtl einen Fix schreiben?
    Ich habe nämlich auch schon seit ein paar Wochen das Problem, dass sich der Missionswert nicht mehr selbstständig aktualisiert und ich jedes mal die Seite neu laden muss, wenn ich wissen will.
    Dies betrifft sowohl angefahrene Einsätze, als auch jene, die dann abgeschlossen sind.

    Dafür nutze ich ihn auch nur.

    Wäre unheimlich lieb, wenn sich jemand die Arbeit machen würde. :)


  • Welchen Browser benutzt du?

    Im Firefox (96.0.3) mit Tampermonkey (4.13.6136) funktioniert die automatische Aktualisierung alle 5 Sekunden bei mir.

    Stehen Fehlermeldungen von "MissionValueGraph.user.js" in der Browser-Konsole? (Firefox: STRG+SHIFT+K, Chrome: STRG+SHIFT+J)

  • Welchen Browser benutzt du?

    Im Firefox (96.0.3) mit Tampermonkey (4.13.6136) funktioniert die automatische Aktualisierung alle 5 Sekunden bei mir.

    Stehen Fehlermeldungen von "MissionValueGraph.user.js" in der Browser-Konsole? (Firefox: STRG+SHIFT+K, Chrome: STRG+SHIFT+J)

    Ich nutze Google Chrome Version 97.0.4692.99 und Tapermonkey V4.13

    Und was genau meinst du mit den Fehlermeldungen und Browser-Konsole bzw. wo genau finde ich die Konsole?
    Sorry, bin technisch nicht so ganz versiert ^^

  • Ich nutze Google Chrome Version 97.0.4692.99 und Tapermonkey V4.13

    Und was genau meinst du mit den Fehlermeldungen und Browser-Konsole bzw. wo genau finde ich die Konsole?
    Sorry, bin technisch nicht so ganz versiert ^^

    Habs mal mit Chrome getestet, auch dort funktioniert es bei mir.


    Evtl. ein anderes Script, das inkompatibel ist?

    Dazu mal alle anderen Skript deaktivieren im Tampermonkey Menü:


    Vorne der Schalter grün/grau.


    Konsole kannst du mit der Tastenkombination STRG+SHIFT+J öffnen, sollte dann in etwa so aussehen:


    In dem Fall sind das nur normale Log Nachrichten, evtl. wären da dann auch Fehler oder so

  • Den einzigen "Fehler", den ich reproduzieren konnte war die Inkompatibilität mit dem LSSM Redesign Modul. In dem Fall wird der Graph nicht angezeigt, der Rest klappt einwandfrei.

    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.

    Einmal editiert, zuletzt von Crazycake ()

  • Da ich gerade kurz vorher alle verfügbaren Einsätze angefahren habe, muss ich später noch mal genauer nachschauen.

    Was ich aber in der Konsole gesehen habe ist, dass scheinbar das Script EinsatzCredits Probleme verursacht. Kann das dann damit zusammen hängen, dass der ValueGraph nicht richtig funktioniert?



    Nachtrag:

    EinsatzCredits deaktiviert, Seite neu geladen, Konsole aufgerufen, folgender Fehler

    Einmal editiert, zuletzt von Selani ()

  • Hm, das Skript findet den Einsatz anhand seiner ID nicht in der bereitgestellten Liste aller Einsätze.

    Eigentlich wird die in jeder "Session" neu abgerufen, sollte also fast immer aktuell sein (Browser schließen/neu öffnen reicht aus).


    Hab das mal angepasst, dass nicht gefundene Einsätze ignoriert werden, dann sollte in der Konsole stehen, mit welchen IDs das Skript Probleme hat (evtl. DGL, da hab ich keine Erweiterungen aktiviert ;-) )


    https://pastebin.com/raw/TH06LRyu


    Den Code copy&paste in Tampermonkey -> Skripte -> MissionValueGraph anklicken zum Bearbeiten, alles markieren und ersetzen

  • Vielen Dank, jetzt funktioniert es wieder, auch in Zusammenarbeit mit den EinsatzCredits =)

    In meiner Variante werden Einsätze, zu denen die durchschnittliche Vergütung in den Daten nicht gefunden werden, allerdings ignoriert. Das kann zu einer falschen Anzeige führen.

    Ggf. also nochmal in die Browser-Konsole schaun, ob dort Einträge der Art: "Missionstyp: xy nicht gefunden" auftauchen.

    Je nachdem, wie viele das sind, müsste man da noch was fixen.


    Auch hab ich beim drüberschaun festgestellt, dass das Skript mit den DGL Einsatzvarianten nicht umgehen kann.

    Ich hab alle DGL Erweiterungen auf inaktiv, also betrifft mich das nicht, aber würde auch zu einer niedrigeren/falschen Vergütungsanzeige führen.