Das Spiel gestalten Eine Engine auswählen
Verbringe einige Zeit mit dem Festnageln dessen, worum es in deinem Spiel geht, bevor du auch nur eine Zeile Code angehst. Welches Genre ist es? 2D oder 3D? Schreitet der Spieler im Spiel voran, indem er Puzzles löst/der Story folgt/sie entwickelt, Feinde bekämpft und/oder erforscht? Je mehr Fragen du beantwortest und je mehr Details du deinen Ideen verleihst, desto mehr Zeit sparst du auf lange Sicht. Wenn du eine größere Änderung vornehmen willst, nachdem du bereits mit der Programmierung begonnen hast, kann die Implementierung dieser Änderung einige Male länger dauern. Reduziere dies auf etwas, das viel, viel einfacher ist als deine ursprüngliche Idee. Ein kleiner Prototyp, der untersucht, wie dein Spiel funktioniert und ein paar Levels zum Spielen bietet, ist ein exzellenter Anfang. Wenn er fertig ist, kannst du ihn als Basis nehmen, um ihn zu einem kompletten Spiel zu erweitern oder das, was du gelernt hast, in ein neues Projekt einbringen. An dieser Stelle hast du Wochen oder Monate harter, aber lohnenswerter Arbeit vor dir. Während sich normalerweise ein Team die Aufgaben unten aufteilt und gleichzeitig an ihnen arbeitet, muss eine Einzelperson entscheiden, mit welcher Aufgabe am einfachsten angefangen werden kann oder in jedem Stadium am wichtigsten ist. Lies dir alle Schritte unten durch und beginne mit der Aufgabe, die dich am meisten anspricht. Außer du machst ein Text-basiertes Spiel, brauchst du 2D Bilder und möglicherweise 3D Modelle und Texturen (Muster, die du den Modellen verleihst). Musik und Soundeffekte kannst du auf später verschieben, aber sie sind nachdrücklich empfohlen, wenn du dein Spiel veröffentlichen willst. Einfache Icons, die Benutzeroberfläche und Schriftarten haben die geringste Priorität, wenn dein Spiel noch jung ist, aber ein wenig Mühe hier kann das Spielerlebnis deutlich verbessern.  Es gibt viele Stellen, an denen du im Internet billige Art Assets finden kannst. Versuche es mit dieser Liste auf makeschool.com. Die Beauftragung eines Künstlers macht einen großen Unterschied. Wenn du dir dies nicht leisten kannst, stelle die Assets selbst zusammen und zeige das Ergebnis künstlerisch begabten Freunden oder poste sie für Ratschläge in Foren für Spielentwicklung oder Kunstforen. Das Meiste davon wird als Planungsdokument außerhalb des Spiels geschrieben, auch wenn ein auf einer Story basierendes Spiel vielleicht abzweigende Dialoge benötigt. Selbst ein Spiel ohne traditionelle Story sollte eine Art Fortschritt haben, den du planen musst. Du könntest eine Reihe von Bewegungen und Upgrades für Waffen einbeziehen, während ein Puzzle-Spiel mehr Funktionen hinzufügen könnte, wenn die Komplexität und Schwierigkeit der Puzzles steigt. Beginne mit einem kleinen, einfachen Level oder Bereich. Konzentriere dich darauf, den Pfad zu konstruieren, den der Spieler im Level nimmt, und füge dann Seitenpfade (optional) und detailliertere Grafiken hinzu und optimiere die Schwierigkeit (passe z.B. die Höhe der Plattformen an oder bewege die Feinde umher). Verwende Lichtquellen und fallengelassene Dinge, um den Spieler an die nächste Stelle zu leiten. Setze Schatten ein, um Spieler davon abzuhalten, Sackgassen oder seltsame Pfade zu betreten, und setze Feinde für beide Zwecke ein (je nachdem, wie einem das Spiel beibringt, Feinde zu umgehen). Ein gut gestalteter Bereich gibt dem Spieler das Gefühl, dass er seine eigenen Entscheidungen trifft oder selbst erkundet, leitet ihn aber mit subtilen Hinweisen entlang der direktesten Route. Dies ist nicht notwendig, wenn du eine einfache Software zur Spielerstellung nutzt. Wenn du tiefer in die Grafiksysteme einsteigen willst, kannst du anfangen, indem du Schattierer und Partikeleffekte erstellst, oder durch den Grafik-Code gehst und Dinge entfernst, die für dein Spiel nicht notwendig sind. Da Grafiken fast immer der Engpass sind, der die Verarbeitungsgeschwindigkeit bestimmt, durchläuft sogar ein 2D Spiel normalerweise deutliche Optimierungen und wird umgeschrieben, um die Last auf die Grafikkarte und den Prozessor zu minimieren. Wenn du ein einfaches Level oder einen Prototypen hast, lasse deine Freunde das Spiel spielen und dir Feedback geben. Finde heraus, was den Leuten Spaß macht und was sie frustriert. Später, wenn das Spiel feingeschliffener ist, kann Feedback von Fremden oder Bekannten eine exzellente Quelle für ehrliche Ratschläge sein, da sie sich weniger für deinen Erfolg einsetzen und dich weniger ermutigen. Spieler sind nicht darin geschult, Feedback aus der Sicht eines Entwicklers zu geben. Wenn die Spieler einen Aspekt des Spiels nicht mögen, gibt es normalerweise etwas daran, das verbessert werden könnte... aber die spezifischen Vorschläge, die die Spieler machen, sind oft nicht hilfreich. Stelle ihnen sehr spezifische Fragen, um die genauen Merkmale herauszufinden, die sie stören. Die meisten Videospiele werden mit einer speziellen Engine gemacht, mit der du Ereignisse, Figuren usw. "skripten" kannst, ohne dass du jedes Element von Null programmieren musst. Die Erstellung einer kompletten Game Engine von Null kann Jahre dauern, die meisten unabhängigen Entwickler nutzen also eine bestehende Engine. Du musst nur einen der folgenden Schritte in diesem Abschnitt befolgen, je nachdem wie weit du mit dem Programmieren schon bist und wie viel Zeit du für die wesentlichen Details aufwenden willst. Diese Tools brauchen sehr wenig Programmierkenntnisse, sie sind also vielleicht nicht das Richtige für dich, wenn du dich bei der Erstellung des Spiels für das Programmieren interessierst. Auf der anderen Seite könnte dir die Herangehensweise, dass du einfach tief hinein tauchst, eine Menge über dein Spiel beibringen und dich das weiter entwickelte Konzept optimieren lassen, bevor du mit einem größeren Prototypen weitermachst. Hier sind einige kostenlose Optionen:  Versuche es für mobile Spiele mit MIT App Inventor oder Game Salad Versuche es für Browser-Spiele mit Scratch oder der ernsthafteren Version Snap!, das als einführendes Programmier-Tool gedacht ist Verwende für Abenteuerspiele Visionaire Wenn du ein Drag & Drop-Programm mit der Option, dich auch ins Programmieren zu vertiefen, willst, teste die kostenlose Version von GameMaker Dies ist eine tolle Möglichkeit, um dir die Hände schmutzig zu machen, Erfahrung im Programmieren von Spielen zu bekommen, ohne komplett bei Null anzufangen. Viele professionelle unabhängige Spiele-Entwickler starten auf diesem Level. Während es viele Engines und IDEs (Integrated Development Environments) gibt, sind die folgenden kostenlos und relativ leicht zu erlernen:  Für mobile Spiele: ProjectAnarchy Für 3D Spiele auf allen Plattformen: Unity Für fortgeschrittenere Programmierer: LWJGL (basierend auf Java), SFML (basierend auf C++) Wenn du bereits Programmierkenntnisse hast und es dir ernst damit ist, deine eigene Engine zu entwickeln, sind hier ein paar Dinge für den Anfang. Wenn dies dein erster Versuch ist, brauchst du wahrscheinlich Tutorials.  Mit ActionScript kannst du eine Flash-basierte Engine machen. Dies ist ein guter Anfang für mittlere Entwickler. Java ist relativ leicht zu erlernen. Du brauchst ein Java Development Kit (JDK) plus Eclipse oder eine andere IDE (Integrated Development Environment) für Java. Wenn du dir nicht sicher bist, wie du anfangen sollst. Wenn du schon eine Programmiersprache kannst (insbesondere eine C-Sprache oder Python, dann suche nach einer IDE für diese Sprache. Sie sollte einen Compiler enthalten und du solltest im gleichen Projekt leicht an Grafiken, Audio und anderem Code arbeiten können. Wenn du die Herausforderung annehmen willst und eines der fortgeschrittenen Tools aus dem vorherigen Schritt gewählt hast, brauchst du zur Unterstützung höchstwahrscheinlich ein Tutorial, Hilfeforum oder einen erfahrenen Spiele-Entwickler für deine Sprache. Wenn du dir nicht sicher bist, wo du anfangen sollst oder was du fragen sollst, sind hier ein paar wesentliche Komponenten, die du früh aufbauen musst:  Ein Client-seitiger Server, der Benutzereingaben interpretiert und das Ergebnis verarbeitet. Lasse das Eingabesystem richtig antworten, bevor du ernsthafte Arbeit in Grafiken und das Spiel steckst. (Wenn du feststeckst, suche nach "Action Listener".) AI für andere Figuren, so dass sie auf die Aktionen des Benutzers reagieren. Lasse die Figuren sich in einem einfacheren Projekt einfach auf einem festgelegten Pfad bewegen und agieren. Die Fähigkeit, Grafiken zu rendern (zusammensetzen und Anweisungen an die Grafikkarte schicken). Eine Spielschleife, die ständig läuft, während das Spiel ausgeführt wird. Dies sollte Benutzereingaben nehmen, sie verarbeiten, andere Spiellogik verarbeiten (z.B. Bewegungen von Feinden, Hintergrundanimation und ausgelöste Ereignisse), berechnen, was gezeichnet (auf dem Bildschirm angezeigt) werden muss und die Informationen an die Grafikkarte schicken. Führe dies mindestens 30 Mal in der Sekunde aus (30 fps), wenn dein System dies verarbeiten kann.
Nagele erst dein Konzept fest. Arbeite an den Schritten unten in beliebiger Reihenfolge. Stelle Art Assets zusammen oder erstelle sie. Arbeite an der Story oder entwickle den Bogen des Spiels. Arbeite am Level-Design. Justiere und optimiere die Grafiken. Hole dir Feedback von Spieletestern ein. Lerne über Game Engines. Denke über eine einfache Software zur Erstellung von Spielen nach. Versuche es mit professionelleren Entwicklungs-Oberflächen. Wähle ein Tool für dein Aufbau deiner eigenen Engine. Baue deine eigene Engine.
https://www.wikihow.com/Code-a-Video-Game https://www.wikihow.com/Code-a-Video-Game
Designing the Game Choosing an Engine