In dem Seminar „Untersuchung und Implementierung spezifischer Anforderungen verschiedener Game-Genres für Game-Engines“ im Master Game Engineering und Visual Computing ging es darum, für allgemein wiederverwendbare Teile eines Spiels eine Bibliothek zu schreiben und diese in einem beispielhaften Spiel zum Einsatz zu bringen. Hierbei entstanden je eine Bibliothek für das Item-System, dem Dialog- und Story-System und dem System für die künstliche Intelligenz.
Der Hauptcharakter steht im Außenbereich vor einigen einsammelbaren Gegenständen in Form von Kräutern. Der Hauptcharakter steht vor einer schweren Entscheidung. Kann er Kezan vertrauen? Ist töten der richtige Weg? Die Entscheidung hat starken Einfluss auf den Verlauf der Geschichte! Der Hauptcharakter interagiert mit dem Questgeber „Kezan“ und muss eine Auswahl treffen. Übersicht über das Schlossinnere, in dem mehrere feindliche Diener unterwegs sind. Kommt er ihnen zu nah, beginnen sie ihn zu sagen und das Spiel ist verloren. Der Hauptcharakter hat die Waffe in den Waffenslot gezogen und sie damit ausgerüstet. Der Hauptcharakter hat eine Waffe eingesammelt, die sich in seinem Inventar befindet. Übersicht über die Benutzeroberfläche. In der oberen linken Ecke befindet sich die Lebensanzeige und die Werte des Charakters. Mittig im unteren Bereich ist das Dialogfenster und in der oberen rechten Ecke liegt die Anzeige für die aktuelle Aufgabe.
Kurzbeschreibung
KI-System:
Mit der Bibliothek können grundlegende Techniken aus dem Bereich der künstlichen Intelligenz umgesetzt werden. Dies umfasst das Generieren eines Navigationsgraphen, um mithilfe von dem Wegfindungsalgorithmus A* den kürzesten Weg zu bestimmen. Durch Steering Behaviour können NPCs entlang des errechneten Pfades navigiert werden. Die Bibliothek beinhaltet außerdem Implementierungen für grundsätzlichen Verhaltensweisen von NPCs wie das Verfolgen eines Ziels, das Weglaufen vor einer Gefahr sowie das Patrouillieren entlang eines gegebenen Pfades, die mittels Steering Behaviour und Finite State Machines umgesetzt sind. Wenn weitere Zustände oder Verhaltensweisen benötigt werden, können auf Basis der entsprechenden Klassen neue erzeugt werden.
Item-System:
Im Rahmen des Seminarprojekts wurde eine Bibliothek für Gegenstände in Spielen entwickelt. Hierbei wurde insbesondere auf die Erweiterbarkeit und Anpassbarkeit geachtet, so dass den Nutzern des Gegenstandssystems die Möglichkeit gegeben wird, die Bibliothek für spielspezifische Inhalte einzusetzen. Die Bibliothek bietet Schnittstellen, um eigene Gegenstände in einer JSON-Datei zu definieren. Das Verhalten eines Gegenstands wird dabei von Gegenstandseigenschaften bestimmt, welche der Nutzer mit wenigen Handgriffen selbst implementieren kann. Des Weiteren bietet die Bibliothek ein Inventar-, ein Attribut-, ein Crafting- und ein einfaches Beute(Loot)-System. Auch hier lassen sich die meisten Inhalte mittels einer JSON-Datei konfigurieren.
Dialog- und Story-System:
Die Erzählung von Geschichten in Spielen nimmt oftmals einen großen Stellenwert ein. Denn in der Regel wird die Geschichte im Spiel interaktiv erzählt, indem der Spieler Entscheidungen treffen kann, um den Ausgang der Geschichte zu beeinflussen. Im Seminarprojekt wurde hierfür ein Storymodul entwickelt, mit welchem der Nutzer unterschiedliche Erzählstränge und Entscheidungen mithilfe einer JSON-Datei modellieren kann. Allerdings sind viele Elemente einer Story vom speziellen Spiel abhängig. Aus diesem Grund müssen die Bedingungen der Übergänge der Story vom Nutzer selbst implementiert werden.
Zusätzlich wurde ein Dialogsystem entwickelt, um Gespräche zwischen NPCs und dem Spielercharakter entwerfen zu können. Hierbei kann in einer JSON-Datei der Dialog-Graph definiert werden, wobei auch Verzweigungen und Schleifen zulässig sind.
DeLoPoGa:
Lord Kezan van Hastus wurde vor langer Zeit von dem mächtigen Molokan entführt und dient ihm seit jeher als Nahrungsquelle! Es ist an dir ihn zu finden und aus seiner Gefangenschaft zu befreien. Sammele Waffen und Rüstungen, um dich gegen die Schergen des großen Molokan zu wappnen. Braue verschiedene Tränke aus Kräutern und sei immer auf der Hut, von keinem der feindlichen Diener erwischt zu werden. Doch kann man Kezan letzten Endes überhaupt trauen oder ist er vielleicht bereits von dem mächtigen Molokan verdorben worden? Deine Entscheidungen verändern den Verlauf und Ausgang der Geschichte bei dem vielleicht auch dein Schicksal auf dem Spiel steht!
- Arbeit vorgelegt am: 05.08.2019
- Betreuer: Prof. Dr. Bernd Dreier
- Durchgeführt: Untersuchung und Implementierung spezifischer Anforderungen verschiedener Game-Genres für Game-Engines, Masterseminar an der Fakultät für Informatik, Studiengang Game Engineering und Visual Computing
- Projektteam: Kevin Schliecker, Sara Muhziroglu, Fabian Gulde
- Email: kevin.a.schliecker@stud.hs-kempten.de, sara.muhziroglu@stud.hs-kempten.de, fabian.a.gulde@stud.hs-kempten.de
Quellenangabe
Icons und Texturen:
- Warcraft III – The Frozen Throne, Blizzard Entertainement
- www.hiveworkshop.com