Derhier Elementar

Derhier Elementar, was für ein selten dämlicher Name und doch ist es mein bisher bestes Spiel.
Seit SavageSquad war einiges an Zeit vergangen. Die Lust, ein Spiel zu entwickeln, hat mich mal wieder gepackt. FlixelGDX, das Framework hinter SavageSquad hatte mir einige Probleme bereitet, und ich hatte nicht das Gefühl, dass es weiterentwickelt wurde. Jedoch fand ich FlixelGDX sehr gut. Es war eine einfach zu verstehende Engine. Die FlixelGDX Webseite verwies auf das Flixel Forum. Flixel ist eine GameEngine für Flash, die aber nicht mehr weiterentwickelt wird. Im Flixel Forum bin ich auf HaxeFlixel aufmerksam geworden.  Bei HaxeFlixel handelt es sich auch um eine Version von Flixel auf Basis von Haxe.

Was ist Haxe?

Diese Frage habe ich mir damals auch gestellt. Bei Haxe handelt es sich um ein Cross-Platform Toolkit (wie es auf der Seite beschrieben wird). Haxe bringt eine eigene Sprache mit (Haxe). Ich musste mich also in eine neue Syntax und ein neues "Ökosystem" einlernen, um mit HaxeFlixel arbeiten zu können. Das ich den Schritt damals gewagt habe, bereue ich bis heute noch nicht. Ich habe inzwischen eine Liebe zu Haxe aufgebaut. Ich versuche alles, was ich programmiere, in Haxe zu schreiben, wenn ich die Möglichkeit habe es entscheiden zu dürfen. Lange Rede kurzer Sinn, ich hatte mit HaxeFlixel eine neue Engine gefunden, mit der ich arbeiten wollte.

Das Spiel

Jetzt musste nur noch eine Spiel-Idee gefunden werden: Ein einfaches Weltraum-Multiplayer Battle sollte es werden. Diesmal hielt ich mich daran: Keep it simple! Die Grafiken sollten ganz simpel werden. 16x16 Pixel große Grafiken. Kleine Raumschiffe, die aus einem einfachen "V" bestehen. Kreise als Schüsse.  Die Steuerung sollte auch einfach sein. Drei Tasten und der Controlstick sollten genutzt werden. Per Knopfdruck konnte man einen kleinen Sprung nach vorne oder nach hinten machen, mit dem linken Stick am Gamepad konnte man sich frei drehen und dann gab es noch eine Taste zum Schießen.

[caption id="attachment_84" align="alignnone" width="256"]V- Raumschiff V- Raumschiff[/caption]

Ein erster Prototyp ist innerhalb von 2 Stunden entstanden. Die Steuerung funktionierte und man konnte sich abschießen.  Dann war das Wochenende vorbei und ich musste wieder in die Arbeit.  In einer Kaffee-Pause habe ich Kollegen beim Reden über ein Spiel zugehört und ein Kollege hat sich versprochen. Er wollte dem anderen Kollegen ein Elementargeist aus dem Spiel zeigen und hat wortwörtlich gesagt: "Schau der hier Elementar". Darüber haben wir uns natürlich lustig gemacht und ich versprach meinem Kollegen, dass ich ihm zum Geburtstag ein Spiel mache, das "Derhier Elementar" heißt. Der Name war gefunden.  Der Geburtstag würde zwei Wochen später stattfinden. Der Fertigstellungstermin war gesetzt. Durch den Zeitdruck, hatte ich keine Zeit von der Spielidee abzuweichen, also behielt ich sie bei. Aus den 'V'-Raumschiffen wurden Derhier Elementare, die man von oben sah. Es gab keine Animationen, da ich für ein fertiges Spiel noch einiges brauchte, besann ich mich auf die Features, die ich benötigte, um das Spiel fertig zu machen: Ein Menü, eine Siegesbedingung, eine Bestenliste am Ende einer Runde, verschiedene Level mit einer Levelauswahl, ein Schwarzes Loch, welches Schüsse umlenkt und Wurmlöcher, die den Spieler und die Schüsse teleportieren.

Auf der HaxeFlixel-Homepage gab es ein Tutorial, dass ein Level lädt, das mit dem Ogmo-Leveleditor erstellt wurde. Also hielt ich mich daran und baute es nach. In dem Level gab es Wände, die einen bei Kontakt töteten. Sie bestanden aus einfachen schwarzen Quadraten mit einem neonblauen Rand. Dank dem Tutorial konnte ich nun mithilfe des Ogmo-Leveleditors verschiedene Level bauen. [caption id="attachment_85" align="alignnone" width="300"] Erstes Level[/caption] Als nächstes machte ich mich an das Menü. Es war so simpel, wie möglich aufgebaut. Texte, die sich veränderten, wenn man eine Taste drückt. Mit den Tasten A, B, X konnte durch das Menü durchgeblättert werden. Bei der Levelauswahl wurde das Level im Vollbild angezeigt.  Zu guter Letzt gab es noch einen "Join-Screen", bei dem sich die Spieler hinzuschalten konnten und sich mit der Steuerung vertraut machen konnten, bevor es losgeht (hierbei handelte es sich um meinen Prototyp).

Um ein Spiel zu gewinnen musste man 10 Kills (jeder Treffer tötet) erreichen. Als Ergebnis-Screen gab es nur einen einfachen Screen, der alle Spieler tabellarisch mit Kills und eigenen Rosen anzeigte. Nun fehlten nur noch das Schwarze Loch und das Wurmloch. Das schwarze Loch bereitete mir ganz schöne Probleme. Ich musste ja eine Art Anziehungskraft programmieren. Da ich mathematisch immer noch eine Niete bin, habe ich mir im Internet Hilfe gesucht. Nach einiger Zeit, hatte ich ein schwarzes Loch, das einigermaßen so funktionierte, wie ich es mir vorstellte. Nicht perfekt, aber der Zeitdruck erlaubte es mir nicht noch mehr Zeit in dieses Feature zu stecken.

Die Wurmlöcher gingen schneller. Hier hatte ich eigentlich nur das Problem, dass man sich beim einmaligen Betreten der Wurmlöcher immer und immer wieder hin und her teleportierte. Deswegen musste ein kleiner Timer eingebaut werden. Dieser Timer erlaubt nur alle x Millisekunden eine Teleportation.

Ich ließ mir noch von meinem Kumpel, der auch bei SavageSquad den Druiden gezeichnet hat, einen Titelbildschirm zeichnen, bei dem sich zwei Elementargeister bekämpften.

[caption id="attachment_87" align="alignnone" width="300"]Derhier Elementar Titel Derhier Elementar Titel[/caption]

Was fehlte mir zu einem fertigen Spiel noch? Sound und Musik! Bei den Sounds hielt ich es ebenfalls ganz einfach. Mithilfe des Tools BFRX erzeugte ich die Sounds für die Schüsse, das Springen und einen Ton für das Sterben.  Die Töne waren also schnell und einfach erstellt und ins Spiel integriert. Bei der Musik war es schwerer. Ich hatte weder ein Programm noch sonst etwas, um Musik zu erstellen. Also begab ich mich erstmal auf die Suche nach einem Open Source Tool. Hier wurde ich mit LMMS fündig. Als Kind habe ich ab und zu mit dem Techno Maker bzw. FruityLoops von meinem Bruder rumgespielt. Außerdem hat es meine Mutter als wichtig erachtet, dass ich ein Instrument lerne, deshalb kann ich ein wenig Klavier spielen. Durch diese zwei Teile meiner Kindheit habe ich ein gewisses Grundverständnis von Musik. Ich spielte ein wenig mit LMMS rum und schaffte nach kurzer Zeit einen akzeptablen Track. Ich wollte auf Grund des eng gesteckten Zeitplans nicht viel Zeit mit der Musik verbringen. DerhierElementar Soundtrack Ich war fertig. Mein Spiel war fertig und der Geburtstag stand vor der Tür.  Es war geplant, beim Geburtstag die ganze Zeit irgendwelche lokalen Multiplayerspiele zu spielen. Ich kam an, es waren einige Kollegen da und einige Fremde. Wir machten direkt Derhier Elementar an und was soll ich sagen, es lief fast den ganzen Abend. Jeder hatte Spaß mit dem Spiel. Die Steuerung war so einfach, dass sogar Menschen, die nichts mit Videospielen am Hut haben, mehrere Runden gespielt hatten. Ich war hin und weg, das war irgendwie komplett unerwartet. Ich dachte wir spielen zwei Runden und fertig.  Aber WOW, es lief die ganze Nacht. Die verbuggten schwarzen Löcher brachten mit ihrer Unberechenbarkeit einen gewissen Witz in das Spiel. Auch der Musiktrack kam gut an und ins Ohr.

[caption id="attachment_86" align="alignnone" width="300"]Derhier Elementar abgeschlossen Derhier Elementar abgeschlossen[/caption]

Nach der Geburtstagsfeier nahm ich noch ein paar Änderungen vor. Anschließend habe ich das Spiel dann bei itch.io veröffentlicht. Derhier Elementar mein erstes Spiel, das ich veröffentlicht hatte, entstanden aus einer kleinen Idee, einem Gespräch in einer Kaffeepause, und einer Geburtstagsfeier, die mich irgendwie stolz gemacht hat. Mit Haxe hatte ich ein Toolkit bzw. eine Sprache gewonnen, die mir sehr viel Spaß macht und mit HaxeFlixel eine Spieleengine, die ich bis heute noch gerne verwende. Ich hatte mir bei dieser Geburtstagsfeier den Gamedev-Virus eingefangen und seitdem ist Spieleentwicklung eine meiner größten Leidenschaften. Meine Ehefrau unterstützt mich sehr dabei (z.B. indem sie mich bei LudumDare mit Essen versorgt, sich um unsere Tochter kümmert oder sogar bei der Ideenfindung mitmacht). Manchmal muss sie jedoch auch darunter leiden, da ich sehr viel Arbeit in die Entwicklung von Spielen stecke und oft auch nach dem Abschalten des PCs weiterhin in Gedanken bin.

Derhier Elementar wird immer Mal angeschaltet und alle haben Spaß damit. Wenn ich mit meiner Engine auf Kha-Basis fertig bin, werde ich Derhier Elementar portieren und ein paar neue Features integrieren.

Das Spiel kann auf Itch.io runtergeladen werden. Es werden Gamepads benötigt. https://elkorbo.itch.io/derhier-elementar |