added a path to SC102 from SC101

This commit is contained in:
2026-08-16 13:52:48 +02:00
parent 6f2225f911
commit bea880a999
11 changed files with 318 additions and 28 deletions
@@ -8,6 +8,7 @@
// Each variation sets $went_inside so the calling scene knows the verdict.
title: Bartender_Talk
position: -121,-60
---
<<if $spoke_to_bartender>>
<<if $revealed_fugue_to_bartender>>
@@ -56,6 +57,7 @@ title: Bartender_Talk
===
title: SC101_Hook_Drink_Bartender_Talk
position: 116,222
---
Bartender: One Estate coming right up.
<<if $had_the_estate_drink>>
@@ -85,6 +87,7 @@ AMNESTY: Is that the taste of our favorite drink? I cannot remember ...
===
title: SC101_Hook_Questions_Bartender_Talk
position: -139,224
---
Bartender: Sure, what do you want to know?
-> Question 1
@@ -1,18 +1,19 @@
// Everything Ser Cassian Thal ever says.
//
// These nodes share a title, which makes them a node group. Callers just
// `<<detour Ser_Cassian_Thal_Talk>>` and Yarn runs the most specific variation whose
// `<<detour Chevalier_Cassian_Thal_Talk>>` and Yarn runs the most specific variation whose
// `when:` conditions pass. Adding a new variation later means adding a node,
// not editing a growing <<if>> chain.
//
// Each variation sets $went_inside so the calling scene knows the verdict.
title: Chevalier_Cassian_Thal_Talk
position: 44,-117
---
<<if $spoke_to_chevalier_cassian_thal>>
Chevalier Cassian Thal: Well met good sir.
<<else>>
<<set $spoke_to_chevalier_cassian_thal = true>>
<<set $spoke_to_chevalier_cassian_thal = true>>
Narrator: You introduce yourself to the man. He takes measure before bowing his head and tipping his forehead with a half-open fist.
Chevalier Cassian Thal: {$player_name_full}, nice to meet you. I'm Chevalier Cassian Thal of Basel and Cyprus.
THE FLOAT: His name reeks of money. Old money.
@@ -24,10 +25,15 @@ title: Chevalier_Cassian_Thal_Talk
-> Leave it be.
<<endif>>
<<endif>>
<<if $saw_knights_atlantean_cross_on_place_card eq true and $had_the_estate_drink eq true>>
<<detour SC101_Hook_Asks_Candidate_Chevalier_Cassian_Thal_Talk>>
<<endif>>
===
title: SC101_Inquire_Cypurs_Chevalier_Cassian_Thal_Talk
position: -175,95
---
<<set $inquired_about_cyprus = true>>
Chevalier Cassian Thal: Oh, a sharp question, {$player_name_full}.
Narrator: The knight laughs.
Chevalier Cassian Thal: I assume you should ask your friend Mr. Doss, I am of no right to reveal this connection.
@@ -39,3 +45,106 @@ Chevalier Cassian Thal: I assume you should ask your friend Mr. Doss, I am of no
CONFLUENCE: There he is again: Mr. Doss.
<<endif>>
===
title: SC101_Hook_Asks_Candidate_Chevalier_Cassian_Thal_Talk
position: 146,85
---
<<if $inquired_about_cyprus>>
Chevalier Cassian Thal: This were a lot of questions. Now tell me something about yourself, old chap.
<<endif>>
<<detour SC101_Asks_Candidate_Chevalier_Cassian_Thal_Talk>>
<<if $declared_candidate_to_chevalier_cassian_thal>>
Narrator: Chevalier Cassian Thal turns towards the head of the table again, just, when another man stands up.
<<jump SC102_Table>>
<<endif>>
===
title: SC101_Asks_Candidate_Chevalier_Cassian_Thal_Talk
position: 157,261
---
<<set $winner = top_skill($self_lean_made_asset, "asset", $self_lean_journalist, "journalist", $self_lean_inheritor, "inheritor")>>
<<set $previous_winner = $winner>>
<<if $winner eq "asset">>
Narrator: He leans in and whispers:
Chevalier Cassian Thal: I assume you are here to observe the gathering in the interest of ... our friends of the Vaselian Concordat?
-> Yes, I am.
<<set $self_lean_made_asset += 1>>
<<detour SC101_Declares_Asset_Chevalier_Cassian_Thal_Talk>>
-> You must be mistaken.
<<set $self_lean_journalist += 1>>
<<set $self_lean_inheritor += 1>>
<<detour SC101_Deny_Candidate_Chevalier_Cassian_Thal_Talk>>
<<elseif $winner eq "journalist">>
Chevalier Cassian Thal: I got the feeling I may read my answers in tomorrow's newspaper.
Narrator: He says it with a boyish grin, as if he is sure he hasn't disclosed anything contentious.
-> You actually may.
<<set $self_lean_journalist += 1>>
<<detour SC101_Declares_Journalist_Chevalier_Cassian_Thal_Talk>>
-> No, I got nothing to do with newspapers and such!
<<set $self_lean_made_asset += 1>>
<<set $self_lean_inheritor += 1>>
<<detour SC101_Deny_Candidate_Chevalier_Cassian_Thal_Talk>>
<<else>>
Chevalier Cassian Thal: You probably look to settle your parent's debts?
FACEWORK: He doesn't seem emotional about it, he is just interested.
-> I actually am.
<<set $self_lean_inheritor += 1>>
<<detour SC101_Declares_Inheritor_Chevalier_Cassian_Thal_Talk>>
-> Oh, I don't know about any debt, I hope they didn't borrow money from you?
<<set $self_lean_journalist += 1>>
<<set $self_lean_made_asset +=1>>
Chevalier Cassian Thal: Oh god, no, they didn't borrow anything from us.
CONFLUENCE: Us?
<<detour SC101_Deny_Candidate_Chevalier_Cassian_Thal_Talk>>
<<endif>>
===
title: SC101_Declares_Asset_Chevalier_Cassian_Thal_Talk
position: -9,670
---
<<set $declared_candidate_to_chevalier_cassian_thal = true>>
Narrator: Chevalier Cassian Thal looks knowingly and cannot hide a little smirk.
Chevalier Cassian Thal: Well, then let us hope the ... others follow the Knight's compromise.
Narrator: He winks at you.
FACEWORK: He seems to know more about us, than we know about ourselves. Though if we back out now he will become suspicious.
===
title: SC101_Declares_Journalist_Chevalier_Cassian_Thal_Talk
position: -222,667
---
<<set $declared_candidate_to_chevalier_cassian_thal = true>>
Narrator: Chevalier Cassian Thal laughs.
Chevalier Cassian Thal: Well, then let me give you something to write about: You and your readers will be surprised to hear, what you will witness in a second.
CONFLUENCE: He can hardly hide his smirk.
===
title: SC101_Declares_Inheritor_Chevalier_Cassian_Thal_Talk
position: 207,664
---
<<set $declared_candidate_to_chevalier_cassian_thal = true>>
Chevalier Cassian Thal: You may very well get your chance this week, my boy.
FACEWORK: His look is benevolent, nearly fatherly.
CONFLUENCE: What should our parents have done, that requires repayment?
===
title: SC101_Deny_Candidate_Chevalier_Cassian_Thal_Talk
position: 436,260
---
Chevalier Cassian Thal: Oh, I am rarely wrong in matters like these. Though enlighten me: What else could have been your wish coming here?
FACEWORK: He looks genuinely interested.
<<set $winner = top_skill($self_lean_made_asset, "asset", $self_lean_journalist, "journalist", $self_lean_inheritor, "inheritor")>>
<<if $previous_winner == $winner>>
-> No, you are totally right, indeed.
<<if $winner == "asset">>
<<detour SC101_Declares_Asset_Chevalier_Cassian_Thal_Talk>>
<<elseif $winner == "journalist">>
<<detour SC101_Declares_Journalist_Chevalier_Cassian_Thal_Talk>>
<<else>>
<<detour SC101_Declares_Inheritor_Chevalier_Cassian_Thal_Talk>>
<<endif>>
-> Actually ...
<<detour SC101_Asks_Candidate_Chevalier_Cassian_Thal_Talk>>
<<else>>
<<detour SC101_Asks_Candidate_Chevalier_Cassian_Thal_Talk>>
<<endif>>
===
@@ -27,6 +27,10 @@ title: Declarations
<<declare $check_degree = "" as string>>
<<declare $check_skill = "" as string>>
// Used by top_skill
<<declare $winner = "" as string>>
<<declare $previous_winner = "" as string>>
// Candidate lean. Three permanently-live readings of who the PC is; they are
// not mutually exclusive and never resolve. Writers <<set>> these; no code
// reads them. There is deliberately NO derived "winning candidate" variable —
@@ -97,4 +101,6 @@ title: Declarations
// Character dialogue gates
<<declare $spoke_to_chevalier_cassian_thal = false as bool>>
<<declare $spoke_to_bradford_kane = false as bool>>
<<declare $inquired_about_cyprus = false as bool>>
<<declare $declared_candidate_to_chevalier_cassian_thal = true as bool>>
===
@@ -1,15 +1,61 @@
{
"projectFileVersion": 4,
"sourceFiles": [
"**/*.yarn"
],
"excludeFiles": [
"**/*~/*",
"./Samples/Yarn Spinner*/*"
],
"localisation": {},
"baseLanguage": "en",
"compilerOptions": {
"diagnosticsSeverity": {}
}
"projectFileVersion": 4,
"sourceFiles": [
"**/*.yarn"
],
"excludeFiles": [
"**/*~/*",
"./Samples/Yarn Spinner*/*"
],
"localisation": {},
"baseLanguage": "en",
"compilerOptions": {
"diagnosticsSeverity": {}
},
"projectName": "NightclubArcade",
"authorName": [
"LennartGrabowski"
],
"editorOptions": {
"yarnScriptEditor": {
"projectGraphPositions": {
"Bartender.yarn": {
"x": 282,
"y": 12
},
"Bradford Kane.yarn": {
"x": 1320,
"y": 2287
},
"Chevalier Cassian Thal.yarn": {
"x": 1794,
"y": 2275
},
"Commentary.yarn": {
"x": 12,
"y": 231
},
"Common.yarn": {
"x": 12,
"y": 12
},
"Chair.yarn": {
"x": 840,
"y": 1072
},
"Debug.yarn": {
"x": -1,
"y": 483
},
"SC101.yarn": {
"x": 820,
"y": -3
},
"SC102.yarn": {
"x": 2734,
"y": 2559
}
}
}
}
}
@@ -8,27 +8,40 @@
// Each variation sets $went_inside so the calling scene knows the verdict.
title: Chair_Interaction
position: -334,-601
---
Narrator: An empty chair with a place card: {$player_name}.
-> Sit down.
<<set $sat_down_at_table = true>>
Narrator: You sit down between two very distinguished gentlemen.
<<if $spoke_to_chevalier_cassian_thal eq true and $spoke_to_bradford_kane eq true>>
<<detour SC101_Hook_Both_Chair_Interaction>>
<<elseif $spoke_to_chevalier_cassian_thal eq true and $spoke_to_bradford_kane eq false>>
<<detour SC101_Hook_Left_Not_Right_Chair_Interaction>>
<<elseif $spoke_to_chevalier_cassian_thal eq false and $spoke_to_bradford_kane eq true>>
<<detour SC101_Hook_Right_Not_Left_Chair_Interaction>>
<<elseif $spoke_to_chevalier_cassian_thal eq true and $spoke_to_bradford_kane eq true>>
<<detour SC101_Hook_Both_Chair_Interaction>>
<<else>>
<<detour SC101_Hook_First_Sitting_Chair_Interaction>>
<<endif>>
<<detour SC101_Hook_Sitting_Chair_Interaction>>
-> Not yet.
<<enter_environment>>
<<enter_environment>>
===
title: SC101_Hook_Sitting_Chair_Interaction
position: -328,-360
---
Narrator: You sit down between two very distinguished gentlemen.
<<if $spoke_to_chevalier_cassian_thal eq true and $spoke_to_bradford_kane eq true>>
<<detour SC101_Hook_Both_Chair_Interaction>>
<<detour SC101_Hook_Sitting_Chair_Interaction>>
<<elseif $spoke_to_chevalier_cassian_thal eq true and $spoke_to_bradford_kane eq false>>
<<detour SC101_Hook_Left_Not_Right_Chair_Interaction>>
<<detour SC101_Hook_Sitting_Chair_Interaction>>
<<elseif $spoke_to_chevalier_cassian_thal eq false and $spoke_to_bradford_kane eq true>>
<<detour SC101_Hook_Right_Not_Left_Chair_Interaction>>
<<detour SC101_Hook_Sitting_Chair_Interaction>>
<<elseif $spoke_to_chevalier_cassian_thal eq true and $spoke_to_bradford_kane eq true>>
<<detour SC101_Hook_Both_Chair_Interaction>>
<<detour SC101_Hook_Sitting_Chair_Interaction>>
<<else>>
<<detour SC101_Hook_First_Sitting_Chair_Interaction>>
<<detour SC101_Hook_Sitting_Chair_Interaction>>
<<endif>>
===
title: SC101_Hook_First_Sitting_Chair_Interaction
position: -320,-51
---
-> Look at the details of the place card.
<<detour SC101_Hook_Place_Card_Chair_Interaction>>
@@ -36,9 +49,12 @@ title: SC101_Hook_First_Sitting_Chair_Interaction
<<detour Chevalier_Cassian_Thal_Talk>>
-> Introduce yourself to the gentleman on your right.
<<detour Bradford_Kane_Talk>>
-> Stand up.
<<enter_environment>>
===
title: SC101_Hook_Left_Not_Right_Chair_Interaction
position: -95,-48
---
-> Look at the details of the place card.
<<detour SC101_Hook_Place_Card_Chair_Interaction>>
@@ -46,9 +62,12 @@ title: SC101_Hook_Left_Not_Right_Chair_Interaction
<<detour Chevalier_Cassian_Thal_Talk>>
-> Introduce yourself to the gentleman on your right.
<<detour Bradford_Kane_Talk>>
-> Stand up.
<<enter_environment>>
===
title: SC101_Hook_Right_Not_Left_Chair_Interaction
position: 134,-32
---
-> Look at the details of the place card.
<<detour SC101_Hook_Place_Card_Chair_Interaction>>
@@ -56,9 +75,12 @@ title: SC101_Hook_Right_Not_Left_Chair_Interaction
<<detour Chevalier_Cassian_Thal_Talk>>
-> Talk to Bradford Kane.
<<detour Bradford_Kane_Talk>>
-> Stand up.
<<enter_environment>>
===
title: SC101_Hook_Both_Chair_Interaction
position: 363,-36
---
-> Look at the details of the place card.
<<detour SC101_Hook_Place_Card_Chair_Interaction>>
@@ -66,9 +88,12 @@ title: SC101_Hook_Both_Chair_Interaction
<<detour Chevalier_Cassian_Thal_Talk>>
-> Talk to Bradford Kane.
<<detour Bradford_Kane_Talk>>
-> Stand up.
<<enter_environment>>
===
title: SC101_Hook_Place_Card_Chair_Interaction
position: -296,331
---
Narrator: You take the place card and take a look.
<<check provenance Hard>>
@@ -25,11 +25,13 @@
// Body stays neutral on purpose: no lean, no candidate attachment.
title: Start
position: -17,-276
---
<<jump SC101_Desk>>
===
title: SC101_Desk
position: -19,-36
---
<<set $seen_sc_101 = true>>
<<set $visited_desk = true>>
@@ -44,6 +46,7 @@ Narrator: You're drawn toward a seat — toward a waiting conversation you didn'
===
title: SC101_Hook_MadeAsset
position: -40,567
---
CONFLUENCE: One: the seating chart's alphabetical. Two: one gap in it, held open past the start time. Three, and three is the one, {$player_name}: whoever printed this knew you'd be late to your own arrival. Which means somebody in this room has already met you, {$player_name}, and you're the only one who doesn't know it.
<<set $found_made_asset_intuition = true>>
@@ -51,6 +54,7 @@ CONFLUENCE: One: the seating chart's alphabetical. Two: one gap in it, held open
===
title: SC101_Hook_Journalist
position: -299,452
---
FACEWORK: His hands gave it away before his face did — a flinch toward you, checked, turned into reaching for a drink that wasn't there. That's not a stranger's hands. What did you do to earn that flinch?
<<set $found_journalist_intuition = true>>
@@ -58,6 +62,7 @@ FACEWORK: His hands gave it away before his face did — a flinch toward you, ch
===
title: SC101_Hook_Inheritor
position: 335,366
---
STANDING ORDER: You are standing in a doorway, {$player_name_full}. That's the whole of what's certain. Build outward from there — a person who starts anywhere else is a person coming apart in public.
<<set $found_inheritor_intuition = true>>
@@ -65,6 +70,7 @@ STANDING ORDER: You are standing in a doorway, {$player_name_full}. That's the w
===
title: SC101_Hook_Neutral
position: 87,310
---
HOUSE POUR: Cigar smoke, spilled aperitif, and under it — cold, sharp — the ammonia bite of a floor mopped in a hurry, love. Someone's trying to make this room smell like money. It smells like panic with good cologne on top.
===
@@ -0,0 +1,6 @@
// SC-102 — The figure at the head of the table just stood up.
title: SC102_Table
---
Figure at the head of the table: "Welcome."
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 717dc562b961f41c49f5615fb8415f67
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}