- vegvisir-spec.md: full build spec (core flow, chargen subsystem, GM layer, world model, journey flow, data compilation pipeline) - TODO.md: spec broken into 8 sequential build phases - docs/: Norse-flavoured and general random encounter tables (authoring source for the compile step)
19 KiB
Norse Journey Encounter Tables
Roll on Layer 1 first. If you want more detail, roll on the relevant Layer 2 table.
Layer 1: What Happens? (d20)
| Roll | Event |
|---|---|
| 1–3 | Nothing — uneventful travel |
| 4–5 | Weather turns |
| 6–8 | Encounter a person |
| 9–10 | Encounter a group |
| 11–12 | Find something |
| 13–14 | Natural hazard |
| 15–16 | Signs of recent violence |
| 17–18 | Pursuit or being followed |
| 19 | Physical hardship |
| 20 | Something uncanny |
Layer 2A: Person Encountered (d20)
| Roll | Who |
|---|---|
| 1 | Wounded traveller, won't say how |
| 2 | Thrall fleeing their master |
| 3 | Merchant with something hidden under the cart |
| 4 | Grieving widow, heading nowhere in particular |
| 5 | Lost child, won't say where they came from |
| 6 | Outlaw watching from the treeline |
| 7 | Skald collecting stories, too curious by half |
| 8 | Old woman who knows your name somehow |
| 9 | Disgraced jarl's son, armed and bitter |
| 10 | A healer with blood on their hands they can't explain |
| 11 | A fisherman far from any water |
| 12 | A young woman disguised as a man |
| 13 | A former thrall now free, with nowhere to go |
| 14 | A blind man navigating perfectly |
| 15 | A priest of the old ways, wary and watchful |
| 16 | A very old warrior with nothing left to prove |
| 17 | Someone who claims to know the protagonist's kin |
| 18 | A deserter from a nearby lord's warband |
| 19 | A young man running an errand he refuses to describe |
| 20 | A stranger in foreign dress, lost and afraid |
Layer 2B: Group Encountered (d20)
| Roll | Who |
|---|---|
| 1 | Raiders looking for easy prey |
| 2 | Funeral procession, silent and watchful |
| 3 | Displaced villagers with everything they own |
| 4 | Hunting party — purpose unclear |
| 5 | Mercenaries between contracts, drinking heavily |
| 6 | Settlers arguing loudly among themselves |
| 7 | A jarl's tax collectors with an armed escort |
| 8 | Pilgrims travelling to a sacred site |
| 9 | A warband returning home, fewer than they left |
| 10 | Slavers with a coffle of thralls |
| 11 | Fishermen sheltering from weather inland |
| 12 | A family fleeing a blood feud |
| 13 | Young warriors seeking their first raid |
| 14 | Traders from the east, nervously off-route |
| 15 | A lord's patrol, suspicious of lone travellers |
| 16 | Refugees from a burned settlement |
| 17 | Drunken men from a wedding, armed but unfocused |
| 18 | A group of thralls transporting goods without supervision |
| 19 | Outlaws who've mistaken the protagonist for someone else |
| 20 | A band of women — armed, organised, and saying little |
Layer 2C: Weather Turns (d20)
| Roll | Weather |
|---|---|
| 1 | Sudden blizzard — visibility drops to nothing |
| 2 | Ice storm — exposed skin at risk within the hour |
| 3 | Fog so thick landmarks vanish entirely |
| 4 | Flash flood from snowmelt upstream |
| 5 | Freezing rain turns every surface treacherous |
| 6 | Unseasonable warmth — ice gives way underfoot without warning |
| 7 | Wind strong enough to knock a person sideways |
| 8 | Sleet drives horizontally, stings like needles |
| 9 | Temperature drops sharply at nightfall — no shelter near |
| 10 | Heavy snow buries the trail ahead |
| 11 | Lightning storm with nowhere to take cover |
| 12 | Hail strips leaves, spooks animals, bruises skin |
| 13 | Mist rising off ice — beautiful and disorienting |
| 14 | Frost so hard the ground rings like iron underfoot |
| 15 | A thaw that turns solid ground to mud overnight |
| 16 | Darkness falls two hours early — unnatural-feeling |
| 17 | Wind that carries sound strangely — voices from nowhere |
| 18 | Snow so dry it shifts like sand, fills tracks instantly |
| 19 | A brief clearing — then worse than before |
| 20 | Sky turns green before the storm hits |
Layer 2D: Find Something (d100)
| Roll | What |
|---|---|
| 01–02 | Abandoned camp, fire still warm |
| 03–04 | A corpse stripped of everything but its boots |
| 05–06 | A child's toy in the middle of nowhere |
| 07–08 | A boat run aground with no crew |
| 09–10 | A cache of stolen goods, poorly hidden |
| 11–12 | A runestone defaced recently |
| 13–14 | A hanged man — still breathing |
| 15–16 | A sword driven into the earth, no grave beneath it |
| 17–18 | A bag of silver with no name on it |
| 19–20 | A dead horse with all four legs broken |
| 21–22 | A campfire surrounded by nine untouched seats |
| 23–24 | A letter sealed and addressed, never delivered |
| 25–26 | A pit dug and abandoned mid-task |
| 27–28 | Fresh tracks leading off the path and then stopping |
| 29–30 | A crude grave with a weapon laid across it |
| 31–32 | Signs of a large camp, abandoned days ago |
| 33–34 | A locked chest with no key and no owner |
| 35–36 | A cart overturned, goods intact, horse gone |
| 37–38 | A bundle of clothes belonging to a child |
| 39–40 | A pile of ash where something large was burned |
| 41–42 | A trap set on the trail — recently, and well |
| 43–44 | A carcass half-butchered and left |
| 45–46 | A carved idol left at a crossroads |
| 47–48 | A shield split cleanly in two |
| 49–50 | A door standing alone in a field, hinged to nothing |
| 51–52 | Bloodstained snow leading in two directions |
| 53–54 | A drowned man face-down in a shallow stream |
| 55–56 | A fire laid but never lit |
| 57–58 | An empty cage sized for a person |
| 59–60 | A broken cart axle and scattered grain |
| 61–62 | A wound dressing discarded on the trail |
| 63–64 | A ring of stones too large to be a cooking fire |
| 65–66 | A well with something tied to the rope that isn't a bucket |
| 67–68 | A fresh cairn with no name |
| 69–70 | Burnt offerings at a tree, still smouldering |
| 71–72 | A pair of boots, side by side, perfectly placed |
| 73–74 | A journal in a language the protagonist doesn't know |
| 75–76 | A broken spear shaft — a fine one, from somewhere important |
| 77–78 | A midden heap with something that doesn't belong |
| 79–80 | A ford marked with warning signs ignored by someone recently |
| 81–82 | A farmstead intact but completely empty |
| 83–84 | A bell hanging from a tree with no rope to ring it |
| 85–86 | Animal bones arranged in a deliberate pattern |
| 87–88 | A cloak pinned to the ground with a knife |
| 89–90 | A child's hiding spot — recently used |
| 91–92 | A rope bridge cut from one side |
| 93–94 | A message carved into living wood |
| 95–96 | A body buried face-down — someone afraid of what it might do |
| 97–98 | A ship's figurehead far from any coast |
| 99–100 | A perfectly preserved meal laid out with no one to eat it |
Layer 2E: Natural Hazard (d20)
| Roll | Hazard |
|---|---|
| 1 | River crossing — current deceptively strong |
| 2 | Thin ice over deep water |
| 3 | Rockslide blocking the pass |
| 4 | Wolves — hungry, patient, following |
| 5 | Marsh that doesn't appear on any mental map |
| 6 | Trail disappears under fresh snowfall |
| 7 | A tree falls across the path in the night |
| 8 | Loose scree on a slope that looked solid |
| 9 | A frozen waterfall — must be climbed or bypassed at great cost |
| 10 | Bog hidden under a dusting of snow |
| 11 | A river swollen and impassable where it wasn't before |
| 12 | Ice fog — cold enough to freeze breath on a scarf |
| 13 | Bear newly woken, confused and aggressive |
| 14 | A cliff path with recent falls along its edge |
| 15 | Night catches the protagonist without shelter in an exposed place |
| 16 | A ford turned to deep water by rain upstream |
| 17 | Deadfall — a tangle of fallen timber blocks the wood path |
| 18 | A crack in the ice the protagonist nearly doesn't see |
| 19 | Ravens massing overhead — drawing attention |
| 20 | An avalanche track still moving |
Layer 2F: Signs of Recent Violence (d20)
| Roll | What You Find |
|---|---|
| 1 | Burned farmstead, still smoking |
| 2 | Bodies left unburied — deliberate dishonour |
| 3 | Blood trail leading off the path |
| 4 | A survivor too shocked to speak |
| 5 | Livestock scattered, no people anywhere |
| 6 | A child hiding, refusing to move |
| 7 | A settlement intact but everyone inside is dead |
| 8 | A battlefield — small scale, very recent |
| 9 | Weapons abandoned mid-fight and not retrieved |
| 10 | A man dying slowly, won't say who did it |
| 11 | Tracks of many boots leaving in a hurry |
| 12 | A house torn apart from the inside |
| 13 | Drag marks leading to the water |
| 14 | A warning left by the attackers for anyone who follows |
| 15 | Looted grave goods scattered on the road |
| 16 | A woman alive among the dead, armed with what she could find |
| 17 | A child carrying something that belonged to someone else |
| 18 | Signs of a struggle with no bodies — just blood |
| 19 | A man hanged from a tree with a carved accusation around his neck |
| 20 | Heads displayed on stakes at the settlement boundary |
Layer 2G: Pursuit / Being Followed (d20)
| Roll | Who or What |
|---|---|
| 1 | Debt collector with hired muscle |
| 2 | Someone who blames the protagonist for a death |
| 3 | A thrall-catcher — wrong target |
| 4 | Outlaw seeking to silence a witness |
| 5 | Unknown — never shows themselves |
| 6 | A dog that won't stop following |
| 7 | A boy who wants to come along |
| 8 | A woman who says she's been hired to watch |
| 9 | A wounded man trailing blood and asking for help |
| 10 | Two riders keeping distance but matching pace |
| 11 | Someone who knows the protagonist's destination |
| 12 | A man who claims to be following the same person |
| 13 | A local lord's men, claiming lawful business |
| 14 | A sworn enemy of someone the protagonist helped |
| 15 | A crow — too consistent to be coincidence |
| 16 | A group that disappears whenever checked but reappears at dusk |
| 17 | A young woman escaping a marriage arrangement |
| 18 | A former comrade who shouldn't be alive |
| 19 | Someone who says they're there for the protagonist's protection |
| 20 | A figure glimpsed only at the edge of firelight |
Layer 2H: Physical Hardship (d20)
| Roll | Hardship |
|---|---|
| 1 | Food runs out a day earlier than expected |
| 2 | Shelter falls through — night in the open |
| 3 | Injury from a stumble — nothing fatal, everything inconvenient |
| 4 | Equipment fails at the worst moment |
| 5 | Illness sets in slowly over the day |
| 6 | Exhaustion forces a stop in exposed terrain |
| 7 | Water source is frozen or fouled |
| 8 | Boots give out — blisters or worse |
| 9 | A fire won't start in wet conditions |
| 10 | Pack comes loose and gear is scattered in the dark |
| 11 | An old wound reopens |
| 12 | Hands too cold to grip properly |
| 13 | Stomach sickness from something eaten |
| 14 | Sleep impossible due to cold, noise, or dread |
| 15 | Frostbite threatening fingers or toes |
| 16 | Navigation error adds half a day to the journey |
| 17 | Horse or pack animal goes lame |
| 18 | Weight carried proves too much — something must be abandoned |
| 19 | A tool or weapon lost in a river crossing |
| 20 | Dehydration from sweating in cold gear |
Layer 2I: Something Uncanny (d20)
| Roll | What |
|---|---|
| 1 | Tracks in snow that begin from nowhere |
| 2 | A voice calling a name — no source found |
| 3 | An animal behaving with deliberate intelligence |
| 4 | The same landmark passed twice on a straight road |
| 5 | A dream so vivid it bleeds into waking |
| 6 | A stranger who vanishes between one breath and the next |
| 7 | A fire that burns green for a moment |
| 8 | The protagonist's own reflection does something different |
| 9 | A sound like weeping from deep in the ice |
| 10 | Birds all flee at once, in silence |
| 11 | A path that wasn't there yesterday and isn't on any map |
| 12 | A figure standing very still on the horizon — gone when approached |
| 13 | Stars in the wrong positions for an hour |
| 14 | The smell of the sea miles from any coast |
| 15 | An old man who answers questions the protagonist didn't ask aloud |
| 16 | A handprint in frost on the inside of a sealed shelter |
| 17 | A sound of battle faint and distant — no source ever found |
| 18 | The protagonist wakes with soil under their fingernails |
| 19 | A raven speaks one word, clearly, and flies away |
| 20 | Time passes differently — a night feels like minutes, or hours |
Layer 3A: What the Person Needs (d8)
Roll after Layer 2A. What drives this scene.
| Roll | They need... |
|---|---|
| 1 | To be heard — they haven't spoken to another person in days |
| 2 | Safe passage past something specific ahead |
| 3 | News of someone, and they will pay for it |
| 4 | A reason not to do something they have already decided to do |
| 5 | To hand something off — weight they have been carrying too long |
| 6 | Help they cannot ask for directly |
| 7 | To be followed, without being told |
| 8 | Nothing they will admit to |
Layer 3B: How the Group Presents (d8)
Roll after Layer 2B. The group's attitude when the protagonist arrives.
| Roll | They are... |
|---|---|
| 1 | Tense — something happened just before you arrived |
| 2 | Watching, not approaching |
| 3 | Openly suspicious, hands near weapons |
| 4 | Performatively calm |
| 5 | Arguing among themselves, briefly interrupted |
| 6 | Too welcoming, too quickly |
| 7 | Clearly afraid of something that is not the protagonist |
| 8 | Divided — half want help, half do not |
Layer 3C: Weather Duration (d6)
Roll after Layer 2C. How long it lasts and what it costs.
| Roll | Duration |
|---|---|
| 1 | An hour — bad and fast |
| 2 | Until dark |
| 3 | Through the night |
| 4 | Two days |
| 5 | Long enough to change the route entirely |
| 6 | Indefinitely — this is the new normal for now |
Layer 3D: Who Left This? (d12)
Roll after Layer 2D. The story behind the find.
| Roll | It was left by... |
|---|---|
| 1 | Someone running from something they have not escaped yet |
| 2 | A group that did not all survive what came next |
| 3 | One person, alone, who made a decision here |
| 4 | A child, deliberately |
| 5 | Whoever was here last night |
| 6 | The same person the protagonist is looking for |
| 7 | Someone who knew this place would be found |
| 8 | A person now working against the protagonist |
| 9 | Nobody — it has been here longer than it looks |
| 10 | Two people who disagreed about leaving it |
| 11 | Someone who came back to retrieve it and could not |
| 12 | Nobody living can say |
Layer 3E: How Dangerous? (d6)
Roll after Layer 2E. The true stakes of the natural hazard.
| Roll | The stakes |
|---|---|
| 1 | Minor — delay and discomfort only |
| 2 | Real — something could be lost or broken |
| 3 | A skill or smart decision will see it through |
| 4 | Someone in the group is at immediate risk |
| 5 | No safe path — all options have a cost |
| 6 | This could kill. And it is patient. |
Layer 3F: Who Did the Violence? (d12)
Roll after Layer 2F. The perpetrators.
| Roll | Responsible... |
|---|---|
| 1 | Raiders — long gone, but not far |
| 2 | Men on someone's orders, not their choice |
| 3 | One individual, systematic |
| 4 | The victims themselves — it went wrong |
| 5 | A local family, decades of grievance finally spent |
| 6 | Soldiers returning from somewhere worse |
| 7 | Someone the protagonist has already met |
| 8 | Nobody who can be named — only described |
| 9 | The wrong people. They mistook their target. |
| 10 | Professionals. This was clean. |
| 11 | A single act of desperation, not a plan |
| 12 | Unknown. The survivors will not say. |
Layer 3G: What the Pursuer Wants (d8)
Roll after Layer 2G. The intent behind the pursuit.
| Roll | They want... |
|---|---|
| 1 | To recover something that does not belong to the protagonist |
| 2 | Information — who the protagonist knows or spoke to |
| 3 | The protagonist dead, but not yet |
| 4 | To warn, not harm |
| 5 | To deliver a message from someone who could not send it openly |
| 6 | To follow, not intercept — someone else is waiting ahead |
| 7 | Nothing yet. They are measuring. |
| 8 | To make the protagonist afraid enough to stop |
Layer 3H: How Bad Is It? (d6)
Roll after Layer 2H. Severity of the physical hardship.
| Roll | Severity |
|---|---|
| 1 | Uncomfortable — morale hit, nothing more |
| 2 | Forces a rest and costs half a day |
| 3 | Something is damaged, lost, or consumed early |
| 4 | Someone is impaired until properly tended to |
| 5 | Progress halted until fixed — may take a full day |
| 6 | This will matter later, even after it is resolved |
Layer 3I: What the Uncanny Thing Does (d8)
Roll after Layer 2I. The nature of the event.
| Roll | It... |
|---|---|
| 1 | Communicates something — though not in any language |
| 2 | Leaves evidence that cannot be explained away |
| 3 | Draws the protagonist somewhere specific |
| 4 | Disappears if approached directly |
| 5 | Repeats exactly, later |
| 6 | Is recognised by someone nearby who will not discuss it |
| 7 | Means something that will not be clear until too late |
| 8 | Was waiting for the protagonist specifically |
Layer 4A: Complication (d12)
Roll after any Layer 3 result. A twist that deepens the scene.
| Roll | Added complication |
|---|---|
| 1 | Someone is watching this exchange |
| 2 | There is less time than it first appeared |
| 3 | Another party has an interest in the outcome |
| 4 | The simplest reading is wrong |
| 5 | Someone here is lying, but not about what matters most |
| 6 | This has already happened once before, nearby |
| 7 | A child is involved and should not be |
| 8 | Trust is the cost of progress, and it will not be offered freely |
| 9 | The right answer creates a new problem |
| 10 | Someone else made this decision already — recently |
| 11 | What is needed is something the protagonist has |
| 12 | It is connected to the last thing they found |
Layer 4B: The Hidden Truth (d10)
Roll after Layer 4A rows 4, 5, 9, or 12 — or whenever the scene demands it.
| Roll | The truth... |
|---|---|
| 1 | Changes who is innocent |
| 2 | Implicates someone trusted |
| 3 | Is sadder than the worst interpretation |
| 4 | Was known by someone who said nothing |
| 5 | Was an accident that became a cover-up |
| 6 | Has a second thread — pull it and something else unravels |
| 7 | Was constructed to be found this way |
| 8 | Was meant to stay buried |
| 9 | Is exactly what it looks like. That is what makes it terrible. |
| 10 | Will cost more to know than not to |
These tables are designed to layer. Roll Layer 1 to frame what kind of event occurs, then roll Layer 2 for specifics, Layer 3 for context, and Layer 4 for the complication beneath. Stop at any depth that fits the moment — not every scene needs all four layers.