Grundlagen Spielentwicklung

Diese Seite fasst wichtige Grundlagen zum Thema Spielentwicklung zusammen: Scripts schreiben – Spielmechaniken entwickeln – Grafiken und Sounds erstellen. Diese Fähigkeiten werden mit Übungen gefestigt und auf den darauffolgenden Seiten eingesetzt.

Arbeitsmittel

Info für Lehrende

Eingeloggte Lehrer*innen werden hier durch Unterrichtsvorschläge und Zusatzinformationen zur Seite und zu Lernzielen unterstützt.
Mehr zu SchuBu+

Leveldesign

Der Kern eines Spiels sind die Regeln und Möglichkeiten, die den Spielerinnen und Spielern Herausforderungen bieten. Solche Herausforderungen, die angepasst werden, um die Spielschwierigkeit festzulegen, nennt man Spielmechaniken.

Die Aufgabe für Game-Designerinnen und Game-Designer ist es, interessante und lösbare Schwierigkeiten zu erfinden.
Popup: Ausgewogenes Spiel

Ausgewogenes Spiel

Erfinde innerhalb von fünf Minuten ein gut ausgewogenes Spiel in der Game-Engine! Probier das Spiel zwischendurch immer wieder aus!

Balancing

Wenn ein Spiel so schwer ist, dass nur wenige Menschen es schaffen, weil alle anderen schon vorher aufgegeben haben oder wenn es so leicht ist, dass man es sofort bewältigt, dann ist es unausgewogen. Den Vorgang, ein Spiel so zu gestalten, dass es ausgewogen ist, nennt man Balancing.

Illustration eines weiblichen Roboters, wie sie über Kissen und Lava auf einer Schnur balanciert.
Ein Spiel soll gut gebalanced sein.

Es ist ein guter Trick, ein Spiel zuerst viel zu leicht und dann viel zu schwer zu gestalten. So sieht man die zur Verfügung stehenden Möglichkeiten, um es gut auszubalancieren.

Popup: Schweres Spiel

Schweres Spiel

Erfinde innerhalb von fünf Minuten ein sehr schweres Spiel! Probier das Spiel zwischendurch immer wieder aus!

Wenn ein Spiel aus mehreren Levels besteht, dann sollte es im ersten Level leicht sein, im zweiten Level dann deutlich schwerer, dann wieder etwas leichter, … Insgesamt soll es langsam immer schwerer werden.

Art

Die Spielwelt und die Situation, in der ein Spiel beginnt, nennt man Setting. Es ist eines der wesentlichen Elemente der Game-Story. Mithilfe von Grafik und Sound wird diese Spielwelt für die Spielerinnen und Spieler klar.

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Ein Setting soll Spielerinnen und Spielern drohende Gefahren und mögliche Abwehrmittel aufzeigen.

Grafik

Grafiken bestimmen wie ein Videospiel aussieht und erzählen einen Teil der Game-Story. Grafikerinnen und Grafiker arbeiten in vielen Bereichen:

Character Design

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Grafische Gestaltung der Spielfiguren.

Interface Design

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Gestaltung der Spielanzeigen und der Spielbedienung.

Concept-Art

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Ersten Zeichnungen, wie ein Spiel, die Charaktäre, die Welt aussehen wird.

Level-Design

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Anordnung der Spielelemente und Herausforderungen in einem Spielabschnitt.

Texture-Art

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Gestaltung der Oberflächen von allen Elementen eines Spiels.

3D-Art

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Gestaltung der dreidimensionalen Modelle von Dingen und Figuren.

Animation

Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang. Schwarz-weiß Zeichnung eines stürmischen Friedhods und einer mysteriösen Person in einem Kapuzenumhang.
Gestaltung der Bewegungen von Dingen und Figuren.

Sounddesign

Zur Tongestaltung (dem Sounddesign) gehören:

  • Musik: ein Soundtrack zum Spannungsaufbau, um Atmosphäre und Stimmung zu erzeugen (z. B. wird die Musik gruselig, wenn man sich einer Gefahr nähert)
  • Atmo: an einen Ort gebundenes Hintergrundgeräusch, das in der Schleife läuft. Es sollte sehr zurückhaltend gestaltet werden. Was hört man an einem Ort, wenn es still ist? (Beispiele: Wind in der Einsamkeit, Herzklopfen in der Introspektive, Verkehr in der Stadt, Regen)
  • Geräusche und Effekte: um Ereignisse und Aktionen hören zu können (z. B. Geräusche von splitterndem Glas, von quietschenden Reifen oder Anstoßen an einer Wand)

Für das Sounddesign kann man auf kostenlose Sounddatenbanken wie z. B. von Pixabay zurückgreifen. Bei der Auswahl muss man darauf achten, dass Sounds und Musik unter einer Creative-Commons-Lizenz veröffentlicht wurden.

Sounds kann man mit Mikrofon und Soundrekorder auch selbst aufnehmen. Ein beliebtes Programm dafür ist der freie Audioeditor und Audiorekorder Audacity, da man mit diesem die Sounds danach auch bearbeiten kann.

Man sieht die Benutzeransicht von Audacity.
Audacity

Partnerarbeit

  1. Klickt auf den Button für ein zufälliges Setting!
    Aufgabe

    Spiel-Setting

  2. Erstellt mit GIMP eine einfache Zeichnung der beiden exakt runden Spielfiguren in einer Ansicht von oben und speichert es als png-Bild ab! Es muss genau folgende Auflösung haben: 62 x 62 Pixel.
  3. Öffnet die GamBu – Game-Engine und gestaltet ein kleines Level für das zufällig ausgewählte Setting!
    • Stellt die Welt auf Steuerung mit Pfeiltasten! Klickt danach auf Assets, dann auf Texturen! Klickt auf die Maus1 und ladet eure erste Spielfigur hoch! Eure zweite Spielfigur soll Maus2 ersetzen.
    • Erstellt anschließend eine kleine Rennstrecke aus Wand-Teilen mit einem Ziel am Schluss und zwei Elementen am Anfang!
    Popup: Wiesen-Wette

    Wiesen-Wette

    Probiert die Wiesen-Wette gemeinsam aus! Die zweite Maus wird mit WASD gesteuert.
  4. Versucht folgende Sounds zu produzieren und fügt sie anschließend in euer Spiel ein:
    • das Geräusch des Events (siehe am Ende eurer Setting-Beschreibung)
    • eine Atmo (höchstens 30 Sekunden)
    Popup: Wiesen-Wette mit Sounds

    Wiesen-Wette mit Sounds

    Importiert die erstellten Sounds für Event und Atmo in euer Spiel! Klickt dafür auf Assets und dann Sounds! Am Schluss testet das Spiel wieder gemeinsam!

Programmieren

Ein Computerprogramm ist eine haargenaue Anleitung für einen Computer, was er tun soll. Computerbefehle sind in Programmiersprache verfasst, damit der Computer auch versteht, was man ihm befiehlt.

Illustration eines Roboters, wie er versucht mit binärem Code einen verwirrt dreinschauenden Computer zu programmieren.
Sprachenlernen zahlt sich aus.

GamBu-Script

GamBu-Script ist die Scriptsprache, mit der man Spielelemente in der SchuBu-Game-Engine GamBu programmieren kann. Für jedes runde Element in der GamBu-Game-Engine, also , , , und , kann man ein Script schreiben, das bestimmt, was das Element kann, macht und wie es reagiert.

 + Script =  Bot

Alles in GamBu-Script wird kleingeschrieben.

Ein Befehl lautet zum Beispiel:

bei berührung sage "Autsch!" (In Anführungszeichen darf auch großgeschrieben werden.)

Bei Berührung sage: „Autsch!“ würde also nicht funktionieren.

GamBu Konsole
Spielen
Gewonnen!
Bots starten?
Verloren!
Der Seppibär is los!
Assets
Texturen Sounds
Wenn alle Texturen, Bilder und Grafiken von dir selbst erstellt, gemalt oder gezeichnet worden sind, dann stehen sie bei einer Veröffentlichung automatisch unter CC BY-ND. Außer den selbst gemachten dürfen auch Grafiken enthalten sein, die ausdrücklich OHNE NAMENSNENNUNG frei verwendbar sind, dann stehen alle Grafiken, auch deine eigenen, nach Veröffentlichung unter CC0.
Die Texturen sollten genau 62 x 62 Pixel groß sein
Wenn alle Musikstücke und Geräusche von dir selbst erstellt, gesungen, gespielt und komponiert worden sind, dann stehen sie bei einer Veröffentlichung automatisch unter CC BY-ND. Außer den selbst gemachten dürfen auch Sounds enthalten sein, die ausdrücklich OHNE NAMENSNENNUNG frei verwendbar sind, dann stehen alle Sounds, auch deine eigenen, nach Veröffentlichung unter CC0.
bei berührung sage "Autsch!"

Programmiere die Schlange so, dass sie sich genauso wie die Schlange in der Vorlage bewegt!

Tipp: Klicke auf den Bot, um ihn zu programmieren. Im Skriptfenster steht ganz rechts BEFEHLE. Das ist eine Liste der wichtigsten Skriptbefehle. Du brauchst für dieses Skript nur vier verschiedene Befehle: wiederhole, block, hinauf und hinunter. Definiere zuerst einen Block, der die Schlange einmal hinunter- und hinaufgehen lässt. Nenne diesen Block patrouilliere und wiederhole seine Ausführung 100 sekunden lang! In diesem Block befinden sich zwei Zeilen. In der ersten Zeile wird zwei Sekunden der Befehl hinunter wiederholt, in der zweiten Zeile der Befehl hinauf.

Info für Lehrende
GamBu Konsole
Spielen
Gewonnen!
Bots starten?
Verloren!
Der Seppibär is los!
Patrouille – Vorlage
GamBu Konsole
Spielen
Gewonnen!
Bots starten?
Verloren!
Der Seppibär is los!
Patrouille – Aufgabe

Hacks und Tricks

Schleifen und Verzweigungen

Syntax
Beispiel
Anmerkung
sage "Ein beliebiger Text"
sage "Halli Hallo"
Der Bot sagt: „Halli Hallo” in einer Sprechblase.
sage ""
sage ""
Die Sprechblase verschwindet.
hinauf x
hinauf 100
Der Bot bewegt sich mit Kraft 100 nach oben.
hinunter x
hinunter 0.5
0.5 ist eine sehr kleine Kraft hinunter.
links x
links 50
50 ist eine etwas kleinere Kraft als 100 nach links.
rechts x
rechts 10
10 als Kraft nach rechts ist auch möglich.
wiederhole x sekunden [Befehl]
wiederhole 10 sekunden hinauf 1
Der Bot bewegt sich 10 Sekunden lang langsam nach oben.
wiederhole x mal [Befehl]
wiederhole 3 mal hinunter 200
3 Frames hintereinander beschleunigt der Bot sehr stark nach unten.
ich bin [Element-Typ]
ich bin ein schalter
Der Bot verwandelt sich in einen Schalter.
schaltwert von element n
schaltwert von element 1
Wenn das Element 1 eingeschaltet ist, ist der Schaltwert 1 sonst 0.
wenn [Bedingung wahr ist] dann [Befehl]
wenn schaltwert von element 35 = 1 dann sage "eingeschaltet!"
Falls in dem Moment, wenn das Script bei diesem Befehl ist, der Schalter eingeschaltet ist, dann sagt der Bot "eingeschaltet!".
wenn [Bedingung wahr ist] dann [Befehl] sonst [anderer Befehl]
wenn schaltwert von element 35 = 1 dann sage "eingeschaltet!" sonst sage "ausgeschaltet"
Der Teil „sonst [anderer Befehl]“ kann auch weggelassen werden.

Funktionen und Events

Syntax
Beispiel
Anmerkung
block [blockname] [p1, p2, ..] [befehl 1] [anderer Befehl] [beliebig viele weitere Befehle] blockende
block schraeg x,y rechts x hinauf y blockende
p1, p2 sind Parameter. Man kann eigene Namen erfinden und sie im Block wie Variablen verwenden.
[blockname] [w1, w2]
schraeg 1,1 schraeg 10, -10
Mit diesem Aufruf des eigenen Blocks mit dem Namen „schraeg” bewegt sich der Bot ein bisschen nach rechts oben oder im zweiten Beispiel schneller nach rechts unten.
[variablenname] = [Information]
alter = 12 satz = "Mein Freund ist ein Bot"
Der Variablenname kann alles außer ein GamBu-Script-Befehlswort sein.
bei berührung von [Elementtyp oder ein Element] [Befehl]
bei berührung von spielfigur sage "Hallo" bei berührung von wand sage "aua"
Das Event wird bei Berührung ausgelöst
bei sicht von [Elementtyp oder ein Element] [Befehl]
bei sicht von tod zurück 100 bei sicht von element 10 sage "Ohh, mein Lieblings Wuzi"
Das Event wird bei Sicht ausgelöst
richtung element n
richtung element 103
Der Bot dreht sich ein kleines Stück in die Richtung zum Element.
richtung element n, kraft
richtung element 103, 2
Der Bot dreht sich ein kleines Stück in die Richtung zum Element und bewegt sich hin.
vor x
vor 10
Der Bot macht einen Sprung vor.
zurück x
zurück 10
Der Bot macht einen Sprung zurück.
entfernung von element x
wenn entfernung von element 1 < 100 dann sage "Ich komme näher."
Eine solche wenn .. dann - Konstruktion muss in einer Schleife wiederholt werden, damit der Bot im richtigen Augenblick reagieren kann.
log "text" + "text2" + x
log "Der Wert der Variable my_v = " + my_v
Mit log kann man Texte und Werte in die GamBu-Konsole schreiben. Das hilft beim Fehlerfinden. Mit + werden mehrere Texte zu einem zusammengefasst.

7. Grundlagen Spielentwicklung
Tools
Zeit
Zufall
Zeigen
Rechnen
Antworten
Quiz
Über SchuBu
1.1.5.a
Meine Lösung prüfen
später prüfen
Tipp 1
Tipp 2
Lösung
   
Ok
erledigt
Juhu!
Du hast alle Aufgaben abgeschlossen.
Dein Ergebnis:
Genug für heute
leider falsch
Oje!
Das ist leider nicht ganz richtig.
Noch einmal versuchen
richtig
Bravo!
Deine Lösung ist richtig.
Nächste Aufgabe