Files
Dimension-47/docs/BATTLE_TODO.md
Alexander Zielonka 4b3c0d2667
All checks were successful
Deploy Dimension47 / deploy (push) Successful in 35s
feat: Add GM library for battle maps and NPC templates
- Add library page with tabs for maps and combatants
- Create map upload modal with grid configuration
- Create NPC/monster template modal with abilities
- Add library link to campaign page (GM only)
- Add battle feature TODO documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 10:28:38 +01:00

3.9 KiB

Battle Screen - TODO

Phase 2: Grid System

Frontend

  • grid-overlay.tsx - Verbessertes Grid-Rendering mit Snap-Preview
  • grid-config-modal.tsx - Grid konfigurieren (nur GM)
    • Grid-Größe anpassen (Spalten x Reihen)
    • Grid-Offset für vorgezeichnete Maps einstellen
    • Live-Preview beim Anpassen
    • Zellenfarbe und Transparenz
  • Snap-to-Grid beim Token-Platzieren
  • Grid Ein-/Ausblenden Toggle (bereits vorhanden, verbessern)

Phase 3: Token Management

Frontend

  • add-pc-modal.tsx - PCs aus Kampagne hinzufügen (mit Filter/Suche)
  • add-npc-modal.tsx - NPCs aus Templates hinzufügen
  • create-combatant-modal.tsx - Neues NPC-Template erstellen
    • Name, Level, HP, AC
    • Rettungswürfe (Fort, Ref, Will)
    • Wahrnehmung, Geschwindigkeit
    • Fähigkeiten mit Aktionskosten
    • Avatar-Upload
  • token-detail-panel.tsx - Seitenpanel für Token-Details
    • HP-Management (Schaden/Heilung)
    • Zustand hinzufügen/entfernen
    • Notizen
    • Statistiken anzeigen (für NPCs)
  • initiative-tracker.tsx - Initiativreihenfolge
    • Sortierte Liste aller Tokens
    • Aktueller Zug markiert
    • Nächster/Vorheriger Zug
    • Verzögern-Funktion

Backend WebSocket Events

  • token_conditions_changed - Zustände aktualisiert
  • turn_started - Zug beginnt (für aktiven Token)
  • delay_turn - Zug verzögern

Phase 4: Player View

Frontend

  • battle-player-view.tsx - Route: /campaigns/:id/battle/view
    • Vollbild-Ansicht für Spieler (TV-Modus)
    • Read-only (keine Token-Manipulation)
    • Sync via gleicher WebSocket-Room
  • battle-tv-window.tsx - Pop-out Window Logik
    • "TV-Modus öffnen" Button
    • Separates Browser-Fenster
    • Automatische Größenanpassung

Berechtigungen

Feature GM View Player View
Tokens bewegen Ja Nein
PC HP sehen Ja (Zahlen) Ja (Zahlen)
NPC HP sehen Ja (Zahlen) Nein (nur Blut-Effekt bei <20%)
NPC-Stats sehen Ja Nein
Initiative bearbeiten Ja Nein
Grid konfigurieren Ja Nein

Phase 5: Polish & Erweiterte Features

Drag & Drop

  • Touch-Support für mobile Geräte
  • Drag-Preview mit Zielzelle hervorheben
  • Multi-Select (Shift+Klick)
  • Mehrere Tokens gleichzeitig bewegen

Visuelle Verbesserungen

  • Condition-Badges auf Tokens
    • Icon für häufige Zustände (Frightened, Slowed, etc.)
    • Anzahl bei gestuften Zuständen
  • Blut-Effekt bei niedrigen HP (<20%)
  • Token-Avatar anstatt Initialen (wenn vorhanden)
  • Verschiedene Token-Formen (rund, eckig)
  • Größen-Indikator für Large/Huge/Gargantuan

Kampf-Tools

  • combat-log.tsx - Letzte Aktionen anzeigen
    • Token bewegt
    • Schaden erhalten
    • Zustand hinzugefügt
    • Initiative geändert
  • measure-tool.tsx - Entfernung messen
    • Klick & Drag für Linie
    • Entfernung in Fuß anzeigen
    • Diagonal-Bewegung nach PF2e-Regeln
  • area-tool.tsx - Flächeneffekte
    • Kegel, Linie, Emanation, Burst
    • Größe einstellen
    • Betroffene Felder hervorheben

Map-Features

  • Fog of War (nur GM sieht alles)
  • Mehrere Ebenen (Untergrund, Obergeschoss)
  • Zoom & Pan
  • Map-Marker / Notizen

Technische Verbesserungen

Performance

  • Canvas-basiertes Rendering statt DOM für große Maps
  • Token-Position nur bei Release senden (nicht während Drag)
  • Lazy Loading für Token-Avatare

Backend

  • Combat Log in Datenbank speichern
  • Battle Session Snapshots (Undo/Redo)
  • Automatisches Aufräumen inaktiver Sessions

Prioritäten

  1. Hoch - Grid Config Modal (Phase 2)
  2. Hoch - Initiative Tracker (Phase 3)
  3. Hoch - Player View / TV-Modus (Phase 4)
  4. Mittel - Token Detail Panel mit HP-Management
  5. Mittel - Condition Badges
  6. Mittel - Combatant Template erstellen
  7. Niedrig - Measure Tool
  8. Niedrig - Combat Log
  9. Niedrig - Fog of War