Hintergrund & Motivation
Im Rahmen meiner Weiterbildung zum Fullstack-Entwickler entstand das Projekt Who Am I – ein 2D Point & Click Adventure im Retro-Pixelstil. Ziel war es, die Kenntnisse in moderner Java-Entwicklung praxisnah zu vertiefen und ein eigenes Spielkonzept umzusetzen, das Technik und Kreativität vereint. Das Projekt dient dabei als Lern- und Übungsumgebung für JavaFX, saubere Architektur und die Umsetzung interaktiver Spielmechaniken.
Das Spiel kann als Download ausprobiert werden. Bitte beachten: Für die Ausführung wird etwas technisches Verständnis vorausgesetzt, um die JAR-Datei korrekt zu starten. Eine detaillierte Anleitung und die Voraussetzungen finden Sie in diesem Download-Hinweis.
Spiel starten
Das Adventure kann über zwei Wege gestartet werden, abhängig davon, ob Sie das mitgelieferte JavaFX SDK nutzen, oder bereits Java 17+ installiert haben.
1. Mit mitgeliefertem JavaFX SDK (einfachste Variante)
Wenn Sie das Spiel als ZIP-Ordner erhalten, enthält dieser folgende Dateien:
Who-Am-I-Adventure/
│
├─ who-am-i-1.0-SNAPSHOT-shaded.jar # Ausführbare Fat-JAR
├─ StartWhoAmI.bat # Batch-Datei zum Starten
└─ javafx-sdk-25/ # JavaFX SDK (inkl. bin & lib)
Vorgehensweise:
- ZIP entpacken an einen beliebigen Ort.
- Doppelklick auf
StartWhoAmI.bat
starten. - Die Batch-Datei setzt automatisch den Modulpfad für JavaFX und startet das Spiel.
Hinweise:
- Es wird kein zusätzliches Java oder JavaFX benötigt – die Batch-Datei verwendet den mitgelieferten SDK-Ordner.
- Die Batch-Datei enthält bereits die Parameter
--module-path
und--enable-native-access=javafx.graphics
.
2. Mit eigenem Java (falls installiert)
Wenn Sie Java 17 oder höher bereits installier haben, kann die Fat-JAR auch direkt gestartet werden:
java --module-path javafx-sdk-25/lib --add-modules javafx.controls,javafx.fxml,javafx.media -jar who-am-i-1.0-SNAPSHOT-shaded.jar
Voraussetzungen
- Java 17+ (JDK oder JRE) installiert
- JavaFX SDK (Version 25) entweder systemweit verfügbar oder im gleichen Ordner wie die JAR
Tipps für Nutzer:
- Stelle Sie sicher, dass der Ordner
javafx-sdk-25
nicht umbenannt oder verschoben wird, sonst findet die Batch-Datei die Module nicht. - Windows: Doppelklick auf die Batch-Datei genügt.
- macOS/Linux: Batch-Datei kann angepasst oder die JAR direkt über Terminal gestartet werden.

Konzeption & Design
Von Beginn an wurde das Projekt so geplant, dass es klassische Adventure-Elemente mit einer klaren technischen Struktur verbindet.
Im Zentrum steht das Spielerlebnis: Räume betreten, Objekte untersuchen, Items aufnehmen und später durch Dialoge oder Rätsel mit der Spielwelt interagieren. Ergänzend dazu wurde ein Inventarsystem konzipiert, das die Grundlage für Puzzle-Mechaniken schafft.
Auch im visuellen Design sollte ein stimmiger Gesamteindruck entstehen: Pixel-Art-Grafiken, Retro-Schriftarten und passende Musik sorgen für eine authentische 8-Bit-Atmosphäre. Das Ziel war, ein durchgängiges Look-and-Feel zu schaffen, das Spieler in eine kleine, aber liebevoll gestaltete Spielwelt eintauchen lässt.
Technische Umsetzung
Die Umsetzung erfolgte vollständig in Java mit Maven als Build- und Dependency-Management-Tool. Für die Benutzeroberfläche und Animationen kam JavaFX zum Einsatz. Eine klare Schichtung der Architektur trennt Spiellogik, Benutzeroberfläche und Ressourcen, sodass das Projekt modular und erweiterbar bleibt.
Ein zentrales SceneController-System steuert den Wechsel zwischen Räumen und Menüs. Der PlayerController verarbeitet Eingaben und steuert Bewegung und Animation des Avatars. Sounds und Musik werden über einen eigenen SoundController eingebunden. Für reibungslose Abläufe sorgt ein AnimationTimer, der die Framerate konstant bei 60 FPS hält.
Externe Konfigurationsdateien (FXML) ermöglichen, Räume, Items und Schriftarten flexibel anzupassen, ohne den Code ändern zu müssen.
Funktionen & Merkmale
Das Spiel Who Am I zeichnet sich durch klassische Elemente eines 2D-Adventures im Retro-Stil aus, das in einer liebevoll gestalteten pixeligen Spielwelt stattfindet. Spieler können Räume betreten, Objekte untersuchen und Items aufnehmen, verwalten und gezielt einsetzen, wobei ein Inventarsystem die Interaktionen unterstützt.
Raumwechsel und die Interaktion mit Objekten bilden die Grundlage für Rätsel und spielerische Herausforderungen. Ergänzt wird das Erlebnis durch eine Sound- und Musiksteuerung, die eine dichte und immersive Atmosphäre schafft. Die Architektur des Projekts ist bewusst sauber und modular gestaltet, sodass geplante Features wie ein Dialogsystem oder weitere Rätselmechaniken problemlos integriert werden können und das Spiel leicht erweiterbar bleibt.