From 445f133c90256bd3af17decba9ad5803c1631426 Mon Sep 17 00:00:00 2001 From: MDietermann Date: Mon, 10 Aug 2026 10:47:29 +0200 Subject: [PATCH] docs: add CONTEXT.md with glossary and slice scope --- CONTEXT.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 CONTEXT.md diff --git a/CONTEXT.md b/CONTEXT.md new file mode 100644 index 0000000..6ac570b --- /dev/null +++ b/CONTEXT.md @@ -0,0 +1,32 @@ +# CONTEXT + +Single-Context-Dokument für InfiniTower. Legt die Begriffe fest, bevor sie in Code und Spec auseinanderlaufen. Siehe `docs/agents/domain.md` für die Konsum-Regeln (Glossar-Vokabular verbindlich, ADR-Konflikte offen benennen). + +## Glossar + +| Begriff | Code-Bezeichner | Definition | +|---|---|---| +| Run | `Run` | Ein Durchlauf von Welle 1 bis zum Tod des Turms — die abgrenzende Zeiteinheit für In-Run-Upgrades, die mit dem Run-Ende verfallen. | +| Welle | `Wave` | Eine Gruppe von Gegnern, die innerhalb eines Runs gemeinsam radial auf den Turm zuläuft. Wellen folgen einer einzigen endlosen Schwierigkeitskurve ohne Tiers. | +| Turm | `Tower` | Die einzige spielereigene Einheit, fest in der Mitte der Arena. Schießt selbstständig (idle) auf Gegner; der Spieler wirkt nur über In-Run-Upgrades, Workshop, Cards und die Ultimate auf ihn ein. | +| Gegner | `Enemy` | Eine gegnerische Einheit, die innerhalb einer Welle radial von außen auf den Turm zuläuft. | +| Coins | `Coins` | Die Ressource, die während eines Runs durch besiegte Gegner verdient wird und im Run als Währung dient (u. a. für In-Run-Upgrades). Ob sie darüber hinaus auch Workshop-Upgrades oder Cards finanziert, ist offen (siehe Offen). | +| In-Run-Upgrade | `RunUpgrade` | Ein innerhalb eines Runs aus Coins gekauftes Upgrade des Turms, das mit dem Run-Ende verfällt — im Gegensatz zu den permanenten Workshop-Upgrades. | +| Workshop | `Workshop` | Meta-Progression zwischen Runs: permanente Stat-Upgrades des Turms. Wirkt über Runs hinweg, nicht innerhalb eines einzelnen Runs. | +| Card | `Card` | Meta-Progression-Element neben dem Workshop; Teil der zwischen Runs bestehenden Fortschrittsschicht des Slice. Mechanik über "Meta-Progression" hinaus noch nicht festgelegt (siehe Offen). | +| Ultimate | `Ultimate` | Die eine aktive Fähigkeit im Slice — im Gegensatz zum sonst rein passiven Dauerfeuer des Turms. Ob sie manuell vom Spieler ausgelöst wird oder automatisch nach Idle-Logik feuert, ist offen (siehe Offen, #9). Dient als Muster für spätere weitere Ultimates. | +| Slice | `Slice` (Branch-Präfix `slice/`) | Der aktuell abgegrenzte Vertical-Slice-Funktionsumfang des Lernprojekts, wie in Issue #1 kartiert. Grenze zwischen "drin" und "raus" siehe Slice-Scope unten. | + +## Slice-Scope + +Drin ist ein Turm in der Mitte einer 2D-Arena, der über eine einzige endlose Wellenkurve mit radial anlaufenden Gegnern idle schießt, während der Spieler über In-Run-Upgrades, Workshop, Cards und eine einzelne Ultimate eingreift. Save/Load ist drin, Offline-Progress nicht. Die Umsetzung ist Desktop-nativ mit `bevy_sprite` und orthographischer Kamera, in Programmer-Art ohne Art-Direction. Raus sind Pfadfindung, Turm-Platzierung und Maze-Building, ebenso Tiers, Labs, Modules und Perks. Raus ist außerdem alles Server-seitige — Guilds, Tournaments, Cloud-Saves, Accounts, IAP — sowie Mobile- und Web-Ports, die erst nach dem Slice folgen. + +## Wayfinder-Karte + +Der vollständige Zuschnitt des Vertical Slice ist in Issue #1 kartiert: https://gitlab.hive-brain.de/MDietermann/InfiniTower/issues/1 + +## Offen + +- Card: Die Karte definiert Cards nur als Teil der Meta-Progression neben dem Workshop, ohne Mechanik (Deck? Einzelauswahl? Drop-Quelle?). Muss vor Umsetzung geklärt werden (voraussichtlich Ticket #8 oder eigenes Spec-Ticket). +- Coins: Unklar, wofür sie genau als Währung dienen — belegt ist nur In-Run-Upgrades; ob sie zusätzlich Workshop-Upgrades oder Cards finanzieren, bzw. ob Cards eine eigene Ressource brauchen, ist offen. +- Ultimate-Auslöser: Unklar, ob die Ultimate manuell vom Spieler ausgelöst wird oder automatisch nach Idle-Logik feuert. Klärt Ticket #9; die Antwort berührt das Kern-Gefühl "Idle".