Files
Jander_Semester2/Semesterprojekt/docs/enhancement-ideas.md
Jean-Luc Makiola a130cf329b docs: start enhancement-ideas backlog for post-1.0 work
Living backlog of ideas to take the game beyond the required minimum:
richer presentation, nerd-font strategy, map, quest system, ~60-min
content expansion. No design committed yet.

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

2.9 KiB
Raw Blame History

Enhancement-Ideen (Backlog)

Roh-Sammlung von Ausbau-Ideen über die Abgabe hinaus. Lebendes Dokument noch kein Design, noch keine Festlegung. Wird in Teilprojekte zerlegt und nacheinander über den Brainstorming → Spec → Plan → Implementierung-Zyklus verfeinert.

Stand: 2026-05-31. Ausgangslage: Pflichtumfang ("bare minimum") erfüllt, alle Phasen 17 grün. Ziel: deutlich mehr Tiefe und Politur.

Leitziele

  • Reichere Ausgabe statt nacktem Konsolentext sowohl Konsole als auch GUI.
  • GUI soll noch mehr bieten als die Konsole (mehr Raum für visuelle Mittel).
  • ~60 Minuten Spielzeit anpeilen. Viel mehr Inhalt, viel mehr zu tun.
  • Bestehendes NPC-System zu einem tieferen Quest-System ausbauen.

Themenblöcke

1. Reichere Präsentation / Ausgabe-Schicht

  • Weg vom reinen write(String): formatierte Ausgabe (Überschriften, Trenner, Hervorhebungen für Items/NPCs/Richtungen).
  • Konsole: ANSI-Farben, Box-Drawing-Zeichen für Rahmen, evtl. ASCII-Art / Banner für Räume oder Spielstart.
  • GUI (Swing): mehr als ein JTextArea Farben, Stile, evtl. Panels, Statusanzeige, Bilder/Icons.

2. Nerd Fonts / Glyphen das Installationsproblem

  • Nerd-Font-Glyphen (Icons) sehen gut aus, müssen aber auf dem System des Spielers installiert sein, sonst Tofu-Kästchen.
  • Offene Frage: gute Lösung finden, damit es überall funktioniert.
  • Erste Gedanken:
    • GUI: Font ließe sich mitliefern (.ttf in Resources, via Font.createFont laden) → Installationsproblem entfällt für die GUI.
    • Konsole: Font nicht kontrollierbar → gestufte Fallbacks (reines ASCII → Unicode-Box-Drawing → Nerd-Glyphen) statt harter Annahme.

3. Karte / Map

  • Übersichtskarte der Räume in beiden Modi.
  • Konsole: ASCII-Map. GUI: gezeichnete Map (Grid/Graph).
  • Offene Fragen: nur bereits besuchte Räume zeigen? aktuelle Position markieren? fester Grundriss oder dynamisch aus den Exits berechnet?

4. Gameplay-Ausbau (Inhalt)

  • Deutlich mehr Räume, Items, NPCs.
  • Mehr zu tun: Rätsel, Mechaniken, Abhängigkeiten zwischen Objekten.
  • Zielgröße: ~60 Min. Spielzeit (laut Annahme machbar, da überwiegend Text).

5. Quest-System (NPC-Ausbau)

  • Aktuelles NPC-System: Begrüßung + Geschenk-Reaktion (Item → Item).
  • Ausbau Richtung: mehrstufige Quests, Bedingungen, NPC-"Memory" (Zustand), Quest-Log, evtl. Win-Condition daran gekoppelt.

Offene Designfragen (zu klären)

  • Wie weit darf die GameIO-Abstraktion aufgebohrt werden, ohne dass Konsole und GUI auseinanderlaufen? (Gemeinsamer Loop ist ein Kernwert der Architektur.)
  • Bleibt alles datengetrieben (YAML), auch Quests und Map-Layout?
  • Reihenfolge / Abhängigkeiten der Teilprojekte.

Notiz: Datengetriebenheit (YAML), getrennte DTO/Domain-Schicht und ein für beide Frontends identischer Game-Loop sind etablierte Architekturwerte neue Features sollten sie respektieren, nicht umgehen.