Wie Spiele entstehen. Projekt „Computerspiel mit Game Maker erstellen“

Es gibt kaum einen Menschen, der nicht mindestens einmal in seinem Leben mindestens ein Computerspiel gespielt hat, egal ob auf einem Laptop oder einem mobilen Gerät. Nun, wer von Ihnen, lieber Leser unseres Blogs, hat nicht davon geträumt, ein eigenes Spiel zu entwickeln und, wenn nicht dank Ihres Projekts Millionär, dann zumindest unter Ihren Freunden berühmt zu werden?

Aber wie erstellt man ein Spiel auf Android von Grund auf, ohne besondere Kenntnisse und ohne die Grundlagen der Programmierung zu kennen? Es stellt sich heraus, dass es keine so schwierige Aufgabe ist, sich als Spieleentwickler zu versuchen. Dies wird heute das Thema unseres Materials sein.

  1. Idee oder Drehbuch.
  2. Lust und Geduld.
  3. Spieledesigner.

Und wenn bei den ersten beiden Erfolgskomponenten alles mehr oder weniger klar ist, müssen wir uns näher mit der dritten Komponente befassen.

Was ist Game Builder?

Wir sprechen von einem Programm, das die Spieleentwicklung erheblich vereinfacht und sie auch für Menschen ohne Programmierkenntnisse zugänglich macht. Der Game Builder kombiniert eine integrierte Entwicklungsumgebung, eine Spiel-Engine und einen Level-Editor, der als visueller Editor fungiert ( WYSIWYG- Englisch Abkürzung für „What you see is what you get“).

Einige Designer sind möglicherweise durch das Genre eingeschränkt (z. B. RPG, Arcade, Quests). Andere bieten zwar die Möglichkeit, Spiele unterschiedlicher Genres zu entwerfen, beschränken aber gleichzeitig die Vorstellungskraft eines unerfahrenen Entwicklers auf 2D-Spiele.

Selbst wenn man nur das bereits Geschriebene liest, wird klar, dass für einen unerfahrenen Entwickler, der sich entscheidet, ein Spiel für jedes Betriebssystem, einschließlich Android OS, zu schreiben, die Auswahl eines geeigneten Designers die Hauptaufgabe ist, da das Schicksal des zukünftigen Projekts davon abhängt über die Funktionalität und Möglichkeiten dieses Tools.

So wählen Sie den richtigen Designer aus

Sie müssen damit beginnen, Ihren eigenen Wissensstand im Bereich Programmierung einzuschätzen. Wenn es gegen Null tendiert oder ganz fehlt, ist es besser, die einfachsten Optionen auszuprobieren. Und selbst wenn Sie nicht über die nötigen Englischkenntnisse verfügen, können Sie auch in diesem Fall ein Programm finden, das zu Ihnen passt.

Und der zweite wichtige Punkt bei der Auswahl eines Designers ist die Funktionalität. Hier müssen Sie das Szenario Ihres Projekts sehr genau analysieren, denn je komplexer das Spiel ist, desto mehr unterschiedliche Tools benötigen Sie zu seiner Erstellung und dementsprechend benötigen Sie einen leistungsfähigeren Designer.

Um Ihnen bei der Auswahl zu helfen, stellen wir Ihnen im Folgenden die besten Designprogramme vor, was im Allgemeinen nicht die Möglichkeit ausschließt, dass Sie sich nach eingehender Auseinandersetzung mit Foren oder Fachseiten für etwas anderes entscheiden, da die Das Spektrum dieser Programmpalette ist recht groß.

Top 5 der besten Spieleentwickler

Konstrukt 2

Diese Anwendung belegt in den Bewertungen der Spieleentwickler durchweg den ersten Platz. Mit Construct 2 können Sie zweidimensionale Spiele nahezu aller Genres für verschiedene Plattformen, einschließlich Android, sowie animierte Spiele für Browser erstellen, die HTML5 unterstützen.

Unter Berücksichtigung der Vielzahl an Hilfstools können auch unerfahrene Benutzer das Programm problemlos beherrschen.

Um die Arbeit mit Construct 2 zu meistern, ist der Kauf einer Lizenz nicht erforderlich; die kostenlose Free-Version bietet ausreichend Tools und die Möglichkeit, das fertige Projekt auf einige Plattformen zu exportieren. Die Codierung des fertigen Produkts für mobile Plattformen und der Zugriff auf den gesamten Funktionsumfang werden jedoch durch eine persönliche Lizenz für 129 US-Dollar bereitgestellt. Wenn Ihre Fähigkeiten im Erstellen von Spielen ihren Höhepunkt erreicht haben und Sie bereits begonnen haben, mit Ihrem Projekt Einnahmen von mehr als 5.000 US-Dollar zu erzielen, müssen Sie sich für die Business-Option entscheiden, die 429 US-Dollar kostet.

Sehen Sie sich jetzt einige praktische Video-Tutorials zum Erstellen von Gaming-Anwendungen mit Construct 2 an:

Clickteam Fusion

Clickteam Fusion ist ein weiteres Beispiel für einen hervorragenden, vollwertigen Spieledesigner, der selbst Anfängern dabei hilft, ein vollwertiges Spiel zu erstellen. Das Programm bietet die Möglichkeit, erstellte Anwendungen völlig kostenlos im HTML5-Format zu exportieren, was bedeutet, dass Browserspiele veröffentlicht und darüber hinaus für die Veröffentlichung in verschiedenen mobilen Märkten, beispielsweise Google Play, konvertiert werden können.

Zu den Hauptmerkmalen gehören die Einfachheit der Benutzeroberfläche, die Unterstützung von Shader-Effekten und Hardwarebeschleunigung, das Vorhandensein eines vollwertigen Ereigniseditors und das Speichern von Projekten in Formaten, die mit verschiedenen Plattformen, einschließlich Android, kompatibel sind.

Die kostenpflichtige Entwicklerversion des Programms steht Einwohnern der Russischen Föderation nicht zur Verfügung, die lizenzierte Festplatte kann jedoch bei demselben Amazon bestellt werden, was Ihr persönliches Budget um durchschnittlich 100 US-Dollar entlastet. Es ist möglich, das Menü über einen Russifier eines Drittanbieters zu russifizieren.

Wie Sie mit der Anwendung arbeiten, sehen Sie sich einen speziellen Videokurs an:

Stencyl

Stencyl ist ein weiteres großartiges Tool, mit dem Sie einfache 2D-Computerspiele ohne besondere Code-Kenntnisse sowie Programmiersprachen für alle gängigen Plattformen entwickeln können. Hier müssen Sie mit Szenarien und Diagrammen arbeiten, die in Form von Blöcken dargestellt werden, und Sie können Objekte oder Merkmale mit der Maus ziehen, was sehr praktisch ist.

Der Programmentwickler bietet auch die Möglichkeit, eigenen Code in Blöcken zu schreiben, allerdings sind dafür natürlich Programmierkenntnisse erforderlich.

Das Vorhandensein eines hervorragenden Grafikeditors Scene Designer ermöglicht es dem Benutzer, seiner Fantasie beim Zeichnen von Spielwelten freien Lauf zu lassen.

Der optimale Funktionsumfang wird dazu beitragen, qualitativ hochwertige Spiele verschiedener Genres zu erstellen, aber die am stärksten gekachelten Grafiken von Stencyl werden für „Shooter“ oder „Abenteuerspiele“ relevant sein.

Das Programm ist kostenlos, für den Export in Desktop-Formate ist jedoch ein Abonnement erforderlich, das 99 US-Dollar pro Jahr kostet, und eine Lizenz für mobile Spiele kostet 199 US-Dollar pro Jahr.

Sehen wir uns einen Crashkurs zur Arbeit mit Stencyl an:

Spielemacher

Das Programm gibt es in kostenpflichtigen und kostenlosen Versionen. Mit der Budget-Option können Sie hochwertige 2D-Spiele für den Desktop erstellen. Während die kostenpflichtige Version es ermöglicht, recht anspruchsvolle 3D-Spiele für Windows, iOS und Android zu schreiben. Im Moment sind wir an der kostenlosen Möglichkeit interessiert, zu lernen, wie man sich in der Spielebranche verwirklicht, und Game Maker ist genau die Option, die es Ihnen ermöglicht, Spiele mit Ihrem eigenen Szenario zu erstellen, ohne Einschränkungen bei der Auswahl eines Genres.

Das Programm bietet eine Auswahl vorgefertigter Vorlagen für Orte, Objekte sowie Charaktere, Sounds und Hintergründe. Bei jeder kreativen Arbeit geht es also darum, ausgewählte Elemente in den Arbeitsbereich zu ziehen und Bedingungen auszuwählen – Position und Interaktion mit anderen Objekten. Obwohl Kenntnisse einer Programmiersprache nicht erforderlich sind, können Benutzer, die sich damit auskennen, GML verwenden, ähnlich wie JS und C++.

Game Maker wird auf Englisch vertrieben, daher müssen diejenigen, die es nicht gut sprechen, die Lokalisierungsdatei herunterladen.

Für diejenigen, die sich für dieses Programm interessieren, empfehlen wir, sich das Schulungsvideo anzusehen:

Einheit 3D

Unity 3D ist vielleicht das Beste, was für die Erstellung eines hochwertigen 3D-Projekts angeboten werden kann. Das Programm integriert fertige Modelle sowie Texturen und Skripte. Darüber hinaus besteht die Möglichkeit, eigene Inhalte – Ton, Bilder und Videos – hinzuzufügen.

Mit Unity erstellte Spiele sind mit allen gängigen Plattformen kompatibel, von Mobilgeräten auf iOS oder Android bis hin zu SMART TV-Fernsehempfängern.

Das Programm zeichnet sich durch eine hohe Kompilierungsgeschwindigkeit, eine benutzerfreundliche Oberfläche und einen flexiblen und multifunktionalen Editor aus.

Alle Spielaktionen und das Charakterverhalten basieren auf einem hochwertigen physischen PhysX-Kern. Jedes in diesem Spielkonstruktor erstellte Objekt stellt eine bestimmte Kombination von Ereignissen und Skripten dar, die vom Entwickler unabhängig gesteuert werden.

Es ist wichtig zu verstehen, dass das Programm zwar als Spieledesigner für Anfänger positioniert ist, für die Arbeit mit dieser Anwendung jedoch dennoch ein gewisses Maß an Wissen erforderlich ist. Nun, für die Arbeit mit 3D-Grafiken ist ein relativ moderner Computer mit einer Hardware-Grafikkarte erforderlich.

Eine Reihe von Kursen zum Erstellen von Spielen mit Unity 3D:

Sie haben sich also entschieden, Ihren Traum zu verwirklichen und Ihr eigenes einzigartiges Spiel zu entwickeln. Wir haben versucht, Informationen bereitzustellen, die dabei helfen können. Bitte beachten Sie: Wenn Sie das präsentierte Material sorgfältig gelesen und sich sogar kurz die Video-Tutorials für jedes Programm angesehen haben, ist Ihnen wahrscheinlich aufgefallen, dass die Zusammenarbeit mit jedem Spieleentwickler auf dem gleichen Prinzip basiert. Daher ist es durchaus möglich, dass Sie etwas auswählen können, das speziell auf Ihre Bedürfnisse zugeschnitten ist. Wir hoffen zumindest, dass die Frage, wie man ein Spiel auf Android selbst erstellt, zu diesem Zeitpunkt geklärt ist. Viel Glück!

Was sollten zukünftige Spieleentwickler beachten? Mit welcher Sprache soll ich anfangen zu lernen? Was soll angestrebt werden? Zu wem kann man aufschauen? Und was muss zuerst getan werden?

Die meisten Rockmusikfans greifen früher oder später zur Gitarre. Sportfans träumen leidenschaftlich davon, auf den Fußballplatz, Basketballplatz oder Tennisplatz zu gehen. Nun, diejenigen, die Hunderte von Diebstählen in GTA begangen haben, Dutzende Stunden in Computerclubs mit Counter-Strike verbracht haben oder beachtliche Erfolge in MMORPGs erzielt haben, denken wahrscheinlich über eine Karriere als Spieleentwickler nach.

Das Problem besteht darin, dass dieser Bereich nur in wenigen Bildungseinrichtungen gelehrt wird. Daher sind die meisten Spieleentwickler Autodidakten, die den Lehrplan einmal selbst zusammengestellt haben. Aber welche Nuancen haben sie berücksichtigt? Wo haben Sie angefangen und was haben Sie angestrebt? Welche Sprache haben Sie zuerst gelernt? Wir haben versucht, diese und andere drängende Fragen zu beantworten.

Was soll angestrebt werden?

Bevor man in den Laden geht, erstellt man (zumindest im Kopf) eine Einkaufsliste. Planen Sie Ihre Route, bevor Sie ans andere Ende der Stadt fahren. Nun, bevor Sie lernen, wie man Spiele entwickelt, sollten Sie sich fragen: Was genau möchten Sie tun? Mobile Anwendungen oder Browsergames erstellen? Arbeiten Sie in einem großen oder einem kleinen Unternehmen? Soll ich Spiele professionell entwickeln oder meine Freizeit dem widmen? Und wenn Ersteres, was interessiert Sie dann mehr: die Erstellung einer Benutzeroberfläche, das Verfeinern des Gameplays oder das Schreiben von Skripten?

Durch die richtige Zielsetzung können Sie viel Zeit und Mühe sparen. Darüber hinaus können Sie so Ihr Ziel auf dem kürzesten Weg erreichen. Ohne das Risiko, die Straße zu verlassen oder in einen Sumpf zu fallen.

Welche Sprache soll ich lernen?

Darüber hinaus hängt die Antwort auf die brennende Frage vom Ziel ab: Mit welcher Programmiersprache soll man beginnen?

Zukünftige Entwickler von Spielen wie Minecraft und mobilen Anwendungen für Android sollten daher Java große Aufmerksamkeit schenken. Zu Beginn empfehlen wir die Teilnahme an einem Intensivkurs, zumal dieser kostenlos ist. Für diejenigen, die auf der Suche nach iOS sind – Objective-C. Für Browserspiele reichen manchmal Kenntnisse in Ruby-On-Rails aus. Für sehr kleine und einfache Dateien reicht manchmal HTML aus. Bei der Produktion von Flash-Spielen wird ActionScript verwendet, und um Skripte beliebiger Komplexität zu schreiben, benötigen Sie JavaScript oder möglicherweise das weniger verbreitete Lua. Um kleine Konsolenspiele zu erstellen, sind Kenntnisse in C# erforderlich.

Was die Spiele mit dem größten Budget (die sogenannte AAA-Klasse) betrifft, sind die meisten mit einer eigenen oder einer von ihren Kollegen geliehenen Engine ausgestattet. Oftmals ist jedoch die gesamte „Engine“ oder ein Großteil davon in C++ geschrieben. Mit dieser Sprache wurden viele berühmte „Spielzeuge“ erstellt – von Doom 3 und Call Of Duty bis hin zu FIFA und Die Sims. Während Klassiker wie Quake in C geschrieben wurden.

Bei der Beherrschung von C++ gibt es jedoch einen Haken: übermäßige Komplexität. Nicht umsonst sagt man, dass der Einstieg in C++ ohne Kenntnis anderer Sprachen dasselbe sei, als würde man mit dem Studium der Mathematik mit linearen Gleichungen beginnen.

Reicht eine Sprache?

Eine der Schönheiten des Programmierens ist die Möglichkeit zur ständigen Weiterentwicklung. Bei der Entwicklung von Spielen (insbesondere großen) ist die Selbstverbesserung, einschließlich des Erlernens möglichst vieler Sprachen, keine Laune, sondern eine lebenswichtige Notwendigkeit. Daher stehen erfahrene Entwickler, die für die Giganten der Spielebranche arbeiten, oft vor der Notwendigkeit, abwechselnd in 7-8 Sprachen zu schreiben. Gleichzeitig müssen sie zusätzlich zu den oben genannten Sprachen beispielsweise Python oder sogar SQL lernen (wie Sie wissen, um Datenbanken zu erstellen).

Wenn Sie sich also dazu entschließen, sich der Produktion großer Spiele zu widmen, sollten Sie darauf vorbereitet sein, ein „Polyglotte“ zu werden. Darüber hinaus gilt: Je mehr Sprachen Sie beherrschen, desto interessantere und abwechslungsreichere Aufgaben werden Ihnen gestellt. Und natürlich erhöhen sich Ihre Chancen auf Ihren Traumjob deutlich.

WO ANFANGEN?

Bevor Sie um die Welt reisen können, müssen Sie laufen lernen. Nun, vor einem ernsthaften Spielprojekt müssen Sie sich an etwas weniger Bedeutsamem versuchen.

Fast alle erfahrenen Entwickler, unabhängig von Qualifikation und Talent, begannen mit kleinen Anwendungen: Brettspielen, Variationen bekannter „Spielzeuge“, einfachen „Flash-Laufwerken“. Dann dachten sie nicht an große Ausstellungen wie die E3, sondern sammelten unschätzbare Erfahrungen. Warum nicht ihrem Beispiel folgen? Es ist nicht notwendig, extrem komplexen Code zu schreiben. Für ein Debüt reicht es aus, spezielle Programme zum Erstellen von Spielen zu verwenden (z. B. Game Maker). Denn auch mit einfachen Werkzeugen machen Sie sich das Leben deutlich leichter. Erstens werden Sie die Logik und Struktur fast jeder Spieleanwendung im Miniaturformat verstehen. Zweitens werden Sie beim Übergang zu ernsthaften Projekten Unebenheiten bekommen, die heilen. Drittens: Bereichern Sie Ihr Portfolio. Denn selbst ein einfaches „Spielzeug“ erfordert viel Zeit, Geduld und Kreativität, um ein Konzept zu entwickeln, Code zu schreiben und Fehler zu beheben. Darüber hinaus zeigt es, dass Sie sich mit der Spieleproduktion nicht nur in der trockenen Theorie auskennen.

Was ist als Richtlinie zu beachten?

Jeder, der davon träumt, Schriftsteller zu werden, wird Hunderte von Büchern lesen, bevor er ein einziges Wort schreibt. Klaviermeister kennen die besten Werke von Strauss, Chopin und Beethoven auswendig. Berühmte Künstler lernten vor großen Ausstellungen Kunstgeschichte auswendig.

Das gleiche Prinzip gilt für die Spieleentwicklung. Man kann sich nicht im luftleeren Raum entwickeln. Spielen Sie also, lassen Sie sich von den Meistern inspirieren und nehmen Sie wie ein Schwamm das Beste auf. Versuchen Sie gleichzeitig, Anwendungen nicht mit den Augen eines „Gamers“, sondern mit den Augen eines Entwicklers zu betrachten. Mit anderen Worten: Transponieren Sie das Spiel. Überlegen Sie, warum der „Bot“ in diesem Moment nach links lief und nicht zurück? Welche Faktoren verändern die Stärke und Genauigkeit eines Schusses in einem Sportsimulator? Wie kann man einen „Ermüdungseffekt“ erzeugen, wenn ein Charakter längere Zeit rennt? Wie stellt man sicher, dass der Spieler bei Regen das Geräusch von Tropfen hört und nicht das Quietschen eines Schweins? Im Allgemeinen kommen Sie auf den Punkt. Versuchen Sie, die Algorithmen, denen Sie während des Spiels begegnen, in Ihrem Kopf nachzubilden. Glauben Sie mir, ein solch konstruktiver Ansatz wird Ihnen in Ihrer zukünftigen schwierigen, aber verdammt aufregenden Karriere als Spieleentwickler helfen.

Autonome Bildungseinrichtung

höhere Berufsausbildung

„Leningrader Staatliche Universität benannt nach A.S. Puschkin“

Boksitogorsk-Institut (Zweigstelle)

Hochschule

Projekt zum Thema:

« Computerspiele»

Abgeschlossen von: Student 3 Und Gruppen

Spezialität 230701

Angewandte Informatik

nach Branche /__________/ N.A. Gladyshev

Geprüft:

Modullehrer

PM.04. Bereitstellung von Design

Aktivitäten /___________/ I.V. Dobryakova

Boksitogorsk, 2015Inhalt

ICHBühne

Ein Thema auswählen und das Problem darlegen

Stufe 1. Auswahl eines Themas

IIBühne

Objektanalyse

IIIBühne

Szenarioentwicklung und Modellsynthese

IVBühne

Technologie und Form der Informationspräsentation

VBühne

Computermodellsynthese

Stufe 2. Erstellung eines Multimediaprodukts

VIBühne

Arbeiten mit dem Projekt

Anwendung

ICH Bühne. Ein Thema auswählen und das Problem darlegen

Stufe 1. Auswahl eines Themas

Das heutige Tempo der Computerisierung übertrifft das Entwicklungstempo aller anderen Branchen. Kein Mittelständler und schon gar kein Großunternehmen kommt heute ohne Computer und Computernetzwerke aus. Der moderne Mensch interagiert ständig mit einem Computer – bei der Arbeit, zu Hause, im Auto und sogar im Flugzeug. Computer dringen rasch in das menschliche Leben ein und nehmen ihren Platz in unserem Bewusstsein ein. Mit dem Aufkommen der Computer kamen auch Computerspiele auf den Markt, die sofort viele Fans fanden. Diese Spiele begleiten die jüngere Generation seit ihrer Kindheit und führen einerseits zu einer Verlangsamung der Entwicklung bis hin zur Atrophie des Bewegungsapparates und der Muskulatur und andererseits zu einer schnellen Entwicklung des Intellekts, des logischen Denkens und der Vorstellungskraft eines Menschen. Ein Computerspieler gewöhnt sich daran, von einer virtuellen Welt in eine andere zu wechseln, ungewohnte Situationen schnell wahrzunehmen und sich an sie anzupassen. In der sich schnell verändernden Gesellschaft des 21. Jahrhunderts wird eine entwickelte intellektuelle Flexibilität die Anpassung an neue, unerwartete Realitäten gewährleisten. Computerspiele erfüllen somit die Funktion der Sozialisierung der Jugend in einer postindustriellen Gesellschaft.

Heutzutage gibt es Spiele, die durch ihre Plausibilität bestechen, mit guter Grafik und Sounddesign, die das Leben fast vollständig imitieren. Es gibt und entsteht immer wieder eine Vielzahl von Unternehmen, die immer mehr neue Spiele äußerst vielfältiger Art anbieten. Ihre Klassifizierung und noch mehr die moderne Preispolitik für Spiele zu verstehen, ist sehr schwierig. Dies veranlasste mich, mit der Entwicklung dieses Projekts zu beginnen.

Meine Projektziele:

    Studieren Sie die Entstehungsgeschichte von Computerspielen;

    sich mit der Klassifizierung von Computerspielen vertraut machen;

    lernen Sie Spiele im Strategiegenre kennen;

Stufe 2. Problemstellung

Apps nutzenMicrosoftBüroein multimediales Projekt zum Thema „Computerspiele“ entwickeln. Das Projekt erfordert die Erstellung einer Präsentation, die die Entstehungsgeschichte von Computerspielen und ihre Klassifizierung vorstellt und auch ausführlich über Spiele im Genre „Strategie“ berichtet. Rufen Sie im Bildschirmschoner die Datenbank auf, in der die Preispolitik für Computerspiele verschiedener Genres angezeigt wird. Das Projekt wird eine Broschüre mit Definitionen, Klassifizierung und Geschichte der Entwicklung von Computerspielen umfassen.

II BÜHNE. Objektanalyse

Anhand der Aufgabenstellung können vier Objekte unterschieden werden – Bildschirmschoner inMicrosoft Powerpoint, Präsentation inMicrosoft Powerpoint, Broschüre in Microsoft Publisher und Datenbank inZugang. Diese Objekte müssen miteinander verbunden sein. Um zu vermeiden, dass Anwendungen direkt aufgerufen werden, installieren wir das Projekt in der AnwendungMicrosoft Powerpoint .

Als Link, über den eine Präsentation in MicrosoftPowerPoint erfolgen soll, wird ein Booklet in M ​​genanntMicrosoftHerausgeber und Datenbanken inZugangWählen Sie das Splash-Objekt aus. Hier wird das Projekt beginnen.

Betrachten wir die Eigenschaften, die die ausgewählten Objekte charakterisieren.

Bildschirmschoner

Dokumentieren

Präsentation

Broschüre

Datenbank

Abb.1. Diagramm des Projektmodells „Computerspiele“.

Tabelle 1. Ziele des Projekts „Computerspiele“.

Bildschirmschonerobjekt

Datenbankobjekt

Präsentationsobjekt

Objektbroschüre

Objekttextdokument

1. Enthält allgemeine Informationen zum Projekt.

2. Ruft die Präsentation auf.

3. Ruft die Datenbank auf.

4.Broschüre.

5.Textdokument.

1. Ruft Informationen auf: über das Genre des Spiels, die Beliebtheit bei Spielern verschiedener Alterskategorien,

der Preis eines Computerspiels.

1. Einführung in die Klassifizierung von Computerspielen.

2. Demonstriert detailliert Spiele im Genre „Strategie“.

1. Präsentiert eine Broschüre mit vollständigen Informationen über Computerspiele.

1. Stellt die 6 Phasen eines Multimedia-Projekts dar.

Ein Begrüßungsbildschirm ist ein einfaches Objekt, von dem aus ein Übergang zu anderen Objekten erfolgt.

Das Diagramm des Präsentationsobjekts ist in Abbildung 2 dargestellt. Die Eigenschaften der in diesem Diagramm ausgewählten Objekte sind in Tabelle 2 dargestellt.

Computerspiele


Das Konzept des „Computerspiels“


Strategien


Kartenstrategien

Rundenbasierte Strategien

Echtzeit-Strategie

Gottessimulatoren

Globale Strategien

Kriegs Spiele

Klassische Strategien


Referenzliste


Abb.2. Anlagendiagramm Vorstellung des Projekts „Computerspiele“.

Tabelle 2. Ziele der Präsentation des Projekts „Computerspiele“.

Computerspiele

Klassifikationen von Computerspielen

Strategien

1. Übergang zum Konzept des „Computerspiels“.

2. Zeigt die Rolle des Spiels im Leben einer Person.

1. Zeigt Informationen über verschiedene Genres von Computerspielen.

2. Macht einen Übergang zum „Strategie“-Spielgenre

1.Demonstriert kurze Informationen über verschiedene Arten von Strategien.

2. Kehrt zum Inhalt zurück.

Datenbank


Spielewelt

Spiele

Verkäufe

Abb. 3. Objektdiagramm-Datenbank des Projekts „Computerspiele“.

Tabelle 3. ObjekteDatenbanken des Projekts „Computerspiele“.

Spielewelt

Spiele

Verkäufe

1. Zeigt die Preispolitik für Spiele verschiedener Genres.

2. Ruft Verkaufsstatistiken auf.

1. Zeigt Informationen zu Spielen an.

2. Zeigt beliebte Genres an

1. Verkaufsstatistiken anzeigen.

Broschüre


Computerspiele


Phasen der Spielsucht


Auswirkungen auf den Menschen


Konzept

Genres

Abb.4. Schematische Darstellung des Gegenstands der Broschüre des Projekts „Computerspiele“.

Tabelle 4. Gegenstände der Broschüre „Computerspiele“.

Konzept

Genres

Auswirkungen auf den Menschen

Phasen der Spielsucht

Nutzen und Schaden von Computerspielen

1.Erklärt das Konzept des „Computerspiels“

1. Stellt verschiedene Gaming-Genres vor

1. Zeigt die psychologische Abhängigkeit einer Person von Rollenspielen am Computer

1. Zeigt die Dynamik der Entwicklung der Computersucht

1.Erklärt alle Vor- und Nachteile von Computerspielen.

III BÜHNE . Szenarioentwicklung und Modellsynthese

Basierend auf der Analyse der betrachteten Objekte können wir das folgende Szenario für ein Multimedia-Projekt vorschlagen. Die Arbeit am Projekt „Computerspiele“ beginnt mit einem Splashscreen, der kurze Informationen zum Thema enthält. Es sollte vier Ausgänge vom Bildschirmschoner geben: einen zum Anzeigen der Präsentation, den zweiten zur Datenbank, den dritten zur Broschüre und den vierten zu diesem Dokument. Die Datenbank sollte Informationen enthalten, die das interessierte Publikum vertraut machenCPreispolitik im Bereich Verkauf von Computerspielen verschiedener Genres. Die Präsentation sollte grundlegende Informationen zu Computerspielen enthalten. Die Broschüre sollte Informationen über die Auswirkungen von Computerspielen auf Menschen verschiedener Altersgruppen enthalten.

Bildschirmschoner

Dokumentieren

Präsentation

Broschüre

Datenbank

Computerspiele

Phasen der Spielsucht

Konzept

Spiele

Spielewelt


Genres

Nutzen und Schaden von ComputernSpiele

Auswirkungen auf den Menschen

Verkäufe


Computerspiele


Die Rolle von Computerspielen im menschlichen Leben

Das Konzept des „Computerspiels“


Klassifizierung von Computerspielen

Strategien


Klassische Strategien

Gottessimulatoren

Globale Strategien

Kriegs Spiele

Kartenstrategien

Rundenbasierte Strategien

Echtzeit-Strategie


Referenzliste

Abb.5. Diagramm des Projektmodells „Computerspiele“.

IV Bühne. Technologie und Form der Informationspräsentation

In diesem Projekt werden Informationen am besten in Form von Informationsinhalten präsentiert – einer Folie, die Informationen zu den Objekten dieses Themas enthält. Die Präsentation erfolgt am besten interaktiv über Buttons. Es empfiehlt sich, den Präsentationsprozess mit einer musikalischen Begleitung zu begleiten. Die besten Softwareprodukte, die zur Entwicklung eines Projekts benötigt werden, sind PowerPoint zum Erstellen einer Präsentation.

V BÜHNE. Computermodellsynthese

Stufe 1. Vorbereitung des Arbeitsmaterials

Die vorgeschlagene Diskette enthält alle Grafik- und Textinformationen. Wenn diese verfügbar sind, kann der Vorbereitungsprozess auf die Arbeit am Soundtrack reduziert werden.

Zur Vorbereitung der musikalischen Begleitung können Sie einen handelsüblichen Phonographen von Wind verwendenÖws 95. Wenn PowerPoint-Anwendungen über SoundTrack verfügen, können Sie damit in PowerPoint selbst eine musikalische Untermalung zu einem bestimmten Thema erstellen.

Stufe 2. Erstellung eines Multimediaprodukts

Datenbankerstellung

Ein Diagramm dieses Teils des Projekts finden Sie oben in Abb. 3.

Beim Erstellen einer Datenbank können Sie den Designer verwenden, mit dem Sie die folgenden Abschnitte erstellen müssen:

    Tische;

    Anfragen;

    Formen;

    Berichte.

Diese Abschnitte müssen mit den erforderlichen Informationen ausgefüllt werden. Nach der Bearbeitung kann die Datenbank genutzt werden.

Erstellen einer Präsentation

In dieser Phase wird das Diagramm des Teils des Projekts betrachtet, der die Präsentation umsetzt und auf Basis der PowerPoint-Anwendung ausgeführt wird. Die Arbeitsreihenfolge in diesem Teil ist nicht wichtig, da es Schaltflächen gibt, die zu jedem Teil der Präsentation wechseln. Die Objekte in diesem Teil des Projekts werden Folien sein, die die Entwicklung der Computergrafik beschreiben.

Einen Bildschirmschoner erstellen

Wir erstellen einen Splashscreen für das Projekt auf Basis der PowerPoint-Anwendung. Die Gesamtansicht des Bildschirmschoners ist in Abb. dargestellt. 1. Der Begrüßungsbildschirm enthält kurze Informationen zum Projekt und bietet Folgendes:

    Anrufpräsentation;

    Übergang zur Datenbank;

    Anrufbroschüre;

    aufrufendes Dokument.

VI BÜHNE. Arbeiten mit dem Projekt

In der vorherigen Phase wurden die Arbeiten zur Erstellung des Projekts „Computerspiele“ abgeschlossen. Möglichkeiten und Prinzipien der Arbeit mit dem erstellten Projekt. Beim Start von PowerPoint erscheint ein Begrüßungsbildschirm auf dem Bildschirm. Vom Bildschirmschoner aus können Sie eine Präsentation aufrufen und sich das darin angebotene Material ansehen, außerdem können Sie den Ton einschalten. Nachdem Sie mit der Präsentation fertig sind, gehen Sie zum Begrüßungsbildschirm und betreten Sie die Datenbank, die Sie mit der Preispolitik und den Verkaufsstatistiken von Computerspielen verschiedener Genres vertraut macht. Nachdem Sie die Arbeit mit der Datenbank abgeschlossen haben, können Sie zum Begrüßungsbildschirm gehen und die Broschüre ansehen.

Anwendung

Broschüre

Präsentation

Datenbank

Bildschirmschoner

Die Spieleentwicklung ist auf Hochtouren, sie ist vielversprechend und erfreut sich wachsender Beliebtheit. Wir haben eine ausführliche Infografik zum Weg zur Lernspielentwicklung vorbereitet.

Mit der Spieleentwicklung sind viele Bereiche verbunden, und jede Trainingsstufe baut auf der vorherigen Stufe auf. Sie sollten beispielsweise nicht sofort auf Game-Engines umsteigen. Beginnen Sie mit der Softwareentwicklung, studieren Sie Mathematik mit Schwerpunkt Spieleprogrammierung und gehen Sie erst dann zur Spieleentwicklung über. Zu jeder der vorgestellten Etappen gibt es eine Schritt-für-Schritt-Anleitung, inklusive Büchern und anderen Materialien.

0. Entwicklung von Spielen für Kinder

Viele Bücher konzentrieren sich auf die Arbeit mit der legendären und intuitiven Entwicklungsumgebung für Kinder Scratch, darunter auch ScratchJr. Nach der Basis folgen Informationen zu Python Pygame. Es gibt ein Buch für 5-Jährige, der Großteil des Materials ist jedoch für Kinder ab 8 Jahren geeignet.

1. Informatik

Theoretische Kenntnisse sind ein obligatorischer Bestandteil, ohne den ein weiteres Studium bedeutungslos ist. Diese Auswahl an Lehrliteratur umfasst Grundlagen, Informationen zu Algorithmen und Mathematik im Kontext des Informatikstudiums.

2. Programmiersprachen

Die Sprache eines Computers zu sprechen ist nicht einfach, aber möglich. Und es gibt viele solcher Möglichkeiten. Beispielsweise hat die C-Sprache die Softwareindustrie erheblich beeinflusst, indem sie ihre Syntax mit den beliebten Sprachen C#, C++ und Java teilt. C++ wiederum ist eine leistungsstarke Sprache zur Erstellung effektiver Programme und Softwaresysteme. Viele schreiben Spiele auch in C#: Die Sprache ist schnell, praktisch und ermöglicht es Ihnen, schneller mit der Entwicklung zu beginnen.

Aber Lua hat etwas von C++ übernommen. Skriptsprache ist gut für die Spiellogik. Dadurch wird es einfacher, ein Level zu initialisieren, Aufgaben an Objekte zu binden, das Verhalten von NPCs interaktiv zu ändern, ohne das Projekt neu kompilieren zu müssen, und vieles mehr.

3. Anwendungen erstellen

Und wenn Informatik eine theoretische Grundlage ist, dann gibt es hier mehr Praxis. Die Spieleentwicklung ist ein holpriger Weg und der beste Ausgangspunkt sind Apps. Bücher mit praktischen Aufgaben sowie Informationen zu Mustern und UML helfen Ihnen dabei, herauszufinden, was was ist.

4. Mathematik für die Spieleentwicklung

Nein, es wird keinen Schulkurs in Algebra und Geometrie geben. Die Auswahl gliedert sich in die Grundlagen der Mathematik im Bereich Spieleentwicklung und ein weiterführendes Niveau.

5. Spielprogrammierung

Hardwareplattformen, Betriebssysteme, API-Sets, Algorithmen, plattformübergreifende und andere wichtige Aspekte, die die Grundlage für das zu entwickelnde Spiel bilden. Ergänzt werden die Bücher durch eine Reihe von Artikeln zur Spieleentwicklung, die nützliche Informationen zum Programmieren enthalten.

6. Entwicklung der Spiel-Engine

Die Engine ist das Herzstück des Spiels, das die Funktionalität und notwendigen Tools „herunterlädt“. In den ersten Büchern lernen Sie Architektur und Design kennen. Darüber hinaus sind „Game Engines“ in Tools, Optimierung, Skripte und zusätzliche Materialien in Form von Artikeln unterteilt. In der Einführung werden Muster, algorithmische Tricks, Optimierung in Unity und andere Nuancen angesprochen.

7. Computergrafik

Ja, Inhalte sind wichtig, aber es sind Computergrafiken, die der Anwendungsoberfläche entsprechen, die Benutzer sehen werden. Daher sollte ihm besondere Aufmerksamkeit gewidmet werden.

Kein Wunder, dass dieser Abschnitt der größte ist. Dazu gehören die Grundlagen der Programmierung mit Real-Time 3D, DirectX und OpenGL. Ergänzt wird alles mit Informationen zu Rendering und Technologien. Besonderes Augenmerk wurde bei der Auswahl auf Direct3D und OpenGL gelegt.



8. Spiel-Audio

Bei der Spieleentwicklung geht es auch um Audio: Dabei handelt es sich um Geräusche von NPCs, der Hauptfigur, Phänomenen oder Objekten sowie Musik. Die Audioprogramme umfassten nur zwei Bücher, aber sie stellen die notwendigen Informationen auf leicht zugängliche Weise bereit.

9. Spielphysik und Animation

Eine der schwierigsten Etappen. Neben der Softwarebasis und den Bildern muss es Gesetze geben, nach denen das alles zusammenwirkt. Spielphysik und Animationsprogrammierung werden in 17 Büchern behandelt. Die Nachahmung von Flüssigkeit ist gesondert betroffen.

10. Künstliche Gaming-Intelligenz

Es gibt viele computergesteuerte Charaktere: Dies können Mobs, Questgeber und sogar normale Schachfiguren sein. Eine Fülle von Büchern hilft Ihnen, die Prinzipien der KI zu verstehen. Nachfolgend finden Sie eine Liste nützlicher thematischer Artikel.

11. Programmierung von Multiplayer-Spielen

Die Entwicklung von Einzelspieler-Spielen unterscheidet sich stark von Mehrspieler-Spielen. Hier müssen Sie die Verbindung, den Betrieb von Threads und andere Nuancen berücksichtigen. Die Auswahl ist unterteilt in Artikel und Bücher zu den Themen Serverprogrammierung, Netzwerkprogrammierung und Netzwerkprotokoll.

Wie man in einer Woche ein RPG-Spiel von Grund auf und ohne Budget entwickelt. Teil I

Rollenspiel in einer Woche? Von Grund auf neu? Ist es überhaupt möglich?
Ich habe die Chance genutzt und es geschafft.

Das Internet ist voll von Informationsressourcen, die kleinen, unabhängigen (Indie-)Spieleentwicklern zur Verfügung stehen. In einem solchen öffentlichen Forum hatte ich während eines Streits die Kühnheit herauszuplatzen, dass ich, wenn ich eine Woche Zeit, einen Computer mit frisch installiertem Windows und einer guten Internetverbindung hätte, ein anständiges Spiel erstellen könnte, ohne einen Cent auszugeben darauf. Nein, es wird sicherlich nicht mit Halo 2 oder etwas Ähnlichem mithalten können (wenn ich so ein Spiel in einer Woche erstellen könnte, hätte ich meinen Job schon vor langer Zeit gekündigt), aber es wird durchaus interessant sein und spielbar.

Tom Bampton, monatlicher Game of the Day-Rezensent (www.gameinaday.com), sagte: „Mach es!“ Dann fügte er eine zusätzliche Bedingung hinzu: Ich muss dies tun, ohne vorhandene Spiel-Engines zu verwenden. Ich kann nur die Kernbibliotheken/APIs verwenden.

Diese Idee lehnte ich zunächst ab. Ich hatte nicht die zusätzliche Zeit, mir bei der Arbeit eine Woche frei zu nehmen und das aktuelle Spielprojekt zu entwickeln. Aber dann dachte ich: Zum Teufel damit, was ist schon eine Woche? In einem typischen Unternehmen wie E.A. beträgt die Wochenarbeitszeit 40 Stunden. Warum also nicht das Spiel nicht in einer Kalenderwoche, sondern in reinen 40 Stunden machen? Das ist schon realer, aber ich wollte kein weiteres Tetris oder Arkanoid erschaffen. Wie wäre es mit Rollenspielen – einem der anspruchsvollsten Gaming-Genres? Das ist möglich?

Ich wusste, dass es extrem schwierig sein würde. Aber ich habe die Herausforderung angenommen.

Darüber hinaus habe ich detailliert aufgeschrieben, was ich tat und wie ich es tat, und den Fortschritt der Entwicklung beschrieben. Ich dachte, es könnte für Spieleentwickler interessant sein – oder es wäre zumindest eine unterhaltsame Aufzeichnung darüber, wie ich umgefallen bin, wenn es mir nicht gelingen würde. Alles, was ich bekam, war eine lange, ausführliche Aufzeichnung meiner stündlichen Aktivitäten. Ich habe versucht, es zu ändern, damit das Lesen nicht langweilig wird. Wie es ausgegangen ist, urteilen Sie selbst.

So habe ich in einer Woche ein Spiel von Grund auf und ohne Budget erstellt. Wenn Sie zu faul zum Lesen sind und schnell einen Blick auf das Ende der Geschichte werfen möchten, um herauszufinden, wie das Endprodukt aussieht und alle seine Fehler sehen, können Sie die Windows-Version des Spiels hier herunterladen: http://www. rampantgames.com/hackenslash.html

PLANUNG
Ziel
Erstellen Sie ein Old-School-Rollenspiel im Stil alter Spiele aus den frühen 80ern mit einer Top-Down-Ansicht, wie zum Beispiel „The Temple of Apshai“, „Ultima III“ und „Telengard“. Der Spieler bewegt sich durch Räume in einem typischen Dungeon und kämpft mit „Schwert und Zauberei“ gegen verschiedene Monster. Nach und nach wird er seine Fähigkeiten verbessern, indem er Erfahrung sammelt, sein Level erhöht und magische Ausrüstung erwirbt.

Das Spiel wird jedoch nicht nur aus dem eigentlichen Kampf bestehen. Der Spieler hat auch die Möglichkeit, sich an Monstern vorbeizuschleichen oder mit ihnen zu verhandeln. Es wird verschlossene Türen und Truhen sowie einzigartige Dungeon-Funktionen geben, die unerwartete Effekte haben. Das Spiel wird keine langen Beschreibungen oder Dialoge haben – es wird hauptsächlich ein typisches Hack & Slash sein. Sie werden auf dem Weg voranschreiten, bis Sie stark genug sind, sich dem Endgegner zu stellen, die Quest abzuschließen und sicher nach Hause (in Ihren Startraum) zurückzukehren.

Entwicklungsregeln

Regel Nr. 1: Die Entwicklungszeit ist auf eine Woche (bestehend aus 40 Stunden) begrenzt.
Insgesamt sollten nicht mehr als 40 Stunden für die Entwicklung des Spiels aufgewendet werden. Dazu gehört auch die Zeit, die Sie damit verbringen, tatsächlich am Spiel zu arbeiten und darüber nachzudenken. Entwicklungspausen, die länger als zehn Minuten dauern, werden nicht berücksichtigt. Dies wäre eine „ideale“ Arbeitswoche mit 40 hochproduktiven Stunden.

Eine voll funktionsfähige Alpha-Version wird in 40 Stunden erstellt. Weitere Endbearbeitungen, wie z. B. das endgültige Debuggen des Spiels oder die Erstellung eines Installationsprogramms für die Verteilung, werden in der Gesamtzeit nicht berücksichtigt und in dieser Phase werden keine neuen Funktionen hinzugefügt. Auch die Dokumentation des Entwicklungsprozesses wird nicht berücksichtigt.

Regel Nr. 2: Verwenden Sie nur kostenlose Tools
Mit Ausnahme der Software, die der Windows-Installation beiliegt, kommt ausschließlich freie Software zum Einsatz, möglichst Open Source. Damit soll gezeigt werden, dass man für die Entwicklung eines Spiels keine teuren (oder gar billigen) Tools benötigt. Diese Regelung gilt nicht für Geräte wie Scanner, Mikrofon und Digitalkamera – wenn Sie diese nicht haben, gehen wir davon aus, dass Sie diese von jemandem ausleihen können.

Regel Nr. 3: Keine Engines, nur Standardbibliotheken/APIs
Das Spiel muss von Grund auf neu erstellt werden, ohne vorhandene Spiel-Engines zu verwenden. Kein Betrug oder die Erstellung eines Spiels oder seiner Teile mithilfe von Spieleentwicklern oder der Verwendung ähnlicher Software.

Werkzeuge
Code:

Python 2.3 (http://www.python.org/)
PythonWin
PyGame (http://www.pygame.org/)
Py2exe – um das Geschehen in eine ausführbare Datei zur Verteilung zu kompilieren. (http://starship.python.net/crew/theller/py2exe/)

Gimp 2.0 (http://gimp-win.sourceforge.net/)
MS Paint (das mit Windows gelieferte Programm) – zum Einfügen von Screenshots, die mit der PrintScreen-Taste aufgenommen wurden (GIMP weigerte sich aus irgendeinem Grund, dies zu tun)
Kostenlose Texturen wurden von (http://www.textureartist.net/textures/index.htm) und (http://www.mayang.com/textures/) übernommen.

Audacity (http://audacity.sourceforge.net/) plus mein Mikrofon oder kostenlose.

Zeitplan (Plan) der Arbeit
Zeitpläne sind dazu da, gebrochen zu werden, aber sie werden dennoch benötigt, um den Fortschritt und die Linien zu überwachen und bei Bedarf Anpassungen vorzunehmen.

Stunde 1–10: Grundlegende Architektur
Design des Motors und der Hauptkomponenten. Lassen Sie sich die Welt auf dem Bildschirm anzeigen. Ich muss die Möglichkeit implementieren, einen Testspieler um die Welt zu bewegen, sich Dinge anzusehen und daraus dann einen Spieleditor zu machen.

Stunde 11–20: Spieleroptionen
Umsetzung aller wesentlichen Möglichkeiten für den Spieler – Bewegen, Angreifen, Türen öffnen, Sterben, Dinge aufheben und Inventar nutzen. Erstellen Sie eine Skelettdarstellung aller Objekte in der Umgebung, um die Fähigkeiten des Spielers bei der Interaktion mit der Welt zu testen.

Stunde 21–30: Die Welt zum Leben erwecken
Fügen Sie künstliche Intelligenz, Spielereignisse, Fallen und Spezialeffekte hinzu. Am Ende dieses Zeitraums sollte ich eine ziemlich vollständige technische Demo haben, die alle Hauptfunktionen des Spiels enthält.

Stunde 31–40: Inhalte und Regeln hinzufügen
Holen Sie sich ein vollständiges Spiel aus der Tech-Demo. Fügen Sie alle zusätzlichen Inhalte hinzu. Erreichen Sie Vollständigkeit und Ausgewogenheit der Spielmechanik. Polieren Sie alles, wofür Sie Zeit haben, fügen Sie Spezialeffekte, Animationen usw. hinzu.

Nach 40 Stunden: Spieltest und Veröffentlichung
Testen und beseitigen Sie die gefundenen Fehler (ohne neue Funktionen hinzuzufügen!). Sammeln Sie alles auf einem Haufen und veröffentlichen Sie es im Internet. Vollständige Dokumentation.

Hackenslash-Entwicklertagebuch: Spiel der Woche

Stunde 1 – Wildes Design und Grundkurse
Diese Stunde wurde damit verbracht, einige grundlegende Klassen für das Spiel zu erstellen – und sie im weiteren Design zu verwenden. Die Welt wird als Abfolge von Räumen präsentiert, die durch ein Portal verbunden sind. Alles auf der Welt basiert auf Räumen, ähnlich wie in alten Abenteuerspielen oder MUDs. Die meisten Objekte im Spiel werden als „GameObject“ dargestellt, das eine Position und einen Inhalt hat (und andere Objekte enthalten kann – eine Karte kann Räume enthalten, ein Raum kann eine Truhe enthalten, eine Truhe kann ein Schwert enthalten … und Ich denke, ein Schwert kann mehrere Räume enthalten, aber das werden wir nicht tun.)

Ich erstelle Kreaturen- und Spielerobjekte
Ich generiere eine Reihe von Attributen für Kreaturen und implementieren sie in einer Klasse. Anscheinend bin ich ein Nerd, der zu viele RPG-Spiele spielt. Ich weiß noch nicht genau, wie die Spielmechanik aussehen und funktionieren wird.
Ich erstelle ein Raumobjekt, das von GameObject erbt. Ein Raum hat Breite, Höhe und Wände – und im Moment nichts anderes.

Langsam beginne ich zu verstehen, wie alles funktionieren wird und nehme die notwendigen Korrekturen vor. Ich versuche zu diesem Zeitpunkt noch nicht einmal, PyGame zu verwenden, und das Programm zeigt nichts anderes als die Konsole an. Aber ich habe das Gefühl, dass alles, was getan wurde, ein großer Fortschritt ist!

Stunde 2 – PyGame 101
Das Ziel dieser Stunde ist es, PyGame zu initialisieren und zumindest etwas auf dem Bildschirm zu zeichnen. Tatsächlich verbringe ich die meiste Zeit damit, die PyGame-Dokumentation zu lesen und herauszufinden, was darin enthalten ist und wie man es macht, da ich fast keine Erfahrung mit PyGame oder SDL habe.

Die Stunde endet damit, dass ein Programm einen leeren, mit Schwarz gefüllten Bildschirm anzeigt. Nicht beeindruckend. Tatsächlich verbirgt sich hinter diesem Fenster einiges. Es gibt eine Spielschleife, Frame-Wechsel, den Aufruf mehrerer Klassen und eine Menge Leerlaufkram. Das macht den schwarzen Bildschirm aber nicht eindrucksvoller.

Stunde 3 – Wenn die Wände Ohren hätten, würde ich sie heftig schelten.
Der Zweck dieser Stunde besteht darin, den Umriss des Raumes mit den Wänden zu definieren und diesen auf dem noch schwarzen Bildschirm anzuzeigen. Dazu brauche ich einen Raum und ich brauche Grafiken. Ich muss viel in GIMP sitzen und aus dem Internet heruntergeladene Texturen bearbeiten, damit sie zu geeigneten Kacheln werden. Ich erstelle eine Textur-Manager-Klasse. Und ich fülle die Struktur des Musterraums aus. Ich habe auch etwas mehr Zeit damit verbracht, die PyGame-Dokumentation durchzusehen, um alles andere zu finden, was mir die Arbeit erleichtern könnte.

Eine Stunde ist vergangen. Aber ich habe immer noch den gleichen schwarzen Bildschirm. Es gab immer noch keine Wände.

4 Stunden – Es gibt ein freies Zimmer im Hotel
Nachdem ich mit einigen Syntaxfehlern zu kämpfen hatte, gelang es mir endlich, die Wände auf dem Bildschirm anzuzeigen. Sie werden zwar falsch angezeigt, befinden sich nicht an der angegebenen Stelle und weisen sogar Lücken zwischen den Segmenten auf. Es ist schrecklich. Aber mit ein wenig Optimierung und Bearbeitung kam am Ende etwas heraus, das wie ein 10 x 10 Quadratmeter großer Raum auf dem Bildschirm aussah.

Ohne einen detaillierten Projektplan kann es tatsächlich leicht passieren, dass man nach Abschluss einer Arbeit verwirrt ist und sich fragt: „Was kommt als Nächstes?“ Ich kam zu dem Schluss, dass, wenn die Zeichnung eines Raums gut wäre, die Zeichnung von zwei doppelt so gut wäre.

Um die erstellten Räume zu speichern, habe ich eine Datei „minidungeon“ erstellt.
Ich werde damit beginnen, Logik für „Portale“ hinzuzufügen – Löcher in den Wänden, die zu anderen Räumen führen (und alle Versatzinformationen bereitstellen, die für die korrekte Anzeige benachbarter Räume erforderlich sind).

Stunde 5 – Hackenslash bekommt mehr Räume

Ich habe den Fenstertitel in „Hackenslash!“ geändert. Einfach weil es cool ist.
Ich habe eine Feature-Karte zum Speichern von Räumen und eine MapMaster-Klasse erstellt, die mehrere Karten enthält.
Ich habe einen zweiten Raum hinzugefügt und ihn durch ein Portal mit dem ersten verbunden.
Benachbarte Räume sind über Portale mit dem aktuellen verbunden und werden nun auf dem Bildschirm angezeigt.
Ich habe einige Clipping-Fehler behoben, sodass Wände, die teilweise über das Fenster hinausragen, korrekt angezeigt werden.

Stunde 6 – in der wir unsere Zeichenfähigkeiten verbessern

Eine Türklasse hinzugefügt und auch Karten für die Türplatzierung konfiguriert (die Tür muss für zwei Räume gemeinsam sein). (Bearbeiten: Ich wünschte, ich hätte das nie benutzt!)
Ich habe 3 weitere Wandfliesen erstellt und sie zu einem Bild kombiniert.
Das grafische Erscheinungsbild der Wände variiert je nach Typ.
Ich erstelle eine einfache Grafik für eine Draufsicht.

Stunden 7-8 – Drehungen und Ausrufe!

Ich habe herausgefunden, wie man Bitmaps in PyGame dreht.
Ich habe den Testspieler dazu gebracht, sich reibungslos zu drehen. Zur Korrektur des Drehwinkels sind viele Anpassungen notwendig.
Ich habe gelernt, wie man Schriftarten in PyGame verwendet, und erstelle einige Klassen, um Text anzuzeigen und zu animieren.
Eine Klasse für die automatische Textverarbeitung hinzugefügt, da diese Funktionalität in Zukunft häufig verwendet wird.

Stunden 9–11 – Elemente – brrrr!

Und auch hier muss ich die Frage „Was kommt als nächstes?“ lösen.

Räume benötigen interessantere Elemente, daher müssen Sie eine Liste davon erstellen. Da ich nicht weiß, wie ich sie systematisieren soll, habe ich beschlossen, mit den allgemeinen zu beginnen. Ich habe drei statische Elemente eingeführt, die in einem typischen Dungeonraum zu finden sind: einen Teppich, eine Säule (ein Block mit der gleichen Funktionalität wie die Wände) und eine Leiter (ermöglicht es Ihnen, ihn an einen neuen Ort zu bewegen).

Ich entschied, dass die Elemente mehr als eine Kachel einnehmen und in jedem Grad gedreht werden könnten. (Bearbeiten: Im Nachhinein eine sehr dumme Lösung – ich habe zu viel Zeit damit verbracht, sie umzusetzen, aber sie hat sich als fast nutzlos herausgestellt.)

Insgesamt habe ich etwa drei Stunden damit verbracht, an den Elementen zu arbeiten, hin- und hergerissen zwischen der Erstellung von Grafiken und dem Schreiben von Code.

Stunden 12 – 13 – Wir brauchen Beute!

Ich erstelle Grafiken und Code für Dinge. Es ist erstaunlich, wie viel Zeit das Zeichnen in Anspruch nehmen kann. Besonders ärgerlich ist es, wenn das Bild so aussieht, als wäre es von einem Huhn mit der Pfote gezeichnet worden, egal, wie viel Mühe man sich damit gemacht hat.

Ich habe den Gegenständen viele Eigenschaften hinzugefügt, darunter Kosten, Größe, Ausrüstungsplätze und vieles mehr. Mit ihnen kann noch nicht interagiert werden, aber zumindest erscheinen sie an den richtigen Stellen im Raum.

Stunde 14 – Teppiche

Ich bin weit hinter dem Zeitplan zurück, was soll ich tun?
Der schwarze Hintergrund wirkt zu hässlich, deshalb habe ich die Böden im Raum mit Teppichen – separaten Fliesen – ausgelegt.

Danach stellte sich plötzlich heraus, dass ich vergessen hatte, den Sprites des Players und anderen Dingen einen transparenten Hintergrund hinzuzufügen. Ich musste viel Zeit darauf verwenden, dieses Versehen zu korrigieren.

Aber das Level sieht jetzt cool aus. Na ja, zumindest cooler als Schwarz.

Stunden 15-16 – Klick! Klicken!

Ich habe mich mit Maussteuerung und Ereignisverarbeitung beschäftigt.
Charaktersteuerung mit der Maus hinzugefügt. Die Bewegung ist immer noch ruckartig, es gibt kein flüssiges Scrollen des Levels.
Der Spieler kann den Raum verlassen, es gibt keine Kollisionsprüfung.
Ich habe ein paar Fehler behoben.
Ich habe GIMP gefoltert und wunderschöne Treppen erstellt.
.
Ich habe bereits fast 17 Stunden in die Entwicklung investiert und werde langsam etwas nervös. Ich bin mit der Erstellung des Spiels zu 2/5 fertig – der zweite „Arbeitstag“ der Entwicklung ist zu Ende. Was ich bereits geleistet habe, ist beeindruckend, aber ich verstehe, dass noch viel zu tun bleibt. Ich habe noch vier Stunden Zeit, um die grundlegenden Player-Funktionen fertigzustellen und mich in den Zeitplan einzufügen. Es wird schwierig sein ... aber ich bereue es trotzdem nicht, die zusätzliche Zeit mit dem Zeichnen von Grafiken verbracht zu haben!

Stunde 17 – Wir bewegen uns sanft, bis wir mit der Stirn gegen die Wand stoßen

Die meiste Zeit wurde für die Feinabstimmung der Grafik und die Behebung von Fehlern aufgewendet.
Kollisionserkennung und flüssiges Scrollen hinzugefügt, wenn sich der Spieler bewegt.
Der Spieler kann nun als Reaktion auf eine Mausaktion mehrere Schritte (Runden) ausführen.

Stunde 18 – Überschreiten der Schwellen

Der Spieler kann nun durch Portale zu anderen Räumen gelangen.
Dies führt zu einem kosmetischen Fehler bei überlappenden Wänden und Böden zwischen benachbarten Räumen.
Viele Fehler im Zusammenhang mit der Rotation wurden behoben, die Portale unpassierbar machten.

Stunde 19 – Stairway to Heaven, Hell's Menu

Mein Bruder hat sich freiwillig gemeldet, Musik für das Spiel zu machen. Er hat die Musik für Void War gemacht und sie ist ziemlich gut geworden. Das erinnerte mich daran, dass ich etwas Audio (und Musik) abspielen muss. Dies scheint in PyGame ziemlich einfach zu sein, daher sollte es nicht allzu lange dauern. (Edit: Ich habe nie Zeit dafür gefunden, leider hört man in Hackenslash keinen einzigen Ton.)

Mein nächstes Ziel ist die Interaktion mit Kreaturen und Objekten. Mir gefällt die Art und Weise, wie Die Sims und Neverwinter Nights es machen, sehr gut: Wenn man mit einem Spielobjekt interagieren möchte, erscheint ein Kontextmenü. Ich habe vor, etwas Ähnliches umzusetzen.

Ich bringe Treppen bei, um den Spieler in einen neuen Raum zu bewegen.
Ich habe das Internet und die PyGame-Dokumentation ein wenig durchforstet, um herauszufinden, ob es Open-Source-Code für ein ähnliches PyGame-Menü gibt. Und ich habe nichts gefunden.
Ich fing an, mein eigenes Menü zusammenzustellen.

Öffnungszeiten 20 – 21 – Was ist auf der Speisekarte?

Ich arbeite noch an der Speisekarte. Das Menü lässt sich leicht mit einem Objekt verbinden, bzw. das Objekt scheint ein Menü zu generieren, wodurch es einfach war, Feedback zur Verarbeitung der Spielerauswahl zu implementieren.
Ich fing an, an einem Menü mit Dingen zu arbeiten. Es erscheint bereits an der richtigen Stelle und ermöglicht die Auswahl eines Elements, aber wenn es gedrückt wird, passiert noch nichts, nur die Schaltfläche zum Schließen des Menüs funktioniert.

Stunde 22 – Dabei einschlafen

Ich arbeite weiter an den Dingen – versuche, ihre Funktionalität zu implementieren und ihnen beizubringen, auf Menübefehle zu reagieren, einschließlich der Fähigkeit, Kontextinformationen hinzuzufügen. Jetzt hat es nur noch wenige Funktionen, funktioniert aber immer noch und zeigt Informationen über den ausgeführten Befehl an
Ich habe die Bewegungsberechnung bei der Ausführung verschiedener Aktionen verbessert und dadurch eine größere Mobilität erlangt.

Mir fällt auf, dass es spät ist und ich die für diese Arbeit vorgesehene Zeit weit überschritten habe. Wenn ich nicht auf die gesamte Entwicklungszeit geachtet hätte, wäre ich wahrscheinlich bis zum Morgen dort gesessen. Aber da ich nur wenig Zeit habe, ist eine praktisch verschwendete Stunde wirklich eine schlechte Nachricht. Es ist interessant, wie sich die Prioritäten verschieben, wenn die Zeit knapp ist. Wie dem auch sei, ich gehe ins Bett.

Stunde 23 – Kampfparameter!

Ich ändere einige der in der ersten Stunde erstellten Klassenattribute (nun ja, ich fange gerade erst an).
In der oberen rechten Ecke erstelle ich ein Panel, das die Optionen des Players anzeigt.
Ich habe dieses Fenster optimiert, indem ich es in ein Bild umgewandelt habe, das schneller gezeichnet wird als Schriftarten. Dieses Bild wird nur aktualisiert, wenn sich die damit verbundenen Zeichenparameter ändern.

Stunde 24 – Spielermenü

Ich habe die Optimierungen für das Optionsfenster abgeschlossen.
Es wurde ein Popup-Menü erstellt, das erscheint, wenn der Spieler auf einen Charakter klickt.
Ich habe ein Schnellmenü für die Verwendung von Tränken, das Wirken von Zaubersprüchen usw. erstellt.
Ich habe einige Fehler im Menü behoben.

Stunde 25 – Vor dem (erneuten) Sägen der Böden und Wände

Heute Morgen tauchte in meinem Gehirn eine Idee auf (ist mein Gehirn wirklich so groß, dass es so viele Ideen aufnehmen kann?), wie ich das Problem der überlappenden Wände in angrenzenden Räumen lösen kann (siehe Beschreibung der achtzehnten Stunde). Was ist, wenn ich nur die Hälfte der Wände streiche? Auf diese Weise kommt es überhaupt nicht zu Überschneidungen und es ist nicht erforderlich, komplexe Logik zum Erkennen und Korrigieren von Überschneidungen hinzuzufügen.

Ich beginne mit der Umsetzung dieser Idee. Leider macht die erfundene Vereinfachung die Darstellung des Raumes (insbesondere der Böden) noch komplizierter und lässt sich nicht so schnell umsetzen, wie ich gehofft hatte. Es dauerte etwa eine Stunde, dieses System zu erstellen und zu debuggen. Aber das war es wert.

Beim Debuggen des Codes habe ich mehrere weitere Fehler im Zusammenhang mit dem Übergang zwischen Räumen entdeckt.

PAUSE – Krise!

Ich habe gerade festgestellt, dass mehr als drei Fünftel der vorgesehenen Entwicklungszeit vergangen sind und dass weniger als fünfzehn Stunden verbleiben, um das Spiel fertigzustellen. Nachdem ich mir den Zeitplan der notwendigen Funktionen des Spiels angesehen und geschätzt hatte, dass die Implementierung jeder einzelnen Funktion durchschnittlich eine Stunde dauerte, wurde mir klar, dass ich etwa fünfundzwanzig Stunden brauchte, um alles umzusetzen. Zehn Stunden mehr als es ist. Das Projekt ist offiziell in Gefahr.

Ich kann das Zeitlimit nicht überschreiten. Es ist auch unmöglich, einen Assistenten zu gewinnen oder Code/Ressourcen zu kaufen, da festgelegt ist, dass ich das Spiel in 40 Stunden alleine machen werde. Ich muss herausfinden, wie ich noch effizienter arbeiten kann – aber ich arbeite bereits hart an maximaler Produktivität. Es sieht so aus, als hätte ich keine andere Wahl. Ich muss die Funktionalität noch einmal überdenken und entscheiden, welche Features ich aus dem Spiel streichen möchte.

Türen: Cut! Ich möchte wirklich Türen im Spiel machen. Es ist schade, mich von dieser Funktion zu trennen – zumal ich schon seit einiger Zeit daran arbeite. Aber es gibt noch zu viel zu tun, etwa im Bereich der künstlichen Intelligenz. Und es würde wahrscheinlich 2-3 Stunden dauern, bis sie funktionieren, was ich nicht habe.
Inventarisierung: Vereinfachen! Vergessen Sie zusätzliches Inventar und die Möglichkeit, die Waffen nach Belieben zu wechseln. Alles, was abgeholt wurde und nicht zur aktuellen Ausrüstung wurde, wird sofort in Geld umgewandelt.
Fallen: Vereinfachen! Ich hätte gerne eine Vielzahl von Fallen mit interessanten und unterschiedlichen Konsequenzen für deren Aktivierung. Kein Schicksal. Fallen haben einen einfachen visuellen Effekt, verursachen Schaden und erhöhen vorübergehend die Chance, einem zufälligen Monster zu begegnen
Bögen (Kleinwaffen): Cut! Das Spiel wird nur Nahkampfwaffen haben; Sie können aus der Ferne mit Zaubersprüchen angreifen.
Spiel speichern/laden: Vereinfachen! Sie können nur Ihren Charakter retten, nicht den Zustand der Welt. (EDIT: Das habe ich auch nicht gemacht!)
Partikelsystem: Beiseite legen! Die Erstellung eines Partikelsystems wurde an das Ende der Prioritätenliste verschoben. Ich bezweifle, dass ich sie tun muss. Ich würde gerne beeindruckende visuelle Effekte mit Partikeln für Zaubersprüche erzeugen ... aber das wird wahrscheinlich nie passieren.
Zauber: Vereinfachen! Ich hatte eine ernsthafte Vorstellung von Zaubersprüchen: Man konnte sie in Form von Schriftrollen finden, und es gab mehr als ein Dutzend an der Zahl. Es ist traurig, aber es wird nur ein paar Zaubersprüche geben: Heilen, Schaden, Schwächen, Stärken und Wiederherstellung. Beim Levelaufstieg ist es möglich, dem Spieler die Möglichkeit zu geben, Zauber zu verstärken, indem er die Anzahl der magischen Punkte erhöht.
Monster- und Spieleranimationen: Cut! Ich bin kein guter Künstler, um das schnell genug zu machen.

Bei der Entscheidung, was ich nicht tun werde (oder was ich auf später verschiebe), ist es ebenso wichtig zu entscheiden, was zuerst getan werden muss.

Es sind viele Dinge im Spiel geplant, die meiner Meinung nach sehr wichtig sind – das Finden von Fallen, Geheimtüren (naja, jetzt Geheimgänge) und das Aufbrechen von Truhen. Aber der Kern des Spiels ist der Kampf. Also beschloss ich, mich darauf zu konzentrieren und es zu meiner obersten Priorität zu machen. Ich habe mir ein Ziel gesetzt: In eineinhalb Stunden werden meine Monster so lebendig, dass sie getötet werden können.

Großartig, wir haben die Prioritäten geklärt, lasst uns mit der Entwicklung fortfahren.

Stunde 26 – Lasst uns würfeln

Ich arbeite an der „Würfel“-Mechanik, einem Mechanismus, durch den ein Element der Zufälligkeit in das Spiel eingeführt wird. Da wir nicht die Einschränkung echter Würfel haben, können wir eine Zufallszahl in jedem gewünschten Bereich erhalten. Zum Beispiel von 1 bis 33 oder von 6 bis 17. So kann ich würfeln und vergleichen, was bei meinem Angriff und der Verteidigung des Feindes herausgekommen ist. Ist die gewürfelte Zahl höher als die Verteidigung, ist der Angriff erfolgreich.

Nehmen wir zum Beispiel an, ich habe einen Gesamtangriffswert von 15. Ich greife ein Monster an, das eine Verteidigung von 10 hat. Meine Chancen liegen bei 15 von 25 (25 = 15 + 10) oder 3 von 5. Das Spiel generiert also eine Zufallszahl zwischen 1 und 25, und wenn diese höher als zehn ist, gewinne ich.

Zur Berechnung des verursachten Schadens wird eine etwas andere Methode verwendet. Ich habe dem Verteidiger den Parameter „Rüstung“ und dem Angreifer „Schaden“ hinzugefügt. Ich erzeuge eine Zufallszahl von 1 bis zur Summe und subtrahiere dann die Rüstung. Wenn das Ergebnis kleiner als eins ist, wird kein Schaden verursacht. Ansonsten entspricht es dem erhaltenen Ergebnis. Wenn also ein Monster mit 10 Schadenspunkten einen Spieler mit 5 Rüstungen angreift, generiert das Spiel eine Zahl von 1 bis 15, von der es 5 abzieht, was dem verursachten Schaden entspricht.

Diese Erklärung und Beschreibung dauerte länger als die Umsetzung.

Am Ende der Stunde habe ich die Größe des Dungeon-Anzeigebereichs reduziert, jetzt ist der rechte Teil des Fensters vollständig der Benutzeroberfläche gewidmet, diese Änderung führte zu einer leichten Leistungssteigerung. Ich habe außerdem dafür gesorgt, dass die Spielerbewegung nicht von der Framerate beeinflusst wird.