Rule systems
Sheets, tracks and conditions
Stats and skills, things a character can run out of, conditions with levels and timers, the storyteller's pools, clocks, and things a character owns.
What a sheet holds
Under a rule system every character has a sheet: the numbers the rules read and change. Players see it in the story view's ledger; the storyteller sees it each turn; code is the only thing that changes it. Engine
- Stats
- Numbers the rolls read: abilities, traits, action ratings, percentile skills.
- Tracks
- Things that go up and down: health, Stress, Inspiration, Hope, spell slots, armour.
- Tags
- Words on lists: conditions (Poisoned, Blessed), harm, traits, features. A condition is a tag the rules know how to count.
- Derived values
- Numbers worked out from the others, never typed: proficiency bonus, Evasion, a passive Perception.
- Clocks
- Segmented progress a rule card ticks: Renown 3 of 4, Death saves 1 of 3, Heat 5 of 8.
- Things
- What a character owns that has its own sheet: a ship with hull and crew, a horse, a band of followers.
- Abilities
- The spells, features and techniques they know, what each costs and the uses left, and the picks they can spend on new ones. See Spells and abilities.
- The table's pools
- Points the storyteller holds, kept per table: Fear, Doom.
In the Studio, the Rules tab's Sheet part edits stats, skills and tracks as sentences. Conditions are defined with Hob or in Advanced; pools and kinds of things have a part of their own.

Stats and skills
A stat has a name, a line saying what it covers, a range, a starting value, and how it shows: a number, dots, or a percentage. Some stats add a modifier to rolls instead of their value: Classic d20's Strength 16 adds floor((16 - 10) / 2) = +3.
| Kind | Used for | Examples |
|---|---|---|
| Attribute | Broad capabilities a roll adds | Strength 16 (+3), Agility +2, Might +1 |
| Skill | Narrow training, usually leaning on an attribute | Athletics leans on Strength: Strength's modifier plus proficiency if trained. Or a chance in percent: Occult 45%. |
| Rating | Dots that become dice | Prowl ●●○○: roll two d6 |
What it covers is not decoration. It is the rules judge's only guide to which stat an action uses, and it's read every turn. Write it as the actions it covers: “Climbing, jumping, swimming, grappling, forcing your way through by strength” beats “Physical prowess”. Storyteller

Tracks
A track has a maximum (a number, or a formula that grows with the sheet), a starting point and a role:
| Role | What it means | Example |
|---|---|---|
| Health | At zero they are down. Every system has exactly one. | Hit points: 8 + Constitution modifier, +5 a level |
| Spend | Paid out to do things. | Spell slots, Nerve, Ki |
| Stress | Fills under strain; something happens when it's full. | Stress: full at 9, and they take a Trauma and it clears |
| Luck | Kept until spent; often spent before a roll. | Inspiration (1), Hope (up to 6) |
| Harm | Marks lasting damage. | Exhaustion: six levels, each makes everything harder |
| Armour | Slots spent to take a hit one step lighter. | Armour: 3 slots, back on a rest |
- Refills
- On a rest, each scene, each level, or never.
- When it empties or fills
- A track can carry effects of its own for when it runs out or fills. Forged's Stress: full, and they take a Trauma and the Stress is set to 0. For anything more involved, use a rule card on the track (“When Stress fills up → …”).
- Damage thresholds
- A health track can mark boxes by how hard a hit lands instead of by its number. Hope and Fear: 6 Hit Points; any hit marks 1, a hit of at least
@major(6 + level) marks 2, at least@severemarks 3. An armour slot, spent automatically when it helps, takes a hit one step lighter. Engine
Conditions
A condition is a tag on a list that the rules know how to count. It can have levels (Frightened 1 to 4), a timer, and an effect on rolls that code applies without anyone remembering to. Engine
| Part | What it does | Example |
|---|---|---|
| Levels | How many it can stack. Absent: on or off. | Frightened, up to 4 |
| Counts down on | Each turn or round, each rest, or never (only an effect ends it). | Blessed counts down each turn; Vulnerable lasts until a rest |
| Fades by | Levels lost each tick, when it has no duration of its own. 0: it holds until something ends it. | Frightened fades 1 a turn |
| Edge | A formula of its level that rolls read as advantage or disadvantage. | -1: Poisoned gives disadvantage |
| Modifier | A formula of its level added to rolls. | -10 * @level: Fatigued 2 is −20 on d100 rolls |
| Only on | Limit the edge and modifier to some checks or stats. | Restrained: Dexterity saving throws only |
| Can't act | While it holds, a creature makes no blows in a fight, and the storyteller is told why. | Paralyzed, Stunned, Asleep |
| Harm ends it | The first blow that does them damage ends it. | Asleep (the Sleep spell): a cut wakes them |
| More roll changes | Further edges or modifiers with their own checks and stats, beside the main one. | Restrained: Dexterity saves, and attack rolls too |
| Against them | What it does to attacks made at whoever has it: an edge, a modifier, or a hit made critical, from close by, from afar, or both. | Prone: advantage close, disadvantage far; Paralyzed: a close hit is critical |
| Damage taken | Damage types they take half of, none of, or double, while it holds. | Raging: half from bludgeoning, piercing, slashing |
Several conditions at once add up, and the roll chip names each one that touched a roll (“Poisoned: disadvantage”). Any number of disadvantages and advantages cancel down to one either way, as in fifth-edition play. A condition put on with a duration (“Blessed for 3 turns”) lasts the turn after it lands, then counts down.
{ "id": "frightened", "name": "Frightened",
"description": "Disadvantage while the source of their fear is in sight.",
"max": 4, "ticks": "turn", "fade": 1, "edge": "-1", "checks": ["ability"] }Rule cards read conditions as @cond.frightened (its level, 0 when absent) and @cond.frightened.left (ticks left), and in sentences as “while Frightened” and “unless Stable”. See Only while.
The storyteller's pools
A pool is a number the storyteller holds, kept per table: Hope and Fear's Fear, or a Doom you invent. Rule cards and outcomes add to it and spend from it. A pool can gate hard moves: then the storyteller may only spring a hard move the roll didn't hand it (an ambush out of nowhere, a betrayal, a twist of the knife) by spending a point. After each scene, code asks whether such a move was made and takes the point; with none left, it's logged. Engine

The debt comes due
When Hit points run out (while Blood-sworn) → Doom +2; “Something old notices the oath is broken”.
A card that feeds a pool. Doom (0 of 6, gates hard moves) is the storyteller's to spend.
Clocks
A clock is a ring of segments: Renown 3 of 4. A rule card ticks it (“tick Renown 1”), and the first tick creates it with the size the card gives (4 if none). When it fills, cards watching for it fire. Clocks show on the sheet and in the roll chip's list of what changed (“Renown 3/4”). Engine
Renown
When they defeat a foe → tick Renown 1.
A name in the capital
When the Renown clock fills → +100 xp; Known in the capital.
Two cards make a reputation: every fight won ticks the clock, the fourth fills it.
Things a character owns
A kind of thing is anything that needs its own numbers: a ship (hull, crew), a mount (stamina), a company of followers (morale, numbers). Define the kind once; each character can own things of that kind, each with its own sheet. Formulas read the character's first one as @thing.ship.hull, and a track effect can mark a thing instead of the character (“Hull −2” on the ship). Engine
{ "id": "ship", "name": "Ship",
"stats": [ { "id": "speed", "name": "Speed", "min": 1, "max": 5, "default": 2 } ],
"tracks": [ { "id": "hull", "name": "Hull", "max": 10 }, { "id": "crew", "name": "Crew", "max": 20 } ] }The easiest way to make one is to tell Hob what it is: “Ships have hull and crew; ramming costs hull on both sides.” Hob writes the kind and the rule card together.
Derived values
A derived value is a named formula over the sheet, shown with a line saying where it comes from. Classic d20's Proficiency bonus is 2 + floor((@level - 1) / 4), “+2 at level 1, one more every four levels”. Hope and Fear's Evasion is 10 + @agility, “what a blow must beat”. Any formula can read a derived value by its id, like any stat. Edit them in the Advanced tab.
Making and growing a character
| Creation method | How it works | Used by |
|---|---|---|
| Array | Hand out fixed values, one each: 15, 14, 13, 12, 10, 8. | Classic d20, Moves, systems from scratch |
| Assign | Spread dots, with a most-in-one limit: 7 dots, at most 2. | Forged in the Dark, pool engines |
| Point buy | Buy values from a budget with a cost table. | Your choice |
| Rolled | Roll each stat with a formula: 4d6kh3. | Your choice |
| From the backstory | Values are suggested from what the player wrote. | Your choice |
Then optional picks: train some skills of another kind (Classic d20: four skills at proficiency). Character creation suggests values from the backstory under any method, and the player can change them within it.
Growth is levels (with a +1, or two, to put into stats at chosen levels), advances bought with xp (a new dot every 8 xp), or improvement rolls (a skill used well is marked, and later rolls to improve). Levels can come from Worldtable's own levelling, which fights, quests and story arcs pay, or from xp on the sheet that rule cards and outcomes award.