saumwacht-godot/docs/luneraria/STATUS.md
Martin Stickelbroeck c15533831a M4: Spiel läuft vollständig über die autoritative Sitzung; M4 pausiert
Das echte Spiel umging die Sitzung bisher bei Bereitschaft, Startaufstellung
und Rückgängig, ließ Bots den Gast-Sitz planen und den Gast selbst simulieren.
Jetzt rechnet nur der Host; Gäste zeigen den Kampf aus Momentaufnahmen.
Dazu Protokollversion, Wiedereinstieg über den Anzeigenamen, verbindliches
Bereit, Entwurfs-Privatsphäre und Bot-Planung einmal pro Runde.

Geprüft: test_lune_net 43/43, net_rounds.py 12/12 (5 Runden, Wiedereinstieg,
gleiche Prüfsummen), Regeln 91/91, M2 73/73, verify_m1 38/38, verify_m2 14/14.
Offen und eingefroren: OpenGL-Modus, nativer Windows-11-Test, Demo-Neubau.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 23:00:08 +02:00

10 KiB
Raw Blame History

STATUS · Champions of Luneraria

Stand: 28. September 2026 · Branches luneraria/m1 (M0/M1), luneraria/m2, luneraria/m3, luneraria/m4 · Luneraria-Demo 0.16.0-m4.

Meilenstein Zustand
M0 · Migration vorbereiten abgeschlossen
M1 · Spielbarer Drei-Lane-Kern abgeschlossen
M2 · Mechanikdurchlauf abgeschlossen
M3 · Qualität und Balance abgeschlossen (siehe unten)
M4 · Netzwerk und Pakete pausiert (Host/Join, Mehr-Runden-Loopback, Wiedereinstieg; offen: OpenGL, Windows 11)
G1–G6 · Karte, Grafik, HUD als Nächstes (Auftrag vom 28. September 2026)

M1 · abgeschlossen

Implementiert

  • Autoritative Partie mit sechs Spielerrollen (ein Mensch, fünf Bots), drei spiegelsymmetrischen Lanes, 16 Türmen und zwei Ancients.
  • Gebäudesperren für jede Schadensquelle.
  • Vorrückende Armeen mit eigenen, unbegrenzt wachsenden Monsterwellen.
  • Planung mit atomarer Übernahme, Besitz-IDs, Einmal-Belohnung mit verlustfreier Restverteilung, Rückkehr und Heilung der Truppen, persistenter Gebäudeschaden.
  • Partieende nur durch Kernfall; bei gleichzeitigem Kernfall Unentschieden.
  • Bots über dieselbe Befehlsschnittstelle.
  • 3D-Karte aus Bestandsassets plus neuem Turm (Blender), Einheiten mit den vorhandenen Modellen und Animationen.
  • HUD mit Planung, Laneübersicht, Minimap, Ergebnis; Titelmenü auf Champions of Luneraria umgestellt.
  • Übernahme der alten Benutzereinstellungen. Legacy-Modus bleibt unter --legacy und den alten QA-Schaltern erreichbar.

Automatisiert geprüft

  • Regeln 91/91, darunter der exakte Spiegeltest über 12 Runden.
  • Echte Anwendung 38/38, mit einer vollständigen Partie bis zum Ancient-Fall.
  • Acht Bot-Seeds enden regulär nach 8–15 Wellen.
  • Legacy 209 · 33 · 463 · 206 · 1.665 · 68 unverändert.

Visuell geprüft: Menü, Planung (720p/1080p), Kampf Mid/Top, Übersicht, Belagerung eines Ancients, Ergebnis (screenshots/).

Leistung (RTX 5060 Ti, Ryzen 5 5600X, Forward+, VSync aus, 2×): 114 bewegliche Einheiten und 18 Gebäude. 1080p: 7,6 ms/Bild (p95 10,5 ms), GPU 3,1 ms, ~3.170 Draw Calls, Simulationsschritt 2,4 ms (vor der Optimierung 15,8 ms). Es gibt keine allgemeine FPS-Zusage.

Ungetestet: Windows 11, Kompatibilitätsmodus für Luneraria, menschliche Spieltests.

M2 · abgeschlossen

Implementiert

  • Drei Helden (vorläufige Rollen der vorhandenen Skelettmodelle Ringborke, Quellgeflecht, Funkenlanze) mit Erfahrung aus Gefechtsnähe und Rundenteilnahme, Stufen, je zwei Talentstufen mit echten Aufgabenwechseln und drei Itemplätzen für sechs Items.
  • Drei Angriffschampions (Schutz, Druck auf Unterstützer, Belagerung) mit Buchung n → n+1 und öffentlicher Ankündigung.
  • Bossgrotte mit ruhendem Boss bei zwei Expeditionen, Scheitern, Eroberung, genau einer Entsendung für das siegreiche Team gegen den gegnerischen Ancient, hohem Kopfgeld für die Verteidiger und Sperre ab Sieg + 4.
  • Wahl der Ziel-Lane durch den beitragenden Spieler; Grottenaufträge gelten für genau eine Runde.
  • HUD mit Reitern Truppen / Held / Verstärkung, Heldenporträt aus dem echten Modell, Grottenstatus, Ankündigungen und Minimap-Grotte.
  • Neues Grotten-Asset (Blender). Bots mit Helden, Items, Talenten, Champions und Bossjagd.

Automatisiert geprüft

  • Regeln M2 73/73 und M1 91/91 (mit Spiegeltest).
  • Echte Anwendung M2 15/15 und M1 38/38.
  • 12 Bot-Seeds enden regulär nach 7–10 Wellen.
  • Szenariovergleich der Bossstrategie (2 Seeds × 5 Varianten).

Visuell geprüft: Held mit Items im HUD, Held im Feld, Grottenkampf, Ankündigung, Bossentsendung (screenshots/m2-*).

Ungetestet: menschliche Spieltests der neuen Systeme, Windows 11.

M3 · abgeschlossen

Implementiert

  • Bot-Priorisierung: Items und Angriffschampions werden vor der Armee geplant (Reserve), damit Helden Ausrüstung erhalten und Champions überhaupt gebucht werden. Regression bots_m2 gefixt.
  • Deterministische Lane-Hilfe der Bots statt geteiltem Zufall — erhält die exakte Spiegelsymmetrie.
  • Bossbalance: Grottenboss 3.600 HP, entsandter Boss 6.800 HP / 88 Schaden, Belagerungsfaktor 1,8. Bossjäger senden 5 Truppen + Held und bewerten Expeditionen per öffentlicher Lanchester-Schätzung.
  • Profilbalance: verteidigung erhält Champion und Teamhilfe; ausgewogen startet den Held eine Runde später; teamhilfe hilft seltener.
  • 3D-Kartenvisuals: map_props.glb (Blender-Generator) mit Kiefern, Eichen, Felsen, Büschen, Brücken über die Kluft, Bordsteinen, Klamprahmen und Team-Bannern an den Ancients. Alte Compare-Props abgelöst.
  • Sieben Volksrepräsentanten (p_mensch … p_biest) mit gewichtetem Skelett, 9 Clips, LP_*-Materialien, Audit und Sichtprüfung. Entwicklungsplan in VOELKER.md. Noch nicht spielbar im Match.
  • Balancewerkzeuge: balance_run (Zusammensetzungen, Seitentausch, reine Duelle), analyze_balance.py, stress_run, people_lineup.

Automatisiert geprüft

  • Regeln: Core 91/91 (inkl. Spiegel) und M2 73/73 nach den Bot-Änderungen.
  • Echte Anwendung: M1 38/38 und M2 15/15 (nach Fix der Item-Ausrüstung).
  • Balance 40 Partien: Seitentausch 20/20, Profile 24–64 %, Bünde 55/45, alle regulär nach 9–14 Wellen.
  • Profil-Duelle 30 Partien: Seitentausch 15/15.
  • Stress 17/17: Wellen bis 10⁶, Langlauf 200 Runden als „Testlimit erreicht“.
  • Legacy unverändert.

Visuell geprüft: Kartenübersicht mit Props und Brücken, Kampf Top/Mid, Planung mit Helden-Items (Funkenlanze Stufe 3, Glutklinge), sieben Völker in Ruhe/Kontakt/Laufen/Fähigkeit/Tod und Nahaufnahme (screenshots/peoples-*).

Bekannte Befunde

  • Reine 3-gleichen Profil-Duelle ergeben eine lineare Kette (ausgewogen > verteidigung > teamhilfe > fernkampf > druck > bossjagd), keinen Zyklus. In gemischten Teams sind alle Profile im Band 24–64 %.
  • Bossjagd als reines Teamprofil 0/10, in Mischteams 24 %. Die Risikoabschätzung ist besser geworden, die Jagd bleibt teuer.

Bekannt

  • Ein exakt gespiegeltes Match bleibt unentschieden, wird also nicht beendet (Testlimit). Das ist der erwartbare Grenzfall identischen Spiels; Asymmetrie kommt aus Helden, Champions und Boss.
  • Die Monsterwellen sind nur über Teamring und Lichtfarbe dem Team zugeordnet.
  • Beim Beenden meldet Godot eine noch belegte Ressource (Hintergrundladen der Menübühne); ohne Folgen im Spiel.
  • Die sieben Volksrepräsentanten sind noch nicht spielbar (Daten und Modelle liegen vor, Plan in VOELKER.md).

Blockiert

  • Nativer Windows-11-Test: keine Windows-Hardware.
  • Kompatibilitätsmodus (OpenGL) für Luneraria: erst mit M4-Exporten gezielt prüfen.

M4 · pausiert

Auf Entscheidung des Auftraggebers ruht M4 seit dem 28. September 2026 zugunsten der Grafik- und Kartenphasen G1–G6. Während dieser Phasen gibt es keine Netzwerk-Featurearbeit; die Netzwerktests laufen nur als Regression mit.

Implementiert

  • LuneSession (autoritativ): Der Host besitzt LuneMatch und rechnet jeden Kampf. Clients senden nur Absichten (Kauf, Aufwertung, Zuweisung, Rückgängig, Bereit) und zeigen den Kampf aus Host-Momentaufnahmen (20/s, interpoliert). Ein Client rechnet keinen einzigen Kampfschritt.
  • Das echte Spiel (LuneGame) läuft vollständig über die Sitzung: Bereitschaft, Startaufstellung und Rückgängig gehen an den Host; Bots planen nur freie Sitze und höchstens einmal pro Runde; Tempo und Pause bestimmt der Host.
  • „Bereit“ ist verbindlich: Danach nimmt der Host für diesen Sitz keine Planungsbefehle mehr an.
  • Privatsphäre: Jeder Sitz erhält nur den eigenen Planungsentwurf, von allen anderen den übernommenen Stand.
  • Verbindungsaufbau mit Protokollprüfung (PROTOCOL 4). Sitzplätze an Peer-IDs, ein Peer ein Sitz.
  • Disconnect → Bot-Übernahme, nie Kernverlust, keine Hostmigration. Wiedereinstieg: Wer sich mit demselben Anzeigenamen erneut verbindet, erhält seinen alten Sitz zurück, auch mitten im Kampf (vollständiger Abgleich inkl. laufender Einheiten). Neue Gäste nehmen reservierte Sitze nur als letzte Möglichkeit.
  • Übernahme eines Bot-Sitzes in der Planung: Der noch nicht übernommene Bot-Entwurf verfällt, das Gold gehört dem Menschen.
  • Revanche startet der Host; Gäste starten automatisch neu. Verbindungsverlust führt den Gast mit Meldung ins Menü.
  • Host/Join im Setup-Menü (Direktverbindung, Standardport 24571), freie Plätze als Bots.
  • Exporte Luneraria-Linux und Luneraria-Windows, entpackbare Demos 0.16.0-m4 unter ../dist/luneraria/ (Stand vor dem Sitzungsumbau; nicht neu gebaut).

Automatisiert geprüft

  • Protokoll test_lune_net 43/43: fremder Sitz, fremde UID, veralteter Befehl, Doppelkauf, Disconnect ohne Kernschaden, Protokollversion, Wiedereinstieg auf denselben Sitz, Reservierung gegen neue Gäste, Übernahme mit verfallendem Bot-Entwurf, Bot plant einmal pro Runde, Bereit ist verbindlich, nur eigener Entwurf im Zustand.
  • Mehr-Runden-Loopback mit drei Prozessen (python3 tools/luneraria/net_rounds.py) 12/12: Host und Gast spielen fünf Runden mit dem echten LuneGame; nach jeder Abrechnung ist die Prüfsumme des öffentlichen Zustands gleich; der Gast rechnet 0 Kampfschritte und erhält Momentaufnahmen; Gast A trennt im Kampf der Runde 2, der Bot übernimmt, Gast B kehrt mit demselben Namen auf Slot 1 zurück (logs/m4/net-rounds.json).
  • Regressionen nach dem Umbau: Regeln 91/91, M2 73/73, echte Anwendung M1 38/38 und M2 14/14 (Partie endete vor einer Bossentsendung).

Visuell geprüft: Host und Gast in zwei Fenstern mit Grafik, Kampf in Echtzeit. Gastsicht in Planung und Kampf von Runde 1 und 2 (screenshots/m4/). Runde 1: 872, Runde 2: 730 empfangene Momentaufnahmen, Prüfsummen gleich.

Offen (eingefroren)

  • Kompatibilitätsmodus (OpenGL) für Luneraria.
  • Nativer Windows-11-Test (blockiert: keine Hardware).
  • Neubau der Demo-Pakete mit der umgebauten Sitzung.
  • Partie mit sechs Menschen auf mehreren Rechnern bzw. über das Internet (bisher nur lokaler Loopback).
  • Wiedereinstieg ist nur an den Anzeigenamen gebunden (keine Konten); Übertragungsrate bei vielen Gästen über das Internet ist nicht gemessen.
  • Öffentliches Matchmaking, Accounts, Ranglisten: außerhalb des Umfangs.

Nächster Schritt

Phasen G1–G6 (Karte, Ancients/Türme/Grotte, HUD, Umgebung, Licht/Material, Einheitendarstellung) nach dem Grafikauftrag vom 28. September 2026. M4 ruht; beim Wiederaufnehmen zuerst OpenGL-Sichtprüfung, Windows-11-Protokoll auf fremder Hardware und Neubau der Demos.