Projektteam
Adrian Pinggera
Projektidee
"Conway's Game of Life" ist kein gewöhnliches Spiel, sondern eine faszinierende Simulation. Man steuert keine Figur, sondern beobachtet, wie sich Zellen auf einem Raster nach bestimmten Regeln vermehren oder sterben, ähnlich wie Bakterien unter einem Mikroskop. Die reine Logik dafür haben wir als normale Aufgabe im Unterricht programmiert. Ich fand das Thema sehr spannend und habe es stark erweitert. Man kann jetzt alles Mögliche einstellen, wie zum Beispiel die Geschwindigkeit, verschiedene Farben, das Aussehen der Zellen (Skins) oder klassische Startmuster. Zudem habe ich noch einen Custom Mode hinzugefügt mit dem man die laufende Simulation jederzeit pausieren und wie auf einer Leinwand eigene Startmuster zeichnen kann, um zu sehen, wie sich diese dann entwickeln.
Funktionsweise
- Startmenü: Animiertes ASCII-Titelbild mit Zugang zu den Optionen
- Muster-Auswahl: Start mit Zufallswerten oder bekannten Figuren (z.B. "Glider Gun")
- Custom Mode: Simulation pausieren und mit W/A/S/D und Leertaste eigene Zellen setzen
- Personalisierung: Das Aussehen der Zellen (Skins) und 6 verschiedene Farben sind wählbar
- Simulation: 4 Geschwindigkeitsstufen für die Entwicklung der Generationen
- Live-Steuerung: Jederzeit pausieren, neustarten oder beenden
- Statistik: Echtzeit-Anzeige der aktuellen Generation und der Anzahl lebender Zellen
Daten und Fakten
Programmiersprache: Java
Benutzeroberfläche: Läuft im Terminal, nur ASCII Zeichen
Steuerung: Nutzung der "JLine"-Bibliothek für Raw-Input (Eingaben ohne Enter-Bestätigung)
Datenstruktur: 25.000 Zellen (25x100 Spielfeld)
Logik-Algorithmus: Simuliert die Evolution basierend auf den 8 Nachbarn jeder Zelle
Performance: Optimiertes Konsolen-Rendering, damit die Simulation auch bei hoher Geschwindigkeit nicht flackert
Umfang: ca. 1600 Zeilen Code