@maka/maka-cli 5.121.0 → 5.122.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/sideQuest/archetypes.d.ts +72 -0
- package/bundle/typescript/src/commands/game/sideQuest/archetypes.js +300 -61
- package/bundle/typescript/src/commands/game/sideQuest/archetypes.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/aspects.js +11 -1
- package/bundle/typescript/src/commands/game/sideQuest/aspects.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/augmentations.d.ts +33 -0
- package/bundle/typescript/src/commands/game/sideQuest/augmentations.js +85 -0
- package/bundle/typescript/src/commands/game/sideQuest/augmentations.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/buy.js +8 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/buy.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/equipment.js +4 -2
- package/bundle/typescript/src/commands/game/sideQuest/commands/equipment.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/hack.d.ts +16 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js +273 -28
- package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/mark.d.ts +19 -10
- package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js +43 -227
- package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/move.js +31 -3
- package/bundle/typescript/src/commands/game/sideQuest/commands/move.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js +5 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/sell.js +4 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/sell.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/silent.js +4 -6
- package/bundle/typescript/src/commands/game/sideQuest/commands/silent.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/stance.d.ts +10 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/stance.js +50 -2
- package/bundle/typescript/src/commands/game/sideQuest/commands/stance.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/unequip.js +27 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/unequip.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 +17 -1
- package/bundle/typescript/src/commands/game/sideQuest/engine-version.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.d.ts +3 -2
- package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js +34 -41
- package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js +37 -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 +47 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.js +103 -4
- package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/headless-harness.d.ts +17 -0
- package/bundle/typescript/src/commands/game/sideQuest/headless-harness.js +30 -2
- package/bundle/typescript/src/commands/game/sideQuest/headless-harness.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/device.d.ts +14 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/device.js +14 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/device.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/item.d.ts +6 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/item.js +8 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/item.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +82 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js +118 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/qualities.d.ts +4 -0
- package/bundle/typescript/src/commands/game/sideQuest/qualities.js +16 -0
- package/bundle/typescript/src/commands/game/sideQuest/qualities.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/scenes/scene1.json +9 -9
- package/bundle/typescript/src/commands/game/sideQuest/scenes/scene2.json +6 -6
- package/bundle/typescript/src/commands/game/sideQuest/types/save-file.d.ts +5 -1
- package/bundle/typescript/src/commands/game/sideQuest/ui.js +23 -26
- package/bundle/typescript/src/commands/game/sideQuest/ui.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.d.ts +24 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.js +34 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/cloud-saves.d.ts +9 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/cloud-saves.js +8 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/cloud-saves.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js +25 -2
- package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/comm-style.d.ts +32 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/comm-style.js +33 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/comm-style.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/dice.d.ts +5 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/dice.js +35 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/dice.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/matrix-intrusion.d.ts +121 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/matrix-intrusion.js +141 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/matrix-intrusion.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js +5 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/pregen-worksheet.d.ts +93 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/pregen-worksheet.js +201 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/pregen-worksheet.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js +91 -9
- package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.d.ts +16 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js +50 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.d.ts +7 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js +7 -2
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +43 -3
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,6 +3,7 @@ import { gridActionModifier, gridNote } from '../utilities/grids.js';
|
|
|
3
3
|
import { resolveHostInReach, hostsInReach, hostOver, gridVicinity, roomsInReach, noiseNote } from '../utilities/grid-reach.js';
|
|
4
4
|
import { accrueOverwatch } from '../utilities/overwatch.js';
|
|
5
5
|
import { hint } from '../utilities/hints.js';
|
|
6
|
+
import { dropActiveCall } from '../utilities/comm-style.js';
|
|
6
7
|
import { rollPool, formatRoll } from '../utilities/dice.js';
|
|
7
8
|
import { leaveMatrix } from '../utilities/planes.js';
|
|
8
9
|
import { fuzzyPickName } from '../utilities/fuzzy-match.js';
|
|
@@ -11,6 +12,7 @@ import { matchesCameraName, hostLabel } from '../utilities/grid-names.js';
|
|
|
11
12
|
import { TapCommand } from './tap.js';
|
|
12
13
|
import { sameHostSide } from '../models/player.js';
|
|
13
14
|
import { MAX_MARKS } from '../utilities/marks.js';
|
|
15
|
+
import { declarationPenalty, parseMarkDeclaration, hostDefensePool, freeMatrixPerceptionHits, bruteForceMatrixDv, overwatchFromDefense, GO_BIG_QUALITY, deviceDefensePool } from '../utilities/matrix-intrusion.js';
|
|
14
16
|
/**
|
|
15
17
|
* MARKS A PAN INTRUSION MUST ALREADY HOLD before it can command the
|
|
16
18
|
* device rather than merely key it (Control Device, p.238: 1 mark for a
|
|
@@ -26,7 +28,7 @@ const MARKS_TO_COMMAND_A_PAN = 2;
|
|
|
26
28
|
* Anchored so it never fires on a name that merely contains one. */
|
|
27
29
|
export class HackCommand extends BypassCommand {
|
|
28
30
|
static verb = 'hack';
|
|
29
|
-
static description = 'Hack a terminal, host, or PAN. TWO ROUTES
|
|
31
|
+
static description = 'Hack a terminal, host, or PAN. TWO ROUTES, and your STANCE picks which (Tab flips it, "stance" shows it): ATTACK is Brute Force (p.238 -- Cybercombat + Logic [Attack]; a MISS goes unnoticed, the firewall just bites you). SLEAZE is Hack on the Fly (p.240 -- Hacking + Logic [Sleaze]; succeed and NOBODY knows; fail and you are MADE: alarm, ice hunting, walls up). "hack loud" / "hack quiet" override the stance for one action. The BRACKET IS A LIMIT: it caps how many HITS you can count, and is never a die in the pool -- so the Sleaze or Attack on your deck is a CEILING on what a run of luck can buy you, not a bonus ("deck" shows the array, and the Mechanics line says when the cap bit). "hack <name>" cracks a PAN the same two ways. Terminal-puzzle hacks are their own rail (a failed one locks you out for good).';
|
|
30
32
|
deviceKind = 'panel';
|
|
31
33
|
verbName = 'hack';
|
|
32
34
|
noDeviceMessage = "There's nothing here to hack.";
|
|
@@ -34,24 +36,44 @@ export class HackCommand extends BypassCommand {
|
|
|
34
36
|
* The Attack/Sleaze fork (canon p.236 "Noticing Hackers", player
|
|
35
37
|
* ruling 2026-08-23): "loud"/"force"/"brute"/"attack" anywhere in the
|
|
36
38
|
* words picks Brute Force; "quiet"/"sleaze"/"sneak" picks Hack on the
|
|
37
|
-
* Fly explicitly; default is
|
|
39
|
+
* Fly explicitly; the default is the player's STANCE (Tab, see
|
|
40
|
+
* MatrixStance), which ships as Brute Force.
|
|
38
41
|
* The mode word is stripped so "hack loud mama wu" still finds Mama Wu.
|
|
39
42
|
*/
|
|
40
|
-
static parseMode(args) {
|
|
43
|
+
static parseMode(args, stance) {
|
|
41
44
|
const rest = [...(args ?? [])];
|
|
42
|
-
|
|
45
|
+
// THE DEFAULT IS THE STANCE, NOT A LITERAL (uMQAhaAysgaKpWFkn,
|
|
46
|
+
// mjmcee 2026-09-03). It used to be hardcoded 'sleaze' here and
|
|
47
|
+
// again in mark.ts -- two copies of a decision the player could
|
|
48
|
+
// not see or change. Tab now sets it once and both verbs read it;
|
|
49
|
+
// the mode words below stay as a one-shot override for the action
|
|
50
|
+
// you are about to take without moving your standing posture.
|
|
51
|
+
let mode = stance;
|
|
43
52
|
const loudIdx = rest.findIndex(w => /^(loud|force|brute|attack)$/i.test(w));
|
|
44
53
|
if (loudIdx >= 0) {
|
|
45
54
|
mode = 'attack';
|
|
46
55
|
rest.splice(loudIdx, 1);
|
|
47
56
|
}
|
|
48
57
|
const quietIdx = rest.findIndex(w => /^(quiet|sleaze|sneak)$/i.test(w));
|
|
49
|
-
|
|
58
|
+
// SETS the mode, it does not merely strip the word. While Sleaze was
|
|
59
|
+
// the hardcoded default this branch could get away with only
|
|
60
|
+
// splicing -- it was right for the wrong reason, and nothing could
|
|
61
|
+
// tell the difference because both paths agreed. The moment the
|
|
62
|
+
// default became the stance (uMQAhaAysgaKpWFkn) that omission turned
|
|
63
|
+
// "hack quiet" into a Brute Force.
|
|
64
|
+
if (quietIdx >= 0) {
|
|
65
|
+
mode = 'sleaze';
|
|
50
66
|
rest.splice(quietIdx, 1);
|
|
67
|
+
}
|
|
51
68
|
return { mode, rest };
|
|
52
69
|
}
|
|
53
70
|
async execute(args = []) {
|
|
54
|
-
const { mode, rest } = HackCommand.parseMode(args);
|
|
71
|
+
const { mode, rest: afterMode } = HackCommand.parseMode(args, this.actor.matrixStance);
|
|
72
|
+
// HOW MANY MARKS YOU ARE REACHING FOR, declared before the roll
|
|
73
|
+
// (p.238/p.240) -- "hack for 3", "hack 2 marks on the door". Stripped
|
|
74
|
+
// here so a declaration never lands in a target name, the same way
|
|
75
|
+
// the mode words are.
|
|
76
|
+
const { marks: declaredMarks, rest } = parseMarkDeclaration(afterMode);
|
|
55
77
|
// PAN warfare: "hack <name>" cracks a meat actor's personal area
|
|
56
78
|
// network -- from inside the Matrix, or right here in AR with a
|
|
57
79
|
// working deck in hand (which is also how enemy deckers get YOU).
|
|
@@ -83,6 +105,14 @@ export class HackCommand extends BypassCommand {
|
|
|
83
105
|
// sim mode like ice hits), not the meat-world instant-fatal of
|
|
84
106
|
// hardwiring into a puzzle terminal.
|
|
85
107
|
if (this.actor.plane === 'matrix') {
|
|
108
|
+
// A SLAVED DEVICE IS ITS OWN ICON (Data Trails p.87-88). Tried
|
|
109
|
+
// before the host resolution so a named maglock is the target the
|
|
110
|
+
// player actually meant, rather than falling through to the node
|
|
111
|
+
// it hangs off -- the whole point of the decomposition is that
|
|
112
|
+
// those are two different doors.
|
|
113
|
+
const deviceResult = await this.tryDeviceHack(rest, mode, declaredMarks);
|
|
114
|
+
if (deviceResult)
|
|
115
|
+
return deviceResult;
|
|
86
116
|
// THE HOST, BY NAME, FROM ANYWHERE (SR5 p.246); bare "hack" means the
|
|
87
117
|
// one hanging over the persona's vicinity. No patch to stand on first.
|
|
88
118
|
const gridRooms = this.rooms ?? this.scene.getRooms();
|
|
@@ -113,11 +143,22 @@ export class HackCommand extends BypassCommand {
|
|
|
113
143
|
}
|
|
114
144
|
// What the host masters, through the room it stands over (models/host.ts).
|
|
115
145
|
const lockedDoors = room.host.maglocks();
|
|
116
|
-
// MARKS
|
|
117
|
-
//
|
|
118
|
-
//
|
|
146
|
+
// MARKS ARE THE CURRENCY, AND THIS IS AN OPPOSED TEST NOW
|
|
147
|
+
// (uMQAhaAysgaKpWFkn, 2026-09-03). What stood here was a flat
|
|
148
|
+
// threshold the host never rolled against, softened one step per
|
|
149
|
+
// mark held -- so `hack` bought an entire host on the same roll
|
|
150
|
+
// that `mark` turned into one increment. Both are the SAME canon
|
|
151
|
+
// action (p.238/p.240); the difference was the verb the player
|
|
152
|
+
// typed, which is exactly what the report calls obfuscating.
|
|
153
|
+
//
|
|
154
|
+
// Now: declare how many marks you are reaching for (p.238/p.240,
|
|
155
|
+
// -4 for two and -10 for three, -6 with Go Big or Go Home), roll
|
|
156
|
+
// the action, and the host rolls its own defence against you.
|
|
119
157
|
const myMarks = room.hostMarksBy.get(this.actor.name) ?? 0;
|
|
120
|
-
|
|
158
|
+
if (myMarks >= MAX_MARKS) {
|
|
159
|
+
return `You already hold ${MAX_MARKS} marks on ${hostLabel(room)} -- as far as it is concerned you belong here.${hint(` ("enter" walks in; the doors and files inside are each their own icon.)`)}`;
|
|
160
|
+
}
|
|
161
|
+
const declared = Math.min(declaredMarks, MAX_MARKS - myMarks);
|
|
121
162
|
// A BRACKET EATEN TO ZERO CANNOT SUCCEED. Gated here rather than
|
|
122
163
|
// inside hostIntrusionRoll because that returns a boolean and a
|
|
123
164
|
// refusal needs words. See Player.burnedAttributeRefusal for why
|
|
@@ -126,11 +167,14 @@ export class HackCommand extends BypassCommand {
|
|
|
126
167
|
if (burned)
|
|
127
168
|
return burned;
|
|
128
169
|
this.actor.performAction('hacks the host', room.name);
|
|
129
|
-
const
|
|
130
|
-
|
|
131
|
-
//
|
|
132
|
-
//
|
|
133
|
-
|
|
170
|
+
const attempt = await this.hostIntrusionRoll(mode, declared, room);
|
|
171
|
+
const success = attempt.success;
|
|
172
|
+
// GOD BILLS THE DEFENDER'S HITS (p.231-232): "your OS increases by
|
|
173
|
+
// the number of hits the target gets on its defense test". It was a
|
|
174
|
+
// flat 2 here, which could not tell a host that nearly caught you
|
|
175
|
+
// from one that rolled nothing -- and could not, because nothing
|
|
176
|
+
// was rolling on the other side of the table.
|
|
177
|
+
const godLines = this.godBill(overwatchFromDefense(attempt.defenseHits), `host intrusion (${mode})`);
|
|
134
178
|
if (!success) {
|
|
135
179
|
if (mode === 'sleaze') {
|
|
136
180
|
// Canon p.236: a blown SLEAZE action is NOTICED -- the host
|
|
@@ -191,9 +235,68 @@ export class HackCommand extends BypassCommand {
|
|
|
191
235
|
this.scene.updateStatus();
|
|
192
236
|
return lines.join('\n');
|
|
193
237
|
}
|
|
194
|
-
//
|
|
195
|
-
//
|
|
196
|
-
//
|
|
238
|
+
// SUCCESS PLACES MARKS -- IT DOES NOT BUY THE HOST (the defect
|
|
239
|
+
// this item reports). One roll used to set hostCracked outright,
|
|
240
|
+
// so the identical roll was worth an entire node through `hack`
|
|
241
|
+
// and one increment through `mark`. Now both place what was
|
|
242
|
+
// DECLARED, and the node opens when you hold all three: at that
|
|
243
|
+
// point the host's own architecture treats you as staff (p.236).
|
|
244
|
+
//
|
|
245
|
+
// Reaching for three in a single action is still on the table --
|
|
246
|
+
// that is what the -10 is for -- so the one-action takeover
|
|
247
|
+
// survives at the book's price instead of being free to whoever
|
|
248
|
+
// guessed the right verb.
|
|
249
|
+
const marksNow = Math.min(MAX_MARKS, myMarks + declared);
|
|
250
|
+
room.hostMarksBy.set(this.actor.name, marksNow);
|
|
251
|
+
this.actor.noteConditionChanged();
|
|
252
|
+
this.logger.write(`Mark: ${this.actor.name} -> host ${room.name} (${marksNow}/${MAX_MARKS}, ${mode}).`);
|
|
253
|
+
// HACK ON THE FLY READS WHILE IT KEYS (p.240): every two full net
|
|
254
|
+
// hits is a Matrix Perception hit. One of the two benefits the
|
|
255
|
+
// report says the engine strips out -- and the one that makes the
|
|
256
|
+
// quiet route worth taking when it does not open anything yet.
|
|
257
|
+
const perception = mode === 'sleaze' ? freeMatrixPerceptionHits(attempt.netHits) : 0;
|
|
258
|
+
// BRUTE FORCE BURNS WHILE IT FORCES (p.238): 1 DV per two full net
|
|
259
|
+
// hits. Against a HOST there is nothing to burn -- canon gives a
|
|
260
|
+
// host no condition monitor, so this is carried to the icons that
|
|
261
|
+
// do have one (a PAN's deck, a device) rather than invented here.
|
|
262
|
+
const forcedDv = mode === 'attack' ? bruteForceMatrixDv(attempt.netHits) : 0;
|
|
263
|
+
if (marksNow < MAX_MARKS) {
|
|
264
|
+
const lines = [
|
|
265
|
+
mode === 'attack'
|
|
266
|
+
? `You force a key into the lattice -- ${marksNow} of ${MAX_MARKS} marks riding ${hostLabel(room)} now.`
|
|
267
|
+
: `The key settles into the lattice unnoticed -- ${marksNow} of ${MAX_MARKS} marks riding ${hostLabel(room)} now.`,
|
|
268
|
+
];
|
|
269
|
+
if (marksNow >= 1)
|
|
270
|
+
lines.push(` One mark is the door: "enter" walks your persona inside (p.239).`);
|
|
271
|
+
if (perception > 0)
|
|
272
|
+
lines.push(` {cyan-fg}And you read it on the way past -- ${perception} Matrix Perception hit${perception === 1 ? '' : 's'} of what this node is (p.240).{/cyan-fg}`);
|
|
273
|
+
if (forcedDv > 0)
|
|
274
|
+
lines.push(` The forcing burns ${forcedDv} DV into the architecture -- a host has no boards to brick, so it only announces you louder.`);
|
|
275
|
+
lines.push(` ${MAX_MARKS - marksNow} more and its architecture stops asking who you are.${hint(` ("hack for ${MAX_MARKS - marksNow}" reaches for the rest at once -- ${declarationPenalty(MAX_MARKS - marksNow, this.actor.hasQuality(GO_BIG_QUALITY))} dice.)`)}`);
|
|
276
|
+
if (mode === 'attack') {
|
|
277
|
+
this.actor.sneaking = false;
|
|
278
|
+
room.hostAlert = true;
|
|
279
|
+
this.scene.addWorldEvent(`${hostLabel(room, { capital: true })} takes a forced key -- alarm flagged, ice hunting.`);
|
|
280
|
+
}
|
|
281
|
+
lines.push(...godLines);
|
|
282
|
+
this.scene.updateStatus();
|
|
283
|
+
return lines.join('\n');
|
|
284
|
+
}
|
|
285
|
+
// Three marks: the node stops asking who you are.
|
|
286
|
+
//
|
|
287
|
+
// WHAT THIS NO LONGER BUYS: the room's maglocks. Canon has each
|
|
288
|
+
// slaved device as its own icon with its own marks -- Data Trails
|
|
289
|
+
// p.87-88 works the example, where a decker already standing
|
|
290
|
+
// inside a host still has to Hack on the Fly the door before a
|
|
291
|
+
// Control Device action can open it. Owning the host is not
|
|
292
|
+
// owning the door. `hack <lock>` from in here is that action.
|
|
293
|
+
//
|
|
294
|
+
// The host's own FILES do still open with it, and that is a
|
|
295
|
+
// deliberate line rather than an oversight: they are the host's
|
|
296
|
+
// own contents, not devices slaved to it, and the book's worked
|
|
297
|
+
// example is about a door. If that should decompose too it is a
|
|
298
|
+
// content question, and it is named here rather than quietly
|
|
299
|
+
// decided.
|
|
197
300
|
room.hostCracked = true;
|
|
198
301
|
const vaultedFiles = room.host.files();
|
|
199
302
|
// WHAT THE CRACK ACTUALLY BOUGHT, asked of the same helper snoop
|
|
@@ -202,11 +305,32 @@ export class HackCommand extends BypassCommand {
|
|
|
202
305
|
// the state the player is now standing in, not the one they left.
|
|
203
306
|
const feedsNow = canSnoopFeeds(this.rooms ?? {}, room, this.actor);
|
|
204
307
|
const lines = [`You're in. The host's sculpted security folds back layer by layer --`];
|
|
205
|
-
|
|
206
|
-
|
|
308
|
+
// WHICH DOORS ARE ICONS, AND WHICH ARE JUST THE HOST'S OWN WALLS.
|
|
309
|
+
//
|
|
310
|
+
// A door held by a DEVICE has that device's back-reference on it
|
|
311
|
+
// (Door.heldBy, written at build time) -- that device is a slaved
|
|
312
|
+
// icon with its own Device Rating, and canon makes it its own
|
|
313
|
+
// door: a decker inside the host still keys it separately (Data
|
|
314
|
+
// Trails p.87-88). Those are named, not released.
|
|
315
|
+
//
|
|
316
|
+
// A locked door with NO device behind it has no icon to mark and
|
|
317
|
+
// no other verb that opens it. Releasing those with the node is
|
|
318
|
+
// the engine's own reading of "the host runs this place" and is
|
|
319
|
+
// deliberately kept -- decomposing a door that has nothing to
|
|
320
|
+
// decompose into would strand it shut forever.
|
|
321
|
+
const iconLocks = room.openableDevices().filter(d => d.rating > 0 && d.opensExit);
|
|
322
|
+
const wallDoors = lockedDoors.filter(d => !d.heldBy);
|
|
323
|
+
if (wallDoors.length > 0) {
|
|
324
|
+
for (const door of wallDoors) {
|
|
207
325
|
door.isLocked = false;
|
|
208
326
|
}
|
|
209
|
-
lines.push(` ${
|
|
327
|
+
lines.push(` ${wallDoors.length} maglock${wallDoors.length === 1 ? '' : 's'} release${wallDoors.length === 1 ? 's' : ''} in the MEAT world -- the ones the node itself holds. The way is open, out there.`);
|
|
328
|
+
}
|
|
329
|
+
if (iconLocks.length > 0) {
|
|
330
|
+
// NOT RELEASED -- NAMED. Telling the player these are here, and
|
|
331
|
+
// that each is one more action, is the difference between a
|
|
332
|
+
// decomposition and a thing that quietly stopped working.
|
|
333
|
+
lines.push(` ${iconLocks.length} ${iconLocks.length === 1 ? 'lock hangs' : 'locks hang'} off it, still sealed -- each its own icon behind its own rating: ${iconLocks.map(d => d.name).join(', ')}.${hint(` ("hack <lock>" from in here keys one; the host's key is not the door's.)`)}`);
|
|
210
334
|
}
|
|
211
335
|
if (vaultedFiles.length > 0) {
|
|
212
336
|
lines.push(` {cyan-fg}The data vault unseals -- ${vaultedFiles.map(i => i.name).join(', ')} spill${vaultedFiles.length === 1 ? 's' : ''} into the open.${hint(` Yours to "take".`)}{/cyan-fg}`);
|
|
@@ -314,7 +438,115 @@ export class HackCommand extends BypassCommand {
|
|
|
314
438
|
* here alone -- partial canon reproduces the same report one layer
|
|
315
439
|
* down.
|
|
316
440
|
*/
|
|
317
|
-
|
|
441
|
+
/**
|
|
442
|
+
* KEYING A SLAVED DEVICE -- the action the decomposition exists for
|
|
443
|
+
* (uMQAhaAysgaKpWFkn; Data Trails p.87-88).
|
|
444
|
+
*
|
|
445
|
+
* The decker is inside a host and names one of the locks hanging off
|
|
446
|
+
* it. That lock defends with its OWN Device Rating + Firewall, not the
|
|
447
|
+
* host's, and a mark on the host does nothing for it. One mark is
|
|
448
|
+
* enough to command a door open: opening one is a Free action, and
|
|
449
|
+
* p.238 puts a Free action at one mark.
|
|
450
|
+
*
|
|
451
|
+
* Returns null when the words name no device here, so hosts, PANs and
|
|
452
|
+
* the puzzle rail below are all reached untouched.
|
|
453
|
+
*/
|
|
454
|
+
async tryDeviceHack(args, mode, declaredMarks) {
|
|
455
|
+
const actor = this.actor;
|
|
456
|
+
const host = actor.insideHost;
|
|
457
|
+
const named = args.join(' ').trim();
|
|
458
|
+
if (!host || !named)
|
|
459
|
+
return null;
|
|
460
|
+
const devices = host.openableDevices().filter(d => d.rating > 0);
|
|
461
|
+
if (devices.length === 0)
|
|
462
|
+
return null;
|
|
463
|
+
const raw = named.toLowerCase();
|
|
464
|
+
const matches = devices.filter(d => d.name.toLowerCase().includes(raw)
|
|
465
|
+
|| (d.opensExit ?? '').toLowerCase() === raw
|
|
466
|
+
|| d.description.toLowerCase().includes(raw));
|
|
467
|
+
if (matches.length !== 1)
|
|
468
|
+
return null;
|
|
469
|
+
const device = matches[0];
|
|
470
|
+
const held = device.marksBy.get(actor.name) ?? 0;
|
|
471
|
+
if (held >= MAX_MARKS) {
|
|
472
|
+
return `You already hold ${MAX_MARKS} marks on ${device.name} -- it answers to you as readily as to the house.`;
|
|
473
|
+
}
|
|
474
|
+
const burned = actor.burnedAttributeRefusal(mode === 'attack' ? 'attack' : 'sleaze');
|
|
475
|
+
if (burned)
|
|
476
|
+
return burned;
|
|
477
|
+
const declared = Math.min(declaredMarks, MAX_MARKS - held);
|
|
478
|
+
const declarePenalty = declarationPenalty(declared, actor.hasQuality(GO_BIG_QUALITY));
|
|
479
|
+
const silence = actor.matrixActionPenalty;
|
|
480
|
+
const limit = actor.matrixAttribute(mode === 'attack' ? 'attack' : 'sleaze');
|
|
481
|
+
const pool = mode === 'attack'
|
|
482
|
+
? Math.max(1, actor.getAttackPool() + silence + actor.qualityBonus('attack') + declarePenalty)
|
|
483
|
+
: Math.max(1, actor.logic + actor.skillRating('hacking') + actor.qualityBonus('hacking') + actor.qualityBonus('sleaze')
|
|
484
|
+
+ silence + actor.woundModifier - actor.sustainingPenalty + declarePenalty);
|
|
485
|
+
actor.performAction('works a slaved icon', device.name);
|
|
486
|
+
const roll = rollPool(pool, limit, { gremlins: actor.deckGremlins });
|
|
487
|
+
const defense = deviceDefensePool(device);
|
|
488
|
+
const defenseRoll = rollPool(defense.pool);
|
|
489
|
+
const netHits = roll.hits - defenseRoll.hits;
|
|
490
|
+
if (this.scene.isHumanControlled(actor)) {
|
|
491
|
+
const declaring = declared > 1 ? ` for ${declared} marks (${declarePenalty})` : '';
|
|
492
|
+
this.logger.meta(`${mode === 'attack' ? 'Brute Force (attack)' : 'Hack on the Fly (sleaze)'} on ${device.name}${declaring}: ${formatRoll(roll)}`);
|
|
493
|
+
this.logger.meta(`${defense.label} (DR ${device.rating}): ${formatRoll(defenseRoll)} -- net ${netHits >= 0 ? '+' : ''}${netHits}`);
|
|
494
|
+
}
|
|
495
|
+
const godLines = this.godBill(overwatchFromDefense(defenseRoll.hits), `device intrusion (${mode})`);
|
|
496
|
+
if (netHits <= 0) {
|
|
497
|
+
if (mode === 'sleaze') {
|
|
498
|
+
// A blown Sleaze is NOTICED (p.236) -- and a slaved device that
|
|
499
|
+
// notices tells the host it hangs off.
|
|
500
|
+
host.hostAlert = true;
|
|
501
|
+
actor.sneaking = false;
|
|
502
|
+
this.scene.addWorldEvent(`${device.name} flags a bad handshake -- ${hostLabel(host, { capital: true })} is awake.`);
|
|
503
|
+
this.scene.updateStatus();
|
|
504
|
+
return [`${device.name} refuses the key and SAYS SO -- the node it answers to knows something is in here.`, ...godLines].join('\n');
|
|
505
|
+
}
|
|
506
|
+
return [`${device.name} holds against the smash -- its firewall never even flexes. Nobody upstairs noticed.`, ...godLines].join('\n');
|
|
507
|
+
}
|
|
508
|
+
const now = Math.min(MAX_MARKS, held + declared);
|
|
509
|
+
device.marksBy.set(actor.name, now);
|
|
510
|
+
this.logger.write(`Mark: ${actor.name} -> device ${device.name} (${now}/${MAX_MARKS}, ${mode}).`);
|
|
511
|
+
const lines = [`${device.name} takes your key -- ${now} of ${MAX_MARKS} mark${now === 1 ? '' : 's'} on it now.`];
|
|
512
|
+
// BRUTE FORCE BURNS WHAT IT FORCES (p.238): 1 DV per two full net
|
|
513
|
+
// hits, resisted by Device Rating + Firewall. Unlike a host, a
|
|
514
|
+
// device HAS something to take it -- so here the benefit lands.
|
|
515
|
+
if (mode === 'attack') {
|
|
516
|
+
const dv = bruteForceMatrixDv(netHits);
|
|
517
|
+
if (dv > 0) {
|
|
518
|
+
const resisted = Math.max(0, dv - rollPool(defense.pool).hits);
|
|
519
|
+
if (resisted > 0) {
|
|
520
|
+
device.takeBarrierDamage(resisted);
|
|
521
|
+
lines.push(` The forcing burns ${resisted} into its boards -- ${device.barrierSummary()}`);
|
|
522
|
+
if (device.isHoled)
|
|
523
|
+
lines.push(` It dies open. Whatever it was holding shut is not shut any more.`);
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
host.hostAlert = true;
|
|
527
|
+
actor.sneaking = false;
|
|
528
|
+
}
|
|
529
|
+
else {
|
|
530
|
+
const perception = freeMatrixPerceptionHits(netHits);
|
|
531
|
+
if (perception > 0)
|
|
532
|
+
lines.push(` {cyan-fg}And you read it on the way past -- ${perception} Matrix Perception hit${perception === 1 ? '' : 's'} of what it guards (p.240).{/cyan-fg}`);
|
|
533
|
+
}
|
|
534
|
+
// ONE MARK COMMANDS IT. Opening a door is a Free action, and p.238
|
|
535
|
+
// puts a Free action at one mark -- so the key IS the door, and
|
|
536
|
+
// there is no second roll to make.
|
|
537
|
+
if (now >= 1 && !device.isOpen()) {
|
|
538
|
+
// NAME ONLY A VERB THAT DISPATCHES. An earlier draft offered
|
|
539
|
+
// "control <device>", which is not a command this game has --
|
|
540
|
+
// caught by advertised-verbs-structured.test.ts, which exists for
|
|
541
|
+
// exactly that. `open` is the real one, and it is a MEAT verb: the
|
|
542
|
+
// key is placed from in here, the door swings out there.
|
|
543
|
+
lines.push(` That is enough to work it: ${device.opensExit ? `the ${device.opensExit} way` : device.name} answers to you now.${hint(` ("open ${device.opensExit ?? device.name}" once your body is back in the room.)`)}`);
|
|
544
|
+
}
|
|
545
|
+
this.scene.updateStatus();
|
|
546
|
+
return [...lines, ...godLines].join('\n');
|
|
547
|
+
}
|
|
548
|
+
async hostIntrusionRoll(mode, declared, room) {
|
|
549
|
+
const targetGrid = room.host?.grid;
|
|
318
550
|
const grid = gridActionModifier(this.actor.currentGrid, !!this.actor.hostInside, targetGrid);
|
|
319
551
|
let pool;
|
|
320
552
|
// Running silent charges -2 on every Matrix action (canon p.235-236,
|
|
@@ -329,11 +561,27 @@ export class HackCommand extends BypassCommand {
|
|
|
329
561
|
else {
|
|
330
562
|
pool = Math.max(1, this.actor.logic + this.actor.skillRating('hacking') + this.actor.qualityBonus('hacking') + this.actor.qualityBonus('sleaze') + silence + this.actor.woundModifier - this.actor.sustainingPenalty + grid.total);
|
|
331
563
|
}
|
|
564
|
+
// DECLARING FOR MORE COSTS DICE, BEFORE THE ROLL (p.238/p.240): -4
|
|
565
|
+
// for two marks, -10 for three, -6 for three with Go Big or Go Home
|
|
566
|
+
// (Data Trails p.44). This is the price of the one-action takeover
|
|
567
|
+
// the old flat threshold handed out for nothing.
|
|
568
|
+
const declarePenalty = declarationPenalty(declared, this.actor.hasQuality(GO_BIG_QUALITY));
|
|
569
|
+
pool = Math.max(1, pool + declarePenalty);
|
|
332
570
|
const roll = rollPool(pool, limit, { gremlins: this.actor.deckGremlins });
|
|
571
|
+
// AND THE HOST ROLLS BACK. There was no defender here at all: a flat
|
|
572
|
+
// threshold stood in for the opposed test both actions are built on,
|
|
573
|
+
// which is also why GOD could only be billed a flat rate (there were
|
|
574
|
+
// no defence hits to count). See hostDefensePool on why the host's
|
|
575
|
+
// own pool is an engine ruling and not a page number.
|
|
576
|
+
const defense = hostDefensePool(room.host);
|
|
577
|
+
const defenseRoll = rollPool(defense.pool);
|
|
578
|
+
const netHits = roll.hits - defenseRoll.hits;
|
|
333
579
|
if (this.scene.isHumanControlled(this.actor)) {
|
|
334
|
-
|
|
580
|
+
const declaring = declared > 1 ? ` for ${declared} marks (${declarePenalty})` : '';
|
|
581
|
+
this.logger.meta(`${mode === 'attack' ? 'Brute Force (attack)' : 'Hack on the Fly (sleaze)'}${declaring}${gridNote(grid)}: ${formatRoll(roll)}`);
|
|
582
|
+
this.logger.meta(`${defense.label}: ${formatRoll(defenseRoll)} -- net ${netHits >= 0 ? '+' : ''}${netHits}`);
|
|
335
583
|
}
|
|
336
|
-
return
|
|
584
|
+
return { success: netHits > 0, netHits, defenseHits: defenseRoll.hits };
|
|
337
585
|
}
|
|
338
586
|
/**
|
|
339
587
|
* The PAN duel: opposed roll, attacker's Logic + the better of Hacking
|
|
@@ -592,10 +840,7 @@ export class HackCommand extends BypassCommand {
|
|
|
592
840
|
}
|
|
593
841
|
else if (!target.arOffline) {
|
|
594
842
|
target.arOffline = true;
|
|
595
|
-
|
|
596
|
-
if (partner) {
|
|
597
|
-
target.activeCallPartner = undefined;
|
|
598
|
-
partner.activeCallPartner = undefined;
|
|
843
|
+
if (dropActiveCall(target)) {
|
|
599
844
|
lines.push(` Their call drops mid-word.`);
|
|
600
845
|
}
|
|
601
846
|
lines.push(` IN. You cut ${target.name}'s AR overlay dead -- no tactical feed, no calls, until they reboot.`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hack.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/hack.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hack.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/hack.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,24 @@
|
|
|
1
1
|
import { Command, ICommand } from './command.js';
|
|
2
2
|
/**
|
|
3
|
-
* MARK (
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
3
|
+
* THERE IS NO MARK ACTION (uMQAhaAysgaKpWFkn, pcampbell: "Marking is a
|
|
4
|
+
* symptom of either Brute Force [Attack] or Hack on the Fly [Sleaze] ...
|
|
5
|
+
* the way Mark is working, it's obfuscating the real actions").
|
|
6
|
+
*
|
|
7
|
+
* Canon, checked against the rulebooks rather than memory: SR5 has no
|
|
8
|
+
* standalone action that places a mark. Brute Force (p.238) and Hack on
|
|
9
|
+
* the Fly (p.240) are the only two, and a mark is what they leave behind.
|
|
10
|
+
*
|
|
11
|
+
* So this file no longer implements one. It used to carry its own copy of
|
|
12
|
+
* the pool, the fork, the GOD bill and the outcome prose -- the same roll
|
|
13
|
+
* hack.ts was making, kept in a second place where the two could drift.
|
|
14
|
+
* They did: on a host, `hack` bought the entire node on that roll and
|
|
15
|
+
* `mark` bought one increment, and which you got depended on the word you
|
|
16
|
+
* typed. That was the report.
|
|
17
|
+
*
|
|
18
|
+
* What survives is the INSPECTION -- "mark list" answers "what keys am I
|
|
19
|
+
* holding", which is a reasonable thing to ask and not an action at all.
|
|
20
|
+
* Everything else routes to the real verb and says its real name, so the
|
|
21
|
+
* vocabulary teaches the book instead of hiding it.
|
|
13
22
|
*/
|
|
14
23
|
export declare class MarkCommand extends Command implements ICommand {
|
|
15
24
|
protected static verb: string;
|