= Spezifikation für Challenge-Rooms
Jakob Gegeniger <Jakob.Ger@gmail.com>
v1.0.0, 2026-07-31
:toc: macro
:toc-title: Inhaltsverzeichnis
:sectnums:
:icons: font
:header: Spezifikation für Challenge-Räume
:footer: Jakob Gegeniger <Jakob.Ger@gmail.com> - v1.0.0, 2026-07-31
:plantuml-server-url: http://www.plantuml.com/plantuml

toc::[] 

== Einführung

Im Folgenden werden die Anforderungen an die Challenge-Räume definiert. 
Challenge-Räume sind kleine Räume in einer Größe von 3x3 m bis 6x6 m, in denen verschiedene Aufgaben und Herausforderungen aufgebaut sind.

* Die Besucher können diese Herausforderungen in mehreren Schwierigkeitsstufen absolvieren. 
* Für jede Herausforderung steht den Spielern eine fest definierte Zeit zur Verfügung.
* Zum Abschluss wird ein Ergebnis angezeigt, anhand dessen die Spieler ihre Leistung mit vorherigen Ergebnissen sowie mit anderen Gruppen vergleichen können.

== Aufbau

Der elektronische Aufbau eines Challenge-Raums ist im Folgenden dargestellt. 

image::pics/challengeRooms/challengeRoom.drawio.png[Challenge-Raum Aufbau, align="center"]

Der Raum besteht aus folgenden Komponenten:

. PC: Zur zentralen Steuerung des Raums. Der PC betreibt alle nötigen Dienste, um folgende Aufgaben zu erfüllen:
    * Zugangskontrolle 
    * Spielsteuerung
    * Soundkulisse
    * Rückmeldung der Errungenschaften
    * Integration der Quests
. Lock: Physische Verriegelung der Tür, damit die aktuell spielende Gruppe nicht durch nachrückende Besucher gestört wird.
. Registration: Ein RFID-Lesemodul, an dem sich die Spieler anmelden können.
. Gastmonitor: Ein Monitor, der für den Außenbereich gut sichtbar angebracht ist. Besucher können ablesen, ob der Raum aktuell belegt ist, welches Thema er beinhaltet und wie der aktuelle Highscore lautet.
. Raum-Monitor: Ein in den Raum gerichteter Monitor für die aktiven Spieler. Hier werden Spielanweisungen angezeigt, der Schwierigkeitsgrad kann gewählt und gegebenenfalls die Sprache umgestellt werden. Während des Spiels liefert er weitere Hinweise und zeigt den Score sowie die verbleibende Zeit an.
. Audio: Ein lokal verbauter Verstärker beschallt den Raum eigenständig. Im Idealfall lässt sich die lokale Anlage auch bei Notfällen mit der Zentrale zusammenschalten, um Störungen oder Warnmeldungen durchzusagen.
. GameTerminal: Wo nötig, werden zusätzliche Bedieneinheiten für die Spielsteuerung verbaut. Diese bestehen in der Regel aus Tastern, Knöpfen und Signallichtern.
. Hub-Electronics: Steuerungshardware, die über IP mit dem Raum-PC verbunden ist und als Schnittstelle für weitere Sensoren/Aktoren dient (z. B. in Form eines PoE-Switches).
. Node (Knotenpunkt): Nodes sind Mikrocontroller/Elektroniken, die I/O via serieller Schnittstelle oder IP bereitstellen. Es gibt spezialisierte Nodes für unterschiedliche Aufgaben:
    * Einfache digitale I/O-Module zum Erfassen und Schalten von digitalen Signalen.
    * LIDAR-Nodes: Zur Flächenüberwachung, um unzulässige Bewegungen zu registrieren.
    * Media-Nodes: Audiovisuelle spezialisierte Terminals mit autarken Spielelementen, die über TCP/IP gesteuert werden.
. Success-Terminal: Diese Einheit wird am Ende eines Parcours aufgestellt. An diesem Terminal loggen sich die Spieler aus, um das erfolgreiche Ende der Strecke zu bestätigen.

WARNING: Die Türsteuerung ist eine sicherheitsrelevante Komponente. Es muss sichergestellt sein, dass sich die Tür im Bedarfsfall durch externe Signale zuverlässig öffnen lässt.

== Ablauf

Der generelle Ablauf wird in der folgenden Übersicht zusammengefasst:

image::out/pics/challengeRooms/gameRun/gameRun.png[Spielablauf, align="center"]

. Anmeldung: Die Spieler melden sich mittels ihres RFID-Tags an.
    * Es wird serverseitig geprüft, ob das Tag gültig ist.
    * Bei erfolgreicher Autorisierung wird der Spieler mitsamt seiner Gruppe dem Raum zugeordnet. Das System wartet dann auf die Registrierung der restlichen Teammitglieder.
    * Sind alle Gruppenmitglieder abgemeldet, wird das Spiel freigegeben.
. Spielmodus wählen: Die Spieler erhalten die Möglichkeit, am Bildschirm den Schwierigkeitsgrad auszuwählen und bei Bedarf die Sprache zu ändern. Sobald der Schwierigkeitsgrad festgelegt wurde, verriegelt die Tür und das Spiel startet.
. Das Spiel wird autark durch den lokalen Raum-PC verwaltet. Der Raum-PC steuert dabei:
    * Die Spielmechanik
    * Die Musik und Soundkulisse
    * Die Auswertung der erreichten Punkte (Score)
. Nach Ablauf des Spiels werden die Spieler aufgefordert, den Raum zu verlassen, und die nächste Gruppe kann sich zur Anmeldung vor der Tür einfinden.

== Alternative Modi

Wenn ein Spieler den Raum betritt, ohne einen Schwierigkeitsgrad auszuwählen (und folglich den normalen Spielablauf nicht auslöst), befindet sich der Raum im Quest-Modus. 

Das bedeutet: Löst der Spieler ein speziell im Raum verstecktes Rätsel, wird dies über den Raum-PC gemeldet, als würde es sich um ein von der Halle losgelöstes I/O-Gerät handeln. 

== Themen 

Das Angebot umfasst eine Reihe thematisch unterschiedlich ausgerichteter Challenge-Räume:

* Skills / Geschick / Geschwindigkeit
* Fitness / Kraftausdauer
* Intelligenz / Logik

Es ist vorstellbar, diese Grundausrichtungen in das Thema der altgriechischen Elemente einzubinden, wie zum Beispiel:

* Erde
* Luft
* Wasser
* Feuer

== User-Interface 

Nachfolgend werden die vorgeschlagenen Ansichten für die Benutzer im Empfangsbereich (Gast) und innerhalb des Raumes dargestellt.

=== Gastmonitor

image::pics/challengeRooms/GuestScreen.drawio.png[Gast-Monitor, align="center"]

Das Interface im Gastbereich soll folgende Informationen auf einen Blick liefern:

. Art des Spiels
. Benötigte Fähigkeiten / Anforderungen
. Kurzbeschreibung
. Highscore

=== Raum-Monitor

image::pics/challengeRooms/RoomScreen.drawio.png[Raum-Monitor, align="center"]

Die Anzeige im Innenbereich des Raums bietet dem aktiven Team folgende Informationen:

. Verbleibende Zeit
. Aktueller Score
. Spielanweisungen und Hinweise