@maka/maka-cli 5.51.0 → 5.53.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.
Files changed (91) hide show
  1. package/bundle/typescript/package.json +1 -1
  2. package/bundle/typescript/src/commands/game/sideQuest/augmentations.d.ts +61 -0
  3. package/bundle/typescript/src/commands/game/sideQuest/augmentations.js +222 -1
  4. package/bundle/typescript/src/commands/game/sideQuest/augmentations.js.map +1 -1
  5. package/bundle/typescript/src/commands/game/sideQuest/commands/ask.js +1 -1
  6. package/bundle/typescript/src/commands/game/sideQuest/commands/ask.js.map +1 -1
  7. package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js +1 -1
  8. package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js.map +1 -1
  9. package/bundle/typescript/src/commands/game/sideQuest/commands/buy.d.ts +4 -0
  10. package/bundle/typescript/src/commands/game/sideQuest/commands/buy.js +35 -0
  11. package/bundle/typescript/src/commands/game/sideQuest/commands/buy.js.map +1 -1
  12. package/bundle/typescript/src/commands/game/sideQuest/commands/call.js +32 -2
  13. package/bundle/typescript/src/commands/game/sideQuest/commands/call.js.map +1 -1
  14. package/bundle/typescript/src/commands/game/sideQuest/commands/cast.d.ts +11 -0
  15. package/bundle/typescript/src/commands/game/sideQuest/commands/cast.js +183 -13
  16. package/bundle/typescript/src/commands/game/sideQuest/commands/cast.js.map +1 -1
  17. package/bundle/typescript/src/commands/game/sideQuest/commands/catalog.js +39 -11
  18. package/bundle/typescript/src/commands/game/sideQuest/commands/catalog.js.map +1 -1
  19. package/bundle/typescript/src/commands/game/sideQuest/commands/docwagon.js +4 -1
  20. package/bundle/typescript/src/commands/game/sideQuest/commands/docwagon.js.map +1 -1
  21. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js +18 -2
  22. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js.map +1 -1
  23. package/bundle/typescript/src/commands/game/sideQuest/commands/haggle.js +2 -2
  24. package/bundle/typescript/src/commands/game/sideQuest/commands/haggle.js.map +1 -1
  25. package/bundle/typescript/src/commands/game/sideQuest/commands/install.js +45 -9
  26. package/bundle/typescript/src/commands/game/sideQuest/commands/install.js.map +1 -1
  27. package/bundle/typescript/src/commands/game/sideQuest/commands/inv.d.ts +0 -6
  28. package/bundle/typescript/src/commands/game/sideQuest/commands/inv.js +61 -4
  29. package/bundle/typescript/src/commands/game/sideQuest/commands/inv.js.map +1 -1
  30. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js +1 -1
  31. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js.map +1 -1
  32. package/bundle/typescript/src/commands/game/sideQuest/commands/note.d.ts +20 -5
  33. package/bundle/typescript/src/commands/game/sideQuest/commands/note.js +34 -10
  34. package/bundle/typescript/src/commands/game/sideQuest/commands/note.js.map +1 -1
  35. package/bundle/typescript/src/commands/game/sideQuest/commands/persuade.js +1 -1
  36. package/bundle/typescript/src/commands/game/sideQuest/commands/persuade.js.map +1 -1
  37. package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js +1 -1
  38. package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js.map +1 -1
  39. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +2 -2
  40. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js.map +1 -1
  41. package/bundle/typescript/src/commands/game/sideQuest/commands/sheet.js +17 -5
  42. package/bundle/typescript/src/commands/game/sideQuest/commands/sheet.js.map +1 -1
  43. package/bundle/typescript/src/commands/game/sideQuest/commands/sin.d.ts +21 -0
  44. package/bundle/typescript/src/commands/game/sideQuest/commands/sin.js +94 -0
  45. package/bundle/typescript/src/commands/game/sideQuest/commands/sin.js.map +1 -0
  46. package/bundle/typescript/src/commands/game/sideQuest/commands/spells.js +52 -30
  47. package/bundle/typescript/src/commands/game/sideQuest/commands/spells.js.map +1 -1
  48. package/bundle/typescript/src/commands/game/sideQuest/commands/use.js +1 -1
  49. package/bundle/typescript/src/commands/game/sideQuest/commands/use.js.map +1 -1
  50. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.d.ts +0 -8
  51. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js +41 -0
  52. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js.map +1 -1
  53. package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +9 -0
  54. package/bundle/typescript/src/commands/game/sideQuest/game.js +26 -5
  55. package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
  56. package/bundle/typescript/src/commands/game/sideQuest/models/npc.d.ts +20 -0
  57. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js +95 -6
  58. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js.map +1 -1
  59. package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +24 -1
  60. package/bundle/typescript/src/commands/game/sideQuest/models/player.js +63 -15
  61. package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
  62. package/bundle/typescript/src/commands/game/sideQuest/models/room.js +18 -1
  63. package/bundle/typescript/src/commands/game/sideQuest/models/room.js.map +1 -1
  64. package/bundle/typescript/src/commands/game/sideQuest/types/save-file.d.ts +7 -1
  65. package/bundle/typescript/src/commands/game/sideQuest/types/shared/item-enum.d.ts +2 -0
  66. package/bundle/typescript/src/commands/game/sideQuest/types/shared/item-enum.js +9 -0
  67. package/bundle/typescript/src/commands/game/sideQuest/types/shared/item-enum.js.map +1 -1
  68. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog-data.d.ts +14 -4
  69. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog-data.js +239 -87
  70. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog-data.js.map +1 -1
  71. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.js +19 -5
  72. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.js.map +1 -1
  73. package/bundle/typescript/src/commands/game/sideQuest/utilities/commerce.js +1 -0
  74. package/bundle/typescript/src/commands/game/sideQuest/utilities/commerce.js.map +1 -1
  75. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js +14 -4
  76. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js.map +1 -1
  77. package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.d.ts +18 -0
  78. package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.js +23 -0
  79. package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.js.map +1 -1
  80. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.d.ts +9 -0
  81. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js +11 -0
  82. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-grid.js.map +1 -1
  83. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js +4 -2
  84. package/bundle/typescript/src/commands/game/sideQuest/utilities/room-view.js.map +1 -1
  85. package/bundle/typescript/src/commands/game/sideQuest/utilities/sin.d.ts +13 -0
  86. package/bundle/typescript/src/commands/game/sideQuest/utilities/sin.js +19 -2
  87. package/bundle/typescript/src/commands/game/sideQuest/utilities/sin.js.map +1 -1
  88. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.d.ts +20 -0
  89. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js +141 -5
  90. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js.map +1 -1
  91. package/package.json +1 -1
@@ -1,4 +1,5 @@
1
1
  import blessed from 'blessed';
2
+ import { dirname } from 'path';
2
3
  import { capitalCase } from 'change-case';
3
4
  import { Category } from './types/shared/item-enum.js';
4
5
  import { Item } from './models/item.js';
@@ -12,6 +13,7 @@ import { DOCWAGON_TIERS, RESUSC_FEE, DEATH_COMP } from './utilities/docwagon.js'
12
13
  import { isFence, LIFESTYLE_TIERS } from './utilities/commerce.js';
13
14
  import { bestFakeSin, wandRead, processArrest } from './utilities/sin.js';
14
15
  import { renderMapViewport } from './utilities/map-view.js';
16
+ import { tallestRoomRows } from './utilities/room-grid.js';
15
17
  import { renderRoomLayoutCompact } from './utilities/room-view.js';
16
18
  import { getPref } from './utilities/prefs.js';
17
19
  import { rollPool, formatRoll } from './utilities/dice.js';
@@ -24,6 +26,7 @@ import { LookCommand } from './commands/look.js';
24
26
  import { TakeCommand } from './commands/take.js';
25
27
  import { LootCommand } from './commands/loot.js';
26
28
  import { NoteCommand } from './commands/note.js';
29
+ import { SinCommand } from './commands/sin.js';
27
30
  import { GoCommand } from './commands/go.js';
28
31
  import { UseCommand } from './commands/use.js';
29
32
  import { EquipCommand } from './commands/equip.js';
@@ -182,6 +185,17 @@ export default class Game {
182
185
  get hasHub() {
183
186
  return this._hubScene !== undefined;
184
187
  }
188
+ /**
189
+ * This play session's own directory -- the timestamped folder holding
190
+ * game.log, session.log, launch.json and any scenes drafted during
191
+ * the run. Derived from the log path the same way SceneSeedGenerator
192
+ * derives it (dirname), so everything a session produces lands
193
+ * together. undefined for harnesses and headless clients, which run
194
+ * with no log path at all -- callers must have a fallback.
195
+ */
196
+ get sessionDir() {
197
+ return this._logFilePath ? dirname(this._logFilePath) : undefined;
198
+ }
185
199
  /** The active job's name (seed name) -- notoriety incidents cite it. */
186
200
  get currentJobName() {
187
201
  return this.sceneSeed?.name;
@@ -1617,6 +1631,9 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
1617
1631
  CommandFactory.registerCommand('take', TakeCommand);
1618
1632
  CommandFactory.registerCommand('loot', LootCommand);
1619
1633
  CommandFactory.registerCommand('note', NoteCommand);
1634
+ CommandFactory.registerCommand('sin', SinCommand);
1635
+ CommandFactory.registerCommand('sins', SinCommand);
1636
+ CommandFactory.registerCommand('papers', SinCommand);
1620
1637
  CommandFactory.registerCommand('use', UseCommand);
1621
1638
  CommandFactory.registerCommand('equip', EquipCommand);
1622
1639
  CommandFactory.registerCommand('unequip', UnequipCommand);
@@ -3200,9 +3217,13 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3200
3217
  * (the "eexxiitt" bug, see initInputBox). Hidden until the first
3201
3218
  * setMapOverlay/setRoomOverlay with content.
3202
3219
  */
3203
- // 9 viewport rows + a caption row (the room name / "@ spot", moved off
3204
- // the HUD 2026-08-25) + border.
3205
- static MAP_DOCK_ROWS = 12;
3220
+ // DERIVED, not chosen: the tallest room class's rows + a caption row
3221
+ // (the room name / "@ spot", moved off the HUD 2026-08-25) + border.
3222
+ // Hardcoding this is what clipped the bottom two rows off every 'huge'
3223
+ // room when the size classes were retuned upward -- the panel stayed
3224
+ // at 9 while the rooms grew to 11 (player note: "the Room minimap is
3225
+ // very important, let's set the height of the largest room size").
3226
+ static MAP_DOCK_ROWS = tallestRoomRows() + 3;
3206
3227
  /** Must track the roomMapBox's `width` below -- updateExits derives
3207
3228
  * the inner width from it to right-justify the elevation bar. */
3208
3229
  static ROOM_DOCK_PCT = 0.23;
@@ -3578,7 +3599,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3578
3599
  const mapLines = renderMapViewport(this.scene.getRooms(), here, (r, d) => this.scene.barrierSealing(r, d), {
3579
3600
  visited: this.player.visitedRooms,
3580
3601
  arEyes: this.player.hasMatrixEyes(),
3581
- }, mapView);
3602
+ }, mapView, tallestRoomRows());
3582
3603
  // The captions the HUD used to carry: where you are under the
3583
3604
  // district, where you stand under the room.
3584
3605
  if (mapLines.length > 0)
@@ -3789,7 +3810,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3789
3810
  { title: 'social', entries: [['say'], ['emote', 'me'], ['talk-to'], ['call'], ['end-call', 'end', 'hangup'], ['accept'], ['decline', 'deny', 'refuse'], ['haggle', 'negotiate'], ['persuade', 'convince'], ['ask'], ['contacts']] },
3790
3811
  { title: 'street', entries: [['browse', 'buy'], ['sell'], ['catalog'], ['source', 'procure'], ['work', 'gig'], ['jobs'], ['perform'], ['palm'], ['docwagon'], ['treat'], ['eat'], ['drink'], ['lifestyle'], ['pay']] },
3791
3812
  { title: 'barriers', entries: [['solve'], ['pick'], ['breach'], ['dispel', 'dispell'], ['bluff'], ['unlock'], ['lock']] },
3792
- { title: 'character', entries: [['sheet', 'stats'], ['advance'], ['qualities', 'quality'], ['initiate', 'submerge'], ['install', 'chrome']] },
3813
+ { title: 'character', entries: [['sheet', 'stats'], ['advance'], ['qualities', 'quality'], ['sin', 'sins', 'papers'], ['initiate', 'submerge'], ['install', 'chrome']] },
3793
3814
  { title: 'session', entries: [['help'], ['hints'], ['clear'], ['quit', 'exit']] },
3794
3815
  ];
3795
3816
  /** Registered but deliberately UNLISTED: reachable as subcommands or