@maka/maka-cli 5.65.2 → 5.67.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/typescript/package.json +1 -1
- package/bundle/typescript/src/commands/game/_index.d.ts +1 -0
- package/bundle/typescript/src/commands/game/_index.js +1 -0
- package/bundle/typescript/src/commands/game/_index.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.d.ts +124 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.js +487 -29
- package/bundle/typescript/src/commands/game/sideQuest/commands/backlog.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.d.ts +15 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js +61 -4
- package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/crew.js +4 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/crew.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/note.d.ts +73 -14
- package/bundle/typescript/src/commands/game/sideQuest/commands/note.js +150 -40
- package/bundle/typescript/src/commands/game/sideQuest/commands/note.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/review.d.ts +39 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/review.js +48 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/review.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/sheet.js +4 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/sheet.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/engine-version.d.ts +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/engine-version.js +15 -1
- package/bundle/typescript/src/commands/game/sideQuest/engine-version.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/repro-scene.d.ts +87 -0
- package/bundle/typescript/src/commands/game/sideQuest/factories/repro-scene.js +320 -0
- package/bundle/typescript/src/commands/game/sideQuest/factories/repro-scene.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.d.ts +36 -0
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js +116 -3
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js +8 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +48 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.js +112 -13
- package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/headless-harness.d.ts +12 -0
- package/bundle/typescript/src/commands/game/sideQuest/headless-harness.js +23 -0
- package/bundle/typescript/src/commands/game/sideQuest/headless-harness.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/headless.js +4 -1
- package/bundle/typescript/src/commands/game/sideQuest/headless.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/npc.d.ts +32 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/npc.js +122 -3
- package/bundle/typescript/src/commands/game/sideQuest/models/npc.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/types/repro.d.ts +106 -0
- package/bundle/typescript/src/commands/game/sideQuest/types/repro.js +2 -0
- package/bundle/typescript/src/commands/game/sideQuest/types/repro.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/types/seed/device-seed.d.ts +12 -0
- package/bundle/typescript/src/commands/game/sideQuest/ui.d.ts +9 -0
- package/bundle/typescript/src/commands/game/sideQuest/ui.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.d.ts +17 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.js +250 -36
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-dump.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-review.d.ts +67 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-review.js +99 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-review.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.d.ts +85 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js +100 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.d.ts +58 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.js +82 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/commit-ref.d.ts +13 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/commit-ref.js +22 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/commit-ref.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/handoff.d.ts +42 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/handoff.js +57 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/handoff.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/identity.d.ts +36 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/identity.js +48 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/identity.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/repro-launch.d.ts +68 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/repro-launch.js +147 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/repro-launch.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js +55 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.d.ts +27 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js +44 -11
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.d.ts +47 -2
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js +76 -8
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js +39 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/table-notes.d.ts +30 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/table-notes.js +46 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/table-notes.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.d.ts +1 -0
- package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.js +46 -0
- package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.d.ts +3 -1
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +269 -42
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js.map +1 -1
- package/bundle/typescript/src/tools/log/log.class.d.ts +17 -0
- package/bundle/typescript/src/tools/log/log.class.js +30 -1
- package/bundle/typescript/src/tools/log/log.class.js.map +1 -1
- package/package.json +1 -1
|
@@ -58,6 +58,18 @@ export declare function save(name: string, overrides?: Record<string, unknown>):
|
|
|
58
58
|
* test that depends on one machine's saved games protects nothing on any
|
|
59
59
|
* other machine.
|
|
60
60
|
*/
|
|
61
|
+
/**
|
|
62
|
+
* A SAVE THAT ACTUALLY IS THE ARCHETYPE IT CLAIMS.
|
|
63
|
+
*
|
|
64
|
+
* savedPlayer's default spread is a Street Samurai, and `archetypeName`
|
|
65
|
+
* on its own is only a label -- the attributes and skills come from the
|
|
66
|
+
* explicit blocks. So a test that passed `{ archetypeName: 'Combat
|
|
67
|
+
* Mage' }` and expected to cast would get a mundane with a mage's name
|
|
68
|
+
* on it: magic 0, no spellcasting, and every ward test passing for the
|
|
69
|
+
* wrong reason. That is the shape of failure this repo keeps paying
|
|
70
|
+
* for, so the spread is read from ARCHETYPES rather than restated.
|
|
71
|
+
*/
|
|
72
|
+
export declare function saveForArchetype(name: string, archetypeName: string): ISaveFileV1;
|
|
61
73
|
export declare function paritySeed(overrides?: Partial<ISceneSeedJson>): ISceneSeedJson;
|
|
62
74
|
export interface BootOptions {
|
|
63
75
|
seed?: ISceneSeedJson;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createHeadlessSession } from './headless.js';
|
|
2
|
+
import { getArchetype } from './archetypes.js';
|
|
2
3
|
/**
|
|
3
4
|
* STANDING UP A REAL HEADLESS BOOT, cheaply.
|
|
4
5
|
*
|
|
@@ -98,6 +99,28 @@ export function save(name, overrides = {}) {
|
|
|
98
99
|
* test that depends on one machine's saved games protects nothing on any
|
|
99
100
|
* other machine.
|
|
100
101
|
*/
|
|
102
|
+
/**
|
|
103
|
+
* A SAVE THAT ACTUALLY IS THE ARCHETYPE IT CLAIMS.
|
|
104
|
+
*
|
|
105
|
+
* savedPlayer's default spread is a Street Samurai, and `archetypeName`
|
|
106
|
+
* on its own is only a label -- the attributes and skills come from the
|
|
107
|
+
* explicit blocks. So a test that passed `{ archetypeName: 'Combat
|
|
108
|
+
* Mage' }` and expected to cast would get a mundane with a mage's name
|
|
109
|
+
* on it: magic 0, no spellcasting, and every ward test passing for the
|
|
110
|
+
* wrong reason. That is the shape of failure this repo keeps paying
|
|
111
|
+
* for, so the spread is read from ARCHETYPES rather than restated.
|
|
112
|
+
*/
|
|
113
|
+
export function saveForArchetype(name, archetypeName) {
|
|
114
|
+
const a = getArchetype(archetypeName);
|
|
115
|
+
const { skills, ...attrs } = a.combat;
|
|
116
|
+
return save(name, {
|
|
117
|
+
archetypeName: a.name,
|
|
118
|
+
attributes: { ...attrs, resonance: attrs.resonance ?? 0, adept: attrs.adept ?? false },
|
|
119
|
+
skills: { ...(skills ?? {}) },
|
|
120
|
+
baseMagic: a.combat.magic ?? 0,
|
|
121
|
+
baseResonance: a.combat.resonance ?? 0,
|
|
122
|
+
});
|
|
123
|
+
}
|
|
101
124
|
export function paritySeed(overrides = {}) {
|
|
102
125
|
return {
|
|
103
126
|
name: 'Parity Job',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headless-harness.js","sourceRoot":"","sources":["../../../../../../src/commands/game/sideQuest/headless-harness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAmB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"headless-harness.js","sourceRoot":"","sources":["../../../../../../src/commands/game/sideQuest/headless-harness.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ import { Logger } from './utilities/logger.js';
|
|
|
17
17
|
import { currentSession, runInSession } from './utilities/session-context.js';
|
|
18
18
|
import { restorePlayer, serializePlayer } from './utilities/persistence.js';
|
|
19
19
|
import { renderMapViewport } from './utilities/map-view.js';
|
|
20
|
-
import { renderRoomLayoutCompact } from './utilities/room-view.js';
|
|
20
|
+
import { renderRoomLayoutCompact, crewOfTable } from './utilities/room-view.js';
|
|
21
21
|
import { entrySpotFor, spotOf } from './utilities/spots.js';
|
|
22
22
|
import { equipIntoEmptySlots } from './archetypes.js';
|
|
23
23
|
/**
|
|
@@ -303,6 +303,9 @@ export async function createHeadlessSession(opts) {
|
|
|
303
303
|
try {
|
|
304
304
|
const roomLines = renderRoomLayoutCompact(here, p, {
|
|
305
305
|
isOtherPlayer: a => game.scene.isHumanControlled(a),
|
|
306
|
+
// The leader's crew are the TABLE's crew -- without this
|
|
307
|
+
// every non-leader saw them as neutral bystanders.
|
|
308
|
+
isTableAlly: crewOfTable(game.scene.getPlayers()),
|
|
306
309
|
});
|
|
307
310
|
if (roomLines.length > 0) {
|
|
308
311
|
const spot = spotOf(p);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headless.js","sourceRoot":"","sources":["../../../../../../src/commands/game/sideQuest/headless.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"headless.js","sourceRoot":"","sources":["../../../../../../src/commands/game/sideQuest/headless.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,6 +72,32 @@ export interface IBarrierPost {
|
|
|
72
72
|
* just starts inventing one, and the only detector is a player three
|
|
73
73
|
* rooms away typing a code that was never real.
|
|
74
74
|
*/
|
|
75
|
+
/**
|
|
76
|
+
* YOU ARE THE BARRIER -- told to an NPC who is holding a doorway.
|
|
77
|
+
*
|
|
78
|
+
* REPORTED FROM A BENCH (item jqqcxx2qfgZjLgRYm, rejected 2026-08-28):
|
|
79
|
+
* "While Sable does know the door is open, and they hold the doorway,
|
|
80
|
+
* they say 'You need to go through, you go.' which contradicts their
|
|
81
|
+
* directive to hold the doorway."
|
|
82
|
+
*
|
|
83
|
+
* Exactly right, and the cause is that the word `guarding` appeared
|
|
84
|
+
* NOWHERE in this file. The brief has always described the barriers
|
|
85
|
+
* around an NPC and never the one fact that makes this NPC an obstacle
|
|
86
|
+
* at all -- so a picket knew about the door, knew it stood open, and
|
|
87
|
+
* had no idea they were the reason nobody was walking through it. Asked
|
|
88
|
+
* to move, they were agreeable, because nothing had told them not to
|
|
89
|
+
* be.
|
|
90
|
+
*
|
|
91
|
+
* It is the same shape as every other invention bug here: an NPC told
|
|
92
|
+
* NOTHING about a state does not stay silent about it, it makes
|
|
93
|
+
* something up. `guarding` is already load-bearing in the geometry --
|
|
94
|
+
* holdsGround reads it and refuses passage -- so the fiction and the
|
|
95
|
+
* mechanics were saying opposite things to the player's face.
|
|
96
|
+
*
|
|
97
|
+
* Pure and exported for the same reason as its neighbours: it fails
|
|
98
|
+
* silently. Nothing throws when a guard starts waving people through.
|
|
99
|
+
*/
|
|
100
|
+
export declare function picketDutyNote(guarding: boolean, direction?: string): string;
|
|
75
101
|
export declare function barrierPostNote(barriers: IBarrierPost[]): string;
|
|
76
102
|
/**
|
|
77
103
|
* How many real credentials this NPC was actually handed -- the number
|
|
@@ -221,6 +247,12 @@ export declare class NPC extends Player {
|
|
|
221
247
|
private static normalizeCmd;
|
|
222
248
|
private static readonly RESPOND_WORTHY_VERB;
|
|
223
249
|
allyOf?: string;
|
|
250
|
+
/**
|
|
251
|
+
* Every human seated at this scene's table. utilities/table-notes.ts
|
|
252
|
+
* turns it into what a companion is told; in solo play it is just
|
|
253
|
+
* the one runner, and every line built from it comes back empty.
|
|
254
|
+
*/
|
|
255
|
+
private seatedNames;
|
|
224
256
|
boundDevice?: Item;
|
|
225
257
|
companionKind?: 'spirit' | 'sprite' | 'agent' | 'drone' | 'ally';
|
|
226
258
|
/**
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { capitalCase } from 'change-case';
|
|
2
|
+
import { tableCrewNote, tableDeliveryNote } from '../utilities/table-notes.js';
|
|
2
3
|
import { Player } from './player.js';
|
|
3
4
|
import { Door } from './door.js';
|
|
4
5
|
import { AI } from '../../../../tools/ai/ai.class.js';
|
|
@@ -25,6 +26,43 @@ import { loadCatalog, ROLE_DOMAINS } from '../utilities/catalog.js';
|
|
|
25
26
|
* just starts inventing one, and the only detector is a player three
|
|
26
27
|
* rooms away typing a code that was never real.
|
|
27
28
|
*/
|
|
29
|
+
/**
|
|
30
|
+
* YOU ARE THE BARRIER -- told to an NPC who is holding a doorway.
|
|
31
|
+
*
|
|
32
|
+
* REPORTED FROM A BENCH (item jqqcxx2qfgZjLgRYm, rejected 2026-08-28):
|
|
33
|
+
* "While Sable does know the door is open, and they hold the doorway,
|
|
34
|
+
* they say 'You need to go through, you go.' which contradicts their
|
|
35
|
+
* directive to hold the doorway."
|
|
36
|
+
*
|
|
37
|
+
* Exactly right, and the cause is that the word `guarding` appeared
|
|
38
|
+
* NOWHERE in this file. The brief has always described the barriers
|
|
39
|
+
* around an NPC and never the one fact that makes this NPC an obstacle
|
|
40
|
+
* at all -- so a picket knew about the door, knew it stood open, and
|
|
41
|
+
* had no idea they were the reason nobody was walking through it. Asked
|
|
42
|
+
* to move, they were agreeable, because nothing had told them not to
|
|
43
|
+
* be.
|
|
44
|
+
*
|
|
45
|
+
* It is the same shape as every other invention bug here: an NPC told
|
|
46
|
+
* NOTHING about a state does not stay silent about it, it makes
|
|
47
|
+
* something up. `guarding` is already load-bearing in the geometry --
|
|
48
|
+
* holdsGround reads it and refuses passage -- so the fiction and the
|
|
49
|
+
* mechanics were saying opposite things to the player's face.
|
|
50
|
+
*
|
|
51
|
+
* Pure and exported for the same reason as its neighbours: it fails
|
|
52
|
+
* silently. Nothing throws when a guard starts waving people through.
|
|
53
|
+
*/
|
|
54
|
+
export function picketDutyNote(guarding, direction) {
|
|
55
|
+
if (!guarding)
|
|
56
|
+
return '';
|
|
57
|
+
const where = direction ? ` (the way ${direction})` : '';
|
|
58
|
+
return `\nYOU ARE HOLDING THIS DOORWAY${where}. That is your post and your whole purpose here:`
|
|
59
|
+
+ ` nobody gets past you while you stand it. You do NOT step aside, wave anyone through,`
|
|
60
|
+
+ ` invite them past, or agree to let them by -- not to be polite, not because the way`
|
|
61
|
+
+ ` beyond happens to be open, and not because they ask nicely. If the door behind you`
|
|
62
|
+
+ ` stands open that changes nothing; YOU are the barrier, not it.`
|
|
63
|
+
+ ` You can be talked round by a genuinely good story or a real reason, and you can be`
|
|
64
|
+
+ ` put down by force. Short of one of those, the answer is no.`;
|
|
65
|
+
}
|
|
28
66
|
export function barrierPostNote(barriers) {
|
|
29
67
|
return barriers.map(b => {
|
|
30
68
|
const dirNote = b.sealingDirection ? ` sealing the way ${b.sealingDirection}` : '';
|
|
@@ -448,6 +486,14 @@ export class NPC extends Player {
|
|
|
448
486
|
// an agent's deck) that combat-exchange routes damage into;
|
|
449
487
|
// companionKind flavors the prompt and the HUD.
|
|
450
488
|
allyOf;
|
|
489
|
+
/**
|
|
490
|
+
* Every human seated at this scene's table. utilities/table-notes.ts
|
|
491
|
+
* turns it into what a companion is told; in solo play it is just
|
|
492
|
+
* the one runner, and every line built from it comes back empty.
|
|
493
|
+
*/
|
|
494
|
+
seatedNames() {
|
|
495
|
+
return (this._scene?.getPlayers?.() ?? []).map(p => p.name);
|
|
496
|
+
}
|
|
451
497
|
boundDevice;
|
|
452
498
|
companionKind;
|
|
453
499
|
/**
|
|
@@ -1116,8 +1162,13 @@ description text.`;
|
|
|
1116
1162
|
// A companion mid-fetch needs a target: where its master stands, and
|
|
1117
1163
|
// that a handover is a "give", not a promise.
|
|
1118
1164
|
const reflectMaster = this.allyOf ? this._scene?.getPlayer?.() : undefined;
|
|
1165
|
+
// EVERY RUNNER AT THE TABLE CAN BE HANDED SOMETHING, not just the
|
|
1166
|
+
// one this shell is bound to -- a non-leader who asked for an item
|
|
1167
|
+
// got pointed at the leader instead of at themselves.
|
|
1168
|
+
const deliveryTail = tableDeliveryNote(this.allyOf, this.seatedNames());
|
|
1119
1169
|
const masterLine = this.allyOf
|
|
1120
1170
|
? `You serve ${this.allyOf}${reflectMaster?.currentLocation ? ` -- they are currently in ${reflectMaster.currentLocation.name}` : ''}. To deliver an item you carry, get to their room, then: give <item name> to ${this.allyOf}`
|
|
1171
|
+
+ deliveryTail
|
|
1121
1172
|
: '';
|
|
1122
1173
|
// Build the prompt context
|
|
1123
1174
|
const context = `
|
|
@@ -1373,9 +1424,50 @@ ${worldEventsSummary}
|
|
|
1373
1424
|
const targetRoom = exit.getOtherSideToName(room);
|
|
1374
1425
|
const isLocked = exit.checkIfLocked();
|
|
1375
1426
|
const isLockable = exit.checkIfLockable();
|
|
1427
|
+
// WHAT HOLDS THIS DOOR SHUT, said only when it is true.
|
|
1428
|
+
//
|
|
1429
|
+
// This used to be `if (isLocked) Requires key: "${...}"`,
|
|
1430
|
+
// unguarded -- and a DEVICE-HELD door has no
|
|
1431
|
+
// unlockItemOrSolution at all. Door.heldByDevice sets isLocked
|
|
1432
|
+
// and isLockable and deliberately nothing else, because what
|
|
1433
|
+
// opens it is the device, not a key. So every device-sealed
|
|
1434
|
+
// exit rendered, into an NPC's prompt, the literal words:
|
|
1435
|
+
//
|
|
1436
|
+
// Down -> Crypt (Locked) Requires key: "undefined".
|
|
1437
|
+
//
|
|
1438
|
+
// That is the exact failure this file's own header records
|
|
1439
|
+
// being killed in barrierPostNote, still alive one function
|
|
1440
|
+
// away. An NPC handed "undefined" where the requirement goes
|
|
1441
|
+
// does not refuse -- he INVENTS, which is how a keeper came to
|
|
1442
|
+
// promise he could open a grate that was never his to open.
|
|
1443
|
+
//
|
|
1444
|
+
// The far side is worse and is the second half of the same bug.
|
|
1445
|
+
// A Door is ONE object in both rooms' exit maps, so an NPC in
|
|
1446
|
+
// the crypt sees this same locked door while the grate lives
|
|
1447
|
+
// upstairs: no device in his room means no barrier brief at
|
|
1448
|
+
// all, and the only thing he was told about it was "undefined".
|
|
1449
|
+
// He cannot say anything true, so he says something.
|
|
1450
|
+
//
|
|
1451
|
+
// Door.heldBy already carries the answer -- the back-reference
|
|
1452
|
+
// written at wiring time that lockedRouteHint reads to tell the
|
|
1453
|
+
// PLAYER the same thing. The brief just never learned to read
|
|
1454
|
+
// it.
|
|
1376
1455
|
let requirementDetail = '';
|
|
1377
|
-
if (isLocked)
|
|
1456
|
+
if (isLocked && exit.unlockItemOrSolution) {
|
|
1378
1457
|
requirementDetail = ` Requires key: "${exit.unlockItemOrSolution}".`;
|
|
1458
|
+
}
|
|
1459
|
+
else if (isLocked && exit.heldBy) {
|
|
1460
|
+
const where = exit.heldBy.room === room.name
|
|
1461
|
+
? 'here in this room'
|
|
1462
|
+
: `in ${exit.heldBy.room}, NOT here`;
|
|
1463
|
+
requirementDetail = ` Held shut by "${exit.heldBy.device}", ${where}.`
|
|
1464
|
+
+ ` You cannot open this door yourself and must never claim you can.`;
|
|
1465
|
+
}
|
|
1466
|
+
else if (isLocked) {
|
|
1467
|
+
// Locked with nothing recorded about what opens it. Say that,
|
|
1468
|
+
// rather than naming a requirement that does not exist.
|
|
1469
|
+
requirementDetail = ` You do not know what opens it, and must not invent one.`;
|
|
1470
|
+
}
|
|
1379
1471
|
const status = isLocked ? ' (Locked)' : (isLockable ? ' (Unlocked)' : '');
|
|
1380
1472
|
return `${directionLabel} → ${targetRoom}${status}${requirementDetail}`;
|
|
1381
1473
|
}
|
|
@@ -1480,6 +1572,23 @@ An ORDER is the only way these goods change hands -- never a dialogue sale, neve
|
|
|
1480
1572
|
}))
|
|
1481
1573
|
: [];
|
|
1482
1574
|
const barrierBlock = barrierPostNote(barrierPosts);
|
|
1575
|
+
// ...AND WHETHER THIS NPC IS ITSELF THE BARRIER. Derived from the
|
|
1576
|
+
// geometry rather than asked for: `guarding` says THAT they hold a
|
|
1577
|
+
// way, and the exit whose spot they are standing on says WHICH --
|
|
1578
|
+
// the same pairing holdsGround uses to refuse passage. Stating the
|
|
1579
|
+
// direction twice (as a flag and as data) is how the two would
|
|
1580
|
+
// drift apart.
|
|
1581
|
+
let guardedDirection;
|
|
1582
|
+
const here = this.currentLocation;
|
|
1583
|
+
if (this.guarding && here?.exitSpots) {
|
|
1584
|
+
for (const [dir, spot] of here.exitSpots.entries()) {
|
|
1585
|
+
if (spot === this.atSpot) {
|
|
1586
|
+
guardedDirection = String(dir);
|
|
1587
|
+
break;
|
|
1588
|
+
}
|
|
1589
|
+
}
|
|
1590
|
+
}
|
|
1591
|
+
const picketBlock = picketDutyNote(this.guarding === true, guardedDirection);
|
|
1483
1592
|
// CREDENTIALS YOU DO NOT HOLD (a real session: "the code Oren gave me
|
|
1484
1593
|
// is wrong"). The block above is the ONLY place an NPC is ever handed
|
|
1485
1594
|
// a real requiredPhrase, and it is keyed to the room they stand in --
|
|
@@ -1530,6 +1639,16 @@ An ORDER is the only way these goods change hands -- never a dialogue sale, neve
|
|
|
1530
1639
|
const companionServices = (this.companionKind === 'spirit' || this.companionKind === 'sprite')
|
|
1531
1640
|
? this._scene?.ownerGame?.companions?.find(c => c.npc === this)?.services
|
|
1532
1641
|
: undefined;
|
|
1642
|
+
// A SHARED TABLE HAS MORE THAN ONE RUNNER ON IT.
|
|
1643
|
+
//
|
|
1644
|
+
// allyOf names the LEADER and only the leader (spawnCompanionShell
|
|
1645
|
+
// binds every shell to Scene.getPlayer(), which is players[0]), so
|
|
1646
|
+
// a companion briefed from it alone was never told the other humans
|
|
1647
|
+
// were crew at all. Asked by one of them whether she rode with
|
|
1648
|
+
// them, she answered correctly from what she knew, which was
|
|
1649
|
+
// nothing (QxWL88bYNR8P5WDEd: "Jinx doesn't know they are in my
|
|
1650
|
+
// crew"). Solo play adds no line at all -- there is no table.
|
|
1651
|
+
const tableNote = tableCrewNote(this.allyOf, this.seatedNames());
|
|
1533
1652
|
const companionNote = this.allyOf
|
|
1534
1653
|
? `IMPORTANT -- YOU SERVE ${this.allyOf}. You are their bound ${this.companionKind ?? 'companion'}${this.companionKind === 'spirit' ? ` (a summoned spirit${typeof companionServices === 'number' ? `, ${companionServices} service${companionServices === 1 ? '' : 's'} remaining on the bargain` : ''})`
|
|
1535
1654
|
: this.companionKind === 'sprite' ? ` (a compiled sprite${typeof companionServices === 'number' ? `, ${companionServices} task${companionServices === 1 ? '' : 's'} remaining on the thread` : ''})`
|
|
@@ -1632,10 +1751,10 @@ Your objective is to drive the story line.
|
|
|
1632
1751
|
${formattedExitsStr}
|
|
1633
1752
|
${roomInventoryDesc}
|
|
1634
1753
|
${waresDesc}
|
|
1635
|
-
${swagNote}${clientNote}${barrierBlock}${credentialHonesty}${localKnowledge}
|
|
1754
|
+
${swagNote}${clientNote}${picketBlock}${barrierBlock}${credentialHonesty}${localKnowledge}
|
|
1636
1755
|
${familiarity}
|
|
1637
1756
|
${droneNote}
|
|
1638
|
-
${companionNote}
|
|
1757
|
+
${companionNote}${tableNote}
|
|
1639
1758
|
${geographySummary}
|
|
1640
1759
|
${castSummary}
|
|
1641
1760
|
|