update
This commit is contained in:
37
README.md
37
README.md
@@ -23,7 +23,15 @@ Würfel (Tank), Kegel (DPS) und Kugeln (Heiler). Alles wird im Code erzeugt.
|
||||
- Spielername rechts anklicken = sein Brett oben ansehen. Der nächste Gegner steht schon in der Planung fest.
|
||||
- `Q`/`E` oder mittlere Maustaste drehen die Kamera, das Mausrad zoomt
|
||||
- Die Planung dauert 30 Sekunden, dann startet der Kampf von selbst
|
||||
- Startbildschirm und Pause haben einen Lautstärkeregler
|
||||
- Startbildschirm: Bots leicht/normal/schwer, Lautstärke. Beides wird in `user://settings.cfg` gespeichert.
|
||||
- Maus über einer Einheit oder Shop-Karte zeigt Werte und Fähigkeit, auch bei Gegnern im Kampf.
|
||||
- In den ersten zwei Runden steht unten ein Tipp, was als Nächstes dran ist.
|
||||
- Wer ausscheidet, kann zuschauen (Runden laufen dann in 3 s) oder neu starten.
|
||||
- `1`–`5` kaufen den jeweiligen Shop-Platz. `Z` macht den letzten Verkauf 5 s lang rückgängig.
|
||||
- Die gewählte Einheit zeigt ihre Reichweite auf den Feldern: grün Heilung, orange Angriff.
|
||||
- Runde 1 und 2 gehen gegen die Wildnis, danach gegeneinander.
|
||||
- Der Spielstand wird zu jedem Planungsbeginn und bei Pause gespeichert. Der Startbildschirm
|
||||
bietet dann „Weiterspielen". Am Spielende steht eine Statistik.
|
||||
|
||||
## Regeln
|
||||
|
||||
@@ -74,6 +82,18 @@ Nicht in den Anforderungen, aber „Basis wie TFT":
|
||||
- **Rückblick** nach jedem Kampf: Ergebnis, Überlebende, stärkste Einheit, gefährlichster Gegner
|
||||
(`Combat.recap`, `Game.human_recap`).
|
||||
- **Start, Pause, Lautstärke** als Overlays in `Main`, Kamera mit Zoom und Drehung um die Brettmitte.
|
||||
- **Element-Formen**: das Hauptelement gibt der Fähigkeit jeder Rolle ihre Form (`Data.ELEMENT_FORM`,
|
||||
`Combat._apply_form`). Feuer trifft Nachbarn und entzündet, Wasser gibt Mana, Wind beschleunigt
|
||||
Verbündete, Blitz springt weiter, Erde betäubt um das Ziel, Eis verlangsamt um das Ziel.
|
||||
- **Fähigkeiten sichtbar**: Schildring, Fläche am Ziel, Heilring (`BoardView3D.spawn_effect`).
|
||||
- **Gehen**: Einheiten drehen sich zur Laufrichtung oder zum Ziel und wippen beim Schritt.
|
||||
- **Schwierigkeit** steuert Gier und Jagdverhalten der Bots (`Data.BOT_GREED`, `BotAI.setup`).
|
||||
- **Bot-Heiler** stehen in Reihe 1–2 hinter den Tanks, sonst reicht ihre Heilung nicht (`BotAI.arrange`).
|
||||
- **Rückgängig** (`PlayerState.undo_sell`) nimmt die Bausteine wieder aus dem Vorrat.
|
||||
- **Wildnis-Runden** (`Data.PVE_ROUNDS`, `Game._make_creeps`): jeder Spieler bekommt eine eigene Kopie.
|
||||
- **Speichern** als JSON in `user://spielstand.json` (`Game.to_dict/from_dict`), inklusive RNG-Zustand,
|
||||
Bot-Vorlieben und geteiltem Vorrat. Trait-Zeilen nennen die nächste Stufe, neue Kombinationen und
|
||||
Trait-Stufen werden gemeldet (`Main._announce_synergies`).
|
||||
|
||||
Der neutrale Avatar selbst ist unbegrenzt. Knapp ist das Element, das man ihm beim
|
||||
Kauf gibt: das zieht einen Platz aus dem geteilten Vorrat. Die 100 pro Element sind
|
||||
@@ -84,6 +104,15 @@ Die Neutral-Chance ist multiplikativ (0,75 hoch Anzahl Elemente) statt in
|
||||
Prozentpunkten. So verschwindet Neutral nie ganz: ohne eigene Elemente 100%,
|
||||
mit einem 75%, mit sechs noch 18%.
|
||||
|
||||
## Schere, Stein, Papier
|
||||
|
||||
Elemente im Ring, jedes schlägt genau eines: Wasser > Feuer > Eis > Wind > Erde > Blitz > Wasser.
|
||||
Rollen als Dreieck: Tank > Schütze > Heiler > Tank. Konter ±20 % (Element) und ±15 % (Rolle),
|
||||
nur das Hauptelement zählt (`Data.counter_multiplier`, angewandt in `Combat._apply_damage`).
|
||||
Konter-Treffer tragen ein ▲, Tooltip und Info-Panel nennen „Stark gegen / Schwach gegen".
|
||||
Bots wählen beim Kauf das Element, das das häufigste Element des nächsten Gegners schlägt;
|
||||
schwere Bots auch außerhalb ihrer Vorlieben (`BotAI._pick_element`).
|
||||
|
||||
## Elemente und Traits
|
||||
|
||||
Feuer, Wasser, Wind, Blitz, Erde, Eis. Stufen bei 2 / 4 / 6 Einheiten.
|
||||
@@ -93,8 +122,10 @@ Magma, Sturmfront, Dampf.
|
||||
## Aufbau
|
||||
|
||||
scripts/core/ Data, Avatar, Pool, ShopEntry, PlayerState, Hex, Combat, BotAI, Game
|
||||
scripts/ui/ Main (Szene, Kamera, Eingabe, Overlays), TopBar, InfoColumn, PlayersPanel,
|
||||
ShopPanel (je ein Panel, melden per Signal), BoardView3D, HudOverlay, Sfx, UiKit
|
||||
scripts/ui/ Main (Eingabe, Aktionen, Orchestrierung), CameraRig, Overlays, TopBar,
|
||||
InfoColumn, PlayersPanel, ShopPanel (melden per Signal), BoardView3D,
|
||||
HudOverlay, TooltipView, Sfx, UiKit
|
||||
scripts/core/ dazu Settings (user://settings.cfg)
|
||||
scenes/Main.tscn
|
||||
tests/ sim_test.gd (kopflos), Probe2, Probe3, CamCal
|
||||
|
||||
|
||||
Reference in New Issue
Block a user