Eine vereinfachte, spielbare Web-Version des Mage Knight Brettspiels.
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
- Ö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.
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)
(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.js- Haupt-Spiellogik und Controllerjs/hexgrid.js- Hex-Grid-System mit axialen Koordinatenjs/hero.js- Helden-Klasse mit Stats und Deck-Managementjs/card.js- Kartensystem und Karten-Definitionenjs/enemy.js- Feind-Systemjs/combat.js- Kampf-Mechanikjs/mana.js- Mana-Quelle und Kristall-Verwaltungjs/saveManager.js- Robustes Speichersystemjs/statistics.js- Performance- und Spielstatistikenjs/terrain.js- Terrain-Definitionenjs/ui.js- UI-Rendering und Interaktionjs/particles.js- Leistungsstarkes Partikelsystemjs/skills.js- Fähigkeiten-Systemjs/tutorialManager.js- Erweitertes Tutorial-System
- HTML5 - Struktur
- Vanilla CSS - Styling mit CSS-Variablen
- JavaScript ES6+ - Spiellogik mit Modulen
- Canvas API - Hex-Grid-Rendering
Das Projekt verfügt über eine hochmoderne Test-Suite mit 944 Tests und 94.67% Global Statement Coverage.
# Alle Tests ausführen
npm test
# Tests mit Coverage
npm run test:coverageDieses 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