Designing Game Worlds

,

2018

Kohärenz in der Spielweltgestaltung von Open-World-Games durch prozedurale Generierungstechniken

#StudioIntegrativeDesign #Master-Thesis

«Open-World-Games» haben durch ihre riesigen Spielwelten das Potential für unzählige Stunden an Exploration und Spielspass. Prozedurale Generierung der Spielinhalte durch Computersoftware gewinnt daher als Designtechnik immer mehr an Bedeutung. Bei der Anwendung solcher Techniken können Probleme in der Kohärenz der Welten auftreten, die die Spielerfahrung negativ beeinflussen.


In seiner Masterthesis beschäftigt sich Mihajlo Nenad mit der Entwicklung und Gestaltung eines Open-World-Games. Das Ziel der Arbeit ist es, anhand des Prototypen GenoTerra Methoden zur Erzeugung von kohärenten Bildsprachen in Open-World-Games (und deren Komponenten) zu erarbeiten und konkret anzuwenden.

An Open-World-Game-Produktionen arbeiten in der Regel grosse Teams ausgebildeter Spezialisten, die Spielinhalte designen, programmieren und sinnvoll in die Gamewelt integrieren. Eine Alternative zur herkömmlichen Gestaltung von Open-World-Games bietet die prozedurale Generierung der Inhalte durch Computersoftware. Dabei führen prozedural generierte Inhalte nicht automatisch zu kohärenteren Inhalten. Jedoch können sie dem Designer helfen eine Bildsprache zu entwickeln und diese erfolgreich als Gesamtästhetik im Game zu etablieren.


Prozedurale Generierung in Games (PCG) ist der von einem Computer selbst erstellte Spielinhalt auf Basis eines, in erster Instanz von Menschen, programmierten Regelwerks.

«In other words, PCG refers to computer software that can create game content on its own, or together with one or many human players or designers. A key term here is “content”. In our definition, content is most of what is contained in a game: levels, maps, game rules, textures, stories, items, quests, music, weapons, vehicles, characters, etc.»

Togelius Julian, Shaker Noor, Nielsen Mark J.: Procedural Content Generation in Games. A Textbook and Overview of current Research. Springer (2016) S. 1

Prozedurale Generierung gewinnt zunehmend an Bedeutung und kann, wie bspw. No Man’s Sky verdeutlicht, inzwischen für die Generierung ganzer Spielwelten genutzt werden. Sie wird dort genutzt, wo Inhalte nicht bereits zu Beginn des Games geladen werden müssen, sondern erst, wenn der Spieler betreffende Inhalte wahrnimmt oder mit ihnen interagiert. Dieses Vorgehen optimiert die Rechenleistung und regelt die computerinternen Ressourcen-Handhabung.

Im Gegensatz zum manuellen Designprozess, welchen Mihajlo Nenad ebenfalls als Generierung versteht, hat prozedurale Generierung den Vorteil, quasi kurz vor dem Moment zu wirken, in dem das Designresultat im Spiel wichtig ist.


Das Game Rogue (1980) gilt als eines der ersten Games, welches sich prozedurale Weltengenerierung zu Nutze machte. Aus heutiger Sicht sieht diese Welt grafisch stark reduziert aus. Die Verliesse, die der Spieler (@-Symbol) erforscht (engl. to crawl = kriechen, krabbeln) und die im Englischen als Dungeons bezeichnet werden, bestehen, wie die restlichen Elemente, aus Textsymbolen. Der Spielstand kann im Originaltitel nicht gespeichert werden, da die Spielwelt jedes Mal neu, prozedural generiert wird. Ein Weg dies heute zu umgehen besteht darin, denselben Seed zu verwenden oder diesen abzuspeichern.

Ein sogenannter Seed (von engl. Samen) bildet den Startwert für die Generierung. Der Seed kann dabei verschiedene Formen haben. Beispiele für einen Seed sind:


Ganze Zahlen: 1, 2, 24, 678 ...

Dezimalzahlen: 0.1, 0.5, 7.934 ...

Buchstaben: a, b, C, D ...

Mehrere Buchstaben: abc, hallo, ThEsiS

Daten/Uhrzeit: 30.05.2018, 23:15:30


Dieser Seed fungiert als Ausgangswert für ein Regelwerk, welches ein Mensch zuvor an einem Computer programmiert hat. Ein solches Regelwerk für ein generiertes Rechteck könnte wie folgt lauten:


Regel 1: Seed + Seed2 = Breite des Rechtecks

Regel 2: (Seed - 1) + Seed2 = Höhe des Rechtecks

Regel 3: falls Seed > 3 = Rechteck blau gefüllt


Wie beim Rechteck können also Inhalte vom Computer selbstständig ausgegeben werden. Solche Inhalte können, je nach einprogrammiertem Regelwerk, sehr komplexe Formen annehmen. Nebst der visuellen Form von Objekten, lassen sich auch Geschichten (Stories) und Eigenschaften von Spielinhalten auf dieselbe Weise prozedural generieren.

Game vs. Play

Weist ein Spiel keine konkreten Regeln auf und baut stattdessen auf einer reinen Erfahrung des Nutzers im digitalen Raum, spricht man nicht mehr von einem «Game» sondern von «Play».

Kohärenz

Kohärenz der Bildsprache wird in Mihajlo Nenad’s Arbeit als zusammenhängende (einheitliche) Gestaltung, stilisiertes Design, verstanden. Eine visuell nicht kohärente, also nicht einheitlich gestaltete Welt, führt in der Regel zu einer ästhetisch weniger anregenden, visuellen Erfahrung des Games.


David O’Reilly schreibt in seinem Essay Basic Animation Aesthetics zum Schlagwort Kohärenz:

«My central belief is that the key to aesthetics is coherence. In 3d we essentially create artificial models of worlds, I contend that what makes these worlds believable is simply how coherent they are; how all the elements tie together under a set of rules which govern them consistently. This coherence spreads to all areas of a film; dialogue, design, sound, music, movement etc. Together they create a feedback-loop which reaffirms that what we are looking at is true. The human eye wants this aesthetic harmony.»
O’Reilly, David: Basic Animation Aesthetics (2009) S.2

Der Designer des Games oder bei grossen Produktionen der Artdirector der Spieleentwicklungsfirma, legt die Regeln der Gestaltung fest und überprüft stetig auf dessen visuelle Kohärenz. Nebst der visuellen Kohärenz muss ein Designer natürlich auch die Story des Spiels in seinen Entscheidungen mitberücksichtigen.

Labyrinth-Prinzipien

Der wohl bedeutendste und einleuchtendste Anwendungsbereich für prozedurale Generierung in der Spieleentwicklung ist überall dort, wo ein einprogrammiertes Regelwerk in Form eines oder mehrerer Algorithmen, in kürzerer Zeit oder sehr viel einfacher mehr funktionierende Resultate hervorbringen kann, als menschliche Designer bei manueller Arbeit. Beispielhaft dafür sind Projekte, bei denen Spieler dasselbe Spielprinzip auf unendlich viele Ausgangssituationen anwenden können. Nimmt man zum Beispiel einfache, zweidimensionale Labyrinthe, so könnte ein Programm geschrieben werden, welches prozedural unter der Regel (Labyrinthgrösse = X Mal Y Pixel, 1 Eingang, 1 Ausgang, 1 Weg von Eingang zu Ausgang, Seed = Anzahl Irrwege) theoretisch unendlich viele Labyrinthe erstellen kann.


Solche Labyrinth-Prinzipien werden in vielen Dungeon-Spielen (Games bei welchen sich der Spieler durch ein Verlies bis zum Ziel durchkämpft) in weit komplexerer Form angewendet.

Das Game GenoTerra hat Mihajlo Nenad mit der Spiel-Engine Unity entwickelt. Die prozedurale Generierung der Landschaft basiert auf einem Open-Source Code von Sebastian Lague. Die Programmiersprache des Projektes ist C# (C Sharp). Für die Vegetationsgenerierung kommt human-agent Proc.Gen zum Einsatz. Bei der human-agent Proc.Gen agiert anstelle oder ergänzend zu AI-, bzw. no-agent Proc.Gen ein Mensch als Evaluationsinstanz. In der Regel ist diese Person ein Designer, der die Resultate verwenden, verwerfen oder auf diversen Wegen weiter manipulieren kann.


Die Ausgangsformen für jegliche Vegetation in GenoTerra sind mit dem Shape-Generator-Tool entstanden, die in einem zweiten Schritt manuell bis zum finalen Asset (Spielbestandteil) ausgearbeitet wurden.

Die Story von GenoTerra soll dem Designer die Möglichkeit bieten, eine Spielwelt auf ihre visuelle Kohärenz hin zu bearbeiten. Um dies zu ermöglichen wurde als Szenerie ein erdähnlicher Planet gewählt, um ein Science-Fiction-Setting zu ermöglichen. Beim Designen dieser Planetenumgebung können physikalische Gegebenheiten ausser Acht gelassen und biologisch «unmögliche» Wesen, sprich Vegetation-, und Landschaftsformen kreiert werden.

Mihajlo Nenad hat mit seinem Prototypen GenoTerra versucht eine Methode zu entwickeln, bei der die Vorteile von prozeduraler Generierung Designer so unterstützen kann, dass diese schneller und einfacher kohärente Spiel-, bzw. Bildwelten in Open-World-Games entwickeln können.

Video game prototype GenoTerra

Mentorat:

Dr. des. Ralf Michel

, Studio Integrative Design

Réne Bauer

, Leiter der MA-Vertiefung Game Design, ZHdK