integrated candidate system

This commit is contained in:
2026-08-15 13:01:04 +02:00
parent 9e5c3277bf
commit 22b8c7a438
6 changed files with 512 additions and 2 deletions
@@ -1,5 +1,5 @@
// Scratch node for verifying the skill-check plumbing. Not part of the story.
// Point DialogueRunner.startNode at "Debug_SkillCheck" to run it, then set it
// Scratch nodes for verifying mechanics in isolation. Not part of the story.
// Point DialogueRunner.startNode at the node you want to run, then set it
// back to "Start" when you're done.
title: Debug_SkillCheck
@@ -20,3 +20,16 @@ Narrator: Confluence came out {$check_degree}.
<<check nosuchskill routine>>
Narrator: Survived the bad skill id.
===
// Candidate lean accumulator round-trip. Expect made_asset 2 / journalist 1 /
// inheritor 0, and the threshold branch to fire.
title: Debug_CandidateLean
---
<<set $self_lean_made_asset += 1>>
<<set $self_lean_made_asset += 1>>
<<set $self_lean_journalist += 1>>
Narrator: made_asset {$self_lean_made_asset} / journalist {$self_lean_journalist} / inheritor {$self_lean_inheritor}
<<if $self_lean_made_asset >= 2>>
Narrator: threshold branch reached.
<<endif>>
===
@@ -0,0 +1,56 @@
// SC-101 — The Card at the Desk. Opening candidate hooks.
//
// Scene files stay thin: set the stage, <<detour>> into hook nodes, return.
// Prose is TODO until the writing pass; structure and flag writes are locked.
//
// Evidence rule (design §1.3): each candidate gets exactly one of each evidence
// type — object, testimony, document, intuition. Preserve that balance; do not
// stack types so trust becomes an artifact of imbalance.
//
// Discovery order (§1.5): hooks are independently reachable in any order via
// <<detour>> from the desk. Never <<if>>-guard a hook on another hook having
// fired, on any $self_lean_*, or on skill_rank(...). Never make a hook only
// reachable as fall-through from another.
title: SC101_Desk
---
<<set $seen_sc_101 = true>>
Narrator: TODO — desk / card stage-setting.
-> Made Asset hook
<<detour SC101_Hook_MadeAsset>>
<<jump SC101_Desk>>
-> Journalist hook
<<detour SC101_Hook_Journalist>>
<<jump SC101_Desk>>
-> Inheritor hook
<<detour SC101_Hook_Inheritor>>
<<jump SC101_Desk>>
-> Neutral hook
<<detour SC101_Hook_Neutral>>
<<jump SC101_Desk>>
-> Leave the desk
Narrator: TODO — exit the desk beat.
===
title: SC101_Hook_MadeAsset
---
CONFLUENCE: TODO — Made Asset intuition.
<<set $self_lean_made_asset += 1>>
===
title: SC101_Hook_Journalist
---
FACEWORK: TODO — Journalist intuition.
<<set $self_lean_journalist += 1>>
===
title: SC101_Hook_Inheritor
---
STANDING ORDER: TODO — Inheritor intuition.
<<set $self_lean_inheritor += 1>>
===
title: SC101_Hook_Neutral
---
HOUSE POUR: TODO — neutral Body texture; no lean.
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: ef4adc1687e744cd0afd7041ab38c377
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}