Textadventure mit KI erstellen, das Spieler versteht
Ein Textadventure spielt man lesend und tippend, also lass deine KI die ganze Welt in einer einfachen Liste aus Räumen, Gegenständen und Fakten führen. Bau drei Räume mit einer verschlossenen Tür und bring dem Spiel dann bei, wie unterschiedlich Menschen dasselbe sagen.
Warum ist das Tippen so schwer hinzubekommen?
Beim Spielen kann man wirklich alles eintippen. Sagen wir, du schreibst über einen Nachtportier in einem schlafenden Hotel, der bis zum Morgengrauen einen verschwundenen Gast finden muss. Du legst einen Messingschlüssel auf die Rezeption und erwartest „nimm schlüssel“. Getippt wird dann „schlüssel einstecken“, „heb den messingschlüssel auf“, „schau unter den tresen“ und „frag die katze“. Jedes „Das verstehe ich nicht“ reißt aus der Geschichte.
Das Spiel hat also zwei Aufgaben. Es muss verstehen, was getippt wurde, und es muss sich die Welt merken: Ist die Aufzugtür offen, steckt der Schlüssel in der Tasche, brennt der Heizkessel schon?
Halte diese Fakten vom Text getrennt. Steht „Auf dem Tresen liegt ein Messingschlüssel“ in der Raumbeschreibung, steht es auch dann noch da, wenn der Schlüssel längst weg ist.
Noch etwas gilt besonders auf Deutsch: Dasselbe Wort kommt in vielen Formen vor, etwa der Schlüssel und den Schlüssel, dazu „aufheben“, das sich beim Tippen in „heb auf“ teilt. Sag deiner KI das von Anfang an.
Tippen oder klicken?
Tippen bringt Überraschung und die Freude am schrägen Versuch, kostet aber deutlich mehr Arbeit. Klicken ist einfacher und klappt gut auf dem Handy. Magst du es lieber zum Anklicken, ist Twine einen Blick wert, ein Open-Source-Werkzeug für interaktive Geschichten, das Webseiten erzeugt. Vieles davon deckt auch der Blueprint zum Dialogsystem ab.
Sei vorsichtig mit einer live laufenden KI im Spiel. Sie erfindet womöglich ein fünftes Stockwerk oder verrät dein Ende.
Was baust du, und in welcher Reihenfolge?
Fang mit Eingangshalle, Aufzug und Heizungskeller an. Ein Schlüssel, eine verschlossene Tür, ein Hinweis im Gästebuch, ein Ende.
- Die Liste: Räume, Ausgänge, Gegenstände und wo jeder Gegenstand anfangs liegt.
- Gehen, Anschauen, Nehmen und Benutzen.
- Drei Formulierungen für jede Handlung.
- Fehlermeldungen, die weiterhelfen. „Der Aufzug braucht einen Schlüssel“ schlägt „Das geht nicht“.
- Einen Hilfe-Befehl, der anstupst, ohne zu lösen.
- Das Ende, und erst dann mehr Geschichte.
Woran scheitert ein Textadventure?
An der Sackgasse, die man nicht sieht. Der Portier lässt in Minute drei den einzigen Schlüssel in den Aufzugschacht fallen, und das Spiel läuft noch eine Stunde höflich weiter, obwohl niemand mehr gewinnen kann. Mehr dazu unter Quests, die nicht hängen bleiben.
Knapp dahinter kommt das Rätsel, das nur für den Autor Sinn ergibt. Zu jedem Rätsel muss irgendwo im Spieltext ein Hinweis stehen.
Das sagst du deiner KI
Bau ein Textadventure, in dem ich Befehle eintippe, lauffähig im Browser: drei Räume, eine verschlossene Tür, ein Schlüssel, ein Hinweis, ein Ende.
Zeichne zuerst den Spielablauf als Zustandsautomaten in einem Mermaid-Diagramm: Text zeigen, auf Befehl warten, verstanden oder nicht, Welt ändern, Ergebnis zeigen, Ende. Prüfe, dass jeder Zustand weiterführt, und bau erst dann daraus.
Halte alle Fakten in einer Datei fest: Räume, Ausgänge, Gegenstände, wo jeder Gegenstand gerade ist, was passiert ist. Setz die Raumtexte aus diesen Fakten zusammen, damit nie etwas erwähnt wird, das ich schon genommen habe. Versteh drei Formulierungen für jede Handlung, auch Wortformen wie „den Schlüssel“ oder „heb auf“.
Modelliere das Spiel aus diesen Fakten, jeden Befehl als Schritt mit dem, was er braucht und ändert, und Regeln wie „das Ende bleibt immer erreichbar“. Geh jeden Weg mit TLA+ und dem TLC Model Checker durch oder mit get_recipe story-model-check, falls Spielerando verbunden ist. Bricht eine Regel, nenn mir die genauen Befehle der Reihe nach. Das Modell muss ich nicht sehen.
Zitiere zu jedem Rätsel die Zeile im Spiel, die zur Lösung führt. Gibt es keine, oder ist etwas in meiner Geschichte noch nicht festgelegt, sag, dass du es nicht weißt, und frag mich.
Oder spar dir das und schließ den MCP an: Dann findet deine KI das alles von selbst.MCP anschließen
Deine KI behandelt jeden Befehl als einen Schritt, und ein Programm probiert alle Reihenfolgen durch, auf die niemand käme. Du siehst nur die Liste, die scheitert: Schlüssel nehmen, zum Aufzug gehen, Schlüssel fallen lassen, und das Ende ist weg. Das Rezept kommt über eine MCP-Verbindung, eingerichtet mit einer kostenlosen Anmeldung per Google oder E-Mail, und von dir wird nichts gelesen. Beim Schreiben helfen die Story-Seiten.
So prüfst du es
- Absichtlich falsch formulieren. Probier „nimm“, „heb auf“, „steck ein“, dann reinen Unsinn. Eine brauchbare Antwort sollte immer kommen.
- Nehmen und umschauen. Nimm den Schlüssel und schau dich um. Der Raum darf ihn nicht mehr erwähnen.
- Wegwerfen, was du brauchst. Versuch, den Schlüssel an einem schlimmen Ort zu verlieren. Gewinnen muss trotzdem noch gehen.
- Jemandem beim Tippen zusehen. Schreib alles auf, was scheitert, und sag nichts. Diese Liste ist deine nächste Aufgabe.