Der Bot rief einen neuen Monat aus, obwohl im Spiel keiner war. Zwei Fehler, die zusammen genau das ergeben: statsLesen las die Uhrzeit als `Number(server.dayTime) || 0`. Eine Antwort ohne dayTime — Server startet neu, Proxy schiebt eine Fehlerseite dazwischen, XML halb geschrieben — wurde damit zu 0. Und tagUmgeschlagen prueft auf `jetzt < vorher`. Null ist kleiner als jeder Vortagswert, also sah jede kaputte Antwort wie Mitternacht aus. Beides behoben: fehlt die Angabe, ist sie jetzt null und nicht 0 — "weiss nicht" ist kein Tageswechsel. Und ein Wechsel muss die Form eines echten Mitternachtssprungs haben: vom spaeten Abend in den fruehen Morgen, beide Werte innerhalb eines Tages. Ein Zappeln um ein paar Minuten faellt jetzt durch. Eine Antwort ohne Uhrzeit ueberschreibt ausserdem den letzten guten Stand nicht mehr, sonst ginge der echte Sprung danach verloren. Beim Nachmessen zeigte sich, dass meine Doku an der Stelle falsch war: dayTime ist nicht live, sondern ein Schnappschuss. Fuenf Abrufe ueber zwei Minuten mit einem Spieler online ergaben denselben Wert (37028620) — der Server schreibt das XML im "Web API Interval" neu, hier alle 360 Sekunden. Steht jetzt richtig in docs/ls-feed.md, samt dem verbleibenden Restrisiko: ein Serverneustart setzt die Uhr auf den gespeicherten Stand zurueck und kann in seltenen Faellen einen Monat zu viel zaehlen. Geprueft: echter Sprung, normaler Tagesverlauf, Erstlauf, fehlende Angabe als 0/null/NaN, kleiner Ruecksprung, Ruecksprung am Vormittag, unsinnige Groessen, und dass eine fehlende dayTime im XML als null ankommt statt als 0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Dokumentation
Alles, was zu lang für die README ist.
Anleitungen
| Datei | Inhalt |
|---|---|
| sso.md | Single Sign-On: Ablauf, Endpoints, eigene Dienste anbinden |
| auto-deploy.md | Push auf main → Portainer rollt neu aus |
| brand/README.md | Logo-Master, abgeleitete Symbole, Build-Skript |
| gitea-theme/README.md | D4RKST3R-Theme für Gitea |
Konzepte
| Datei | Inhalt |
|---|---|
| konzept-zwei-seiten.md | Warum Produktseite und Community-Hub getrennt sind, und wie |
| idee-mermaid.md | Diagramme im eigenen Markdown rendern — Umfang, Kosten, offene Frage |
| ls-feed.md | Was ein LS-Server hergibt und was nicht — Endpunkte, Koordinaten, Fallstricke |
Textentwürfe
Rohfassungen für Seiten und Discord-Posts. Sie beschreiben einen Stand zum Zeitpunkt des Schreibens und werden bewusst nicht nachgepflegt — wer wissen will, was der Bot heute kann, schaut in die README.
| Datei | Inhalt |
|---|---|
| nutzungsbedingungen.md | Entwurf für die Nutzungsbedingungen-Seite (keine Rechtsberatung) |
| ankuendigung-community-bot.md | „Aus dem Devlog-Bot wird ein Community-Bot" |
| devlog-d4rkbot.md | Devlog aus Sicht des Bots über sein eigenes Upgrade |
| devlog-hub.md | Ankündigung des Umzugs auf hub.d4rkst3r.de |