Devlog – Mein erster Prototyp

Seit ich im Frühling 2017 an meiner ersten Game Jam war, habe ich das Interesse für die Entwicklung von Videospielen nicht verloren. Ich habe seitdem an weiteren Game Jams teilgenommen und konnte so nicht nur weitere Spiele erschaffen, sondern mich auch weiterentwickeln.

Ende letzten Jahres hatte ich dann endlich die Idee für ein Videospiel, für das es sich lohnte, außerhalb einer Game Jam daran zu arbeiten. Bevor ich mich aber zu sehr darauf einließ, wollte ich erst einmal einen Prototypen bauen. Dies ist die Geschichte zu diesem Prototypen.

Die Evolution einer Idee

Am Anfang stand der Gedanke, dass es Spiele wie Port Royal 2 kaum noch gibt. Simulationen, die sich auf die Perspektive des Händlers fokussieren. Waren günstig einkaufen und teurer verkaufen. Darum herum weitere Mechaniken, wie das Erreichen von Meilensteinen, für noch mehr Möglichkeiten, um in der virtuellen Welt Profit zu machen. Das in einer Welt, die das Handeln herausfordernd macht und im Gegensatz zu den meisten anderen Spielen des Genres sich auf das Festland konzentriert.

So hatte ich ganze vier A4-Seiten voll mit stichpunktartigen Ideen für ein solches Spiel gesammelt. Wie Preise berechnet werden. Mit welchen Orten der Spieler handeln kann. Wie Waren produziert und verbraucht werden. Wie der Spieler durch die Welt reist und was ihm dabei alles passieren kann. Das Anheuern von Gefährten. Quests und Produktionshäuser. Politik, Kriege und Religionen, die Einfluss auf das Handeln haben. Über das alles und mehr hatte ich Ideen gesammelt und recherchiert.

Da dies ziemlich viel wäre und auch sehr komplex, war ich nicht in der Lage einzuschätzen, ob ich das alles überhaupt umsetzen kann. Geschweige denn zu wissen, wie und in welchem Zeitrahmen. Also verteilte ich die einzelnen Ideen auf Meilensteine und priorisierte diese. Davon gab es dann insgesamt zehn. Zwei von diesen sollten Teil des Prototypen werden, weil ich diese als den Kern des Spiels ansah. Das waren die folgenden:

  • Der Handel inkl. Produktion und Verbrauch von Waren
  • Das Reisen durch die Welt

Der Bau des Prototypen

User Interface für den Handel

Angefangen hatte ich mit dem User Interface zum Durchführen des Handels. Dabei orientierte ich mich an andere Spiele wie Port Royal 2 und die Patrizier-Reihe. So besteht der Dialog zum Handeln aus zwei Seiten: Links der Handelspartner und die Waren, welche dieser Anbietet inklusive der Anzahl der Einheiten, die noch im Lager sind. Rechts der Spieler, mit den eigenen Waren und ebenfalls der Anzahl der Einheiten. In der Mitte die Preise für Ein- und Verkauf.

Später erweiterte ich diesen Dialog um weitere Anzeigen. Zum Beispiel für welchen durchschnittlichen Preis pro Einheit der Spieler seine Waren bisher eingekauft hatte. Dies hilft ihm zu entscheiden, ob er mit dem Verkauf Gewinn macht. Außerdem war die Ideen, dass der Spieler mehrere Händler haben könnte. Diese können dann natürlich auch gleichzeitig an einem Handelsposten sein. So musste es möglich sein, im Dialog zwischen diesen zu wechseln.

Zusammen mit dem User Interface setzte ich bereits viele andere Elemente um, die ich später ebenfalls benötigen würde:

  • Spieler und Geldkonto
  • Händler des Spielers und wie viele Waren sie insgesamt tragen konnten
  • Unterschiedliche Waren und ihre Preise
  • Städte und ihre Warenhäuser, die als Handelsposten dienten

Die Preise für die Waren waren fix und nicht dynamisch anhand der Umstände berechnet. Dies war das nächste Thema, mit dem ich mich auseinandersetzte.

Das Handelssystem

Machte ich mir am Anfang noch Gedanken darüber, ein möglichst realistisches Verhalten von Angebot und Nachfrage zu implementieren, welches sich an der realen Welt orientieren sollte, verwarf ich die Idee bald wieder. Nach vielen Stunden der Recherche, dem Austausch mit Freunden und Experimentieren, stellte ich fest, dass dies zu anspruchsvoll und zeitraubend ist. Dies kostete mich außerdem viele Nerven und war letztendlich sehr frustrierend.

Stattdessen orientierte ich mich an ähnlichen Spielen und so fand ich von Fans veröffentlichte Tabellen, Kalkulatoren und mehr, welche die Logiken von Spielen wie Port Royal 2 und der Patrizier-Reihe reverse engineered hatten. Die ganzen Informationen und Daten, die von Fans zusammengestellt wurden, hauten mich regelrecht um. Wahnsinn, was für Arbeit da drin gesteckt haben muss. Als Beispiel verlinkte ich hier einfach mal diesen Forenpost zu Patrizier 4.

Anhand dessen setzte ich meine eigene Logik um, die eine Mischung aus unterschiedlichen Ansätzen war. Relativ schnell merkte ich, dass dies deutlich einfach umzusetzen war und trotzdem sehr gut funktionierte. Es fühlte sich gut an und war für den Spieler nachvollziehbar. Letztendlich ist dies wichtiger, als sich an der Realität zu orientieren und so war ich mit meiner Lösung zunächst ziemlich zufrieden.

Um das Berechnen von Warenpreisen umzusetzen, musste ich den Prototypen um folgendes erweitern:

  • Produktionsstätten von Waren
  • Kosten pro Einheit einer produzierten Ware
  • Verbrauch von Waren für die Produktion von neuen (Endprodukte)
  • Einwohner und wie viele Waren sie verbrauchen

Bevor ich die Logik in den Prototypen implementierte, arbeitete ich übrigens ausschließlich mit Excel-Tabellen, um diese zu testen und verschiedene Dinge auszuprobieren. Das machte das Ganze deutlich einfacher, nachvollziehbarer und flexibler, als ständig im Code Anpassungen durchzuführen.

Damit war der erste Meilenstein erreicht. Mittlerweile war ein Monat vergangen und entsprechend viel Arbeit steckte bereits im Prototypen. Aber durch die erfolgreiche Umsetzung des Handelssystems beflügelt, machte ich unbeirrt weiter.

Dennoch ließ mich gerade die Berechnung der Preise nie wirklich los und so war dies ein zeitraubendes Thema, welches ich noch Wochen später immer wieder anging und hinterfragte.

Die Welt und das Reisen

Um mich erst einmal auf die Mechaniken des Reisens zu konzentrieren und Zeit zu sparen, entschied ich mich die Grafiken für die Welt temporär woanders her zu nehmen. Zum Glück gibt es genau für diesen Zweck die Webseite von Kenney, welche mehrere hochwertige Asset-Pakete unter der Public Domain zur Verfügung stellt.

Nachdem ich ein passendes Paket gefunden hatte, welches Grafiken für Wege, Städte, Händler und Umgebungselemente beinhaltete, erstellte ich daraus ein Tileset und konnte so sehr einfach meine Welt per Mausklick gestalten. Dann legte ich für die Wege und Städte fest, dass dies Bereiche sind, auf denen Händler navigieren dürfen. Die Logik zur Wegfindung übernahm größtenteils die Game Engine, Godot. So musste ich dort nicht viel machen.

Jetzt musste ich nur noch dafür sorgen, dass Städte erkennen, wenn Händler sie betreten und verlassen. Zum Schluss noch einen Button, um das bereits fertige User Interface für die jeweilige Stadt, aufzurufen.

Damit waren nach eineinhalb Monaten die initial für den Prototypen geplanten Meilensteine erreicht. Aber irgendwie fehlte mir etwas. Irgendwie reichte es mir noch nicht, um das Prototyping wirklich abzuschließen. Also legte ich fest, dass folgende Meilensteine ebenfalls Teil des Prototypen werden sollten:

  • Anheuern von Gefährten
  • Zufällige Events beim Reisen durch die Welt
  • Künstliche Iintelligenz
  • Quests

Das Anheuern von Gefährten

Die Idee hinter den Gefährten war, dass diese einmalig Geld zum Anheuern kosten und danach regelmäßig, in einem bestimmten zeitlichen Intervall. Diese Gefährten sollten dann Vorteile bringen, wie zum Beispiel zusätzlichen Platz für Waren, vergünstigte Preise in bestimmten Städten, eine Höhere Geschwindigkeit auf der Weltkarte und noch mehr. So sollte jeder Händler eine maximale Anzahl an Gefährten anheuern dürfen. Es war auch geplant, dass diese einem in den Rücken fallen können.

Das Umsetzen dieser Ideen war tatsächlich sehr reibungslos. Lediglich die tatsächlichen Vorteile stellte ich noch in Frage. Genauso, ob mit jedem Gefährten nicht vielleicht auch ein Nachteil kommen sollte. Ich bin aber nie so weit gekommen, um dies genauer zu ergründen. Ich hatte die Grundlagen und damit war ich erst einmal zufrieden.

Zufällige Events

Um das Reisen auf der Weltkarte etwas spannender zu machen und die Welt lebendig wirken zu lassen, hatte ich Ideen für unterschiedliche Events. Der Klassiker: Überfall durch Banditen oder solche, welche die Straße blockieren. Der Spieler hat dann die Möglichkeit, einen Umweg in Kauf zu nehmen oder durch die Banditen hinweg zu reisen. Letzteres ist dann mit gewissen Risiken verbunden.

Auch gab es die Idee dass in Städten gewisse Ereignisse passieren können. Die Pest tritt aus und dies wirkt sich auf Warenproduktion und -verbrauch aus. Oder dass eine Stadt belagert wird. Alles solche Dinge.

Tatsächlich umgesetzt habe ich das Event, bei dem durch Banditen der Weg versperrt wird. Wenn sich der Spieler dann entscheidet, einen seiner Händler trotzdem dort durchreisen zu lassen, gab es anhand der Gefährten und geladenen Waren unterschiedliche Dinge, die passieren konnten. Wenn der Händler zum Beispiel ganz ohne Schutz reiste, war die Wahrscheinlichkeit sehr hoch, dass er entweder überfallen und alle Waren verliert oder gar getötet wird.

So ganz zu Ende gedacht habe ich die Idee nie. Es waren noch zu viele Dinge diesbezüglich offen. Hat der Händler selbst Attribute oder Fähigkeiten? Welche haben die Gefährten? Kann der Spieler sich für unterschiedliche Herangehensweisen entscheiden? Zum Beispiel versuchen an den Banditen vorbei zu schleichen. Sollte das Ganze tatsächlich nur durch die Attribute und den Zufall bestimmt werden oder könnte es stattdessen ein Minispiel geben?

Ich stellte fest, dass selbst so ein vermeintlich einfaches Ereignis auf der Weltkarte viele Fragen aufwirft, für die ich keine Antworten hatte. Etwas ernüchtert von dieser Erkenntnis und der Tatsache, dass ich nun schon seit Monaten fast nur Codezeilen ansah, flüchtete ich mich in das Thema Grafik, um für etwas Abwechslung zu sorgen.

Eigene Grafiken

Bezüglich der Optik der Weltkarte hatte ich unterschiedliche Ideen und Ansätze. Ein Ansatz war, eine eher schlichte Karte wie auf Pergament zu gestalten. Im Stile von Mittelerde, nur ohne den Fantasyaspekt. Dies verwarf ich dann aber, da die Karte dann wahrscheinlich schnell langweilig werden würde. Was nicht gut ist, da der Spieler auf dieser die meiste Zeit verbringen würde. Also versuchte ich einen Ansatz, wo es mehr Details zu entdecken gibt. Das Ganze im Pixelstil, weil dies das Einzige ist, was ich einigermaßen ansehnlich hinbekomme.

So erstellte ich jeweils ein Asset für Städte, Berge, Wege, Wasser, Gras, Wälder und die Händler. Das Spiel mit den eigens erstellten Grafiken zu sehen erfüllte mich und motivierte neu. Ich konnte damit Abstand vom Code nehmen und mit neuer Energie an die Umsetzung von Features gehen. Das dachte ich zumindest.

 

Wo ist der Spielspaß?

Während des Arbeiten an den Grafiken und Einbinden in die Welt, spielte ich viel mit den unterschiedlichen bereits vorhandenen Mechaniken herum. Das Handeln, das Anheuern von Gefährten und das Ereignis mit dem Banditen. Dabei fiel mir auf, dass ich weniger Spaß am Spielen selbst hatte, als daran zu sehen, wie das, was ich implementiert hatte, funktioniert. Ein großer Unterschied.

Also grübelte ich etwas darüber und fragte mich, was an Spielen wie Port Royal 2 oder auch anderen Simulationen eigentlich Spaß macht. Mir ganz persönlich. Und dabei wurde mir bewusst, dass es die Komplexität ist. Ein einfacher und verständlicher Einstieg mit stetig steigender Komplexität. Diese Erkenntnis war ziemlich niederschmetternd.

Komplexe Systeme zu entwickeln braucht Zeit. Viel Zeit. Eine Mechanik kann nicht nur für sich allein gesehen werden, sondern muss im Zusammenhang mit allen anderen funktionieren. Mechaniken müssen sich gegenseitig berücksichtigen und ergänzen. Dies hatte ich ja bereits bei den Events realisiert, als ich mir die Frage stellte, was ein Händler und seine Gefährten eigentlich sind und was sie ausmacht. Auch dass ich mehr Meilensteine für den Protoypen hinein nahm und mittlerweile über drei Monate vergangen waren, bestätigte diese Erkenntnis noch einmal.

Die Komplexität die es braucht, dass das Spiel Spaß macht und der Ansatz eines Prototypen widersprechen sich. Spiele aus diesem Genre scheinen dafür völlig ungeeignet zu sein. Mir ist nicht klar, wie Studios wie Paradox, die sich auf solche Spiele spezialisiert haben, dies angehen. Es hat bestimmt mit der Anzahl an Personen zu tun, die an einem Projekt arbeiten. Mit der Planung, welche einem solchen Projekt voran geht. Mit Erfahrung, die Entwickler in solchen Gebieten bereits haben. Aber selbst dann muss dies sehr viel Zeit in Anspruch nehmen und eine wahnsinnige Herausforderung sein.

Letztendlich musste ich für mich feststellen, dass ich den Aufwand für meinen ersten Prototypen unterschätzt hatte. Massiv. Als einzelne Person so etwas auf die Beine zu stellen, erscheint mir ein extrem schwieriges Unterfangen. Aber für mich war klar, dass ich nicht Monate oder Jahre in etwas investieren wollte, von dem ich erst am Ende erfahre, ob es funktioniert und Spaß macht.

Schlusswort

Über drei Monate versuchte ich einen Prototypen umzusetzen. Er sollte mir zeigen, ob ich im Ansatz eine Handelssimulation verwirklichen kann und ob diese Spaß macht. Letztendlich konnte ich feststelle, dass dies durchaus möglich wäre. Aber es würde für eine einzelne Person zu viel Aufwand bedeuten. Außerdem würde die Erkenntnis, ob das Videospiel wirklich gut ist, viel zu spät kommen.

Ich hatte in der Zeit viel Spaß und konnte einiges lernen. Mit den unterschiedlichsten Themen hatte ich mich beschäftigt, die auch ausserhalb der Entwicklung von Videospielen liegen. Dennoch brauchte ich nun erst einmal eines: Abstand davon. Trotz der guten Zeit war ich erst einmal ziemlich frustriert und brauchte eine Pause. In der Hoffnung, es das nächste Mal besser zu machen.

Kommentar schreiben

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.