update
This commit is contained in:
98
daten/TFT/spiel.md
Normal file
98
daten/TFT/spiel.md
Normal file
@@ -0,0 +1,98 @@
|
||||
<!-- titel -->
|
||||
Spiel
|
||||
----------------------------------------
|
||||
<!-- art -->
|
||||
kern
|
||||
----------------------------------------
|
||||
<!-- ziel -->
|
||||
Simuliert einen vollständigen TFT-Spielzug mit Gegnern, Shop und Kampf
|
||||
----------------------------------------
|
||||
<!-- regeln -->
|
||||
- game_id ist 8-stelliger Hex-String
|
||||
- Board enthält Einheiten mit Items
|
||||
- Shop enthält Odds und Kosten
|
||||
- XP zeigt Fortschritt zum Levelaufstieg
|
||||
- Augment-Angebot erscheint in passenden Runden
|
||||
- Kampf endet automatisch mit Zustandsänderungen bei allen Beteiligten
|
||||
- Spieler HP auf 0
|
||||
- Letzte Runde vorbei
|
||||
- buy_xp als Aktion
|
||||
- pick_augment als Aktion
|
||||
- lock als Aktion
|
||||
- next als Aktion
|
||||
- Augment-Auswahl zeigt gewählte Augmente
|
||||
- Shop zeigt Upgrade-Hinweis für 2- und 3-Sterneinheit
|
||||
- Spielstand enthält reroll_cost und xp_cost
|
||||
- Spielstand enthält shop_locked und shop_odds
|
||||
- Spielstand enthält xp und xp_needed
|
||||
- Spielstand enthält streak
|
||||
- Spielstand enthält Log der letzten 8 Einträge
|
||||
- Spielstand enthält placement
|
||||
- autoplay als eigene Funktion
|
||||
----------------------------------------
|
||||
<!-- funktion -->
|
||||
Gegner einblenden
|
||||
<!-- ziel -->
|
||||
Blickt in die Board-Aufstellung eines Gegners
|
||||
<!-- regeln -->
|
||||
- Nur für Nicht-Spieler
|
||||
- Gegner muss lebendig sein
|
||||
- Gegner braucht Einheiten auf dem Board
|
||||
<!-- testen -->
|
||||
- LMB auf lebenden Gegner
|
||||
- Scout-Bereich mit Einheiten-Icon erscheint
|
||||
- Erneuter Klick blendet Scout aus
|
||||
----------------------------------------
|
||||
<!-- funktion -->
|
||||
Runde fortsetzen
|
||||
<!-- ziel -->
|
||||
Wechselt zur nächsten Spielphase oder löst den Kampf aus
|
||||
<!-- regeln -->
|
||||
- Nächste Phase einleiten
|
||||
- Kampf ▶ im PvP-Modus auslösen
|
||||
<!-- testen -->
|
||||
- Kampf-Button klicken
|
||||
- Spielzustand fortgeschritten
|
||||
----------------------------------------
|
||||
<!-- funktion -->
|
||||
Spiel starten
|
||||
<!-- ziel -->
|
||||
Beginnt ein neues Spiel mit initialem Spielstand
|
||||
<!-- regeln -->
|
||||
- Generiert eindeutige game_id
|
||||
- Lädt statische Spieldaten
|
||||
- Initialisiert Spieler und Bots
|
||||
- Antwortet mit vollständigem Spielstand
|
||||
<!-- testen -->
|
||||
- LMB auf "Neues Spiel"
|
||||
- Anfrage an Backend abwarten
|
||||
- Splash-Bildschirm verschwindet, Spiel-Layout erscheint
|
||||
----------------------------------------
|
||||
<!-- funktion -->
|
||||
Spielaktion ausführen
|
||||
<!-- ziel -->
|
||||
Führt Aktionen wie Kaufen, Verkaufen und Bewegen im Spiel aus
|
||||
<!-- regeln -->
|
||||
- 404 bei unbekannter Spiel-ID
|
||||
- 400 bei unbekannter Aktion
|
||||
- 400 bei ungültiger Aktion
|
||||
- 400 bei fehlenden Parametern
|
||||
<!-- testen -->
|
||||
- POST an Spielaktion-Endpunkt mit action=buy und slot=0
|
||||
- 200 miterialisierter Spielstand zurück
|
||||
- Aktion ungültig → 400 mit Fehlermeldung
|
||||
----------------------------------------
|
||||
<!-- funktion -->
|
||||
Spiele automatisch spielen
|
||||
----------------------------------------
|
||||
<!-- funktion -->
|
||||
Spielstand abrufen
|
||||
<!-- ziel -->
|
||||
Gibt den aktuellen Spielstand als JSON zurück
|
||||
<!-- regeln -->
|
||||
- Unbekannte game_id wirft HTTP 404
|
||||
<!-- testen -->
|
||||
- GET auf ungültige game_id
|
||||
- HTTP 404 mit Fehlermeldung
|
||||
- GET auf gültige game_id
|
||||
- HTTP 200 mit Spielstand
|
||||
Reference in New Issue
Block a user