Semesterprojekt (1.0) Java Swing

PhishingDefender

Ein Serious Game zur Cybersicherheit.
Keine Engine. 100% Pure Java.

Explore Case

Werde zum
Cyber-Detektiv

"Phishing Defender" ist mehr als nur ein Spiel. Es ist eine Mission. In einer Welt voller digitaler Gefahren lernen Kinder und Jugendliche (6–14 Jahre), die Tricks der Hacker zu durchschauen.

Entwickelt als Semesterprojekt an der Hochschule Hannover.
Das Ziel: Trockene Theorie in adrenalingeladenes Gameplay verwandeln.

3 Levels
100% Java Swing
12 Wochen Dev
Main Menu

Strategic Planning

Ein Spiel entsteht nicht durch Zufall. Es entsteht durch Planung.

01

Analyse

Zielgruppe (6-14J) & Lernziele definiert.

02

Design

UML, Use-Cases & Paper Prototypes.

03

Core Impl.

Game Loop, Swing UI & Logic.

04

Features

Highscores, Save-System & Audio.

05

Polish

Animationen, Testing & Release.

Use-Case Driven Development

Jedes Feature basierte auf klar definierten Use-Cases. Vom "Spiel starten" bis zum "Firewall Bonus aktivieren". Dies garantierte einen klaren Fokus und verhinderte Feature-Creep.

UC 04

Core Loop

Level spielen & E-Mails analysieren

UC 08

Gamification

Firewall-Bonus System aktivieren

UC 09

Persistence

Highscore & Daten-Speicherung

System_Architecture_v1.0.png
Sequence Diagram

The Evolution

01

Paper Prototype

Papier Prototyp

Erste Ideenvalidierung auf Papier. Fokus auf Layout und User-Flow.

02

Final Release

Final Game UI

Umsetzung in Java Swing mit Custom-Rendering und Animationen.

Challenges & Solutions

Echte Projekte laufen nie perfekt. Hier ist, wie ich Risiken gemanagt habe.
(Basierend auf der Risiko-Analyse im Projektplan)

⚠️

Risiko: Zeitüberschreitung

12 Wochen sind kurz. Die Gefahr bestand, sich in Details zu verlieren ("Feature Creep") und die Deadline zu verpassen.

🛡️
Gegenmaßnahme Anwendung des MVP-Prinzips (Minimum Viable Product). Kern-Features (Gameplay) hatten absolute Priorität vor "Nice-to-Have" Features.

Risiko: Swing Limitations

Java Swing ist alt. HTML-Rendering und Layout-Manager verhielten sich oft unvorhersehbar (z.B. falsche Scrollbalken).

🛡️
Lösung Implementierung eigener Custom Panels (Scrollable Interface) und Nutzung von "Buffering" für flüssige Animationen.
💾

Risiko: Datenverlust

Gefahr von Code-Verlust oder kaputten Builds während der heißen Entwicklungsphase.

🛡️
Strategie Strikte Git-Strategie mit regelmäßigen Commits und Backups auf GitHub. OS-unabhängige Speicherpfade.

Project Files

Transparenz ist alles. Sieh dir meine Planung an.
(Dokumentation erstellt mit LaTeX)

Under the Hood

Saubere Software-Architektur statt Spaghetti-Code.

MVC & Manager Pattern

Das Spiel basiert auf einer strikten Trennung von Daten (Model), Logik (Controller) und Anzeige (View). Zentrale Manager-Klassen steuern die Sub-Systeme.

  • PhishingDefender (Main): Der zentrale Controller.
  • SettingsManager: Kapselt Einstellungen & JSON-Speicherung.
  • AudioEngine: Pufferung im RAM für latenzfreien Sound.
  • IntegrityShield: Visuelles Feedback-System für Leben.
UML OOP JSON SwingWorker
UML Class Diagram Klassendiagramm (Auszug der Architektur)

Get the Defender

Wähle deine Version und starte die Mission.

Empfohlen

Java Edition

v2.1.0 • Universal .jar

  • Windows, Mac & Linux
  • Benötigt Java 17+
Download .jar
Size: 33.5 MB • Build: Stable

Windows Edition

Native .exe

  • Keine Installation nötig
  • Startet ohne Java-Setup
Download .exe
Size: 33.8 MB • Portable

Source Code

GitHub Repository

  • Full Access
  • Assets & Documentation
View Repository
License: MIT • Open Source
Terminal - How to run

# Option A: Doppelklick auf die .jar Datei

# Option B: Start über Terminal (für Debugging)

yusef@home:~$ java -jar PhishingDefender.jar
[INFO] GameEngine initialized...
[INFO] Loading Assets...
[SUCCESS] Phishing Defender v1.0.2 started.