
Murder Menu | Semesterprojekt WS24
Von Sebastian Koller, Selina Lehner und Nora Riglthaler am 05.03.2025
Projektbeschreibung
Murder Menu ist eine interaktive Dinner-and-Crime-App, die Nutzer*innen durch einen Krimi-Dinner-Abend führt. Eine Person kauft ein Krimi-Dinner-Modul und lädt andere ein, die daraufhin ihre Rollenbeschreibungen erhalten und sich auf den gemeinsamen Abend vorbereiten können. Die Spieler*innen erhalten vom Host einen Einladungscode, über den sie in der App dem Spiel beitreten können. In mehreren Phasen erhalten sie neue Informationen und Hinweise, die durch simulierte Nachrichten, Videos, Fotos, Polizeiberichte und mehr präsentiert werden. Ein in-game Chat ermöglicht Diskussionen, mit Notizen können in der App die verschiedenen Erfahrungen festgehalten werden. Am Ende der letzten Phase folgt eine Abstimmung und die Auflösung des Krimis.
Die App wird mit React Native Programmiert, im Backend verwenden wir Nest.js.
Das Projekt wird über mehrere Semester laufen, im ersten Semester lag der Fokus auf einem Design Prototypen und einem funktionalen MVP. Im zweiten Semester haben wir den MVP erweitert: User*innen können sich einloggen und registrieren, sie können ein Krimi-Dinner-Modul „kaufen“ und den Abend planen sowie die Rollen zuweisen. Das eigentliche Spiel wurde um ein Session Management erweitert und von den TFG Ausschreibungen erstellten Inhalte wurden eingearbeitet. Im dritten Semester wollten wir unseren ersten großen User*innen Test durchführen. Dafür mussten wir einiges an unserer Story anpassen und dann die Geschichte in die App integrieren. Außerdem wurden Features wie In-App Käufe und Verbesserungen für ein robusteres Backend umgesetzt.
Errungenschaften
Im dritten Semester sind wir mit Murder Menu in den Creative-Pre-Incubator der FH St. Pölten aufgenommen worden, was uns besonders stolz auf das Projekt macht. Beim Midterm Review haben wir viel positives Feedback bekommen und wertvolle Kontakte, mit denen wir uns bereits vernetzt haben.
Außerdem haben wir zum dritten Mal an der Projektvernissage Teilgenommen und in unserer Kategorie den ersten Platz erlangt. (???? (c) Daniel Petschniker, Magdalena Bichler)
Mitglieder*innen
Sebastian Koller
Selina Lehner
Nora Riglthaler
Projektleitung, Deployment, Backend, Frontend
Design, Prototyping, Frontend
Design, Usability, Backend, Frontend
Umgesetzte Features
Die folgen Features waren unsere Hauptaufgaben dieses Semester. Zusätzlich haben wir den Code der App und des Backends stetig optimiert und Fehlerresistenter gemacht.
In-App Kauf + Testflight
Ein Ziel war es, die App so weit in die App Store Connect und Play Console zu deployen, dass wir unseren Usertester*innen ermöglichen, die App auf ihren eigenen Devices zu testen. Dafür wurden externe Test-Gruppen angelegt und ein Einladungslink dazu verschickt, worüber sich die Tester*innen die App über Testflight installieren konnten.
Außerdem sollte der bisher gefakte Kauf eines Spieles in einen echten in-App Kauf umgewandelt werden. Dafür wurde die Plattform Revenue Cat eingesetzt, die den in-App Kauf zentral für Google und Apple abwickelt.



Story
Im letzten Semester wurde eine grundlegende Geschichte für uns „vorgeschrieben“. Als wir dieses Semester diese Geschichte in die App integrieren wollten, haben wir bemerkt, dass sie leider lückenhaft war und nicht ausreichend gut auf unsere App vorbereitet. Deshalb haben wir in vielen mühsamen Stunden die Geschichte komplett generalüberholt und noch zusätzliche Elemente wie die Rollenhefte entwickelt. Zu schauen, dass für 8 Charaktere während der gesamten Geschichte lückenlos jede*r etwas zu tun hat, meistens noch mit einem oder mehreren anderen Charakteren, hat sich dabei als riesige Herausforderungen entpuppt, die wir nur dank aufwendiger Visualisierungen meistern konnten.

Story Elemente
Die Geschichte, die in 3 Phasen aufgeteilt ist, haben wir grafisch für die User*innen aufbereitet. Dafür haben wir ein Slider Element eingeführt, das pro Phase die einzelnen Geschehnisse anzeigt. Wie oben erwähnt, gibt es neben der eigentlichen Geschichte noch das Rollenheft, das die Spieler*innen vor dem eigentlichen Abend erhalten. Hierzu haben wir ein Akkordeon Element umgesetzt, das die wichtigen Informationen übersichtlich darstellt.




Backend Erweiterungen
Auf Anraten von Armin hin haben wir uns im 3. Semester damit beschäftigt, unser Backend sicherer und übersichtlicher zu machen. Für Sicherheit und Monitoring setzen wir Portainer und BetterStack ein: Portainer hilft uns, unsere Docker-Container zu verwalten – wir können jederzeit überprüfen, ob sie laufen, Logs einsehen, Container neu starten und ihre Konfiguration anpassen. BetterStack ist unser erstes sinnvolles Logging-System, mit dem wir Fehler und Abstürze schneller erkennen und analysieren können. Zusätzlich hat Sebastian Telegram als weiteres Logging-System integriert, sodass er direkt benachrichtigt wird, wenn etwas Kritisches passiert – z. B. bei Problemen mit der Verifizierung. Damit unser Backend besser dokumentiert und verständlicher wird, haben wir zudem Swagger eingerichtet, das uns eine automatisch generierte API-Dokumentation liefert.
User*innen Test
Planung
Ein wichtiger Meilenstein im 3. Semester war unser erster User*innen-Test. Damit wollten wir die App erstmals in einem vollständigen Durchlauf testen – mit acht Personen gleichzeitig in einem Spiel. So konnten wir nicht nur herausfinden, wie stabil die Technik läuft, sondern auch, wie gut die Bedienung funktioniert und ob die Spieler*innen intuitiv mit der App zurechtkommen. Gleichzeitig wollten wir natürlich auch testen, wie unsere erste Geschichte ankommt – ob es Lücken oder Unstimmigkeiten gibt und ob sie schwer oder leicht zu lösen ist.
Zur Vorbereitung haben wir ein umfangreiches Dokument erstellt, das unter anderem einen groben Zeitplan, wichtige Fragen und sogar das Menü des Abends enthielt. Das hat uns am Testtag sehr geholfen, weil wir uns gut daran orientieren konnten und nichts Wichtiges vergessen haben, was wir uns während der Planung überlegt hatten.
Umsetzung
Unser erster User*innen-Test fand am 23. Februar 2025 ab 17:00 Uhr statt. Die Testpersonen bekamen von uns noch einmal eine kurze Einführung und Erklärung, was sie bei der Testung erwarten wird. Danach konnten sie im eigenen Tempo die verschiedenen Phasen des Moduls durchspielen. Um das Krimi-Dinner so authentisch wie möglich zu gestalten, wurde zu jeder neuen Phase von uns ein weiterer Gang serviert. Feedback zur App an sich oder zur Geschichte wurde laufend von uns mit Hilfe von WhatsApp Nachrichten gesammelt und zum Abschluss auch noch mit einem Fragebogen vertieft. Abgeschlossen wurde die gesamte Testung um ca. 21:00 Uhr.


Auswertung
Die Auswertung erfolgte auf zwei Wege: die Spieler*innen haben nach dem Test einen Fragebogen ausgefüllt, der uns Einblicke in unsere Zielgruppe geben soll und auswertet, wie ihnen die App gefallen hat.
Die Key-Learnings daraus waren:
- 8 Personen zwischen 19 und 26 Jahren
- Bis auf gefundene Bugs sehr positive Resonanz
- Die meisten würden um die 20€ für ein Spiel ausgeben
- Nur 1 Person hat noch nie Krimi Dinner gespielt
- Von den Erfahrenen Spieler*innen finden 50% App besser als analog
- Geschichte & Rollen war schon gut, mit kleineren Verbesserungsvorschlägen
- Die SUS Auswertung ergab einen Mittelwert von 86,1, was ein sehr guter Wert ist
Der zweite Teil der Auswertung bestand aus unseren Beobachtungen. Den Test haben wir mir Ton und Filmaufnahmen aufgezeichnet. Dazu haben wir während des gesamten Abends alle Beobachtungen und jedes Feedback als Nachrichten in eine WhatsApp Gruppe geschickt, damit die Notizen mit Time Stamps versehen sind. Diese Nachrichten wurden dann mit einem Python Skript in ein CSV konvertiert. Das CSV haben wir in eine Notion Datenbank importiert, wodurch wir die Notizen kategorisieren und priorisieren konnten. Außerdem haben wir To-Dos abgeleitet. Anschließend haben wir die Notion Datenbank wieder als CSV exportiert und dann mit einem anderen Python Skript in GitHub Tickets umgewandelt, da wir unsere Aufgaben mit GitHub Projects tracken.
Ausblick
Nach dem Test stehen nun die Fehlerbehebungen und gewünschten Verbesserungen ganz oben auf unserer To-do-Liste. Außerdem werden im nächsten Semester 1-2 weitere Module von TFG-Student*innen für unsere App entwickelt, sodass wir im Sommer direkt mit mehreren Spielen in die Stores starten können. Bis dahin möchten wir zudem weitere Features, wie beispielsweise Push-Benachrichtigungen, in die App integrieren und die bestehenden Funktionalitäten mit mehreren Gruppen durchtesten.
Learnings
Sebastian Koller
Wie die Semester zu vor war auch dieses Semester voller Learnings. Angefangen damit, was für einen enormen Aufwand es bedeutet, eine Krimi Dinner Geschichte zu entwickeln. Ich vermute, die nächsten werden weniger Aufwand, aber gerade bei der Ersten hat es sehr lange gedauert, bis wir eine Arbeitsweise gefunden haben, die es uns ermöglich, strukturiert die Geschichte zu überarbeiten.
Weiter ging es mit den in-App Käufen. Ich habe Revenue Cat bereits grundlegend in meiner Arbeit kennengelernt, ein Projekt und Käufe anlegen war aber vollkommen neu für mich. Hinzu kam, dass, um die Käufe Testen zu können, die App in App Store Connect und Play Console angelegt und hochgeladen werden musste, ebenfalls eine völlig neue Herausforderung.
Das programmatische Wissen und Können wird natürlich auch von Semester zu Semester besser, ein großer Punkt dieses Semester war die Verbesserung der Backend Strukturen. Dafür habe ich mich zum ersten Mal mit Portainer auseinandergesetzt. Außerdem habe ich einen externen Logging Mechanismus eingeführt, damit wir kritische Logs sowohl auf Betterstack, als auch per Telegram Nachricht, einsehen können.
Zu guter Letzt war die ganze Organisation, Umsetzung und Auswertung eines so umfangreichen User*innen-Tests auch etwas völlig neues für mich. Dass ich mich im Zuge der Auswertung auch etwas mehr mit Python auseinandersetzten konnte, hat mich sehr gefreut.
Selina Lehner
Die wohl größte Erkenntnis dieses Semesters war, wie aufwendig das Schreiben einer Krimi-Dinner-Geschichte tatsächlich ist. Neben einer spannenden Storyline, die bei uns bereits vom vorigen Semester gegeben war, muss darauf geachtet werden, dass alle Rollen ungefähr gleich viel zu tun haben, jeder genügend, aber nicht zu viele Informationen erhält und der*die Täter*in weder zu leicht noch unmöglich zu entlarven ist. Der Großteil unserer Zeit ist daher in die Ausarbeitung der Story geflossen, wodurch leider nur wenig Raum für programmatische Learnings bei mir blieb. Der User*innentest am Ende des Semesters hat mir aber gezeigt, dass sich die viele Arbeit auch rund um das Programmieren auch wirklich auszahlt und das größtenteils positive Feedback motiviert sehr, auch im nächsten Semester weiter dranzubleiben!
Nora Riglthaler
Genau wie für Sebastian und Selina, war auch für mich das größte Learning bzw. die größte Bestätigung, dass das Schreiben einer Krimi-Dinner-Geschichte viel Konzentration, Zeit und Aufwand benötigt. Für mich war von vorneherein klar, dass die Erstellung einer solchen Geschichten nicht mein Steckenpferd sein wird. Daher war ich auch sehr froh darüber, als wir im 2. Semester diese Aufgabe abgeben konnte. Dass wir uns im WS24 aber dann noch sehr viel mit der Editierung der Story beschäftigten mussten, fand ich dementsprechend etwas mühsam. Dafür wissen wir nun aber auch ganz genau, wie man die nächste Krimi-Dinner Geschichte planen bzw. welche Anweisungen der/die nächste Autor*in Personen von uns erhalten muss.
Hinsichtlich der Programmierung stand für mich am Anfang des Semesters ein großes Refactoring der Session-Abwicklung an. Auch das hat viel Geduld gekostet, aber es hat auch viel gebracht, denn seither und v.a. während des User*innen-Tests war diese eigentlich sehr robust. Nachdem dieser Teil erledigt war, konnte ich in diesem Semester auch wieder mehr im Frontend arbeiten, was zuerst ein längeres Einlesen gebraucht hat, da Sebastian und Selina wirklich viel geschafft haben, hat dann aber auch wieder viel Spaß gemacht. Als letzter größere Programmieraufgabe des WS24 habe ich die Integration von Swagger umgesetzt. Hier eine grundlegende Dokumentation aufzusetzen, ging recht einfach, doch möchte ich diese im kommenden Semester noch weiter ausarbeiten, da man bestimmt einige Sachen noch besser/schöner machen kann. Als abschließendes Learning muss ich noch den User*innen-Test hervorheben. Dieser lag mir seitdem die App funktionsfähig genug war, um einen ganzen Krimi Dinner Abend durchführen zu können, definitiv schwer im Magen. Wir haben wirklich schon viel Zeit, Schweiß und auch Tränen hineingesteckt und der Gedanke daran, dass diese Arbeit einen ganzen Abend lang ganz genau unter die Lupe genommen wird, vor dem habe ich mich schon gefürchtet. Für mich war die App nie „perfekt“ genug dazu – ich hätte da schon noch Stunden verbringen können, bis ich gesagt hätte. „So, jetzt wird getestet.“ Aber, wie uns einige Personen gesagt haben, es gibt kein (erstes) „perfektes“ Produkt und ohne User*innen-Tests kann es auch nie „perfekt“ werden. Daher bin ich wirklich Stolz auf uns, dass wir (oder eher ich) über unseren Schatten gesprungen sind und die App endlich wen anderen als unsere FH-Kolleg*innen und -Dozenten ausprobieren haben lassen. Und gut wars. Auch wenn wir wirklich viel Feedback und Verbesserungsvorschläge bekommen haben, was an sich natürlich schon extrem wertvoll ist, hatten auch alle eine schöne Zeit und viel Spaß. Und ich freu mich jetzt schon sehr auf die nächsten Tests
The comments are closed.