Wie man in einem Monat ein Spiel schreibt, ohne von seiner Hauptarbeit abgelenkt zu werden

Bild



MoonGun ist ein Action- / Strategiespiel zur Verteidigung der Mondbasis vor Asteroiden. Das Spiel wurde von Ivens Serpa - dem Autor vieler Artikel zum Thema Spieledesign - im Rahmen des Github Game Off Game Jam im November 2020 entwickelt. In seiner Freizeit hat er es alleine gemacht. Das Spiel erhielt viele positive Bewertungen, daher entschied sich sein Schöpfer, die Erfahrungen seiner Entwicklung zu teilen: Beschreiben Sie den gesamten Erstellungsprozess und teilen Sie die von ihm verwendeten Methoden, einschließlich der Phasen des Konzepts, der Planung, Entwicklung und Veröffentlichung.



Bevor wir zum Thema des Artikels übergehen, sollten einige wichtige Hinweise erwähnt werden: In diesem Material geht es mehr um das Design des Spiels als um die technische Seite seiner Entwicklung. Das Projekt wurde mit Unity 3D (Version 2020.1) entwickelt, mit dem der Autor bereits vertraut ist und in dem er bereits andere Spiele geschrieben hat. Trotz der Tatsache, dass er alleine an dem Projekt arbeitete, halfen ihm seine Freunde immer noch, testeten das Spiel und tauschten ihre Gedanken zu diesem Thema aus. Die meisten Assets stammen entweder aus dem Internet (z. B. von der Kenney.nl- Website ) oder wurden vom Modellbauer Kaleo Mendes erstellt .





Spielstaus, Themen und Ideen



Game Jam ist ein Spieleentwicklungswettbewerb, bei dem die Teilnehmer versuchen, ein Spiel in kurzer Zeit - normalerweise 24 bis 72 Stunden - von Grund auf neu zu entwickeln. Im November veranstaltete GitHub den Itch.IO Game Off Game Jam, der den ganzen November über dauerte. Diese Jams haben normalerweise ein Kernthema, das den kreativen Prozess der zu entwickelnden Spiele steuert. Im Jahr 2020 ging es bei diesem Thema um den Mond .



Entwickler können das Thema so frei wie möglich interpretieren, Kreativität ist hier der Schlüssel. Es ist auch eines der Kriterien für die Rangfolge der Werke und die Auswahl der Gewinner.



Die Konzeptphase sollte also mit dem Brainstorming von Spielmechaniken und Ideen beginnen, die für das Thema relevant sind.



Als Ergebnis dieses Brainstormings hatte Serpa drei Hauptkonzepte:



  • , , — , ;
  • , , ;
  • , .


Obwohl alle drei Ideen gut schienen, gab es ein Problem mit ihrer Größe: Die meisten grundlegenden Funktionen, die sie benötigten, konnten einfach nicht in so kurzer Zeit implementiert werden.



Die zweite Idee basiert auf Physik und erfordert eine umfangreiche Codebasis, damit sich das Spiel realistisch anfühlt. Technische Machbarkeit kann das Design gefährden und das anfängliche Prototyping zu schwierig machen. Infolgedessen können Sie ein Risiko eingehen - und Zeit mit einem realistischen Spiel verbringen, das keinen Spaß macht.



Bei der interaktiven Geschichte ist die technische Machbarkeit vernachlässigbar, der kreative Prozess jedoch nicht. Wenn Sie sich verpflichten, diese Idee in nur einem Monat umzusetzen, riskieren Sie eine faszinierende Geschichte, die eigentlich nur ein visueller Roman wäre - ohne bemerkenswerte Gameplay-Elemente.



Abgesehen von diesen Faktoren war noch unklar, welche Mechanik hier am besten eingesetzt wird - was die Hauptantriebskraft des Spiels sein wird. Schließlich ist es besser, ein Spiel mit einem Prototyp eines Mechanikers zu entwickeln und dann daran zu arbeiten, bis Sie ein süchtig machendes Gameplay erreichen und den Spieler ans Ziel bringen.



Die Idee, Ressourcen zu sammeln, wurde als Grundlage für das zukünftige Spiel genommen. Und da es ziemlich langweilig ist, nur auf Schaltflächen zu klicken, habe ich mich inspirieren lassen Space Invaders und das Konzept des Spiels selbst wurden wie folgt formuliert:



Der Spieler steuert eine Kanone (Turm), die die Mondbasis vor fallenden Asteroiden schützt, sowie grundlegende Objekte (Mine, Labor und Hangar), die Monderz sammeln, bis der Mond erschöpft ist (Siegbedingung).



Unten sehen Sie ein Bild des ersten funktionierenden Prototyps:



Bild

MoonGun Version 0.1 - nicht allzu hübsch, aber funktionaler Prototyp





Prototyp und Hypothesen



Um die anfänglichen Hypothesen zu testen, wurde der erste Prototyp des Spiels erstellt. Und da sich keine dieser Hypothesen auf Grafiken oder Leistung bezog, waren die visuellen Elemente, wie Sie im obigen Bild sehen können, alles andere als beeindruckend.



Eine kurze Version dieser Hypothesen klang folgendermaßen:



  1. Ist das Schießen fallender Asteroiden interessant oder aufregend?
  2. Können Sie eine Mondoberfläche mit einer großen 3D-Kugel simulieren?
  3. Soll ich die Waffe mit der Tastatur oder Maus steuern?


Es mussten auch einige technische Hypothesen getestet werden, die sich hauptsächlich auf die Veröffentlichung des Spiels als WebGL-Assembly mit Unity bezogen . Aufgrund der Pandemie war es sinnvoll, das Spiel direkt auf Itch.io zu hosten, um das Testen und Verteilen von Versionen zu erleichtern. Die Sorgen waren, wie lange es dauern würde, den gesamten Build-Deploy-Test-Zyklus auf der Itch.io-Plattform (in Stunden oder Minuten) zu durchlaufen, und welche Grafikqualität dann erreicht werden könnte, damit beim Starten des Spiels im Browser eine akzeptable Bildrate beibehalten wird.



Der erste Prototyp war sehr erfolgreich. Nicht dass alle Hypothesen bestätigt worden wären, aber sie alle erhielten ihre Bewertung, und dies ist der wahre Zweck des Prototyping. Die erste Version des Spiels wurde am 3. November auf der Website veröffentlicht. Der Build-Deploy-Test-Zyklus dauerte ungefähr 15 Minuten, was sich als angenehme Überraschung herausstellte.



Da die Idee vielversprechend genug aussah, um weiter daran zu arbeiten, wurden mehrere Konzeptzeichnungen direkt über den Screenshots erstellt, um schnell eine Annäherung an die endgültige Version des Spiels zu erhalten. Letzteres machte es einfacher, Ideen anderen Menschen zur Rückmeldung zu präsentieren.



Bild

Konzeptgrafiken für das Spiel basierend auf Screenshots des Prototyps



Am 14. November wurde eine bereits stabilere Version mit strafferen Grafiken, anständiger Skybox und guter Nachbearbeitung veröffentlicht. Die meiste Zeit, die wir mit der Arbeit an dem Update verbracht haben, wurde mit der Arbeit an Aspekten verbracht, die in den Überprüfungen erwähnt wurden, und mit der Verbesserung der Grafiken, um zu beurteilen, wie effizient der WebGL-Build sein könnte.



Zu diesem Zeitpunkt hatte sich bereits eine klarere Vorstellung vom Zweck der Turm- und Mondstrukturen entwickelt. Der Turm erzeugt Asteroidenressourcen, indem er sie mit Kanonenschüssen niederschlägt. Die Aufgabe der Minen ist es, passiv Mineralien zu erzeugen (dies erfordert Asteroiden). Der Hangar wird benötigt, um den Turm zu verbessern (unter Verwendung von Mineralien). Laboratorien müssen helfen, den Spieler mit beiden Ressourcen zum Sieg (Erschöpfung des Mondes) zu führen: Asteroiden und Mineralien.



Ein Screenshot dieser Version ( V0.4 Lunar Structures ) ist unten zu sehen:



Bild





Benchmarks, stabile Veröffentlichung und Gameplay



Während der Entwicklung der Versionen 0.1 bis 0.4 wurden die meisten Tests unabhängig oder mit Hilfe enger Freunde durchgeführt. Ab Version 0.4 begann jedoch eine aktivere Werbung für das Testspiel.



Die Version 0.4 wurde auf Itch.io mit allen Hauptfunktionen des Spiels veröffentlicht - das heißt, es war die sogenannte stabile Version: Sie hatte alle notwendigen Funktionen, um das Spiel zu vervollständigen, und sie konnte die Spieler bereits in vollem Umfang einbeziehen.



Bild



Das Feedback, das wir während des Testens erhalten haben, war sehr hilfreich, um das Spiel weiter zu verbessern. Die Steuerung wurde von Tastatur zu Maus geändert, und auch die visuellen Effekte wurden geändert. Der WebGL-Build wurde dann auf die höchste Einstellung eingestellt, da die meisten Spieler Frameraten über 60 FPS hatten - mit Ausnahme eines Testers, der versuchte, ihn auf einem Chromebook auszuführen.



Außerdem ist jetzt klarer, dass die Leute das Spiel wirklich genossen haben. Es gab sogar einen Tester, der nach mehr Updates und mehr Action fragte. Dies bedeutete, dass jemand das Spiel bis zu seinem (aktuellen) Ende aktiv spielte!



Die Version "Lunar Structures" hat bereits den gesamten Hauptspielzyklus implementiert, wie in der folgenden Abbildung dargestellt:



Bild



Wie bereits erwähnt, basiert das Spiel auf der Sammlung von zwei Hauptressourcen: Asteroiden, die durch Zerstörung mit einem Turm gesammelt wurden, und Mineralien, die von Zeit zu Zeit automatisch aus Minen gesammelt werden. Turm und Minen können mit entgegengesetzten Ressourcen (Mineralien für Türme, Asteroiden für Minen) aufgerüstet werden. Durch die Verwendung gegnerischer Ressourcen wurden starke positive Rückkopplungsschleifen in der Spielwirtschaft vermieden: Wenn die Mechanik mit genau der Ressource verbessert wird, die sie generiert.





Komplexe oder zusätzliche Mechaniken werden (immer) nicht benötigt



In der obigen Abbildung ist der Begriff „ Hauptquest ist“ verwendet , um das Hauptziel des Spiels anzuzeigen . Es wurde als einfache Schaltfläche implementiert, die die angeforderten Ressourcen verbraucht. Um zu gewinnen, muss der Spieler immer mehr Ressourcen ausgeben, bis der Mond vollständig erschöpft ist.



Die Siegesmechanik wurde entwickelt, um eine beliebig große Anzahl zu erreichen, wodurch die Gewinnbedingung aktiviert wird und der Spieler den Gewinnerstatus erhält. Nach der Erschöpfung des Mondes werden die Minen keine Mineralien mehr produzieren, und das ist das Ende des Spiels.



Bild

Variante der Hauptquest (Minerallaser) in der Laboreinrichtung



Welche Schlussfolgerung kann daraus gezogen werden? Sie müssen Ihr Spiel nicht immer schwieriger machen(zum Beispiel mehr Mechanik hinzufügen), um Siegbedingungen zu schaffen oder das Spiel zu verbessern. Für MoonGun war es nicht erforderlich, mehr Zeit damit zu verbringen, eine neue Mechanik nur für die Siegbedingung zu entwickeln, da die Spieler sie bereits genossen - sie konnte unter Verwendung der Kernmechanik formuliert werden.



Denken Sie auch daran, dass das Spiel innerhalb eines Monats fertig sein musste, sodass weniger Implementierungen hier mehr Zeit zum Polieren und Verbessern des Spiels bedeuteten.





Volley! Spielbalance und Fairness



In Übereinstimmung mit den Ratschlägen der Tester wurden zusätzliche Elemente in das Spiel eingeführt, die die Hauptmechanik und die Spielschleife nicht besonders erweiterten. Die erste Idee dabei war, die Fähigkeiten des Spielers zu erweitern, indem dem Turm eine zusätzliche Waffe hinzugefügt wurde - ein Laser.



Bild

MoonGun Version 0.7 - Laser Der



Laser wurde von den Testern herzlich aufgenommen und fügte dem Spiel einen zusätzlichen Freiheitsgrad hinzu. Es destabilisierte jedoch auch die wahrgenommene Kraft des Spielers. Aufgrund der größeren Reichweite und Dauer des Lasers schien die konventionelle Kanone jetzt schwach zu sein. Es war notwendig, den Prozess der Verbesserung beider Waffentypen auszugleichen.



Irgendwann im Verlauf des Spiels wird die Kanone weitere Verbesserungen erhalten und den Laser übertreffen. Dann erhält der Laser seine eigenen Verbesserungen und gewinnt seine Führung zurück. Dieser Austausch bevorzugter Waffen erhöhte die Dynamik des Spiels.



Gleichzeitig lag die Wahl der Waffen immer noch beim Spieler. Das Spiel beeinträchtigt nicht die Verwendung der darin enthaltenen Waffen.



Das Balancieren ist schwierig. Daher war das Hauptziel hier ein faires Gameplay - was Spaß machen und aufregend, aber nicht unbedingt ausgewogen sein würde.





Mondquests



Tatsächlich wurde der Laser in Version 0.5 hinzugefügt. Die stabilere Implementierung wurde jedoch erst in Version 0.7 mit dem Namen Lunar Quests eingeführt. Dazu gehörten auch:



  1. ;
  2. ;
  3. ( SHIFT);
  4. / ;
  5. ;
  6. ( , );
  7. .


Bild



Bitte beachten Sie, dass zwei Punkte mit der Verbesserung des Erscheinungsbilds des Spiels zusammenhängen (1 und 2), zwei - mit Hinzufügen / Ändern von Steuerelementen (3 und 4), zwei weitere - mit zusätzlichen Spielelementen (5 und 6). Eine war für die Analyse und das Debuggen vorgesehen. Diese Aufteilung war völlig bewusst.



Angesichts der begrenzten verfügbaren Entwicklungszeit war es erforderlich, Ihre Arbeitslast auf viele Bereiche zu verteilen, die verbessert werden mussten.



Die Lunar Quests-Version war vollständiger und ermöglichte es den Spielern, mit dem Spiel zu experimentieren und mit mehr Steuerelementen zu interagieren. Es half zu sehen, was im Spiel gut funktionierte (wie Asteroiden und Waffenvariabilität) und was fehlte.



Gleichzeitig kamen immer mehr Kommentare zum Mangel an Erklärung und Kontext des Spiels. Bis jetzt war es nur ein Arcade-Spiel ohne klaren Zweck. Es ist Zeit, einige narrative Elemente hinzuzufügen.





Treffen Sie Titan und den Mond S / 2009 S1



Zu Beginn des Spiels erschien ein kleiner Hinweis, der das Szenario, die Motivation der Spieler und die Siegbedingungen in Verbindung bringen sollte. Es sah so aus:



Moon S / 2009 S1 ist voll von einem reichhaltigen Mineral - Phlebotium, und Sie als Spieler sind dafür verantwortlich, die Einrichtungen der Station während ihrer Gewinnung zu schützen. Die Basis ist von einem Feld bedeckt, das sie vor schwachen Asteroiden schützen kann. Mit fortschreitendem Bergbau wird der Kern des Mondes jedoch schwerer und zieht schnellere und gefährlichere Asteroiden an, die den Schild beschädigen und den Betrieb der Einrichtungen unterbrechen können.



Um die Erzählung zu erleichtern, wurde der Titan in das Spiel eingeführt - ein Roboter, der den Spieler zuerst in den Verlauf der Dinge einführt und später als Leitfaden bei der Entwicklung der Handlung fungiert. Titan wurde von Caleo Mendes konzipiert, modelliert und animiert, der auch die Benutzeroberfläche des Spiels entwarf.



Das Bild unten zeigt die erste Version der Einführung mit Titan, einer neuen Benutzeroberfläche und - im Hintergrund - einem Schild, das den gesamten Mond bedeckt.



Bild



Die Version V0.8, Lunar Menu, wurde am 26. November veröffentlicht - nur wenige Tage vor Ablauf der Frist. Es enthielt umfangreiche Überarbeitungen der Benutzeroberfläche sowie Informationen zum Schild.



Bild



Darüber hinaus gab es weitere Verbesserungen im Spiel: Die Effekte wurden geändert, und jetzt wurde es für den Spieler einfacher, durch Klicken mit der rechten Maustaste zwischen den Waffen zu wechseln. Außerdem wurde die Schnittstelle zum Nachladen von Waffen geändert: Der Turm zeigt jetzt Informationen zu beiden Waffen gleichzeitig an. Dies ermöglichte es den Spielern, sie nachdenklicher einzusetzen und von einem zum anderen zu wechseln, wenn sich einer von ihnen in der Abklingzeit befand.



Das Verwackeln der Kamera wurde ebenfalls verbessert, um das Kraftgefühl für beide Waffen zu verbessern, und die Auswirkungen des Zerbrechens von Asteroiden wurden erneut geändert. Beachten Sie, dass die meisten dieser Änderungen vorgenommen wurden, um die stabile Veröffentlichung des Spiels zu verbessern, und nur sehr wenige signifikante Änderungen direkt an der Hauptspielschleife vorgenommen wurden.





Die endgültige Version und ihre Probleme



Die endgültige Version V1.0a MoonGun wurde am 29. November veröffentlicht. Es implementierte alle Arbeitsfunktionen, noch mehr Anpassungen und eine ausgewogenere Erfahrung für die Hauptaufgabe. Leichte Asteroiden wurden in den ersten Minuten des Spiels hinzugefügt und tödlichere für die späteren Phasen. Alle Soundeffekte und Musik waren bereits vorhanden, um eine Atmosphäre und ein umfassendes Spielerlebnis zu schaffen.



Das Spiel implementierte auch einige Einstellungssteuerelemente wie Audio- und Musik-Schieberegler sowie einen Schieberegler zur Steuerung von Helligkeitseffekten - wie von einem der Tester geschickt erwähnt. Außerdem wurde eine Ladebildschirmwarnung hinzugefügt, die die Spieler über die starken Lichteffekte im Spiel informiert.



Bild

MoonGun Version 1.0a





Feedback und (zukünftige) Verbesserungen



Obwohl das Spiel sehr gute Rückmeldungen erhielt, gab es noch keine Zeit, einige Probleme zu verbessern. Das Wichtigste dabei ist, dass das Spiel kein klares Ende hat: Sie können es nicht spielen. Wenn viele Asteroiden auf den Mond fallen, funktionieren die Minen nicht mehr, bis Sie den Schild reparieren, indem Sie die gesammelten Asteroiden ausgeben, aber die Basis wird niemals zusammenbrechen.



Das Spiel sollte einfach sein und die Spieler nicht bestrafen, während sie lernen, es zu spielen. Und da es auf kontinuierlichem Fortschritt basiert, schien es zu demotivierend, den Spieler alles verlieren zu lassen, weil er die Basis nicht verteidigt hat. Nach den Bewertungen zu urteilen, hätte dieser Aspekt vielleicht überarbeitet und über andere Lösungen nachgedacht werden müssen.



Außerdem gibt es keine endgültige Zwischensequenz im Spiel. Nach Abschluss der letzten Hauptquest erscheint der Titan und sendet die letzte Nachricht. Danach können die Spieler das Spiel so lange fortsetzen, wie sie möchten. Einige Tester waren so enttäuscht, dass sie sogar auf der Spieleseite darüber geschrieben haben.



Darüber hinaus stellte sich heraus, dass viele Spieler die Einführung überspringen und das Spiel spielen, ohne den Kontext und die Motivation zu verstehen. Auch hier fällt Ihnen etwas ein, damit dies so selten wie möglich passiert.



Bild





Prozess im Nachhinein



MoonGun wird definitiv nicht der nächste Indie-Hit sein, aber es war nie geplant. Es war eher eine spielerische Erfahrung, die sehr positiv war und viele Lektionen zu lernen hat. Darüber hinaus ist das Ergebnis in der Tat ein fertiges Produkt. Trotz der Tatsache, dass das Spiel keine Schwierigkeiten hat, wurde es von Menschen, insbesondere außerhalb des Freundes- und Familienkreises des Autors, sehr positiv aufgenommen. Und für ein solches Projekt ist dies bereits ein Erfolg.



Der Workflow basierte auf Folgendem: schnell eine stabile Version des Spiels erreichen und dann verbessern. Rückblickend auf die Entwicklung in diesen 4-5 Wochen können die Hauptschritte wie folgt beschrieben werden:



  1. Konzept und Prototyp der Hauptmechanik;
  2. Verbesserung der Erfahrung und Schaffung eines stabilen Spiels;
  3. Gründliche Prüfung und Umsetzung des Feedbacks;
  4. Entwicklung von Mechanik, Geschichtenerzählen, Wirtschaft und Ästhetik;
  5. Polieren.


Da der Autor den aktuellen Job nicht kündigen konnte (und wollte), um sich voll und ganz diesem Geschäft zu widmen, musste spät in der Nacht und am Wochenende an der Entwicklung gearbeitet werden. Eine Methode, die dabei sehr geholfen hat, war das Speichern des Trackers identifizierter Probleme in einem Repository, in das alle erforderlichen Arbeiten eingegeben werden konnten . Es hat geholfen, nach einer Weile schnell wieder an dem Projekt zu arbeiten und herauszufinden, wo Sie zuletzt aufgehört haben.



Darüber hinaus hat sich der Autor stets bemüht, den Weg weniger Aufwand zu beschreiten. Dies bedeutet nicht, dass Sie faulen Code schreiben oder nach schlechten Lösungen suchen (Quellcode finden Sie hier) - Dies bedeutete, zunächst einfache Ansätze zu testen, bevor größere Implementierungen oder Refactorings durchgeführt wurden.



Vernachlässigen Sie außerdem nicht die leistungsstarken Tools von Unity und Asset Stores, um den Entwicklungsprozess zu beschleunigen. In diesem Fall waren DOTween , LeanPool und Cinemachine am nützlichsten .





Nachbearbeitung (die Magie, die Sie verdienen)



Das Hinzufügen von Ebenen mit Nachbearbeitungseffekten trägt dazu bei, die richtige Atmosphäre im Spiel zu schaffen und einen einzigartigen Look zu erzielen. Das Bild unten zeigt einen Vergleich derselben Szene mit und ohne Nachbearbeitung: Spiel ohne Nachbearbeitung (auf der ursprünglichen PlayStation) und mit Nachbearbeitung (auf dem PC) Insbesondere wurden folgende Effekte verwendet:



Bild









  1. Lift Gamma Gain : Verbesserung der Beleuchtung;
  2. Linsenverzerrung : Das Bild, als würde es durch eine echte Kamera laufen.
  3. Chromatische Aberration : um eine Atmosphäre der "kosmischen Verzerrung" zu schaffen;
  4. Filmkorn : Fügen Sie der Szene Rauschen und Dynamik hinzu.
  5. Schärfentiefe : Verwischt unscharfe Objekte, um dem Bild Realismus zu verleihen.
  6. Vignette : Verdunkelt die Ränder, sodass der Player auf die Bildmitte fokussiert.
  7. Bloom : damit das Licht magisch aussieht!


Hier können Sie sehen, wie sich diese Effekte überschneiden:



Bild





Anstelle einer Schlussfolgerung



Jeder Spieledesigner und -entwickler kann bezeugen: Das Erstellen von Spielen ist eine Herausforderung, aber dennoch an und für sich inspirierend. Jeder neue Tester, der mit positiven Bewertungen zurückkommt, gibt Ihnen Energie und treibt den Antrieb an, das Projekt durchzuhalten.



Dank der Erfahrung mit Unity 3D können Sie in relativ kurzer Zeit schneller vom Prototyp zur Produktion wechseln. Während der Entwicklung von MoonGun wurden verschiedene Rapid-Prototyping-Techniken für Unity 3D verwendet, wobei Tools wie Unity Events , Scriptable Objects und LINQ-Anweisungen verwendet wurden . Der größte Teil des Inhalts wurde mit dem Unity Shader-Diagramm und erstellt Fertighausvarianten .



Ohne einen klaren Plan und eine klare Strategie wäre dieses Spiel jedoch kaum möglich gewesen. Daher lohnt es sich noch einmal zu wiederholen, dass es wichtig ist, sich zuerst an einfache Mechaniken zu halten und dann das darauf basierende Spiel zu entwickeln.



All Articles