So baust du Quests, die nicht hängen bleiben
Eine Quest bleibt hängen, wenn einer ihrer Schritte etwas braucht, das nicht mehr da ist, etwa eine Person, einen Gegenstand oder einen Ort. Lass deine KI modellieren, wer wo ist und wer was hat, dann zeigt dir ein Checker den genauen Weg durch die Szenen, der eine Quest ohne Lösung zurücklässt.
Warum bleibt meine Quest hängen?
Oskar der Fischer bittet dich, sein verlorenes Netz zu finden. Dann schickt die Hauptstory Oskars Boot in Kapitel 3 weg. Wer das Netz in Kapitel 4 findet, hat niemanden mehr, dem er es geben kann. Die Quest bleibt für immer offen.
Die KI hat Quest und Hauptstory zu verschiedenen Zeiten geschrieben. Jedes für sich funktioniert. Niemand hat gefragt, was passiert, wenn beides aufeinandertrifft, und „pass bei Quests auf“ findet das nicht. Es zeigt sich nur auf den Wegen, auf denen sich beides kreuzt.
Welche Fakten und Regeln verhindern hängende Quests?
- Fakten: wer wo ist, wer lebt, wer was hat und wie weit jede Quest ist.
- Jede Quest lässt sich abschließen. Solange eine Quest offen ist, muss jemand oder etwas sie noch abschließen können.
- Benötigte Gegenstände bleiben erreichbar. Nichts, was die Quest braucht, lässt sich ohne Ersatz verkaufen, fallen lassen oder verbrauchen.
- Die Reihenfolge spielt keine Rolle. Ist das Netz schon da, wenn Oskar danach fragt, geht die Quest weiter.
- Keine Quest braucht, was eine andere verbraucht hat.
Die übliche Lösung ist ein Ausweg: eine andere Person, ein Ersatzgegenstand oder ein anderes Ende der Quest.
Wie sieht eine echte Prüfung aus?
Hier ist Oskar als Modell. Er bittet um sein Netz. Man kann es ihm gleich geben, oder Kapitel 3 kommt zuerst, und sein Boot fährt ab. Das Modell führt eine Liste, wer das Netz nehmen kann.
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: Invariant JedeOffeneQuestBleibtLoesbar is violated.
State 1: szene = "Start", kannNetzNehmen = {"Oskar"}, quest = "nicht begonnen"
State 2: szene = "Oskar bittet um sein Netz", kannNetzNehmen = {"Oskar"}, quest = "offen"
State 3: szene = "Kapitel 3: Oskars Boot fährt ab", kannNetzNehmen = {}, quest = "offen"
Auf dem Weg Start, Oskar bittet um sein Netz, Kapitel 3 ist die Quest noch offen, und die Liste, wer das Netz nehmen kann, ist leer. Dieser Weg ist der Beweis.
Die Lösung: Oskars Schwester bleibt im Dorf und nimmt das Netz. Wir haben TLC noch einmal laufen lassen.
Model checking completed. No error has been found.
11 states generated, 8 distinct states found, 0 states left on queue.
TLC hat sich alle 8 Zustände angesehen, die die Story erreichen kann, und die Regel hat auf jedem Weg gehalten.
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 Quests gut sind, und es sagt nichts über Regeln, die niemand aufgeschrieben hat.
Das sagst du deiner KI
Lies meine Quests nicht nur durch, um mir dann zu sagen, dass sie funktionieren. Modelliere sie und prüfe sie mit einem Werkzeug.
1. Lies alle Quests und die Hauptstory. Wenn du meine Dateien nicht sehen kannst, bitte mich, sie einzufügen.
2. Lege story-bible.md an, falls es die Datei noch nicht gibt. Füge einen Abschnitt Quests hinzu, mit den Schritten, was jeder Schritt braucht (Person, Gegenstand, Ort) und was ihn abschließt.
3. Schreib in einem Ordner story-check ein TLA+-Modell der Story.
- Fakten als Zustand: wer wo ist, wer lebt, wer was hat und wie weit jede Quest ist.
- Schritte: jede Szene, jeder Quest-Schritt und jede Art, etwas zu verlieren: Verkaufen, Fallenlassen, Verbrauchen, Weggehen oder Sterben. Nimm auch auf, dass Schritte früher passieren und Zeilen übersprungen werden, die eine Quest starten.
- Regeln als Invarianten: Solange eine Quest offen ist, gibt es noch, was sie braucht, und jemand kann sie abschließen. Keine Quest braucht etwas, das eine andere verbraucht hat.
4. 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.
5. Zeig mir für jede gebrochene Regel den genauen Weg durch die Szenen, den der Checker gefunden hat, in einfachen Worten, und zitiere die Zeile aus der Quest oder der Hauptstory, die das verursacht.
6. Ändere meine Story noch nicht. Schlag für jeden Weg einen Ausweg vor: eine andere Person, einen Ersatzgegenstand oder ein anderes Ende der Quest. Warte, bis ich auswähle.
7. 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 bei jeder neuen Quest aus und erneut, wenn sich die Hauptstory ändert. Melde nur, welche Regeln gehalten haben, wie viele Zustände geprüft wurden und ob die Prüfung abgebrochen wurde. Sag mir nie, dass eine Quest gut ist. Wenn du nicht erkennen kannst, was ein Schritt 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.
- Mach es rückwärts. Finde den Gegenstand, bevor du mit der Person sprichst, die ihn sucht.
- Verkauf den Gegenstand. Versuch, jeden Quest-Gegenstand zu verkaufen, fallen zu lassen oder zu verbrauchen.
- Speichere mittendrin. Speichere während eines Schritts, schließe das Spiel, lade und beende die Quest. Siehe Spielstände, die die Story behalten.
- Überspring das Reden. Klick so schnell du kannst durch jede Zeile. Startet die Quest trotzdem?