Understanding the waterfall

Skryrún is built around a data architecture called the canon waterfall. Once you understand how it works, everything else in the platform — campaigns, visibility, player portals, the Canonize action — clicks into place. This article explains the model from the ground up.


The problem it solves

Most GMs manage their worlds in one of two broken ways.

One big document. A single wiki, Notion database, or folder of files that contains everything — canonical lore and what happened in last Thursday's session and notes for the other group running through the same setting. It becomes unmanageable fast. You cannot tell what is world truth and what is table-specific. You cannot share lore with players without also exposing private notes.

Separate copies per campaign. You duplicate content for each group. Now your Sword Coast campaign has its own NPC files and your Icewind Dale campaign has its own. When you update a character's backstory, you update it in two places. Or three. Or you forget, and the groups experience different versions of the same character for no good reason.

The waterfall solves both problems by separating two things that are genuinely different: what exists in the world and what is happening in a given campaign.


The three layers

Think of your world as having three distinct layers stacked on top of each other.

Layer 1 — The World Codex (canon)

The top layer. This is your lore bible — the sourcebook for your world. It contains everything that exists:

  • NPCs and their backgrounds, motivations, and relationships
  • Locations and their histories
  • Factions, their goals, and their members
  • Artifacts, deities, events, secrets

What the World Codex does not contain: anything about what is currently happening to those things. An NPC in the World Codex is neither alive nor dead. A faction is neither rising nor falling. Canon defines existence, not state.

Think of it like the official sourcebook for Faerûn. The Forgotten Realms Campaign Setting doesn't tell you whether Elminster is alive or dead in your game — it just tells you who he is. That's exactly what your World Codex does for your homebrew world.

Layer 2 — Campaigns

Below the World Codex sit your campaigns. Each campaign is a play group running inside the world. A campaign has:

  • Its own player roster and character data
  • Its own session log and story history
  • Its own game state — which NPCs are alive, dead, missing, or allied
  • Its own player portal, scoped to what that group has discovered

One world can have many campaigns at once. Your Monday group running through the Sword Coast. Your Friday group exploring Icewind Dale. A convention one-shot in Neverwinter. They all draw from the same World Codex. They all get different game states.

Campaigns reference canon content — they do not copy it. When you open a campaign, the NPCs you see come directly from the World Codex. No duplication.

Layer 3 — Game state

Game state lives inside each campaign as overrides on canon entities. The same NPC can be:

  • Alive and allied with the party in Campaign A
  • Dead (killed in session 4) in Campaign B
  • An antagonist in Campaign C

None of these affect each other. None of them alter the NPC's entry in the World Codex. The override layer is per-campaign, per-entity, and completely independent between campaigns.


How information flows

The waterfall metaphor is literal: information flows from top to bottom automatically, and flows upward only when the GM deliberately chooses.

Downstream — automatic

When you edit an NPC's lore in the World Codex — update their appearance, revise their backstory, add a new motivation — every campaign sees the update instantly. There is no "push to campaigns" button. The campaigns do not hold copies; they reference the source, so updates propagate for free.

This means you can build and refine your world between sessions and all your active campaigns benefit simultaneously.

💡Tip

Edit canon freely between sessions. Tighten an NPC's article, add a new faction relationship, fix a location description you never liked. When your players log in, they see the updated version. No sync steps.

Upstream — deliberate (Canonize)

Content often originates in play rather than in prep. You invent an NPC on the spot. A location the players name becomes real. A minor character grows over six sessions into a permanent fixture of the world.

When campaign-born content earns its place in the world, you can Canonize it — a single action that promotes it from a campaign up into the World Codex. From that point, it becomes world-canonical: it flows down into every other campaign automatically.

Canonize is a one-way, deliberate action. Campaign content does not drift into canon accidentally. You choose when something belongs to the world.

Campaign-born NPC → [Canonize] → World Codex → flows into all campaigns

Why this matters for TTRPG

Multiple tables, one world

Running two groups through the same setting is a logistical nightmare without the waterfall. With it, both campaigns share the same World Codex and maintain independent game states. There is no risk of one group's outcomes contaminating another group's experience.

You can run your homebrew world for your home group and a separate group of friends from a different city. Both experience the same world. Both get a completely different story.

Published adventures without the railroad

When you import a published adventure into Skryrún, its content goes into the World Codex. The locations exist. The NPCs exist. The factions exist.

What does not go into the World Codex: the order your players will encounter them.

When your group ignores the assumed path and wanders somewhere unexpected, the world was already there. You did not have to improvise it into existence or quietly move content to where they went — it existed independent of their traversal order. The published adventure becomes a sourcebook you run flexibly, not a script you enforce.

Living world, not frozen lore

Without the waterfall, building your world means accepting a tradeoff: the more detailed your lore, the more locked-in it feels. Once you write that an NPC is dead, it's true forever in every context.

The waterfall breaks this tradeoff. Canon tracks what is true about the world. Campaigns track what happened at particular tables. The NPC in canon is simply a character who exists. What happened to them in any given game is a campaign-level fact that belongs to that group's story.

Your lore can grow deeper without becoming more rigid.

Wells of lore

Different tables care about different parts of your world. Your Monday group is interested in the noble quarter's politics. Your Friday group has never gone near the noble quarter — they care about the underground cult in the outer districts.

You can build the noble quarter lore as deep as your Monday group needs it. That lore is in the World Codex. Your Friday group inherits the same canon but never sees that content unless they seek it out. The world holds more than any single campaign surfaces.

As you run more campaigns in the same world, you naturally develop deeper wells of lore in each region, faction, and NPC network that players actually engaged with — without that depth becoming noise for everyone else.


A visual summary

┌──────────────────────────────────────────────┐
│              WORLD CODEX                     │
│  What exists. NPCs, locations, factions.     │
│  No game state — timeless lore.              │
└──────────────────┬───────────────────────────┘
                   │  flows down automatically
        ┌──────────┴──────────┐
        ▼                     ▼
┌──────────────┐     ┌──────────────┐
│  Campaign A  │     │  Campaign B  │
│  Monday Crew │     │  Fri. Group  │
│              │     │              │
│  Varek: dead │     │  Varek: ally │
│  3 sessions  │     │  8 sessions  │
└──────┬───────┘     └──────────────┘
       │
       └── Canonize ──▶  New NPC promoted
                         to World Codex

The World Codex is the source. Campaigns are lenses. Game state lives in each lens independently. Canonize is the intentional promotion of campaign content into the world.


Summary of key rules

RuleWhy it exists
Canon tracks existence, not stateStatus (alive/dead) belongs to campaigns — it changes per table
Campaigns reference canon, not copy itEdits propagate instantly; no duplication
Canonize is explicit and one-wayLore doesn't drift into canon accidentally
Archived campaigns don't count against limitsOld campaigns should be preserved, not deleted
Players see campaigns, not the World CodexCanon is a GM tool; players experience their campaign's view

See also