Projektliste Game Design und Programmierung

Bild Fantasy Figuren

Hier ist die Projektliste Game Design und Programmierung. Die Liste aktualisiere ich jedes Semester. In Zweierteams suchen Sie sich in Absprache mit mir ein Projekt aus …

Zur Beschreibung des Moduls.

Stand 18.10.2022

Achtung, aus Kapazitätsgründen können KEINE Projekte angeboten werden mit UNITY, ANGULAR, REACT. Javascript-Projekte sind nativ – ohne Fremdbibliotheken – zu gestalten. (Ggf begründete Ausnahme: jQuery, Bootstrap)

Programmier-Projekte, die Sie im laufenden Semester bearbeiten können (Achtung, Liste kann sich im Oktober noch ändern)

neu: PW22W19: Spielzeug für Gartenbesitzer – die IR-WLAN-Überwachung

Mit einem Microcontroller und einem PIR (IR-Bewegungsschalter, wie er in Gartenlampen verbaut ist)  soll ein System aufgebaut werden, das Bewegungsaktivitäten über WLAN im Internet loggt. So kann ein Gartenbesitzer prüfen, ob etwas (Rehe, Katzen, Einbrecher) nachts im Garten herumgelaufen sind. Als Microcontroller können wahlweise eigesetzt werden: ESP8286 oder ESP32 (Programmierung mit Arduino IDE) oder Raspberry Pico W (Programmierung mit Python und Thonny IDE oder C und Arduino IDE). Ein einfacher Webservice und eine Anzeigeseite (in PHP) runden das Projekt ab.
Ein vergleichbares Projekt (mit zusätzlicher Bildaufnahme) wurde bereits mit dem Raspberry Pi realisiert – Pitchvideo auf youtube.

neu: PW22W120: Spielzeug für Helikopter-Eltern- die WLAN-Kinderzimmer-Licht-An-Überwachung

Mit einem Microcontroller und einem LDR (Lichtempfindlichen Widerstand)  soll ein System aufgebaut werden, das Änderungen der  Lichtstärke an einen Webservice überträgt. Einsatzmöglichkeiten wäre die Überwachung im Kinderzimmer (schlafen die lieben Kleinen?) oder Abschätzung der Beleuchtungsstärken auf dem Garagendach im Vorfeld der Planung einer Solar-PV-Anlage. Die gängigen Microconroller haben einen Analog-Digital-Wandler an Bord.
Damit wird es ganz einfach, die Hardware (Controller, LDR und eine Widerstand) auf einem Steckbrett aufzubauen. Als Microcontroller können wahlweise eigesetzt werden: ESP8286 oder ESP32 (Programmierung mit Arduino IDE) oder Raspberry Pico W (Programmierung mit Python und Thonny IDE oder C und Arduino IDE). Ein einfacher Webservice und eine Anzeigeseite (in PHP) runden das Projekt ab.

Wie so etwas (Spannungsmessung) grundsätzlich funktioniert (hier mit dem Calliope Mini als Microconroler) ist in einem youtube Video zu sehen.

P22W1: Wordle-Klon

Sie erstellen einen Wordle Klon als Browsergame.

Programmierumgebung: Javascript, Statistiken mit PHP und CSV oder SQLite, Kommunikation AJAX
Ein existierendes Beispiel: https://wordlegame.org/de

P22W2: Varroa Simulator

Voraussetzung: etwas Grundkenntnisse in der Bienenhaltung

Spielziel: Herausfinden, wie Spieler:innen mit mit möglichst wenig Interventionen eine stabilen Zustand eine Bienenvolkes hinbekommen. Zur Vereinfachung: Behandlungszeitpunkt angeben, Prozentsatz der Varroareduktion.

Wichtig: grafische Rückmeldung über den „Systemzustand“, so z. B. Volksstärke und Stärke des Varroabefalls.

(Weitere Informationen gibts, wenn sich ein Team dafür interessiert)

P22W3: Bienenstock Simulator

Es soll eine einfacher Bienenstock-Simulator entwickelt werden. Zum Spielstart werden ein paar Parameter (Legeleistung der Königin, Ergiebigeit der Nahrungsquellen, Wahrscheinlichkeit für Flugtage) eingegeben, die Simulation läuft dann selbsttätig.

Hier hat sich schon jemand ein paar Gedanken gemacht: https://imsc.uni-graz.at/keeling/modI_ss09/projekten/KnielyRosenbergerEnd.pdf

(Weitere Informationen gibts, wenn sich ein Team dafür interessiert)

P22W4: Spielzeug für Imker IV: beeWild Bienenwebcam ESP32

Mit dem Raspberry wurde bereits ein Webcamsystem aufgesetzt (https://cbrell.de/naturwatchcam). Zur Beobachtung am Bienenstock soll ein einfaches System mit der ESP32-Cam erstellt werden, das über WLAN alle 5 Minuten ein Bild an einen Webservice überträgt.

Programmierung: Webservice und Bildanzeigescript in PHP, ESP-Programm vermutlich in C (Arduino-IDE)

P21W1: Konzeption und Vorbereitung eines Lehrerworkshops mit dem Raspberry Pico (WH)

Lehrerworkshops in kurzen Formaten (2*1,5 Stunden) haben sich bewährt, um die Kooperationen des Fachbereichs mit Schulen zu stärken (siehe Pressemeldung). Ein Erfolg war der Calliope-Mini-Workshop mit einem analogen Bodenfeuchtesensor (Anleitung für die Lehrer). Mit dem Raspberry Pico erobert ein neues Spielzeug die Maker-Szene, und es entwickelt sich ein großes Ökosystem. Analog zum Calliope Workshop soll ein Workshop mit dem Raspberry Pico konzipiert werden, Da der Pico keine Anzeige wie der Calliope hat, soll eine LED Ampel alternativ genutzt werden. Der Workshop bzw. die Vorbereitung soll folgende Eigenschaften haben:

  • Geringe Anforderungen an die Voraussetzungen bei der Durchführung (so wenig Zusatzsoftware wie möglich…)
  • Geringe Anforderungen an die manuellen Fertigkeiten
  • Schrittweises Vorgehen – schnelle Erfolgserlebnisse

(Wenn verfügbar, wird der neue Pico mit WLAN und Bluetooth eingesetzt)

Programmierung: wenn Python, dann mit Thonny-IDE, wenn C/C++, dann Arduino IDE

P21W2: Konzeption und Vorbereitung eines Lehrerworkshops mit dem Arduino

Wie P21W1, allerdings mit dem Arduino Nano.

ACHTUNG: WENN DIE BESCHAFFUNG 11.2022 IMMER NOCH SCHWIERIG IST, DANN DIESES PROJEKT NICHT.

P21W3: Spielzeuge für Imker I: Front-End / User Experience für unterschiedliche existierende Daten

Seit dreieinhalb Jahren werden von Sensoren aus Bienenstöcken Daten gesammelt, z.B. hier:
https://cbrell.de/biene40/

Mittlerweile hat sich daraus ein vom BMEL gefördertes Forschungsprojekt ergeben. Informationen dazu gibt es auf der Projektseite http://bieneviernull.de

Auf dem Smartphone sieht das zur Zeit (Oktober 2022) so aus: Biene40 Dashboard.

Wie könnte das „schöner“ aussehen, vielleicht auch „verspielter“ (z.B. im Steampunk-Design), ohne den informativen Charakter zu verlieren? Wie wäre es mit einem Steampunk-Dashboard … Für bestehende Datenpools sind ETL-Prozesse in PHP zu programmieren, der Front-End vorzugsweise in Javascript / AJAX), Die Daten und eine Schnittstelle dazu werden zur verfügung gestellt.
Geeignet für Menschen, die sich mit User Experience  auseinandersetzen wollen.

P21W4: Spielzeuge für Imker II: Arduino Stocktemperatur

Gerade Neuimker schauen gern zu oft in den Bienenstock. Jedes Öffnen schaden den Bienen. Mit drei vertikal angebrachten Temperatursensoren erfährt man – ohne Bienenstock öffnen – ob das Volk noch lebt, ob es brütet oder ob das Futter knapp wird. (Brell, Claus (2020) Genug Futter im Stock? – Temperaturmessung zeigt`s an. In: bienen&natur 03.2020, München. S. 36-37. Artikel Volltext ). Mit Hilfe einen Arduino nano, eines 4-Zeilen-Displays (I2C) und vierTemperatursensoren DS18B20 (1-Wire) soll ein System aufgebaut werden, das dem Imker außen am Stock anzeigt, was sich drinnen abspielt.
Geeignet für Menschen, die sich mit Microcontrollern, speziell dem Arduino,  auseinandersetzen wollen. Programmierung in C mit der Arduino IDE.

P21W5: Spielzeuge für Imker III: Raspberry Pico Stocktemperatur

Inhaltlich wie P21W5, aber mit dem Raspberry Pico. Mit Hilfe eines Raspberry Pico, eines 4-Zeilen-Displays (I2C) und drei Temperatursensoren DS18B20 (1-Wire) soll ein System aufgebaut werden, das dem Imker außen am Stock anzeigt, was sich drinnen abspielt.
Geeignet für Menschen, die sich mit Microcontrollern, speziell dem Raspberry Pico  auseinandersetzen wollen.

P21W6: Feedbacksystem für soziale Roboter

Analog zum Anki Cozmo sollen „emotionale Zustände“ über Augen visualisiert werden. Dazu ist ein Anzeigemedium (128 x 64 Pixel, entweder als Ajax-Anwendung mit Javascript und PHP (bevorzugt) oder Mini-Display mit Raspberry oder ESP32 oder bei Verfügbarkeit mit Raspberry Pico W zu programmieren, das einen emotionalen Zustand von einem Webservice holt und visualisiert.
Die passenden Webservices und eine Eingabemöglichkeit für die emotionalen Zustände sind zu erstellen.

Geeignet für Menschen, die sich mit social robots und human computer interaction (hci) auseinandersetzen wollen

Quellen: Youtube Videos zum Anki Cozmo, https://cbrell.de/augen, https://spectrum.ieee.org/automaton/robotics/humanoids/what-people-see-in-157-robot-faces.

P21W7: Social Feedback mit Neopixel

Mit Hilfe eines Raspberry Pi und einer farbigen LED-Anzeige (WS2801 oder WS2012/NeoPixel)  soll ein Anzeigegerät entwickelt werden, das von zwei Personen die Gemützustände anzeigt („Mir geht es heute ….“) Gefüttert wird das System über eine einfache Webseite. Bwenötigtv wird auch ein Webservice in PHP. Die Daten lädt sich der Raspberry jede Minute.

P12W8: PiNK reloaded: Datenvisualisierung mit eInk-Display

Manchmal möchten Menschen eine einfache Anzeigestation statt Webseiten. Mit Hilfe eines Raspberrys (Python), (Alternative: ESP-01) eines kleinen eInk-Displays und ein paar PHP-Webservices soll ein System aufgebaut werden, dass Daten aus eines Sensordatenbank erhält, daraus eine Grafik erzeugt und diese auf dem Display anzeigt. Hier ist das Pitch-Video des Vorläuferprojektes leider mit Musik.

P21W9: Checkliste Craftbier brauen Schritt für Schritt

Spielerische online Unterstützung für Hobby-Bierbrauer . Anhand der einfachen Literatur über das Bierbrauen und der Brauprotokolle soll eine Art internetbasierte Checkliste für das Bierbrauen entwickelt werden. Der „Spieler“ wird dadurch in kleinen Schritten durch den Brauprozess geführt und kann abhaken, wann er bestimmte Schritte erledigt hat. Das kann auch spielerisch auf eine Canvas erfolgen. Zu jedem Brauprozessschritt gibt es eine kleine Anleitung, was zu tun ist. Technik: AJAX.

P21W10: Craftbier Escape Room- Flucht vor der Mörderhefe

In Anlehnung an reale Escape-Rooms oder der EXIT-Spiele (Verlag KOSMOS) soll eine (einfache) Web-Version eines solchen Spiels erstellt werden. Die Spieler lösen die Aufgaben/Puzzle und entkommen der bösartigen Bierhefe … oder sonst irgend etwas,  Technik: AJAX.

P21W12: QR-Code Rallye

Für den Campus Mönchengladbach soll eine einfache QR-Code-Rallye entwickelt werden. Spielziel ist, nacheinander die aufgehängten QR-Codes zu finden und so gleich den Campus kennen zu lernen. Dafür scannt eine Browseranwendung den QR-Code, und holt die Beschreibung zum Finden des nächsten Codes vom Webservice.
Wer es sich zutraut, kann alternativ mit GeoFences arbeiten.

Trennen Sie Inhalt vom Programm – denken Sie den Fall mit, dass man das Gleiche vielleicht auch in Krefeld – mit geänderten Texten – einsetzen möchte.
Pitch-Video eines Vorläuferprojektes:

Der Quartiersverödung entgegenwirken. Jonas Heimann und Merlin Stottmeister haben in einem studentischen Projekt ein spielerisches System entwickelt, das Besuche von Ladenlokalen attraktiver machen kann. Pitchvideo auf youtube

Pitch-Video meines Beitrages zum NUK Businessplan-Wettbewerb auf youtube

P21W13: Das virtuelle Flummiglas (Gamification)

Entwicklung einer Gamificationplattform für analoge Realwelten (Ajax bevorzugt). Erläuterung hierzu siehe Abschnitt „Gedankenspiel zur Implementierung von Gamification“ im Artikel auf Informatik-aktuell. [Link]

P21W15: Interaktives Lernbild „Imker Grundwissen“

Ein Bild zum Klicken mit Hintergrundinformationen, die beim Klicken angezeigt werden. Zum Abschluss kann ein Test absolviert werden (ca 10 MC-Fragen) Die Anzahl der richtigen Antworten und die falschen Antworten werden angegeben.

P21W17: Spielzeug für Bergwanderer

GPS-Track hochladen und auswerten. Mit Visualisierung des Tracks.
Varianten:
a) mit Leaflet
b) Javascript ohne Library
c) auf dem Server OpenStreetMap und PHP

3 GPS-Routen zum Hochladen werden zur Verfügung gestellt.

P21W18: Reaktionstest – ein Party-und Trinkspiel

Sie bauen mit HTML, CSS, und Javascript ein Reaktionstest-Spiel auf.

Eine Spielsequenz: im Browserfenster erscheint eine Blase, auf die man klicken muss. Trifft man die Blase, gibts einen Trefferpunkt, trifft man nicht, gibts einen Fehlpunkt. Die Blase ist nur 2 Sekunden sichtbar. Dann erscheint die Blase an einer anderen Stelle, ist aber nur 1,8 Sekunden sichtbar. Und so weiter bin 0,2 Sekunden, dann werden die Intervalle wieder größer bis 2 Sekunden.

Fragestellungen: Wie oft hat man getroffen und wie oft nicht? Wird die Trefferquote bei Alkoholkonsum schlechter? Hängt die Trefferquote von der Sprungweite der Blase ab? Lässt sich das Ganze trainieren? Was würde passieren, wenn zusätzlich Blasen eine anderen, nicht zu klickenden Farbe erscheinen?

Um die Fragen zu beantworten, müssen die Daten gespeichert werden. Idealerweise auf dem Webserver, auf dem es dann ein einfaches Auswerteprogramm gibt. Serverprogrammierung in PHP.

Spiel-Ideen

„Dungeon Cubes“

Neu 08.10.2022: eine Spielidee „Dungeon Cubes“, die im Modul ausgearbeitet oder teilweise als Brosergame umgesetzt werden könnte. Sie ist in einem separatem Beitrag beschrieben

„eat them all“

Ein einfaches Browserspiel für zwei Personen. Jeder Spieler hat einen farbigen Kreis, mit dem er versucht, schneller als der Mitspieler kleine Quadrate zu „essen“ (zu überfahren …). Die Kreise können wahlweise mit den Pfeiltasten auf der Tastatur oder mit der Maus gesteuert werden. Je Spiele werden die gegessenen Quadrate gezählt. Beim Spielstart werden Quadrate automatisch auf dem Spielfeld verteilt. Wichtig für einen Spieler: was macht der Mitspieler, wird er schneller bei den ausgewählten Quadraten sein?

Interessant wäre eine „Gameboy-like“ reduzierte Variante mit einem Textfeld. Auf einem Textfeld von 16 * 16 Buchstaben gibt es zwei Spieler A und B, die Quadrate sind einfach nur ein x. Ob die Programmierung einfacher ist, ist noch unklar.

Abb. 1: Variante mit Kreisen und Quadraten (Mockup)

Abb. 2: Variante mit einem Buchstabenfeld (Mockup)

„bubble run“

Vorschlag: Für einfache Jump&Run Spiele muss es keine aufwendige Grafik sein. Der Protagonist kann auch eine einfacher Kreis (div mit CSS) sein, die Hindernisse einfache Rechtecke (div mit Farbfüllung). Im einfachsten Fall kann die Blase nur springen (Space-Taste), mit mehrfach Drücken kommt die Blase höher. Wird nicht gedrückt, sinkt die Blase wieder bis auf eine Grundline. Die Blase befindet sich horizontal in der Mitte oder in der linke Hälfte des Bildschirms, die „Landschaft“, z. B. zufällig verteilte Rechtecke, zieht von rechts nach links vorbei.

Aktuelle Seminararbeiten, die alternativ zu den Projekten bearbeitet werden können

Alternativ können zu den Projekten (volle Punktzahl) auch Seminararbeiten (reduzierte Punktzahl, als beste Note höchstens 2,0 erreichbar) geschrieben werden. Auch die Seminararbeiten sind für zwei-Personen-Teams vorgesehen. Die meisten Fragen, die gestellt werden, erfordern eine ordentliche Recherche. Bei jeder Behauptung in den Ausarbeitungen werde ich fragen: woher wissen Sie das?

S21W1: Konzept: EXIT-Spiele webbasiert umsetzen

Sie brauchen noch Mitstreiter -. und spielen zunächst ein EXIT-Spiel durch. Analyse: Halten Sie alle Rätsel/Spielideen fest und dokumentieren Sie diese. Bewertung: Überlegen Sie, welche man davon überhaupt in ein Browsergame umsetzen könnte. Konzerption: Überlegen Sie sich für Ihre Auswahl Mockups und ein Datenmodell. Stellen Sie sich dabei vor, Sie müssten es auch programmieren. Vorteilhaft wäre, wenn Sie die Mockups als Klick-Dummy umsetzen (HTML). haben Sie dabei einen Investor vor Augen, der Ihnen im Anschluss Geld für die Realisierung / Programmierung geben soll.
Liste der „zugelassenen“ EXIT-Spiele:
1. Die Station im ewigen Eis
2.
3.
4.
5.

S21W2: Methodische Literaturrecherche zum aktuellen Stand der Forschung zu Gamification

Stand der Forschung und praktische Anwendungen – eine Recherche zunächst nach Quellen jünger als 2 Jahre. Es ist für die Literaturrecherche eine geeignete Methodik auszusuchen und zu beschreiben.

S21W3: Steam. Wie funktioniert die Plattform für Spieleerfinder?

Wie „funktioniert“ Steam? (Technische Grundlage, Geschäftsmodell ….)  Wie geht man als Spielentwickler vor? Welche Verdienstmöglichkeiten gibt es? Ein kleiner Leitfaden für Neueinsteiger …

S21W4: WordPress mit Gamification anreichern

Welche Gamification-Plugins für WordPress gibt es? Ist das wirklich Gamification oder etwas anderes? Für welche Anwendungsszenarien kann es überhaupt sinnvoll sein, das einzusetzen? (Anmerkung: das Thema ist relativ offen)

S21W5: Shopsysteme für Einsteiger

Wer selber einen Internet-Shop aufbauen möchte, wird auf viele Hürden stoßen. Legt man Motivationstheorien (Insbes. Flow-Konzept) zugrunde: welche Shopsysteme sind insbesondere für wenig IT-affine Gründer geeignet und warum? Bitte besziehen Sie WOO Commerce auf jeden fall in Ihre Recherchen mit ein.

S21W6: Fundgrube Brett- und Gesellschaftsspiele

Gibt es Game-Design-Elemente in Brettspielen, die immer wieder kehren?  Wie kann man diese in Kategorien ordnen? Wie kann eine Bewertungsmatrix aussehen, welche Game-Design-Elemente für Online-Spiele adaptierbar sind? Wie kann eine Bewertungsmatrix aussehen, um die Game-Design-Elemente in Gamification-Szenarien einzusetzen?

S21W7: Wie „minimal“ kann ein online-Spiel sein?

Ergebnis: Konzept (Anforderungsanalyse und Architektur) für ein – generisches-online Spiel, bei dem man nichts mehr weglassen kann. Begründung nach Jesse Shell. (Achtung, Seminararbeit für Kreative)

Im Wintersemester 2022 wird NICHT angeboten

P21W11: Eignung von Javascript Frameworks für Jump&Run

Mittlerweile gibt es eine Vielzahl von Javascript- Frameworks: Die vier Frameworks: Angularjs, Vue.js, React, Ember.js. Ebenso gibt es Spiele-Frameworks – manche verschwinden aber auch schnell wieder.

Entweder mit einem einfachen 2D-Jump&Run (selber ausdenken) oder einer einfach Spielidee („eat them all“, siehe weiter unten unter „Spiel-Ideen“) soll untersucht werden, welche Javascript-Frameworks für einfache Browserspiele geeignet sein könnten. Dazu ist die Spielidee mit dem Framework und mit Javascript „nativ“ zu entwickeln und die Erfahrungen bei der Entwicklung kritisch zu vergleichen.

P21W16: Interaktives Lernbild „Medienkompetenz für Schüler“

Wie P21W11a.

 

P21W14: Geschenkemanagement „virtueller Weihnachtsmann“

Jeder kann seine Wunschliste auf einer Internetplattform einstellen und auch ändern. Jeder kann alle Wunschlisten sehen. Jeder kann einen Kommentar zu einem ANDEREN Wunsch schreiben und dort diskutieren. Jeder sieht alles, aber nicht die Kommentare zu den eigenen wünschen. Dadurch wird sich dann herauskristallisieren, wer sich um welches Geschenk kümmert und es bleibt eine Überraschung. Kein kompliziertes Rechtemanagement. Nur selbstgewählten Benutzernahmen. Es geht nicht darum, ein vermarktbares Produkt zu bauen, sondern einen Prototypen, an dem man testen kann, wie sich das anfühlt. Realisierung in AJAX. Spiel-Design-Elemente: Community-Building, Instand Feedback.

Mockup virtueller Weihnachtsmann

Abb. Mockup virtueller Weihnachtsmann. So kann es aussehen, muss es aber nicht.

 

Teile diesen Beitrag.