So baust du eine verzweigte Story, die nicht kaputtgeht
Lass deine KI jede Szene mit dem modellieren, was sie braucht und was sie ändert, und dann einen Checker jeden Weg durch deine Story ablaufen. Er findet Sackgassen und kaputte Wege, bevor es jemand beim Spielen tut, und nennt dir die genauen Szenen, die dorthin führen.
Warum geht meine verzweigte Story kaputt, wenn ich einen Weg hinzufüge?
In einem kleinen Piratenspiel kann man die Hängebrücke verbrennen oder stehen lassen. Später fügst du eine Szene hinzu, in der die Mannschaft über die Brücke geht, mit deinem eigenen Spieldurchlauf im Kopf. Wer die Brücke verbrannt hat, kommt jetzt nicht mehr weiter, und das Spiel hängt fest.
Der Grund ist einfache Mathematik. Zwei Entscheidungen mit je zwei Möglichkeiten ergeben vier Wege. Zehn Entscheidungen ergeben 1.024. Du spielst einen Weg, und die KI schreibt eine Szene nach der anderen. Alle zusammen sieht also niemand. Ein Checker schon.
Welche Fakten und Regeln halten eine verzweigte Story zusammen?
- Fakten: was jede Entscheidung geändert hat, etwa ob die Brücke noch steht.
- Jede Szene hat einen Weg nach vorn. Kein Weg endet anderswo als an einem Ende.
- Jede Entscheidung führt zu etwas Echtem. Keine Entscheidung zeigt auf eine Szene, die es nicht gibt.
- Jede Szene ist erreichbar. Keine Szene geht verloren.
- Was eine Szene braucht, stimmt. Keine Szene spricht von etwas, das auf diesem Weg nie passiert ist.
Wie sieht eine echte Prüfung aus?
Hier ist diese Brücke als Modell. Man verbrennt die Brücke oder lässt sie stehen. Hinübergehen braucht eine stehende Brücke. Danach kommt der Hafen und dann das Ende.
Wir haben diese erfundene Story am 2. November 2026 mit TLC 2.19 geprüft. Das ist die echte Ausgabe von TLC. Wir haben nur die Verwaltungszeilen weggelassen und jeden Schritt in eine Zeile gesetzt.
Error: Deadlock reached.
State 1: szene = "Start", bruecke = "steht"
State 2: szene = "Brücke verbrennen", bruecke = "verbrannt"
„Deadlock“ heißt, dass die Story stehen bleibt und nirgends mehr hinführt. Der Weg ist zwei Schritte lang: Start, Brücke verbrennen. Dieser Weg ist der Beweis, und dafür musste niemand eine Regel schreiben. Die Suche nach Sackgassen ist in TLC eingebaut.
Die Lösung: Wer die Brücke verbrannt hat, kann mit dem Boot zum Hafen fahren. Wir haben TLC noch einmal laufen lassen.
Model checking completed. No error has been found.
11 states generated, 9 distinct states found, 0 states left on queue.
TLC hat sich alle 9 Zustände angesehen, die die Story erreichen kann, und auf keinem Weg eine Sackgasse gefunden.
Muss ich jeden Weg einzeln schreiben?
Nein. Lass Wege auseinandergehen und wieder zusammenlaufen. Mit oder ohne verbrannte Brücke kommt man zum Hafen, und die Kapitänin sagt einen anderen Satz. Dafür muss sich das Spiel merken, was passiert ist. Siehe Entscheidungen, die wirklich zählen.
Muss ich das alles lesen?
Nein. Das Modell und die Ausgabe des Checkers musst du nie selbst lesen, denn deine KI schreibt es, führt es aus und sagt dir das Ergebnis in einfachen Worten. TLA+ ist eine Sprache zum Modellieren, und TLC ist das Werkzeug, das ein Modell prüft. Wenn TLC auf deinem Rechner nicht läuft, kann deine KI über unseren MCP-Server einen fertigen Checker holen und in deinem Projekt ausführen. Spielerando schaut sich deine Story nie an.
Bestanden heißt, dass deine Regeln auf jedem Weg im Modell gehalten haben. Es heißt nicht, dass deine Story gut ist, und es sagt nichts über Regeln, die niemand aufgeschrieben hat.
Das sagst du deiner KI
Lies meine Story nicht nur durch, um mir dann zu sagen, dass die Wege funktionieren. Modelliere sie und prüfe sie mit einem Werkzeug.
1. Lies meine gesamte Story. Wenn du meine Dateien nicht sehen kannst, bitte mich, sie einzufügen.
2. Schreib in einem Ordner story-check ein TLA+-Modell der Story.
- Fakten als Zustand: die aktuelle Szene und alles, was eine Entscheidung ändern kann.
- Schritte: jede Szene und jede Entscheidung, mit dem, was sie braucht und was sie ändert.
- Regeln: Lass TLC Deadlocks melden, das sind Sackgassen. Nur Enden dürfen stehen bleiben. Ergänze Invarianten: Keine Szene spricht von etwas, das auf diesem Weg nie passiert ist.
- Prüfe auch, ob jede Szene und jedes Ende erreichbar ist. Füge für jede und jedes eine vorläufige Regel hinzu, die sagt, dass es nie erreicht wird, und führe TLC aus. Bricht die Regel, ist der Trace ein Weg dorthin. Hält sie, führt nichts dorthin.
3. Führe den Model Checker TLC auf dem Modell aus, damit er jeden Weg abläuft. Wenn TLC hier nicht läuft, nutze get_recipe mit story-model-check über Spielerando und führe diesen Checker in diesem Projekt aus. Wenn du beides nicht ausführen kannst, sag es mir und behaupte nicht, dass etwas geprüft wurde.
4. Zeig mir für jede Sackgasse, gebrochene Regel oder verlorene Szene den genauen Weg durch die Szenen, in einfachen Worten, und zitiere die Zeile meiner Story, die das verursacht.
5. Ändere meine Story noch nicht. Schlag für jeden Fall eine Lösung vor und warte, bis ich auswähle. Führe Wege lieber wieder zusammen, statt neue anzulegen.
6. Aktualisiere nach jeder Lösung das Modell, führe den Checker erneut aus und zeig mir das Ergebnis.
Ab jetzt führst du den Checker jedes Mal aus, wenn du eine Szene hinzufügst oder änderst. Melde nur, welche Regeln gehalten haben, wie viele Zustände geprüft wurden und ob die Prüfung abgebrochen wurde. Sag mir nie, dass die Story gut ist. Wenn du nicht erkennen kannst, was eine Szene braucht, sag „Ich weiß es nicht“ und frag mich. Rate nicht.
Oder spar dir das und schließ den MCP an: Dann findet deine KI das alles von selbst.MCP anschließen
So prüfst du es
- Spiel den Weg, den du bekommen hast. Folge genau diesen Szenen im Spiel. Du solltest selbst stecken bleiben.
- Spiel den Weg, den du nie spielst. Nimm immer die Möglichkeit, die dir am wenigsten gefällt.
- Erreiche jedes Ende. Lass dir von der KI die genauen Entscheidungen für jedes Ende geben und folge ihnen.
- Füge eine neue Szene hinzu. Bitte um eine kleine neue Szene und schau, ob die KI den Checker ungefragt ausführt.