Dies ist eine alte Version des Dokuments!
1. Minecraft Programmier-Projekt
1.1 Beschreibung des Projektes
In 4er-Gruppen soll ein Minecraft-Projekt realisiert werden.
Dabei handelt es sich um ein Coding-Projekt, d.h. im Mittelpunkt steht zum einen die Python-Programmierung in Minecraft zum anderen auch das Arbeiten mit der agile Arbeitsmethode Scrum.
Natürlich kann man auch „von Hand“ Dinge in Minecraft erschaffen, doch der Fokus sollte klar auf der Programmierung liegen.
Es gibt zwei verschiedene Möglichkeiten, wie man Python in Minecraft einsetzen kann: automatisiertes Bauen oder Interaktionen programmieren.
| Automatisiertes Bauen | Ihr erstellt ein Python-Programm, welches eure Welt (oder einen Teil eurer Welt) automatisch baut. Dabei verwendet ihr die Konzepte, die ihr im ersten Kapitel gelernt habt (Variablen, Funktionen, Schleifen, Verzweigungen, Listen etc.) und die Befehle und Funktionen, die euch Minecraft zur Verfügung stellt (blocks.place, blocks.fill etc.) Tipps und Informationen zum automatisierten Bauen (wird laufend erweitert) |
| Interatktion programmieren | Ihr programmiert Interaktionen, welche in eurer Minecraft-Welt ausgelöst werden, falls irgendetwas passiert. Beispielsweise könnte der Boden verschwinden, wenn man auf eine Falle tritt, oder eine Tür öffnet sich nur, wenn man einen bestimmten Gegenstand gefunden hat etc. Tipps und Informationen zum Programmieren von Interaktionen (wird laufend erweitert) |
HILFEN + TIPPS
Projektstart
- Das Scrumboard steht Euch auf Teams in Eurer Gruppe zur Verfügung. Dieses sollte in immer aktuell gehalten werden.
- Arbeitet zusammen. Jedes Teammitglied muss beim Bau und auch bei den Interaktionen mitprogrammieren. Der Code muss mit
#Kommentarkommentiert werden. - Beschreibt die „Userstories“ sprich die Projektideen inklusive der geschätzten Zeit im Wiki, bei eurer Gruppe.
- Kleine Code-Teile könnt Ihr via Teams-Kanal teilen. Grössere Programme abspeichern.
- Gemeinsames Coden am gleichen Code ist mit https://www.online-python.com/ möglich
Projektauftrag - RAHMENBEDINGUNGEN
- Erstellt eine Minecraft-Welt, die durch Python-Programme mitgesteuert ist:
- Objekte werden durch Programme automatisiert erstellt.
- In eurer Welt sind durch die Programme interaktive Dinge möglich.
- Dokumentiert euer Projekt auf einer Wiki-Seite auf mathematix.ch. Für die Zusammenarbeit könnt ihr eure Programme im Wiki speichern.
- Präsentiert am Schluss euer Projekt kurz der Klasse.
Es ist wichtig, dass ihr jeweils die Programme extern speichert (z.B. in eine Textdatei oder direkt in das wiki hineinkopieren). Auch die Welt würde ich jeweils exportieren, damit ihr nicht plötzlich eure Arbeit verliert.
1.2 Gruppen
1.3 Zeitplan und Bewertung des Projektes
2.D1
| Datum | Bemerkungen |
|---|---|
| 3 und 10.11.2023 Projektstart und Informationen | |
| 15.11-17.11.2023 | Gruppe A anwesend, Gruppe B im Klassenzimmer |
| 22.11-25.12.2023 | Gruppe B anwesend, Gruppe A im Klassenzimmer |
| 29.11-1.12.2023 | Gruppe A anwesend, Gruppe B im Klassenzimmer |
| 6.12.2023 | Gruppe B anwesend, Gruppe A im Klassenzimmer Retrospektive! |
| 13.12-15.12.2023 | Gruppe A anwesend, Gruppe B im Klassenzimmer |
| 20.12.23 | Gruppe B anwesend, Gruppe A im Klassenzimmer Wiki à jour nur eine Lektion |
| Weihnachtsferien | ;) |
| 10.01-12.01.2024 | alle , nur am Mittwoch Informatik |
| 17.01-19.01.2024 | alle , nur am Mittwoch Informatik Schlussrückblick |
| 23.01.-25.01.2024 | Abgabe des Projekts 23.1.23,Präsentationen |
| 31.01.-1.02.2023 | Präsentationen |
1.4 Bewertungskritierien
| Punkte | Kriterium | Bemerkungen |
|---|---|---|
| 8 | Originalität/Konzeption | Wurde eine neue, eigenständige Idee umgesetzt? Wurde diese Idee durchdacht und nach Plan realisiert? |
| 14 | Arbeitsweise der Gruppe | Wurde die Arbeit ausgewogen aufgeteilt und gemeinsam umgesetzt? War die Arbeitsweise selbständig? Wurde zielorientiert gearbeitet? Wie war das Arbeiten während der Lektionen in den Gruppen - waren alle Gruppenmitglieder aktiv am Entwicklungsprozess beteiligt? Wie effizient war das Arbeiten? Wie wurde die Arbeitsmethode SCRUM umgesetzt? |
| 8 | Komplexität der Lösung | Wie hoch ist die Komplexität des Projektes bezüglich Programmierkonzepten und Logik? Welche sichtlichen Fortschritte gab es während des Programmierprozesses? Wurden die gelernten Programmierkonzepte auch angewandt? |
| 10 | Qualität des Quellcodes | Ist der Code modular und verständlich geschrieben und gut strukturiert? Wurden die gelernten Programmierkonzepte angemessen verwendet (gut strukturierter Code, Variablen, Funktionen, Listen, Schleifen etc. werden sinnvoll eingesetzt, Code ist nicht redundant und wird angemessen kommentiert) |
| 7 | Qualität der Dokumentation und der Präsentation | Wird im Wiki das Projekt angemessen präsentiert und erklärt? Wird das Projekt interessant und verständlich kurz der Klasse präsentiert? |
| 3 | Einschätzung und Analyse | Hier fliesst ihre Selbsteinschätung und die Einschätung der Gruppe während der Retrospektive und als Endeinschätung in die Bewertung ein. |
| 50 | Total mögliche Punkte | Es wird der gängige Notenschlüssel (Punkte : 50*5+1) angewandt |
