Benutzer-Werkzeuge

Webseiten-Werkzeuge


schule:minecraft_explorer

Minecraft Explorer

Sie erhalten den Auftrag, ein Spiel zu entwickeln, welches das Spiel Minecraft mit einer elektronischen Schaltung kombiniert. Die Schaltung enthält drei LEDs inklusive Vorwiderständen, welche die Entfernung zu einem virtuellen Schatz in der Minecraftwelt signalisieren.

Ziel des Spiels ist es, auf einer Minecraftkarte einen Ort zu finden, an dem ein virtueller Schatz versteckt ist. Die Nähe zum Ziel wird über die Anzahl der leuchtenden LEDs angezeigt: je näher man dem Ziel kommt, desto mehr LEDs leuchten auf. Wenn der Schatz gefunden wurde, blinken die LEDs kurz auf.

Meilensteine

Bearbeite nacheinander die folgenden Meilensteine. Lasse jeden Meilenstein von einem Fachlehrer abzeichnen, sobald du ihn erfolgreich absolviert hast.

  1. Erstelle eine Schaltungsskizze bestehend aus drei LEDs, passenden Vorwiderständen und dem Raspberry Pi. Gib für den Pi die physikalischen Nummern und die Namen der geplanten GPIO-Pins an (vgl. https://pinout.xyz).
  2. Baue die Schaltung auf einem Steckbrett auf und zeige, dass die LEDs funktionieren, indem sie direkt mit den 3,3 V- und GND-Pin am Pi betrieben werden. Hierfür ist keine Programmierung notwendig.
  3. Als Einstieg in die Arbeit mit Objekten und Klassen: Bearbeite in cs-circles das Kapitel 14 zu Methoden.
  4. Lasse mit Hilfe der gpiozero-Bibliothek alle drei LEDs im Takt blinken. Beachte die Informationen unter https://hw101.tbs1.de/gpiozero.
  5. Schreibe ein Pythonprogramm mit der Methode turn_on_leds(number). Beim Aufruf der Methode wird die im Parameter “number” übergebene Anzahl LEDs eingeschaltet, z.B. schaltet turn_on_leds(2) zwei der drei LEDs an, turn_on_leds(0) schaltet alle LEDs aus.
  6. Starte Minecraft über den RealVNC-Viewer. Damit dies ohne Probleme funktioniert, müssen ein paar Einstellungen vorgenommen werden, die im Handbuch von RealVNC im Abschnitt Running directly rendered apps such as Minecraft remotely beschrieben werden.
  7. Mache dich mit der Bedienung von Minecraft über die Python-Schnittstelle vertraut. Die wichtigsten Befehle sind unten beschrieben – hier gibt es zusätzlich eine ausführliche Erläuterung.
  8. Erstelle das Programm nach den Vorgaben. Nutze dazu die Python-Quelltext-Vorlage und implementiere die Methoden gemäß der Methodenbeschreibung in der Datei.

Hinweis

Für die weitere Arbeit bietet es sich an, zu zweit zu arbeiten, da die Maus bei der Verwendung von Minecraft blockiert wird. Bringe den Pi über Kabel oder WLAN ins Raumnetz und verbinde dich mit ihm über VNC, starte Minecraft und nutze diesen Rechner als Anzeige. Verbinde dich nun von einem anderen Rechner auf den Pi und erstelle dort das Programm.

Python-Schnittstelle von Minecraft

from mcpi.minecraft import Minecraft  # Importieren der Minecraft-Klasse 
mc = Minecraft.create()  # Erstellen eines Minecraft-Objektes mit Namen mc 
 
# Auf dem Objekt mc können nun Methoden aufgerufen werden. 
 
mc.postToChat("Hello world")  # etwas in den Chat schreiben. 
 
pos = mc.player.getPos()  # die Spielerposition abrufen und  
                          # in einer Variablen speichern 
 
print(pos.x, pos.y, pos.z)  # Die einzelnen Komponenten der  
                            # Spielerposition ausgeben 
schule/minecraft_explorer.txt · Zuletzt geändert: 21.12.2019 14:32 von Marco Bakera