Arthoria.de Forum

Offtopic => Sonstiges => Thema gestartet von: Voltan am 23. April 2017, 23:48:26

Titel: Statistikscript
Beitrag von: Voltan am 23. April 2017, 23:48:26
Ein regelkonformes Script für Grease-/Tampermonkey und Opera12, das Ereignisse aus verschiedenen Bereichen (Kräutersammeln, Beten, Reiten, ...) sammeln und aufbereiten kann.
Zu finden ist das Ganze über ein schnuckeliges Icon in der Chatleiste, linksseitig des Uhrzeit-Ein-/Ausblendknopfes.
Das Ding speichert alle Daten lokal bei euch aufm Rechner, lediglich der (hoffentlich mittlerweile korrekt funktionierende) Versionsabgleich ist die einzige Kommunikation des Scripts nach außen.
JavaScript und das Setzen von temporären Daten (bzw. eigentlich von Einträgen im localStorage, aber das geht ja bei den Browsern Hand in Hand) müssen erlaubt sein.
Ob das Script mit Scripts von anderen Leuten funktioniert, kann ich nicht sagen.

Download (https://github.com/DerVoltan/Arthoria-Scripts/blob/master/statistiken/v_statistics.user.js) (aktuell: v1.5)


Ihr habt einen Bug gefunden?
Um ein möglichst schnelles Lösen des Problemes zu ermöglichen, wäre es schön, wenn ihr mir auch möglichst viel zu dem Problem schildern könnt.
Zitat- Wann ist das Problem aufgetreten?
- Was funktioniert nicht bzw. wie sieht der Fehler auch (gerne via Screenshots)?
- Ist der Fehler reproduzierbar? Wenn ja, wie?
- Browser + Scriptumgebung (Greasemonkey, Tampermonkey,...)?
- Welche anderen Scripts & Addons sind aktiv?
- Kannst du deine Daten bereitstellen (am besten per pastebin (https://pastebin.com/))?*

*Falls der Export der Daten über das Tool nicht funktioniert, dann über die Browserkonsole mit console.log(localStorage.getItem(charID))
Titel: Antw:Statistikscript
Beitrag von: Sanglant am 24. April 2017, 16:29:17
Sowas ähnliches wünsche ich mir schon ewig. *freu* =) Also vor allem den Parser.
Ich würde allerdings die Daten lieber zu einem Server übertragen, anstatt sie lokal auszuwerten. Entsprechend fehlt mir auch eine Exportmöglichkeit (die automatisch, manuell oder eben nicht ausgeführt wird).

Warum das Script die Werte nicht von vornherein selbst ermittelt, ist mir nicht klar. Laut Auto-Update bin ich auch nur Stufe 1.

EDIT Wenn man die entsprechenden Seiten besucht (Anwesen, Status), werden auch die Werte eingetragen.

EDIT2 Hab grad die Exportmöglichkeit gefunden. Vorschlag: Reset beim Export durch Checkbox ein-/ausschaltbar machen? Würde btw auch die Checkboxen auf der Überwachungskonfiguration per Default setzen oder ganz weglassen. Kampfergebnisse werden nicht erfasst?

Ansonsten tolles Tool.
Titel: Antw:Statistikscript
Beitrag von: Voltan am 24. April 2017, 17:08:58
Ich sollte vielleicht beim uneingerichteten Tool einen Hinweis einbauen, dass man vor dem Bedienen nochmal kurz die Hilfeseite besuchen sollte *g*

Zitat von: Sanglant am 24. April 2017, 16:29:17Vorschlag: Reset beim Export durch Checkbox ein-/ausschaltbar machen?
Kann ich machen.
Der automatische Reset war eine Folge der Bequemlichkeit für den additiven Import, da ansonsten jedes mal der komplette Datensatz mit rübergenommen wird. Muss da aber eh nochmal was ändern. In der Zwischenzeit einfach wieder importieren, wenn es nur dem Backup dient.

Zitat von: Sanglant am 24. April 2017, 16:29:17Würde btw auch die Checkboxen auf der Überwachungskonfiguration per Default setzen oder ganz weglassen.
Werde ich nicht machen. Der User soll von Anfang an selbst entscheiden, was er mitloggen will, ohne von mir durch default-Werte bevormundet zu werden (außer bei der Preisliste - da stieg man mir schon aufs Dach, ich solle gefällst gängige defaults anbieten *g*).
Ich könnte ein "(un)check all"-Knöpfchen hinzupacken.

Zitat von: Sanglant am 24. April 2017, 16:29:17Kampfergebnisse werden nicht erfasst?
Nein. Das steht zwar auf der Agenda, aber nicht auf der Prioritätenliste.


Zu der Serverthematik: Je nach Interesse ist es durchaus drin, da nochmal auf einem Server eine kleine Plattform zum gemeinsamen Sammeln von Daten anzulegen.
Oder erst einmal nur eine "Lite"-Version, bei der die strings hochgeladen werden können und so ein externes Backup darstellen.
Hängt natürlich in jedem Falle mehr oder weniger eine Datenschutzkomponente mit dran, die man nicht wegreden sollte.
Time will tell...
Titel: Antw:Statistikscript
Beitrag von: Sanglant am 24. April 2017, 20:47:58
ZitatIch sollte vielleicht beim uneingerichteten Tool einen Hinweis einbauen, dass man vor dem Bedienen nochmal kurz die Hilfeseite besuchen sollte *g*

Ja, bzw einfach nen Link dahin setzen. Und sagen, dass man ein bisschen über die Seiten wuseln sollte.

ZitatZu der Serverthematik: Je nach Interesse ist es durchaus drin, da nochmal auf einem Server eine kleine Plattform zum gemeinsamen Sammeln von Daten anzulegen.
Oder erst einmal nur eine "Lite"-Version, bei der die strings hochgeladen werden können und so ein externes Backup darstellen.
Hängt natürlich in jedem Falle mehr oder weniger eine Datenschutzkomponente mit dran, die man nicht wegreden sollte.

Was ich mir wünschen würde: eine konfigurierbare URL, zu der jedes Ergebnis übertragen wird, das zu den Statistiken hinzugefügt wird. Ich kann auch vorerst mit den Aggregaten leben, aber für Tendenzen etc. sind Einzelwerte schöner.
Titel: Antw:Statistikscript
Beitrag von: Voltan am 25. April 2017, 10:48:36
Ich merks mir mal vor...

Ich habe einige Sachen aus deinem Feedback von gestern mal mehr oder weniger umgesetzt.
Habe außerdem das Intervall des Versionsabgleiches reduziert. Mir wurde ein Fehler bzgl. des Goldrausches gemeldet, also gibts in der neuen Version den provisorischen Fix dafür. Ein täglicher Abgleich ist für sowas dann doch besser als nur alle zwei Tage.
Titel: Antw:Statistikscript
Beitrag von: Galar am 25. April 2017, 21:29:21
Gibt es vielleicht eine Anleitung wie ich das Skript zum Laufen bekomme?
Passiert leider gar nichts. Temporäre Daten sind erlaubt. JavaSkript läuft auch automatisch. Skript funktioniert auch nicht, wenn ich andere Tools deaktiviere.

Habe Google Chrome.
(Oder läuft es sogar schon, sehe aber nur nichts? :D)

Danke im Voraus! :)
Titel: Antw:Statistikscript
Beitrag von: Voltan am 25. April 2017, 21:37:21
Mh, gerade nochmal frisch mit Chrome probiert. Da sollte ein neues Symbol aufgetaucht sein - im unkonfigurierten Zustand in rötlichen Tönen.
Titel: Antw:Statistikscript
Beitrag von: Galar am 25. April 2017, 21:40:13
Ah vielen Dank! Hab ich gar nicht gesehen.
Da wundert man sich, dass man auch keine Hilfe-Seite findet und dabei ist das wirklich direkt vor einem ...
Titel: Antw:Statistikscript
Beitrag von: Qwertz am 27. April 2017, 09:14:42
Sehr schönes Script :-) vielen dank

Frage:
Ist es nur bei mir so oder gewollt das der die Nullrunden beim beten nicht mitzuhalten?
Titel: Antw:Statistikscript
Beitrag von: Voltan am 27. April 2017, 10:37:42
Zitat von: Qwertz am 27. April 2017, 09:14:42
Frage:
Ist es nur bei mir so oder gewollt das der die Nullrunden beim beten nicht mitzuhalten?

Huch. Da ist mir wohl irgendwann ein Leerzeichen reingerutscht.  :|
Danke für den Hinweis!
Heute Abend kommt nochmal eine neue Version, die das Verhalten bei Lederbeuteln abändert. Da ist das dann auch korrigiert.
Titel: Antw:Statistikscript
Beitrag von: Sanglant am 28. April 2017, 18:24:32
Zitatdet 1x Tairanblatt     det 1x Erzklumpen     det 1x alte Silbermünze     det 1x Kurelblüte

...sieht so aus, als  ob die Regex da noch etwas haken würde. Das "det" ist jedenfalls Teil von "Der zur Unterstützung beschworene Begleiter findet ..."

Hab die Daten exportiert und gesehen, dass es nur Aggregate sind. Die müsste ich regelmässig manuell exportieren, um Zeitreihen zu bekommen. Denke, das ist nicht convenient.

Habe ich grundsätzlich die Erlaubnis, Deinen Code zu modifizieren, damit ich meine Goals implementieren kann? (Die Source ist eh über Greasemonkey einsehbar, aber ich frage trotzdem lieber nach.) Wir können das nachher auch mergen, es würden eh nur ein paar Kleinigkeiten dazu kommen:

Das JSON, das da dann ankommt, tüftel ich mir dann schon auseinander. Meine Erfahrungen mit Front-End-Programmierung sind zwar eine Weile her, aber seh da trotzdem keine grossen Schwierigkeiten.
Titel: Antw:Statistikscript
Beitrag von: Voltan am 28. April 2017, 19:51:09
Ich habe von 0.98 auf 1.00 den Fehler beseitigt, dass das Script "indet eine Eisblume" speichert, da das nicht dem Standard des "findet 1x [Item]" entspricht (die vorher richtig gespeichert wurden). Und dabei ein ">-1" vergessen.
Grandios. Einmal faul gewesen, nur den target case getestet und nicht mehr reingeguckt... Einfach mal alles mitm Arsch umgerissen.  lol

Ich werfe heute Abend einen Fix dafür raus, der die DBs bereinigt und den entstandenen Schaden behebt.
Nein, es wir keine Trostkekse geben.


Dass es Aggregate sind, hattest du ja schon zu Beginn bemerkt.
Hatte anfangs versucht, die Daten anders zu speichern und deutlich detailreicher aufzubereiten (um z.B. gewichtete Mittel oder Zugriffe auf Einzel-/Wochen/Monatsstatistiken zu ermöglichen), aber ich habe damit den localstorage (das sind nur 5MB...) einfach zu schnell geflutet und es deshalb nach einem Minimaltest mit generierten Kräuterergebnissen wieder verworfen. Sicher, mit einem externen Backup hätte man das eindämmen können, aber das war dann auch nicht mehr das Ziel (zumal ich nicht die Ressourcen dafür habe).

Meinetwegen kannst du den Code verändern. Da hindere ich dich nicht dran.
Jedoch bezweifle ich, dass es sinnvoll ist, die entsprechend modifizierte Version (schon) als public-Release zu verteilen.


// fixed version up.
Titel: Antw:Statistikscript
Beitrag von: Sanglant am 29. April 2017, 18:10:08
Naja, so ein Drama ist das jetzt auch nicht. =) Aber cool, dass es trotz der Komplikationen so schnell gefixt wurde.

Mein Bereich ist derzeit job-bedingt die Serversoftware und das Back-End. Und das bietet mächtige Funktionen im Bereich Datenanalyse und Statistik, zum Beispiel Zeitreihen (für Grafiken) und Fallstudien (wie "Wie verändern sich die Einnahmen pro Monat, wenn ich 5 Gold mehr für meine seltenen Kräuter bekomme?"). Ein anderer Vorteil ist, dass ich auch von mehreren Rechnern spielen kann, ohne hin und her zu transferieren.

Ich würde das vorläufig auch nur bei einem Freehoster laufen lassen. MongoDB wär interessant auszuprobieren, aber das spielts dort leider nicht. Geht aber auch easy mit MySQL, sind nur Name(+Kategorie)-Zeitpunkt-Wert-Tupel.

Wenn die Strings (Kräuternamen zB) indiziert werden (geht mit einer einfachen Funktion, die einen Hash über die Strings vorhält und einen numerischen Wert zurückliefert), lässt sich sicher auch mit den 5 MB einiges anfangen. Hast Du schon mal mitzählen lassen, wie viele Parser-Events Du erzeugst?

Verteilen will ich eh noch nix, erstmal will ich das ausprobieren. (= Ausserdem muss das in dem Fall noch abgesichert werden, sonst lässt sich da viel Unfug mit den Daten anderer Menschen anstellen.
Titel: Antw:Statistikscript
Beitrag von: Mobby am 01. Mai 2017, 09:39:34
Vermutlich seit dem Update zu FF 53 geht das Script nicht mehr. Besser gesagt das Icon wird nicht mehr angezeigt. In der Liste der aktiven Addons und Scripte ist es drin. Cache und Cookies löschen hat nicht geholfen. Hat noch jemand Probleme damit oder eine Idee?
Titel: Antw:Statistikscript
Beitrag von: Sparta am 01. Mai 2017, 11:37:32
Ich habe das Script gestern auch mal ausprobiert. Musste es am Ende leider wieder deaktivieren, da die Einstellungen zum Überwachen nicht aktiviert wurde und nicht mitgezählt wurde. Zudem konnte ich die Einstellungen im nachgang nicht wieder ändern, da sie nicht mehr angezeigt wurden.

Werde nun einfach einige Zet abwarten bis es vielleicht wieder ein Update gibt und einige Fehler behoben werden. Der Aufbau des Scripts und die Funktionen dahinter finde ich aber sehr interessant :)
Titel: Antw:Statistikscript
Beitrag von: Voltan am 01. Mai 2017, 12:24:49
Ich kann das Nichterscheinen des Scripts unter FF53 & GM 3.11 zurzeit nicht reproduzieren.

Zitat von: Sparta am 01. Mai 2017, 11:37:32Musste es am Ende leider wieder deaktivieren, da die Einstellungen zum Überwachen nicht aktiviert wurde und nicht mitgezählt wurde. Zudem konnte ich die Einstellungen im nachgang nicht wieder ändern, da sie nicht mehr angezeigt wurden.
Das ist arg merkwürdig.
Die Trackingeinstellungen müssen auf der selbigen Unterseite separat gespeichert werden, ähnlich wie die Einstellungen zum Charakter.
Das Tracking beginnt erst, wenn es einerseits überwacht werden soll und andererseits bei spezifischen Dingen die Grundvoraussetzungen erfüllt sind. Z.B. werden keine Betergebnisse aufgenommen, wenn das Tool noch die Information hat, dass der Altar Stufe 0 wäre.

Was genau sollte denn überwacht werden?
Welchen Browser benutzt du?
Hattest du noch andere Scripts aktiv? Falls ja, welche?
Gab es Ausgaben auf der Fehlerkonsole (Strg+Umschalt+J)?
Titel: Antw:Statistikscript
Beitrag von: Rongasi am 01. Mai 2017, 14:08:17
Ich hatte genau das gleiche Problem wie Sparta. Hab es auch wieder entfernt. Schade. Ich finde das Script auch sehr toll wenn es funktionieren würde.

habe alles überwacht
Verwende FF mit Tempermonkey
aktiv war das PNP Tool von kaefer

Ich werde es nochmal neu installieren, vielleicht gibt es da noch einen Tip dazu
Titel: Antw:Statistikscript
Beitrag von: Galar am 01. Mai 2017, 14:29:27
Bei mir geht das auch nicht automatisch. Muss alles per Hand eintragen.

Hab Google Chrome.
Titel: Antw:Statistikscript
Beitrag von: Voltan am 01. Mai 2017, 19:08:46
v1.3 up.
Das Problem von Mobby wurde beseitigt.
Das Problem von Sparta und Rongasi (bzw. wahrscheinlich auch von Galarian ?) wurden (hoffentlich) beseitigt. Ich empfehle, nochmal die Charaktereinstellungen und die Trackingeinstellungen neu zu speichern, damit das Script funktioniert.

Ich bin gespannt, was noch so alles für Bugs auftauchen werden... Immer her damit  :)
Titel: Antw:Statistikscript
Beitrag von: undernet am 03. Mai 2017, 22:56:12
es funktioniert bei mir nicht mehr
Titel: Antw:Statistikscript
Beitrag von: Voltan am 03. Mai 2017, 23:53:36
Zitat von: undernet am 03. Mai 2017, 22:56:12
es funktioniert bei mir nicht mehr

Ein paar Informationen wäre nett.
Zitat- Wann ist das Problem aufgetreten?
- Was funktioniert nicht bzw. wie sieht der Fehler auch (gerne via Screenshots)?
- Ist der Fehler reproduzierbar? Wenn ja, wie?
- Browser + Scriptumgebung (Greasemonkey, Tampermonkey,...)?
- Welche anderen Scripts & Addons sind aktiv?
- Kannst du deine Daten bereitstellen? (am besten per pastebin (https://pastebin.com/))?*

*Falls der Export der Daten über das Tool nicht funktioniert, dann über die Browserkonsole mit console.log(localStorage.getItem(charID))
Titel: Antw:Statistikscript
Beitrag von: Sanglant am 04. Mai 2017, 02:52:38
Für die meisten Tabellen wäre meiner unmassgeblichen Meinung nach die gekippte Darstellung (also 3 Spalten anstatt 3 Zeilen) wesentlich übersichtlicher.
Und sowas wie "SR m.Heil." wäre einfach nicht erforderlich, die Items könnten mitm vollen Namen dargestellt werden.

Ansonsten, bei mir läufts (Firefox+Greasemonkey/Win7, ArthoriaEx vorhanden) wie ein Glöckerl.
Titel: Antw:Statistikscript
Beitrag von: undernet am 04. Mai 2017, 17:22:30
Zitat von: Voltan am 03. Mai 2017, 23:53:36
Ein paar Informationen wäre nett.

Seit dem vorletzten Update werden keine Statistiken mehr gesammelt, egal was ausgewählt wird bleibt es nach dem speichern nicht erhalten.

greasemonkey, firefox, qualidev und gimachecker sind aktiv
Titel: Antw:Statistikscript
Beitrag von: Voltan am 04. Mai 2017, 18:19:18
Wenn du die Trackingeinstellungen meinst: seit 1.3 werden die Einstellungenboxen nach der intern hinterlegten Vorlage erstellt (nicht wie vorher durch die eigenen Daten) und die checkboxeinträge nochmal vor dem Eintragen umformatiert. Da sollte es keine Probleme mehr geben, auch beim Speichern nicht.
Merkwürdig. Um welche genauen Ereignisse handelt es sich denn, die nicht aufgenommen werden?
Kannst du mir einen Datenexport des Tools (Tool öffnen -> Einstellungen -> Datenbank -> "exportieren" -> aus dem Input rauskopieren)  von dir zukommen lassen? Gerne über pastebin, als txt o.ä.
Titel: Antw:Statistikscript
Beitrag von: Galar am 20. Juni 2017, 12:51:24
Hallo :)

ich hätte einen kleinen Vorschlag: könnte man nicht zuerst die aktuellen Ergebnisse (aktuelles Level, aktuelle Punktverteilung) anzeigen lassen und dann im Menü die alten Ergebnisse auswählen? Ich finde das irritierend, weil man immer umschalten muss.

Aber sonst bin ich wirklich sehr sehr zufrieden. Danke!
Titel: Antw:Statistikscript
Beitrag von: Voltan am 21. November 2017, 15:55:32
Ich hab vor ein paar Tagen noch nen kleines Update rausgeworfen, was die Auswahl der Statistiken angeht (ich hoffe, in der Form hatte es Galarian gemeint).
Außerdem befindet sich jetzt alles auf Github.

Da Greasemonkey seit Version 4 nichts mehr mit meinem Script zu tun haben will: steigt auf Tampermonkey um, falls nicht schon geschehen.