Todos los artículos

How AI RPGs keep their stories from contradicting themselves

ai rpgPor Fabulator Team · 25 de septiembre de 2026 · 5 min de lectura
Una IA narra la historia en torno a tus decisiones — elige una Semilla de Mundo publicada y juega, o crea la tuya.
Sin instalacionesGratis para empezarCualquier género
Empieza a jugar gratisPlan gratuito: una cantidad limitada de juego gratuito cada día.
Close-up of purple polyhedral dice on a white surface, perfect for tabletop gaming enthusiasts.

An AI narrator contradicts itself for a simple reason: it is writing the next paragraph from the text in front of it, and the text in front of it is limited. A tavern keeper dies in turn 12 and pours ale in turn 40. A kingdom has no coast and then sends ships. Nobody was careless. The model was never holding the facts in the first place, only the words around them.

Fixing this is less about a better model and more about where the facts live.

Why it happens

Three failure patterns cause most of the damage.

  • Forgetting. Facts fall out of the window the model can see. Older events are summarised, and details get lost in the summary.
  • Drift. A value that the model restates from memory each turn wanders. A character who had four hit points becomes someone who is "mostly fine".
  • Divergence. The prose says one thing while the record says another, because nothing compared them.

A longer context window helps with the first and does nothing about the other two. So the platform's approach is to stop treating the conversation as the source of truth.

Three kinds of knowledge, kept apart

Fabulator separates what the story knows into three layers.

Canon is what the world is: its rules, places, factions and characters as the Author defined them. When a campaign begins, the World Seed's canon is copied into it. Canon is a constraint on what the narrator may write, not merely something it reads. A statement such as "this order never operates openly" is something proposals are checked against.

State is what is true now: where you are, what you carry, who is alive, how you feel. It lives in a database as structured values, not in the prose. The narrator is given the current values and writes from them. Your location is a tracked pointer, so a scene cannot quietly relocate itself because a paragraph drifted.

Memory is what happened: a journal of events, a rolling summary of the story so far, and retrievable records of the moments that mattered. It is append-only, so earlier events are not rewritten, and it is allowed to fade for things that stopped mattering.

Keeping these apart means a question like "is the keeper alive?" is answered by looking at state, not by hoping the model recalls turn 12.

The model proposes, the engine decides

The second idea is an authority split. The model may propose changes to the world: a character takes damage, an item is picked up, a relationship shifts. It does not write them directly. The engine validates each proposal against the expected structure, against sensible bounds, against what already exists and against canon, then commits or rejects it.

For exact values, proposals are relative changes, not restated absolutes. "Lose five hit points" is a change that can be checked and clamped. "Has twelve hit points" invites drift. A proposal that references something the character does not have, or revives someone recorded as dead, is rejected and regenerated rather than silently accepted.

Checking the prose itself

A valid change to state does not guarantee that the paragraph around it is faithful. So after the narration is written, it goes through a consistency check against the facts the platform has on record, including canon and character cards, and your inventory when inventory enforcement is on. If the check finds that the prose contradicts a recorded fact, the turn is regenerated, up to a small, fixed number of attempts.

This is a safeguard, not a promise of perfection. Language models are probabilistic, and the platform is designed around the assumption that some drafts will be wrong, which is why the checking step exists. The check is also narrower than "anything that could be inconsistent": it is strongest where the facts are stored as discrete records.

What remembering looks like in play

Because the layers are distinct, the effects are easy to feel as a Player. You arrive back in a town and the person you wronged remembers it. An item you left behind is still there. A character's secret stays a secret until the story reveals it, rather than leaking because the model got chatty. When the world sets a limit, it is the same limit next session.

Occasionally something will still read oddly. Because the facts are stored as records rather than scattered through a transcript, there is at least a definite place for the correct version to live.

Try it on a long campaign

Consistency is hard to judge in one sitting. The best test is a campaign of several sessions: make a memorable choice early, leave, and return. If you want to see how the layers hold up, pick a World Seed in Discover, start a campaign and give the story something worth remembering.

Juega tu propia historia narrada por IA

Fabulator es un director de juego con IA que recuerda tus personajes, lugares y decisiones. Elige una Semilla de Mundo publicada y juega, o crea la tuya.
Sin instalacionesGratis para empezarCualquier género
Empieza a jugar gratisPlan gratuito: una cantidad limitada de juego gratuito cada día.
Un turno de una historia de Fabulator: la prosa del narrador seguida de tus opciones
Investigado, redactado y publicado automáticamente por el sistema de escritura con IA de Fabulator.