rpg skill: LAST ADMISSION lessons — simplifying prologues, scripted antagonists, MJ cannot count
This commit is contained in:
+2
-75
@@ -11,78 +11,7 @@
|
||||
"Bash(mj-capture-command *)",
|
||||
"Bash(/Users/timevans/bin/mj-gen *)",
|
||||
"Bash(/Users/timevans/bin/mj-auth-check *)",
|
||||
"Bash(/Users/timevans/bin/mj-capture-command *)",
|
||||
"Read",
|
||||
"Edit",
|
||||
"Write",
|
||||
"Glob",
|
||||
"Grep",
|
||||
"Bash(git status)",
|
||||
"Bash(git diff)",
|
||||
"Bash(git log)",
|
||||
"Bash(git add )",
|
||||
"Bash(git commit )",
|
||||
"Bash(git push)",
|
||||
"Bash(git pull)",
|
||||
"Bash(git branch)",
|
||||
"Bash(git checkout )",
|
||||
"Bash(git stash)",
|
||||
"Bash(git fetch)",
|
||||
"Bash(npm run )",
|
||||
"Bash(npm install)",
|
||||
"Bash(npm test)",
|
||||
"Bash(npm ci)",
|
||||
"Bash(npx )",
|
||||
"Bash(node )",
|
||||
"Bash(ls)",
|
||||
"Bash(dir)",
|
||||
"Bash(mkdir )",
|
||||
"Bash(mv )",
|
||||
"Bash(cp )",
|
||||
"Bash(touch )",
|
||||
"Bash(cat )",
|
||||
"Bash(head )",
|
||||
"Bash(tail )",
|
||||
"Bash(wc )",
|
||||
"Bash(find )",
|
||||
"Bash(grep )",
|
||||
"Bash(sort )",
|
||||
"Bash(uniq )",
|
||||
"Bash(diff )",
|
||||
"Bash(which )",
|
||||
"Bash(where )",
|
||||
"Bash(echo )",
|
||||
"Bash(pwd)",
|
||||
"Bash(cd )",
|
||||
"Bash(type )",
|
||||
"Bash(file )",
|
||||
"Bash(whoami)",
|
||||
"Bash(hostname)",
|
||||
"Bash(date)",
|
||||
"Bash(yarn )",
|
||||
"Bash(pnpm )",
|
||||
"Bash(python )",
|
||||
"Bash(python3 )",
|
||||
"Bash(pip )",
|
||||
"Bash(pip3 )",
|
||||
"Bash(cargo )",
|
||||
"Bash(go )",
|
||||
"Bash(dotnet )"
|
||||
],
|
||||
"deny": [
|
||||
"Bash(rm -rf )",
|
||||
"Bash(rm -r )",
|
||||
"Bash(rmdir /s)",
|
||||
"Bash(del /s)",
|
||||
"Bash(sudo )",
|
||||
"Bash(chmod 777)",
|
||||
"Bash(format )",
|
||||
"Read(.env)",
|
||||
"Read(**/.env)",
|
||||
"Read(**/.env.*)",
|
||||
"Read(**/credentials*)",
|
||||
"Read(**/*.pem)",
|
||||
"Read(**/*.key)"
|
||||
"Bash(/Users/timevans/bin/mj-capture-command *)"
|
||||
]
|
||||
},
|
||||
"model": "opus",
|
||||
@@ -95,7 +24,6 @@
|
||||
"feature-dev@claude-plugins-official": true,
|
||||
"huggingface-skills@claude-plugins-official": true,
|
||||
"amazon-location-service@claude-plugins-official": true,
|
||||
"swift-lsp@claude-plugins-official": true,
|
||||
"ui-ux-pro-max@ui-ux-pro-max-skill": true,
|
||||
"impeccable@impeccable": true
|
||||
},
|
||||
@@ -132,6 +60,5 @@
|
||||
"preferredNotifChannel": "terminal_bell",
|
||||
"autoUpdaterStatus": "enabled",
|
||||
"agentPushNotifEnabled": true,
|
||||
"inputNeededNotifEnabled": true,
|
||||
"skipWorkflowUsageWarning": true
|
||||
"inputNeededNotifEnabled": true
|
||||
}
|
||||
|
||||
@@ -11,33 +11,6 @@ grows into a duplicate of the skill. Several 2026-07 entries below are already
|
||||
encoded in the references; they stay as worked examples until the next pruning
|
||||
pass.
|
||||
|
||||
## 2026-08 — DEAD AIR build (Things from the Flood, 3-hour variant)
|
||||
|
||||
- **A sequel system is a different system — verify the core loop before
|
||||
writing the crash-course.** Things from the Flood looks like Tales from the
|
||||
Loop and isn't: **Luck Points are gone**, **Pride is replaced by Shame**
|
||||
(once per session, automatic success for acting *against* it), **Scars** are
|
||||
permanent and the second one can remove a teen from play — the "kids can't
|
||||
die" guarantee is off. Writing the GM Essentials block from memory of the
|
||||
parent game would have shipped four wrong rules. Check the build numbers too
|
||||
(Flood: 14 attribute points, 10 skill points, keys ≤3, non-keys ≤1).
|
||||
- **When lore can't be verified, make the scenario canon-local and say so in a
|
||||
numbered Design-Intent line.** Anchoring only to what's confirmed published
|
||||
(Boulder City, the DART Loop, the Gravitron, the Bona Reactor) and inventing
|
||||
every site, org and NPC means the Mystery drops into any table's version of
|
||||
the setting with nothing to reconcile — and it stops the writer bluffing
|
||||
setting detail they haven't got.
|
||||
- **The 3-hour cut of the house format** (proven shape, not a guess at the
|
||||
table yet): Intro 15 · Act One 45 · break 5 · Act Two 60 · Act Three 30 ·
|
||||
Epilogue 15 = 2:45 play inside a 3:00 cap, hard rule at **2:00** instead of
|
||||
2:45. What gets cut to make it fit is *breadth*, never structure — one split
|
||||
with two sites, one journey, one set-piece, one room. Act Three keeps its
|
||||
full 30 minutes; it is the only budget that must not shrink.
|
||||
- **In a system where PCs can be permanently maimed, announce the stakes of
|
||||
the set-piece before the first roll.** "Nobody dies here; failure costs
|
||||
Conditions, and the fifth Condition is permanent" turns a swim into a real
|
||||
decision instead of a dice formality.
|
||||
|
||||
## 2026-07 — AFTERIMAGE desk playtests (Blade Runner, Continuum 2026)
|
||||
|
||||
- **Answer the obvious professional move.** Players will always try the
|
||||
@@ -246,3 +219,27 @@ pass.
|
||||
yellow background instead of sky", and add "no shops". Palette drift and
|
||||
hallucinated signage are the same failure — the prompt was letting the model
|
||||
reach for a naturalistic reference photo.
|
||||
|
||||
## 2026-08 — LAST ADMISSION (simplifying a prologue that was too complex)
|
||||
|
||||
- **"Too complex" usually means too many things the GM must hold, not too much
|
||||
text.** OPEN DAY's load was a minute-by-minute timetable to narrate, three
|
||||
deliberate non-answers, and ten serial one-on-one scenes. The rewrite kept the
|
||||
same premise engine and cut to: one building, one truth, one decision, and
|
||||
three antagonists who each do one printed paragraph. Count the things the GM
|
||||
must *track*, not the pages.
|
||||
- **Give an antagonist a page and let the players read it.** Printing the
|
||||
monsters' backstory as an in-world poster — and telling the GM to say it out
|
||||
loud — turns a puzzle into a game about scripts. Each one then gets a "script
|
||||
break" (put the person back in the room; say his name; go indoors) that is a
|
||||
complete answer costing nothing. Players who find one feel clever; the fight
|
||||
stays available for players who want it.
|
||||
- **A haunted attraction is the cheapest way to hide the real thing.** A building
|
||||
full of paid performers pretending to be ghosts means "which of these is an
|
||||
actor" is the entire investigation and needs no explaining. It also supplies
|
||||
bystanders, a floor manager, a body, and a reason the players are all present.
|
||||
- **Midjourney cannot count.** Two attempts at "exactly four name plates" both
|
||||
returned three, and the second also drifted photoreal. If a *count* is
|
||||
load-bearing in the fiction, it belongs in a handout, never in generated art —
|
||||
a picture that contradicts the clue is worse than no picture. Cut it and
|
||||
reassign the spare plate.
|
||||
|
||||
Reference in New Issue
Block a user