Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Image Modified

vonTeam: T. Lamping, I. Kraft, M. Bösling

Grundidee
Anchor
Grundidee
Grundidee

Unsere Grundidee war

es, ein klassisches Rollenspiel

die Entwicklung eines klassischen Rollenspiels im Stil

vom alten Zelda zu entwickeln. Des weiteren haben wir uns überlegt alle Grafiken selber zu

alter Zelda-Spiele. Ebenso wollten wir alle Grafiken selbst erstellen, um auch in diesem Bereich Erfahrungen zu

Sammeln

sammeln.

Die Motivation im Rollenspiel liegt unter anderem

beim

im Erkunden und Sammeln von Erfahrung und Gegenständen. Dies bedeutet einen großen Aufwand im Bereich des Grafikdesigns. Um diesen Aufwand etwas geringer zu halten und

dem

Spieler trotzdem zu motivieren, mussten wir uns noch mit weiteren Motivationskonzepten auseinandersetzen.

Als Hauptmotivation sollte uns

"die

„die Verhinderung eines andern

Zieles"

Zieles“ dienen. Das

bedeutet

bedeutete in unserem Fall, dass der

"Endgegner"

Endboss das Dorf überfallen will und wir ihn aufhalten müssen. Damit

soll der

sollen die Spieler dazu bewegt werden, dass Spiel bis zum Schluss zu spielen, denn ohne

ihn

sie wird

schließlich

das Dorf vernichtet.

Eine weitere Idee war es, das Dorf

Das Dorf fungiert als Basis

zu nehmen

, von

dem

der aus Missionen gestartet werden

können

. Diese Missionen führen den Spieler zu unterschiedlichen Herausforderungen, wie z.B.

das lösen

dem Lösen von Rätseln.
 

Konzept
Anchor
Konzept
Konzept

Genre: Rollenspiel

Darstellung: 2D,

top

Top-Down-

down

Ansicht

Zielgruppe: Gelegenheitsspieler

Spielewelt: Fantasy, frühes Mittelalter

Gameplay / Motivation: Erkundung, Kampf, Dorf retten

     Das Grundkonzept ist, dass Beschützen
  • Grundkonzept: Beschütze Bewohner des Dorfes vor dem Plünderer.
  • Am Ende gibt es einen
  • "
  • Bosskampf
  • "
  • .
  • Der
  • Endkampf
  • Bosskampf wird leichter
  • um so mehr wir uns darauf vorbereitet haben.
  • , je mehr Spieler sich darauf vorbereiten (Schwertquest).
  • Vorbereiten
  • können wir uns, in dem wir "Gegenstände" sammeln. (Schwert Sammeln)
  • erfolgt durch Sammeln von Gegenständen (Schwert sammeln).
  • Es gibt
  • verschiedene Welten in den wir Missionen lösen. (die Schwertinsel)
 
  • Missionen in verschiedenen Welten (Schwertinsel).

 

 

 

 

Umsetzung

Umsetzung und verwendete Software
Anchor
Umsetzung
Umsetzung

Es gab Überlegungen auf den

"

RPG-Maker

"

zurückzugreifen, oder in Unity mithilfe von C# selber zu

Programmieren

programmieren. Wir haben uns

bei dem

für den Kompromiss zwischen Arbeitsaufwand und Freiheit der Gestaltung für Unity entschieden. Des

weiteren

Weiteren haben wir zur Erstellung der Grafiken Inkscape benutzt

und zur gleichzeitigen Bearbeitung in Unity

. Zur Versionskontrolle haben wir Github verwendet.

Eine

Hier einmal eine vollständige Auflistung der

Verwendeten Software ist am Ende aufgeführt.

verwendeten Software:

  • Adobe Photoshop
  • Gimp
  • Inkscape
  • Unity
  • Github
  • Discord
  • Spriter
  • Audacity
  • Tiled
  • Tiles2Unity
  • Scribbus
  • Magix Music Maker

 

 

Ein

Playthrough
Anchor
Playthrough
Playthrough

 


Hier ein kompletter Playthrough des Spieles.

Widget Connector
width500
urlhttps://www.youtube.com/watch?v=t77IpUYMiQU&feature=youtu.be
height300

 

Grafiken
Anchor
Grafiken
Grafiken

Ein Großteil der Arbeit

war es Grafiken zu erstellen

entfiel auf die Erstellung der Grafiken. Mit Inkscape, einem Programm zur Erstellung von

Vektrografiken, wurden nach verschiedenen

Vektorgrafiken, wurde versucht, Figuren nach Inspirationen aus dem Internet oder anderen Computerspielen

, versucht Figuren

zu erstellen.

Der

Ein Vorteil der

Vektrografik

Vektorgrafik war

es

, dass wir uns nicht auf eine spezielle Auflösung bei der Erstellung festlegen mussten.

 

Es wurden 10

Animierte

animierte Figuren erstellt

, mit jeweils der Bewegungs und idle (Leerlauf) Animation

. Diese hatten jeweils die Bewegungs- und Idle- (Leerlauf-)Animationen. Die Hauptfigur

bekahm

bekam noch 3 weitere

Animation

Animationen mit unterschiedlichen Waffen

. (

: die Axt zum Baumfällen, das Holzschwert

, Stahlschwert)

als Anfangswaffe und das Stahlschwert.

Die 12er-Sprite-Sheets wurden dabei direkt in Inkscape erstellt und die

größeren

Größeren mit Spriter als Bone-Animation umgesetzt.

Im folgenden ein paar

Des Weiteren hatten wir beschlossen, uns alle einmal an den Grafiken zu versuchen, was an den leicht unterschiedlichen Stilen zu erkennen ist. Im Prototyp sahen wir dies als vertretbar an. Für ein fertiges Endprodukt würden wir uns genauer an einen Stil halten.

Im Folgenden einige Beispiele.

 

 

Image Removed

 

Image Removed

Image Removed

Der Protagonist von Village Defender.

Image Added

.

 

 

Für die Animation mussten für alle 4 Richtungen Sprite Sheets erstellt werden.

Genau so

Genauso für den Wechsel der Ausrüstung. Hier hat sich der Vorteil von Spriter als Bone

Animations

-Animation-Programm gezeigt, da man hier Gegenstände leichter ersetzen kann und die selbe Animation beibehält.

Image Added

 

 

 

Zu Beginn des Projektes sah der Held noch etwas anders aus

, aber

die Farben aber sind geblieben.

Image Added

Die Dorfbewohner und Gegner

Die Dorfbewohner und Gegner haben weniger komplexe Sprite

Sheet's

Sheets für ihre Animation bekommen, da sie nicht

dauernd

ständig im Fokus sind

. Des weiteren haben wir beschlossen, uns alle einmal an den Grafiken zu versuchen, was in leicht unterschiedlichen Stilen zu erkennen ist. Im Prototypen sahen wir dies als vertretbar an, für ein fertiges Endprodukt, würden wir uns genauer an einem Stil halten

.

 

 

 

 

Image Added

Image Added


Image Added

Image Added

Sonstige Grafiken

Hier einige weitere Beispiele für von uns erstellte Grafiken.

 

 

Image RemovedImage Added

Image Removed 

 

(Text)

Image Added

Gegenstände

Bäume pflanzen etc.

Image Added

Image Added

Image Added

 

  

Image Added

 

Die Spielwelt
Anchor
Spielwelt
Spielwelt

Abgesehen von

Neben der Erstellung der Figuren

musste auch eine Vielzahl an

mussten noch weitere Grafiken für die Welt erstellt werden. Dabei wurde der Boden als sogenannte Tilemap erstellt, wofür ein Tileset gebraucht wurde. Die anderen Objekte wie Häuser, Pflanzen,

Gegenstände wie

Schilder, Brunnen und Brücke wurden als Objekte eingesetzt. Insgesammt kommt man bei den Objekten auf etwa

auf

50 Grafiken und ca. 10 Tilsets für Land, Wasser, Wüste, Steine

, etc

usw.

Des weitern

Weiterhin gibt es kleinere Animationen für das Baumfällen,

Toröffnen oder z.B.

das Öffnen des Tores auf der Schwertinsel und für den Springbrunnen auf dem Marktplatz.

 

 

Image Removed

Image Removed

Image Removed

Das Dorf auf , in dem sich der Spieler frei bewegen kann.

Image Added

 

Eine Einer der 3 Hauptzonen. Hier auf dem Marktplatz findet der Endkampf statt.

Image Added

Das Waldgebiet und erste Quest um um für die erste Aufgabe, Holz zu sammeln. Mit einem Ein Ork auf patrouille und Gegnern patrouilliert und Gegner verstecken sich hinter den Bäumen.

 

Image Removed

 

Image Removed

Image RemovedImage Added

Die Schwertinsel mit seinem dem Rätsel.

Image Added

Ein Tileset in128px mal 128px von 128 x 128 Pixeln für Tiled erstellt, um die Karte zu Generierengenerieren. Jeder Grashalm ist dabei als Vektor gespeichert, was das System schonmal ins Schwitzen bringen schon einmal auslasten kann, solange wenn man es nicht als png exportiert.

Image Added

 

 

Ein Haus mit seinen Einzelteilen.

Image Added

Der Spielablauf
Anchor
Spielablauf
Spielablauf

Im Folgenden Bild sehen wir eine Schematische


Hier die schematische Darstellung des Spielablaufes. Um das Ziel (rot) zu erreichen, müssen wir erst alle Aufgaben (grün) lösen.

Image Added

 

 

Image Removed

 

 

 

 

Spielablauf

Kampf, Rätsel, Quest

(Text)

Am Anfang findet der Spieler sich im Dorf wieder. Dort erfährt er, dass er ein Schwert finden muss, um den Endboss besiegen zu können. Dieses befindet sich auf einer Insel, welche nur mit einer Brücke erreicht werden kann. Um die Brücke zu reparieren, wird Holz benötigt.

So ist die erste Aufgabe des Spielers, durch Baumfällen genügend Holz im Wald zu sammeln. Dabei stellen sich ihm aber Gegner in dem Weg, die er mit seinem Holzschwert bekämpfen kann.

Ist die Brücke repariert, gelangt der Spieler auf die Insel, wo das Schwert zu finden ist. Das Schwert wiederum befindet sich hinter einem Tor, welches nur mit einem Juwel geöffnet werden kann.

Um an das Juwel zu kommen, muss ein Rätsel gelöst werden. Dabei geht es darum, Steine zu verschieben und den richtigen Weg (Labyrinth) zum Juwel zu finden.

Sobald der Spieler das Schwert hat, geht es zurück zum Dorf, wo der Endboss auf dem Marktplatz wartet. Dieser muss nun besiegt werden, um das Spiel erfolgreich zu beenden.

 

 

 

 

 

Scripte
Anchor
Scripte
Scripte

Der

andere

anderer Großteil der Arbeit war

es

die Erstellung der Scripte

zu erstellen

. Wir haben

insgesammt

insgesamt 35 Scripte geschrieben

mit großen Funktionen, wie

, welche jeweils eine bestimmte Funktion erfüllen. Darunter fallen z.B. das Inventar- oder Dialog-System

. Oder nur kleine, wie

und ein Trigger, welcher z.B.

ein Trigger für den Endkampf und das Erscheinen des Endgegners. 

den Endboss unter bestimmten Bedingungen erscheinen lässt.

 

 

Image Removed

Image Removed

Image Removed

Das Inventar-System dient der Anzeige für Questaufgaben, wie z.B. dem Sammeln vom von Holz. Das Inventar kann man öffnen und schließen. Für zukünftige Versionen hat das Inventar größeren Platz bekommen, als es momentan im Spiel benötigt. Auch der x-Button ist noch nicht implementiert und dient nur als Platzhalter für spätere Funktionen, um das Inventar gegebenfalls ggf. zu leeren.

Image Added

Mit dem Dialog-System können jedem Npc NPC (Non Player Character) eine Anzahl an Sätzen zugeordnet werden. Je nach Questfortschritt Quest-Fortschritt werden unterschiedliche Antworten aus den gespeicherten Sätzen gegeben.

Image Added

Ein teleportations Teleportations-Script. um zwischen verschiedenen Ein- und Ausgängen zu Springenspringen. Dies Funktioniert funktioniert zwischen Zwei zwei verschiedenen Szenen , so wie und auch innerhalb einer Szene.

 

 

 

 

 

Image Added

Fazit
Anchor
Fazit
Fazit

Schwierigkeiten gab es bei der größe Größe des Projektes. Die Anzahl an Grafiken, Animationen und Scripten wuchs während der Entwicklung immer schneller an und bald war klar, dass wir unsere Vorstellungen nicht so Umsetzen könnenumsetzen konnten, wie wir gerne wolltenes geplant war.

Wir haben uns deshalb daran Orientiert orientiert einen Prototypen Prototyp zu entwerfen, der in sich abgeschlossen sein soll. Für Unity gibt es viele Scriptbeispiele und Tutorials, doch mussten diese erst erlernt und auf unser Projekt angewendet werden.

Durch den verzicht Verzicht auf fertige Scripte und Grafiken und die selbstständige Erarbeitung dieser, haben wir viel Erfahrungen gesammelt, die jedoch auf kosten von anderen Bereichen gegangen sind. In so fern, wurde bei unserem Projekt, konnten wir viele Erfahrungen sammeln, da alles selbst erstellt werden musste. Deshalb lag der Fokus eher auf den dem Weg der Erstellung , als auf das fertige Produkt gelegt.

 

und nicht auf einem fertigen Produkt.

Im Folgenden zwei Folgend ein paar Beispiele von Problemen, die während des Projektes aufgetreten sind.

 

 

Image Modified

 

Teleport ?

Dialogsystem ?

Inventarsystem ?

 

Text

 

Das

Layerorder

Problem mit der Layer Order führte dazu, dass Objekte in

Falscher Reinfolge

falscher Reihenfolge dargestellt werden.

Z

Wenn der Spieler z.B.

wenn der Spieler

um einen Baum läuft, ist er mal vor

ihm und dann wieder hinter ihm.

dem Baum und dann dahinter. Hier haben wir uns für eine einfache Lösung entschieden, so dass der Spieler gar nicht mehr vor dem Baum gehen kann. Dazu wurde der Collider des Baums vergrößert.

Probleme mit dem Dialog-System

Image Added

 

 

 

Text

 

 

Das Dialogsystem war eine größere Herausforderung als erwartet. Die erste Überlegung war es, eine XML-Datenbank zu erstellen. Es stellte sich aber heraus, dass für den Prototyp eine komplexe Baumstruktur mit Rede- und Antwortsystem zu aufwändig ist. Außerdem gibt es im Prototyp noch keine Situation, in der wir so ein System brauchen. Deshalb haben wir uns für eine einfachere Version entschieden und die Texte dem jeweiligen Objekt einzeln im Script zugewiesen.

So ist es möglich, dass je nach Weltereignissen (z.B. Quest-Fortschritt) die NPC unterschiedliche Antworten parat haben.

Zeitaufwand
Anchor
Zeitaufwand
Zeitaufwand

Folgend eine grobe Übersicht über die Aufgewendeten aufgewendeten Stunden für den jeweiligen Bereich.

 

 

PersonThemenGesamtzeit in Stunden
M. BöslingTeambesprechungen
u.
und Organisation20 + 20
 Grafik und Design80
 Animationen20
 Scripte150
 Sound10
I. KraftTeambesprechungen
u.
und Organisation
 
30
 

Grafik und Design

 

  • Einarbeitung
  • Bewohner
  • Tiles
  • Häuser und Marktplatz
  • Natur
  • Nachträg. Änderungen

180

  • 30
  • 35
  • 20
  • 55
  • 30
  • 10
 Animationen
 
55
 Scripte
 
30
 Sound
 
5
T. LampingTeambesprechungen
u.
und Organisation30
 Grafik und Design30
 Animationen10
 

Scripte

200
  • Bugfixes
 
  • Schieberätsel
Sound
  • Gegner KI
30
  • Inventar
 
  • Kampfsystem

 

 

 

Vollständige Auflistung der verwendeten Software
  • Quest für Schwertinsel
  • Erster Prototyp
  • Bäume fällen + Holz spawn

200

  • 70
  • 30
  • 25
  • 20
  • 20
  • 15
  • 15
  • 5
 Sound30

 

AnchorSoftwareSoftware

 

 

  • Adobe Photoshop
  • Gimp
  • Inkscape
  • Unity
  • Github
  • Discord
  • Spriter
  • Audacity
  • Tiled
  • Tiles2Unity
  • Scribbus
  • Magix Music Maker