@shipload/sdk 1.0.0-next.56 → 1.0.0-next.59
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/lib/shipload.d.ts +57 -36
- package/lib/shipload.js +385 -245
- package/lib/shipload.js.map +1 -1
- package/lib/shipload.m.js +371 -236
- package/lib/shipload.m.js.map +1 -1
- package/lib/testing.js +25 -25
- package/lib/testing.js.map +1 -1
- package/lib/testing.m.js +25 -25
- package/lib/testing.m.js.map +1 -1
- package/package.json +1 -1
- package/src/capabilities/craftable.test.ts +82 -0
- package/src/capabilities/craftable.ts +36 -5
- package/src/capabilities/modules.ts +10 -0
- package/src/data/entities.json +32 -42
- package/src/data/item-ids.ts +10 -10
- package/src/data/items.json +12 -12
- package/src/data/kind-registry.json +10 -10
- package/src/data/metadata.ts +17 -17
- package/src/data/recipes.json +111 -111
- package/src/derivation/capabilities.test.ts +15 -17
- package/src/derivation/crafting.test.ts +17 -0
- package/src/derivation/crafting.ts +18 -0
- package/src/derivation/recipe-usage.test.ts +8 -10
- package/src/index-module.ts +5 -0
- package/src/nft/description.ts +23 -23
- package/src/resolution/resolve-item.ts +12 -0
- package/src/scheduling/availability.test.ts +157 -0
- package/src/scheduling/availability.ts +94 -13
- package/src/scheduling/cancel.test.ts +161 -1
- package/src/scheduling/cancel.ts +58 -5
- package/src/types.ts +1 -0
package/lib/shipload.m.js
CHANGED
|
@@ -3852,14 +3852,13 @@ const ITEM_MASS_CATCHER_T1_PACKED = 10206;
|
|
|
3852
3852
|
const ITEM_HUB_T1_PACKED = 10207;
|
|
3853
3853
|
const ITEM_WORKSHOP_T1_PACKED = 10208;
|
|
3854
3854
|
const ITEM_CONSTRUCTION_DOCK_T1_PACKED = 10209;
|
|
3855
|
-
const
|
|
3856
|
-
const
|
|
3857
|
-
const
|
|
3858
|
-
const
|
|
3859
|
-
const
|
|
3860
|
-
const
|
|
3861
|
-
const
|
|
3862
|
-
const ITEM_DREDGER_T1_PACKED = 10217;
|
|
3855
|
+
const ITEM_ROUSTABOUT_T1A_PACKED = 10210;
|
|
3856
|
+
const ITEM_PROSPECTOR_T1A_PACKED = 10211;
|
|
3857
|
+
const ITEM_TENDER_T1A_PACKED = 10212;
|
|
3858
|
+
const ITEM_WRIGHT_T1A_PACKED = 10213;
|
|
3859
|
+
const ITEM_TUG_T1A_PACKED = 10214;
|
|
3860
|
+
const ITEM_PORTER_T1A_PACKED = 10215;
|
|
3861
|
+
const ITEM_SMITH_T1A_PACKED = 10218;
|
|
3863
3862
|
const ITEM_PLATE_T2 = 20001;
|
|
3864
3863
|
const ITEM_FRAME_T2 = 20002;
|
|
3865
3864
|
const ITEM_PLASMA_CELL_T2 = 20003;
|
|
@@ -3873,8 +3872,9 @@ const ITEM_RESIN_T2 = 20010;
|
|
|
3873
3872
|
const ITEM_GATHERER_T2 = 20102;
|
|
3874
3873
|
const ITEM_HAULER_T2 = 20106;
|
|
3875
3874
|
const ITEM_CONTAINER_T2_PACKED = 20200;
|
|
3876
|
-
const
|
|
3877
|
-
const
|
|
3875
|
+
const ITEM_PROSPECTOR_T2A_PACKED = 20212;
|
|
3876
|
+
const ITEM_PROSPECTOR_T2B_PACKED = 20213;
|
|
3877
|
+
const ITEM_DREDGER_T2A_PACKED = 20214;
|
|
3878
3878
|
|
|
3879
3879
|
var recipes = [
|
|
3880
3880
|
{
|
|
@@ -5504,126 +5504,31 @@ var recipes = [
|
|
|
5504
5504
|
sourceSubclass: 10210
|
|
5505
5505
|
},
|
|
5506
5506
|
{
|
|
5507
|
-
outputItemId:
|
|
5508
|
-
outputMass:
|
|
5509
|
-
inputs: [
|
|
5510
|
-
{
|
|
5511
|
-
itemId: 10005,
|
|
5512
|
-
quantity: 150
|
|
5513
|
-
},
|
|
5514
|
-
{
|
|
5515
|
-
itemId: 10002,
|
|
5516
|
-
quantity: 150
|
|
5517
|
-
},
|
|
5518
|
-
{
|
|
5519
|
-
itemId: 10010,
|
|
5520
|
-
quantity: 150
|
|
5521
|
-
},
|
|
5522
|
-
{
|
|
5523
|
-
itemId: 10009,
|
|
5524
|
-
quantity: 150
|
|
5525
|
-
},
|
|
5526
|
-
{
|
|
5527
|
-
itemId: 10004,
|
|
5528
|
-
quantity: 150
|
|
5529
|
-
},
|
|
5530
|
-
{
|
|
5531
|
-
itemId: 10211,
|
|
5532
|
-
quantity: 1
|
|
5533
|
-
}
|
|
5534
|
-
],
|
|
5535
|
-
statSlots: [
|
|
5536
|
-
{
|
|
5537
|
-
sources: [
|
|
5538
|
-
{
|
|
5539
|
-
inputIndex: 0,
|
|
5540
|
-
statIndex: 0
|
|
5541
|
-
},
|
|
5542
|
-
{
|
|
5543
|
-
inputIndex: 5,
|
|
5544
|
-
statIndex: 0
|
|
5545
|
-
}
|
|
5546
|
-
]
|
|
5547
|
-
},
|
|
5548
|
-
{
|
|
5549
|
-
sources: [
|
|
5550
|
-
{
|
|
5551
|
-
inputIndex: 1,
|
|
5552
|
-
statIndex: 0
|
|
5553
|
-
},
|
|
5554
|
-
{
|
|
5555
|
-
inputIndex: 5,
|
|
5556
|
-
statIndex: 1
|
|
5557
|
-
}
|
|
5558
|
-
]
|
|
5559
|
-
},
|
|
5560
|
-
{
|
|
5561
|
-
sources: [
|
|
5562
|
-
{
|
|
5563
|
-
inputIndex: 2,
|
|
5564
|
-
statIndex: 0
|
|
5565
|
-
},
|
|
5566
|
-
{
|
|
5567
|
-
inputIndex: 5,
|
|
5568
|
-
statIndex: 2
|
|
5569
|
-
}
|
|
5570
|
-
]
|
|
5571
|
-
},
|
|
5572
|
-
{
|
|
5573
|
-
sources: [
|
|
5574
|
-
{
|
|
5575
|
-
inputIndex: 3,
|
|
5576
|
-
statIndex: 0
|
|
5577
|
-
},
|
|
5578
|
-
{
|
|
5579
|
-
inputIndex: 5,
|
|
5580
|
-
statIndex: 3
|
|
5581
|
-
}
|
|
5582
|
-
]
|
|
5583
|
-
},
|
|
5584
|
-
{
|
|
5585
|
-
sources: [
|
|
5586
|
-
{
|
|
5587
|
-
inputIndex: 4,
|
|
5588
|
-
statIndex: 0
|
|
5589
|
-
},
|
|
5590
|
-
{
|
|
5591
|
-
inputIndex: 5,
|
|
5592
|
-
statIndex: 4
|
|
5593
|
-
}
|
|
5594
|
-
]
|
|
5595
|
-
}
|
|
5596
|
-
],
|
|
5597
|
-
blendWeights: [
|
|
5598
|
-
],
|
|
5599
|
-
sourceSubclass: 10211
|
|
5600
|
-
},
|
|
5601
|
-
{
|
|
5602
|
-
outputItemId: 10217,
|
|
5603
|
-
outputMass: 3600000,
|
|
5507
|
+
outputItemId: 10218,
|
|
5508
|
+
outputMass: 2400000,
|
|
5604
5509
|
inputs: [
|
|
5605
5510
|
{
|
|
5606
5511
|
itemId: 10005,
|
|
5607
|
-
quantity:
|
|
5512
|
+
quantity: 100
|
|
5608
5513
|
},
|
|
5609
5514
|
{
|
|
5610
5515
|
itemId: 10002,
|
|
5611
|
-
quantity:
|
|
5516
|
+
quantity: 100
|
|
5612
5517
|
},
|
|
5613
5518
|
{
|
|
5614
5519
|
itemId: 10010,
|
|
5615
|
-
quantity:
|
|
5520
|
+
quantity: 100
|
|
5616
5521
|
},
|
|
5617
5522
|
{
|
|
5618
5523
|
itemId: 10009,
|
|
5619
|
-
quantity:
|
|
5524
|
+
quantity: 100
|
|
5620
5525
|
},
|
|
5621
5526
|
{
|
|
5622
5527
|
itemId: 10004,
|
|
5623
|
-
quantity:
|
|
5528
|
+
quantity: 100
|
|
5624
5529
|
},
|
|
5625
5530
|
{
|
|
5626
|
-
itemId:
|
|
5531
|
+
itemId: 10210,
|
|
5627
5532
|
quantity: 1
|
|
5628
5533
|
}
|
|
5629
5534
|
],
|
|
@@ -5691,7 +5596,7 @@ var recipes = [
|
|
|
5691
5596
|
],
|
|
5692
5597
|
blendWeights: [
|
|
5693
5598
|
],
|
|
5694
|
-
sourceSubclass:
|
|
5599
|
+
sourceSubclass: 10210
|
|
5695
5600
|
},
|
|
5696
5601
|
{
|
|
5697
5602
|
outputItemId: 20001,
|
|
@@ -6289,8 +6194,103 @@ var recipes = [
|
|
|
6289
6194
|
sourceSubclass: 10200
|
|
6290
6195
|
},
|
|
6291
6196
|
{
|
|
6292
|
-
outputItemId:
|
|
6293
|
-
outputMass:
|
|
6197
|
+
outputItemId: 20212,
|
|
6198
|
+
outputMass: 4320000,
|
|
6199
|
+
inputs: [
|
|
6200
|
+
{
|
|
6201
|
+
itemId: 20001,
|
|
6202
|
+
quantity: 200
|
|
6203
|
+
},
|
|
6204
|
+
{
|
|
6205
|
+
itemId: 20008,
|
|
6206
|
+
quantity: 200
|
|
6207
|
+
},
|
|
6208
|
+
{
|
|
6209
|
+
itemId: 20007,
|
|
6210
|
+
quantity: 200
|
|
6211
|
+
},
|
|
6212
|
+
{
|
|
6213
|
+
itemId: 20003,
|
|
6214
|
+
quantity: 200
|
|
6215
|
+
},
|
|
6216
|
+
{
|
|
6217
|
+
itemId: 20006,
|
|
6218
|
+
quantity: 200
|
|
6219
|
+
},
|
|
6220
|
+
{
|
|
6221
|
+
itemId: 10211,
|
|
6222
|
+
quantity: 1
|
|
6223
|
+
}
|
|
6224
|
+
],
|
|
6225
|
+
statSlots: [
|
|
6226
|
+
{
|
|
6227
|
+
sources: [
|
|
6228
|
+
{
|
|
6229
|
+
inputIndex: 0,
|
|
6230
|
+
statIndex: 0
|
|
6231
|
+
},
|
|
6232
|
+
{
|
|
6233
|
+
inputIndex: 5,
|
|
6234
|
+
statIndex: 0
|
|
6235
|
+
}
|
|
6236
|
+
]
|
|
6237
|
+
},
|
|
6238
|
+
{
|
|
6239
|
+
sources: [
|
|
6240
|
+
{
|
|
6241
|
+
inputIndex: 1,
|
|
6242
|
+
statIndex: 0
|
|
6243
|
+
},
|
|
6244
|
+
{
|
|
6245
|
+
inputIndex: 5,
|
|
6246
|
+
statIndex: 1
|
|
6247
|
+
}
|
|
6248
|
+
]
|
|
6249
|
+
},
|
|
6250
|
+
{
|
|
6251
|
+
sources: [
|
|
6252
|
+
{
|
|
6253
|
+
inputIndex: 2,
|
|
6254
|
+
statIndex: 0
|
|
6255
|
+
},
|
|
6256
|
+
{
|
|
6257
|
+
inputIndex: 5,
|
|
6258
|
+
statIndex: 2
|
|
6259
|
+
}
|
|
6260
|
+
]
|
|
6261
|
+
},
|
|
6262
|
+
{
|
|
6263
|
+
sources: [
|
|
6264
|
+
{
|
|
6265
|
+
inputIndex: 3,
|
|
6266
|
+
statIndex: 0
|
|
6267
|
+
},
|
|
6268
|
+
{
|
|
6269
|
+
inputIndex: 5,
|
|
6270
|
+
statIndex: 3
|
|
6271
|
+
}
|
|
6272
|
+
]
|
|
6273
|
+
},
|
|
6274
|
+
{
|
|
6275
|
+
sources: [
|
|
6276
|
+
{
|
|
6277
|
+
inputIndex: 4,
|
|
6278
|
+
statIndex: 0
|
|
6279
|
+
},
|
|
6280
|
+
{
|
|
6281
|
+
inputIndex: 5,
|
|
6282
|
+
statIndex: 4
|
|
6283
|
+
}
|
|
6284
|
+
]
|
|
6285
|
+
}
|
|
6286
|
+
],
|
|
6287
|
+
blendWeights: [
|
|
6288
|
+
],
|
|
6289
|
+
sourceSubclass: 10211
|
|
6290
|
+
},
|
|
6291
|
+
{
|
|
6292
|
+
outputItemId: 20213,
|
|
6293
|
+
outputMass: 5760000,
|
|
6294
6294
|
inputs: [
|
|
6295
6295
|
{
|
|
6296
6296
|
itemId: 20005,
|
|
@@ -6313,7 +6313,7 @@ var recipes = [
|
|
|
6313
6313
|
quantity: 150
|
|
6314
6314
|
},
|
|
6315
6315
|
{
|
|
6316
|
-
itemId:
|
|
6316
|
+
itemId: 20212,
|
|
6317
6317
|
quantity: 1
|
|
6318
6318
|
}
|
|
6319
6319
|
],
|
|
@@ -6381,11 +6381,11 @@ var recipes = [
|
|
|
6381
6381
|
],
|
|
6382
6382
|
blendWeights: [
|
|
6383
6383
|
],
|
|
6384
|
-
sourceSubclass:
|
|
6384
|
+
sourceSubclass: 20212
|
|
6385
6385
|
},
|
|
6386
6386
|
{
|
|
6387
|
-
outputItemId:
|
|
6388
|
-
outputMass:
|
|
6387
|
+
outputItemId: 20214,
|
|
6388
|
+
outputMass: 5760000,
|
|
6389
6389
|
inputs: [
|
|
6390
6390
|
{
|
|
6391
6391
|
itemId: 20005,
|
|
@@ -6408,7 +6408,7 @@ var recipes = [
|
|
|
6408
6408
|
quantity: 150
|
|
6409
6409
|
},
|
|
6410
6410
|
{
|
|
6411
|
-
itemId:
|
|
6411
|
+
itemId: 20212,
|
|
6412
6412
|
quantity: 1
|
|
6413
6413
|
}
|
|
6414
6414
|
],
|
|
@@ -6476,7 +6476,7 @@ var recipes = [
|
|
|
6476
6476
|
],
|
|
6477
6477
|
blendWeights: [
|
|
6478
6478
|
],
|
|
6479
|
-
sourceSubclass:
|
|
6479
|
+
sourceSubclass: 20212
|
|
6480
6480
|
}
|
|
6481
6481
|
];
|
|
6482
6482
|
|
|
@@ -6711,7 +6711,7 @@ var entities = [
|
|
|
6711
6711
|
maxTier: 1
|
|
6712
6712
|
}
|
|
6713
6713
|
],
|
|
6714
|
-
baseHullmass:
|
|
6714
|
+
baseHullmass: 4000000
|
|
6715
6715
|
},
|
|
6716
6716
|
{
|
|
6717
6717
|
entityItemId: 10212,
|
|
@@ -6732,7 +6732,7 @@ var entities = [
|
|
|
6732
6732
|
maxTier: 1
|
|
6733
6733
|
}
|
|
6734
6734
|
],
|
|
6735
|
-
baseHullmass:
|
|
6735
|
+
baseHullmass: 4000000
|
|
6736
6736
|
},
|
|
6737
6737
|
{
|
|
6738
6738
|
entityItemId: 10213,
|
|
@@ -6753,7 +6753,7 @@ var entities = [
|
|
|
6753
6753
|
maxTier: 1
|
|
6754
6754
|
}
|
|
6755
6755
|
],
|
|
6756
|
-
baseHullmass:
|
|
6756
|
+
baseHullmass: 4000000
|
|
6757
6757
|
},
|
|
6758
6758
|
{
|
|
6759
6759
|
entityItemId: 10214,
|
|
@@ -6774,7 +6774,7 @@ var entities = [
|
|
|
6774
6774
|
maxTier: 1
|
|
6775
6775
|
}
|
|
6776
6776
|
],
|
|
6777
|
-
baseHullmass:
|
|
6777
|
+
baseHullmass: 4000000
|
|
6778
6778
|
},
|
|
6779
6779
|
{
|
|
6780
6780
|
entityItemId: 10215,
|
|
@@ -6795,28 +6795,23 @@ var entities = [
|
|
|
6795
6795
|
maxTier: 1
|
|
6796
6796
|
}
|
|
6797
6797
|
],
|
|
6798
|
-
baseHullmass:
|
|
6798
|
+
baseHullmass: 4000000
|
|
6799
6799
|
},
|
|
6800
6800
|
{
|
|
6801
|
-
entityItemId:
|
|
6801
|
+
entityItemId: 10218,
|
|
6802
6802
|
slots: [
|
|
6803
6803
|
{
|
|
6804
6804
|
type: "generator",
|
|
6805
|
-
outputPct:
|
|
6805
|
+
outputPct: 85,
|
|
6806
6806
|
maxTier: 1
|
|
6807
6807
|
},
|
|
6808
6808
|
{
|
|
6809
6809
|
type: "engine",
|
|
6810
|
-
outputPct:
|
|
6811
|
-
maxTier: 1
|
|
6812
|
-
},
|
|
6813
|
-
{
|
|
6814
|
-
type: "gatherer",
|
|
6815
|
-
outputPct: 100,
|
|
6810
|
+
outputPct: 85,
|
|
6816
6811
|
maxTier: 1
|
|
6817
6812
|
},
|
|
6818
6813
|
{
|
|
6819
|
-
type: "
|
|
6814
|
+
type: "crafter",
|
|
6820
6815
|
outputPct: 100,
|
|
6821
6816
|
maxTier: 1
|
|
6822
6817
|
}
|
|
@@ -6824,53 +6819,48 @@ var entities = [
|
|
|
6824
6819
|
baseHullmass: 4000000
|
|
6825
6820
|
},
|
|
6826
6821
|
{
|
|
6827
|
-
entityItemId:
|
|
6822
|
+
entityItemId: 20200,
|
|
6823
|
+
slots: [
|
|
6824
|
+
],
|
|
6825
|
+
baseHullmass: 100000
|
|
6826
|
+
},
|
|
6827
|
+
{
|
|
6828
|
+
entityItemId: 20212,
|
|
6828
6829
|
slots: [
|
|
6829
6830
|
{
|
|
6830
6831
|
type: "generator",
|
|
6831
6832
|
outputPct: 90,
|
|
6832
|
-
maxTier:
|
|
6833
|
+
maxTier: 2
|
|
6833
6834
|
},
|
|
6834
6835
|
{
|
|
6835
6836
|
type: "engine",
|
|
6836
6837
|
outputPct: 90,
|
|
6837
|
-
maxTier:
|
|
6838
|
+
maxTier: 2
|
|
6838
6839
|
},
|
|
6839
6840
|
{
|
|
6840
6841
|
type: "gatherer",
|
|
6841
6842
|
outputPct: 100,
|
|
6842
|
-
maxTier:
|
|
6843
|
-
},
|
|
6844
|
-
{
|
|
6845
|
-
type: "storage",
|
|
6846
|
-
outputPct: 100,
|
|
6847
|
-
maxTier: 1
|
|
6843
|
+
maxTier: 2
|
|
6848
6844
|
}
|
|
6849
6845
|
],
|
|
6850
|
-
baseHullmass:
|
|
6851
|
-
},
|
|
6852
|
-
{
|
|
6853
|
-
entityItemId: 20200,
|
|
6854
|
-
slots: [
|
|
6855
|
-
],
|
|
6856
|
-
baseHullmass: 100000
|
|
6846
|
+
baseHullmass: 5920000
|
|
6857
6847
|
},
|
|
6858
6848
|
{
|
|
6859
|
-
entityItemId:
|
|
6849
|
+
entityItemId: 20213,
|
|
6860
6850
|
slots: [
|
|
6861
6851
|
{
|
|
6862
6852
|
type: "generator",
|
|
6863
|
-
outputPct:
|
|
6853
|
+
outputPct: 95,
|
|
6864
6854
|
maxTier: 2
|
|
6865
6855
|
},
|
|
6866
6856
|
{
|
|
6867
|
-
type: "
|
|
6868
|
-
outputPct:
|
|
6857
|
+
type: "engine",
|
|
6858
|
+
outputPct: 95,
|
|
6869
6859
|
maxTier: 2
|
|
6870
6860
|
},
|
|
6871
6861
|
{
|
|
6872
|
-
type: "
|
|
6873
|
-
outputPct:
|
|
6862
|
+
type: "aux",
|
|
6863
|
+
outputPct: 95,
|
|
6874
6864
|
maxTier: 2
|
|
6875
6865
|
},
|
|
6876
6866
|
{
|
|
@@ -6879,33 +6869,33 @@ var entities = [
|
|
|
6879
6869
|
maxTier: 2
|
|
6880
6870
|
}
|
|
6881
6871
|
],
|
|
6882
|
-
baseHullmass:
|
|
6872
|
+
baseHullmass: 7360000
|
|
6883
6873
|
},
|
|
6884
6874
|
{
|
|
6885
|
-
entityItemId:
|
|
6875
|
+
entityItemId: 20214,
|
|
6886
6876
|
slots: [
|
|
6887
6877
|
{
|
|
6888
6878
|
type: "generator",
|
|
6889
|
-
outputPct:
|
|
6879
|
+
outputPct: 95,
|
|
6890
6880
|
maxTier: 2
|
|
6891
6881
|
},
|
|
6892
6882
|
{
|
|
6893
6883
|
type: "engine",
|
|
6894
|
-
outputPct:
|
|
6884
|
+
outputPct: 95,
|
|
6895
6885
|
maxTier: 2
|
|
6896
6886
|
},
|
|
6897
6887
|
{
|
|
6898
|
-
type: "
|
|
6888
|
+
type: "gatherer",
|
|
6899
6889
|
outputPct: 100,
|
|
6900
6890
|
maxTier: 2
|
|
6901
6891
|
},
|
|
6902
6892
|
{
|
|
6903
|
-
type: "
|
|
6893
|
+
type: "storage",
|
|
6904
6894
|
outputPct: 100,
|
|
6905
6895
|
maxTier: 2
|
|
6906
6896
|
}
|
|
6907
6897
|
],
|
|
6908
|
-
baseHullmass:
|
|
6898
|
+
baseHullmass: 7360000
|
|
6909
6899
|
}
|
|
6910
6900
|
];
|
|
6911
6901
|
|
|
@@ -7534,14 +7524,8 @@ var items = [
|
|
|
7534
7524
|
tier: 1
|
|
7535
7525
|
},
|
|
7536
7526
|
{
|
|
7537
|
-
id:
|
|
7538
|
-
mass:
|
|
7539
|
-
type: "entity",
|
|
7540
|
-
tier: 1
|
|
7541
|
-
},
|
|
7542
|
-
{
|
|
7543
|
-
id: 10217,
|
|
7544
|
-
mass: 3600000,
|
|
7527
|
+
id: 10218,
|
|
7528
|
+
mass: 2400000,
|
|
7545
7529
|
type: "entity",
|
|
7546
7530
|
tier: 1
|
|
7547
7531
|
},
|
|
@@ -7626,14 +7610,20 @@ var items = [
|
|
|
7626
7610
|
tier: 2
|
|
7627
7611
|
},
|
|
7628
7612
|
{
|
|
7629
|
-
id:
|
|
7630
|
-
mass:
|
|
7613
|
+
id: 20212,
|
|
7614
|
+
mass: 4320000,
|
|
7631
7615
|
type: "entity",
|
|
7632
7616
|
tier: 2
|
|
7633
7617
|
},
|
|
7634
7618
|
{
|
|
7635
|
-
id:
|
|
7636
|
-
mass:
|
|
7619
|
+
id: 20213,
|
|
7620
|
+
mass: 5760000,
|
|
7621
|
+
type: "entity",
|
|
7622
|
+
tier: 2
|
|
7623
|
+
},
|
|
7624
|
+
{
|
|
7625
|
+
id: 20214,
|
|
7626
|
+
mass: 5760000,
|
|
7637
7627
|
type: "entity",
|
|
7638
7628
|
tier: 2
|
|
7639
7629
|
}
|
|
@@ -7911,14 +7901,9 @@ const itemMetadata = {
|
|
|
7911
7901
|
description: 'A cargo ship built around a large storage hold. The extra mass makes it slower than a Roustabout.',
|
|
7912
7902
|
color: '#4AE898',
|
|
7913
7903
|
},
|
|
7914
|
-
|
|
7915
|
-
name: '
|
|
7916
|
-
description: 'A
|
|
7917
|
-
color: '#4AE898',
|
|
7918
|
-
},
|
|
7919
|
-
10217: {
|
|
7920
|
-
name: 'Dredger',
|
|
7921
|
-
description: 'A gathering ship with its own storage hold, so it can keep mining before it has to offload.',
|
|
7904
|
+
10218: {
|
|
7905
|
+
name: 'Smith',
|
|
7906
|
+
description: 'A crafting ship. One engine, one power core, and a fabricator for crafting away from home.',
|
|
7922
7907
|
color: '#4AE898',
|
|
7923
7908
|
},
|
|
7924
7909
|
20001: {
|
|
@@ -7986,14 +7971,19 @@ const itemMetadata = {
|
|
|
7986
7971
|
description: 'Advanced cargo container with improved capacity formulas.',
|
|
7987
7972
|
color: '#9BADB8',
|
|
7988
7973
|
},
|
|
7989
|
-
|
|
7974
|
+
20212: {
|
|
7990
7975
|
name: 'Prospector',
|
|
7991
|
-
description: '
|
|
7976
|
+
description: 'The tier 2 Prospector. The same three systems, ready for tier 2 modules.',
|
|
7992
7977
|
color: '#4AE898',
|
|
7993
7978
|
},
|
|
7994
|
-
|
|
7995
|
-
name: '
|
|
7996
|
-
description: '
|
|
7979
|
+
20213: {
|
|
7980
|
+
name: 'Prospector',
|
|
7981
|
+
description: 'A tier 2 Prospector with an auxiliary system for extra power, mobility, or endurance.',
|
|
7982
|
+
color: '#4AE898',
|
|
7983
|
+
},
|
|
7984
|
+
20214: {
|
|
7985
|
+
name: 'Dredger',
|
|
7986
|
+
description: 'A gathering ship that stores what it digs. Its limpet bay works alongside a cargo hold.',
|
|
7997
7987
|
color: '#4AE898',
|
|
7998
7988
|
},
|
|
7999
7989
|
};
|
|
@@ -8005,8 +7995,7 @@ const entityMetadata = {
|
|
|
8005
7995
|
10213: { moduleSlotLabels: ['Power Core', 'Engine', 'Assembly Arm'] },
|
|
8006
7996
|
10214: { moduleSlotLabels: ['Power Core', 'Engine', 'Tractor Beam'] },
|
|
8007
7997
|
10215: { moduleSlotLabels: ['Power Core', 'Engine', 'Cargo Hold'] },
|
|
8008
|
-
|
|
8009
|
-
10217: { moduleSlotLabels: ['Power Core', 'Engine', 'Limpet Bay', 'Cargo Hold'] },
|
|
7998
|
+
10218: { moduleSlotLabels: ['Power Core', 'Engine', 'Fabricator'] },
|
|
8010
7999
|
10202: {
|
|
8011
8000
|
moduleSlotLabels: ['Shuttle Bay', 'Cargo Hold', 'Cargo Hold', 'Cargo Hold', 'Cargo Hold'],
|
|
8012
8001
|
},
|
|
@@ -8018,8 +8007,9 @@ const entityMetadata = {
|
|
|
8018
8007
|
moduleSlotLabels: ['Fabricator', 'Fabricator', 'Fabricator', 'Fabricator', 'Fabricator'],
|
|
8019
8008
|
},
|
|
8020
8009
|
10209: { moduleSlotLabels: ['Power Core', 'Assembly Arm'] },
|
|
8021
|
-
|
|
8022
|
-
|
|
8010
|
+
20212: { moduleSlotLabels: ['Power Core', 'Engine', 'Limpet Bay'] },
|
|
8011
|
+
20213: { moduleSlotLabels: ['Power Core', 'Engine', 'Auxiliary System', 'Limpet Bay'] },
|
|
8012
|
+
20214: { moduleSlotLabels: ['Power Core', 'Engine', 'Limpet Bay', 'Cargo Hold'] },
|
|
8023
8013
|
};
|
|
8024
8014
|
for (const item of items) {
|
|
8025
8015
|
if (!itemMetadata[item.id]) {
|
|
@@ -10963,14 +10953,9 @@ var templates = [
|
|
|
10963
10953
|
displayLabel: "Porter"
|
|
10964
10954
|
},
|
|
10965
10955
|
{
|
|
10966
|
-
itemId:
|
|
10967
|
-
kind: "ship",
|
|
10968
|
-
displayLabel: "Wrangler"
|
|
10969
|
-
},
|
|
10970
|
-
{
|
|
10971
|
-
itemId: 10217,
|
|
10956
|
+
itemId: 10218,
|
|
10972
10957
|
kind: "ship",
|
|
10973
|
-
displayLabel: "
|
|
10958
|
+
displayLabel: "Smith"
|
|
10974
10959
|
},
|
|
10975
10960
|
{
|
|
10976
10961
|
itemId: 10202,
|
|
@@ -11023,14 +11008,19 @@ var templates = [
|
|
|
11023
11008
|
displayLabel: ""
|
|
11024
11009
|
},
|
|
11025
11010
|
{
|
|
11026
|
-
itemId:
|
|
11011
|
+
itemId: 20212,
|
|
11027
11012
|
kind: "ship",
|
|
11028
11013
|
displayLabel: "Prospector"
|
|
11029
11014
|
},
|
|
11030
11015
|
{
|
|
11031
|
-
itemId:
|
|
11016
|
+
itemId: 20213,
|
|
11032
11017
|
kind: "ship",
|
|
11033
|
-
displayLabel: "
|
|
11018
|
+
displayLabel: "Prospector"
|
|
11019
|
+
},
|
|
11020
|
+
{
|
|
11021
|
+
itemId: 20214,
|
|
11022
|
+
kind: "ship",
|
|
11023
|
+
displayLabel: "Dredger"
|
|
11034
11024
|
}
|
|
11035
11025
|
];
|
|
11036
11026
|
var kindRegistryJson = {
|
|
@@ -12624,6 +12614,24 @@ function keyForRecipeInputStat(recipe, inputIndex, statIndex) {
|
|
|
12624
12614
|
const innerKeys = getItemStatKeys(input.itemId);
|
|
12625
12615
|
return innerKeys[statIndex] ?? '';
|
|
12626
12616
|
}
|
|
12617
|
+
function usedInputStatKeys(outputItemId) {
|
|
12618
|
+
const recipe = getRecipe(outputItemId);
|
|
12619
|
+
if (!recipe)
|
|
12620
|
+
return [];
|
|
12621
|
+
const usedIdx = recipe.inputs.map(() => new Set());
|
|
12622
|
+
for (const slot of recipe.statSlots) {
|
|
12623
|
+
for (const src of slot.sources) {
|
|
12624
|
+
usedIdx[src.inputIndex]?.add(src.statIndex);
|
|
12625
|
+
}
|
|
12626
|
+
}
|
|
12627
|
+
return recipe.inputs.map((input, i) => {
|
|
12628
|
+
const keys = getItemStatKeys(input.itemId);
|
|
12629
|
+
return [...usedIdx[i]]
|
|
12630
|
+
.sort((a, b) => a - b)
|
|
12631
|
+
.map((idx) => keys[idx] ?? '')
|
|
12632
|
+
.filter(Boolean);
|
|
12633
|
+
});
|
|
12634
|
+
}
|
|
12627
12635
|
function decodeCraftedItemStats(itemId, stats) {
|
|
12628
12636
|
const keys = getItemStatKeys(itemId);
|
|
12629
12637
|
const result = {};
|
|
@@ -13417,7 +13425,13 @@ const MODULE_STORAGE = 8;
|
|
|
13417
13425
|
const MODULE_HAULER = 9;
|
|
13418
13426
|
const MODULE_BATTERY = 10;
|
|
13419
13427
|
const MODULE_BUILDER = 12;
|
|
13428
|
+
const MODULE_AUX = 13;
|
|
13420
13429
|
function moduleAccepts(slotType, moduleType) {
|
|
13430
|
+
if (slotType === MODULE_AUX) {
|
|
13431
|
+
return (moduleType === MODULE_GENERATOR ||
|
|
13432
|
+
moduleType === MODULE_ENGINE ||
|
|
13433
|
+
moduleType === MODULE_BATTERY);
|
|
13434
|
+
}
|
|
13421
13435
|
return slotType === MODULE_ANY || slotType === moduleType;
|
|
13422
13436
|
}
|
|
13423
13437
|
function getModuleCapabilityType(itemId) {
|
|
@@ -13479,6 +13493,8 @@ function moduleSlotTypeToCode(slotType) {
|
|
|
13479
13493
|
return MODULE_HAULER;
|
|
13480
13494
|
case 'battery':
|
|
13481
13495
|
return MODULE_BATTERY;
|
|
13496
|
+
case 'aux':
|
|
13497
|
+
return MODULE_AUX;
|
|
13482
13498
|
default:
|
|
13483
13499
|
return MODULE_ANY;
|
|
13484
13500
|
}
|
|
@@ -16469,22 +16485,20 @@ function entityDisplayName(itemId) {
|
|
|
16469
16485
|
switch (itemId) {
|
|
16470
16486
|
case ITEM_SHIP_T1_PACKED:
|
|
16471
16487
|
return 'Ship';
|
|
16472
|
-
case
|
|
16488
|
+
case ITEM_ROUSTABOUT_T1A_PACKED:
|
|
16473
16489
|
return 'Roustabout';
|
|
16474
|
-
case
|
|
16490
|
+
case ITEM_PROSPECTOR_T1A_PACKED:
|
|
16475
16491
|
return 'Prospector';
|
|
16476
|
-
case
|
|
16492
|
+
case ITEM_TENDER_T1A_PACKED:
|
|
16477
16493
|
return 'Tender';
|
|
16478
|
-
case
|
|
16494
|
+
case ITEM_TUG_T1A_PACKED:
|
|
16479
16495
|
return 'Tug';
|
|
16480
|
-
case
|
|
16496
|
+
case ITEM_PORTER_T1A_PACKED:
|
|
16481
16497
|
return 'Porter';
|
|
16482
|
-
case
|
|
16483
|
-
return 'Wrangler';
|
|
16484
|
-
case ITEM_WRIGHT_T1_PACKED:
|
|
16498
|
+
case ITEM_WRIGHT_T1A_PACKED:
|
|
16485
16499
|
return 'Wright';
|
|
16486
|
-
case
|
|
16487
|
-
return '
|
|
16500
|
+
case ITEM_SMITH_T1A_PACKED:
|
|
16501
|
+
return 'Smith';
|
|
16488
16502
|
case ITEM_WAREHOUSE_T1_PACKED:
|
|
16489
16503
|
return 'Warehouse';
|
|
16490
16504
|
case ITEM_EXTRACTOR_T1_PACKED:
|
|
@@ -16497,10 +16511,12 @@ function entityDisplayName(itemId) {
|
|
|
16497
16511
|
return 'Container';
|
|
16498
16512
|
case ITEM_CONTAINER_T2_PACKED:
|
|
16499
16513
|
return 'Container';
|
|
16500
|
-
case
|
|
16514
|
+
case ITEM_PROSPECTOR_T2A_PACKED:
|
|
16501
16515
|
return 'Prospector';
|
|
16502
|
-
case
|
|
16503
|
-
return '
|
|
16516
|
+
case ITEM_PROSPECTOR_T2B_PACKED:
|
|
16517
|
+
return 'Prospector';
|
|
16518
|
+
case ITEM_DREDGER_T2A_PACKED:
|
|
16519
|
+
return 'Dredger';
|
|
16504
16520
|
default:
|
|
16505
16521
|
return 'Entity';
|
|
16506
16522
|
}
|
|
@@ -18870,6 +18886,18 @@ function composeIdleResolve(blocker, action, actions, now, lookupCounterpart) {
|
|
|
18870
18886
|
return [...ids.map((id) => actions.resolve(id)), action];
|
|
18871
18887
|
}
|
|
18872
18888
|
|
|
18889
|
+
const INCOMING_COUPLING_KINDS = new Set([HoldKind.PUSH, HoldKind.GATHER, HoldKind.FLIGHT]);
|
|
18890
|
+
function isIncomingCouplingKind(kind) {
|
|
18891
|
+
return INCOMING_COUPLING_KINDS.has(kind);
|
|
18892
|
+
}
|
|
18893
|
+
function calcCounterpartDelivery(task, coupling) {
|
|
18894
|
+
if (!isIncomingCouplingKind(coupling.kind.toNumber()))
|
|
18895
|
+
return [];
|
|
18896
|
+
if (task.type.toNumber() === TaskType.CRAFT) {
|
|
18897
|
+
return task.cargo.length === 0 ? [] : [task.cargo[task.cargo.length - 1]];
|
|
18898
|
+
}
|
|
18899
|
+
return task.cargo;
|
|
18900
|
+
}
|
|
18873
18901
|
function taskCargoEffect(task) {
|
|
18874
18902
|
switch (task.type.toNumber()) {
|
|
18875
18903
|
case TaskType.LOAD:
|
|
@@ -18877,6 +18905,7 @@ function taskCargoEffect(task) {
|
|
|
18877
18905
|
case TaskType.UNDEPLOY:
|
|
18878
18906
|
return { added: task.cargo, removed: [] };
|
|
18879
18907
|
case TaskType.UNLOAD:
|
|
18908
|
+
case TaskType.UPGRADE:
|
|
18880
18909
|
return { added: [], removed: task.cargo };
|
|
18881
18910
|
case TaskType.GATHER:
|
|
18882
18911
|
return task.couplings.length > 0
|
|
@@ -18893,19 +18922,23 @@ function taskCargoEffect(task) {
|
|
|
18893
18922
|
return { added: [], removed: [] };
|
|
18894
18923
|
}
|
|
18895
18924
|
}
|
|
18896
|
-
function
|
|
18897
|
-
const base = `${
|
|
18898
|
-
const
|
|
18899
|
-
const entityId = item.entity_id?.toString();
|
|
18900
|
-
const normalizedEntityId = entityId && entityId !== '0' ? entityId : '';
|
|
18925
|
+
function refKey(itemId, stats, modules, entityId) {
|
|
18926
|
+
const base = `${itemId}:${stats.toString()}`;
|
|
18927
|
+
const normalizedEntityId = entityId !== '0' ? entityId : '';
|
|
18901
18928
|
if (modules.length === 0 && normalizedEntityId === '')
|
|
18902
18929
|
return base;
|
|
18903
18930
|
return `${base}:modules=${JSON.stringify(modules)}:entity=${normalizedEntityId}`;
|
|
18904
18931
|
}
|
|
18932
|
+
function cargoKey(item) {
|
|
18933
|
+
return refKey(item.item_id.toNumber(), BigInt(item.stats.toString()), item.modules ?? [], item.entity_id?.toString() ?? '');
|
|
18934
|
+
}
|
|
18935
|
+
function cargoInputKey(input) {
|
|
18936
|
+
return refKey(input.itemId, input.stats, input.modules ?? [], '');
|
|
18937
|
+
}
|
|
18905
18938
|
function cargoQuantity(item) {
|
|
18906
18939
|
return BigInt(item.quantity.toString());
|
|
18907
18940
|
}
|
|
18908
|
-
function projectedCargoAvailableAt(entity, at) {
|
|
18941
|
+
function projectedCargoAvailableAt(entity, at, incoming = []) {
|
|
18909
18942
|
const avail = new Map();
|
|
18910
18943
|
for (const item of entity.cargo) {
|
|
18911
18944
|
const key = cargoKey(item);
|
|
@@ -18920,6 +18953,14 @@ function projectedCargoAvailableAt(entity, at) {
|
|
|
18920
18953
|
avail.set(key, (avail.get(key) ?? 0n) + cargoQuantity(item));
|
|
18921
18954
|
}
|
|
18922
18955
|
}
|
|
18956
|
+
for (const src of incoming) {
|
|
18957
|
+
if (src.until.getTime() >= at.getTime())
|
|
18958
|
+
continue;
|
|
18959
|
+
for (const item of src.items) {
|
|
18960
|
+
const key = cargoKey(item);
|
|
18961
|
+
avail.set(key, (avail.get(key) ?? 0n) + cargoQuantity(item));
|
|
18962
|
+
}
|
|
18963
|
+
}
|
|
18923
18964
|
for (const ordered of tasks) {
|
|
18924
18965
|
for (const item of taskCargoEffect(ordered.task).removed) {
|
|
18925
18966
|
const key = cargoKey(item);
|
|
@@ -18930,17 +18971,40 @@ function projectedCargoAvailableAt(entity, at) {
|
|
|
18930
18971
|
}
|
|
18931
18972
|
return avail;
|
|
18932
18973
|
}
|
|
18933
|
-
function cargoReadyAt(entity,
|
|
18934
|
-
|
|
18974
|
+
function cargoReadyAt(entity, inputs, incoming = []) {
|
|
18975
|
+
const demand = new Map();
|
|
18976
|
+
for (const input of inputs) {
|
|
18977
|
+
const key = cargoInputKey(input);
|
|
18978
|
+
demand.set(key, (demand.get(key) ?? 0n) + BigInt(input.quantity));
|
|
18979
|
+
}
|
|
18980
|
+
const candidates = [0];
|
|
18935
18981
|
for (const ordered of orderedTasks(entity)) {
|
|
18936
18982
|
for (const item of taskCargoEffect(ordered.task).added) {
|
|
18937
|
-
if (
|
|
18938
|
-
|
|
18983
|
+
if (demand.has(cargoKey(item))) {
|
|
18984
|
+
candidates.push(ordered.completesAt.getTime());
|
|
18939
18985
|
break;
|
|
18940
18986
|
}
|
|
18941
18987
|
}
|
|
18942
18988
|
}
|
|
18943
|
-
|
|
18989
|
+
for (const src of incoming) {
|
|
18990
|
+
if (src.items.some((item) => demand.has(cargoKey(item)))) {
|
|
18991
|
+
candidates.push(src.until.getTime());
|
|
18992
|
+
}
|
|
18993
|
+
}
|
|
18994
|
+
candidates.sort((a, b) => a - b);
|
|
18995
|
+
for (const candidateMs of candidates) {
|
|
18996
|
+
const available = projectedCargoAvailableAt(entity, new Date(candidateMs + 1), incoming);
|
|
18997
|
+
let sufficient = true;
|
|
18998
|
+
for (const [key, quantity] of demand) {
|
|
18999
|
+
if ((available.get(key) ?? 0n) < quantity) {
|
|
19000
|
+
sufficient = false;
|
|
19001
|
+
break;
|
|
19002
|
+
}
|
|
19003
|
+
}
|
|
19004
|
+
if (sufficient)
|
|
19005
|
+
return new Date(candidateMs);
|
|
19006
|
+
}
|
|
19007
|
+
return new Date(candidates[candidates.length - 1]);
|
|
18944
19008
|
}
|
|
18945
19009
|
function availableForItem(avail, itemId) {
|
|
18946
19010
|
const prefix = `${itemId}:`;
|
|
@@ -18959,6 +19023,7 @@ var CancelBlockReason;
|
|
|
18959
19023
|
CancelBlockReason["DONE"] = "DONE";
|
|
18960
19024
|
CancelBlockReason["CONTAINS_LINKED_TASK"] = "CONTAINS_LINKED_TASK";
|
|
18961
19025
|
CancelBlockReason["WOULD_STRAND"] = "WOULD_STRAND";
|
|
19026
|
+
CancelBlockReason["WOULD_STRAND_COUNTERPART"] = "WOULD_STRAND_COUNTERPART";
|
|
18962
19027
|
CancelBlockReason["WOULD_OVERFILL"] = "WOULD_OVERFILL";
|
|
18963
19028
|
CancelBlockReason["NOT_OWNER"] = "NOT_OWNER";
|
|
18964
19029
|
})(CancelBlockReason || (CancelBlockReason = {}));
|
|
@@ -18969,14 +19034,16 @@ function postCancelEntity(entity, laneKey, fromTaskIndex) {
|
|
|
18969
19034
|
lane.schedule.tasks = lane.schedule.tasks.slice(0, fromTaskIndex);
|
|
18970
19035
|
return clone;
|
|
18971
19036
|
}
|
|
18972
|
-
function
|
|
18973
|
-
const ordered = orderedTasks(
|
|
19037
|
+
function queueFeasible(entity, incoming = []) {
|
|
19038
|
+
const ordered = orderedTasks(entity);
|
|
18974
19039
|
const base = new Map();
|
|
18975
|
-
for (const c of
|
|
19040
|
+
for (const c of entity.cargo ?? []) {
|
|
18976
19041
|
const k = cargoKey(c);
|
|
18977
19042
|
base.set(k, (base.get(k) ?? 0) + c.quantity.toNumber());
|
|
18978
19043
|
}
|
|
18979
|
-
const isConsumer = (t) => t.type.toNumber() === TaskType.CRAFT ||
|
|
19044
|
+
const isConsumer = (t) => t.type.toNumber() === TaskType.CRAFT ||
|
|
19045
|
+
t.type.toNumber() === TaskType.UNLOAD ||
|
|
19046
|
+
t.type.toNumber() === TaskType.UPGRADE;
|
|
18980
19047
|
for (const self of ordered) {
|
|
18981
19048
|
if (!isConsumer(self.task))
|
|
18982
19049
|
continue;
|
|
@@ -18988,6 +19055,13 @@ function feasibleAfterCancel(post) {
|
|
|
18988
19055
|
map.set(cargoKey(out), (map.get(cargoKey(out)) ?? 0) + out.quantity.toNumber());
|
|
18989
19056
|
}
|
|
18990
19057
|
}
|
|
19058
|
+
for (const src of incoming) {
|
|
19059
|
+
if (src.until.getTime() >= self.completesAt.getTime())
|
|
19060
|
+
continue;
|
|
19061
|
+
for (const item of src.items) {
|
|
19062
|
+
map.set(cargoKey(item), (map.get(cargoKey(item)) ?? 0) + item.quantity.toNumber());
|
|
19063
|
+
}
|
|
19064
|
+
}
|
|
18991
19065
|
for (const other of ordered) {
|
|
18992
19066
|
if (other === self)
|
|
18993
19067
|
continue;
|
|
@@ -19001,6 +19075,11 @@ function feasibleAfterCancel(post) {
|
|
|
19001
19075
|
return false;
|
|
19002
19076
|
}
|
|
19003
19077
|
}
|
|
19078
|
+
return true;
|
|
19079
|
+
}
|
|
19080
|
+
function feasibleAfterCancel(post) {
|
|
19081
|
+
if (!queueFeasible(post))
|
|
19082
|
+
return false;
|
|
19004
19083
|
try {
|
|
19005
19084
|
validateSchedule(post);
|
|
19006
19085
|
}
|
|
@@ -19058,6 +19137,35 @@ function cancelEligibility(entity, laneKey, fromTaskIndex, input) {
|
|
|
19058
19137
|
const post = postCancelEntity(entity, laneKey, fromTaskIndex);
|
|
19059
19138
|
if (!feasibleAfterCancel(post))
|
|
19060
19139
|
return block(CancelBlockReason.WOULD_STRAND);
|
|
19140
|
+
const releasedByCounterpart = new Map();
|
|
19141
|
+
for (const i of taskIndices) {
|
|
19142
|
+
for (const c of tasks[i].couplings ?? []) {
|
|
19143
|
+
if (!isIncomingCouplingKind(c.kind.toNumber()))
|
|
19144
|
+
continue;
|
|
19145
|
+
const id = c.counterpart.entity_id.toString();
|
|
19146
|
+
const entry = releasedByCounterpart.get(id) ?? {
|
|
19147
|
+
counterpart: c.counterpart,
|
|
19148
|
+
holdIds: new Set(),
|
|
19149
|
+
};
|
|
19150
|
+
entry.holdIds.add(c.hold.toString());
|
|
19151
|
+
releasedByCounterpart.set(id, entry);
|
|
19152
|
+
}
|
|
19153
|
+
}
|
|
19154
|
+
for (const [counterpartId, released] of releasedByCounterpart) {
|
|
19155
|
+
const counterpart = input.counterparts?.get(counterpartId);
|
|
19156
|
+
if (!counterpart)
|
|
19157
|
+
continue;
|
|
19158
|
+
const incoming = (input.counterpartIncoming?.get(counterpartId) ?? []).filter((src) => !released.holdIds.has(src.holdId));
|
|
19159
|
+
if (!queueFeasible(counterpart, incoming)) {
|
|
19160
|
+
return {
|
|
19161
|
+
ok: false,
|
|
19162
|
+
blockedReason: CancelBlockReason.WOULD_STRAND_COUNTERPART,
|
|
19163
|
+
blockedByCounterpart: released.counterpart,
|
|
19164
|
+
range,
|
|
19165
|
+
effects: { ...EMPTY_EFFECTS },
|
|
19166
|
+
};
|
|
19167
|
+
}
|
|
19168
|
+
}
|
|
19061
19169
|
const effects = { refunds: [], releasedHolds: [], abandonsRunning: false };
|
|
19062
19170
|
let energyForfeited = 0;
|
|
19063
19171
|
for (const i of taskIndices) {
|
|
@@ -19207,7 +19315,24 @@ function receiveFits(dest, item, now) {
|
|
|
19207
19315
|
return peak <= capacity;
|
|
19208
19316
|
}
|
|
19209
19317
|
|
|
19210
|
-
function
|
|
19318
|
+
function itemReadyAt(entity, itemIds, incoming) {
|
|
19319
|
+
let readyMs = 0;
|
|
19320
|
+
for (const ordered of orderedTasks(entity)) {
|
|
19321
|
+
for (const item of taskCargoEffect(ordered.task).added) {
|
|
19322
|
+
if (itemIds.includes(item.item_id.toNumber())) {
|
|
19323
|
+
readyMs = Math.max(readyMs, ordered.completesAt.getTime());
|
|
19324
|
+
break;
|
|
19325
|
+
}
|
|
19326
|
+
}
|
|
19327
|
+
}
|
|
19328
|
+
for (const src of incoming) {
|
|
19329
|
+
if (src.items.some((item) => itemIds.includes(item.item_id.toNumber()))) {
|
|
19330
|
+
readyMs = Math.max(readyMs, src.until.getTime());
|
|
19331
|
+
}
|
|
19332
|
+
}
|
|
19333
|
+
return new Date(readyMs);
|
|
19334
|
+
}
|
|
19335
|
+
function maxCraftable(entity, recipe, crafterSpeed, now, incoming = []) {
|
|
19211
19336
|
if (recipe.inputs.length === 0)
|
|
19212
19337
|
return 0;
|
|
19213
19338
|
const perUnitMass = recipe.inputs.reduce((sum, input) => sum + getItem(input.itemId).mass * input.quantity, 0);
|
|
@@ -19215,9 +19340,9 @@ function maxCraftable(entity, recipe, crafterSpeed, now) {
|
|
|
19215
19340
|
const crafterLane = workerLaneKey(entity.modules, 'crafter', entity.lanes ?? []);
|
|
19216
19341
|
const naiveCompletesAt = candidateLaneCompletesAt(entity, crafterLane, perUnitDuration, now);
|
|
19217
19342
|
const laneStartMs = naiveCompletesAt.getTime() - perUnitDuration * 1000;
|
|
19218
|
-
const readyMs =
|
|
19343
|
+
const readyMs = itemReadyAt(entity, recipe.inputs.map((input) => input.itemId), incoming).getTime();
|
|
19219
19344
|
const completesAt = new Date(Math.max(laneStartMs, readyMs) + perUnitDuration * 1000);
|
|
19220
|
-
const availability = projectedCargoAvailableAt(entity, completesAt);
|
|
19345
|
+
const availability = projectedCargoAvailableAt(entity, completesAt, incoming);
|
|
19221
19346
|
let maxUnits;
|
|
19222
19347
|
for (const input of recipe.inputs) {
|
|
19223
19348
|
if (input.quantity <= 0)
|
|
@@ -20082,6 +20207,16 @@ function computeCapabilityGroup(moduleType, stats, tier, outputPct = 100) {
|
|
|
20082
20207
|
],
|
|
20083
20208
|
};
|
|
20084
20209
|
}
|
|
20210
|
+
case MODULE_BUILDER: {
|
|
20211
|
+
const caps = computeBuilderCapabilities(stats);
|
|
20212
|
+
return {
|
|
20213
|
+
capability: 'Build',
|
|
20214
|
+
attributes: [
|
|
20215
|
+
{ label: 'Speed', value: caps.speed },
|
|
20216
|
+
{ label: 'Drain', value: toWholeEnergy$1(caps.drain) },
|
|
20217
|
+
],
|
|
20218
|
+
};
|
|
20219
|
+
}
|
|
20085
20220
|
case MODULE_HAULER: {
|
|
20086
20221
|
const caps = computeHaulerCapabilities(stats, tier);
|
|
20087
20222
|
return {
|
|
@@ -20938,5 +21073,5 @@ function planParallelTransfer(entity, target) {
|
|
|
20938
21073
|
return allocateProportional(laneWeights, requestedQty).filter((e) => e.quantity > 0);
|
|
20939
21074
|
}
|
|
20940
21075
|
|
|
20941
|
-
export { ALL_ENTITY_TYPES, ATOMICASSETS_ACCOUNT, ActionsManager, BASE_HAUL_PENALTY_MILLI$1 as BASE_HAUL_PENALTY_MILLI, BASE_ORBITAL_MASS, BLEND_INPUTS_MUST_MATCH, BLEND_REQUIRES_MULTIPLE, BLEND_STAT_LESS_NOT_SUPPORTED, CANCEL_CONTAINS_GROUPED_TASK, CAPACITY_TIER_TABLE, CAP_DEMOLISH, CAP_MODULES, CAP_UNDEPLOY, CAP_WRAP, CATEGORY_LABELS, COMMIT_ALREADY_SET, COMMIT_CANNOT_MATCH, COMMIT_NOT_SET, COMPANY_NOT_FOUND, COMPONENT_TIER_PREFIXES, CONTAINER_NOT_FOUND, CONTAINER_Z, COORD_MAX, COORD_MIN, COORD_OFFSET, CRAFT_ENERGY_DIVISOR, CRAFT_EXCEEDS_ENERGY_CAPACITY, CRAFT_NOT_ENOUGH_ENERGY, CancelBlockReason, ClusterManager, ConstructionManager, Coordinates, DEFAULT_BASE_HULLMASS, DEPLOY_ENTITY_HAS_SCHEDULE, DEPTH_THRESHOLD_T1, DEPTH_THRESHOLD_T2, DEPTH_THRESHOLD_T3, DEPTH_THRESHOLD_T4, DEPTH_THRESHOLD_T5, DESTINATION_CAPACITY_EXCEEDED, ENGINE_DRAIN_BASE, ENGINE_DRAIN_REF_THM, ENGINE_DRAIN_REF_THRUST, ENTITY_ALREADY_THERE, ENTITY_CAPACITY_EXCEEDED, ENTITY_CARGO_NOT_LOADED, ENTITY_CARGO_NOT_OWNED, ENTITY_CONSTRUCTION_DOCK, ENTITY_CONTAINER, ENTITY_EXTRACTOR, ENTITY_FACTORY, ENTITY_HUB, ENTITY_INVALID_CARGO, ENTITY_INVALID_DESTINATION, ENTITY_INVALID_TRAVEL_DURATION, ENTITY_NEXUS, ENTITY_NOT_ENOUGH_ENERGY, ENTITY_NOT_ENOUGH_ENERGY_CAPACITY, ENTITY_NO_CRAFTER, ENTITY_SHIP, ENTITY_WAREHOUSE, ENTITY_WORKSHOP, EPOCH_NON_ZERO, EPOCH_NOT_READY, ERROR_SYSTEM_ALREADY_INITIALIZED, ERROR_SYSTEM_DISABLED, ERROR_SYSTEM_NOT_INITIALIZED, EntitiesManager, Entity, EntityClass, EntityInventory, EpochsManager, GAME_NOT_FOUND, GAME_SEED_NOT_SET, GATHERER_DEPTH_MAX_TIER, GATHERER_DEPTH_TABLE, GATHER_EXCEEDS_ENERGY_CAPACITY, GATHER_MASS_DIVISOR, GATHER_NOT_ENOUGH_ENERGY, GROUP_DUPLICATE_ENTITY, GROUP_EMPTY, GROUP_ENTITY_NOT_MOVABLE, GROUP_HAUL_CAPACITY_EXCEEDED, GROUP_NOT_FOUND, GROUP_NOT_SAME_LOCATION, GROUP_NOT_SAME_OWNER, GROUP_NO_THRUST, GameState, HAULER_EFFICIENCY_DENOM$1 as HAULER_EFFICIENCY_DENOM, HoldKind, INSUFFICIENT_BALANCE, INSUFFICIENT_ITEM_QUANTITY, INSUFFICIENT_ITEM_SUPPLY, INVALID_AMOUNT, ITEM_BATTERY_T1, ITEM_BEAM, ITEM_BEAM_T2, ITEM_BIOMASS_T1, ITEM_BIOMASS_T10, ITEM_BIOMASS_T2, ITEM_BIOMASS_T3, ITEM_BIOMASS_T4, ITEM_BIOMASS_T5, ITEM_BIOMASS_T6, ITEM_BIOMASS_T7, ITEM_BIOMASS_T8, ITEM_BIOMASS_T9, ITEM_BUILDER_T1, ITEM_CERAMIC, ITEM_CERAMIC_T2, ITEM_CONSTRUCTION_DOCK_T1_PACKED, ITEM_CONTAINER_T1_PACKED, ITEM_CONTAINER_T2_PACKED, ITEM_CRAFTER_T1, ITEM_CRYSTAL_T1, ITEM_CRYSTAL_T10, ITEM_CRYSTAL_T2, ITEM_CRYSTAL_T3, ITEM_CRYSTAL_T4, ITEM_CRYSTAL_T5, ITEM_CRYSTAL_T6, ITEM_CRYSTAL_T7, ITEM_CRYSTAL_T8, ITEM_CRYSTAL_T9, ITEM_DOES_NOT_EXIST, ITEM_DREDGER_T1_PACKED, ITEM_ENGINE_T1, ITEM_EXTRACTOR_T1_PACKED, ITEM_FACTORY_T1_PACKED, ITEM_FRAME, ITEM_FRAME_T2, ITEM_GAS_T1, ITEM_GAS_T10, ITEM_GAS_T2, ITEM_GAS_T3, ITEM_GAS_T4, ITEM_GAS_T5, ITEM_GAS_T6, ITEM_GAS_T7, ITEM_GAS_T8, ITEM_GAS_T9, ITEM_GATHERER_T1, ITEM_GATHERER_T2, ITEM_GENERATOR_T1, ITEM_HAULER_SHIP_T2_PACKED, ITEM_HAULER_T1, ITEM_HAULER_T2, ITEM_HUB_T1_PACKED, ITEM_LAUNCHER_T1, ITEM_LOADER_T1, ITEM_MASS_CATCHER_T1_PACKED, ITEM_MASS_DRIVER_T1_PACKED, ITEM_NOT_AVAILABLE_AT_LOCATION, ITEM_NOT_DEPLOYABLE, ITEM_NOT_PACKED_ENTITY, ITEM_ORE_T1, ITEM_ORE_T10, ITEM_ORE_T2, ITEM_ORE_T3, ITEM_ORE_T4, ITEM_ORE_T5, ITEM_ORE_T6, ITEM_ORE_T7, ITEM_ORE_T8, ITEM_ORE_T9, ITEM_PLASMA_CELL, ITEM_PLASMA_CELL_T2, ITEM_PLATE, ITEM_PLATE_T2, ITEM_POLYMER, ITEM_POLYMER_T2, ITEM_PORTER_T1_PACKED, ITEM_PROSPECTOR_T1_PACKED, ITEM_PROSPECTOR_T2_PACKED, ITEM_REACTOR, ITEM_REACTOR_T2, ITEM_REGOLITH_T1, ITEM_REGOLITH_T10, ITEM_REGOLITH_T2, ITEM_REGOLITH_T3, ITEM_REGOLITH_T4, ITEM_REGOLITH_T5, ITEM_REGOLITH_T6, ITEM_REGOLITH_T7, ITEM_REGOLITH_T8, ITEM_REGOLITH_T9, ITEM_RESIN, ITEM_RESIN_T2, ITEM_RESONATOR, ITEM_RESONATOR_T2, ITEM_ROUSTABOUT_T1_PACKED, ITEM_SENSOR, ITEM_SENSOR_T2, ITEM_SHIP_T1_PACKED, ITEM_STORAGE_T1, ITEM_TENDER_T1_PACKED, ITEM_TUG_T1_PACKED, ITEM_TYPE_COMPONENT, ITEM_TYPE_ENTITY, ITEM_TYPE_MODULE, ITEM_TYPE_RESOURCE, ITEM_WAREHOUSE_T1_PACKED, ITEM_WARP_T1, ITEM_WORKSHOP_T1_PACKED, ITEM_WRANGLER_T1_PACKED, ITEM_WRIGHT_T1_PACKED, InventoryAccessor, JOB_QUEUE_CAP, LANE_BARRIER, LANE_MOBILITY, LOCAL_HALF, LOCATION_MAX_DEPTH, LOCATION_MIN_DEPTH, Location, LocationType, LocationsManager, MAX_LEGS, MAX_ORBITAL_ALTITUDE, MAX_STARS_PER_STAT, MAX_STAR_RATING, MIN_ORBITAL_ALTITUDE, MIN_TRANSFER_DISTANCE_ORBITAL_VESSEL, MIN_TRANSFER_DISTANCE_PLANETARY_STRUCTURE, MODULE_ANY, MODULE_BATTERY, MODULE_BUILDER, MODULE_CARGO_NOT_FOUND, MODULE_CRAFTER, MODULE_ENGINE, MODULE_ENTITY_BUSY, MODULE_GATHERER, MODULE_GENERATOR, MODULE_HAULER, MODULE_LAUNCHER, MODULE_LOADER, MODULE_NOT_MODULE, MODULE_SLOT_EMPTY, MODULE_SLOT_INVALID, MODULE_SLOT_OCCUPIED, MODULE_STAT_SCALING_ANCHOR, MODULE_STAT_SCALING_POST_ANCHOR_PERCENT, MODULE_STORAGE, MODULE_TIER_PREFIXES, MODULE_TYPE_MISMATCH, MODULE_WARP, index as NFT, NO_SCHEDULE, NftManager, PLANETARY_STRUCTURE_Z, PLANET_SUBTYPE_GAS_GIANT, PLANET_SUBTYPE_ICY, PLANET_SUBTYPE_INDUSTRIAL, PLANET_SUBTYPE_OCEAN, PLANET_SUBTYPE_ROCKY, PLANET_SUBTYPE_TERRESTRIAL, PLAYER_ALREADY_JOINED, PLAYER_NOT_FOUND, PLAYER_NOT_JOINED, PRECISION, platform as PlatformContract, Types$1 as PlatformTypes, Player, PlayersManager, RECIPE_INPUTS_EXCESS, RECIPE_INPUTS_INSUFFICIENT, RECIPE_INPUTS_INVALID, RECIPE_INPUTS_MIXED, RECIPE_NOT_FOUND, REGION_DIV, REGION_PER_AXIS, REQUIRES_MORE_THAN_ONE, REQUIRES_POSITIVE_VALUE, RESERVE_TIERS, RESOLVE_COUNT_EXCEEDS_COMPLETED, RESOURCE_TIER_ADJECTIVES, RESOURCE_TIER_MULT_TENTHS, RefitOp, SECTORS_PER_AXIS, SECTOR_DIV, SHIPLOAD_COLLECTION, SHIP_ALREADY_TRAVELING, SHIP_CANNOT_BUY_TRAVELING, SHIP_CANNOT_CANCEL_TASK, SHIP_CANNOT_UPDATE_TRAVELING, SHIP_NOT_ARRIVED, SHIP_NOT_FOUND, SHIP_NOT_IDLE, SHIP_NOT_OWNED, SHIP_NO_COMPLETED_TASKS, SHIP_NO_TASKS_TO_CANCEL, SLOT_FORMULAS, STAR_STEP, ScheduleAccessor, server as ServerContract, Types as ServerTypes, Shipload, SubscriptionsManager, TIER_ROLL_MAX, TRAVEL_MAX_DURATION, TaskCancelable, TaskType, WAREHOUSE_ALREADY_AT_LOCATION, WAREHOUSE_NOT_FOUND, WARP_HAS_CARGO, WARP_HAS_SCHEDULE, WARP_NOT_FULL_ENERGY, WARP_NO_CAPABILITY, WARP_OUT_OF_RANGE, WH, WOULD_OVERFILL, WOULD_STRAND, WebSocketConnection, YIELD_FRACTION_DEEP, YIELD_FRACTION_SHALLOW, addressFromCoordinates, allBuildableItems, allPlotBuildableItems, allocateProportional, applyCapacityTier, applyResourceTierMultiplier, availableBuildMethods, availableCapacity, availableCapacityFromMass, availableForItem, baseName, blendCargoStacks, blendComponentStacks, blendCrossGroup, blendStacks, buildComponentImmutable, buildEntityDescription, buildEntityImmutable, buildGatherPlan, buildImmutableData, buildMintAssetAction, buildModuleImmutable, buildResourceImmutable, calcCargoItemMass, calcCargoMass, calcEnergyUsage, calcStacksMass, calc_acceleration, calc_build_duration, calc_build_energy, calc_craft_duration, calc_craft_energy, calc_energyusage, calc_flighttime, calc_gather_duration, calc_gather_energy, calc_gather_rate, calc_group_flighttime, calc_loader_acceleration, calc_loader_flighttime, calc_onesided_duration, calc_orbital_altitude, calc_rechargetime, calc_ship_acceleration, calc_ship_flighttime, calc_ship_mass, calc_ship_rechargetime, calc_transfer_duration, calc_transit_duration, calc_travel_flighttime, calculateFlightTime, calculateLoadTimeBreakdown, calculateRefuelingTime, calculateTransferTime, canMove, cancelEligibility, candidateLaneCompletesAt, capabilityAttributes, capabilityNames, capacityTierMultiplier, capsHasCrafter, capsHasGatherer, capsHasHauler, capsHasLauncher, capsHasLoaders, capsHasMass, capsHasMovement, capsHasStorage, cargoItem, cargoItemToStack, cargoReadyAt, cargoRef, cargoUtils, categoryColors, categoryFromIndex, categoryLabel, categoryLabelFromIndex, compareByStars, componentIcon, composeIdleResolve, computeBaseCapacity, computeBaseCapacityContainer, computeBaseCapacityShip, computeBaseCapacityWarehouse, computeBaseHullmass$1 as computeBaseHullmass, computeBatteryCapabilities, computeBuilderCapabilities, computeBuilderDrain, computeBuilderSpeed, computeComponentStats, computeContainerCapabilities, computeCraftedOutputStats, computeCrafterCapabilities, computeCrafterDrain, computeCrafterSpeed, computeEffectiveModuleStat, computeEngineCapabilities, computeEngineDrain, computeEngineThrust, computeEntityCapabilities, computeEntityStats, computeFreeCells, computeGathererCapabilities, computeGathererDepth, computeGathererDrain, computeGathererYield, computeGeneratorCap, computeGeneratorCapabilities, computeGeneratorRech, computeGroupPerLegReach, computeHaulPenalty, computeHaulerCapabilities, computeHaulerCapacity, computeHaulerEfficiency, computeInputMass, computeLauncherCapabilities, computeLoaderCapabilities, computeLoaderMass, computeLoaderThrust, computeNftImageUrl, computePerLegReach, computeShipHullCapabilities, computeStorageCapabilities, computeTravelDrain, computeWarehouseHullCapabilities, computeWarpCapabilities, computeWarpRange, coordsToLocationId, createInventoryAccessor, createProjectedEntity, createScheduleAccessor, decodeAddress, decodeAtomicAsset, decodeCraftedItemStats, decodeRegion, decodeSector, decodeStat, decodeStats, Shipload as default, deriveLocation, deriveLocationSize, deriveLocationStatic, deriveResourceStats, deriveStatMappings, deriveStrata, deriveStratum, derivedLoaders, describeItem, describeModule, describeModuleForItem, describeModuleForSlot, deserializeAsset, deserializeAtomicData, deserializeComponent, deserializeEntity, deserializeModule, deserializeResource, displayName, distanceBetweenCoordinates, distanceBetweenPoints, easeFlightProgress, eligibleUpgrades, encodeAddress, encodeAddressMemo, encodeGatheredCargoStats, encodeRegion, encodeSector, encodeStats, energyAtTime, energyPercent, entityDisplayName, estimateDealTravelTime, estimateTravelTime, estimateUnwrapDuration, feistel, feistelInv, fetchAtomicAssetsForOwner, fetchAtomicSchemas, filterByBuildMethod, findNearbyPlanets, flightSpeedFactor, formatLocation, formatMass, formatMassDelta, formatMassScaled, formatModuleLine, formatTier, gatherEnergyCost, gathererDepthForTier, getAllRecipes, getBaseHullmassFor, getCapabilityAttributeRows, getCapabilityAttributes, getCategoryInfo, getComponentDemand, getComponents, getCurrentEpoch, getDepthThreshold, getDestinationLocation, getEffectiveReserve, getEligibleResources, getEntityClass, getEntityItems, getEntityLayout, getEpochInfo, getFlightOrigin, getInterpolatedPosition, getItem, getItems, getKindMeta, getLocationCandidates, getLocationKind, getLocationProfile, getLocationType, getLocationTypeName, getModuleCapabilityType, getModules, getPackedEntityType, getPlanetSubtype, getPlanetSubtypes, getPositionAt, getProducersForAttribute, getRecipe, getRecipeConsumers, getResourceDemand, getResourceTier, getResourceWeight, getResources, getStatDefinitions, getStatMappings, getStatMappingsForCapability, getStatMappingsForStat, getStatName, getSystemName, getTemplateMeta, hasEnergy, hasEnergyForDistance, hasGatherer, hasLoaders, hasMass, hasSchedule, hasSpace, hasSpaceForMass, hasStorage, hasSystem, hash, hash512, incomingHoldMass, interpolateFlightPosition, isBuildable, isConstructionDock, isContainer, isCraftedItem, isExtractor, isFactory, isFull, isFullFromMass, isGatherableLocation, isHub, isInvertedAttribute, isLocationBuildable, isModuleItem, isNexus, isPlot, isPlotBuildable, isRelatedItem, isShip, isSubscriptionsDebugEnabled, isValidWormholePair, isWarehouse, isWorkshop, itemAbbreviations, itemCategory, itemIds, itemOffset, itemTier, itemTypeCode, jobsToLanes, kindCan, laneKeyForModule, lerp$1 as lerp, makeEntity, mapEntity, maxCraftable, maxQtyForCharge, maxTravelDistance, mergeStacks, moduleAccepts, moduleDisplayName, moduleIcon, moduleSlotTypeToCode, nearbyWormholes, needsRecharge, normalizeDisplayName, parseWireEntity, partnerRegion, pickFabricator, planParallelTransfer, planRoute, projectEntity, projectEntityAt, projectRemainingAt, projectedCargoAvailableAt, projectedPeakCargomass, rawScheduleEnd, readCommonBase, receiveFits, regionOf, removeFromStacks, renderDescription, resolveItem, resolveItemCategory, resolveLaneBuilder, resolveLaneCrafter, resolveLaneGatherer, resolveLaneLoader, resolveLockedAmount, resolveStats, rollTier, rollWithinTier, rollupBuilder, rollupCrafter, rollupGatherer, rollupLoaders, rotation, schedule, sdkSystemGraph, selectGatherLane, setSubscriptionsDebug, simulateRoute, slotAcceptsModule, socketTail, sourceLabelForOutput, splitCost, stackKey, stackToCargoItem, stacksEqual, starRating, starsForStat, statMagnitude, subtractFromStacks, taskCargoChanges, taskCargoEffect, tierAdjective, tierColors, tierOfReserve, toLocation, typeLabel, unwrapLoadDuration, unwrapTransitDuration, validateDisplayName, validateSchedule, workerLaneKey, wormholeAt, wormholeAtRegionEndpoint, yieldThresholdAt };
|
|
21076
|
+
export { ALL_ENTITY_TYPES, ATOMICASSETS_ACCOUNT, ActionsManager, BASE_HAUL_PENALTY_MILLI$1 as BASE_HAUL_PENALTY_MILLI, BASE_ORBITAL_MASS, BLEND_INPUTS_MUST_MATCH, BLEND_REQUIRES_MULTIPLE, BLEND_STAT_LESS_NOT_SUPPORTED, CANCEL_CONTAINS_GROUPED_TASK, CAPACITY_TIER_TABLE, CAP_DEMOLISH, CAP_MODULES, CAP_UNDEPLOY, CAP_WRAP, CATEGORY_LABELS, COMMIT_ALREADY_SET, COMMIT_CANNOT_MATCH, COMMIT_NOT_SET, COMPANY_NOT_FOUND, COMPONENT_TIER_PREFIXES, CONTAINER_NOT_FOUND, CONTAINER_Z, COORD_MAX, COORD_MIN, COORD_OFFSET, CRAFT_ENERGY_DIVISOR, CRAFT_EXCEEDS_ENERGY_CAPACITY, CRAFT_NOT_ENOUGH_ENERGY, CancelBlockReason, ClusterManager, ConstructionManager, Coordinates, DEFAULT_BASE_HULLMASS, DEPLOY_ENTITY_HAS_SCHEDULE, DEPTH_THRESHOLD_T1, DEPTH_THRESHOLD_T2, DEPTH_THRESHOLD_T3, DEPTH_THRESHOLD_T4, DEPTH_THRESHOLD_T5, DESTINATION_CAPACITY_EXCEEDED, ENGINE_DRAIN_BASE, ENGINE_DRAIN_REF_THM, ENGINE_DRAIN_REF_THRUST, ENTITY_ALREADY_THERE, ENTITY_CAPACITY_EXCEEDED, ENTITY_CARGO_NOT_LOADED, ENTITY_CARGO_NOT_OWNED, ENTITY_CONSTRUCTION_DOCK, ENTITY_CONTAINER, ENTITY_EXTRACTOR, ENTITY_FACTORY, ENTITY_HUB, ENTITY_INVALID_CARGO, ENTITY_INVALID_DESTINATION, ENTITY_INVALID_TRAVEL_DURATION, ENTITY_NEXUS, ENTITY_NOT_ENOUGH_ENERGY, ENTITY_NOT_ENOUGH_ENERGY_CAPACITY, ENTITY_NO_CRAFTER, ENTITY_SHIP, ENTITY_WAREHOUSE, ENTITY_WORKSHOP, EPOCH_NON_ZERO, EPOCH_NOT_READY, ERROR_SYSTEM_ALREADY_INITIALIZED, ERROR_SYSTEM_DISABLED, ERROR_SYSTEM_NOT_INITIALIZED, EntitiesManager, Entity, EntityClass, EntityInventory, EpochsManager, GAME_NOT_FOUND, GAME_SEED_NOT_SET, GATHERER_DEPTH_MAX_TIER, GATHERER_DEPTH_TABLE, GATHER_EXCEEDS_ENERGY_CAPACITY, GATHER_MASS_DIVISOR, GATHER_NOT_ENOUGH_ENERGY, GROUP_DUPLICATE_ENTITY, GROUP_EMPTY, GROUP_ENTITY_NOT_MOVABLE, GROUP_HAUL_CAPACITY_EXCEEDED, GROUP_NOT_FOUND, GROUP_NOT_SAME_LOCATION, GROUP_NOT_SAME_OWNER, GROUP_NO_THRUST, GameState, HAULER_EFFICIENCY_DENOM$1 as HAULER_EFFICIENCY_DENOM, HoldKind, INSUFFICIENT_BALANCE, INSUFFICIENT_ITEM_QUANTITY, INSUFFICIENT_ITEM_SUPPLY, INVALID_AMOUNT, ITEM_BATTERY_T1, ITEM_BEAM, ITEM_BEAM_T2, ITEM_BIOMASS_T1, ITEM_BIOMASS_T10, ITEM_BIOMASS_T2, ITEM_BIOMASS_T3, ITEM_BIOMASS_T4, ITEM_BIOMASS_T5, ITEM_BIOMASS_T6, ITEM_BIOMASS_T7, ITEM_BIOMASS_T8, ITEM_BIOMASS_T9, ITEM_BUILDER_T1, ITEM_CERAMIC, ITEM_CERAMIC_T2, ITEM_CONSTRUCTION_DOCK_T1_PACKED, ITEM_CONTAINER_T1_PACKED, ITEM_CONTAINER_T2_PACKED, ITEM_CRAFTER_T1, ITEM_CRYSTAL_T1, ITEM_CRYSTAL_T10, ITEM_CRYSTAL_T2, ITEM_CRYSTAL_T3, ITEM_CRYSTAL_T4, ITEM_CRYSTAL_T5, ITEM_CRYSTAL_T6, ITEM_CRYSTAL_T7, ITEM_CRYSTAL_T8, ITEM_CRYSTAL_T9, ITEM_DOES_NOT_EXIST, ITEM_DREDGER_T2A_PACKED, ITEM_ENGINE_T1, ITEM_EXTRACTOR_T1_PACKED, ITEM_FACTORY_T1_PACKED, ITEM_FRAME, ITEM_FRAME_T2, ITEM_GAS_T1, ITEM_GAS_T10, ITEM_GAS_T2, ITEM_GAS_T3, ITEM_GAS_T4, ITEM_GAS_T5, ITEM_GAS_T6, ITEM_GAS_T7, ITEM_GAS_T8, ITEM_GAS_T9, ITEM_GATHERER_T1, ITEM_GATHERER_T2, ITEM_GENERATOR_T1, ITEM_HAULER_T1, ITEM_HAULER_T2, ITEM_HUB_T1_PACKED, ITEM_LAUNCHER_T1, ITEM_LOADER_T1, ITEM_MASS_CATCHER_T1_PACKED, ITEM_MASS_DRIVER_T1_PACKED, ITEM_NOT_AVAILABLE_AT_LOCATION, ITEM_NOT_DEPLOYABLE, ITEM_NOT_PACKED_ENTITY, ITEM_ORE_T1, ITEM_ORE_T10, ITEM_ORE_T2, ITEM_ORE_T3, ITEM_ORE_T4, ITEM_ORE_T5, ITEM_ORE_T6, ITEM_ORE_T7, ITEM_ORE_T8, ITEM_ORE_T9, ITEM_PLASMA_CELL, ITEM_PLASMA_CELL_T2, ITEM_PLATE, ITEM_PLATE_T2, ITEM_POLYMER, ITEM_POLYMER_T2, ITEM_PORTER_T1A_PACKED, ITEM_PROSPECTOR_T1A_PACKED, ITEM_PROSPECTOR_T2A_PACKED, ITEM_PROSPECTOR_T2B_PACKED, ITEM_REACTOR, ITEM_REACTOR_T2, ITEM_REGOLITH_T1, ITEM_REGOLITH_T10, ITEM_REGOLITH_T2, ITEM_REGOLITH_T3, ITEM_REGOLITH_T4, ITEM_REGOLITH_T5, ITEM_REGOLITH_T6, ITEM_REGOLITH_T7, ITEM_REGOLITH_T8, ITEM_REGOLITH_T9, ITEM_RESIN, ITEM_RESIN_T2, ITEM_RESONATOR, ITEM_RESONATOR_T2, ITEM_ROUSTABOUT_T1A_PACKED, ITEM_SENSOR, ITEM_SENSOR_T2, ITEM_SHIP_T1_PACKED, ITEM_SMITH_T1A_PACKED, ITEM_STORAGE_T1, ITEM_TENDER_T1A_PACKED, ITEM_TUG_T1A_PACKED, ITEM_TYPE_COMPONENT, ITEM_TYPE_ENTITY, ITEM_TYPE_MODULE, ITEM_TYPE_RESOURCE, ITEM_WAREHOUSE_T1_PACKED, ITEM_WARP_T1, ITEM_WORKSHOP_T1_PACKED, ITEM_WRIGHT_T1A_PACKED, InventoryAccessor, JOB_QUEUE_CAP, LANE_BARRIER, LANE_MOBILITY, LOCAL_HALF, LOCATION_MAX_DEPTH, LOCATION_MIN_DEPTH, Location, LocationType, LocationsManager, MAX_LEGS, MAX_ORBITAL_ALTITUDE, MAX_STARS_PER_STAT, MAX_STAR_RATING, MIN_ORBITAL_ALTITUDE, MIN_TRANSFER_DISTANCE_ORBITAL_VESSEL, MIN_TRANSFER_DISTANCE_PLANETARY_STRUCTURE, MODULE_ANY, MODULE_AUX, MODULE_BATTERY, MODULE_BUILDER, MODULE_CARGO_NOT_FOUND, MODULE_CRAFTER, MODULE_ENGINE, MODULE_ENTITY_BUSY, MODULE_GATHERER, MODULE_GENERATOR, MODULE_HAULER, MODULE_LAUNCHER, MODULE_LOADER, MODULE_NOT_MODULE, MODULE_SLOT_EMPTY, MODULE_SLOT_INVALID, MODULE_SLOT_OCCUPIED, MODULE_STAT_SCALING_ANCHOR, MODULE_STAT_SCALING_POST_ANCHOR_PERCENT, MODULE_STORAGE, MODULE_TIER_PREFIXES, MODULE_TYPE_MISMATCH, MODULE_WARP, index as NFT, NO_SCHEDULE, NftManager, PLANETARY_STRUCTURE_Z, PLANET_SUBTYPE_GAS_GIANT, PLANET_SUBTYPE_ICY, PLANET_SUBTYPE_INDUSTRIAL, PLANET_SUBTYPE_OCEAN, PLANET_SUBTYPE_ROCKY, PLANET_SUBTYPE_TERRESTRIAL, PLAYER_ALREADY_JOINED, PLAYER_NOT_FOUND, PLAYER_NOT_JOINED, PRECISION, platform as PlatformContract, Types$1 as PlatformTypes, Player, PlayersManager, RECIPE_INPUTS_EXCESS, RECIPE_INPUTS_INSUFFICIENT, RECIPE_INPUTS_INVALID, RECIPE_INPUTS_MIXED, RECIPE_NOT_FOUND, REGION_DIV, REGION_PER_AXIS, REQUIRES_MORE_THAN_ONE, REQUIRES_POSITIVE_VALUE, RESERVE_TIERS, RESOLVE_COUNT_EXCEEDS_COMPLETED, RESOURCE_TIER_ADJECTIVES, RESOURCE_TIER_MULT_TENTHS, RefitOp, SECTORS_PER_AXIS, SECTOR_DIV, SHIPLOAD_COLLECTION, SHIP_ALREADY_TRAVELING, SHIP_CANNOT_BUY_TRAVELING, SHIP_CANNOT_CANCEL_TASK, SHIP_CANNOT_UPDATE_TRAVELING, SHIP_NOT_ARRIVED, SHIP_NOT_FOUND, SHIP_NOT_IDLE, SHIP_NOT_OWNED, SHIP_NO_COMPLETED_TASKS, SHIP_NO_TASKS_TO_CANCEL, SLOT_FORMULAS, STAR_STEP, ScheduleAccessor, server as ServerContract, Types as ServerTypes, Shipload, SubscriptionsManager, TIER_ROLL_MAX, TRAVEL_MAX_DURATION, TaskCancelable, TaskType, WAREHOUSE_ALREADY_AT_LOCATION, WAREHOUSE_NOT_FOUND, WARP_HAS_CARGO, WARP_HAS_SCHEDULE, WARP_NOT_FULL_ENERGY, WARP_NO_CAPABILITY, WARP_OUT_OF_RANGE, WH, WOULD_OVERFILL, WOULD_STRAND, WebSocketConnection, YIELD_FRACTION_DEEP, YIELD_FRACTION_SHALLOW, addressFromCoordinates, allBuildableItems, allPlotBuildableItems, allocateProportional, applyCapacityTier, applyResourceTierMultiplier, availableBuildMethods, availableCapacity, availableCapacityFromMass, availableForItem, baseName, blendCargoStacks, blendComponentStacks, blendCrossGroup, blendStacks, buildComponentImmutable, buildEntityDescription, buildEntityImmutable, buildGatherPlan, buildImmutableData, buildMintAssetAction, buildModuleImmutable, buildResourceImmutable, calcCargoItemMass, calcCargoMass, calcCounterpartDelivery, calcEnergyUsage, calcStacksMass, calc_acceleration, calc_build_duration, calc_build_energy, calc_craft_duration, calc_craft_energy, calc_energyusage, calc_flighttime, calc_gather_duration, calc_gather_energy, calc_gather_rate, calc_group_flighttime, calc_loader_acceleration, calc_loader_flighttime, calc_onesided_duration, calc_orbital_altitude, calc_rechargetime, calc_ship_acceleration, calc_ship_flighttime, calc_ship_mass, calc_ship_rechargetime, calc_transfer_duration, calc_transit_duration, calc_travel_flighttime, calculateFlightTime, calculateLoadTimeBreakdown, calculateRefuelingTime, calculateTransferTime, canMove, cancelEligibility, candidateLaneCompletesAt, capabilityAttributes, capabilityNames, capacityTierMultiplier, capsHasCrafter, capsHasGatherer, capsHasHauler, capsHasLauncher, capsHasLoaders, capsHasMass, capsHasMovement, capsHasStorage, cargoInputKey, cargoItem, cargoItemToStack, cargoKey, cargoReadyAt, cargoRef, cargoUtils, categoryColors, categoryFromIndex, categoryLabel, categoryLabelFromIndex, compareByStars, componentIcon, composeIdleResolve, computeBaseCapacity, computeBaseCapacityContainer, computeBaseCapacityShip, computeBaseCapacityWarehouse, computeBaseHullmass$1 as computeBaseHullmass, computeBatteryCapabilities, computeBuilderCapabilities, computeBuilderDrain, computeBuilderSpeed, computeComponentStats, computeContainerCapabilities, computeCraftedOutputStats, computeCrafterCapabilities, computeCrafterDrain, computeCrafterSpeed, computeEffectiveModuleStat, computeEngineCapabilities, computeEngineDrain, computeEngineThrust, computeEntityCapabilities, computeEntityStats, computeFreeCells, computeGathererCapabilities, computeGathererDepth, computeGathererDrain, computeGathererYield, computeGeneratorCap, computeGeneratorCapabilities, computeGeneratorRech, computeGroupPerLegReach, computeHaulPenalty, computeHaulerCapabilities, computeHaulerCapacity, computeHaulerEfficiency, computeInputMass, computeLauncherCapabilities, computeLoaderCapabilities, computeLoaderMass, computeLoaderThrust, computeNftImageUrl, computePerLegReach, computeShipHullCapabilities, computeStorageCapabilities, computeTravelDrain, computeWarehouseHullCapabilities, computeWarpCapabilities, computeWarpRange, coordsToLocationId, createInventoryAccessor, createProjectedEntity, createScheduleAccessor, decodeAddress, decodeAtomicAsset, decodeCraftedItemStats, decodeRegion, decodeSector, decodeStat, decodeStats, Shipload as default, deriveLocation, deriveLocationSize, deriveLocationStatic, deriveResourceStats, deriveStatMappings, deriveStrata, deriveStratum, derivedLoaders, describeItem, describeModule, describeModuleForItem, describeModuleForSlot, deserializeAsset, deserializeAtomicData, deserializeComponent, deserializeEntity, deserializeModule, deserializeResource, displayName, distanceBetweenCoordinates, distanceBetweenPoints, easeFlightProgress, eligibleUpgrades, encodeAddress, encodeAddressMemo, encodeGatheredCargoStats, encodeRegion, encodeSector, encodeStats, energyAtTime, energyPercent, entityDisplayName, estimateDealTravelTime, estimateTravelTime, estimateUnwrapDuration, feistel, feistelInv, fetchAtomicAssetsForOwner, fetchAtomicSchemas, filterByBuildMethod, findNearbyPlanets, flightSpeedFactor, formatLocation, formatMass, formatMassDelta, formatMassScaled, formatModuleLine, formatTier, gatherEnergyCost, gathererDepthForTier, getAllRecipes, getBaseHullmassFor, getCapabilityAttributeRows, getCapabilityAttributes, getCategoryInfo, getComponentDemand, getComponents, getCurrentEpoch, getDepthThreshold, getDestinationLocation, getEffectiveReserve, getEligibleResources, getEntityClass, getEntityItems, getEntityLayout, getEpochInfo, getFlightOrigin, getInterpolatedPosition, getItem, getItems, getKindMeta, getLocationCandidates, getLocationKind, getLocationProfile, getLocationType, getLocationTypeName, getModuleCapabilityType, getModules, getPackedEntityType, getPlanetSubtype, getPlanetSubtypes, getPositionAt, getProducersForAttribute, getRecipe, getRecipeConsumers, getResourceDemand, getResourceTier, getResourceWeight, getResources, getStatDefinitions, getStatMappings, getStatMappingsForCapability, getStatMappingsForStat, getStatName, getSystemName, getTemplateMeta, hasEnergy, hasEnergyForDistance, hasGatherer, hasLoaders, hasMass, hasSchedule, hasSpace, hasSpaceForMass, hasStorage, hasSystem, hash, hash512, incomingHoldMass, interpolateFlightPosition, isBuildable, isConstructionDock, isContainer, isCraftedItem, isExtractor, isFactory, isFull, isFullFromMass, isGatherableLocation, isHub, isInvertedAttribute, isLocationBuildable, isModuleItem, isNexus, isPlot, isPlotBuildable, isRelatedItem, isShip, isSubscriptionsDebugEnabled, isValidWormholePair, isWarehouse, isWorkshop, itemAbbreviations, itemCategory, itemIds, itemOffset, itemTier, itemTypeCode, jobsToLanes, kindCan, laneKeyForModule, lerp$1 as lerp, makeEntity, mapEntity, maxCraftable, maxQtyForCharge, maxTravelDistance, mergeStacks, moduleAccepts, moduleDisplayName, moduleIcon, moduleSlotTypeToCode, nearbyWormholes, needsRecharge, normalizeDisplayName, parseWireEntity, partnerRegion, pickFabricator, planParallelTransfer, planRoute, projectEntity, projectEntityAt, projectRemainingAt, projectedCargoAvailableAt, projectedPeakCargomass, rawScheduleEnd, readCommonBase, receiveFits, regionOf, removeFromStacks, renderDescription, resolveItem, resolveItemCategory, resolveLaneBuilder, resolveLaneCrafter, resolveLaneGatherer, resolveLaneLoader, resolveLockedAmount, resolveStats, rollTier, rollWithinTier, rollupBuilder, rollupCrafter, rollupGatherer, rollupLoaders, rotation, schedule, sdkSystemGraph, selectGatherLane, setSubscriptionsDebug, simulateRoute, slotAcceptsModule, socketTail, sourceLabelForOutput, splitCost, stackKey, stackToCargoItem, stacksEqual, starRating, starsForStat, statMagnitude, subtractFromStacks, taskCargoChanges, taskCargoEffect, tierAdjective, tierColors, tierOfReserve, toLocation, typeLabel, unwrapLoadDuration, unwrapTransitDuration, usedInputStatKeys, validateDisplayName, validateSchedule, workerLaneKey, wormholeAt, wormholeAtRegionEndpoint, yieldThresholdAt };
|
|
20942
21077
|
//# sourceMappingURL=shipload.m.js.map
|