Eine vereinfachte, spielbare Web-Version des Mage Knight Brettspiels.
- Speichern & Laden: Speichere deinen Fortschritt in mehreren Slots
- Artefakte: 13 Gold-Artefakte mit permanenten Boni (Ausrüsten für passive Effekte)
- Feinde verfolgen Helden: KI-gesteuerte Bewegung über Web Worker
Dies ist eine Basis-Version von Mage Knight, implementiert als Web-Anwendung. Das Spiel bietet die Kern-Mechaniken des Originals in vereinfachter Form:
- Solo-Modus: Spiele als Held Goldyx gegen KI-gesteuerte Feinde
- Hex-basiertes Spielfeld: Bewege dich über verschiedene Terraintypen
- Kartenbasiertes Gameplay: Nutze Aktionskarten für Bewegung, Angriff und Verteidigung
- Taktischer Kampf: Bekämpfe Feinde in einem vereinfachten Kampfsystem
- Ressourcen-Management: Verwalte Mana, Ruhm und Verletzungen
- Speichern & Laden: Speichere deinen Fortschritt in mehreren Slots
- Artefakte: 13 Gold-Artefakte mit permanenten Boni (Ausrüsten für passive Effekte)
- Öffne
index.htmlin einem modernen Webbrowser - Das Spiel startet automatisch
- Du beginnst mit 5 Handkarten und Goldyx auf Position (0,0)
- Graphics Upgrade: Details zum neuen Premium-Look, 3D-Effekten und Animationen.
- UI Improvements: Keyboard Shortcuts, neue Indikatoren und UX-Verbesserungen.
- Regeln & Status: Detaillierte Übersicht der implementierten Regeln, Feindfähigkeiten und fehlenden Features.
- Test Guide: Anleitung zum Schreiben von Tests für dieses Projekt.
- Hilfe System: Dokumentation des Hilfesystems.
- Original-Brettspiel-Regeln (Hintergrund): Das vollständige Regelwerk des Brettspiels Mage Knight (Regelheft + Szenarioheft). Hinweis: Dies ist das Original-Brettspiel, keine Anleitung für diese Web-App — die Web-Version ist eine vereinfachte Solo-Implementierung (siehe oben). Nützlich als Hintergrund für die Spielmechaniken. Ultimate-Variante enthält zusätzliche Feindplättchen-Eigenschaften.
Ziel: Besiege alle Feinde auf der Karte!
Dein Held:
- Rüstung: Reduziert erhaltenen Schaden
- Handlimit: Maximale Anzahl Karten auf der Hand
- Verletzungen: Blockieren Kartenslots
-
Karten spielen:
- Linksklick auf Karte: Spielt die Basis-Wirkung
- Rechtsklick auf Karte: Öffnet Modal für seitliches Spielen (+1 Bewegung/Angriff/Block/Einfluss)
-
Bewegung:
- Spiele Bewegungskarten (grüne Karten)
- Klicke auf ein hervorgehobenes Hex, um dorthin zu ziehen
- Unterschiedliche Terrains kosten unterschiedlich viel Bewegungspunkte
-
Kampf:
- Betritt ein Feld mit einem Feind, um den Kampf zu beginnen
- Block-Phase: Spiele Block-Karten (blaue Karten), um Feindangriffe zu blockieren
- Schadens-Phase: Automatisch - du erhältst Verletzungen für ungeblockten Schaden
- Angriffs-Phase: Spiele Angriffs-Karten (rote Karten), um Feinde zu besiegen
-
Zug beenden:
- Klicke auf "Zug beenden"
- Gespielte Karten gehen auf den Ablagestapel
- Ziehe neue Karten bis zum Handlimit
- 🌿 Grüne Karten: Bewegung
- ⚔️ Rote Karten: Angriff
- 🛡️ Blaue Karten: Block/Verteidigung
- 💬 Weiße Karten: Einfluss (in Basis-Version eingeschränkt)
- 🌾 Ebenen: 2 Bewegungspunkte
- 🌲 Wald: 3 Bewegungspunkte (Tag), 5 (Nacht)
- ⛰️ Hügel: 3 Bewegungspunkte
- 🏔️ Berge: 5 Bewegungspunkte
- 🏜️ Wüste: 5 Bewegungspunkte (Tag), 3 (Nacht)
- ☠️ Ödland: 3 Bewegungspunkte
- 💧 Wasser: Unpassierbar
- 🗡️ Schwächling: Rüstung 2, Angriff 1
- 👹 Ork: Rüstung 3, Angriff 2
- 🛡️ Wächter: Rüstung 4, Angriff 3 (befestigt)
- 👻 Phantom: Rüstung 2, Angriff 3, Attentäter (Schaden muss vom Helden genommen werden)
- 🦇 Vampir: Rüstung 4, Angriff 4, Attentäter, Vampirismus, Giftig
- 🐲 Drache: Rüstung 6, Angriff 5, Brutal, Feuer-Resistenz
(Siehe rules.md für Details zu Feindfähigkeiten wie Vampirismus, Flink, etc.)
- Klicke auf Mana-Würfel in der Quelle, um sie zu nehmen
- Farben: 🔥 Rot, 💧 Blau, ✨ Weiß, 🌿 Grün, 💰 Gold, 🌑 Schwarz
- Tag/Nacht-Regel: Gold-Mana ist ein Wildcard (beliebige Farbe), aber nur am Tag. In der Nacht kann Gold-Mana nicht verwendet werden, um andere Farben zu ersetzen.
- Mana wird für starke Kartenwirkungen benötigt.
- Plane voraus: Überlege, welche Karten du für Bewegung und welche für Kampf brauchst
- Vermeide Verletzungen: Blocke starke Feindangriffe, wenn möglich
- Nutze das Terrain: Manchmal ist der längere Weg über Ebenen besser als der kurze durch Berge
- Karten seitlich spielen: Wenn du nur +1 brauchst, spare die starken Effekte für später
- Raste mit Bedacht: Lege unerwünschte Karten ab, um bessere Karten nachzuziehen
- Fehler machen erlaubt: Nutze den Undo-Button (↩️) oder Strg+Z, um Bewegungs- oder Manafehler zu korrigieren.
Das Spiel ist modular aufgebaut:
js/game.ts- Haupt-Spiellogik und Controllerjs/hexgrid.ts- Hex-Grid-System mit axialen Koordinatenjs/hero.ts- Helden-Klasse mit Stats und Deck-Managementjs/card.ts- Kartensystem und Karten-Definitionenjs/enemy.ts- Feind-Systemjs/enemyAI.ts- KI-gesteuerte Feind-Entscheidungen (Web Worker)js/combat.ts- Kampf-Mechanikjs/mana.ts- Mana-Quelle und Kristall-Verwaltungjs/persistence/SaveManager.ts- Robustes Speichersystem (Zod Schema + Migration)js/persistence/SaveSchema.ts- Zod Schemas & Migration für Save/Loadjs/card/CardDefinitions.ts- Karten-Definitionen + 13 Artefakte (Gold)js/statistics.js- Performance- und Spielstatistikenjs/terrain.ts- Terrain-Definitionenjs/ui.ts- UI-Rendering und Interaktionjs/particles.js- Leistungsstarkes Partikelsystemjs/skills.js- Fähigkeiten-Systemjs/tutorialManager.js- Erweitertes Tutorial-Systemjs/combat/CombatPredictor.ts- Kampf-Vorhersage-Systemjs/combat/CombatUnitManager.ts- Elementare Unit-Angriffe/Blöckejs/game/CombatOrchestrator.ts- Combat UI Orchestrierungjs/game/GameStateManager.ts- Save/Load State Managementjs/workers/aiWorker.js- Web Worker für KI-Pfadfindung
- HTML5 - Struktur
- Vanilla CSS - Styling mit CSS-Variablen
- JavaScript ES6+ - Spiellogik mit Modulen
- Canvas API - Hex-Grid-Rendering
- Three.js - 3D-Ansicht (lazy-loaded, ~514KB)
- TypeScript - Typsichere Entwicklung
- Vite - Build-Tool mit Chunk-Splitting
- Vitest - Unit/Integration Tests
- Playwright - E2E Tests
Das Projekt verfügt über eine hochmoderne Test-Suite mit 3242 Tests (216 Test-Dateien, Vitest + V8-Coverage mit 80%-Gate; inkl. headless jsdom-UI-Tests für Modal-/Accessibility-Manager).
# Alle Tests ausführen
npm test
# Tests mit Coverage
npm run test:coverage
# E2E Tests
npm run test:e2e
# Linting
npm run lint
# Typecheck
npm run typecheck
# Production Build
npm run buildDies ist ein Fan-Projekt basierend auf dem Mage Knight Brettspiel von WizKids. Nur für Lern- und Demonstrationszwecke.
- Original Mage Knight Brettspiel: Vlaada Chvátil, WizKids
- Hex-Grid-Mathematik: Red Blob Games