@shipload/sdk 1.0.0-next.5 → 1.0.0-next.6
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 +8 -2
- package/lib/shipload.js +104 -27
- package/lib/shipload.js.map +1 -1
- package/lib/shipload.m.js +104 -28
- package/lib/shipload.m.js.map +1 -1
- package/package.json +1 -1
- package/src/derivation/index.ts +1 -0
- package/src/derivation/resources.ts +89 -18
- package/src/index-module.ts +1 -0
- package/src/types.ts +1 -0
- package/src/utils/system.ts +21 -8
package/lib/shipload.d.ts
CHANGED
|
@@ -1478,7 +1478,8 @@ declare enum LocationType {
|
|
|
1478
1478
|
EMPTY = 0,
|
|
1479
1479
|
PLANET = 1,
|
|
1480
1480
|
ASTEROID = 2,
|
|
1481
|
-
NEBULA = 3
|
|
1481
|
+
NEBULA = 3,
|
|
1482
|
+
ICE_FIELD = 4
|
|
1482
1483
|
}
|
|
1483
1484
|
declare enum TaskCancelable {
|
|
1484
1485
|
NEVER = 0,
|
|
@@ -1782,6 +1783,11 @@ declare const PLANET_SUBTYPE_INDUSTRIAL = 5;
|
|
|
1782
1783
|
declare function getDepthThreshold(tier: number): number;
|
|
1783
1784
|
declare function getResourceTier(itemId: number): number;
|
|
1784
1785
|
declare function getResourceWeight(itemId: number, stratum: number): number;
|
|
1786
|
+
interface LocationProfileEntry {
|
|
1787
|
+
category: number;
|
|
1788
|
+
maxTier: number;
|
|
1789
|
+
}
|
|
1790
|
+
declare function getLocationProfile(locationType: number, subtype: number): LocationProfileEntry[];
|
|
1785
1791
|
declare function getLocationCandidates(locationType: number, subtype: number): number[];
|
|
1786
1792
|
declare function getEligibleResources(locationType: number, subtype: number, stratum: number): number[];
|
|
1787
1793
|
|
|
@@ -3277,4 +3283,4 @@ type location_epoch = Types.location_epoch;
|
|
|
3277
3283
|
type location_derived = Types.location_derived;
|
|
3278
3284
|
type location_row = Types.location_row;
|
|
3279
3285
|
|
|
3280
|
-
export { AckMessage, ActionsManager, AnyEntity, BASE_ORBITAL_MASS, BLEND_INPUTS_MUST_MATCH, BLEND_REQUIRES_MULTIPLE, BLEND_STAT_LESS_NOT_SUPPORTED, BoundingBox, BoundsDeltaMessage, BoundsSubscriptionHandle, CANCEL_CONTAINS_GROUPED_TASK, CANCEL_PAIRED_HAS_PENDING, CATEGORY_LABELS, COMMIT_ALREADY_SET, COMMIT_CANNOT_MATCH, COMMIT_NOT_SET, COMPANY_NOT_FOUND, CONTAINER_CAPACITY_EXCEEDED, CONTAINER_NOT_FOUND, CONTAINER_Z, CRAFT_ENERGY_DIVISOR, CRAFT_EXCEEDS_ENERGY_CAPACITY, CRAFT_NOT_ENOUGH_ENERGY, CapabilityAttribute, CapabilityInput, CargoData, CargoMassInfo, CargoStack, CategoryIconShape, CategoryInfo, CategoryStacks, ClientMessage, ConnectionState, Container, ContainerEntity, ContainerStateInput, Coordinates, CoordinatesType, CraftedItemCategory, CrafterCapability, DEPLOY_ENTITY_HAS_SCHEDULE, DEPTH_THRESHOLD_T1, DEPTH_THRESHOLD_T2, DEPTH_THRESHOLD_T3, DEPTH_THRESHOLD_T4, DEPTH_THRESHOLD_T5, DESTINATION_CAPACITY_EXCEEDED, DerivedStratum, DescribeOptions, Distance, ENTITY_CAPACITY_EXCEEDED, ENTITY_NO_CRAFTER, EPOCH_NON_ZERO, EPOCH_NOT_READY, ERROR_SYSTEM_ALREADY_INITIALIZED, ERROR_SYSTEM_DISABLED, ERROR_SYSTEM_NOT_INITIALIZED, EnergyCapability, EntitiesManager, Entity, EntityCapabilities, EntityInfo, EntityInstance, EntityInventory, EntityLayout, EntityRefInput, EntitySlot, EntityState, EntitySubscriptionHandle, EntityType, EntityTypeName, EpochInfo, EpochsManager, ErrorMessage, EstimateTravelTimeOptions, EstimatedTravelTime, EventCatchupCompleteMessage, EventMessage, FloatPosition, GAME_NOT_FOUND, GAME_SEED_NOT_SET, GATHERER_DEPTH_MAX_TIER, GATHERER_DEPTH_TABLE, GATHER_EXCEEDS_ENERGY_CAPACITY, 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, GathererCapability, GathererDepthParams, HasCapacity, HasCargo, HasCargomass, HasScheduleAndLocation, INSUFFICIENT_BALANCE, INSUFFICIENT_ITEM_QUANTITY, INSUFFICIENT_ITEM_SUPPLY, INVALID_AMOUNT, 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_CARGO_ARM, ITEM_CARGO_LINING, ITEM_CARGO_LINING_T2, 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_ENGINE_T1, ITEM_FOCUSING_ARRAY, 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_GENERATOR_T1, ITEM_HAULER_T1, ITEM_HULL_PLATES, ITEM_HULL_PLATES_T2, ITEM_LOADER_T1, ITEM_MATTER_CONDUIT, 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_POWER_CELL, ITEM_REACTION_CHAMBER, 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_SHIP_T1_PACKED, ITEM_STORAGE_T1, ITEM_SURVEY_PROBE, ITEM_THRUSTER_CORE, ITEM_TOOL_BIT, ITEM_TYPE_COMPONENT, ITEM_TYPE_ENTITY, ITEM_TYPE_MODULE, ITEM_TYPE_RESOURCE, ITEM_WAREHOUSE_T1_PACKED, ITEM_WARP_T1, InventoryAccessor, Item, ItemType, LOCATION_MAX_DEPTH, LOCATION_MIN_DEPTH, LoadTimeBreakdown, LoaderCapability, Location, LocationStratum, LocationType, LocationsManager, MAX_ORBITAL_ALTITUDE, MIN_ORBITAL_ALTITUDE, MODULE_ANY, 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_STORAGE, MODULE_TYPE_MISMATCH, MODULE_WARP, MassCapability, ModuleDescription, ModuleEntry, ModuleType, MovementCapability, index as NFT, NFTCargoItem, NFTCommonBase, NFTInstalledModule, NFTModuleSlot, NO_SCHEDULE, NamedStats, OwnerSubscriptionHandle, 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, PackedModule, PackedModuleInput, PingMessage, PlanetSubtypeInfo, platform as PlatformContract, Types$1 as PlatformTypes, Player, PlayerStateInput, PlayersManager, PongMessage, Projectable, ProjectableSnapshot, ProjectedEntity, ProjectionOptions, RECIPE_INPUTS_EXCESS, RECIPE_INPUTS_INSUFFICIENT, RECIPE_INPUTS_INVALID, RECIPE_INPUTS_MIXED, RECIPE_NOT_FOUND, REQUIRES_MORE_THAN_ONE, REQUIRES_POSITIVE_VALUE, RESERVE_TIERS, RESOLVE_COUNT_EXCEEDS_COMPLETED, Recipe, RecipeInput, RecipeInputCategory, RecipeInputItemId, RecipeSlotInput, RenderDescriptionOptions, ReserveTier, ResolvedAttributeGroup, ResolvedItem, ResolvedItemStat, ResolvedItemType, ResolvedModuleSlot, ResourceCategory, ResourceStats, SHIP_ALREADY_THERE, SHIP_ALREADY_TRAVELING, SHIP_CANNOT_BUY_TRAVELING, SHIP_CANNOT_CANCEL_TASK, SHIP_CANNOT_UPDATE_TRAVELING, SHIP_CAPACITY_EXCEEDED, SHIP_CARGO_NOT_LOADED, SHIP_CARGO_NOT_OWNED, SHIP_INVALID_CARGO, SHIP_INVALID_DESTINATION, SHIP_INVALID_TRAVEL_DURATION, SHIP_NOT_ARRIVED, SHIP_NOT_ENOUGH_ENERGY, SHIP_NOT_ENOUGH_ENERGY_CAPACITY, SHIP_NOT_FOUND, SHIP_NOT_IDLE, SHIP_NOT_OWNED, SHIP_NO_COMPLETED_TASKS, SHIP_NO_TASKS_TO_CANCEL, SLOT_FORMULAS, STARTER_ALREADY_CLAIMED, ScheduleAccessor, ScheduleCapability, ScheduleData, Scheduleable, server as ServerContract, ServerMessage, Types as ServerTypes, Ship, ShipCapabilities, ShipEntity, ShipLike, ShipStateInput, Shipload, SlotConsumer, SlotConsumerKind, SnapshotMessage, StackInput, StatDefinition, StatMapping, StatSlot, StorageCapability, StratumInfo, SubscribeEntityMessage, SubscribeEventsMessage, SubscribeMessage, SubscriptionEntityType, SubscriptionsManager, SubscriptionsOptions, TIER_ADJECTIVES, TIER_ROLL_MAX, TRAVEL_MAX_DURATION, TaskCancelable, TaskType, TextSpan, TierRange, TransferEntity, UnsubscribeEntityMessage, UnsubscribeEventsMessage, UnsubscribeMessage, UpdateBoundsMessage, UpdateMessage, WAREHOUSE_ALREADY_AT_LOCATION, WAREHOUSE_CAPACITY_EXCEEDED, WAREHOUSE_NOT_FOUND, WAREHOUSE_Z, WARP_HAS_CARGO, WARP_HAS_SCHEDULE, WARP_NOT_FULL_ENERGY, WARP_NO_CAPABILITY, WARP_OUT_OF_RANGE, Warehouse, WarehouseEntity, WarehouseStateInput, WebSocketConnection, WebSocketConnectionOptions, WireCoordinates, WireEntity, availableCapacity$1 as availableCapacity, availableCapacityFromMass, blendCargoStacks, blendComponentStacks, blendCrossGroup, blendStacks, buildEntityDescription, calcCargoItemMass, calcCargoMass, calcEnergyUsage, calcLoadDuration, calcStacksMass, calc_acceleration, calc_craft_duration, calc_craft_energy, calc_energyusage, calc_flighttime, calc_gather_duration, calc_gather_energy, calc_loader_acceleration, calc_loader_flighttime, calc_orbital_altitude, calc_rechargetime, calc_ship_acceleration, calc_ship_flighttime, calc_ship_mass, calc_ship_rechargetime, calc_transfer_duration, calculateFlightTime, calculateLoadTimeBreakdown, calculateRefuelingTime, calculateTransferTime, canMove, capabilityAttributes, capabilityNames, capsHasCrafter, capsHasGatherer, capsHasHauler, capsHasLoaders, capsHasMass, capsHasMovement, capsHasStorage, cargoItemToStack, cargoUtils, cargo_item, categoryColors, categoryFromIndex, categoryIconShapes, categoryIcons, categoryLabel, categoryLabelFromIndex, componentIcon, computeBaseCapacityShip, computeBaseCapacityWarehouse, computeBaseHullmass, computeComponentStats, computeContainerCapabilities, computeContainerT2Capabilities, computeCraftedOutputStats, computeCrafterCapabilities, computeCrafterDrain, computeCrafterSpeed, computeEngineCapabilities, computeEngineDrain, computeEngineThrust, computeEntityStats, computeGathererCapabilities, computeGathererDepth, computeGathererDrain, computeGathererSpeed, computeGathererYield, computeGeneratorCap, computeGeneratorCapabilities, computeGeneratorRech, computeHaulPenalty, computeHaulerCapabilities, computeHaulerDrain$1 as computeHaulerDrain, computeInputMass, computeLoaderCapabilities, computeLoaderMass, computeLoaderThrust, computeShipCapabilities, computeShipHullCapabilities, computeStorageCapabilities, computeWarehouseCapabilities, computeWarehouseHullCapabilities, computeWarpRange, container_row, coordsToLocationId, createInventoryAccessor, createProjectedEntity, createScheduleAccessor, decodeCraftedItemStats, decodeStat, decodeStats, Shipload as default, deriveLocation, deriveLocationEpoch, deriveLocationSize, deriveLocationStatic, deriveResourceStats, deriveStatMappings, deriveStrata, deriveStratum, describeItem, describeModule, describeModuleForItem, describeModuleForSlot, deserializeAsset, deserializeComponent, deserializeEntity, deserializeModule, deserializeResource, displayName, distanceBetweenCoordinates, distanceBetweenPoints, easeFlightProgress, encodeGatheredCargoStats, encodeStats, energyPercent, energy_stats, entityDisplayName, estimateDealTravelTime, estimateTravelTime, findItemByCategoryAndTier, findNearbyPlanets, flightSpeedFactor, formatMass, formatMassDelta, formatModuleLine, formatTier, gathererDepthForTier, gatherer_stats, getCapabilityAttributes, getCategoryInfo, getComponents, getCurrentEpoch, getDepthThreshold, getDestinationLocation, getEligibleResources, getEntityItems, getEntityLayout, getEpochInfo, getFlightOrigin, getInterpolatedPosition, getItem, getItems, getLocationCandidates, getLocationType, getLocationTypeName, getModuleCapabilityType, getModules, getPlanetSubtype, getPlanetSubtypes, getPositionAt, getRecipe, getResourceTier, getResourceWeight, getResources, getStatDefinitions, getStatMappings, getStatMappingsForCapability, getStatMappingsForStat, getStatName, getSystemName, hasEnergy, hasEnergyForDistance, hasGatherer, hasLoaders, hasMass, hasSchedule, hasSpace$1 as hasSpace, hasSpaceForMass, hasStorage, hasSystem, hash, hash512, interpolateFlightPosition, isCraftedItem, isFull$1 as isFull, isFullFromMass, isGatherableLocation, isInvertedAttribute, isModuleItem, isRelatedItem, isSubscriptionsDebugEnabled, itemAbbreviations, itemCategory, itemIds, itemOffset, itemTier, itemTypeCode, lerp, loader_stats, location_derived, location_epoch, location_row, location_static, makeContainer, makeShip, makeWarehouse, mapEntity, maxTravelDistance, mergeStacks, moduleAccepts, moduleDisplayName, moduleIcon, moduleSlotTypeToCode, movement_stats, needsRecharge, parseWireEntity, projectEntity, projectEntityAt, projectFromCurrentState, projectFromCurrentStateAt, readCommonBase, removeFromStacks, renderDescription, resolveItem, resolveItemCategory, resolveStats, rollTier, rollWithinTier, rotation, schedule, setSubscriptionsDebug, stackKey, stackToCargoItem, stacksEqual, task, tierColors, tierLabel, tierLabels, toLocation, typeLabel, validateSchedule, warehouse_row };
|
|
3286
|
+
export { AckMessage, ActionsManager, AnyEntity, BASE_ORBITAL_MASS, BLEND_INPUTS_MUST_MATCH, BLEND_REQUIRES_MULTIPLE, BLEND_STAT_LESS_NOT_SUPPORTED, BoundingBox, BoundsDeltaMessage, BoundsSubscriptionHandle, CANCEL_CONTAINS_GROUPED_TASK, CANCEL_PAIRED_HAS_PENDING, CATEGORY_LABELS, COMMIT_ALREADY_SET, COMMIT_CANNOT_MATCH, COMMIT_NOT_SET, COMPANY_NOT_FOUND, CONTAINER_CAPACITY_EXCEEDED, CONTAINER_NOT_FOUND, CONTAINER_Z, CRAFT_ENERGY_DIVISOR, CRAFT_EXCEEDS_ENERGY_CAPACITY, CRAFT_NOT_ENOUGH_ENERGY, CapabilityAttribute, CapabilityInput, CargoData, CargoMassInfo, CargoStack, CategoryIconShape, CategoryInfo, CategoryStacks, ClientMessage, ConnectionState, Container, ContainerEntity, ContainerStateInput, Coordinates, CoordinatesType, CraftedItemCategory, CrafterCapability, DEPLOY_ENTITY_HAS_SCHEDULE, DEPTH_THRESHOLD_T1, DEPTH_THRESHOLD_T2, DEPTH_THRESHOLD_T3, DEPTH_THRESHOLD_T4, DEPTH_THRESHOLD_T5, DESTINATION_CAPACITY_EXCEEDED, DerivedStratum, DescribeOptions, Distance, ENTITY_CAPACITY_EXCEEDED, ENTITY_NO_CRAFTER, EPOCH_NON_ZERO, EPOCH_NOT_READY, ERROR_SYSTEM_ALREADY_INITIALIZED, ERROR_SYSTEM_DISABLED, ERROR_SYSTEM_NOT_INITIALIZED, EnergyCapability, EntitiesManager, Entity, EntityCapabilities, EntityInfo, EntityInstance, EntityInventory, EntityLayout, EntityRefInput, EntitySlot, EntityState, EntitySubscriptionHandle, EntityType, EntityTypeName, EpochInfo, EpochsManager, ErrorMessage, EstimateTravelTimeOptions, EstimatedTravelTime, EventCatchupCompleteMessage, EventMessage, FloatPosition, GAME_NOT_FOUND, GAME_SEED_NOT_SET, GATHERER_DEPTH_MAX_TIER, GATHERER_DEPTH_TABLE, GATHER_EXCEEDS_ENERGY_CAPACITY, 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, GathererCapability, GathererDepthParams, HasCapacity, HasCargo, HasCargomass, HasScheduleAndLocation, INSUFFICIENT_BALANCE, INSUFFICIENT_ITEM_QUANTITY, INSUFFICIENT_ITEM_SUPPLY, INVALID_AMOUNT, 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_CARGO_ARM, ITEM_CARGO_LINING, ITEM_CARGO_LINING_T2, 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_ENGINE_T1, ITEM_FOCUSING_ARRAY, 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_GENERATOR_T1, ITEM_HAULER_T1, ITEM_HULL_PLATES, ITEM_HULL_PLATES_T2, ITEM_LOADER_T1, ITEM_MATTER_CONDUIT, 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_POWER_CELL, ITEM_REACTION_CHAMBER, 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_SHIP_T1_PACKED, ITEM_STORAGE_T1, ITEM_SURVEY_PROBE, ITEM_THRUSTER_CORE, ITEM_TOOL_BIT, ITEM_TYPE_COMPONENT, ITEM_TYPE_ENTITY, ITEM_TYPE_MODULE, ITEM_TYPE_RESOURCE, ITEM_WAREHOUSE_T1_PACKED, ITEM_WARP_T1, InventoryAccessor, Item, ItemType, LOCATION_MAX_DEPTH, LOCATION_MIN_DEPTH, LoadTimeBreakdown, LoaderCapability, Location, LocationStratum, LocationType, LocationsManager, MAX_ORBITAL_ALTITUDE, MIN_ORBITAL_ALTITUDE, MODULE_ANY, 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_STORAGE, MODULE_TYPE_MISMATCH, MODULE_WARP, MassCapability, ModuleDescription, ModuleEntry, ModuleType, MovementCapability, index as NFT, NFTCargoItem, NFTCommonBase, NFTInstalledModule, NFTModuleSlot, NO_SCHEDULE, NamedStats, OwnerSubscriptionHandle, 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, PackedModule, PackedModuleInput, PingMessage, PlanetSubtypeInfo, platform as PlatformContract, Types$1 as PlatformTypes, Player, PlayerStateInput, PlayersManager, PongMessage, Projectable, ProjectableSnapshot, ProjectedEntity, ProjectionOptions, RECIPE_INPUTS_EXCESS, RECIPE_INPUTS_INSUFFICIENT, RECIPE_INPUTS_INVALID, RECIPE_INPUTS_MIXED, RECIPE_NOT_FOUND, REQUIRES_MORE_THAN_ONE, REQUIRES_POSITIVE_VALUE, RESERVE_TIERS, RESOLVE_COUNT_EXCEEDS_COMPLETED, Recipe, RecipeInput, RecipeInputCategory, RecipeInputItemId, RecipeSlotInput, RenderDescriptionOptions, ReserveTier, ResolvedAttributeGroup, ResolvedItem, ResolvedItemStat, ResolvedItemType, ResolvedModuleSlot, ResourceCategory, ResourceStats, SHIP_ALREADY_THERE, SHIP_ALREADY_TRAVELING, SHIP_CANNOT_BUY_TRAVELING, SHIP_CANNOT_CANCEL_TASK, SHIP_CANNOT_UPDATE_TRAVELING, SHIP_CAPACITY_EXCEEDED, SHIP_CARGO_NOT_LOADED, SHIP_CARGO_NOT_OWNED, SHIP_INVALID_CARGO, SHIP_INVALID_DESTINATION, SHIP_INVALID_TRAVEL_DURATION, SHIP_NOT_ARRIVED, SHIP_NOT_ENOUGH_ENERGY, SHIP_NOT_ENOUGH_ENERGY_CAPACITY, SHIP_NOT_FOUND, SHIP_NOT_IDLE, SHIP_NOT_OWNED, SHIP_NO_COMPLETED_TASKS, SHIP_NO_TASKS_TO_CANCEL, SLOT_FORMULAS, STARTER_ALREADY_CLAIMED, ScheduleAccessor, ScheduleCapability, ScheduleData, Scheduleable, server as ServerContract, ServerMessage, Types as ServerTypes, Ship, ShipCapabilities, ShipEntity, ShipLike, ShipStateInput, Shipload, SlotConsumer, SlotConsumerKind, SnapshotMessage, StackInput, StatDefinition, StatMapping, StatSlot, StorageCapability, StratumInfo, SubscribeEntityMessage, SubscribeEventsMessage, SubscribeMessage, SubscriptionEntityType, SubscriptionsManager, SubscriptionsOptions, TIER_ADJECTIVES, TIER_ROLL_MAX, TRAVEL_MAX_DURATION, TaskCancelable, TaskType, TextSpan, TierRange, TransferEntity, UnsubscribeEntityMessage, UnsubscribeEventsMessage, UnsubscribeMessage, UpdateBoundsMessage, UpdateMessage, WAREHOUSE_ALREADY_AT_LOCATION, WAREHOUSE_CAPACITY_EXCEEDED, WAREHOUSE_NOT_FOUND, WAREHOUSE_Z, WARP_HAS_CARGO, WARP_HAS_SCHEDULE, WARP_NOT_FULL_ENERGY, WARP_NO_CAPABILITY, WARP_OUT_OF_RANGE, Warehouse, WarehouseEntity, WarehouseStateInput, WebSocketConnection, WebSocketConnectionOptions, WireCoordinates, WireEntity, availableCapacity$1 as availableCapacity, availableCapacityFromMass, blendCargoStacks, blendComponentStacks, blendCrossGroup, blendStacks, buildEntityDescription, calcCargoItemMass, calcCargoMass, calcEnergyUsage, calcLoadDuration, calcStacksMass, calc_acceleration, calc_craft_duration, calc_craft_energy, calc_energyusage, calc_flighttime, calc_gather_duration, calc_gather_energy, calc_loader_acceleration, calc_loader_flighttime, calc_orbital_altitude, calc_rechargetime, calc_ship_acceleration, calc_ship_flighttime, calc_ship_mass, calc_ship_rechargetime, calc_transfer_duration, calculateFlightTime, calculateLoadTimeBreakdown, calculateRefuelingTime, calculateTransferTime, canMove, capabilityAttributes, capabilityNames, capsHasCrafter, capsHasGatherer, capsHasHauler, capsHasLoaders, capsHasMass, capsHasMovement, capsHasStorage, cargoItemToStack, cargoUtils, cargo_item, categoryColors, categoryFromIndex, categoryIconShapes, categoryIcons, categoryLabel, categoryLabelFromIndex, componentIcon, computeBaseCapacityShip, computeBaseCapacityWarehouse, computeBaseHullmass, computeComponentStats, computeContainerCapabilities, computeContainerT2Capabilities, computeCraftedOutputStats, computeCrafterCapabilities, computeCrafterDrain, computeCrafterSpeed, computeEngineCapabilities, computeEngineDrain, computeEngineThrust, computeEntityStats, computeGathererCapabilities, computeGathererDepth, computeGathererDrain, computeGathererSpeed, computeGathererYield, computeGeneratorCap, computeGeneratorCapabilities, computeGeneratorRech, computeHaulPenalty, computeHaulerCapabilities, computeHaulerDrain$1 as computeHaulerDrain, computeInputMass, computeLoaderCapabilities, computeLoaderMass, computeLoaderThrust, computeShipCapabilities, computeShipHullCapabilities, computeStorageCapabilities, computeWarehouseCapabilities, computeWarehouseHullCapabilities, computeWarpRange, container_row, coordsToLocationId, createInventoryAccessor, createProjectedEntity, createScheduleAccessor, decodeCraftedItemStats, decodeStat, decodeStats, Shipload as default, deriveLocation, deriveLocationEpoch, deriveLocationSize, deriveLocationStatic, deriveResourceStats, deriveStatMappings, deriveStrata, deriveStratum, describeItem, describeModule, describeModuleForItem, describeModuleForSlot, deserializeAsset, deserializeComponent, deserializeEntity, deserializeModule, deserializeResource, displayName, distanceBetweenCoordinates, distanceBetweenPoints, easeFlightProgress, encodeGatheredCargoStats, encodeStats, energyPercent, energy_stats, entityDisplayName, estimateDealTravelTime, estimateTravelTime, findItemByCategoryAndTier, findNearbyPlanets, flightSpeedFactor, formatMass, formatMassDelta, formatModuleLine, formatTier, gathererDepthForTier, gatherer_stats, getCapabilityAttributes, getCategoryInfo, getComponents, getCurrentEpoch, getDepthThreshold, getDestinationLocation, getEligibleResources, getEntityItems, getEntityLayout, getEpochInfo, getFlightOrigin, getInterpolatedPosition, getItem, getItems, getLocationCandidates, getLocationProfile, getLocationType, getLocationTypeName, getModuleCapabilityType, getModules, getPlanetSubtype, getPlanetSubtypes, getPositionAt, getRecipe, getResourceTier, getResourceWeight, getResources, getStatDefinitions, getStatMappings, getStatMappingsForCapability, getStatMappingsForStat, getStatName, getSystemName, hasEnergy, hasEnergyForDistance, hasGatherer, hasLoaders, hasMass, hasSchedule, hasSpace$1 as hasSpace, hasSpaceForMass, hasStorage, hasSystem, hash, hash512, interpolateFlightPosition, isCraftedItem, isFull$1 as isFull, isFullFromMass, isGatherableLocation, isInvertedAttribute, isModuleItem, isRelatedItem, isSubscriptionsDebugEnabled, itemAbbreviations, itemCategory, itemIds, itemOffset, itemTier, itemTypeCode, lerp, loader_stats, location_derived, location_epoch, location_row, location_static, makeContainer, makeShip, makeWarehouse, mapEntity, maxTravelDistance, mergeStacks, moduleAccepts, moduleDisplayName, moduleIcon, moduleSlotTypeToCode, movement_stats, needsRecharge, parseWireEntity, projectEntity, projectEntityAt, projectFromCurrentState, projectFromCurrentStateAt, readCommonBase, removeFromStacks, renderDescription, resolveItem, resolveItemCategory, resolveStats, rollTier, rollWithinTier, rotation, schedule, setSubscriptionsDebug, stackKey, stackToCargoItem, stacksEqual, task, tierColors, tierLabel, tierLabels, toLocation, typeLabel, validateSchedule, warehouse_row };
|
package/lib/shipload.js
CHANGED
|
@@ -2443,6 +2443,7 @@ exports.LocationType = void 0;
|
|
|
2443
2443
|
LocationType[LocationType["PLANET"] = 1] = "PLANET";
|
|
2444
2444
|
LocationType[LocationType["ASTEROID"] = 2] = "ASTEROID";
|
|
2445
2445
|
LocationType[LocationType["NEBULA"] = 3] = "NEBULA";
|
|
2446
|
+
LocationType[LocationType["ICE_FIELD"] = 4] = "ICE_FIELD";
|
|
2446
2447
|
})(exports.LocationType || (exports.LocationType = {}));
|
|
2447
2448
|
exports.TaskCancelable = void 0;
|
|
2448
2449
|
(function (TaskCancelable) {
|
|
@@ -4585,37 +4586,97 @@ function getResourceWeight(itemId, stratum) {
|
|
|
4585
4586
|
return 10;
|
|
4586
4587
|
}
|
|
4587
4588
|
}
|
|
4588
|
-
const
|
|
4589
|
-
const
|
|
4590
|
-
const
|
|
4591
|
-
const
|
|
4592
|
-
const
|
|
4593
|
-
|
|
4594
|
-
|
|
4595
|
-
|
|
4596
|
-
|
|
4597
|
-
|
|
4598
|
-
|
|
4599
|
-
|
|
4600
|
-
|
|
4601
|
-
|
|
4589
|
+
const RESOURCE_ORE = 0;
|
|
4590
|
+
const RESOURCE_GAS = 1;
|
|
4591
|
+
const RESOURCE_REGOLITH = 2;
|
|
4592
|
+
const RESOURCE_BIOMASS = 3;
|
|
4593
|
+
const RESOURCE_CRYSTAL = 4;
|
|
4594
|
+
function categoryBaseId(category) {
|
|
4595
|
+
switch (category) {
|
|
4596
|
+
case RESOURCE_ORE:
|
|
4597
|
+
return 100;
|
|
4598
|
+
case RESOURCE_CRYSTAL:
|
|
4599
|
+
return 200;
|
|
4600
|
+
case RESOURCE_GAS:
|
|
4601
|
+
return 300;
|
|
4602
|
+
case RESOURCE_REGOLITH:
|
|
4603
|
+
return 400;
|
|
4604
|
+
case RESOURCE_BIOMASS:
|
|
4605
|
+
return 500;
|
|
4606
|
+
default:
|
|
4607
|
+
return 0;
|
|
4608
|
+
}
|
|
4609
|
+
}
|
|
4610
|
+
function resourceId(category, tier) {
|
|
4611
|
+
return categoryBaseId(category) + tier;
|
|
4612
|
+
}
|
|
4613
|
+
function getLocationProfile(locationType, subtype) {
|
|
4614
|
+
if (locationType === exports.LocationType.ASTEROID) {
|
|
4615
|
+
return [
|
|
4616
|
+
{ category: RESOURCE_ORE, maxTier: 5 },
|
|
4617
|
+
{ category: RESOURCE_CRYSTAL, maxTier: 5 },
|
|
4618
|
+
];
|
|
4619
|
+
}
|
|
4620
|
+
if (locationType === exports.LocationType.NEBULA) {
|
|
4621
|
+
return [
|
|
4622
|
+
{ category: RESOURCE_GAS, maxTier: 5 },
|
|
4623
|
+
{ category: RESOURCE_REGOLITH, maxTier: 5 },
|
|
4624
|
+
];
|
|
4625
|
+
}
|
|
4626
|
+
if (locationType === exports.LocationType.ICE_FIELD) {
|
|
4627
|
+
return [
|
|
4628
|
+
{ category: RESOURCE_GAS, maxTier: 5 },
|
|
4629
|
+
{ category: RESOURCE_BIOMASS, maxTier: 5 },
|
|
4630
|
+
];
|
|
4631
|
+
}
|
|
4632
|
+
if (locationType === exports.LocationType.PLANET) {
|
|
4602
4633
|
switch (subtype) {
|
|
4603
4634
|
case PLANET_SUBTYPE_GAS_GIANT:
|
|
4604
|
-
return
|
|
4635
|
+
return [
|
|
4636
|
+
{ category: RESOURCE_GAS, maxTier: 10 },
|
|
4637
|
+
{ category: RESOURCE_CRYSTAL, maxTier: 3 },
|
|
4638
|
+
];
|
|
4605
4639
|
case PLANET_SUBTYPE_ROCKY:
|
|
4606
|
-
return
|
|
4640
|
+
return [
|
|
4641
|
+
{ category: RESOURCE_REGOLITH, maxTier: 10 },
|
|
4642
|
+
{ category: RESOURCE_ORE, maxTier: 3 },
|
|
4643
|
+
];
|
|
4607
4644
|
case PLANET_SUBTYPE_TERRESTRIAL:
|
|
4608
|
-
return
|
|
4645
|
+
return [
|
|
4646
|
+
{ category: RESOURCE_ORE, maxTier: 10 },
|
|
4647
|
+
{ category: RESOURCE_BIOMASS, maxTier: 3 },
|
|
4648
|
+
];
|
|
4609
4649
|
case PLANET_SUBTYPE_ICY:
|
|
4610
|
-
return
|
|
4650
|
+
return [
|
|
4651
|
+
{ category: RESOURCE_CRYSTAL, maxTier: 10 },
|
|
4652
|
+
{ category: RESOURCE_REGOLITH, maxTier: 3 },
|
|
4653
|
+
];
|
|
4611
4654
|
case PLANET_SUBTYPE_OCEAN:
|
|
4612
|
-
return
|
|
4655
|
+
return [
|
|
4656
|
+
{ category: RESOURCE_BIOMASS, maxTier: 10 },
|
|
4657
|
+
{ category: RESOURCE_GAS, maxTier: 3 },
|
|
4658
|
+
];
|
|
4613
4659
|
case PLANET_SUBTYPE_INDUSTRIAL:
|
|
4614
|
-
return
|
|
4660
|
+
return [
|
|
4661
|
+
{ category: RESOURCE_ORE, maxTier: 3 },
|
|
4662
|
+
{ category: RESOURCE_CRYSTAL, maxTier: 3 },
|
|
4663
|
+
{ category: RESOURCE_REGOLITH, maxTier: 3 },
|
|
4664
|
+
{ category: RESOURCE_BIOMASS, maxTier: 3 },
|
|
4665
|
+
];
|
|
4615
4666
|
}
|
|
4616
4667
|
}
|
|
4617
4668
|
return [];
|
|
4618
4669
|
}
|
|
4670
|
+
function getLocationCandidates(locationType, subtype) {
|
|
4671
|
+
const profile = getLocationProfile(locationType, subtype);
|
|
4672
|
+
const ids = [];
|
|
4673
|
+
for (const { category, maxTier } of profile) {
|
|
4674
|
+
for (let tier = 1; tier <= maxTier; tier++) {
|
|
4675
|
+
ids.push(resourceId(category, tier));
|
|
4676
|
+
}
|
|
4677
|
+
}
|
|
4678
|
+
return ids;
|
|
4679
|
+
}
|
|
4619
4680
|
function getEligibleResources(locationType, subtype, stratum) {
|
|
4620
4681
|
const candidates = getLocationCandidates(locationType, subtype);
|
|
4621
4682
|
return candidates.filter((itemId) => {
|
|
@@ -6799,13 +6860,13 @@ function getLocationType(gameSeed, coordinates) {
|
|
|
6799
6860
|
if (hashResult.array[0] >= LOCATION_EXISTS_THRESHOLD) {
|
|
6800
6861
|
return exports.LocationType.EMPTY;
|
|
6801
6862
|
}
|
|
6802
|
-
if (hashResult.array[1] < 96)
|
|
6863
|
+
if (hashResult.array[1] < 96)
|
|
6803
6864
|
return exports.LocationType.PLANET;
|
|
6804
|
-
|
|
6805
|
-
else if (hashResult.array[1] < 176) {
|
|
6865
|
+
if (hashResult.array[1] < 149)
|
|
6806
6866
|
return exports.LocationType.ASTEROID;
|
|
6807
|
-
|
|
6808
|
-
|
|
6867
|
+
if (hashResult.array[1] < 202)
|
|
6868
|
+
return exports.LocationType.NEBULA;
|
|
6869
|
+
return exports.LocationType.ICE_FIELD;
|
|
6809
6870
|
}
|
|
6810
6871
|
function isGatherableLocation(locationType) {
|
|
6811
6872
|
return locationType !== exports.LocationType.EMPTY;
|
|
@@ -6820,6 +6881,8 @@ function getLocationTypeName(type) {
|
|
|
6820
6881
|
return 'Asteroid';
|
|
6821
6882
|
case exports.LocationType.NEBULA:
|
|
6822
6883
|
return 'Nebula';
|
|
6884
|
+
case exports.LocationType.ICE_FIELD:
|
|
6885
|
+
return 'Ice Field';
|
|
6823
6886
|
}
|
|
6824
6887
|
}
|
|
6825
6888
|
function uint16(hash, offset) {
|
|
@@ -6847,6 +6910,14 @@ function generateNebulaName(hashResult) {
|
|
|
6847
6910
|
const nounIdx = uint16(hashResult, 2) % nebulaNouns.length;
|
|
6848
6911
|
return `${nebulaAdjectives[adjIdx]} ${nebulaNouns[nounIdx]}`;
|
|
6849
6912
|
}
|
|
6913
|
+
function generateIceFieldName(hashResult) {
|
|
6914
|
+
const A = 65;
|
|
6915
|
+
const letter1 = String.fromCharCode(A + (hashResult.array[0] % 26));
|
|
6916
|
+
const letter2 = String.fromCharCode(A + (hashResult.array[1] % 26));
|
|
6917
|
+
const subId = (hashResult.array[2] % 9) + 1;
|
|
6918
|
+
const num = (uint16(hashResult, 3) % 9000) + 1000;
|
|
6919
|
+
return `${letter1}${letter2}-${subId}/${num}`;
|
|
6920
|
+
}
|
|
6850
6921
|
function getSystemName(gameSeed, location) {
|
|
6851
6922
|
const seed = antelope.Checksum256.from(gameSeed);
|
|
6852
6923
|
const locationType = getLocationType(seed, location);
|
|
@@ -6862,6 +6933,8 @@ function getSystemName(gameSeed, location) {
|
|
|
6862
6933
|
return generateAsteroidName(hashResult);
|
|
6863
6934
|
case exports.LocationType.NEBULA:
|
|
6864
6935
|
return generateNebulaName(hashResult);
|
|
6936
|
+
case exports.LocationType.ICE_FIELD:
|
|
6937
|
+
return generateIceFieldName(hashResult);
|
|
6865
6938
|
default:
|
|
6866
6939
|
return generatePlanetName(hashResult);
|
|
6867
6940
|
}
|
|
@@ -6887,12 +6960,15 @@ function deriveLocationStatic(gameSeed, coordinates) {
|
|
|
6887
6960
|
if (hashResult.array[1] < 96) {
|
|
6888
6961
|
loc.type = antelope.UInt8.from(exports.LocationType.PLANET);
|
|
6889
6962
|
}
|
|
6890
|
-
else if (hashResult.array[1] <
|
|
6963
|
+
else if (hashResult.array[1] < 149) {
|
|
6891
6964
|
loc.type = antelope.UInt8.from(exports.LocationType.ASTEROID);
|
|
6892
6965
|
}
|
|
6893
|
-
else {
|
|
6966
|
+
else if (hashResult.array[1] < 202) {
|
|
6894
6967
|
loc.type = antelope.UInt8.from(exports.LocationType.NEBULA);
|
|
6895
6968
|
}
|
|
6969
|
+
else {
|
|
6970
|
+
loc.type = antelope.UInt8.from(exports.LocationType.ICE_FIELD);
|
|
6971
|
+
}
|
|
6896
6972
|
loc.subtype = antelope.UInt8.from(Number(loc.type) === exports.LocationType.PLANET ? hashResult.array[2] % 6 : hashResult.array[2]);
|
|
6897
6973
|
loc.seed0 = antelope.UInt8.from(hashResult.array[3]);
|
|
6898
6974
|
loc.seed1 = antelope.UInt8.from(hashResult.array[4]);
|
|
@@ -11840,6 +11916,7 @@ exports.getInterpolatedPosition = getInterpolatedPosition;
|
|
|
11840
11916
|
exports.getItem = getItem;
|
|
11841
11917
|
exports.getItems = getItems;
|
|
11842
11918
|
exports.getLocationCandidates = getLocationCandidates;
|
|
11919
|
+
exports.getLocationProfile = getLocationProfile;
|
|
11843
11920
|
exports.getLocationType = getLocationType;
|
|
11844
11921
|
exports.getLocationTypeName = getLocationTypeName;
|
|
11845
11922
|
exports.getModuleCapabilityType = getModuleCapabilityType;
|