Cookie Clicker 2.0
Kurzinfo
Themenbereich
Softwareentwicklung
Lernende/r
Leo Scherer
Lehrbetrieb
CSS Versicherung
Betreuer
Urs Nussbaumer
Projekt-Webseiten
Aufgabenstellung
Die Aufgabe war, über vier Wochen ein eigenes Projekt zu programmieren. Ich endschied mich, eine eigene Version des bekannten Browser-Spiels Cookie Clicker zu machen. Dieses soll aber lokal als Desktop-Programm ausführbar sein. Das Grundsätzliche Spiel soll also einen Knopf haben, der die Anzahl Cookies um eins erhöht. Zusätzlich sollen sich Upgrades gekauft werden können, die dem Spieler automatisch Cookies hinzufügen. Neben dem grundsätzlichen Spiel, soll auch eine Speicherfunktion vorhanden sein, sowie die Möglichkeit, seinen Score hochzuladen und somit auch andere Scores auf einer Weseite abrufen können.
Ergebnisse
Ich konnte alle meine Anforderungen erfüllen. Ich habe mir vorgenommen, das Spiel möglichst sauber zu programmieren, sowie möglichst viele Methoden zu verwenden, um den Code übersichtlicher zu machen.
Lösungskonzept
Zuerst begann ich das Projekt mit dem älteren Programm JFrame. Urs erzählte mir aber schon am ersten Tag von einem moderneren Programm, zu welchem ich dann auch wechselte. Mein Nebenstift Daniel hat mir auch oft geholfen, da er auch ein Projekt mit JavaFX gemacht hat.
Aufgetretene Probleme
Ein kleineres, aber trotzdem nicht behobenes Problem ist, dass bei den Preis der Upgrades oft sehr viele Kommastellen angegeben werden. Beim Import und Export der Speicherdatei, hatte ich auch einige Probleme die ich dann mit Urs und einiger Geduld beheben konnte. Ein Bug, den ich leider nicht beheben konnte, friert das Spiel selten ein, da von zwei Threads gleichzeitig in den selben Speicherbereich geschrieben wurde. Auch wenn ich teilweise kleinere Schwierigkeiten hatte, kam ich recht gut durch das Projekt. Somit konnte ich auch alle Anforderungen umsetzen.
Ausblick
Falls ich noch mehr Zeit gehabt hätte, wäre ich noch länger mit Bugfixing beschäftigt gewesen. Ich werde am diesem Projekt nicht mehr weiterentwickeln, da alle Funktionen des Programms implementiert sind.