fleets
Interfaces
Section titled “Interfaces”CapacitySummary
Section titled “CapacitySummary”Defined in: packages/sage/src/internal/fleet.ts:23
Used/total Fleet capacity in the units of its on-chain capacity axis.
Example
Section titled “Example”declare const capacity: CapacitySummary;const remaining = capacity.remaining;Properties
Section titled “Properties”overCapacity
Section titled “overCapacity”readonly overCapacity: bigint;Defined in: packages/sage/src/internal/fleet.ts:27
remaining
Section titled “remaining”readonly remaining: bigint;Defined in: packages/sage/src/internal/fleet.ts:26
readonly total: bigint;Defined in: packages/sage/src/internal/fleet.ts:25
readonly used: bigint;Defined in: packages/sage/src/internal/fleet.ts:24
FleetAccountData
Section titled “FleetAccountData”Defined in: packages/sage/src/internal/c4/fleet.ts:329
SDK-owned decoded Fleet data before registry definition resolution.
Example
Section titled “Example”declare const fleet: FleetAccountData;const owner = fleet.ownerProfile;Properties
Section titled “Properties”activeStimulants
Section titled “activeStimulants”readonly activeStimulants: readonly { chargesRemaining: number; deltaBps: number; stat: number;}[];Defined in: packages/sage/src/internal/c4/fleet.ts:364
ammoBank
Section titled “ammoBank”readonly ammoBank: FleetCargoAmountData;Defined in: packages/sage/src/internal/c4/fleet.ts:344
readonly ap: number;Defined in: packages/sage/src/internal/c4/fleet.ts:348
apReloadExpiresAt
Section titled “apReloadExpiresAt”readonly apReloadExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:353
readonly bump: number;Defined in: packages/sage/src/internal/c4/fleet.ts:331
cargoHold
Section titled “cargoHold”readonly cargoHold: FleetCargoPodData;Defined in: packages/sage/src/internal/c4/fleet.ts:363
components
Section titled “components”readonly components: FleetCargoPodData;Defined in: packages/sage/src/internal/c4/fleet.ts:362
crewCount
Section titled “crewCount”readonly crewCount: number;Defined in: packages/sage/src/internal/c4/fleet.ts:345
faction
Section titled “faction”readonly faction: "unaligned" | "mud" | "oni" | "ustur";Defined in: packages/sage/src/internal/c4/fleet.ts:336
fleetShips
Section titled “fleetShips”readonly fleetShips: readonly FleetShipAmountData[];Defined in: packages/sage/src/internal/c4/fleet.ts:360
fuelTank
Section titled “fuelTank”readonly fuelTank: FleetCargoAmountData;Defined in: packages/sage/src/internal/c4/fleet.ts:343
readonly game: Address;Defined in: packages/sage/src/internal/c4/fleet.ts:332
readonly hp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:350
lastCombatUpdate
Section titled “lastCombatUpdate”readonly lastCombatUpdate: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:355
lastUpdateAt
Section titled “lastUpdateAt”readonly lastUpdateAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:359
location
Section titled “location”readonly location: WorldCoordinates;Defined in: packages/sage/src/internal/c4/fleet.ts:356
locationRaw
Section titled “locationRaw”readonly locationRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/internal/c4/fleet.ts:358
Exact stored I8F56 coordinates; use these for arithmetic, not the display numbers.
readonly x: bigint;readonly y: bigint;readonly name: string;Defined in: packages/sage/src/internal/c4/fleet.ts:338
npcFactionId
Section titled “npcFactionId”readonly npcFactionId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:337
ownerProfile
Section titled “ownerProfile”readonly ownerProfile: Address;Defined in: packages/sage/src/internal/c4/fleet.ts:333
pendingHp
Section titled “pendingHp”readonly pendingHp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:351
rentedCrew
Section titled “rentedCrew”readonly rentedCrew: number;Defined in: packages/sage/src/internal/c4/fleet.ts:346
respawningCargo
Section titled “respawningCargo”readonly respawningCargo: FleetCargoPodData;Defined in: packages/sage/src/internal/c4/fleet.ts:361
scanCooldownExpiresAt
Section titled “scanCooldownExpiresAt”readonly scanCooldownExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:341
shieldBreakDelayExpiresAt
Section titled “shieldBreakDelayExpiresAt”readonly shieldBreakDelayExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:354
shipCounts
Section titled “shipCounts”readonly shipCounts: FleetShipCountsData;Defined in: packages/sage/src/internal/c4/fleet.ts:339
shipDefinitionsSeqId
Section titled “shipDefinitionsSeqId”readonly shipDefinitionsSeqId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:347
readonly sp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:349
stance
Section titled “stance”readonly stance: { ammoUsage: "none" | "light" | "heavy";};Defined in: packages/sage/src/internal/c4/fleet.ts:352
ammoUsage
Section titled “ammoUsage”readonly ammoUsage: "none" | "light" | "heavy";readonly state: FleetStateData;Defined in: packages/sage/src/internal/c4/fleet.ts:369
readonly stats: FleetStatsData;Defined in: packages/sage/src/internal/c4/fleet.ts:342
subProfile
Section titled “subProfile”readonly subProfile: Address;Defined in: packages/sage/src/internal/c4/fleet.ts:334
subProfileInvalidator
Section titled “subProfileInvalidator”readonly subProfileInvalidator: Address;Defined in: packages/sage/src/internal/c4/fleet.ts:335
version
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/fleet.ts:330
warpCooldownExpiresAt
Section titled “warpCooldownExpiresAt”readonly warpCooldownExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:340
FleetCargoAmountData
Section titled “FleetCargoAmountData”Defined in: packages/sage/src/internal/c4/fleet.ts:68
One unresolved cargo amount decoded from Fleet account data.
Example
Section titled “Example”declare const cargo: FleetCargoAmountData;const cargoId = cargo.cargoId;Properties
Section titled “Properties”amount
Section titled “amount”readonly amount: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:70
cargoId
Section titled “cargoId”readonly cargoId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:69
FleetCargoPodData
Section titled “FleetCargoPodData”Defined in: packages/sage/src/internal/c4/fleet.ts:80
One immutable cargo pod decoded from Fleet account data.
Example
Section titled “Example”declare const pod: FleetCargoPodData;const amounts = pod.amounts;Properties
Section titled “Properties”amounts
Section titled “amounts”readonly amounts: readonly FleetCargoAmountData[];Defined in: packages/sage/src/internal/c4/fleet.ts:83
readonly seqId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:81
storageCost
Section titled “storageCost”readonly storageCost: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:82
FleetCargoStatsData
Section titled “FleetCargoStatsData”Defined in: packages/sage/src/internal/c4/fleet.ts:200
Translated Fleet cargo statistics.
Example
Section titled “Example”declare const stats: FleetCargoStatsData;const capacity = stats.cargoCapacity;Properties
Section titled “Properties”ammoCapacity
Section titled “ammoCapacity”readonly ammoCapacity: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:203
ammoConsumptionRate
Section titled “ammoConsumptionRate”readonly ammoConsumptionRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:204
cargoCapacity
Section titled “cargoCapacity”readonly cargoCapacity: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:201
foodConsumptionRate
Section titled “foodConsumptionRate”readonly foodConsumptionRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:205
fuelCapacity
Section titled “fuelCapacity”readonly fuelCapacity: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:202
loadRate
Section titled “loadRate”readonly loadRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:207
miningRate
Section titled “miningRate”readonly miningRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:206
FleetCoordinateWarpEstimate
Section titled “FleetCoordinateWarpEstimate”Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:36
Whole-second duration including spool and whole-unit Fuel debit estimate. withinRange compares only computed distance with the stored maximum; it is not permission to travel. Raw distance has 56 fractional bits; AU is approximate.
Example
Section titled “Example”declare const estimate: FleetCoordinateWarpEstimate;console.log(estimate.durationSeconds, estimate.fuelDebit, estimate.withinRange);Properties
Section titled “Properties”distanceAu
Section titled “distanceAu”readonly distanceAu: number;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:37
distanceRaw
Section titled “distanceRaw”readonly distanceRaw: bigint;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:38
durationSeconds
Section titled “durationSeconds”readonly durationSeconds: bigint;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:39
fuelDebit
Section titled “fuelDebit”readonly fuelDebit: bigint;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:40
withinRange
Section titled “withinRange”readonly withinRange: boolean;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:41
Methods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:42
Returns
Section titled “Returns”unknown
FleetCoordinateWarpEstimateInput
Section titled “FleetCoordinateWarpEstimateInput”Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:17
Exact inputs for an Idle Fleet’s coordinate warp, not lane travel. Coordinates are I8F56, speed U16F16, Fuel rate U26F6, Character warp-speed modifier I32F32, range U8F8 and spool time integer seconds.
Example
Section titled “Example”const input: FleetCoordinateWarpEstimateInput = { fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n }, speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n, spoolSeconds: 3, maxWarpDistanceRaw: 256n,};Properties
Section titled “Properties”fromRaw
Section titled “fromRaw”readonly fromRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:18
readonly x: bigint;readonly y: bigint;fuelRateRaw
Section titled “fuelRateRaw”readonly fuelRateRaw: bigint;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:21
maxWarpDistanceRaw
Section titled “maxWarpDistanceRaw”readonly maxWarpDistanceRaw: bigint;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:24
speedModifierRaw
Section titled “speedModifierRaw”readonly speedModifierRaw: bigint;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:22
speedRaw
Section titled “speedRaw”readonly speedRaw: bigint;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:20
spoolSeconds
Section titled “spoolSeconds”readonly spoolSeconds: number;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:23
readonly toRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:19
readonly x: bigint;readonly y: bigint;FleetFixedValue
Section titled “FleetFixedValue”Defined in: packages/sage/src/internal/c4/fleet.ts:56
A translated fixed-point value retaining exact arithmetic source data.
Example
Section titled “Example”declare const fixed: FleetFixedValue;const exact = fixed.raw;Properties
Section titled “Properties”readonly raw: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:57
readonly value: number;Defined in: packages/sage/src/internal/c4/fleet.ts:58
FleetMiscStatsData
Section titled “FleetMiscStatsData”Defined in: packages/sage/src/internal/c4/fleet.ts:289
Translated miscellaneous Fleet statistics.
Example
Section titled “Example”declare const stats: FleetMiscStatsData;const requiredCrew = stats.requiredCrew;Properties
Section titled “Properties”lpValue
Section titled “lpValue”readonly lpValue: number;Defined in: packages/sage/src/internal/c4/fleet.ts:302
medallionValue
Section titled “medallionValue”readonly medallionValue: number;Defined in: packages/sage/src/internal/c4/fleet.ts:303
passengerCapacity
Section titled “passengerCapacity”readonly passengerCapacity: number;Defined in: packages/sage/src/internal/c4/fleet.ts:291
requiredCrew
Section titled “requiredCrew”readonly requiredCrew: number;Defined in: packages/sage/src/internal/c4/fleet.ts:290
respawnFeeAtlas
Section titled “respawnFeeAtlas”readonly respawnFeeAtlas: number;Defined in: packages/sage/src/internal/c4/fleet.ts:295
respawnFeeRaw
Section titled “respawnFeeRaw”readonly respawnFeeRaw: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:294
respawnTimeWithFeeSeconds
Section titled “respawnTimeWithFeeSeconds”readonly respawnTimeWithFeeSeconds: number;Defined in: packages/sage/src/internal/c4/fleet.ts:293
respawnTimeWithoutFeeSeconds
Section titled “respawnTimeWithoutFeeSeconds”readonly respawnTimeWithoutFeeSeconds: number;Defined in: packages/sage/src/internal/c4/fleet.ts:292
scanBonus
Section titled “scanBonus”readonly scanBonus: number;Defined in: packages/sage/src/internal/c4/fleet.ts:301
scanCoolDownSeconds
Section titled “scanCoolDownSeconds”readonly scanCoolDownSeconds: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:297
U16F16 fixed-point scanning cooldown in seconds.
scanCost
Section titled “scanCost”readonly scanCost: number;Defined in: packages/sage/src/internal/c4/fleet.ts:300
scanPower
Section titled “scanPower”readonly scanPower: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:299
U26F6 fixed-point scanning power.
xpValue
Section titled “xpValue”readonly xpValue: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:305
U16F16 fixed-point configured XP value; not an awarded-XP calculation.
FleetMovementStatsData
Section titled “FleetMovementStatsData”Defined in: packages/sage/src/internal/c4/fleet.ts:180
Translated Fleet movement statistics.
Example
Section titled “Example”declare const stats: FleetMovementStatsData;const speed = stats.subwarpSpeed.value;Properties
Section titled “Properties”maxWarpDistance
Section titled “maxWarpDistance”readonly maxWarpDistance: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:184
planetExitFuelAmount
Section titled “planetExitFuelAmount”readonly planetExitFuelAmount: number;Defined in: packages/sage/src/internal/c4/fleet.ts:188
subwarpFuelConsumptionRate
Section titled “subwarpFuelConsumptionRate”readonly subwarpFuelConsumptionRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:186
subwarpSpeed
Section titled “subwarpSpeed”readonly subwarpSpeed: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:181
subwarpXpRate
Section titled “subwarpXpRate”readonly subwarpXpRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:190
warpCoolDownSeconds
Section titled “warpCoolDownSeconds”readonly warpCoolDownSeconds: number;Defined in: packages/sage/src/internal/c4/fleet.ts:185
warpFuelConsumptionRate
Section titled “warpFuelConsumptionRate”readonly warpFuelConsumptionRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:187
warpLaneSpeed
Section titled “warpLaneSpeed”readonly warpLaneSpeed: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:183
warpSpeed
Section titled “warpSpeed”readonly warpSpeed: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:182
warpXpRate
Section titled “warpXpRate”readonly warpXpRate: FleetFixedValue;Defined in: packages/sage/src/internal/c4/fleet.ts:189
FleetShipAmountData
Section titled “FleetShipAmountData”Defined in: packages/sage/src/internal/c4/fleet.ts:93
One unresolved ship quantity decoded from Fleet account data.
Example
Section titled “Example”declare const ship: FleetShipAmountData;const quantity = ship.quantity;Properties
Section titled “Properties”quantity
Section titled “quantity”readonly quantity: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:95
shipId
Section titled “shipId”readonly shipId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:94
FleetShipCountsData
Section titled “FleetShipCountsData”Defined in: packages/sage/src/internal/c4/fleet.ts:105
Fleet ship counts by SAGE size class.
Example
Section titled “Example”declare const counts: FleetShipCountsData;const total = counts.total;Properties
Section titled “Properties”capital
Section titled “capital”readonly capital: number;Defined in: packages/sage/src/internal/c4/fleet.ts:112
commander
Section titled “commander”readonly commander: number;Defined in: packages/sage/src/internal/c4/fleet.ts:113
readonly large: number;Defined in: packages/sage/src/internal/c4/fleet.ts:111
medium
Section titled “medium”readonly medium: number;Defined in: packages/sage/src/internal/c4/fleet.ts:110
readonly small: number;Defined in: packages/sage/src/internal/c4/fleet.ts:109
readonly titan: number;Defined in: packages/sage/src/internal/c4/fleet.ts:114
readonly total: number;Defined in: packages/sage/src/internal/c4/fleet.ts:106
xSmall
Section titled “xSmall”readonly xSmall: number;Defined in: packages/sage/src/internal/c4/fleet.ts:108
xxSmall
Section titled “xxSmall”readonly xxSmall: number;Defined in: packages/sage/src/internal/c4/fleet.ts:107
FleetSnapshot
Section titled “FleetSnapshot”Defined in: packages/sage/src/fleets/index.ts:127
Immutable, translated Fleet snapshot with registry-resolved definitions.
Example
Section titled “Example”declare const ctx: SageContext;declare const fleetAddress: Address;const fleet: FleetSnapshot = await getFleet(ctx, fleetAddress);console.log(fleet.name, fleet.ships);Extends
Section titled “Extends”Omit<ResolvedFleetAccountData,"ownerProfile">
Extended by
Section titled “Extended by”Properties
Section titled “Properties”activeStimulants
Section titled “activeStimulants”readonly activeStimulants: readonly { chargesRemaining: number; deltaBps: number; stat: number;}[];Defined in: packages/sage/src/internal/c4/fleet.ts:364
Inherited from
Section titled “Inherited from”FleetAccountData.activeStimulants
address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/fleets/index.ts:132
readonly ammo: ResolvedCargoAmount;Defined in: packages/sage/src/internal/fleet.ts:103
Inherited from
Section titled “Inherited from”readonly ap: number;Defined in: packages/sage/src/internal/c4/fleet.ts:348
Inherited from
Section titled “Inherited from”apReloadExpiresAt
Section titled “apReloadExpiresAt”readonly apReloadExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:353
Inherited from
Section titled “Inherited from”FleetAccountData.apReloadExpiresAt
readonly bump: number;Defined in: packages/sage/src/internal/c4/fleet.ts:331
Inherited from
Section titled “Inherited from”capacities
Section titled “capacities”readonly capacities: { ammo: CapacitySummary; cargo: CapacitySummary; fuel: CapacitySummary;};Defined in: packages/sage/src/internal/fleet.ts:119
readonly ammo: CapacitySummary;readonly cargo: CapacitySummary;readonly fuel: CapacitySummary;Inherited from
Section titled “Inherited from”Omit.capacitiescargoHold
Section titled “cargoHold”readonly cargoHold: { items: readonly ResolvedCargoAmount[]; seqId: number; storageCost: bigint;};Defined in: packages/sage/src/internal/fleet.ts:104
readonly items: readonly ResolvedCargoAmount[];readonly seqId: number;storageCost
Section titled “storageCost”readonly storageCost: bigint;Inherited from
Section titled “Inherited from”Omit.cargoHoldcomponents
Section titled “components”readonly components: { items: readonly ResolvedCargoAmount[]; seqId: number; storageCost: bigint;};Defined in: packages/sage/src/internal/fleet.ts:109
readonly items: readonly ResolvedCargoAmount[];readonly seqId: number;storageCost
Section titled “storageCost”readonly storageCost: bigint;Inherited from
Section titled “Inherited from”Omit.componentscrewCount
Section titled “crewCount”readonly crewCount: number;Defined in: packages/sage/src/internal/c4/fleet.ts:345
Inherited from
Section titled “Inherited from”faction
Section titled “faction”readonly faction: "unaligned" | "mud" | "oni" | "ustur";Defined in: packages/sage/src/internal/c4/fleet.ts:336
Inherited from
Section titled “Inherited from”readonly fuel: ResolvedCargoAmount;Defined in: packages/sage/src/internal/fleet.ts:102
Inherited from
Section titled “Inherited from”readonly game: Address;Defined in: packages/sage/src/internal/c4/fleet.ts:332
Inherited from
Section titled “Inherited from”readonly hp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:350
Inherited from
Section titled “Inherited from”readonly kind: "fleet";Defined in: packages/sage/src/fleets/index.ts:131
lastCombatUpdate
Section titled “lastCombatUpdate”readonly lastCombatUpdate: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:355
Inherited from
Section titled “Inherited from”FleetAccountData.lastCombatUpdate
lastUpdateAt
Section titled “lastUpdateAt”readonly lastUpdateAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:359
Inherited from
Section titled “Inherited from”location
Section titled “location”readonly location: WorldCoordinates;Defined in: packages/sage/src/internal/c4/fleet.ts:356
Inherited from
Section titled “Inherited from”locationRaw
Section titled “locationRaw”readonly locationRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/internal/c4/fleet.ts:358
Exact stored I8F56 coordinates; use these for arithmetic, not the display numbers.
readonly x: bigint;readonly y: bigint;Inherited from
Section titled “Inherited from”readonly name: string;Defined in: packages/sage/src/internal/c4/fleet.ts:338
Inherited from
Section titled “Inherited from”npcFactionId
Section titled “npcFactionId”readonly npcFactionId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:337
Inherited from
Section titled “Inherited from”ownerProfile
Section titled “ownerProfile”readonly ownerProfile: EntityRef<"profile">;Defined in: packages/sage/src/fleets/index.ts:133
pendingHp
Section titled “pendingHp”readonly pendingHp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:351
Inherited from
Section titled “Inherited from”rentedCrew
Section titled “rentedCrew”readonly rentedCrew: number;Defined in: packages/sage/src/internal/c4/fleet.ts:346
Inherited from
Section titled “Inherited from”respawningCargo
Section titled “respawningCargo”readonly respawningCargo: { items: readonly ResolvedCargoAmount[]; seqId: number; storageCost: bigint;};Defined in: packages/sage/src/internal/fleet.ts:114
readonly items: readonly ResolvedCargoAmount[];readonly seqId: number;storageCost
Section titled “storageCost”readonly storageCost: bigint;Inherited from
Section titled “Inherited from”Omit.respawningCargoscanCooldownExpiresAt
Section titled “scanCooldownExpiresAt”readonly scanCooldownExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:341
Inherited from
Section titled “Inherited from”FleetAccountData.scanCooldownExpiresAt
shieldBreakDelayExpiresAt
Section titled “shieldBreakDelayExpiresAt”readonly shieldBreakDelayExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:354
Inherited from
Section titled “Inherited from”FleetAccountData.shieldBreakDelayExpiresAt
shipCounts
Section titled “shipCounts”readonly shipCounts: FleetShipCountsData;Defined in: packages/sage/src/internal/c4/fleet.ts:339
Inherited from
Section titled “Inherited from”shipDefinitionsSeqId
Section titled “shipDefinitionsSeqId”readonly shipDefinitionsSeqId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:347
Inherited from
Section titled “Inherited from”FleetAccountData.shipDefinitionsSeqId
readonly ships: readonly ResolvedShipAmount[];Defined in: packages/sage/src/internal/fleet.ts:101
Inherited from
Section titled “Inherited from”Omit.shipsreadonly sp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:349
Inherited from
Section titled “Inherited from”stance
Section titled “stance”readonly stance: { ammoUsage: "none" | "light" | "heavy";};Defined in: packages/sage/src/internal/c4/fleet.ts:352
ammoUsage
Section titled “ammoUsage”readonly ammoUsage: "none" | "light" | "heavy";Inherited from
Section titled “Inherited from”readonly state: ResolvedFleetState;Defined in: packages/sage/src/internal/fleet.ts:124
Inherited from
Section titled “Inherited from”ResolvedFleetAccountData.state
readonly stats: FleetStatsData;Defined in: packages/sage/src/internal/c4/fleet.ts:342
Inherited from
Section titled “Inherited from”subProfile?
Section titled “subProfile?”readonly optional subProfile?: Address;Defined in: packages/sage/src/internal/fleet.ts:98
Inherited from
Section titled “Inherited from”Omit.subProfilesubProfileInvalidator?
Section titled “subProfileInvalidator?”readonly optional subProfileInvalidator?: Address;Defined in: packages/sage/src/internal/fleet.ts:100
The absent encoding is not yet qualified; presence alone does not establish rental authority.
Inherited from
Section titled “Inherited from”Omit.subProfileInvalidatorversion
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/fleet.ts:330
Inherited from
Section titled “Inherited from”warpCooldownExpiresAt
Section titled “warpCooldownExpiresAt”readonly warpCooldownExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:340
Inherited from
Section titled “Inherited from”FleetAccountData.warpCooldownExpiresAt
Methods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/fleets/index.ts:134
Returns
Section titled “Returns”unknown
FleetStatsData
Section titled “FleetStatsData”Defined in: packages/sage/src/internal/c4/fleet.ts:315
Grouped translated Fleet statistics.
Example
Section titled “Example”declare const stats: FleetStatsData;const movement = stats.movement;Properties
Section titled “Properties”readonly cargo: FleetCargoStatsData;Defined in: packages/sage/src/internal/c4/fleet.ts:317
combat
Section titled “combat”readonly combat: FleetCombatStatsData;Defined in: packages/sage/src/internal/c4/fleet.ts:318
readonly misc: FleetMiscStatsData;Defined in: packages/sage/src/internal/c4/fleet.ts:319
movement
Section titled “movement”readonly movement: FleetMovementStatsData;Defined in: packages/sage/src/internal/c4/fleet.ts:316
FleetSubscriptionObserver
Section titled “FleetSubscriptionObserver”Defined in: packages/sage/src/fleets/index.ts:148
Observer for live, fully translated Fleet snapshots.
Example
Section titled “Example”const observer: FleetSubscriptionObserver = { onSnapshot: fleet => console.log(fleet.name), onError: error => console.error(error.code), onDiagnostic: event => console.debug(event.kind, event.coalescedCount),};Properties
Section titled “Properties”onDiagnostic?
Section titled “onDiagnostic?”readonly optional onDiagnostic?: (event) => void;Defined in: packages/sage/src/fleets/index.ts:151
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
event | SubscriptionDiagnosticEvent |
Returns
Section titled “Returns”void
onError
Section titled “onError”readonly onError: (error) => void | Promise<void>;Defined in: packages/sage/src/fleets/index.ts:150
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
error | SageSdkError |
Returns
Section titled “Returns”void | Promise<void>
onSnapshot
Section titled “onSnapshot”readonly onSnapshot: (fleet) => void | Promise<void>;Defined in: packages/sage/src/fleets/index.ts:149
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
fleet | FleetSnapshot |
Returns
Section titled “Returns”void | Promise<void>
FleetSubwarpEstimate
Section titled “FleetSubwarpEstimate”Defined in: packages/sage/src/fleets/subwarp-estimate.ts:37
Prospective journey values; all three raw outputs have 56 fractional bits. Display numbers are approximate. fuelBudget rounds recorded expenditure up to whole Fuel units; it is not a measured settlement debit or travel approval.
Example
Section titled “Example”declare const estimate: FleetSubwarpEstimate;const budget: bigint = estimate.fuelBudget;console.log(estimate.durationSeconds, JSON.stringify(estimate));Properties
Section titled “Properties”distanceAu
Section titled “distanceAu”readonly distanceAu: number;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:38
distanceRaw
Section titled “distanceRaw”readonly distanceRaw: bigint;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:39
durationSeconds
Section titled “durationSeconds”readonly durationSeconds: number;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:40
durationSecondsRaw
Section titled “durationSecondsRaw”readonly durationSecondsRaw: bigint;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:41
fuelBudget
Section titled “fuelBudget”readonly fuelBudget: bigint;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:44
fuelExpenditure
Section titled “fuelExpenditure”readonly fuelExpenditure: number;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:42
fuelExpenditureRaw
Section titled “fuelExpenditureRaw”readonly fuelExpenditureRaw: bigint;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:43
Methods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:45
Returns
Section titled “Returns”unknown
FleetSubwarpEstimateInput
Section titled “FleetSubwarpEstimateInput”Defined in: packages/sage/src/fleets/subwarp-estimate.ts:19
Raw inputs for an Idle Fleet’s direct subwarp journey. Coordinates use signed I8F56, speed U16F16, Fuel rate U26F6 and the Character subwarp-speed modifier I32F32. Use the Fleet’s exact stored locationRaw; reconstructing it from location display numbers loses precision.
Example
Section titled “Example”const input: FleetSubwarpEstimateInput = { fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n }, speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,};Properties
Section titled “Properties”fromRaw
Section titled “fromRaw”readonly fromRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/fleets/subwarp-estimate.ts:20
readonly x: bigint;readonly y: bigint;fuelRateRaw
Section titled “fuelRateRaw”readonly fuelRateRaw: bigint;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:23
speedModifierRaw
Section titled “speedModifierRaw”readonly speedModifierRaw: bigint;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:24
speedRaw
Section titled “speedRaw”readonly speedRaw: bigint;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:22
readonly toRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/fleets/subwarp-estimate.ts:21
readonly x: bigint;readonly y: bigint;FleetTimers
Section titled “FleetTimers”Defined in: packages/sage/src/internal/fleet.ts:291
Date-valued timers derived from Fleet account sentinels and lifecycle state.
Fleet snapshots retain their exact bigint unix-second fields; these values are an ergonomic projection for UI scheduling and display.
Example
Section titled “Example”declare const timers: FleetTimers;console.log( timers.arrivesAt?.toISOString(), timers.transferEndsAt?.toISOString(),);Properties
Section titled “Properties”abilityPowerReloadsAt?
Section titled “abilityPowerReloadsAt?”readonly optional abilityPowerReloadsAt?: Date;Defined in: packages/sage/src/internal/fleet.ts:294
arrivesAt?
Section titled “arrivesAt?”readonly optional arrivesAt?: Date;Defined in: packages/sage/src/internal/fleet.ts:296
recoversAt?
Section titled “recoversAt?”readonly optional recoversAt?: Date;Defined in: packages/sage/src/internal/fleet.ts:297
scanCooldownEndsAt?
Section titled “scanCooldownEndsAt?”readonly optional scanCooldownEndsAt?: Date;Defined in: packages/sage/src/internal/fleet.ts:293
shieldRegenerationResumesAt?
Section titled “shieldRegenerationResumesAt?”readonly optional shieldRegenerationResumesAt?: Date;Defined in: packages/sage/src/internal/fleet.ts:295
transferEndsAt?
Section titled “transferEndsAt?”readonly optional transferEndsAt?: Date;Defined in: packages/sage/src/internal/fleet.ts:298
warpCooldownEndsAt?
Section titled “warpCooldownEndsAt?”readonly optional warpCooldownEndsAt?: Date;Defined in: packages/sage/src/internal/fleet.ts:292
FleetTravelProfile
Section titled “FleetTravelProfile”Defined in: packages/sage/src/fleets/travel-profile.ts:52
Reference travel values per AU, per maximum-range warp and per full tank. Each section is null when its speed (or warp range) is zero. Whole seconds and whole Fuel are bigint, as in the movement estimates; ratios are numbers. A null full-tank value means that movement mode burns no Fuel.
Example
Section titled “Example”declare const profile: FleetTravelProfile;console.log(profile.subwarp?.fullTankRangeAu, JSON.stringify(profile));Properties
Section titled “Properties”coordinateWarp
Section titled “coordinateWarp”readonly coordinateWarp: | { cooldownSeconds: bigint; cycleSeconds: bigint; fullTankRangeAu: number | null; maxJumpAu: number; maxJumpFuel: bigint; maxJumpSeconds: bigint; maxJumpsPerFullTank: bigint | null; sustainedAuPerHour: number;} | null;Defined in: packages/sage/src/fleets/travel-profile.ts:63
Union Members
Section titled “Union Members”Type Literal
Section titled “Type Literal”{ cooldownSeconds: bigint; cycleSeconds: bigint; fullTankRangeAu: number | null; maxJumpAu: number; maxJumpFuel: bigint; maxJumpSeconds: bigint; maxJumpsPerFullTank: bigint | null; sustainedAuPerHour: number;}cooldownSeconds
Section titled “cooldownSeconds”readonly cooldownSeconds: bigint;Whole seconds of warp cooldown assigned at arrival.
cycleSeconds
Section titled “cycleSeconds”readonly cycleSeconds: bigint;Seconds from one maximum-range departure to the next: jump plus cooldown.
fullTankRangeAu
Section titled “fullTankRangeAu”readonly fullTankRangeAu: number | null;Distance covered by those warps.
maxJumpAu
Section titled “maxJumpAu”readonly maxJumpAu: number;Maximum coordinate-warp distance, in AU.
maxJumpFuel
Section titled “maxJumpFuel”readonly maxJumpFuel: bigint;Whole Fuel debited for one maximum-range warp.
maxJumpSeconds
Section titled “maxJumpSeconds”readonly maxJumpSeconds: bigint;Whole seconds for one maximum-range warp, including spool.
maxJumpsPerFullTank
Section titled “maxJumpsPerFullTank”readonly maxJumpsPerFullTank: bigint | null;Maximum-range warp debits that fit in a full tank.
sustainedAuPerHour
Section titled “sustainedAuPerHour”readonly sustainedAuPerHour: number;AU per hour when chaining maximum-range warps as cooldown allows.
null
subwarp
Section titled “subwarp”readonly subwarp: | { fuelPerAu: number; fullTankRangeAu: number | null; fullTankSeconds: number | null; secondsPerAu: number;} | null;Defined in: packages/sage/src/fleets/travel-profile.ts:53
Union Members
Section titled “Union Members”Type Literal
Section titled “Type Literal”{ fuelPerAu: number; fullTankRangeAu: number | null; fullTankSeconds: number | null; secondsPerAu: number;}fuelPerAu
Section titled “fuelPerAu”readonly fuelPerAu: number;Fractional Fuel expenditure recorded for one AU.
fullTankRangeAu
Section titled “fullTankRangeAu”readonly fullTankRangeAu: number | null;Subwarp distance whose Fuel expenditure equals a full tank.
fullTankSeconds
Section titled “fullTankSeconds”readonly fullTankSeconds: number | null;Seconds to subwarp the full-tank range.
secondsPerAu
Section titled “secondsPerAu”readonly secondsPerAu: number;Seconds to subwarp exactly one AU.
null
warpLane
Section titled “warpLane”readonly warpLane: | { secondsPerAu: number;} | null;Defined in: packages/sage/src/fleets/travel-profile.ts:81
Union Members
Section titled “Union Members”Type Literal
Section titled “Type Literal”{ secondsPerAu: number;}secondsPerAu
Section titled “secondsPerAu”readonly secondsPerAu: number;Seconds per AU of lane; each hop rounds up to whole seconds.
null
Methods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/fleets/travel-profile.ts:85
Returns
Section titled “Returns”unknown
FleetTravelProfileInput
Section titled “FleetTravelProfileInput”Defined in: packages/sage/src/fleets/travel-profile.ts:22
Stats read by the travel profile: a Fleet’s stats or a ship configuration’s
stats, which equal a one-ship Fleet’s. Character modifiers are raw I32F32
values; omitted or zero modifiers are neutral, as in the movement estimates.
Example
Section titled “Example”declare const ship: { readonly stats: FleetTravelProfileInput['stats'] };const input: FleetTravelProfileInput = { stats: ship.stats };Properties
Section titled “Properties”readonly stats: { cargo: Pick<FleetCargoStatsData, "fuelCapacity">; combat: Pick<FleetCombatStatsData, "warpSpoolTimeSeconds">; movement: Pick<FleetMovementStatsData, | "subwarpSpeed" | "subwarpFuelConsumptionRate" | "warpSpeed" | "warpFuelConsumptionRate" | "maxWarpDistance" | "warpCoolDownSeconds" | "warpLaneSpeed">;};Defined in: packages/sage/src/fleets/travel-profile.ts:23
readonly cargo: Pick<FleetCargoStatsData, "fuelCapacity">;combat
Section titled “combat”readonly combat: Pick<FleetCombatStatsData, "warpSpoolTimeSeconds">;movement
Section titled “movement”readonly movement: Pick<FleetMovementStatsData, | "subwarpSpeed" | "subwarpFuelConsumptionRate" | "warpSpeed" | "warpFuelConsumptionRate" | "maxWarpDistance" | "warpCoolDownSeconds"| "warpLaneSpeed">;subwarpSpeedModifierRaw?
Section titled “subwarpSpeedModifierRaw?”readonly optional subwarpSpeedModifierRaw?: bigint;Defined in: packages/sage/src/fleets/travel-profile.ts:37
warpCooldownModifierRaw?
Section titled “warpCooldownModifierRaw?”readonly optional warpCooldownModifierRaw?: bigint;Defined in: packages/sage/src/fleets/travel-profile.ts:39
warpSpeedModifierRaw?
Section titled “warpSpeedModifierRaw?”readonly optional warpSpeedModifierRaw?: bigint;Defined in: packages/sage/src/fleets/travel-profile.ts:38
FleetWarpLaneEstimate
Section titled “FleetWarpLaneEstimate”Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:29
Whole-second lane duration and zero Fuel debit on the qualified deployment. Raw distance has 56 fractional bits; AU is approximate.
Example
Section titled “Example”declare const estimate: FleetWarpLaneEstimate;console.log(estimate.durationSeconds, estimate.fuelDebit);Properties
Section titled “Properties”distanceAu
Section titled “distanceAu”readonly distanceAu: number;Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:30
distanceRaw
Section titled “distanceRaw”readonly distanceRaw: bigint;Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:31
durationSeconds
Section titled “durationSeconds”readonly durationSeconds: bigint;Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:32
fuelDebit
Section titled “fuelDebit”readonly fuelDebit: 0n;Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:33
Methods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:34
Returns
Section titled “Returns”unknown
FleetWarpLaneEstimateInput
Section titled “FleetWarpLaneEstimateInput”Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:15
Exact System coordinates (I8F56) and Fleet lane speed (U16F16). No Character warp-speed modifier or spool time applies to lane travel.
Example
Section titled “Example”const input: FleetWarpLaneEstimateInput = { fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n }, speedRaw: 65536n,};Properties
Section titled “Properties”fromRaw
Section titled “fromRaw”readonly fromRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:16
readonly x: bigint;readonly y: bigint;speedRaw
Section titled “speedRaw”readonly speedRaw: bigint;Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:18
readonly toRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:17
readonly x: bigint;readonly y: bigint;FleetWarpLanePolicy
Section titled “FleetWarpLanePolicy”Defined in: packages/sage/src/fleets/warp-lane-policy.ts:52
Policy result only: passing never proves travel eligibility or affordability.
Example
Section titled “Example”declare const assessment: FleetWarpLanePolicy;console.log(assessment.passesPolicy, assessment.failures);Properties
Section titled “Properties”effectiveRisk
Section titled “effectiveRisk”readonly effectiveRisk: | { faction: FactionAlignment; kind: "low";} | { kind: "medium" | "high";};Defined in: packages/sage/src/fleets/warp-lane-policy.ts:55
failures
Section titled “failures”readonly failures: readonly FleetWarpLanePolicyFailure[];Defined in: packages/sage/src/fleets/warp-lane-policy.ts:54
passesPolicy
Section titled “passesPolicy”readonly passesPolicy: boolean;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:53
Methods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:56
Returns
Section titled “Returns”unknown
FleetWarpLanePolicyInput
Section titled “FleetWarpLanePolicyInput”Defined in: packages/sage/src/fleets/warp-lane-policy.ts:15
Explicit lane policy inputs; destinationRegion must contain the destination coordinates. A System’s stored region id alone does not establish this spatial relationship.
Example
Section titled “Example”declare const input: FleetWarpLanePolicyInput;console.log(input.destinationRegion.risk, input.securityZoneAccess);Properties
Section titled “Properties”crossFactionEconomicsEnabled
Section titled “crossFactionEconomicsEnabled”readonly crossFactionEconomicsEnabled: boolean;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:21
destinationLevel
Section titled “destinationLevel”readonly destinationLevel: WorldStarbaseLevel;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:20
destinationOwner
Section titled “destinationOwner”readonly destinationOwner: WorldFaction;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:18
destinationRegion
Section titled “destinationRegion”readonly destinationRegion: Pick<FactionRegionData, "owner" | "safety" | "risk">;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:22
enemyFactionZoneAccess
Section titled “enemyFactionZoneAccess”readonly enemyFactionZoneAccess: boolean;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:28
The Character’s enemy-faction-zone access research.
fleetFaction
Section titled “fleetFaction”readonly fleetFaction: WorldFaction;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:16
securityZoneAccess
Section titled “securityZoneAccess”readonly securityZoneAccess: RiskZoneAccess;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:26
sourceLevel
Section titled “sourceLevel”readonly sourceLevel: WorldStarbaseLevel;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:19
sourceOwner
Section titled “sourceOwner”readonly sourceOwner: WorldFaction;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:17
FleetWarpLaneToll
Section titled “FleetWarpLaneToll”Defined in: packages/sage/src/fleets/warp-lane-toll.ts:45
Character’s prospective ATLAS debit, entirely in raw ATLAS units (Floyds).
Example
Section titled “Example”declare const toll: FleetWarpLaneToll;console.log(toll.modifiedBaseRaw, toll.surchargeRaw, toll.totalRaw);Properties
Section titled “Properties”baseRaw
Section titled “baseRaw”readonly baseRaw: bigint;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:46
modifiedBaseRaw
Section titled “modifiedBaseRaw”readonly modifiedBaseRaw: bigint;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:47
surchargeRaw
Section titled “surchargeRaw”readonly surchargeRaw: bigint;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:48
totalRaw
Section titled “totalRaw”readonly totalRaw: bigint;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:49
Methods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:50
Returns
Section titled “Returns”unknown
FleetWarpLaneTollInput
Section titled “FleetWarpLaneTollInput”Defined in: packages/sage/src/fleets/warp-lane-toll.ts:18
Current source connection costs, ownership and Character fee modifier. destinationRelationship is Fleet-to-destination-owner, not endpoint-to-endpoint.
Example
Section titled “Example”declare const input: FleetWarpLaneTollInput;console.log(input.sourceLevel, input.feeModifierRaw);Properties
Section titled “Properties”alliedTollBps
Section titled “alliedTollBps”readonly alliedTollBps: number;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:34
readonly costs: Pick<WorldConnectionCosts, | "level1Raw" | "level2Raw" | "level3Raw" | "level4Raw" | "level5Raw"| "cssRaw">;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:19
destinationOwner
Section titled “destinationOwner”readonly destinationOwner: WorldFaction;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:31
destinationRelationship
Section titled “destinationRelationship”readonly destinationRelationship: FactionRelationship;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:32
feeModifierRaw
Section titled “feeModifierRaw”readonly feeModifierRaw: bigint;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:33
fleetFaction
Section titled “fleetFaction”readonly fleetFaction: WorldFaction;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:29
neutralTollBps
Section titled “neutralTollBps”readonly neutralTollBps: number;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:35
sourceLevel
Section titled “sourceLevel”readonly sourceLevel: WorldStarbaseLevel;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:28
sourceOwner
Section titled “sourceOwner”readonly sourceOwner: WorldFaction;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:30
ResolvedFleetAccountData
Section titled “ResolvedFleetAccountData”Defined in: packages/sage/src/internal/fleet.ts:86
Fleet data after joining account ids against the lazy definitions registry.
Example
Section titled “Example”declare const fleet: ResolvedFleetAccountData;const shipName = fleet.ships[0]?.name;Extends
Section titled “Extends”Omit<FleetAccountData, |"fleetShips"|"fuelTank"|"ammoBank"|"cargoHold"|"components"|"respawningCargo"|"state"|"subProfile"|"subProfileInvalidator">
Properties
Section titled “Properties”activeStimulants
Section titled “activeStimulants”readonly activeStimulants: readonly { chargesRemaining: number; deltaBps: number; stat: number;}[];Defined in: packages/sage/src/internal/c4/fleet.ts:364
Inherited from
Section titled “Inherited from”FleetAccountData.activeStimulants
readonly ammo: ResolvedCargoAmount;Defined in: packages/sage/src/internal/fleet.ts:103
readonly ap: number;Defined in: packages/sage/src/internal/c4/fleet.ts:348
Inherited from
Section titled “Inherited from”apReloadExpiresAt
Section titled “apReloadExpiresAt”readonly apReloadExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:353
Inherited from
Section titled “Inherited from”FleetAccountData.apReloadExpiresAt
readonly bump: number;Defined in: packages/sage/src/internal/c4/fleet.ts:331
Inherited from
Section titled “Inherited from”capacities
Section titled “capacities”readonly capacities: { ammo: CapacitySummary; cargo: CapacitySummary; fuel: CapacitySummary;};Defined in: packages/sage/src/internal/fleet.ts:119
readonly ammo: CapacitySummary;readonly cargo: CapacitySummary;readonly fuel: CapacitySummary;cargoHold
Section titled “cargoHold”readonly cargoHold: { items: readonly ResolvedCargoAmount[]; seqId: number; storageCost: bigint;};Defined in: packages/sage/src/internal/fleet.ts:104
readonly items: readonly ResolvedCargoAmount[];readonly seqId: number;storageCost
Section titled “storageCost”readonly storageCost: bigint;components
Section titled “components”readonly components: { items: readonly ResolvedCargoAmount[]; seqId: number; storageCost: bigint;};Defined in: packages/sage/src/internal/fleet.ts:109
readonly items: readonly ResolvedCargoAmount[];readonly seqId: number;storageCost
Section titled “storageCost”readonly storageCost: bigint;crewCount
Section titled “crewCount”readonly crewCount: number;Defined in: packages/sage/src/internal/c4/fleet.ts:345
Inherited from
Section titled “Inherited from”faction
Section titled “faction”readonly faction: "unaligned" | "mud" | "oni" | "ustur";Defined in: packages/sage/src/internal/c4/fleet.ts:336
Inherited from
Section titled “Inherited from”readonly fuel: ResolvedCargoAmount;Defined in: packages/sage/src/internal/fleet.ts:102
readonly game: Address;Defined in: packages/sage/src/internal/c4/fleet.ts:332
Inherited from
Section titled “Inherited from”readonly hp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:350
Inherited from
Section titled “Inherited from”lastCombatUpdate
Section titled “lastCombatUpdate”readonly lastCombatUpdate: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:355
Inherited from
Section titled “Inherited from”FleetAccountData.lastCombatUpdate
lastUpdateAt
Section titled “lastUpdateAt”readonly lastUpdateAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:359
Inherited from
Section titled “Inherited from”location
Section titled “location”readonly location: WorldCoordinates;Defined in: packages/sage/src/internal/c4/fleet.ts:356
Inherited from
Section titled “Inherited from”locationRaw
Section titled “locationRaw”readonly locationRaw: { x: bigint; y: bigint;};Defined in: packages/sage/src/internal/c4/fleet.ts:358
Exact stored I8F56 coordinates; use these for arithmetic, not the display numbers.
readonly x: bigint;readonly y: bigint;Inherited from
Section titled “Inherited from”readonly name: string;Defined in: packages/sage/src/internal/c4/fleet.ts:338
Inherited from
Section titled “Inherited from”npcFactionId
Section titled “npcFactionId”readonly npcFactionId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:337
Inherited from
Section titled “Inherited from”ownerProfile
Section titled “ownerProfile”readonly ownerProfile: Address;Defined in: packages/sage/src/internal/c4/fleet.ts:333
Inherited from
Section titled “Inherited from”pendingHp
Section titled “pendingHp”readonly pendingHp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:351
Inherited from
Section titled “Inherited from”rentedCrew
Section titled “rentedCrew”readonly rentedCrew: number;Defined in: packages/sage/src/internal/c4/fleet.ts:346
Inherited from
Section titled “Inherited from”respawningCargo
Section titled “respawningCargo”readonly respawningCargo: { items: readonly ResolvedCargoAmount[]; seqId: number; storageCost: bigint;};Defined in: packages/sage/src/internal/fleet.ts:114
readonly items: readonly ResolvedCargoAmount[];readonly seqId: number;storageCost
Section titled “storageCost”readonly storageCost: bigint;scanCooldownExpiresAt
Section titled “scanCooldownExpiresAt”readonly scanCooldownExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:341
Inherited from
Section titled “Inherited from”FleetAccountData.scanCooldownExpiresAt
shieldBreakDelayExpiresAt
Section titled “shieldBreakDelayExpiresAt”readonly shieldBreakDelayExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:354
Inherited from
Section titled “Inherited from”FleetAccountData.shieldBreakDelayExpiresAt
shipCounts
Section titled “shipCounts”readonly shipCounts: FleetShipCountsData;Defined in: packages/sage/src/internal/c4/fleet.ts:339
Inherited from
Section titled “Inherited from”shipDefinitionsSeqId
Section titled “shipDefinitionsSeqId”readonly shipDefinitionsSeqId: number;Defined in: packages/sage/src/internal/c4/fleet.ts:347
Inherited from
Section titled “Inherited from”FleetAccountData.shipDefinitionsSeqId
readonly ships: readonly ResolvedShipAmount[];Defined in: packages/sage/src/internal/fleet.ts:101
readonly sp: number;Defined in: packages/sage/src/internal/c4/fleet.ts:349
Inherited from
Section titled “Inherited from”stance
Section titled “stance”readonly stance: { ammoUsage: "none" | "light" | "heavy";};Defined in: packages/sage/src/internal/c4/fleet.ts:352
ammoUsage
Section titled “ammoUsage”readonly ammoUsage: "none" | "light" | "heavy";Inherited from
Section titled “Inherited from”readonly state: ResolvedFleetState;Defined in: packages/sage/src/internal/fleet.ts:124
readonly stats: FleetStatsData;Defined in: packages/sage/src/internal/c4/fleet.ts:342
Inherited from
Section titled “Inherited from”subProfile?
Section titled “subProfile?”readonly optional subProfile?: Address;Defined in: packages/sage/src/internal/fleet.ts:98
subProfileInvalidator?
Section titled “subProfileInvalidator?”readonly optional subProfileInvalidator?: Address;Defined in: packages/sage/src/internal/fleet.ts:100
The absent encoding is not yet qualified; presence alone does not establish rental authority.
version
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/fleet.ts:330
Inherited from
Section titled “Inherited from”warpCooldownExpiresAt
Section titled “warpCooldownExpiresAt”readonly warpCooldownExpiresAt: bigint;Defined in: packages/sage/src/internal/c4/fleet.ts:340
Inherited from
Section titled “Inherited from”FleetAccountData.warpCooldownExpiresAt
SubwarpPosition
Section titled “SubwarpPosition”Defined in: packages/sage/src/internal/fleet.ts:384
Display-only interpolation matching incremental on-chain subwarp settlement.
Example
Section titled “Example”declare const subwarp: SubwarpPosition;if (subwarp.displayOnly) console.log(subwarp.position, subwarp.progress);Properties
Section titled “Properties”displayOnly
Section titled “displayOnly”readonly displayOnly: true;Defined in: packages/sage/src/internal/fleet.ts:385
position
Section titled “position”readonly position: WorldCoordinates;Defined in: packages/sage/src/internal/fleet.ts:386
progress
Section titled “progress”readonly progress: number;Defined in: packages/sage/src/internal/fleet.ts:387
WorldCoordinates
Section titled “WorldCoordinates”Defined in: packages/sage/src/internal/c4/world.ts:91
A position in the shared SAGE coordinate space, in gameplay units.
Example
Section titled “Example”const coordinates: WorldCoordinates = { x: 1, y: 2 };Properties
Section titled “Properties”readonly x: number;Defined in: packages/sage/src/internal/c4/world.ts:92
readonly y: number;Defined in: packages/sage/src/internal/c4/world.ts:93
Type Aliases
Section titled “Type Aliases”FleetDiscoveryOptions
Section titled “FleetDiscoveryOptions”type FleetDiscoveryOptions = Omit<DiscoveryRequest, "filters" | "strategy">;Defined in: packages/sage/src/fleets/index.ts:112
Options supported by targeted Fleet discovery.
Example
Section titled “Example”declare const ctx: SageContext;declare const profileAddress: Address;const options: FleetDiscoveryOptions = { commitment: 'confirmed', policy: 'no-store',};const fleets = await getFleetsByOwner(ctx, profileAddress, options);FleetMovementCooldownInput
Section titled “FleetMovementCooldownInput”type FleetMovementCooldownInput = | { arrivesAtUnixSeconds: bigint; baseCooldownSeconds: number; cooldownModifierRaw: bigint; kind: "coordinateWarp";} | { departsAtUnixSeconds: bigint; existingCooldownExpiresAt: bigint; kind: "warpLane";} | { existingCooldownExpiresAt: bigint; kind: "subwarp";};Defined in: packages/sage/src/fleets/cooldown.ts:13
Explicit inputs for cooldown assignment, not permission to move. The Character modifier is its raw I32F32 value, not its display number.
Example
Section titled “Example”const input: FleetMovementCooldownInput = { kind: 'coordinateWarp', arrivesAtUnixSeconds: 1_800_000_000n, baseCooldownSeconds: 60, cooldownModifierRaw: 4_294_967_296n,};FleetStateData
Section titled “FleetStateData”type FleetStateData = | { kind: "idle";} | { claimStake: Address; endAtUnixSeconds: bigint; kind: "claimStakeTransfer"; load: readonly FleetCargoAmountData[]; planet: Address; unload: readonly FleetCargoAmountData[];} | { kind: "destroyed";} | { kind: "docked"; system: Address; systemSeqId: bigint;} | { asteroid: Address; kind: "mining"; regionXpModifier: number; regionXpModifierRaw: bigint; resourceIds: readonly number[];} | { arrivesAtUnixSeconds: bigint; departsAtUnixSeconds: bigint; kind: "warp"; to: WorldCoordinates;} | { arrivesAtUnixSeconds: bigint; departsAtUnixSeconds: bigint; durationSeconds: number; durationSecondsRaw: bigint; from: WorldCoordinates; kind: "subwarp"; to: WorldCoordinates; totalFuelExpenditure: number; totalFuelExpenditureRaw: bigint; totalXp: number; totalXpRaw: bigint;} | { kind: "respawn"; recoversAtUnixSeconds: bigint; startedAtUnixSeconds: bigint; wasInLowRiskZone: boolean;};Defined in: packages/sage/src/internal/c4/fleet.ts:124
Stable translated Fleet movement state, exhaustive for the pinned bindings.
Example
Section titled “Example”declare const state: FleetStateData;if (state.kind === 'docked') console.log(state.system);FleetWarpLanePolicyFailure
Section titled “FleetWarpLanePolicyFailure”type FleetWarpLanePolicyFailure = | "source-level-zero" | "destination-level-zero" | "cross-faction-disabled" | "foreign-low-risk" | "security-zone-access" | "region-owner-access";Defined in: packages/sage/src/fleets/warp-lane-policy.ts:37
A bounded policy failure, not a simulation or transaction error.
Example
Section titled “Example”const reason: FleetWarpLanePolicyFailure = 'foreign-low-risk';Functions
Section titled “Functions”deriveFleetCoordinateWarpEstimate()
Section titled “deriveFleetCoordinateWarpEstimate()”function deriveFleetCoordinateWarpEstimate(input): FleetCoordinateWarpEstimate;Defined in: packages/sage/src/fleets/coordinate-warp-estimate.ts:69
Estimates a coordinate warp from Idle using deployment-54356023 arithmetic. Truncates each squared axis before distance calculation, divides duration by base speed and then modifier, rounds travel and Fuel upward, and adds spool. Zero speed modifier means neutral. Exact computed maximum range is inclusive.
Coordinates, axis differences and distance must fit signed I8F56, with distinct endpoints. Speed is positive u32 raw, Fuel rate u32 raw, modifier nonnegative i64 raw, spool an integer 0..65535 and range u16 raw. Unsupported inputs are rejected. Tiny distinct points can produce only spool time and zero Fuel. Out-of-range trips still return estimates with withinRange=false.
No planet-exit surcharge, XP, cooldown, route policy, Fleet state, crew, permissions or available Fuel are checked. Use the exact encoded destination and Fleet.locationRaw; simulate the actual Plan before signing. Requalify after relevant program changes. Use deriveFleetMovementCooldown separately.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
input | FleetCoordinateWarpEstimateInput |
Returns
Section titled “Returns”Example
Section titled “Example”const estimate = deriveFleetCoordinateWarpEstimate({ fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n }, speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n, spoolSeconds: 3, maxWarpDistanceRaw: 256n,}); // 4 seconds including spool, 1 Fuel, within rangederiveFleetMovementCooldown()
Section titled “deriveFleetMovementCooldown()”function deriveFleetMovementCooldown(input): bigint;Defined in: packages/sage/src/fleets/cooldown.ts:59
Predicts the assigned warp-cooldown expiry in Unix seconds for a movement. Coordinate warp anchors at arrival and rounds the modified base upward; a zero modifier uses the unmodified base. Lane warp adds no cooldown but never erases an active one: the expiry becomes the later of the existing expiry and the departure time. Subwarp preserves the existing expiry.
Coordinate-warp arithmetic is qualified against PTR deployment slot 54356023; the lane rule follows the current program. Coordinate/lane timestamps must be nonnegative signed-i64 values, base seconds an integer in 0..65535, and modifier raw a nonnegative signed-i64 value. Overflow is rejected. An existing expiry may be any signed-i64 value, including sentinels. This pure helper does not calculate journey duration or check state, active cooldown, permissions, Fuel or lane eligibility. Use deriveFleetTimers for observed timer display and simulate the intended action before signing.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
input | FleetMovementCooldownInput |
Returns
Section titled “Returns”bigint
Example
Section titled “Example”const expiry = deriveFleetMovementCooldown({ kind: 'coordinateWarp', arrivesAtUnixSeconds: 1_800_000_000n, baseCooldownSeconds: 61, cooldownModifierRaw: 2_147_483_648n,}); // 1_800_000_031nderiveFleetSubwarpEstimate()
Section titled “deriveFleetSubwarpEstimate()”function deriveFleetSubwarpEstimate(input): FleetSubwarpEstimate;Defined in: packages/sage/src/fleets/subwarp-estimate.ts:73
Estimates direct subwarp duration and recorded fractional Fuel expenditure. Qualified against PTR deployment slot 54356023, with exact integer rounding within the supported model. Each squared axis truncates before the square root; base-speed division precedes modifier division. Modifier zero means 1.
Coordinates, axis differences and distance must fit signed I8F56; endpoints must differ. Speed is positive u32 raw, Fuel rate u32 raw and modifier nonnegative i64 raw. These bounds keep intermediate arithmetic within i128. A route shorter than the program can measure (its squared length truncates to zero, a displacement below 2^28 raw quanta on both axes) is rejected, because the program refuses to start such a subwarp.
Applies to departure from Idle, not planet departure, warp or lane travel. Does not check Fleet state, crew, permissions, tank Fuel, readiness or region restrictions. Subwarp may start with insufficient Fuel; compare fuelBudget with the tank and simulate before signing. No planet-exit surcharge or XP is predicted. Requalify this model after relevant program changes.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
input | FleetSubwarpEstimateInput |
Returns
Section titled “Returns”Example
Section titled “Example”const journey = deriveFleetSubwarpEstimate({ fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n }, speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,}); // 1 second, budget 1 FuelderiveFleetTimers()
Section titled “deriveFleetTimers()”function deriveFleetTimers<TState>(fleet): FleetTimers;Defined in: packages/sage/src/internal/fleet.ts:334
Derives only active Fleet timers; non-positive sentinels and values outside JavaScript’s supported Date range stay absent.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
TState extends FleetTimerState |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
fleet | Pick<FleetAccountData, | "warpCooldownExpiresAt" | "scanCooldownExpiresAt" | "apReloadExpiresAt" | "shieldBreakDelayExpiresAt"> & { state: TState; } |
Returns
Section titled “Returns”Example
Section titled “Example”declare const fleet: FleetSnapshot;const timers = deriveFleetTimers(fleet);console.log( timers.warpCooldownEndsAt?.toISOString(), timers.transferEndsAt?.toISOString(),);deriveFleetTravelProfile()
Section titled “deriveFleetTravelProfile()”function deriveFleetTravelProfile(input): FleetTravelProfile;Defined in: packages/sage/src/fleets/travel-profile.ts:130
Derives reference travel values from Fleet or ship configuration stats, using the qualified subwarp, coordinate-warp, warp-lane and cooldown arithmetic (PTR deployment slot 54356023) on one-AU and maximum-range trips from Idle. Full-tank range inverts the qualified Fuel rate; sustained warp speed chains maximum-range warps, each waiting out the cooldown assigned at arrival.
These are reference values, not a route or permission check: no planet departure, region policy, lane connectivity or toll, crew, XP, active timers or current tank are considered, and whether a warp may depart with less Fuel than its debit is not established. A configuration’s stats describe one ship; stats of Fleets mixing configurations are not qualified here.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
input | FleetTravelProfileInput |
Returns
Section titled “Returns”Throws
Section titled “Throws”InvalidDerivationInputError for a maximum warp distance of 128 AU or more, or modifiers and stats outside the movement estimates’ bounds.
Example
Section titled “Example”const profile = deriveFleetTravelProfile({ stats: { movement: { subwarpSpeed: { raw: 65536n, value: 1 }, subwarpFuelConsumptionRate: { raw: 64n, value: 1 }, warpSpeed: { raw: 65536n, value: 1 }, warpFuelConsumptionRate: { raw: 128n, value: 2 }, maxWarpDistance: { raw: 512n, value: 2 }, warpCoolDownSeconds: 6, warpLaneSpeed: { raw: 131072n, value: 2 }, }, cargo: { fuelCapacity: 100n }, combat: { warpSpoolTimeSeconds: 2 }, },});console.log(profile.subwarp?.fullTankRangeAu); // 100console.log(profile.coordinateWarp?.cycleSeconds); // 10n: 2 spool + 2 travel + 6 cooldownderiveFleetWarpLaneEstimate()
Section titled “deriveFleetWarpLaneEstimate()”function deriveFleetWarpLaneEstimate(input): FleetWarpLaneEstimate;Defined in: packages/sage/src/fleets/warp-lane-estimate.ts:58
Estimates lane travel using empirically qualified deployment-54356023 arithmetic. Truncates each squared axis, computes distance, truncates fixed-point speed division and rounds duration upward to whole seconds. No Fuel is debited.
Coordinates, axis differences and distance must fit signed I8F56. Speed is positive u32 raw. Identical and zero-quantized paths are rejected rather than predicting a successful zero-time lane. Unsupported overflow is rejected.
Supply exact System coordinates and Fleet lane speed, not coordinate-warp stats. This checks no lane connection, policy, toll, affordability, cooldown, Fleet state, crew, XP or permissions. Use deriveFleetMovementCooldown for cooldown separately. Refresh and simulate the Plan before signing; requalify the arithmetic after relevant program changes.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
input | FleetWarpLaneEstimateInput |
Returns
Section titled “Returns”Example
Section titled “Example”const estimate = deriveFleetWarpLaneEstimate({ fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n }, speedRaw: 65536n,}); // durationSeconds: 1n, fuelDebit: 0nderiveFleetWarpLanePolicy()
Section titled “deriveFleetWarpLanePolicy()”function deriveFleetWarpLanePolicy(input): FleetWarpLanePolicy;Defined in: packages/sage/src/fleets/warp-lane-policy.ts:88
Assesses qualified lane policy independently of Plan validation or execution. Both endpoint owners must equal Fleet faction when cross-faction economics is disabled. Both endpoint Starbases need nonzero levels. Stored low risk keeps its embedded faction; a Safe medium/high region owned by a playable faction becomes low risk of that owner, while Border and Unaligned-owned regions retain their tier. Foreign low risk rejects; higher tiers require sufficient Character access, and entry to a medium/high region owned by another playable faction also needs the Character’s enemy-faction-zone access. Relationships and combat/territory gates do not block the lane policy.
Only playable factions (the destination region may also be Unaligned) and known levels/tiers are supported. Resolve the region containing the destination coordinates before calling: this pure helper does not perform spatial lookup and does not trust a System region id on your behalf. It checks no connection, Fleet state, cooldown, crew, XP, permission, toll or available balance. Deployment 54356023 is the empirical scope; requalify on relevant game changes and simulate before signing.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
input | FleetWarpLanePolicyInput |
Returns
Section titled “Returns”Example
Section titled “Example”const result = deriveFleetWarpLanePolicy({ fleetFaction: 'oni', sourceOwner: 'oni', destinationOwner: 'oni', sourceLevel: 'css', destinationLevel: 'level-1', crossFactionEconomicsEnabled: false, securityZoneAccess: 'low', enemyFactionZoneAccess: false, destinationRegion: { owner: 'oni', safety: 'safe', risk: { kind: 'low', faction: 'oni' } },}); // passesPolicy: true; still simulate the actual PlanderiveFleetWarpLaneToll()
Section titled “deriveFleetWarpLaneToll()”function deriveFleetWarpLaneToll(input): FleetWarpLaneToll;Defined in: packages/sage/src/fleets/warp-lane-toll.ts:79
Estimates the Character ATLAS toll using deployment-54356023 lane rules. Selects cost by departure level. Ceils the Character-modified base, then adds a separately floored surcharge on the unmodified base if either endpoint is foreign. Allied uses allied bps; neutral/hostile/ceasefire use neutral bps. A foreign source with own destination uses neutral bps. Modifier zero waives only the modified base. Relationship expiry does not alter the measured toll.
Accepts playable factions only, usable source levels, u64 raw base cost, nonnegative i64 raw I32F32 modifier, and u16 bps. Rejects a result beyond u64. No RPC, balance, connection, region, permission or execution checks occur. ATLAS is paid from Character, not wallet. Requalify after program changes.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
input | FleetWarpLaneTollInput |
Returns
Section titled “Returns”Example
Section titled “Example”declare const input: FleetWarpLaneTollInput;const toll = deriveFleetWarpLaneToll(input);console.log(toll.totalRaw);discoverFleetAddresses()
Section titled “discoverFleetAddresses()”function discoverFleetAddresses(ctx, options?): Promise<readonly Address[]>;Defined in: packages/sage/src/fleets/index.ts:376
Discovers every Fleet address for the configured Game.
The existing discovery data plane downloads and validates complete Fleet account bytes before exposing an address. It does not hydrate Fleet snapshots or load ship, cargo, or Game registry definitions.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ctx | SageContext |
options? | FleetDiscoveryOptions |
Returns
Section titled “Returns”Promise<readonly Address[]>
Example
Section titled “Example”declare const ctx: SageContext;const fleetAddresses = await discoverFleetAddresses(ctx);console.log(fleetAddresses, readMeta(fleetAddresses)?.strategy);getFleet()
Section titled “getFleet()”function getFleet( ctx, address,options?): Promise<FleetSnapshot>;Defined in: packages/sage/src/fleets/index.ts:218
Reads a required Fleet by account address.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ctx | SageContext |
address | Address |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<FleetSnapshot>
Example
Section titled “Example”declare const ctx: SageContext;declare const fleetAddress: Address;const fleet = await getFleet(ctx, fleetAddress);getFleets()
Section titled “getFleets()”function getFleets( ctx, addresses,options?): Promise<readonly FleetSnapshot[]>;Defined in: packages/sage/src/fleets/index.ts:245
Reads required Fleets by account address in one batched data-plane request.
The frozen result preserves input order and duplicate positions. Every requested address must exist; use separate optional reads when absence is an expected outcome.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ctx | SageContext |
addresses | readonly Address[] |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<readonly FleetSnapshot[]>
Example
Section titled “Example”declare const ctx: SageContext;declare const fleetAddresses: readonly Address[];const fleets = await getFleets(ctx, fleetAddresses);getFleetsByOwner()
Section titled “getFleetsByOwner()”function getFleetsByOwner( ctx, profileAddress,options?): Promise<readonly FleetSnapshot[]>;Defined in: packages/sage/src/fleets/index.ts:350
Discovers Fleets owned by a known Player Profile using targeted stable filters.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ctx | SageContext |
profileAddress | Address |
options? | FleetDiscoveryOptions |
Returns
Section titled “Returns”Promise<readonly FleetSnapshot[]>
Example
Section titled “Example”declare const ctx: SageContext;declare const profileAddress: Address;const fleets = await getFleetsByOwner(ctx, profileAddress);interpolateSubwarpPosition()
Section titled “interpolateSubwarpPosition()”function interpolateSubwarpPosition(state, atUnixSeconds): SubwarpPosition;Defined in: packages/sage/src/internal/fleet.ts:401
Interpolates a display-only subwarp position, clamped to both endpoints.
The result must not be used as authoritative on-chain position state.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
state | { arrivesAtUnixSeconds: bigint; departsAtUnixSeconds: bigint; durationSeconds: number; durationSecondsRaw: bigint; from: WorldCoordinates; kind: "subwarp"; to: WorldCoordinates; totalFuelExpenditure: number; totalFuelExpenditureRaw: bigint; totalXp: number; totalXpRaw: bigint; } |
state.arrivesAtUnixSeconds | bigint |
state.departsAtUnixSeconds | bigint |
state.durationSeconds | number |
state.durationSecondsRaw | bigint |
state.from | WorldCoordinates |
state.kind | "subwarp" |
state.to | WorldCoordinates |
state.totalFuelExpenditure | number |
state.totalFuelExpenditureRaw | bigint |
state.totalXp | number |
state.totalXpRaw | bigint |
atUnixSeconds | bigint |
Returns
Section titled “Returns”Example
Section titled “Example”declare const state: Extract<FleetStateData, { readonly kind: 'subwarp' }>;const position = interpolateSubwarpPosition(state, 1_700_000_000n);console.log(position.position, position.progress);maybeGetFleet()
Section titled “maybeGetFleet()”function maybeGetFleet( ctx, address,options?): Promise<FleetSnapshot | undefined>;Defined in: packages/sage/src/fleets/index.ts:278
Reads an optional Fleet by account address.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ctx | SageContext |
address | Address |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<FleetSnapshot | undefined>
Example
Section titled “Example”declare const ctx: SageContext;declare const fleetAddress: Address;const fleet = await maybeGetFleet(ctx, fleetAddress);watchFleet()
Section titled “watchFleet()”function watchFleet( ctx, address, observer,options?): Promise<SageSubscription>;Defined in: packages/sage/src/fleets/index.ts:308
Watches one Fleet through its context-owned WebSocket subscription.
Registration emits the current validated Fleet first, then only selected slot/commitment advances. Unsubscribe explicitly or dispose the context.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ctx | SageContext |
address | Address |
observer | FleetSubscriptionObserver |
options? | ReadAccountOptions |
Returns
Section titled “Returns”Promise<SageSubscription>
Example
Section titled “Example”declare const ctx: SageContext;declare const fleetAddress: Address;const subscription = await watchFleet(ctx, fleetAddress, { onSnapshot: fleet => console.log(fleet.name), onError: error => console.error(error.code),});await subscription.unsubscribe();References
Section titled “References”FleetCombatStatsData
Section titled “FleetCombatStatsData”Re-exports FleetCombatStatsData
listShipConfigurations
Section titled “listShipConfigurations”Re-exports listShipConfigurations
listShipConfigurationsByMint
Section titled “listShipConfigurationsByMint”Re-exports listShipConfigurationsByMint