Vorgestellt: Mit #OctoAwesome und Monogame Dein Jumpstart in die Spieleentwicklung

Sicher, es gibt mittlerweile tolle sogenannte Game Engines, die einem die Spiele-Entwicklung deutlich erleichtern. Vor allem dann natürlich, wenn man es auf Cross-Plattform Gaming abgesehen hat und nicht für PC, Xbox, PlayStation, Windows Phone, iPhone, iPad, Android, etc. nativ entwickeln möchte. Während der Ansatz hier mit z.B. Unity zu arbeiten wirklich sinnvoll ist, halte ich persönlich es für noch sinnvoller, zunächst einmal zu lernen, wie Spiele-Entwicklung überhaupt funktioniert. Dazu gehören meiner Meinung nach viele Basics.

Schön und gut… doch wie lernt man diese Basics? Bücher erscheinen hier schon fast wie ein Anachronismus. Heutzutage lernen die meisten Menschen a) online und b) mithilfe von Videos. Plattformen wie twitch.tv, youtube, Channel9, etc. haben sich dabei hervorragend als Quelle für tolle Videos etabliert, mit denen sich so ziemlich alles erlernen lässt (inkl. dem Doppelten Windsor).

Fangen wir also an mit dem ersten Vorstellungs-Thread auf trimagination.de.

#OctoAwesome

Mit #OctoAwesome hat Tom Wendel, der frühere Microsoft Mitarbeiter und Gründer der AntMe GmbH (ein Unternehmen, das sich mit dem gleichnamigen Lernspiel beschäftigt, das Tom ebenfalls aus der Taufe gehoben hat), eine YouTube Let’s Code Serie gestartet, die seines gleichen sucht. Nachdem Tom bereits Erfahrungen mit fast 30 Let’s Code AntMe Episoden machen konnte und gleichzeitig bereits seit längerer Zeit die Idee für ein komplett neues Spiel in ihm reifte, beschloss er, direkt Nägel mit Köpfen zu machen.

Let’s Code #OctoAwesome heißt die neue Serie, deren ersten 100 Episoden in dieser Playlist nachgeschaut werden können. Ziel: Zeigen, wie mit einfachen Mitteln ein komplettes Spiel entwickelt werden kann. Einfach? Das hieß zunächst einmal Windows Forms und GDI. Irgendwann rund um Folge 40 herum kam es entsprechend zu einem umfangreichen Refactoring und seit dem baut #OctoAwesome auf das Monogame Framework auf. Programmiersprache ist C# und die gegenwärtige Version (Folge 172) schaut verdächtig nach Minecraft aus. Das macht aber nichts, denn das ist zum einen kein finales Ergebnis (und ich weiß zufällig, in welche Richtung sich das Spiel noch weiterentwickeln wird,… und es wird Hammer!) und zum anderen besteht der besondere Kick in Toms Videos darin, dass sich alles einfach nachvollziehen lässt – und die Serie damit auch (und insbesondere) für Anfänger geeignet ist.

Besonders charmant: Die Episoden sind in der Regel zwischen 20 und 30 Minuten lang und damit leicht zu verfolgen. Dann und wann ergänzt Tom die Serie auch mit Live Übertragungen auf Twitch und bietet seinen Zuschauern seit neuestem über patreon.org die Möglichkeit, ihn bei dem Projekt (finanziell) zu unterstützen. Nachdem das Coden, Mischen und Veröffentlichen der Episoden nicht gerade wenig Zeit kostet, finde ich das nur fair; vor allem, da sich jeder selbst entscheiden kann, ob ihm Toms Arbeit das Geld wert ist (und wie viel J). Tom selbst beschränkt den Zugang zum Code und den Videos zumindest nicht – selbst wenn man kein Patron ist.

Abschließend bleibt zu sagen, dass es sich bei #OctoAwesome nicht nur um eine Let’s Code Serie handelt, in der interessierte Entwickler die Mechanismen eines modernen Computerspiels erlernen können, sondern darüber hinaus über die aktive Community, die Live Chats und –Broadcasts sowie die Diskussionsplattform auf Codeplex interaktiv daran teilhaben können. Das heißt: Ihr habt sogar Einfluss darauf, wie es weitergeht. Und jetzt mal unter uns: Wie cool ist das denn, bitte sehr?

Hier noch ein paar Links zum direkt mal Drauf-Klicken:

SpriteFonts in MonoGame (und wo es kostenlose Schriftarten gibt)

“Kostenlose Schriftarten?”, höre ich euch sagen, “Da sind doch dutzende Fonts in meinem Windows enthalten!” Stimmt. Die dürft ihr aber nicht in euren Spieleprojekten benutzen. Zumindest nicht, falls ihr plant, diese zu verbreiten. Denn dafür besitzt ihr keine Lizenz. Blöd, ist aber so.

Genau wie ihr Lizenzen für Software, Musik, Texturen, etc. benötigt, müsst ihr auch das Recht auf die Verbreitung von Schriftarten als Teil eures Spiels erwerben. Es sei denn, der Urheber räumt euch das Recht auch ohne Gebühr ein. Falls ihr also nicht gerade selbst eine Schriftart gestaltet und – wie ich – von den Werken anderer abhängig seid, dann besteht eine Möglichkeit darin, nach genau solchen Fonts zu suchen. Ein Tipp: Sucht in dem Zusammenhang nach Fonts mit der Creative Commons Lizenz. Häufig reicht da die Nennung des Urhebers in den Credits aus (Attribution Lizenz).

Das Microsoft XNA Font Pack

Für den Start mit MonoGame gibt es eine weitere Möglichkeit: Microsoft hat vor einigen Jahren speziell für die XNA Entwickler ein kostenfreies Font Pack

veröffentlicht, das als Teil eurer eigenen Projekte auch verbreitet werden darf (Redistribute). Das Pack findet ihr hier. Enthalten sind acht Schriftarten.

Wie ihr nun die Fonts in euren eigenen Projekten verwendet, zeige ich euch in diesem Video: