Files
Jander_Semester2/Semesterprojekt/docs
Jean-Luc Makiola 025372b9b1 docs: spec for map / mini-map (sub-project 2)
Fog-of-war map from the directional exit graph. MapLayout (BFS) produces a
frontend-agnostic MapView; SwingIO draws it (Graphics2D MapPanel, replaces
exits text), ConsoleIO mirrors it as ASCII via the map command. Visited
tracking on Player. Item/NPC markers and locked-door styling deferred.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-31 20:51:09 +02:00
..

Semesterprojekt Textadventure

Design- und Architekturdokumentation. Dient als Spec während der Implementierung.

Inhalt

Datei Inhalt
architecture.md Package-Struktur, Schichten, DTO-vs-Domain-Trennung
conventions.md Sprache, ID-Format, Naming, Lombok-Cheatsheet
data-structures.md Alle gewählten Collection-Typen mit Begründung
item-model.md Item-Hierarchie (abstract + 3 Subtypen), Lombok-Inheritance
yaml-schemas.md Schemas für items.yaml, rooms.yaml, npcs.yaml, game.yaml
loading-flow.md Lade-Reihenfolge, Referenz-Auflösung, Validierung
commands.md Befehlsparser, Command-Pattern, Befehlsliste
npcs.md NPC-Modell, Talk- und Give-Interaktion
implementation-status.md Aktueller Stand, Phasen-Checkliste, festgelegte Entscheidungen

Pflicht vs. Optional (laut Aufgabenstellung)

  • Pflicht: ≥4 Räume mit Navigation, ≥3 Gegenstände mit Inventar
  • Optional/Bonus: NPCs, Swing-GUI

Beide optionalen Teile sind hier eingeplant.

Technologie-Stack

  • Java 25
  • Jackson (YAML) für Daten-Loading
  • Lombok für Boilerplate-Reduktion
  • JUnit 5 + AssertJ + Mockito für Tests
  • Logback + SLF4J für Logging
  • Swing für GUI (Bonus)