How this was built
Built overnight 2026-10-22 from the files only. Nobody here knows what happened at the table on 2026-10-21.
Every item below is "planned in S7 runsheet; confirm what happened at the table". Nothing is an outcome.
Paths are relative to the repo root. RS = docs/s7-prep/s7-runsheet.json. The S7 plan/cast .md files are superseded and used only where noted.
S7 threads to pick up
Each: planned in S7 runsheet; confirm what happened at the table.
1Level 5 at the start of S8.
Source: RS scenes[4].offscript[1].then ("End on the cliffhanger. Level 5 at the start of S8."), RS lootBudget, docs/s7-prep/NEXT.md section D. Also: Tampo's DDB sheet may still say Rogue 3 (RS party[2].note). Open question for Sean: do the players level before the session or in its first ten minutes? Does the long rest assumed for S7 (NEXT.md D) still stand for S8's start?
2Cliffhanger: the Lieutenant (Grieve in the borrowed face) arrives behind the party in Room 3, humming, saying each PC's name.
Source: RS scenes[4].beats[4], scenes[4].ends. If a PC wore Grieve's face, the flipped version applies (RS scenes[4].offscript[0]). Open question: where does S8 open, and did anyone wear the face?
3Garlan Grieve has no stat block, loot or boss block.
Source: RS cast.grieve has stat: null, loot: [], magic: [], and RS scenes[4].beats[3] says "Grieve does not fight". If S8 puts him in a fight or on a loot table, the block has to be built from the bestiary, not from memory. Open question for Sean: does Grieve fight in S8, and what does he carry (including his own face if it is still in the jar)?
4Grieve's face in the jar and its dose rule.
Source: RS scenes[5].beats[3], scenes[5].enc.obj[1].d, scenes[5].rewards[0]: three doses, DC 12 Con upkeep hourly, wearer hums, Urzasaf sees through it. About the "air-tank depletion rule" (Sean wanted only the depletion mechanic, not timing): I found no air-tank text anywhere in the docs. The only depleting resource is the jar's three doses, and the "hourly" in the current text is a timing rule, so it may be what Sean wanted dropped. Open question for Sean: confirm the depletion mechanic is the jar doses, and give the wording of the rule without the hourly timing (for example, one dose spent per use, none left means the peeling starts).
5The pre-hide offer.
Not found in any S7 doc or runsheet (searched RS, NEXT.md, HANDOFF, S7-PLAN.md, S7-CAST.md, S7-READALOUD.txt, s7-update.sql for pre-hide/prehide). The only "hide" text in RS is the goblin Hide action and a hide-leather map scrap. The app code has hidden-foe handling (tests test-combat-k.js and tests/ui-combat-k-hidden.mjs), but that is app behaviour, not a story thread. Open question for Sean: what is the pre-hide offer, and who made it to whom?
6Stale S6 fight_public state.
Not in any S7 prep doc. fightpublic is the app's published-fight row (phone-link.js line 45, play-actions.js line 822), so this is a data/app item, not a runsheet one. The only S6 state note in the docs is that S6 was flipped to 'done' and S7 to 'run' (docs/s7-prep/NEXT.md, "Already done"). I did not touch the DB (no DB access tonight). To confirm on the Mac: whether a stale S6 row is still in fightpublic and whether it needs clearing before S8 runs.
7Per-PC item notes.
Source: RS party[*].note and scene spotlights.
Ann: Remembrance (+1 longsword) from Andren's widow (RS scenes[1].rewards[0], party[0].note). The runsheet describes it only as "+1 longsword"; its once-per-long-rest reaction appears only in the superseded S7-PLAN.md. Open question: does S8 want that reaction on her sheet?
Medmoy: the Dwarf's splint mail, AC 17 (see defect (a) below), refit at the tower forge on a short rest (RS scenes[2].spotlight[0]). Knows what the green is (RS party[1].note).
Tampo: the stolen merchant's "hot item" (RS party[2].note, scenes[1].spotlight[1], scenes[3].spotlight[0]). Planned to be traded to the goblins in Room 2, after which it "resurfaces later in goblin hands".
Prestayl: fresh dig tracks, one set of light elf-weight steps (RS scenes[1].spotlight[3], scenes[2].spotlight[1]).
All four: the S3 ornate cylinders worn as necklaces, which fit the sockets on the Room 3 plaque (RS scenes[1].leads[1], scenes[4].enc.obj[0]). Open question: who still wears theirs? The Dwarf's own cylinder is described as missing (RS scenes[2].beats[5]).
8The hold door in Room 3 was not to open "tonight".
Source: RS scenes[4].leads[1], notTonight[0]. Grieve's notes say he needs the four PCs alive to carry the cylinders to the plaque (RS scenes[4].leads[0]). Open question: are the notes in party hands?
9The real Lieutenant is alive and caged in Room Zero (floating scene).
Source: RS scenes[5], cast.real_lt. Whether Room Zero was ever found is unknown. Open question: if found, where is he now, awake or not, and who holds the jar (3 doses)? If not found, does Grieve keep him as the mask source?
10Commendation clock.
Source: RS clocks[0] (6 segments, read at "dusk tomorrow", then the Lieutenant is untouchable), RS handouts[1], cast.odile. Open question: was it read? The "tomorrow" is S8's problem if nobody delayed it.
11Corlis.
Source: RS cast.corlis, scenes[1].spotlight[1]. Planned outcomes: bought off (his fee is 25), scared off, or told "the goblins have it". Open question: which, if any.
12Skritch and the goblins.
Source: RS scenes[3], cast.skritch. Parley or fight; planned: passage for the goblins and a way out of the warren. Starving goblins left in the warren are a threat to Hommlet if Grieve lets them out (RS cast.grieve.wants). Open question: what deal, if any, was struck.
13Frye.
Source: RS cast.frye, scenes[2]. Talked down, surrendered or killed? He pays "double if it's open by tomorrow night" and carries the Lieutenant's pay chit.
14The goblin prisoner (optional beat).
Source: RS scenes[1].beats[7], cast.gob_prisoner. Afraid of going back to the warren; flinches at humming. Only relevant if the optional beat was used.
15Urzasaf
knows Grieve's voice and has one word for Medmoy "when he wakes" (RS cast.urzasaf.loot[3]). Open question: did he speak it?
16Items given out.
RS lootBudget: Frye's +1 scimitar and Remembrance (two uncommon items), 2 Potions of Healing and 40 gp from the works, the Dwarf's splint mail, Grieve's notes. Confirm what each PC actually holds.
17The "not tonight" list
(RS notTonight): the dwarven hold, the elf-tower lance (still armed), Konneran payoffs, Hummock/Baxtor/Darrow, the Mournhold ledger of the 83. All untouched by plan; S8+ candidates only if Sean chooses.
18Pending art, not story.
docs/s7-prep/NEXT.md "Also": s07goblinworks and the Odile and Skritch portraits were stand-ins. Minnie's portrait is the old Hilde file (defect (c)).
Runsheet defects
Planned in S7 runsheet; confirm what happened at the table. Each was checked against docs/s7-prep/s7-runsheet.json (raw bytes and parsed JSON). None was fixed here: the S7 files are read-only on this branch.
aSplint-mail timeline contradictionconfirmed
- RS
scenes[1].spotlight[2].t: "Minnie gives him the Dwarf's splint mail (AC 17): 'He'd want it worn, not buried.'" andscenes[1].rewards[1]("Dwarven splint mail (AC 17), from Minnie", to Medmoy). Alsocast.minnie.says[0].w("giving Medmoy the splint mail") andparty[1].note. - RS
scenes[2].beats[2]("the dwarf's body ... wearing dwarven splint mail") andscenes[2].rewards[1]("Dwarven splint mail and the note", to Medmoy), plusscenes[2].spotlight[0](reads the maker's marks on the mail). - Scene 1 (the wake) hands the mail over before scene 2 finds the body wearing it, so the mail is awarded twice and exists in two places. One has to go. Open question for Sean: does Minnie hand over something else at the wake (the Dwarf's tools are under her bar,
cast.minnie.secret), with the mail found on the body in scene 2?
b"�" encoding junk in party pp/dc for Ann, Medmoy, Tampo, Prestaylrefuted
- The file has 0 occurrences of the bytes
EF BF BD(UTF-8 for U+FFFD) and no literal\uescapes. RSparty[0..3].ppis the em dash U+2014 (bytesE2 80 94, 57 in the file);party[1].dc= "DC 13",party[3].dc= "DC 10",party[0].dcandparty[2].dcare the em dash. - The replacement glyph shows up only when the file is printed through a non-UTF-8 console code page, and it does the same to every other em dash (for example
scenes[0].checks[0].failandhandouts[0].text). Not a data defect. Open the JSON as UTF-8.
cMinnie's portrait file is named s07hildecopperpate.webpconfirmed
- RS
cast.minnie.portrait= "s07hildecopperpate.webp". The file exists atrun-assets/portraits/s07hildecopperpate.webp(so the validator does not warn). PerHANDOFF-2026-10-21-s7-prep.mdit was a stand-in copy ofs05dwarfloremaster. A rename touches the file, the runsheet path, anycues.jsonreference, anddocs/s7-prep/jobs.tsv(rows07hilde_copperpate), and then needs a re-upload.
dGlove note signed "— B." matches nothingconfirmed
- RS
handouts[0].text= "Sealed it. Don't open it. Not for gold. — B." (idglove, title "The dwarf's glove note"). The "B." was Bram, the invented name thatNEXT.mdsection A ordered removed ("The Dwarf has NO name at the table"). No cast entry is a "B" owner of that note, so a player reading it sees an initial that points to nobody. The note is used by RSscenes[2].beats[1](advantage against Frye "with the note"),scenes[2].beats[2],scenes[2].rewards[1]andscenes[2].checks[1]. Open question for Sean: drop the signature, or sign it with something the players already know.
Open questions for Sean
1What did the table actually do at the cliffhanger, and where does S8 open?
2Pre-hide offer: what is it? (not in the files)
3Face-jar depletion rule without timing: confirm and give the wording.
4Does Grieve fight, and what does he carry?
5Splint mail: given at the wake or found on the body? Fix whichever scene loses it.
6Glove note signature.
7Level-up logistics, and Tampo's DDB level.
8Who still wears a cylinder; who holds Grieve's notes?
9Is there another dwarf in the inn? (NEXT.md A: Sean said so; no matching NPC found in the files.)
Alexandrian ideas for S8
Sources (full text read via the WordPress API):
- Random GM Tip – Prop Provenance (2026-02-23) https://thealexandrian.net/wordpress/53349/
- Advanced Gamemastery: Magic Item Markets (2024-07-08) https://thealexandrian.net/wordpress/51205/ — VIDEO ONLY, blurb is the only text
- Ptolus: Running the Campaign – Magic Item Wish Lists (2021-02-05) https://thealexandrian.net/wordpress/45911/ — text stand-in for the item side
- D&D 2024: The Bastion Bubble (2025-01-31) https://thealexandrian.net/wordpress/52045/
Prop Provenance
Thesis: in a long campaign, players will pull out a prop from many sessions ago and ask something new
about it. You need a way to find the notes on where it came from.
Method: lightly pencil a scenario code on each prop (his codes look like BW03B, CS06), or keep a master
handout index that says which adventure each prop came from. Which method doesn't matter. What matters
is being able to trace a prop back to its source.
Hommlet: give the S7 haul codes now, while it's fresh: the face jar (empty), Grieve's face, the salve,
the face cream (demonic script), the red-light mask, the cloak, the rod, the "warm" buckler, the broken
brass compass, the tiny holy symbol. Key them to S7 / the cabin / Grieve. The jar and the cream will come
back when the magus investigates.
Magic Item Markets (video) + Wish Lists
Thesis (blurb): what transforms a campaign isn't just how common magic is, but how common each TYPE of
magic is. Decide which kinds can be bought, sold or identified in town.
Wish Lists: players telling you what they want is fine. There are 3 ways to deliver it:
(1) players take initiative (commission it, go find it); (2) seed it into prep they're already doing;
(3) seed a rumour of it into the world.
Hommlet: decide what Hommlet can identify (probably nothing), what Mornhold can, and who. The incoming
magus can do it, at a price or with strings attached, so identification becomes a scene rather than a
spell. The rod looks dwarven and connects to the dwarf and the mining rights. The chalice is a seeded
goal, with a fee already offered.
The Bastion Bubble
Thesis: the 2024 bastion system has strong bones. PCs get it automatically at level 5, and it assumes
the economy breaks even. But it is designed to sit in a bubble: nothing goes in, nothing comes out.
- Events trigger only when no orders are given, and they resolve themselves.
- Attacks are auto-won (lose 6d6 defenders).
- Hirelings and defenders have no stat blocks. The bastion economy is separate from PC gold.
- You can't level up from bastion play, and you can't improve a bastion without levelling.
- Facility rewards don't motivate. A 5-PC group gets 10 facilities at level 5, but there are only 9
level-5 options, so they just take one of each.
Fixes he names: new or upgraded facilities as adventure rewards, opening up level-gated facilities,
stat blocks for hirelings and defenders, and events that make a mess the PCs have to deal with.
Hommlet: the party JUST hit level 5, with 5 PCs, which is his worst case exactly. If you use bastions,
pop the bubble from the start:
- Treat the new tower or homestead as one shared bastion, built from the old watchtower stone.
- Give the staff and defenders townsfolk names and stat blocks.
- Make the dig and the dwarf's mining rights the source of the bastion's upgrades.
- Let events go wrong (goblins, the wise one, the excavation crew).
Use the map candidates in personal/games/High-Fantasy/research/bastion-floorplans/maps/.