Das beste Spiel
Auf dieser Seite erhalten Schülerinnen und Schüler die grundlegenden Informationen für ein Klassenprojekt, bei dem sie gemeinsam ein GamBu-Spiel mit mehreren Level erarbeiten. In Kleingruppen, mit der Arbeitsaufteilung Gamedesign, Art und Programmierung, entwickeln sie einen Prototypen.
Info für Lehrende
Mehr zu SchuBu+
Die Zielsetzung
Auf dieser und den nächsten zwei Seiten begleitet SchuBu das Entstehen eines digitalen Projekts. Alle Schülerinnen und Schüler einer Klasse sollen gemeinsam an einem großen Spiel arbeiten. Alle bisher gelernten Tools und Fähigkeiten dürfen eingesetzt werden.
Info für LehrendeEin gemeinsames großes Spiel
Es wird 3er-Gruppen geben, die jeweils ein Level des Spiels machen. Alle Level sind hintereinander spielbar. Wenn man ein Level erfolgreich schafft, wird das nächste geladen, bis man alle Level durchgespielt hat. Die ganze Klasse arbeitet gemeinsam an diesem großen Spiel.
Veröffentlichung in der Schulzeitung
Am Schluss wird das fertige Spiel in der Schulzeitung veröffentlicht, so dass alle Schülerinnen und Schüler der Schule und sogar außerhalb der Schule es spielen können.
Es ist sehr einfach, dass ein solches Projekt drei Jahre dauert und dann nicht fertig wird. Um das zu verhindern, gibt es einen genauen Ablauf, den alle einhalten müssen.
Es gelten deshalb auch keine typischen Gründe wie zum Beispiel:
- fehlende Mitarbeit einzelner Gruppenmitglieder
- technische Schwierigkeiten
Diese beiden Gründe treffen fast immer zu, man muss früh genug eine Lösung finden!
Das Ziel:
Wenn das allen klar ist, dann geht es jetzt los:
Gruppenbildung
Info für Lehrende-
Überlegt nun, wo eure Stärken bei der Spieleentwicklung liegen und ordnet euch – möglichst in gleich große Gruppen den folgenden Arbeitsbereichen zu:
- Leveldesign (führt auch die Arbeiten zusammen, ist aber nicht Chef oder Chefin)
- Programmierung
- Art
- Bildet jetzt Dreiergruppen, in denen jeweils eine Person für Leveldesign, eine für Programmierung und eine für Art zuständig ist! Wenn es zahlenmäßig notwendig ist, darf es eine Zweiergruppe geben. (Bei einer Zweiergruppe ist es einfacher, wenn Leveldesign und Programmierung von der gleichen Person übernommen werden.)
- Am Schluss werden die Gruppen durchnummeriert, so dass sich eine Reihenfolge ergibt. Merkt euch die Gruppe, die nach euch kommt!
Ab jetzt geht die Arbeit in euren Kleingruppen weiter.
Gerüst bauen
Jede Gruppe erstellt ein Level des Gesamtspiels. Wenn Spieler ein Level geschafft haben, dann kommen sie ins nächste Level. Bis sie am Ende den Punktestand angezeigt bekommen.
Euer gemeinsames Klassenziel ist es, ein funktionierendes Gerüst für alle Level zu erstellen.
Info für LehrendeSchritt 1: Das Levelgerüst bauen
Die Leveldesignerin oder der Leveldesigner erstellt ein Roh-Gerüst eures Levels und veröffentlicht es dann so unfertig für die Klasse (nicht weltweit)! Es soll nur folgende Objekte enthalten:
- eine Spielfigur
- ein Ball rechts unten sagt: „gesammelte Sterne: 0”
- ein Zielobjekt, das sagt: „Zu mir!”
- Benennt euren Level beim Veröffentlichen (nicht weltweit) nach euch selbst (Vornamen)!
Sonst darf das Gerüst noch nichts enthalten: keine Spielschwierigkeiten, nichts Lustiges.
GamBu Game-Engine
Erstellt euer Level-GerüstSchritt 2: Die Level verbinden
Die Leveldesignerin oder der Leveldesigner fügt als Nächstes ein Skript zum Zielobjekt hinzu, um das nächste Level zu laden! Erkundigt euch nach der Levelnummer des Levels der Gruppe, die nach euch kommt.
Die Levelnummer findet ihr ganz am Ende der URL (Internetadresse), die ihr nach dem Veröffentlichen erhaltet.
Beispiel: https://www.schubu.org/gambu/820 → Levelnummer ist 820
Das GamBu-Skript, das ihr zum Levelladen braucht, geht so:
bei gewinn lade level [Levelnummer]
Die Leveldesignerin oder der Leveldesigner öffnet hier euer Spiel mit eurer Levelnummer in einem neuen Tab. Achtung! Achtet darauf, dass ihr immer nur einen Tab mit eurem Spiel offen habt, um nichts selbst zu überspeichern.
Schritt 3: Die Level testen
Erkundige dich nach der Spiel-URL der ersten Gruppe und spiele alle Level durch!
Alle Gruppen, deren Level dabei funktioniert haben, dürfen sich ans Leveldesign machen.
Leveldesign
Gemeinsame Arbeit
Erarbeitet nun in den Kleingruppen euer Leveldesign! Die Leveldesignerin oder der Leveldesigner fügt die verschiedenen Arbeiten in der GamBu-Game-Engine zusammen. Aber er oder sie ist nicht Chef!
Ihr müsst euch einigen, wie euer Level funktionieren soll, welche Ideen ihr verwirklicht und welche nicht:
Mögliche Spielideen
Vorgaben
Damit alle Level zugleich sehr unterschiedlich sein können, aber das Spiel trotzdem zusammengehörig erscheint, müssen folgende Vorgaben für das Leveldesign eingehalten werden.
- MODUS: Single-Player (nicht Multi-Player)
-
ZIEL-Element: Es gibt nur genau ein rundes ZIEL-Element.
-
In jedem Level können drei Sterne gesammelt werden.
Es gibt dann noch spezielle Vorgaben für die Fachgebiete.
Erstellt jetzt das Level! Versucht, ein überraschend anderes Level zu erfinden, als alle anderen machen und erwarten!
Besprecht, welche Grafiken und GamBu-Scripts noch fehlen und schreibt das auf!
Ihr habt alle Freiheiten, vorausgesetzt, das große Ziel bleibt eingehalten. Dazu muss euer Level am Anfang der nächsten Stunde spielbar sein. Vielleicht ohne den fertigen Grafiken und vielleicht noch nicht mit allen Skripts, aber man soll es gewinnen und in das nächste Level aufsteigen können.
Spezielle Aufgaben
Während der restlichen Unterrichtseinheit erstellen die Gruppen ihr Level und testen es.
Öffne jetzt nur den Bereich, der deine Aufgabe im Team beschreibt! Arbeite die einzelnen Punkte deiner Aufgabenliste ab und vergiss nicht, dich mit deinem Team abzusprechen!
Leveldesigner*in
Sie oder er nimmt die besten Ideen vom Team auf und erstellt die Spielschwierigkeiten in GamBu.
Die Leveldesigner*innen müssen darauf achten, dass alle Vorgaben eingehalten sind. Das ist wichtig, damit alle verschiedenen Level am Schluss ein Spiel ergeben:
-
Modus:
- Single-Player-Level (kein Multi-Player).
-
Sterne:
- Es gibt im Level drei Sterne
- Anzeige: Ein Element, das sagt: „gesammelte Sterne: 0”
-
Ziel Element:
- Es gibt es genau EIN rundes Zielobjekt.
- Das Zielobjekt sagt „Zu mir!“
- Beim Berühren des Ziels kommt man ins nächste Level.
Script, Grafik und Sound vom Team
Die Leveldesignerin oder der Leveldesigner testet und verbessert das Level. Immer, sobald ein neues Script oder eine Grafik fertig ist, fügt sie oder er es ins Level ein. Die Scripts und Bilder können dafür zum Beispiel einfach per Messenger geschickt werden.
Immer wenn so eine neue Version des Levels entsteht, veröffentlicht die Leveldesignerin oder der Leveldesigner die neue Levelversion.
Am Ende der Stunde soll das Level ausgewogen spielbar sein. Dafür ist die Leveldesignerin oder der Leveldesigner verantwortlich. Es soll zwar nicht beim ersten Versuch geschafft werden, aber vor dem 5. Versuch.
Kontrolliere abschließend:
- Alle Level-Vorgaben sind erfüllt.
- Alle verfügbaren Grafiken, Scripts und Sounds sind eingefügt.
- Das Level wurde von mir getestet und verbessert.
- Die aktuelle Version ist veröffentlicht.
Programmierer*in
Es gibt im Level vier notwendige GamBu-Scripts:
- Das eine runde Ziel-Objekt soll „Zu mir!” sagen. Das ist schon so im Level-Gerüst.
- Im gleichen Skript soll das nächste Level geladen werden, wenn es geschafft wurde. Das sollte im Gerüst auch schon erledigt sein.
- Drei Sterne sollen verschwinden, wenn man sie berührt also sammelt.
-
Und ein Ball soll die Anzahl der Sterne sagen, die bisher in allen Leveln schon gesammelt wurden.
„gesammelte Sterne: [gesammelte Sterne]”
Neue Möglichkeiten in GamBu-Script:
entferne element [n]
Wenn man zum Beispiel das Element mit der Nummer 3 entfernen möchte, dann schreibt man:
Variablen speichern Werte nur für den einen Bot, zu dem das GamBu-Script gehört. Das ist sehr praktisch, weil wenn ich zum Beispiel speichern möchte, wie gesund ein Bot ist, dann kann jeder Bot ein Script haben, in dem seine Gesundheit so gespeichert ist:
Die Anzahl der gesammelten Sterne soll aber für alle Bots und sogar für alle Level gelten. Egal welches Skript die Variable ändert, dieser Wert soll verändert werden und nicht nur in dem einen Script, wo man die Anzahl ändert.
Deshalb gibt es in GamBu-Script auch globale Variablen. Sie zeichnen sich dadurch aus, dass sie mit der Bezeichnung global. beginnen. Zum Beispiel:
Auch wenn man sie verwendet, muss man diesen Namen verwenden. Wenn man einen Stern sammelt, dann muss in einem Script das stehen:
Bei der Anzeige von global.sterne muss noch bedacht werden, sie dauernd zu wiederholen, damit immer der aktuelle Stand angezeigt wird.
Um Versionskonflikte zu vermeiden, schickt die Programmiererin oder der Programmierer nur die Scripts, aber keine GamBu-Files an die Leveldesignerin oder den Leveldesigner.
Kontrolliere abschließend:
- Drei Sterne verschwinden, wenn man sie berührt also sammelt.
- Ein Ball soll die Anzahl der Sterne sagen, die bisher in allen Leveln schon gesammelt wurden.
- Ich habe alle Scripts an die Leveldesignerin oder den Leveldesigner geschickt.
Artist
Zuerst muss eine Spielfigur gezeichnet werden.
In jedem Level gibt es nämlich eine Spielfigur, die wieder anders aussieht. Das ist sehr ungewöhnlich für Spiele. Deshalb ist es wichtig, dass die Spielfiguren leicht zu erkennen sind.
- Gestalte selber eine runde Spielfigur. Wenn ihr einen Level mit Gravitation habt, dann ist die Sicht von der Seite, sonst von oben.
- Drehe das Bild so, dass es nach rechts schaut. Rechts ist vorne!
- Schneide in einem Bildbearbeitungsprogramm den Hintergrund der runden Spielfigur weg und speichere das Ergebnis als png mit der Auflösung 62 x 62 Pixel!
Die Spielfigur muss in jedem Level neu gezeichnet werden, aber es dürfen natürlich auch noch andere Elemente neu gemacht werden.
Sound-Effekte
Erstelle passende Geräusche, die entstehen, wenn eure Spielfigur gegen ein Hindernis stößt.
Ihr könnt auch eine Atmo für euer Level erstellen. Beachtet, dass eine Atmo äußerst zurückhaltend designt werden muss, um nicht zu stören. Die Atmo ist die typische Stille an einem Ort.
Weitere Grafiken
Ihr könnt auch Grafiken von einzelnen Elementen neu gestalten. Wie schauen zum Beispiel die Bälle aus, die nur etwas sagen?
Falls ihr nur fertige GamBu-Grafiken und den Stern im Spiel verwendet und sonst ausschließlich eigene Werke, dürft ihr bei der Veröffentlichung angeben, dass alle Grafiken von euch sind.
Kontrolliere abschließend:
- Ich habe eine eigene Spielfigur (rund, mit transparentem Hintergrund, nach rechts blickend) für das Level gezeichnet.
- Ich habe die Spielfigur als .png File an die Leveldesignerin oder den Leveldesigner geschickt.
- Freiwillig: Ich habe eigene Soundeffekte und/oder Atmo erstellt und weitergeschickt.
- Freiwillig: Ich habe Grafiken für weitere Elemente neu gestaltet und weitergeschickt.
Hacks and Tricks
Neue GamBu-Scripts
Git
Git ist ein kostenloses Programm, das dabei hilft, die verschiedenen Versionen von Files zu verwalten, wenn in einem Team alle zugleich an gemeinsamen Files arbeiten.
Verwendet Git in diesem Projekt nur, wenn es ein Teammitglied schon sehr gut kann! Sonst wird es euch viel mehr Probleme machen, als es hilft.