Zum Inhalt springen
Alle Projekte
SoftwareentwicklungAbgeschlossen2026

Room of Horror

Room of Horror verwandelt eine klassische Prüfung zur Pflegesicherheit in eine immersive VR-Übung: Auszubildende durchsuchen ein bewusst fehlerhaft eingerichtetes Krankenzimmer nach Gefahren, bewertet durch eine gewichtete, kritikalitätsgesteuerte Auswertungslogik. Es ist ein fünfteiliges System — ein Unity-VR/Desktop-Client, ein Backend aus TypeScript, Express und PostgreSQL mit Echtzeit-WebSockets sowie ein React-Dashboard für die Lehrkraft — rund um den Gedanken, dass „kein Patient Standard ist“: Sechs unterschiedliche Patientenprofile verändern, was jeweils als Fehler zählt.

Rolle
Lead-Entwickler (7-köpfiges Studierendenteam)
Jahr
2026
Status
Abgeschlossen
Kategorie
Softwareentwicklung
Werkzeuge & Technologien
UnityC#XR Interaction ToolkitTypeScriptNode.jsExpressPostgreSQLSocket.IOReact
The virtual hospital room in Room of Horror, with a patient in bed, monitors, and a mobile care trolley.

Das Problem

Pflege-Auszubildende lernen das Erkennen von Sicherheitsrisiken traditionell über schriftliche Prüfungen oder riskante Praxis am echten Patienten. Es fehlt ein sicherer, wiederholbarer und messbarer Weg, die Fähigkeit „die Gefahr auf einen Blick erkennen“ zu trainieren — besonders bei Patienten unterschiedlichen Alters, Körperbaus, unterschiedlicher Sprache und Herkunft.

Kontext

Ein Softwaretechnik-Projektmodul an der HWR Berlin, Sommersemester 2026, entwickelt mit dem Bundeswehrkrankenhaus Berlin als Anwendungspartner und aufbauend auf einer früheren Version 1.0. Ich verantwortete rund drei Viertel der Commits in einem siebenköpfigen Team.

Prozess

Diversität als vollwertige Daten

Die prägende Entscheidung war, Patientenvielfalt als Daten und nicht als Kosmetik zu behandeln. Sechs Patientenprofile tragen jeweils eigene Stammdaten, einen eigenen Avatar und patientenspezifische Fehlerszenarien — so lehrt dasselbe physische Zimmer je nach Person im Bett andere Lektionen.

Eine Patientenakte in der VR — ein mehrseitiges Klemmbrett — enthält Dokumentationsfehler und Entscheidungsdialoge, etwa das Hinzuziehen eines Dolmetschers oder das Auflösen eines Allergiekonflikts, sodass die Gefahren nicht nur physische Requisiten sind.

  • Sechs Patientenprofile, jeweils mit eigenen Fehlerszenarien
  • 32 katalogisierte Fehler, nach Schweregrad bewertet (1–5)
  • Barrierefreiheit: Simulationsmodi für Farbfehlsichtigkeit und Teleport-Fortbewegung

Eine Live-Schleife für die Lehrkraft

Ein Spielcode verbindet eine Browser-Sitzung mit einer Headset-Sitzung. Über eine Web-Konsole wählt die Lehrkraft einen Patienten, legt Fehler fest und setzt ein Fehlerbudget; eine WebSocket-Schicht überträgt gefundene Fehler und Fehltritte in Echtzeit zurück. Nach der Runde fasst ein Dashboard das Ergebnis zusammen, schlüsselt es nach Kategorie auf und erzeugt eine Rückmeldung für die Trainer.

Zentrale Entscheidungen

Gewichtete, kritikalitätsgesteuerte Bewertung

Statt einer bloßen Punktesumme bewertet eine eigene Auswertungspipeline jeden Fehler nach Schweregrad und wendet ein hartes „Kritisch“-Tor an — wird ein kritischer Befund übersehen, fällt eine ansonsten bestandene Runde durch. Bewertung und Rückmeldungserzeugung sind getrennte Stufen.

Eine Interaktionsschicht, zwei Eingabemodi

Dasselbe Spiel läuft in VR und in einem einfachen Desktop-Modus (Maus + Tastatur), wobei die Fehler-Interaktionslogik von der Eingabeart entkoppelt ist. Das machte das Projekt ohne Headset testbar und vorführbar.

Umsetzung

Architektur

Ein Monorepo trennt den Unity-Client, die Node/Express/TypeScript-API, das React-Dashboard, die 3D-Modellquellen und eine Jekyll-Doku-Site. Das Backend ist domänenpartitioniert (Datenbank, Endpunkte, Auswertung, Schemas, WebSocket, E-Mail), die Konfiguration wird beim Start per Zod validiert und Geheimnisse werden in Umgebungsdateien gehalten.

Datenfluss: Lehrkraft (React) ↔ REST + Socket.IO ↔ Express/PostgreSQL ↔ Unity-Client, wobei ein Raumkonfigurator auf der Unity-Seite das physische Zimmer je nach gewähltem Patienten und Fehlern neu aufbaut.

Galerie

Die Web-Konsole der Lehrkraft mit der Patientenauswahl — sechs Profile, darunter Lina, Alex, Julia, Fatima, Daniel und Carlos — mit den Stammdaten von Carlos García.
Die Konsole der Lehrkraft: Auswahl eines von sechs Patientenprofilen (oder eines zufälligen Patienten), jeweils mit eigenen Stammdaten und Fehlerszenarien.
Weiter Blick in das virtuelle Krankenzimmer von der Tür aus — ein Bett am Fenster, Rollstuhl, Rollator, Monitore und ein Pflegewagen.
Das Zimmer, das der Auszubildende durchsucht — bewusst mit zu findenden Gefahren eingerichtet, spielbar in VR oder im Desktop-Modus.

Ergebnisse

  • Alle acht Ziele der unterzeichneten Zielvereinbarung erreicht (MUSS 2/2, SOLL 2/2, KANN 4/4).
  • 6 Patientenprofile und 32 nach Schweregrad und Kritikalität gewichtete Fehler ausgeliefert, mit Live-Überwachung durch die Lehrkraft und generierter Rückmeldung nach jeder Runde.
  • Übergabe in Richtung eines realen Praxistests mit Pflege-Auszubildenden am Partnerkrankenhaus.

Gelernte Lektionen

  • Eine einzige Interaktionsschicht für VR und Maus-und-Tastatur zu entwerfen, hielt das Projekt ohne Headset testbar und vorführbar.
  • Diversität als vollwertige Daten zu modellieren — statt als kosmetische Avatare — ist das, was dasselbe Zimmer unterschiedliche Lektionen lehren ließ.