@shipload/sdk 1.0.0-next.65 → 1.0.0-next.66

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 (79) hide show
  1. package/lib/shipload.d.ts +698 -316
  2. package/lib/shipload.js +2473 -1235
  3. package/lib/shipload.js.map +1 -1
  4. package/lib/shipload.m.js +2392 -1216
  5. package/lib/shipload.m.js.map +1 -1
  6. package/lib/testing.d.ts +205 -146
  7. package/lib/testing.js +846 -556
  8. package/lib/testing.js.map +1 -1
  9. package/lib/testing.m.js +846 -556
  10. package/lib/testing.m.js.map +1 -1
  11. package/package.json +1 -1
  12. package/src/capabilities/crafting.test.ts +51 -6
  13. package/src/capabilities/crafting.ts +19 -4
  14. package/src/capabilities/gathering.ts +2 -2
  15. package/src/capabilities/storage.test.ts +26 -0
  16. package/src/capabilities/storage.ts +6 -6
  17. package/src/contracts/fund.ts +79 -2
  18. package/src/contracts/platform.ts +10 -1
  19. package/src/contracts/server.ts +467 -331
  20. package/src/data/charters.json +325 -127
  21. package/src/data/entities.json +24 -24
  22. package/src/data/items.json +114 -114
  23. package/src/data/kind-registry.json +3 -3
  24. package/src/data/kind-registry.ts +5 -0
  25. package/src/data/recipes.json +56 -95
  26. package/src/derivation/build-methods.test.ts +59 -1
  27. package/src/derivation/build-methods.ts +2 -0
  28. package/src/derivation/capabilities.ts +7 -7
  29. package/src/derivation/strata.ts +5 -3
  30. package/src/derivation/tiers.ts +5 -5
  31. package/src/entity/hydrate.test.ts +156 -0
  32. package/src/entity/hydrate.ts +86 -0
  33. package/src/errors.ts +9 -0
  34. package/src/format.ts +15 -13
  35. package/src/index-module.ts +32 -5
  36. package/src/influence/ballot.test.ts +103 -0
  37. package/src/influence/ballot.ts +98 -0
  38. package/src/influence/charter-metadata.test.ts +136 -0
  39. package/src/influence/charter-metadata.ts +236 -0
  40. package/src/influence/charters.test.ts +51 -65
  41. package/src/influence/charters.ts +70 -40
  42. package/src/influence/civic.test.ts +278 -0
  43. package/src/influence/civic.ts +269 -0
  44. package/src/influence/constants.ts +30 -9
  45. package/src/influence/decomp.ts +15 -15
  46. package/src/influence/duration.ts +42 -6
  47. package/src/influence/index.ts +49 -6
  48. package/src/influence/influence.test.ts +76 -9
  49. package/src/influence/valuation.ts +17 -17
  50. package/src/managers/actions.ts +65 -37
  51. package/src/managers/base.ts +4 -0
  52. package/src/managers/context.ts +3 -1
  53. package/src/managers/index.ts +4 -2
  54. package/src/managers/influence.test.ts +18 -20
  55. package/src/managers/influence.ts +137 -84
  56. package/src/managers/jobs.test.ts +2 -2
  57. package/src/managers/jobs.ts +4 -4
  58. package/src/nft/description.ts +10 -11
  59. package/src/planner/index.ts +54 -0
  60. package/src/planner/planner.test.ts +127 -2
  61. package/src/resolution/display-name.ts +1 -1
  62. package/src/scheduling/availability.test.ts +113 -0
  63. package/src/scheduling/availability.ts +48 -8
  64. package/src/scheduling/jobs.ts +1 -1
  65. package/src/scheduling/projection.ts +2 -16
  66. package/src/scheduling/task-cargo.test.ts +62 -1
  67. package/src/scheduling/task-cargo.ts +25 -10
  68. package/src/scheduling/task-effects.test.ts +35 -0
  69. package/src/scheduling/task-effects.ts +34 -0
  70. package/src/scheduling/unwrap.test.ts +3 -3
  71. package/src/scheduling/unwrap.ts +3 -3
  72. package/src/shipload.ts +22 -3
  73. package/src/travel/reach.test.ts +86 -0
  74. package/src/travel/reach.ts +23 -10
  75. package/src/travel/route-build.test.ts +63 -0
  76. package/src/travel/route-build.ts +60 -0
  77. package/src/travel/travel.ts +2 -1
  78. package/src/types.ts +6 -2
  79. package/src/utils/hash.ts +18 -2
@@ -1,198 +1,396 @@
1
1
  {
2
2
  "nodes": [
3
3
  {
4
- "nodeId": 1,
4
+ "nodeId": 10001,
5
5
  "cost": "2000000000",
6
6
  "prereqs": [],
7
- "effect": {
8
- "kind": 1,
9
- "itemId": 10208,
10
- "targetItemId": 0,
11
- "slotMask": 0,
12
- "stat": 213
13
- }
7
+ "grants": [
8
+ {
9
+ "kind": 4,
10
+ "building": 0,
11
+ "stat": 0,
12
+ "value": 1
13
+ },
14
+ {
15
+ "kind": 3,
16
+ "building": 1,
17
+ "stat": 0,
18
+ "value": 1
19
+ },
20
+ {
21
+ "kind": 1,
22
+ "building": 1,
23
+ "stat": 0,
24
+ "value": 5
25
+ },
26
+ {
27
+ "kind": 2,
28
+ "building": 1,
29
+ "stat": 1,
30
+ "value": 200
31
+ }
32
+ ],
33
+ "exclusionGroup": 0,
34
+ "repeatCap": 0
14
35
  },
15
36
  {
16
- "nodeId": 2,
17
- "cost": "4000000000",
37
+ "nodeId": 10100201,
38
+ "cost": "800000000",
18
39
  "prereqs": [
19
- 1
40
+ 10001
41
+ ],
42
+ "grants": [
43
+ {
44
+ "kind": 2,
45
+ "building": 1,
46
+ "stat": 1,
47
+ "value": 50
48
+ }
20
49
  ],
21
- "effect": {
22
- "kind": 1,
23
- "itemId": 10216,
24
- "targetItemId": 0,
25
- "slotMask": 0,
26
- "stat": 213
27
- }
50
+ "exclusionGroup": 0,
51
+ "repeatCap": 0
28
52
  },
29
53
  {
30
- "nodeId": 3,
31
- "cost": "3000000000",
54
+ "nodeId": 10100202,
55
+ "cost": "1200000000",
56
+ "prereqs": [
57
+ 10100201
58
+ ],
59
+ "grants": [
60
+ {
61
+ "kind": 2,
62
+ "building": 1,
63
+ "stat": 1,
64
+ "value": 50
65
+ }
66
+ ],
67
+ "exclusionGroup": 0,
68
+ "repeatCap": 0
69
+ },
70
+ {
71
+ "nodeId": 10100203,
72
+ "cost": "1600000000",
32
73
  "prereqs": [
33
- 1
74
+ 10100202
75
+ ],
76
+ "grants": [
77
+ {
78
+ "kind": 2,
79
+ "building": 1,
80
+ "stat": 1,
81
+ "value": 50
82
+ }
34
83
  ],
35
- "effect": {
36
- "kind": 1,
37
- "itemId": 10209,
38
- "targetItemId": 0,
39
- "slotMask": 0,
40
- "stat": 213
41
- }
84
+ "exclusionGroup": 0,
85
+ "repeatCap": 0
42
86
  },
43
87
  {
44
- "nodeId": 4,
88
+ "nodeId": 10100204,
45
89
  "cost": "2000000000",
46
90
  "prereqs": [
47
- 1
91
+ 10100203
92
+ ],
93
+ "grants": [
94
+ {
95
+ "kind": 2,
96
+ "building": 1,
97
+ "stat": 1,
98
+ "value": 50
99
+ }
48
100
  ],
49
- "effect": {
50
- "kind": 2,
51
- "itemId": 10104,
52
- "targetItemId": 10208,
53
- "slotMask": 0,
54
- "stat": 400
55
- }
101
+ "exclusionGroup": 0,
102
+ "repeatCap": 0
56
103
  },
57
104
  {
58
- "nodeId": 5,
105
+ "nodeId": 20001,
106
+ "cost": "4000000000",
107
+ "prereqs": [
108
+ 10001
109
+ ],
110
+ "grants": [
111
+ {
112
+ "kind": 4,
113
+ "building": 0,
114
+ "stat": 0,
115
+ "value": 2
116
+ },
117
+ {
118
+ "kind": 3,
119
+ "building": 2,
120
+ "stat": 0,
121
+ "value": 1
122
+ }
123
+ ],
124
+ "exclusionGroup": 0,
125
+ "repeatCap": 0
126
+ },
127
+ {
128
+ "nodeId": 30100001,
59
129
  "cost": "3000000000",
60
130
  "prereqs": [
61
- 3
131
+ 10001
132
+ ],
133
+ "grants": [
134
+ {
135
+ "kind": 3,
136
+ "building": 3,
137
+ "stat": 0,
138
+ "value": 1
139
+ },
140
+ {
141
+ "kind": 1,
142
+ "building": 3,
143
+ "stat": 0,
144
+ "value": 2
145
+ },
146
+ {
147
+ "kind": 2,
148
+ "building": 3,
149
+ "stat": 2,
150
+ "value": 200
151
+ }
152
+ ],
153
+ "exclusionGroup": 0,
154
+ "repeatCap": 0
155
+ },
156
+ {
157
+ "nodeId": 30100301,
158
+ "cost": "800000000",
159
+ "prereqs": [
160
+ 30100001
161
+ ],
162
+ "grants": [
163
+ {
164
+ "kind": 2,
165
+ "building": 3,
166
+ "stat": 2,
167
+ "value": 50
168
+ }
169
+ ],
170
+ "exclusionGroup": 0,
171
+ "repeatCap": 0
172
+ },
173
+ {
174
+ "nodeId": 30100302,
175
+ "cost": "1200000000",
176
+ "prereqs": [
177
+ 30100301
178
+ ],
179
+ "grants": [
180
+ {
181
+ "kind": 2,
182
+ "building": 3,
183
+ "stat": 2,
184
+ "value": 50
185
+ }
186
+ ],
187
+ "exclusionGroup": 0,
188
+ "repeatCap": 0
189
+ },
190
+ {
191
+ "nodeId": 30100303,
192
+ "cost": "1600000000",
193
+ "prereqs": [
194
+ 30100302
62
195
  ],
63
- "effect": {
64
- "kind": 2,
65
- "itemId": 10110,
66
- "targetItemId": 10209,
67
- "slotMask": 2,
68
- "stat": 400
69
- }
196
+ "grants": [
197
+ {
198
+ "kind": 2,
199
+ "building": 3,
200
+ "stat": 2,
201
+ "value": 50
202
+ }
203
+ ],
204
+ "exclusionGroup": 0,
205
+ "repeatCap": 0
70
206
  },
71
207
  {
72
- "nodeId": 6,
208
+ "nodeId": 30100304,
209
+ "cost": "2000000000",
210
+ "prereqs": [
211
+ 30100303
212
+ ],
213
+ "grants": [
214
+ {
215
+ "kind": 2,
216
+ "building": 3,
217
+ "stat": 2,
218
+ "value": 50
219
+ }
220
+ ],
221
+ "exclusionGroup": 0,
222
+ "repeatCap": 0
223
+ },
224
+ {
225
+ "nodeId": 40100001,
73
226
  "cost": "2500000000",
74
227
  "prereqs": [
75
- 1
228
+ 10001
76
229
  ],
77
- "effect": {
78
- "kind": 1,
79
- "itemId": 10219,
80
- "targetItemId": 0,
81
- "slotMask": 1,
82
- "stat": 0
83
- }
230
+ "grants": [
231
+ {
232
+ "kind": 3,
233
+ "building": 4,
234
+ "stat": 0,
235
+ "value": 1
236
+ },
237
+ {
238
+ "kind": 1,
239
+ "building": 4,
240
+ "stat": 0,
241
+ "value": 1
242
+ },
243
+ {
244
+ "kind": 2,
245
+ "building": 4,
246
+ "stat": 3,
247
+ "value": 200
248
+ }
249
+ ],
250
+ "exclusionGroup": 0,
251
+ "repeatCap": 0
84
252
  },
85
253
  {
86
- "nodeId": 7,
254
+ "nodeId": 40100101,
87
255
  "cost": "1000000000",
88
256
  "prereqs": [
89
- 6
257
+ 40100001
258
+ ],
259
+ "grants": [
260
+ {
261
+ "kind": 1,
262
+ "building": 4,
263
+ "stat": 0,
264
+ "value": 1
265
+ },
266
+ {
267
+ "kind": 2,
268
+ "building": 4,
269
+ "stat": 4,
270
+ "value": 200
271
+ }
90
272
  ],
91
- "effect": {
92
- "kind": 2,
93
- "itemId": 10105,
94
- "targetItemId": 10219,
95
- "slotMask": 2,
96
- "stat": 213
97
- }
273
+ "exclusionGroup": 0,
274
+ "repeatCap": 0
98
275
  },
99
276
  {
100
- "nodeId": 8,
277
+ "nodeId": 40100102,
101
278
  "cost": "1500000000",
102
279
  "prereqs": [
103
- 7
280
+ 40100101
281
+ ],
282
+ "grants": [
283
+ {
284
+ "kind": 1,
285
+ "building": 4,
286
+ "stat": 0,
287
+ "value": 1
288
+ }
104
289
  ],
105
- "effect": {
106
- "kind": 2,
107
- "itemId": 10105,
108
- "targetItemId": 10219,
109
- "slotMask": 4,
110
- "stat": 213
111
- }
290
+ "exclusionGroup": 0,
291
+ "repeatCap": 0
112
292
  },
113
293
  {
114
- "nodeId": 9,
294
+ "nodeId": 40100103,
115
295
  "cost": "2000000000",
116
296
  "prereqs": [
117
- 8
297
+ 40100102
118
298
  ],
119
- "effect": {
120
- "kind": 2,
121
- "itemId": 10105,
122
- "targetItemId": 10219,
123
- "slotMask": 8,
124
- "stat": 213
125
- }
299
+ "grants": [
300
+ {
301
+ "kind": 1,
302
+ "building": 4,
303
+ "stat": 0,
304
+ "value": 1
305
+ }
306
+ ],
307
+ "exclusionGroup": 0,
308
+ "repeatCap": 0
126
309
  },
127
310
  {
128
- "nodeId": 10,
311
+ "nodeId": 40100104,
129
312
  "cost": "2500000000",
130
313
  "prereqs": [
131
- 9
314
+ 40100103
315
+ ],
316
+ "grants": [
317
+ {
318
+ "kind": 1,
319
+ "building": 4,
320
+ "stat": 0,
321
+ "value": 1
322
+ }
132
323
  ],
133
- "effect": {
134
- "kind": 2,
135
- "itemId": 10105,
136
- "targetItemId": 10219,
137
- "slotMask": 16,
138
- "stat": 213
139
- }
324
+ "exclusionGroup": 0,
325
+ "repeatCap": 0
140
326
  },
141
327
  {
142
- "nodeId": 11,
328
+ "nodeId": 40100401,
143
329
  "cost": "800000000",
144
330
  "prereqs": [
145
- 6
331
+ 40100001
332
+ ],
333
+ "grants": [
334
+ {
335
+ "kind": 2,
336
+ "building": 4,
337
+ "stat": 3,
338
+ "value": 50
339
+ }
146
340
  ],
147
- "effect": {
148
- "kind": 2,
149
- "itemId": 10103,
150
- "targetItemId": 10219,
151
- "slotMask": 1,
152
- "stat": 100
153
- }
341
+ "exclusionGroup": 0,
342
+ "repeatCap": 0
154
343
  },
155
344
  {
156
- "nodeId": 12,
345
+ "nodeId": 40100402,
157
346
  "cost": "1200000000",
158
347
  "prereqs": [
159
- 11
348
+ 40100401
160
349
  ],
161
- "effect": {
162
- "kind": 2,
163
- "itemId": 10103,
164
- "targetItemId": 10219,
165
- "slotMask": 1,
166
- "stat": 200
167
- }
350
+ "grants": [
351
+ {
352
+ "kind": 2,
353
+ "building": 4,
354
+ "stat": 3,
355
+ "value": 50
356
+ }
357
+ ],
358
+ "exclusionGroup": 0,
359
+ "repeatCap": 0
168
360
  },
169
361
  {
170
- "nodeId": 13,
362
+ "nodeId": 40100403,
171
363
  "cost": "1600000000",
172
364
  "prereqs": [
173
- 12
365
+ 40100402
366
+ ],
367
+ "grants": [
368
+ {
369
+ "kind": 2,
370
+ "building": 4,
371
+ "stat": 3,
372
+ "value": 50
373
+ }
174
374
  ],
175
- "effect": {
176
- "kind": 2,
177
- "itemId": 10103,
178
- "targetItemId": 10219,
179
- "slotMask": 1,
180
- "stat": 300
181
- }
375
+ "exclusionGroup": 0,
376
+ "repeatCap": 0
182
377
  },
183
378
  {
184
- "nodeId": 14,
379
+ "nodeId": 40100404,
185
380
  "cost": "2000000000",
186
381
  "prereqs": [
187
- 13
382
+ 40100403
383
+ ],
384
+ "grants": [
385
+ {
386
+ "kind": 2,
387
+ "building": 4,
388
+ "stat": 3,
389
+ "value": 50
390
+ }
188
391
  ],
189
- "effect": {
190
- "kind": 2,
191
- "itemId": 10103,
192
- "targetItemId": 10219,
193
- "slotMask": 1,
194
- "stat": 400
195
- }
392
+ "exclusionGroup": 0,
393
+ "repeatCap": 0
196
394
  }
197
395
  ]
198
396
  }