@shipload/sdk 1.0.0-next.75 → 1.0.0-next.76

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 (53) hide show
  1. package/lib/scan.js +1 -1
  2. package/lib/scan.js.map +1 -1
  3. package/lib/scan.m.js +1 -1
  4. package/lib/scan.m.js.map +1 -1
  5. package/lib/shipload.d.ts +69 -35
  6. package/lib/shipload.js +13551 -11325
  7. package/lib/shipload.js.map +1 -1
  8. package/lib/shipload.m.js +13532 -11325
  9. package/lib/shipload.m.js.map +1 -1
  10. package/lib/testing.d.ts +20 -16
  11. package/lib/testing.js +214 -48
  12. package/lib/testing.js.map +1 -1
  13. package/lib/testing.m.js +214 -48
  14. package/lib/testing.m.js.map +1 -1
  15. package/package.json +6 -6
  16. package/src/capabilities/storage.ts +45 -10
  17. package/src/contracts/server.ts +49 -41
  18. package/src/data/entities.json +367 -2
  19. package/src/data/item-ids.ts +15 -0
  20. package/src/data/items.json +90 -0
  21. package/src/data/kind-registry.json +97 -7
  22. package/src/data/metadata.ts +65 -0
  23. package/src/data/recipes-runtime.ts +1 -1
  24. package/src/data/recipes.json +1476 -10
  25. package/src/data/task-types.json +9 -0
  26. package/src/derivation/capabilities.test.ts +25 -2
  27. package/src/derivation/capabilities.ts +16 -3
  28. package/src/derivation/capacity-fn-registry.ts +8 -1
  29. package/src/derivation/reserve-regen.ts +5 -9
  30. package/src/derivation/stratum.ts +1 -1
  31. package/src/derivation/tiers.ts +1 -1
  32. package/src/derivation/upgrades.ts +5 -4
  33. package/src/index-module.ts +3 -0
  34. package/src/influence/influence.test.ts +1 -1
  35. package/src/managers/actions.ts +12 -19
  36. package/src/managers/entities.test.ts +23 -0
  37. package/src/managers/entities.ts +8 -1
  38. package/src/managers/shuttle.test.ts +67 -0
  39. package/src/managers/shuttle.ts +17 -0
  40. package/src/nft/description.ts +6 -0
  41. package/src/resolution/resolve-item.test.ts +6 -6
  42. package/src/scan/scan-wasm.base64.ts +1 -1
  43. package/src/scheduling/availability.test.ts +3 -3
  44. package/src/scheduling/availability.ts +3 -4
  45. package/src/scheduling/lanes.ts +1 -1
  46. package/src/scheduling/projection.ts +15 -13
  47. package/src/scheduling/schedule.test.ts +24 -0
  48. package/src/scheduling/schedule.ts +11 -4
  49. package/src/scheduling/task-effects.ts +3 -1
  50. package/src/scheduling/unwrap.test.ts +25 -6
  51. package/src/scheduling/unwrap.ts +19 -3
  52. package/src/travel/travel.ts +4 -0
  53. package/src/types.ts +2 -0
@@ -267,6 +267,31 @@ export const itemFamilies: Record<string, ItemFamily> = {
267
267
  description: 'A gathering ship with a hold for longer runs.',
268
268
  color: '#4AE898',
269
269
  },
270
+ trawler: {
271
+ name: 'Trawler',
272
+ description: 'A gathering ship that tows a container for longer runs.',
273
+ color: '#4AE898',
274
+ },
275
+ steward: {
276
+ name: 'Steward',
277
+ description: 'A transfer ship with a hold for the cargo it moves.',
278
+ color: '#4AE898',
279
+ },
280
+ wrangler: {
281
+ name: 'Wrangler',
282
+ description: 'A transfer ship that also tows.',
283
+ color: '#4AE898',
284
+ },
285
+ artisan: {
286
+ name: 'Artisan',
287
+ description: 'A crafting ship with a hold for its materials.',
288
+ color: '#4AE898',
289
+ },
290
+ outfitter: {
291
+ name: 'Outfitter',
292
+ description: 'A construction ship with a hold for upgrade materials.',
293
+ color: '#4AE898',
294
+ },
270
295
  }
271
296
 
272
297
  const COMPONENT_FAMILIES = [
@@ -311,6 +336,21 @@ const ENTITY_FAMILIES: Record<number, string> = {
311
336
  11212: 'prospector',
312
337
  11213: 'prospector',
313
338
  11214: 'dredger',
339
+ 11215: 'tender',
340
+ 11216: 'tender',
341
+ 11217: 'wright',
342
+ 11218: 'wright',
343
+ 11219: 'tug',
344
+ 11220: 'tug',
345
+ 11221: 'porter',
346
+ 11222: 'porter',
347
+ 11223: 'smith',
348
+ 11224: 'smith',
349
+ 11225: 'trawler',
350
+ 11226: 'steward',
351
+ 11227: 'wrangler',
352
+ 11228: 'artisan',
353
+ 11229: 'outfitter',
314
354
  }
315
355
 
316
356
  interface RawItem {
@@ -384,6 +424,31 @@ export const entityMetadata: Record<number, EntityMetadata> = {
384
424
  11214: {
385
425
  moduleSlotLabels: ['Power Core', 'Engine', 'Limpet Bay', 'Cargo Hold'],
386
426
  },
427
+ 11215: {moduleSlotLabels: ['Power Core', 'Engine', 'Shuttle Bay']},
428
+ 11216: {
429
+ moduleSlotLabels: ['Power Core', 'Engine', 'Auxiliary System', 'Shuttle Bay'],
430
+ },
431
+ 11217: {moduleSlotLabels: ['Power Core', 'Engine', 'Assembly Arm']},
432
+ 11218: {
433
+ moduleSlotLabels: ['Power Core', 'Engine', 'Auxiliary System', 'Assembly Arm'],
434
+ },
435
+ 11219: {moduleSlotLabels: ['Power Core', 'Engine', 'Tractor Beam']},
436
+ 11220: {
437
+ moduleSlotLabels: ['Power Core', 'Engine', 'Auxiliary System', 'Tractor Beam'],
438
+ },
439
+ 11221: {moduleSlotLabels: ['Power Core', 'Engine', 'Cargo Hold']},
440
+ 11222: {
441
+ moduleSlotLabels: ['Power Core', 'Engine', 'Auxiliary System', 'Cargo Hold'],
442
+ },
443
+ 11223: {moduleSlotLabels: ['Power Core', 'Engine', 'Fabricator']},
444
+ 11224: {
445
+ moduleSlotLabels: ['Power Core', 'Engine', 'Auxiliary System', 'Fabricator'],
446
+ },
447
+ 11225: {moduleSlotLabels: ['Power Core', 'Engine', 'Limpet Bay', 'Tractor Beam']},
448
+ 11226: {moduleSlotLabels: ['Power Core', 'Engine', 'Shuttle Bay', 'Cargo Hold']},
449
+ 11227: {moduleSlotLabels: ['Power Core', 'Engine', 'Shuttle Bay', 'Tractor Beam']},
450
+ 11228: {moduleSlotLabels: ['Power Core', 'Engine', 'Fabricator', 'Cargo Hold']},
451
+ 11229: {moduleSlotLabels: ['Power Core', 'Engine', 'Assembly Arm', 'Cargo Hold']},
387
452
  11202: {
388
453
  moduleSlotLabels: ['Shuttle Bay', 'Cargo Hold', 'Cargo Hold', 'Cargo Hold', 'Cargo Hold'],
389
454
  },
@@ -18,7 +18,7 @@ export interface Recipe {
18
18
  inputs: RecipeInput[]
19
19
  statSlots: StatSlot[]
20
20
  blendWeights: number[]
21
- sourceSubclass?: number
21
+ sourceSubclasses?: number[]
22
22
  }
23
23
 
24
24
  export interface EntitySlot {