Erste Schritte
GameOut macht Schatzsuchen im Freien, die die Kinder auf ihren Handys spielen: eine Spur von Stationen auf einer Karte, ein Rätsel an jeder, ein Schurke, der ihnen schreibt, eine Uhr, von der Hinweise Zeit kosten, und am Ende ein Schatz. Sie bauen das Spiel hier, drucken seine Karten, schicken den Spielern einen Link – und beobachten sie in der Live-Konsole, während sie spielen.
- Melden Sie sich an. Kein Passwort auszudenken: melden Sie sich mit einem an Ihre E-Mail gesendeten Link an, oder mit einem Google- oder GitHub-Konto. Ein Konto wird beim ersten Mal angelegt. Anmelden
- Öffnen Sie das Beispielspiel. Jedes neue Konto beginnt mit einem (Beispiel: Operation TRUHE): eine ganze Schatzsuche mit sechs Stationen, dem Schurken, den Druckvorlagen und den Bildern. Öffnen Sie es, um zu sehen, wie ein Spiel gebaut ist, probieren Sie es am Handy über seinen Spielerlink aus, drucken Sie seine Karten. Es gehört Ihnen – ändern, kopieren oder löschen Sie es. Spiele
- Bauen Sie Ihr eigenes. Ein Spiel wird auf Reitern geschrieben: die Grundlagen und der Spielerlink, die Uhr und die Regeln, die Geschichte und die Texte des Schurken, die Stationen in Spielreihenfolge, das Quiz, die Bilder, das Gesicht des Schurken. Stellen Sie sich mit dem Handy an jeden Ort und drücken Sie „Meine Position speichern“, um die Nadel zu setzen. Speichern Sie, so oft Sie wollen – ein Entwurf mit Problemen ist in Ordnung, er kann nur noch nicht gestartet werden. Oder lassen Sie einen KI-Assistenten das Spiel schreiben und fügen Sie sein JSON im Reiter Import ein – die ganze Definition ist ein Dokument.
- Drucken und vorbereiten. Die Druckvorlagen geben Ihnen eine Checkliste, was wo zu verstecken ist, die Stationskarten mit den Ortscodes (falls das GPS versagt), den Brief des Schurken, den Spiegelbrief, die Buchstaben für die Klammern, die Schlüsselanhänger, die Morsetabelle und die Geheimkarte für den Rotfilter.
- Schicken Sie den Link. Schalten Sie den Spielerlink ein und geben Sie ihn den Spielern – als QR-Code, als Nachricht oder auf den Brief gedruckt. Niemand braucht ein Konto: Ein Spieler tippt seinen Namen (von Ihrer Liste, oder einen beliebigen, wenn Sie den Link geöffnet haben) und den Spielcode, falls Sie einen gesetzt haben. Die Kinder in einem Team teilen sich eine Uhr und einen Fortschritt.
- Beobachten und steuern. Die Live-Konsole zeigt die Uhr, die Station, die Spieler und den Chat jedes Teams. Sie können die Uhr anhalten, Zeit geben, eine Station als gelöst markieren, wenn ein Handy aufgegeben hat, einen Hilferuf als Schurke beantworten, Spieler zwischen Teams verschieben.
- Optional ein Skript oder einen Assistenten verbinden. Ein API-Schlüssel lässt Ihre eigenen Skripte Ihre Spiele und deren Live-Stand lesen – etwa eine Anzeigetafel auf einem Beamer. Ein KI-Assistent, der MCP spricht, kann die Spiele bauen und ändern, die Sie ihm öffnen. Beides ist unten beschrieben. API-Zugang
Spielen ist kostenlos: Ein kostenloses Konto hält ein Spiel und eine Handvoll Spieler, also eine Geburtstagsfeier. Ein bezahlter Zeitraum hebt diese Obergrenzen für eine feste Anzahl Tage an – nichts verlängert sich von selbst. Preise & Limits
Spiele in dieser App
Ein Spiel ist ein Dokument in drei Teilen: die Einstellungen (Geschichte, Uhr, Aussehen), die Stationen in Spielreihenfolge und das Quiz. Alles, was die Bearbeitungsseite zeigt, ist ein Feld dieses Dokuments, und das Ganze lässt sich als JSON herauskopieren und wieder einfügen – so liest und schreibt auch ein KI-Assistent ein Spiel.
Eine Station
Jede Station hat einen Ort (eine Nadel und einen Radius in Metern), einen Weg, sie zu finden, eine Aufgabe, die akzeptierten Antworten, Hinweise, die Zeit kosten, und einen Buchstaben, den sie enthüllt. Die Stationen schalten sich nacheinander frei: Die Spieler sehen die nächste erst, wenn sie die vorherige gelöst haben.
- Es finden - drei Wege: eine Nadel auf der Karte mit der Entfernung (der gewöhnliche), ein Foto des Ortes mit „wärmer / kälter“ vom GPS und ohne Nadel (ein Rätsel), oder nur Worte und die Entfernung.
- Ankommen - die Aufgabe erscheint, sobald das Handy im Radius ist (40 m standardmäßig – das GPS im Wald ist nicht genau). Jede Station hat auch einen Ortscode, auf ihre Karte gedruckt, den die Spieler eintippen, wenn das GPS versagt. Schalten Sie „Aufgaben erscheinen erst bei Ankunft“ aus, und die Aufgaben werden sofort gezeigt.
- Antworten - eine oder mehrere akzeptierte Antworten; Groß- und Kleinschreibung und diakritische Zeichen spielen keine Rolle, sodass „Beruška“, „beruska“ und „BERUSKA“ dieselbe Antwort sind. Eine falsche Antwort bekommt einen Spott vom Schurken, eine richtige die eigene Zeile der Station oder einen zufälligen Jubel.
- Hinweise - bis zu drei pro Station, in Reihenfolge, jeder kostet die Zeit, die die Uhreinstellungen sagen (2 and 3 Minuten standardmäßig). Der Joker „Gratis-Hinweis“ bezahlt einen.
- Buchstaben - jede Station darf einen Buchstaben enthüllen; die Buchstaben aller Stationen sind der Hinweis auf das finale Passwort. Lassen Sie den Buchstaben einer Station leer, wenn das Passwort kürzer ist als die Spur.
- Ein Handy-Werkzeug - eine Station kann eines der in die Spielerseite eingebauten Werkzeuge verlangen: einen Spiegel (die Kamera zeigt die Welt gespiegelt, um einen rückwärts geschriebenen Brief zu lesen), einen Kompass (für „20 Schritte nach Norden“), einen Morse-Empfänger, der ein von Ihnen gesetztes Wort piept und blinkt, einen Rotfilter über der Kamera, der den auf der gedruckten Geheimkarte versteckten Text enthüllt, und einen Alarmknopf für einen Hindernisparcours. Die Werkzeuge sind immer da; eines an der Station zu benennen setzt seinen Knopf unter die Aufgabe.
- Nur für Sie - „Was am Ort vorzubereiten ist“ kommt in die Checkliste, die Druckvorlagen (Spiegelbrief, Anweisungskarte, Schlüsselanhänger, Buchstaben für Klammern) auf die Druckseite. Die Spieler sehen sie nie.
- Die ID - ein kurzes Kürzel (s1, s2, …), unter dem der Fortschritt der Teams gespeichert wird. Das Umbenennen oder Entfernen einer Station eines laufenden Spiels verliert den Fortschritt dort. Eine deaktivierte Station wird von den Spielern übersprungen und für später behalten.
Die Einstellungen
- Die Uhr - das Zeitlimit (60 Minuten standardmäßig), was Hinweise kosten, wie lange der Einfrier-Joker die Uhr anhält (5 Minuten) und ab wie vielen verbleibenden Minuten die Spieler Zeit zurückgewinnen dürfen: Würfeln gegen den Schurken und Quizfragen, jede mit einem Bonus und jede nur begrenzt oft erlaubt. Wenn die Zeit um ist, geht das Spiel weiter – die Nachspielzeit wird rot gezeigt.
- Die Geschichte - der Name und das Gesicht des Schurken, der Brief, den die Spieler vor dem Start lesen, die Regeln, was der Schurke nach einer falschen oder richtigen Antwort sagt, wenn die Zeit knapp wird und wenn sie um ist, und das Finale: die falschen Ladezeilen, der Banner „übernommen“, die Rede, die Enthüllungszeile und eine Nachschrift.
- Das Finale - die akzeptierten Passwörter, ein Hinweis, ein Foto des Ortes mit dem Schatz und optional, wo auf dem Foto er ist – dort wird nach einem Countdown ein Ring gezeichnet.
- Das Aussehen - vier Farben der Spielerseiten und die Sprache ihrer Knöpfe und Beschriftungen (EN, CS, DE); die Texte des Spiels sind Ihre, in welcher Sprache auch immer Sie sie schreiben.
- Texte - schlicht, oder mit den Tags b, i, u, em, strong, br und small; alles andere wird entfernt. Emoji sind willkommen.
Bilder und das Gesicht
Die Bilder, die eine Station oder das Finale zeigt, werden auf dem Reiter Bilder hochgeladen – JPEG oder PNG bis 12 MB, beim Hochladen auf 1600 Pixel verkleinert – und auf der Station aus einer Auswahl mit Vorschaubildern gewählt. Das Gesicht des Schurken wird für Sie in vier Stimmungen gezeichnet (neutral, ein Zwinkern für die Anmeldeseite, traurig für das letzte Rätsel, lachend für die Enthüllung): „Überrasch mich“ zeichnet mit jedem Klick einen anderen Schurken – Kopfform, Haare, Augen, Nase, Mund, Bart, Hut – oder Sie wählen Stil, Farben und Teile selbst, und ein Seed zeichnet denselben Schurken noch einmal. Oder Sie laden ein Bild eines Gesichts hoch und verkleiden es mit Hut, Brille, Bart oder Maske, die darüber gezeichnet werden.
Entwürfe, Probleme und die Historie
Ein Spiel wird in mehreren Sitzungen geschrieben, deshalb wird es auch mit Problemen gespeichert – eine Station ohne Antwort, ein Finale ohne Passwort – und listet sie auf. Was ein Spiel mit Problemen nicht kann, ist GESTARTET werden: der START-Knopf der Spieler verweigert, bis sie behoben sind.
Jedes Speichern, das etwas änderte, bewahrt die Version davor auf der Historienseite des Spiels – die letzten 20 Änderungen, von Ihnen, einem freigegebenen Bearbeiter oder einem KI-Assistenten, jede mit der Angabe, was sie änderte. Das Wiederherstellen setzt den Namen, die Sprache, die Einstellungen, die Stationen und das Quiz zurück; es rührt nie die Schalter, die Bilder, die Spieler oder ihren Fortschritt an.
Die Definition als JSON
Der Reiter Import zeigt die aktuelle Definition und nimmt eine neue an. Es ist ein Objekt mit „settings“, „stations“ und „quiz“; ein fehlender Teil behält seine Standardwerte, jeder Wert wird auf dieselben Grenzen begrenzt, die die Bearbeitungsseite durchsetzt. Das genaue Schema ist das, was ein KI-Assistent als „capabilities“ bekommt – und das Beispielspiel ist das beste Beispiel für alle drei ausgefüllten Teile.
{
"settings": {
"villain": "Rascal",
"time_limit_sec": 3600,
"hint_penalty_sec": [120, 180],
"final": {"answers": ["piano"], "hint": "It plays music."},
"intro": {"title": "Top secret", "letter": "Hello, agents! ...", "rules": ["You have 60 minutes."]}
},
"stations": [
{
"id": "s1", "title": "The mirror message", "icon": "🪞",
"lat": 49.8989, "lng": 18.0044, "radius": 45, "nav": "map",
"nav_text": "Go to the end of the street...",
"task": "Read the letter with the <b>Mirror</b> tool.",
"tool": "mirror", "answers": ["squirrel"], "hints": ["Tap Tools - Mirror."], "letter": "P"
}
],
"quiz": [{"q": "How many legs does a spider have?", "o": ["6", "8", "10"], "a": 1}]
}
Teilen, kopieren und löschen
Ein Spiel wird mit einem anderen Konto über dessen E-Mail-Adresse geteilt, mit einer von zwei Berechtigungen. Eine Adresse, die noch niemand hat, bekommt die Freigabe in dem Moment, in dem sich ihr Besitzer zum ersten Mal anmeldet.
| Berechtigung | Was sie erlaubt |
|---|---|
| Ansehen, beobachten und kopieren | Das Spiel und seine Historie öffnen, es in der Live-Konsole beobachten, seine Karten drucken, es über die API oder einen eigenen KI-Assistenten lesen, solange die Schalter des Spiels an sind, und es in das eigene Konto kopieren. |
| Das Spiel bearbeiten und leiten | Alles oben, und das Spiel ändern, es aus der Live-Konsole leiten (die Uhr, die Teams, die Spieler, die Nachrichten) und eine frühere Version wiederherstellen. |
Keine Berechtigung erlaubt, das Spiel zu löschen, weiterzugeben, seinen Spielerlink zu erneuern oder den KI-Schalter umzulegen – das bleibt beim Besitzer, ebenso wie dessen Größenlimits: Ein freigegebener Bearbeiter kann keine Station über die Obergrenze des Besitzers hinaus hinzufügen. Eine Kopie ist ein Spiel im Konto des Kopierenden, mit derselben Definition und denselben Bildern, ohne Spieler, ohne Fortschritt, mit neuem Spielerlink und ausgeschaltetem Spielen – und zählt gegen dessen Obergrenzen.
Das Löschen eines Spiels entfernt seine Spieler, ihren Fortschritt, den Chat, die Historie, die Freigaben und die Bilder – sofort und endgültig.
Ein Spiel spielen
Der Spielerlink
Jedes Spiel hat eine Adresse – lang, zufällig und nicht zu erraten –, die für die Spieler die ganze Anmeldung ist. Sie ist aus, bis Sie sie einschalten, und Sie können ihr ein Enddatum geben. „Neuer Spielerlink“ auf der Bearbeitungsseite erstellt sofort einen anderen; der alte hört auf zu funktionieren, und jedes Handy wird abgemeldet.
Ein Spieler öffnet den Link und tippt einen Namen. Im Listenmodus kommen nur die Namen hinein, die Sie auf die Liste gesetzt haben (in der Live-Konsole); mit einem offenen Link kann jeder, der ihn hat, mit einem beliebigen Namen beitreten, bis zu dem von Ihnen gesetzten Limit und der Obergrenze des Kontos. Ein Spielcode – ein kurzes Wort, das Sie den Kindern sagen – kann in beiden Modi verlangt werden. Bei Namen spielt Groß- und Kleinschreibung keine Rolle, und ein Spieler, der den Link am selben Handy erneut öffnet, bleibt 7 Tage angemeldet.
Die Handys brauchen HTTPS, Standort und Kamera – die Seite fragt danach, wenn eine Station sie braucht. Chrome und Safari auf einem aktuellen Handy funktionieren; einem alten Browser fehlen vielleicht Kompass oder Kamera, und dafür sind die Ortscodes und die gedruckten Karten die Reserve.
Teams
Jedes Spiel beginnt mit einem Team, benannt wie in den Einstellungen, und jeder Spieler tritt ihm bei, sofern Sie sie nicht in der Live-Konsole in Teams sortieren. Ein Team teilt sich eine Uhr, einen Fortschritt, einen Chat und seine Joker: Was ein Kind löst, zählt für alle, und die Seite jedes Handys zieht innerhalb weniger Sekunden nach (die Handys fragen den Stand alle 5 Sekunden ab; ein Spieler gilt 90 Sekunden nach dem letzten Lebenszeichen als online).
Wie ein Spiel abläuft
- Das Briefing: der Brief des Schurken, die Regeln und der START-Knopf, der die Uhr des Teams startet.
- Eine Station: der Weg dorthin (die Karte, die Entfernung, der Kompasspfeil oder „wärmer / kälter“), dann bei Ankunft die Aufgabe, das Werkzeug, das Antwortfeld und die Hinweise.
- Die Joker: ein Gratis-Hinweis und ein Einfrieren, das die Uhr ein paar Minuten anhält – jeder einmal pro Team.
- Extra Zeit: Wenn die Uhr knapp wird, holen Würfeln gegen den Schurken und Quizfragen Minuten zurück; läuft sie ab, geht das Spiel in der Nachspielzeit weiter.
- Der Chat: Der Schurke schreibt den Spielern (das sind Sie, in der Konsole), die Spieler schreiben zurück, und ein Knopf „wir brauchen Rat“ markiert Ihnen das Team.
- Das letzte Rätsel: die gemischten Buchstaben und das Passwort – dann das falsche Laden, die Übernahme durch den Schurken, die Rede des Schurken (sie bleibt, bis die Spieler Weiter drücken), dazu das Lachen des Schurken – auf der Stelle erfunden oder aufgenommen –, bis die Spieler es auf dem letzten Bildschirm stoppen, der Countdown, das Foto des Ortes, die Statistik.
Die Live-Konsole
Ein Team auf einmal, alle paar Sekunden aktualisiert: die Uhr, an welcher Station das Team ist und wie viele Hinweise es genommen hat, wer angemeldet und online ist, der Chat und das Protokoll dessen, was geschah. Mit der Berechtigung „bearbeiten“ haben Sie die Hände dran:
- die Uhr – starten, pausieren, fortsetzen, Minuten geben oder nehmen, beenden, zurücksetzen;
- die Stationen – eine als angekommen oder gelöst markieren, wenn ein Handy aufgegeben hat, eine wieder öffnen, die Hinweise zurückgeben;
- die Joker – zurückgeben oder nehmen;
- der Chat – dem Team oder jedem Team als Schurke schreiben;
- die Teams und die Spieler – Namen zur Liste hinzufügen, einen Spieler verschieben, ein Team umbenennen oder löschen, den Fortschritt eines Teams zurücksetzen;
- und ZURÜCKSETZEN – jedes Team zurück zum Start, mit oder ohne die Spieler, für die nächste Gruppe.
Die Druckvorlagen
Eine eigene Seite für den Drucker: die Checkliste (was wo zu verstecken ist, aus den Stationen gebaut), der Brief des Schurken mit Link und Code, eine Karte pro Station mit Ortscode und Anweisungen, der gespiegelt gedruckte Spiegelbrief, die Buchstaben für die Klammern, die Schlüsselanhänger, die Morsetabelle und die Geheimkarte – blauer Text unter rotem Gekritzel, den der Rotfilter am Handy (oder ein Stück rote Folie) lesbar macht. Drucken Sie die Geheimkarte in Farbe; laminieren Sie alles.
Spiele-API
Ihre eigenen Skripte können Ihre Spiele lesen und ihren Verlauf beobachten: eine Anzeigetafel auf dem Beamer im Vereinsheim, ein Bot, der im Chat jubelt, eine Hausautomation, die klingelt, wenn der Schatz gefunden ist. Erstellen Sie einen API-Schlüssel auf der Seite API-Zugriff mit dem Scope „Spiele-API“ und senden Sie ihn im Authorization-Header. API-Zugang
Ein Spiel ist erreichbar, wenn sein Besitzer „API-Zugriff“ dafür eingeschaltet hat und der Besitzer des Schlüssels es besitzt oder es mit ihm geteilt wurde. Alles ist JSON; die Form eines Spiels ist die, die ein KI-Assistent sieht, sodass ein Skript und ein Assistent, die dasselbe Konto lesen, dieselben Felder lesen.
| Endpunkt | Was er antwortet |
|---|---|
GET https://gameout.xklid.net/api/v1/games |
Die Spiele, die der Schlüssel erreichen darf, neueste Änderung zuerst, mit limit und offset. |
GET https://gameout.xklid.net/api/v1/games/{id} |
Ein Spiel: seine Einstellungen, der Spielerlink, die Schalter, die ganze Definition (Einstellungen, Stationen, Quiz), die Namen seiner Bilder und seine Probleme. |
GET https://gameout.xklid.net/api/v1/games/{id}/status |
Das Spiel, wie es gerade gespielt wird: jedes Team mit seiner Uhr (gestartet, verbleibende Sekunden, beendet), seinen Stationen (erledigt, aktiv, gesperrt, Hinweise, wer sie gelöst hat), den Buchstaben, den Jokern, den Spielern und wer online ist, ob es um Hilfe gebeten hat, den letzten Ereignissen. |
POST https://gameout.xklid.net/api/v1/games/{id}/messages |
Eine Nachricht an die Spieler, unterschrieben vom Schurken: {"text": "...", "team_id": 12} – fehlende team_id oder 0 bedeutet jedes Team. Braucht bei einem geteilten Spiel die Berechtigung „bearbeiten“. |
curl https://gameout.xklid.net/api/v1/games/42/status \
-H "Authorization: ApiKey <Ihr API-Schlüssel>"
Antworten
- 200 - das oben beschriebene JSON; 201 für eine gesendete Nachricht.
- 401 - der Schlüssel fehlt, ist unbekannt, ausgeschaltet oder außerhalb seiner Gültigkeitsdaten.
- 403 - dem Schlüssel fehlt der Scope „Spiele-API“, er ruft von einer Adresse auf, die seine IP-Listen ablehnen, oder das Spiel ist nicht erreichbar: nicht Ihres, nicht geteilt oder sein API-Zugriff ist aus.
- 404 - kein solches Spiel oder kein solches Team.
- 422 - der Body ist nicht das, was der Endpunkt annimmt – etwa eine leere Nachricht – mit einem Code und einem Satz.
- 429 / 402 - Kontingent erschöpft – zu schnell, oder der Tag oder Monat ist verbraucht – mit Retry-After und den X-RateLimit-Headern. Ein abgelehnter Aufruf verbraucht nichts. Wie die Limits gezählt werden
Die API liest und sendet Nachrichten; sie baut keine Spiele und steuert nicht die Uhr. Bauen ist Sache der Web-App und eines KI-Assistenten, und die Uhr gehört dem Spielleiter in der Live-Konsole. Weitere Endpunkte folgen derselben Form, wenn sie hinzukommen.
KI-Zugriff (MCP)
MCP ist die Art, wie ein KI-Assistent mit einer Anwendung spricht. Diese App betreibt einen MCP-Server, sodass ein Assistent, den Sie schon nutzen, Ihnen eine ganze Schatzsuche schreiben kann – die Geschichte, die Stationen, die Hinweise, das Quiz – direkt in Ihr Konto, und sie im Gespräch ändern kann, statt dass Sie Dinge hin und her kopieren.
Was ein Assistent kann
- Die Spiele auflisten, die Sie ihm geöffnet haben – Ihre eigenen und die mit Ihnen geteilten –, und eines ganz lesen.
- Ein neues Spiel erstellen, ein bestehendes ändern oder eines kopieren.
- Ein laufendes Spiel beobachten: die Teams, ihre Uhren, wo sie sind, wer online ist.
- Diese Dokumentation, Ihre aktuellen Limits und Ihre jüngste Aktivität lesen.
Was ein Assistent niemals kann
Er kann niemals ein Spiel löschen oder teilen, Spieler hinzufügen oder entfernen, die Uhr anfassen oder den Spielern eines laufenden Spiels schreiben, Bilder hochladen, API-Schlüssel verwalten, Ihr Konto ändern, Zahlungen sehen oder tätigen oder E-Mails senden. Das sind keine Einstellungen, die Sie richtig setzen müssen – es gibt gar keinen Weg dazu, sodass nichts, was ein Assistent irgendwo liest, ihn dazu überreden kann.
Sie entscheiden, welche Spiele er sieht
Jedes Spiel beginnt für KI geschlossen. Sie schalten den KI-Zugriff pro Spiel ein, auf der Bearbeitungsseite dieses Spiels. Ein Assistent kann ein Spiel zurückgeben – er darf den KI-Zugriff ausschalten –, aber er kann sich nie eines nehmen: den KI-Zugriff EINzuschalten ist immer Ihre Sache, in der Web-App. Die eine Ausnahme ist ein Spiel, das der Assistent selbst für Sie erstellt hat: Das beginnt für ihn offen, damit das Gespräch weitergehen kann, und mit AUSgeschaltetem Spielen, damit ein halb geschriebenes Spiel nie hinter einem Live-Link steht.
Spiele, die andere mit Ihnen teilen, folgen derselben Regel, wobei der Schalter dem gehört, der das Spiel besitzt. Ein Assistent kann ein geteiltes Spiel lesen und beobachten, sobald sein Besitzer den KI-Zugriff dafür eingeschaltet hat, und es nur ändern, wenn die Freigabe Ihnen die Berechtigung „bearbeiten“ gibt.
Dasselbe gilt für den Schlüssel selbst. Ein Schlüssel erlaubt KI-Zugriff nur, solange sein Schalter „KI-Zugriff“ an ist, und ein neuer Schlüssel beginnt ohne ihn, sodass kein Schlüssel von Ihnen durch sein Entstehen KI-nutzbar wurde. Dieser eine Schalter ist alles, was ein Assistent braucht; der separate Schalter „Spiele-API“ am selben Schlüssel deckt Ihre eigenen Skripte ab.
Sie sehen, was er getan hat, und können zurückgehen
Jede Änderung, die ein Assistent macht, ist am Spiel markiert – wann sie geschah und ob der Assistent das Spiel erstellt hat – und die Version vor jeder Änderung wird auf der Historienseite des Spiels aufbewahrt, wo Sie sehen, was er geändert hat, und es mit einem Klick zurücksetzen. Jeder seiner Aufrufe steht in Ihrem Protokoll.
Ein Spiel, das ein Assistent schreibt, unterliegt denselben Regeln wie eines, das Sie schreiben: dieselben Grenzen für jedes Feld, dieselbe Problemliste, die den Start verhindert, dieselben Obergrenzen für Stationen pro Spiel und Spiele pro Konto.
Limits
Der KI-Zugriff hat eigene, engere Anfragelimits, getrennt von den API-Limits Ihrer Skripte und von allem, was die Spieler tun – ein Assistent, der sich schlecht benimmt, kann also nichts anderes aufbrauchen. Spiele erstellen und ändern ist viel enger begrenzt als lesen. Limits ansehen
Einen Assistenten verbinden
Es gibt zwei Wege, und welchen Sie nehmen, hängt von der KI-App ab: manche melden Sie an, manche haben ein Feld für einen Schlüssel. Beide öffnen dasselbe.
Durch Anmelden
Geben Sie der KI-App diese Adresse und sonst nichts. Sie schickt Sie zum Anmelden hierher, zeigt Ihnen, worum sie bittet, und Sie erlauben es. Es wird kein Schlüssel erzeugt und nichts irgendwohin kopiert:
https://gameout.xklid.net/api/mcp/
- Bevor Sie sie erlauben, zeigt die Seite, wie sich die App nennt, und die Adresse, an die sie Sie zurückschickt. Der Name ist nur, was die App behauptet; die Adresse ist der Ort, an den Ihre Erlaubnis wirklich geliefert wird - sie ist es also, die zu prüfen ist.
- Jede App, die Sie erlaubt haben, steht unter „Verbundene Apps“ auf der Seite API-Zugang, mit dem Tag der Verbindung und dem Zeitpunkt der letzten Nutzung. „Trennen“ beendet sie sofort - die nächste Anfrage der App wird abgelehnt.
- Sie erhalten eine E-Mail, sobald eine App mit Ihrem Konto verbunden wird - eine Verbindung, die Sie nicht herstellen wollten, bleibt so nicht unbemerkt.
- Eine Verbindung endet von selbst, wenn sie 30 Tage nicht genutzt wurde, und spätestens 365 Tage, nachdem Sie sie erlaubt haben. Dann fragt die App Sie erneut.
Mit einem Schlüssel
Einer KI-App, die ein Feld für einen Schlüssel oder einen Header hat, geben Sie dieselbe Adresse und einen Ihrer Schlüssel mit eingeschaltetem „KI-Zugriff“:
POST https://gameout.xklid.net/api/mcp/ Authorization: Bearer <Ihr API-Schlüssel mit KI-Zugriff>
Der Endpunkt spricht JSON-RPC 2.0 über HTTP – das Reden übernimmt ein MCP-Client, Sie fügen nur die Adresse und den Schlüssel ein. Dann bitten Sie: „schreib mir eine Schatzsuche für Achtjährige im Park hinter unserem Haus, sechs Stationen, ein Pirat als Schurke“ – und öffnen das Spiel, das er gemacht hat, auf der Seite Spiele.
Mit einer Client-ID und einem Client-Secret
Manche KI-Apps melden Sie an, wollen aber zuerst von Hand eingerichtet werden, mit einer Client-ID und einem Client-Secret. Jeder Ihrer Schlüssel hat eine Client-ID, die auf der Seite API-Zugang unter „Diesen Schlüssel als OAuth-Client verwenden“ steht; das Client-Secret ist der Schlüssel selbst.
- Tragen Sie die Weiterleitungsadressen, die die KI-App nennt, in die Liste des Schlüssels ein, eine pro Zeile, genau so, wie die App sie angibt - höchstens 10 pro Schlüssel. Mit leerer Liste meldet der Schlüssel niemanden an.
- Verwenden Sie einen Schlüssel pro KI-App. Jede hat dann ihre eigenen Gültigkeitsdaten, ihren eigenen Ein/Aus-Schalter und ihre eigenen IP-Listen, und das Beenden der einen berührt die anderen nicht.
- Eine mit Ihrem Schlüssel eingerichtete App können nur Sie erlauben - niemand sonst kann über sie angemeldet werden.
- Den Schlüssel auszuschalten, ihn ablaufen zu lassen oder seinen „KI-Zugriff“ auszuschalten, hält sofort jede über ihn verbundene App an. Den Schlüssel neu zu erzeugen, beendet diese Verbindungen endgültig.
Für den technischen Leser
Der Endpunkt ist ein MCP-Server über den Streamable-HTTP-Transport in seiner einfachsten Form: jede Nachricht ist ein POST mit einem JSON-RPC-2.0-Body und wird mit einem einfachen JSON-Body beantwortet. Es gibt keinen Ereignisstrom zum Abonnieren, keine Sitzungs-Id zum Aufbewahren und nichts, was der Server von sich aus sendet - eine Benachrichtigung wird mit 202 ohne Body bestätigt.
- Protokollrevision - der Server spricht 2026-07-28, die keinen Handshake kennt: jede Anfrage nennt ihre Revision und die Fähigkeiten ihres Clients in „_meta“ und spiegelt Revision, Methode und Namen in die Header MCP-Protocol-Version, Mcp-Method und Mcp-Name, und „server/discover“ beantwortet, was früher der Handshake beantwortete. Header, die nicht zum Body passen, werden mit 400 abgelehnt. Clients der früheren Revisionen werden wie bisher bedient: „initialize“ handelt eine von 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05 aus. Eine Revision, die der Server nicht spricht, wird mit der Liste derer abgelehnt, die er spricht.
- Authentifizierung - ein Berechtigungsnachweis im Authorization-Header und sonst nichts – es gibt keine Sitzung. Er ist entweder ein API-Schlüssel als „Bearer <key>“ oder „ApiKey <key>“ oder ein OAuth-Access-Token als „Bearer <token>“. Ein Schlüssel braucht eingeschalteten „KI-Zugriff“; seine Gültigkeitsdaten, sein An/Aus-Schalter und seine IP-Listen gelten genau wie bei der Spiele-API. Beachten Sie, dass ein Cloud-KI-Dienst von den eigenen Adressen des Anbieters aufruft, nicht von Ihren – eine Erlaubnisliste an einem solchen Schlüssel muss die Bereiche enthalten, die der Anbieter veröffentlicht, in CIDR-Notation.
- Origin - eine Anfrage ohne Origin-Header ist ein gewöhnlicher Agent-Client und wird durchgelassen. Eine Anfrage mit einem ist ein Browser, und dann muss der Origin der eigene dieser App sein oder einer, den die Installation erlaubt.
- Anfragegröße - ein JSON-RPC-Body von bis zu 1 MB – ein ganzes Spiel mit dreißig Stationen samt Texten liegt weit unter hundert Kilobyte.
Anmelden (OAuth 2.1)
Ein Client, der nichts als die Adresse des Endpunkts bekommen hat, ruft ihn auf, erhält 401 und findet den Rest von dort: der WWW-Authenticate-Header dieser Antwort nennt die Metadaten der geschützten Ressource, und diese nennen den Autorisierungsserver - diese selbe Anwendung.
| Metadaten der geschützten Ressource | https://gameout.xklid.net/.well-known/oauth-protected-resource/api/mcp |
| Metadaten des Autorisierungsservers | https://gameout.xklid.net/.well-known/oauth-authorization-server |
| Autorisierungsendpunkt | https://gameout.xklid.net/oauth/authorize |
| Token-Endpunkt | https://gameout.xklid.net/oauth/token |
| Registrierungsendpunkt | https://gameout.xklid.net/oauth/register |
| Widerrufsendpunkt | https://gameout.xklid.net/oauth/revoke |
| Ressource und Scope |
https://gameout.xklid.net/api/mcp,
mcp
|
- Ablauf - der Authorization-Code-Grant mit PKCE, Methode S256, von jedem Client verlangt. Eine Anfrage ohne Code Challenge wird abgelehnt; die Methode „plain“ wird nicht angenommen. Die Antwort auf die Erlaubnis trägt „iss“ (RFC 9207).
- Clients - drei Arten, unterschieden an der Form der Client-ID. Eine https-Adresse ist ein Client ID Metadata Document: es wird abgerufen, ohne Weiterleitungen zu folgen, und muss sich selbst und seine Weiterleitungsadressen nennen. Ein solcher Client ist öffentlich (Authentifizierungsmethode „none“) oder signiert (private_key_jwt, mit seinen Schlüsseln im Dokument oder unter seiner jwks_uri); ein gemeinsames Secret wird nicht angenommen. Ein Client kann sich am Registrierungsendpunkt selbst registrieren (RFC 7591); einer, der kein Secret verlangt, ist ein öffentlicher Client, einer, der signieren wird, muss seine Schlüssel mitbringen. Eine Registrierung, die niemand erlaubt hat, wird nach einem Tag gelöscht. Und jeder API-Schlüssel mit „KI-Zugriff“ ist ein Client: seine ID steht auf der Seite API-Zugang, sein Secret ist der Schlüssel, seine Weiterleitungsadressen sind die dort eingetragene Liste.
- Client-Authentifizierung - client_secret_basic, client_secret_post, private_key_jwt (RFC 7523, Algorithmen RS256, RS384, RS512, ES256, ES384, ES512; die Assertion nennt als Audience diesen Token-Endpunkt oder Issuer, gilt höchstens 60 Minuten und funktioniert nur einmal) oder none. Ein Client, der erklärt hat, wie er sich ausweist, wird bei jedem Austausch daran gehalten.
- Weiterleitungsadressen - werden Zeichen für Zeichen verglichen. Angenommen werden https-Adressen, Loopback-Adressen über einfaches http (localhost, 127.0.0.1, [::1] - beliebiger Port) und das eigene Schema einer App in umgekehrter Domain-Schreibweise oder eines von: cursor, vscode, vscode-insiders. Nie ein Fragment, nie ein Muster.
- Token - undurchsichtig und nur als Hash gespeichert. Ein Code gilt einmal und 60 Sekunden, ein Zugriffstoken 60 Minuten. Ein Refresh-Token wird einmal getauscht und bei jedem Tausch ersetzt; es läuft nach 30 Tagen ohne Tausch ab, die Verbindung 365 Tage, nachdem sie erlaubt wurde.
- Ein zweimal benutztes Token - ein Code, der ein zweites Mal getauscht wird, oder ein Refresh-Token, das mehr als 60 Sekunden nach seinem Tausch wiederkommt, beendet die ganze Verbindung: zwei hielten es, und niemand kann sagen, wer von ihnen es nicht hätte halten dürfen.
- Ohne eine Person - der Client-Credentials-Grant, nur für einen API-Schlüssel: die Client-ID des Schlüssels und der Schlüssel als Secret, im Authorization-Header (Basic) oder im Body. Er antwortet mit einem Zugriffstoken und ohne Refresh-Token. Der Schlüssel entscheidet durchgehend - ist er ausgeschaltet oder außerhalb seiner Gültigkeitsdaten, funktioniert das Token beim nächsten Aufruf nicht mehr.
- Was ein Token öffnet - den MCP-Endpunkt und sonst nichts. Die Spiele-API nimmt nur API-Schlüssel, und die Seiten der Web-App nehmen keines von beiden.
Die Werkzeuge
| Werkzeug | Was es tut |
|---|---|
list_games |
Die Spiele, die das Konto erreichen kann – seine eigenen mit KI-Zugriff an plus die mit ihm geteilten –, jedes mit der Angabe, ob es eigen oder geteilt ist, ob es geändert werden kann und ob sein Spielerlink live ist. |
get_game |
Ein Spiel vollständig: die Schalter, der Spielerlink, die ganze Definition als JSON, die Namen seiner Bilder, seine Probleme. |
get_game_status |
Das Spiel, wie es gerade gespielt wird – die Uhr jedes Teams, Station, Spieler, online, Hilferufe und letzte Ereignisse. Nur lesen. |
get_limits |
Was von jedem Kontingent übrig ist, wann jedes Fenster zurückgesetzt wird, und die Größenlimits des Kontos. Kostenlos. |
get_activity |
Was die Spieler der Spiele des Kontos zuletzt taten und wie viel des Zeitraums KI- und API-Aktivität war. |
search_docs |
Volltextsuche über diese Dokumentationsseite. |
create_game |
Ein neues Spiel aus einem Namen und einer Definition, als KI-erstellt markiert, mit KI-Zugriff an und Spielen AUS. |
update_game |
Ändert die gesendeten Felder und lässt den Rest in Ruhe; in der Definition werden gesendete „settings“ Schlüssel für Schlüssel zusammengeführt, gesendete „stations“ oder „quiz“ ersetzen die Liste. Der einzige Schalter, den es auf „aus“ stellen darf, ist der KI-Zugriff. |
clone_game |
Eine Kopie im Konto des Aufrufers: die Definition und die Bilder, keine Spieler, ein neuer Link, Spielen AUS. |
Neben den Werkzeugen sind unter dem Schema „gameout://“ fünf Nur-Lese-Ressourcen gelistet: diese Dokumentation, die festen Regeln einer Definition (ihr JSON-Schema, die Navigationsmodi, die Handy-Werkzeuge) und das eigene Kontingent, die Spiele und die Aktivität des Kontos.
Regeln, auf die ein Assistent trifft
- Ein Spiel ohne KI-Zugriff existiert für ihn nicht: nicht gelistet, nicht lesbar. Ein geteiltes Spiel ist erreichbar, sobald sein Besitzer den KI-Zugriff eingeschaltet hat, und nur mit der Berechtigung „bearbeiten“ änderbar.
- Eine Definition, die er sendet, wird nach denselben Regeln normalisiert wie auf der Bearbeitungsseite – ein Wert außerhalb der Grenzen wird begrenzt, ein unbekanntes Tag entfernt – und auch mit Problemen gespeichert, die jede Antwort auflistet. Ein Spiel mit Problemen können die Spieler nicht starten.
- Die Obergrenzen des Kontos gelten: höchstens so viele Spiele, so viele Stationen pro Spiel. Die Antwort sagt, was die Obergrenze ist und dass nur der Kontoinhaber sie anheben kann.
- Bilder können nicht gesendet werden; eine Station kann eines nennen, das der Spielleiter hochgeladen hat, und get_game listet die Namen.
- Das Umbenennen oder Entfernen einer Station eines laufenden Spiels verliert den Fortschritt der Teams dort; die Antwort von update_game nennt die Stationen, die verschwunden sind.
Ein fehlender oder ungültiger Berechtigungsnachweis antwortet 401, einer, der den Endpunkt nicht benutzen darf, 403 – beides als JSON-RPC-Fehler (Codes 4010 und 4030) mit einem WWW-Authenticate-Header. Ein Werkzeug, das lief und ablehnte – ein Spiel, das es nicht anfassen darf, eine erreichte Obergrenze, Argumente außerhalb seines Schemas – antwortet 200 mit einem Fehlerergebnis, das das Modell lesen und darauf reagieren kann. Ein erschöpftes Kontingent ist ein 429 oder 402, beschrieben unter Wie die Limits gezählt werden.
Wie die Limits gezählt werden
Nichts hier wird gemessen, und es gibt kein Guthaben, das ausgeht. Es gibt zwei Arten von Limits: Obergrenzen dafür, WIE VIEL ein Konto hält, und Zähler dafür, WIE SCHNELL seine Skripte und Assistenten aufrufen dürfen. Spielen – die Handys der Kinder – zählt gegen keines von beiden.
Die Größenlimits
How many games the account may hold, and how many stations, players, teams and pictures one game may have. These are what a free account notices: a few games and a handful of players is a birthday party, a paid period is a school. They are caps on what EXISTS, which is why sharing, copying and replaying a game cannot get around them:
- ein Spiel zählt im Konto, das es BESITZT, und seine Stationen, Spieler, Teams und Bilder sind durch die Obergrenzen seines Besitzers begrenzt – ein freigegebener Bearbeiter kann dem Spiel eines kostenlosen Kontos keine neunte Station hinzufügen;
- eine Kopie ist ein neues Spiel im Konto des Kopierenden und zählt dort;
- ein Spiel zurückzusetzen und mit der nächsten Gruppe erneut zu spielen kostet nichts – die Obergrenze sind die Spieler auf der Liste, nicht wie oft sie spielen;
- läuft ein Zeitraum aus, bleiben die Spiele, wie sie sind; was das Konto nicht mehr kann, ist über die kostenlosen Obergrenzen hinaus hinzufügen.
Die Zahlen selbst stehen auf der Preisseite. Ein Konto pro Person. Faire Nutzung
Drei getrennte Kontingente
- Die Web-App - wie viele der schwereren Aktionen Sie pro Tag auf den Seiten dieser Anwendung ausführen: ein Spiel anlegen oder kopieren, ein Bild hochladen, das Gesicht des Schurken zeichnen oder verkleiden. Ein Spiel zu speichern, das Sie schon haben, kostet nichts, wie der Tag auch aussieht.
- API-Aufrufe - was Ihre eigenen Skripte über die Spiele-API lesen.
- KI-Aufrufe - jeder Aufruf, den ein Assistent über den MCP-Endpunkt macht, mit zwei engeren Zählern darin: einer für Aufrufe, die ein Spiel ÄNDERN, und einer für Aufrufe, die eines ERSTELLEN oder kopieren.
Es sind getrennte Zähler, keine Anteile einer einzigen Zahl. Ein Assistent, der sich danebenbenimmt, kann nicht das Kontingent aufbrauchen, mit dem Ihre eigenen Skripte laufen - genau diese Trennung ist der ganze Sinn des KI-Zählers.
Was ein Aufruf verbraucht
| Der Aufruf | Was es verbraucht |
|---|---|
| Ein Spieler, der sich anmeldet, den Stand abfragt, antwortet, chattet | nichts von Ihrem – nur Fair Use pro Spiel und pro Handy |
| Ein Spiel in der Web-App erstellen oder kopieren | 1 Aktion in der Web-App |
| Ein Bild hochladen, ein Gesicht zeichnen oder verkleiden | 1 Aktion in der Web-App |
| Ein Spiel speichern, das Sie schon haben, drucken, die Live-Konsole verfolgen | nichts |
| Ein Lesezugriff oder eine Nachricht aus Ihrem eigenen Skript | 1 API-Aufruf |
| Ein Assistent verbindet sich oder fragt, was vom Kontingent übrig ist | nichts vom Tag – nur pro Minute begrenzt |
| Ein Assistent, der Spiele auflistet, liest oder beobachtet | 1 KI-Aufruf |
| Ein Assistent, der ein Spiel ändert | 1 KI-Aufruf + 1 KI-Änderung |
| Ein Assistent, der ein Spiel erstellt oder kopiert | 1 KI-Aufruf + 1 KI-Änderung + 1 neues Spiel |
Wie ein Zeitfenster gezählt wird
Ein Tageslimit läuft 24 Stunden ab dem ersten Aufruf, der es startet, nicht ab Mitternacht; eine Monatsobergrenze – die des kostenlosen Kontos – 30 Tage ab dem ersten Aufruf. Jeder Zähler wird VOR der Arbeit gefragt und NACH ihr gezählt, und nur wenn die Arbeit getan wurde: ein abgelehnter Aufruf, ein fehlgeschlagener, ein 403 und ein 404 verbrauchen nichts. Das Dashboard zeigt jeden Zähler und den Moment, an dem er zurückgesetzt wird.
Ein zu schnelles Skript bekommt 429, eines, das seinen Tag oder Monat verbraucht hat, 402 – beides mit Retry-After in Sekunden und den Headern X-RateLimit-Limit, X-RateLimit-Remaining und X-RateLimit-Reset auf jeder gezählten Antwort. Ein Assistent bekommt dasselbe als JSON-RPC-Fehler (Codes 4290 und 4020) und bei jeder gewöhnlichen Antwort das verbleibende Kontingent – damit er sagen kann „heute ist noch Platz für zwei Spiele“, statt neunmal abgelehnt zu werden.
Die Handys eines Spiels zusammen und jedes Handy für sich sind pro Minute auf Zahlen begrenzt, die für eine gleichzeitig abfragende Klasse bemessen sind – von Kindern nie erreicht, nur von einem Skript – und Anmeldeversuche an einem Spiel sind pro Stunde und Adresse begrenzt, da ein Spielcode ein Wort ist, das ein Kind tippt, und ein Wort, das ein Skript erraten könnte. Nichts davon kann Ihnen ausgehen.
Ihr Konto
Anmelden
Drei Wege, alle ohne eigenes Passwort: ein magischer Link an Ihre E-Mail-Adresse, ein Google-Konto oder ein GitHub-Konto. Was Sie zuerst nutzen, erstellt das Konto; auf der Profilseite können Sie später weitere E-Mail-Adressen hinzufügen und die anderen Anmeldungen mit demselben Konto verknüpfen. Ein an eine Ihrer Adressen geteiltes Spiel landet in diesem einen Konto. Die Spieler melden sich nirgends an – der Spielerlink ist ihre ganze Anmeldung. Profileinstellungen
Die Übersicht und das Protokoll
Das Dashboard zeigt, wie viel der Kontogröße Sie nutzen, wie viel jedes Tageskontingents verbraucht ist und wann es zurückgesetzt wird, was die Spieler zuletzt taten – gestartete Spiele, gefundene Schätze, gelöste Stationen –, die meistgespielten Spiele und den Stand Ihrer API-Schlüssel und Ihres Zugangs. Bevor ein API-Schlüssel abläuft, bekommen Sie eine E-Mail. Übersicht
Das Benutzerprotokoll ist die vollständige Aufzeichnung hinter diesen Zahlen: jeder Aufruf eines Assistenten oder Skripts und die Kontoereignisse. Die Ereignisse der Spieler selbst – wer was wann gelöst hat – stehen in der Live-Konsole jedes Spiels. Protokolleinträge werden für die im rechtlichen Hinweis genannte Dauer aufbewahrt und dann gelöscht. Benutzerprotokoll
Zugang und Abrechnung
Jedes Konto ist kostenlos, mit Obergrenzen, die einer Familie reichen. Der Kauf eines Zeitraums von Tagen hebt die Obergrenzen für seine Dauer an und ändert sonst nichts; es gibt kein Abonnement und nichts zu kündigen. Zeiträume, die während eines laufenden gekauft werden, werden an dessen Ende angehängt. Läuft ein Zeitraum aus, bleiben die Spiele; nur das Hinzufügen über die kostenlosen Obergrenzen hinaus endet. Preise & Limits
Hilfe bekommen
Angemeldet erreicht das Kontaktformular den Betreiber direkt. Fragen, wie ein Spiel gebaut ist, beantwortet meist diese Seite – und ein mit Ihrem Konto verbundener KI-Assistent kann sie für Sie durchsuchen. Kontaktieren Sie uns
Löschen des Kontos
Das Löschen des Kontos entfernt die Spiele mit ihren Bildern, Spielern, dem Fortschritt, den Chats und der Historie, die gegebenen und erhaltenen Freigaben, die API-Schlüssel – jedes Skript und jeder Assistent, der sie nutzt, hört sofort auf –, die Adressen, die verknüpften Anmeldungen und einen verbleibenden bezahlten Zeitraum, der nicht erstattet wird. Es kann nicht rückgängig gemacht werden. Was behalten wird und warum, steht im rechtlichen Hinweis. Impressum