@ai-rpg-engine/modules 2.0.3 → 2.0.4

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/dist/index.d.ts CHANGED
@@ -32,6 +32,8 @@ export { deriveStance, getReputationConsequence, evolveTitle, buildPlayerDescrip
32
32
  export type { Stance, ReputationConsequence, TitleEvolution, } from './social-consequence.js';
33
33
  export { spawnPlayerRumor, spawnReputationRumor, propagateRumor, shouldMutate, mutateRumorClaim, deriveRumorValence, getRumorsKnownToFaction, getRumorsInDistrict, formatRumorForDirector, } from './player-rumor.js';
34
34
  export type { PlayerRumor, RumorValence, RumorMutation, MilestoneHint, } from './player-rumor.js';
35
- export { evaluatePressures, tickPressures, getPressuresForFaction, getVisiblePressures, formatPressureForDirector, formatPressureForNarrator, formatPressureForDialogue, } from './pressure-system.js';
36
- export type { PressureKind, PressureVisibility, WorldPressure, PressureInputs, PressureSpawnResult, } from './pressure-system.js';
35
+ export { evaluatePressures, tickPressures, getPressuresForFaction, getVisiblePressures, formatPressureForDirector, formatPressureForNarrator, formatPressureForDialogue, makePressure, } from './pressure-system.js';
36
+ export type { PressureKind, PressureVisibility, WorldPressure, PressureInputs, PressureSpawnResult, PressureTickResult, } from './pressure-system.js';
37
+ export { computeFallout, formatFalloutForDirector, formatFalloutForNarrator, } from './pressure-resolution.js';
38
+ export type { ResolutionType, PressureResolution, FalloutEffect, PressureFallout, FalloutContext, } from './pressure-resolution.js';
37
39
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -17,5 +17,6 @@ export { createObserverPresentation, presentForObserver, presentForAllObservers,
17
17
  export { createSimulationInspector, inspectEntity, inspectAllEntities, inspectFaction, inspectAllFactions, inspectZone, inspectAllZones, inspectDistrict, inspectAllDistricts, createSnapshot, formatEntityInspection, formatFactionInspection, formatDistrictInspection, } from './simulation-inspector.js';
18
18
  export { deriveStance, getReputationConsequence, evolveTitle, buildPlayerDescriptor, } from './social-consequence.js';
19
19
  export { spawnPlayerRumor, spawnReputationRumor, propagateRumor, shouldMutate, mutateRumorClaim, deriveRumorValence, getRumorsKnownToFaction, getRumorsInDistrict, formatRumorForDirector, } from './player-rumor.js';
20
- export { evaluatePressures, tickPressures, getPressuresForFaction, getVisiblePressures, formatPressureForDirector, formatPressureForNarrator, formatPressureForDialogue, } from './pressure-system.js';
20
+ export { evaluatePressures, tickPressures, getPressuresForFaction, getVisiblePressures, formatPressureForDirector, formatPressureForNarrator, formatPressureForDialogue, makePressure, } from './pressure-system.js';
21
+ export { computeFallout, formatFalloutForDirector, formatFalloutForNarrator, } from './pressure-resolution.js';
21
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import type { PressureKind, PressureVisibility, WorldPressure } from './pressure-system.js';
2
+ import type { RumorValence } from './player-rumor.js';
3
+ export type ResolutionType = 'resolved-by-player' | 'resolved-by-faction' | 'escalated' | 'failed' | 'transformed' | 'superseded' | 'expired-ignored';
4
+ export type PressureResolution = {
5
+ pressureId: string;
6
+ pressureKind: PressureKind;
7
+ resolutionType: ResolutionType;
8
+ /** 'player' | factionId | 'expiry' */
9
+ resolvedBy: string;
10
+ resolvedAtTick: number;
11
+ /** How widely the resolution is known */
12
+ resolutionVisibility: PressureVisibility;
13
+ };
14
+ export type FalloutEffect = {
15
+ type: 'reputation';
16
+ factionId: string;
17
+ delta: number;
18
+ } | {
19
+ type: 'alert';
20
+ factionId: string;
21
+ delta: number;
22
+ } | {
23
+ type: 'district';
24
+ districtId: string;
25
+ metric: string;
26
+ delta: number;
27
+ } | {
28
+ type: 'rumor';
29
+ claim: string;
30
+ valence: RumorValence;
31
+ spreadTo: string[];
32
+ } | {
33
+ type: 'spawn-pressure';
34
+ kind: PressureKind;
35
+ sourceFactionId: string;
36
+ description: string;
37
+ urgency: number;
38
+ tags: string[];
39
+ } | {
40
+ type: 'milestone-tag';
41
+ tag: string;
42
+ } | {
43
+ type: 'title-trigger';
44
+ tag: string;
45
+ };
46
+ export type PressureFallout = {
47
+ resolution: PressureResolution;
48
+ effects: FalloutEffect[];
49
+ /** One-line summary for director mode */
50
+ summary: string;
51
+ };
52
+ export type FalloutContext = {
53
+ resolvedBy: string;
54
+ currentTick: number;
55
+ playerDistrictId?: string;
56
+ resolutionVisibility?: PressureVisibility;
57
+ };
58
+ /**
59
+ * Compute structured fallout from a resolved pressure.
60
+ * Pure function — returns effects for the product layer to apply.
61
+ */
62
+ export declare function computeFallout(pressure: WorldPressure, resolutionType: ResolutionType, genre: string, ctx: FalloutContext): PressureFallout;
63
+ /** Format a single fallout record for the director /world view. */
64
+ export declare function formatFalloutForDirector(fallout: PressureFallout): string;
65
+ /** Compact summary for narrator prompt injection (~20 tokens). */
66
+ export declare function formatFalloutForNarrator(fallout: PressureFallout): string;
67
+ //# sourceMappingURL=pressure-resolution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pressure-resolution.d.ts","sourceRoot":"","sources":["../src/pressure-resolution.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD,MAAM,MAAM,cAAc,GACtB,oBAAoB,GACpB,qBAAqB,GACrB,WAAW,GACX,QAAQ,GACR,aAAa,GACb,YAAY,GACZ,iBAAiB,CAAC;AAEtB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,sCAAsC;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,yCAAyC;IACzC,oBAAoB,EAAE,kBAAkB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAC3E;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,YAAY,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IACpE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3C,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;CAC3C,CAAC;AAIF;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,aAAa,EACvB,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,cAAc,GAClB,eAAe,CAmBjB;AA2ZD,mEAAmE;AACnE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAiBzE;AAED,kEAAkE;AAClE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAEzE"}
@@ -0,0 +1,445 @@
1
+ // pressure-resolution — structured pressure resolution + fallout generation
2
+ // Pure functions + types. No module registration.
3
+ // When a pressure resolves (player action, expiry, faction action),
4
+ // computeFallout() returns structured effects: rep changes, rumors, chain pressures.
5
+ // Product layer applies effects. Claude narrates from the structure.
6
+ // --- Main Entry ---
7
+ /**
8
+ * Compute structured fallout from a resolved pressure.
9
+ * Pure function — returns effects for the product layer to apply.
10
+ */
11
+ export function computeFallout(pressure, resolutionType, genre, ctx) {
12
+ const resolution = {
13
+ pressureId: pressure.id,
14
+ pressureKind: pressure.kind,
15
+ resolutionType,
16
+ resolvedBy: ctx.resolvedBy,
17
+ resolvedAtTick: ctx.currentTick,
18
+ resolutionVisibility: ctx.resolutionVisibility ?? pressure.visibility,
19
+ };
20
+ // Collect effects from universal + genre tables
21
+ const effects = [
22
+ ...getUniversalFallout(pressure, resolutionType, ctx),
23
+ ...getGenreFallout(pressure, resolutionType, genre, ctx),
24
+ ];
25
+ const summary = buildFalloutSummary(pressure, resolutionType);
26
+ return { resolution, effects, summary };
27
+ }
28
+ // --- Universal Fallout ---
29
+ function getUniversalFallout(pressure, resolutionType, ctx) {
30
+ const effects = [];
31
+ const faction = pressure.sourceFactionId;
32
+ switch (pressure.kind) {
33
+ case 'bounty-issued':
34
+ switch (resolutionType) {
35
+ case 'resolved-by-player':
36
+ effects.push({ type: 'reputation', factionId: faction, delta: 20 });
37
+ effects.push({
38
+ type: 'rumor', claim: 'cleared the bounty',
39
+ valence: 'heroic', spreadTo: [faction],
40
+ });
41
+ effects.push({ type: 'title-trigger', tag: 'bounty-survivor' });
42
+ break;
43
+ case 'expired-ignored':
44
+ effects.push({ type: 'reputation', factionId: faction, delta: -10 });
45
+ effects.push({ type: 'alert', factionId: faction, delta: 10 });
46
+ effects.push({
47
+ type: 'spawn-pressure', kind: 'revenge-attempt',
48
+ sourceFactionId: faction,
49
+ description: `${faction} sends hunters after the player`,
50
+ urgency: 0.6, tags: ['hostile', 'chain'],
51
+ });
52
+ break;
53
+ case 'failed':
54
+ effects.push({ type: 'reputation', factionId: faction, delta: -5 });
55
+ effects.push({
56
+ type: 'rumor', claim: 'escaped the hunters',
57
+ valence: 'fearsome', spreadTo: [faction],
58
+ });
59
+ break;
60
+ case 'resolved-by-faction':
61
+ effects.push({ type: 'alert', factionId: faction, delta: -10 });
62
+ break;
63
+ }
64
+ break;
65
+ case 'investigation-opened':
66
+ switch (resolutionType) {
67
+ case 'resolved-by-player':
68
+ effects.push({ type: 'reputation', factionId: faction, delta: 10 });
69
+ effects.push({ type: 'alert', factionId: faction, delta: -20 });
70
+ break;
71
+ case 'expired-ignored':
72
+ effects.push({
73
+ type: 'spawn-pressure', kind: 'bounty-issued',
74
+ sourceFactionId: faction,
75
+ description: `${faction} issues a bounty after inconclusive investigation`,
76
+ urgency: 0.7, tags: ['hostile', 'chain', 'escalation'],
77
+ });
78
+ break;
79
+ case 'escalated':
80
+ effects.push({
81
+ type: 'spawn-pressure', kind: 'bounty-issued',
82
+ sourceFactionId: faction,
83
+ description: `${faction} escalates investigation to active bounty`,
84
+ urgency: 0.7, tags: ['hostile', 'chain', 'escalation'],
85
+ });
86
+ effects.push({ type: 'alert', factionId: faction, delta: 15 });
87
+ break;
88
+ case 'failed':
89
+ effects.push({ type: 'reputation', factionId: faction, delta: -10 });
90
+ effects.push({
91
+ type: 'rumor', claim: 'fled from investigation',
92
+ valence: 'fearsome', spreadTo: [faction],
93
+ });
94
+ break;
95
+ }
96
+ break;
97
+ case 'merchant-blacklist':
98
+ switch (resolutionType) {
99
+ case 'resolved-by-player':
100
+ effects.push({ type: 'reputation', factionId: faction, delta: 15 });
101
+ effects.push({
102
+ type: 'rumor', claim: 'made amends with the merchants',
103
+ valence: 'heroic', spreadTo: [faction],
104
+ });
105
+ break;
106
+ case 'expired-ignored':
107
+ if (ctx.playerDistrictId) {
108
+ effects.push({
109
+ type: 'district', districtId: ctx.playerDistrictId,
110
+ metric: 'stability', delta: -10,
111
+ });
112
+ }
113
+ break;
114
+ }
115
+ break;
116
+ case 'faction-summons':
117
+ switch (resolutionType) {
118
+ case 'resolved-by-player':
119
+ effects.push({ type: 'reputation', factionId: faction, delta: 10 });
120
+ break;
121
+ case 'expired-ignored':
122
+ effects.push({ type: 'reputation', factionId: faction, delta: -20 });
123
+ effects.push({
124
+ type: 'rumor', claim: `ignored summons from ${faction}`,
125
+ valence: 'fearsome', spreadTo: [faction],
126
+ });
127
+ break;
128
+ }
129
+ break;
130
+ case 'revenge-attempt':
131
+ switch (resolutionType) {
132
+ case 'resolved-by-player':
133
+ effects.push({ type: 'reputation', factionId: faction, delta: -10 });
134
+ effects.push({
135
+ type: 'rumor', claim: 'fought off the avengers',
136
+ valence: 'fearsome', spreadTo: [faction],
137
+ });
138
+ effects.push({ type: 'milestone-tag', tag: 'survival' });
139
+ break;
140
+ case 'failed':
141
+ effects.push({ type: 'milestone-tag', tag: 'defeat' });
142
+ effects.push({
143
+ type: 'rumor', claim: 'was bested by avengers',
144
+ valence: 'tragic', spreadTo: [faction],
145
+ });
146
+ break;
147
+ case 'expired-ignored':
148
+ effects.push({ type: 'alert', factionId: faction, delta: -5 });
149
+ break;
150
+ }
151
+ break;
152
+ }
153
+ return effects;
154
+ }
155
+ // --- Genre Fallout ---
156
+ function getGenreFallout(pressure, resolutionType, genre, ctx) {
157
+ switch (genre) {
158
+ case 'fantasy':
159
+ return getFantasyFallout(pressure, resolutionType, ctx);
160
+ case 'mystery':
161
+ return getMysteryFallout(pressure, resolutionType, ctx);
162
+ case 'pirate':
163
+ return getPirateFallout(pressure, resolutionType, ctx);
164
+ case 'horror':
165
+ case 'post-apocalyptic':
166
+ return getHorrorFallout(pressure, resolutionType, ctx);
167
+ case 'cyberpunk':
168
+ return getCyberpunkFallout(pressure, resolutionType, ctx);
169
+ default:
170
+ return [];
171
+ }
172
+ }
173
+ function getFantasyFallout(pressure, resolutionType, _ctx) {
174
+ const effects = [];
175
+ const faction = pressure.sourceFactionId;
176
+ switch (pressure.kind) {
177
+ case 'heresy-whisper':
178
+ if (resolutionType === 'expired-ignored') {
179
+ effects.push({
180
+ type: 'spawn-pressure', kind: 'chapel-sanction',
181
+ sourceFactionId: faction,
182
+ description: `the ${faction} formally sanctions the player for unanswered heresy`,
183
+ urgency: 0.7, tags: ['religious', 'fantasy', 'chain', 'escalation'],
184
+ });
185
+ }
186
+ else if (resolutionType === 'resolved-by-player') {
187
+ effects.push({ type: 'reputation', factionId: faction, delta: 10 });
188
+ effects.push({
189
+ type: 'rumor', claim: 'answered the whispers of heresy',
190
+ valence: 'heroic', spreadTo: [faction],
191
+ });
192
+ }
193
+ break;
194
+ case 'chapel-sanction':
195
+ if (resolutionType === 'resolved-by-player') {
196
+ effects.push({
197
+ type: 'rumor', claim: 'vindicated before the chapel',
198
+ valence: 'heroic', spreadTo: [faction],
199
+ });
200
+ effects.push({ type: 'title-trigger', tag: 'faith-tested' });
201
+ effects.push({ type: 'reputation', factionId: faction, delta: 15 });
202
+ }
203
+ else if (resolutionType === 'expired-ignored') {
204
+ effects.push({ type: 'reputation', factionId: faction, delta: -15 });
205
+ effects.push({
206
+ type: 'rumor', claim: 'stands condemned by the chapel',
207
+ valence: 'fearsome', spreadTo: [faction],
208
+ });
209
+ }
210
+ break;
211
+ }
212
+ return effects;
213
+ }
214
+ function getMysteryFallout(pressure, resolutionType, _ctx) {
215
+ const effects = [];
216
+ const faction = pressure.sourceFactionId;
217
+ switch (pressure.kind) {
218
+ case 'case-opened':
219
+ if (resolutionType === 'expired-ignored') {
220
+ effects.push({
221
+ type: 'spawn-pressure', kind: 'witness-vanished',
222
+ sourceFactionId: faction,
223
+ description: `a key witness disappears as the case goes cold`,
224
+ urgency: 0.7, tags: ['investigation', 'mystery', 'chain', 'escalation'],
225
+ });
226
+ }
227
+ else if (resolutionType === 'resolved-by-player') {
228
+ effects.push({ type: 'alert', factionId: faction, delta: -15 });
229
+ effects.push({ type: 'milestone-tag', tag: 'case-closed' });
230
+ }
231
+ break;
232
+ case 'witness-vanished':
233
+ if (resolutionType === 'resolved-by-player') {
234
+ effects.push({ type: 'milestone-tag', tag: 'detective' });
235
+ effects.push({
236
+ type: 'rumor', claim: 'found the vanished witness',
237
+ valence: 'heroic', spreadTo: [faction],
238
+ });
239
+ effects.push({ type: 'reputation', factionId: faction, delta: 15 });
240
+ }
241
+ else if (resolutionType === 'expired-ignored') {
242
+ effects.push({ type: 'alert', factionId: faction, delta: 10 });
243
+ effects.push({
244
+ type: 'rumor', claim: 'the witness was never found',
245
+ valence: 'tragic', spreadTo: [faction],
246
+ });
247
+ }
248
+ break;
249
+ }
250
+ return effects;
251
+ }
252
+ function getPirateFallout(pressure, resolutionType, _ctx) {
253
+ const effects = [];
254
+ const faction = pressure.sourceFactionId;
255
+ switch (pressure.kind) {
256
+ case 'mutiny-brewing':
257
+ if (resolutionType === 'expired-ignored') {
258
+ effects.push({
259
+ type: 'spawn-pressure', kind: 'merchant-blacklist',
260
+ sourceFactionId: faction,
261
+ description: `the mutinous crew has deposed the player from command`,
262
+ urgency: 0.6, tags: ['social', 'pirate', 'chain'],
263
+ });
264
+ effects.push({
265
+ type: 'rumor', claim: 'lost command of their crew',
266
+ valence: 'tragic', spreadTo: [faction],
267
+ });
268
+ }
269
+ else if (resolutionType === 'resolved-by-player') {
270
+ effects.push({ type: 'reputation', factionId: faction, delta: 15 });
271
+ effects.push({
272
+ type: 'rumor', claim: 'crushed the mutiny',
273
+ valence: 'fearsome', spreadTo: [faction],
274
+ });
275
+ effects.push({ type: 'title-trigger', tag: 'iron-captain' });
276
+ }
277
+ break;
278
+ case 'navy-bounty':
279
+ if (resolutionType === 'resolved-by-player') {
280
+ effects.push({
281
+ type: 'rumor', claim: 'evaded the fleet',
282
+ valence: 'fearsome', spreadTo: [faction],
283
+ });
284
+ effects.push({ type: 'milestone-tag', tag: 'seafarer' });
285
+ }
286
+ else if (resolutionType === 'expired-ignored') {
287
+ effects.push({ type: 'alert', factionId: faction, delta: -10 });
288
+ }
289
+ break;
290
+ }
291
+ return effects;
292
+ }
293
+ function getHorrorFallout(pressure, resolutionType, ctx) {
294
+ const effects = [];
295
+ const faction = pressure.sourceFactionId;
296
+ switch (pressure.kind) {
297
+ case 'infection-suspicion':
298
+ if (resolutionType === 'expired-ignored') {
299
+ if (ctx.playerDistrictId) {
300
+ effects.push({
301
+ type: 'district', districtId: ctx.playerDistrictId,
302
+ metric: 'stability', delta: -15,
303
+ });
304
+ }
305
+ effects.push({
306
+ type: 'spawn-pressure', kind: 'camp-panic',
307
+ sourceFactionId: faction,
308
+ description: `fear of infection spreads unchecked through the settlement`,
309
+ urgency: 0.6, tags: ['social', 'horror', 'chain', 'panic'],
310
+ });
311
+ }
312
+ else if (resolutionType === 'resolved-by-player') {
313
+ effects.push({ type: 'reputation', factionId: faction, delta: 10 });
314
+ effects.push({
315
+ type: 'rumor', claim: 'proved they were clean',
316
+ valence: 'heroic', spreadTo: [faction],
317
+ });
318
+ }
319
+ break;
320
+ case 'camp-panic':
321
+ if (resolutionType === 'resolved-by-player') {
322
+ effects.push({ type: 'milestone-tag', tag: 'leader' });
323
+ effects.push({ type: 'reputation', factionId: faction, delta: 15 });
324
+ effects.push({
325
+ type: 'rumor', claim: 'calmed the settlement',
326
+ valence: 'heroic', spreadTo: [faction],
327
+ });
328
+ effects.push({ type: 'title-trigger', tag: 'steadfast' });
329
+ }
330
+ else if (resolutionType === 'expired-ignored') {
331
+ if (ctx.playerDistrictId) {
332
+ effects.push({
333
+ type: 'district', districtId: ctx.playerDistrictId,
334
+ metric: 'stability', delta: -20,
335
+ });
336
+ }
337
+ effects.push({
338
+ type: 'rumor', claim: 'did nothing while the camp fell apart',
339
+ valence: 'tragic', spreadTo: [faction],
340
+ });
341
+ }
342
+ break;
343
+ }
344
+ return effects;
345
+ }
346
+ function getCyberpunkFallout(pressure, resolutionType, _ctx) {
347
+ const effects = [];
348
+ const faction = pressure.sourceFactionId;
349
+ switch (pressure.kind) {
350
+ case 'corp-manhunt':
351
+ if (resolutionType === 'expired-ignored') {
352
+ effects.push({
353
+ type: 'spawn-pressure', kind: 'ice-escalation',
354
+ sourceFactionId: faction,
355
+ description: `${faction} upgrades defenses after failed manhunt`,
356
+ urgency: 0.5, tags: ['digital', 'cyberpunk', 'chain', 'escalation'],
357
+ });
358
+ }
359
+ else if (resolutionType === 'resolved-by-player') {
360
+ effects.push({
361
+ type: 'rumor', claim: 'survived the corporate manhunt',
362
+ valence: 'fearsome', spreadTo: [faction],
363
+ });
364
+ effects.push({ type: 'alert', factionId: faction, delta: -15 });
365
+ effects.push({ type: 'title-trigger', tag: 'ghost' });
366
+ }
367
+ break;
368
+ case 'ice-escalation':
369
+ if (resolutionType === 'resolved-by-player') {
370
+ effects.push({
371
+ type: 'rumor', claim: 'cracked the ICE',
372
+ valence: 'heroic', spreadTo: [faction],
373
+ });
374
+ effects.push({ type: 'milestone-tag', tag: 'netrunner' });
375
+ effects.push({ type: 'reputation', factionId: faction, delta: -5 });
376
+ }
377
+ else if (resolutionType === 'expired-ignored') {
378
+ effects.push({ type: 'alert', factionId: faction, delta: 5 });
379
+ }
380
+ break;
381
+ }
382
+ return effects;
383
+ }
384
+ // --- Formatting ---
385
+ const DIVIDER = '─'.repeat(60);
386
+ /** Format a single fallout record for the director /world view. */
387
+ export function formatFalloutForDirector(fallout) {
388
+ const r = fallout.resolution;
389
+ const parts = [
390
+ ` [${r.pressureKind}] → ${r.resolutionType}`,
391
+ ` Resolved by: ${r.resolvedBy} at tick ${r.resolvedAtTick}`,
392
+ ` Visibility: ${r.resolutionVisibility}`,
393
+ ` Summary: ${fallout.summary}`,
394
+ ];
395
+ if (fallout.effects.length > 0) {
396
+ parts.push(' Effects:');
397
+ for (const e of fallout.effects) {
398
+ parts.push(` - ${formatEffectBrief(e)}`);
399
+ }
400
+ }
401
+ return parts.join('\n');
402
+ }
403
+ /** Compact summary for narrator prompt injection (~20 tokens). */
404
+ export function formatFalloutForNarrator(fallout) {
405
+ return `${fallout.resolution.pressureKind} ${fallout.resolution.resolutionType}: ${fallout.summary}`;
406
+ }
407
+ function formatEffectBrief(effect) {
408
+ switch (effect.type) {
409
+ case 'reputation':
410
+ return `rep ${effect.delta > 0 ? '+' : ''}${effect.delta} with ${effect.factionId}`;
411
+ case 'alert':
412
+ return `alert ${effect.delta > 0 ? '+' : ''}${effect.delta} for ${effect.factionId}`;
413
+ case 'district':
414
+ return `${effect.metric} ${effect.delta > 0 ? '+' : ''}${effect.delta} in ${effect.districtId}`;
415
+ case 'rumor':
416
+ return `rumor: "${effect.claim}" (${effect.valence})`;
417
+ case 'spawn-pressure':
418
+ return `chain: ${effect.kind} from ${effect.sourceFactionId}`;
419
+ case 'milestone-tag':
420
+ return `milestone tag: ${effect.tag}`;
421
+ case 'title-trigger':
422
+ return `title trigger: ${effect.tag}`;
423
+ }
424
+ }
425
+ // --- Helpers ---
426
+ function buildFalloutSummary(pressure, resolutionType) {
427
+ const kindLabel = pressure.kind.replace(/-/g, ' ');
428
+ switch (resolutionType) {
429
+ case 'resolved-by-player':
430
+ return `${kindLabel} resolved by the player`;
431
+ case 'resolved-by-faction':
432
+ return `${kindLabel} resolved by ${pressure.sourceFactionId}`;
433
+ case 'escalated':
434
+ return `${kindLabel} escalated`;
435
+ case 'failed':
436
+ return `${kindLabel} — player failed to resolve`;
437
+ case 'transformed':
438
+ return `${kindLabel} transformed into something new`;
439
+ case 'superseded':
440
+ return `${kindLabel} superseded by larger events`;
441
+ case 'expired-ignored':
442
+ return `${kindLabel} expired without resolution`;
443
+ }
444
+ }
445
+ //# sourceMappingURL=pressure-resolution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pressure-resolution.js","sourceRoot":"","sources":["../src/pressure-resolution.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { PlayerRumor } from './player-rumor.js';
2
+ import type { PressureResolution } from './pressure-resolution.js';
2
3
  export type PressureKind = 'bounty-issued' | 'faction-summons' | 'merchant-blacklist' | 'revenge-attempt' | 'investigation-opened' | 'heresy-whisper' | 'chapel-sanction' | 'case-opened' | 'witness-vanished' | 'mutiny-brewing' | 'navy-bounty' | 'infection-suspicion' | 'camp-panic' | 'corp-manhunt' | 'ice-escalation';
3
4
  export type PressureVisibility = 'hidden' | 'rumored' | 'known' | 'public';
4
5
  export type WorldPressure = {
@@ -22,6 +23,10 @@ export type WorldPressure = {
22
23
  tags: string[];
23
24
  /** Engine tick when created */
24
25
  createdAtTick: number;
26
+ /** Set when pressure is resolved (transitions from active to resolved) */
27
+ resolution?: PressureResolution;
28
+ /** If this pressure was spawned by fallout from another pressure */
29
+ chainedFrom?: string;
25
30
  };
26
31
  export type PressureInputs = {
27
32
  playerRumors: PlayerRumor[];
@@ -55,11 +60,17 @@ export type PressureSpawnResult = {
55
60
  /** One-line reason for director mode */
56
61
  reason: string;
57
62
  };
63
+ export type PressureTickResult = {
64
+ /** Pressures still active after this tick */
65
+ active: WorldPressure[];
66
+ /** Pressures that expired this tick (turnsRemaining hit 0) */
67
+ expired: WorldPressure[];
68
+ };
58
69
  /**
59
70
  * Tick all active pressures: decrement timers, remove expired,
60
- * escalate visibility over time. Returns new array (immutable).
71
+ * escalate visibility over time. Returns active + expired arrays.
61
72
  */
62
- export declare function tickPressures(pressures: WorldPressure[], currentTick: number): WorldPressure[];
73
+ export declare function tickPressures(pressures: WorldPressure[], currentTick: number): PressureTickResult;
63
74
  /**
64
75
  * Evaluate simulation state for new pressure. Returns at most ONE new pressure.
65
76
  * Returns null most turns — scarcity by design.
@@ -75,4 +86,16 @@ export declare function formatPressureForDirector(pressure: WorldPressure): stri
75
86
  export declare function formatPressureForNarrator(pressure: WorldPressure): string;
76
87
  /** NPC-facing description for dialogue context. */
77
88
  export declare function formatPressureForDialogue(pressure: WorldPressure): string;
89
+ export declare function makePressure(opts: {
90
+ kind: PressureKind;
91
+ sourceFactionId: string;
92
+ description: string;
93
+ triggeredBy: string;
94
+ urgency: number;
95
+ visibility: PressureVisibility;
96
+ turnsRemaining: number | null;
97
+ potentialOutcomes: string[];
98
+ tags: string[];
99
+ currentTick: number;
100
+ }): WorldPressure;
78
101
  //# sourceMappingURL=pressure-system.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pressure-system.d.ts","sourceRoot":"","sources":["../src/pressure-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pressure-system.d.ts","sourceRoot":"","sources":["../src/pressure-system.ts"],"names":[],"mappings":"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"}
@@ -10,17 +10,19 @@ let pressureCounter = 0;
10
10
  function nextPressureId() {
11
11
  return `wp-${++pressureCounter}`;
12
12
  }
13
- // --- Lifecycle ---
14
13
  /**
15
14
  * Tick all active pressures: decrement timers, remove expired,
16
- * escalate visibility over time. Returns new array (immutable).
15
+ * escalate visibility over time. Returns active + expired arrays.
17
16
  */
18
17
  export function tickPressures(pressures, currentTick) {
19
- const result = [];
18
+ const active = [];
19
+ const expired = [];
20
20
  for (const p of pressures) {
21
21
  // Expire if turnsRemaining hit 0
22
- if (p.turnsRemaining !== null && p.turnsRemaining <= 0)
22
+ if (p.turnsRemaining !== null && p.turnsRemaining <= 0) {
23
+ expired.push(p);
23
24
  continue;
25
+ }
24
26
  const updated = { ...p };
25
27
  // Decrement timer
26
28
  if (updated.turnsRemaining !== null) {
@@ -34,9 +36,9 @@ export function tickPressures(pressures, currentTick) {
34
36
  else if (updated.visibility === 'rumored' && age >= VISIBILITY_ESCALATION_TICKS * 2) {
35
37
  updated.visibility = 'known';
36
38
  }
37
- result.push(updated);
39
+ active.push(updated);
38
40
  }
39
- return result;
41
+ return { active, expired };
40
42
  }
41
43
  // --- Evaluation ---
42
44
  /**
@@ -549,7 +551,7 @@ export function formatPressureForDialogue(pressure) {
549
551
  return `${pressure.kind} (${urgency}): ${pressure.description}`;
550
552
  }
551
553
  // --- Helpers ---
552
- function makePressure(opts) {
554
+ export function makePressure(opts) {
553
555
  return {
554
556
  id: nextPressureId(),
555
557
  kind: opts.kind,
@@ -1 +1 @@
1
- {"version":3,"file":"pressure-system.js","sourceRoot":"","sources":["../src/pressure-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pressure-system.js","sourceRoot":"","sources":["../src/pressure-system.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-rpg-engine/modules",
3
- "version": "2.0.3",
3
+ "version": "2.0.4",
4
4
  "description": "AI RPG Engine built-in modules: combat, dialogue, inventory, traversal, status",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",