KniffelTerminal

Informatik
Projektteam
Adrian Pinggera

Projektidee

Meine Idee war es, das klassische Würfelspiel Kniffel (Yahtzee) komplett in Java zu programmieren. Dabei wollte ich eine ansprechende, farbige Benutzeroberfläche erschaffen, die ausschließlich auf ASCII-Zeichen basiert. Mein Ziel war es zu zeigen, dass Konsolenprogramme nicht langweilig und grau sein müssen, sondern durch kreatives Design und ANSI-Farben ein echtes Retro-Feeling vermitteln können. Die größte Herausforderung war dabei nicht nur die Spiellogik, sondern auch die flüssige Steuerung. Das Spiel wird komplett über die Tastatur bedient, was sich viel direkter anfühlt als normale Texteingaben.

Funktionsweise

  • Startmenü: Auswahl zwischen Spielen, Highscores und Beenden per Tastendruck
  • Setup: Auswahl von 1 bis 4 Spielern inklusive Namenseingabe
  • Würfeln: 5 Würfel mit einer kleinen ASCII-Animation
  • Halten: Mit den Tasten 1-5 wählt man Würfel aus, die man behalten möchte
  • Eintragen: Navigation mit Pfeiltasten durch den digitalen Punkteblock
  • Logik: Automatische Berechnung der Punkte
  • Navigation: Schnelles Zurückspringen ins Hauptmenü oder Neustarten der Runde

Daten und Fakten

Programmiersprache: Java
Benutzeroberfläche: Rein textbasiert (Console/Terminal)
Grafik: ANSI-Escape-Sequenzen für Farben und ASCII-Art Rahmen
Steuerung: Bibliothek "JLine" für Raw-Input (Pfeiltasten-Support)
Versionierung: Git & GitHub für die strukturierte Softwareentwicklung
Projektstruktur: Objektorientiert (OOP) mit insgesamt 7 Java-Klassen
Spieleranzahl: Lokaler Multiplayer für bis zu 4 Personen
Highscore: Speicherung einer lokalen Datei (highscores.txt)
Windows-Support: Erstellung einer .exe Datei zum direkten Starten
Linux/Mac: Shell-Skript (installer.sh) für einfache Installation
Deployment: Programm öffnet sich automatisch im passenden Terminalfenster
Installation: Eigener Windows-Installer zur einfachen Einrichtung der .exe

Fotos