Four Elements


blog-image

In meiner Freizeit erprobe ich mich gerne in der Spieleentwicklung, dabei konzentriere ich mich hauptsächlich auf Android Spiele. Zu Beginn habe ich viel experimentiert und verschiedene Sprachen und Herangehensweisen ausprobiert. Schlussendlich bin ich aber bei meiner “Muttersprache” Java geblieben und arbeite mit dem LibGDX Framework.

Mittlerweile arbeite ich mit drei Freunden zusammen, wobei jeder seine Spezialitäten hat, die sich zusammen perfekt ergänzen. Ich bin als Software Entwickler für Spielmechaniken zuständig und achte dabei auf guten und sauberen Code. Wir verwenden Trello als Organisations- und Kanban Tool, Google Drive als Datenablage und Github für die Versionierung der Software.

Das erste Spiel an dem wir gearbeitet haben war “Four Elements”. Das Spielprinzip ist, dass man als Herr der Elemente die Maya Stadt vor den herunterfallenden Elementen beschützen muss. Durch swipen eines der vier Elemente in der unteren Hälfte des Bildschirmes flogen diese je nach Geschwindigkeit und Richtung der Swipe Bewegung los und eliminierten alle herunterfallenden Elemente des selben Typen. Wenn ein Element nach oben den Bildschirm verlässt oder mehr als drei mal von der Seitenwand abgeprallt, taucht es erneut an der Startposition auf. Falls ein herunterfallendes Element nicht aufgehalten wird und bis nach unten auf die Stadt fällt, wird der Lebensbalken am oberen Bildschirmrand weniger und wenn dieser auf null ist, dann ist das Spiel beendet. Am Ende wird die Punktzahl oben links, falls diese höher als der bisherige Highscore ist, abgespeichert. Diese Punktzahl errechnet sich aus der Spielzeit und den getroffenen Elementen, wobei Combopunkte für Mehrfachtreffer gewährt werden, berechnet.


Technische Details:


Persönliche Entwicklung:

Die Arbeit mit einem Team bestehend aus unterschiedlichen Berufsgruppen hat mir vorallem dabei geholfen die Thematik und die auftretenden Probleme, die bei der Entwicklung entstehen, besser erklären zu können. Und zwar so, dass auch nicht IT-ler verstehen wovon ich spreche. Außerdem hat sich meine Projektfähigkeit verbessert, da wir zusammen immer bessere Wege finden um die Produktivität zu erhöhen. In der Vergangenheit habe ich einfach drauf los programmiert ohne ein konkret definiertes Ziel festgelegt zu haben. Zwar habe ich mir vorher Gedanken über die Umsetzung gemacht und Klassendiagramme erstellt, aber da das Endprodukt eher schwammig formuliert wurde gab es häufig Änderungen, die meine bisherige Planung stark verändert haben. Somit entstand im Endeffekt mehr Arbeit als nötig gewesen wäre.