factions
Interfaces
Section titled “Interfaces”FactionConfigSnapshot
Section titled “FactionConfigSnapshot”Defined in: packages/sage/src/factions/index.ts:112
Immutable optional standing and territory-yield configuration.
Example
Section titled “Example”declare const config: FactionConfigSnapshot;console.log(config.standingBps);Extends
Section titled “Extends”FactionConfigAccountData
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:114
readonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:147
Inherited from
Section titled “Inherited from”FactionConfigAccountData.bumpdailyCap
Section titled “dailyCap”readonly dailyCap: number;Defined in: packages/sage/src/internal/c4/factions.ts:149
Inherited from
Section titled “Inherited from”FactionConfigAccountData.dailyCapdecayPerDay
Section titled “decayPerDay”readonly decayPerDay: number;Defined in: packages/sage/src/internal/c4/factions.ts:148
Inherited from
Section titled “Inherited from”FactionConfigAccountData.decayPerDaydiminishingReturnsHalfLifeRaw
Section titled “diminishingReturnsHalfLifeRaw”readonly diminishingReturnsHalfLifeRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:151
Inherited from
Section titled “Inherited from”FactionConfigAccountData.diminishingReturnsHalfLifeRawdiminishingReturnsScaleRaw
Section titled “diminishingReturnsScaleRaw”readonly diminishingReturnsScaleRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:152
Inherited from
Section titled “Inherited from”FactionConfigAccountData.diminishingReturnsScaleRawdockMinimumBand
Section titled “dockMinimumBand”readonly dockMinimumBand: number;Defined in: packages/sage/src/internal/c4/factions.ts:155
Inherited from
Section titled “Inherited from”FactionConfigAccountData.dockMinimumBandreadonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:115
readonly kind: "factionConfig";Defined in: packages/sage/src/factions/index.ts:113
standingBps
Section titled “standingBps”readonly standingBps: number;Defined in: packages/sage/src/internal/c4/factions.ts:150
Inherited from
Section titled “Inherited from”FactionConfigAccountData.standingBpsstandingEpochCap
Section titled “standingEpochCap”readonly standingEpochCap: number;Defined in: packages/sage/src/internal/c4/factions.ts:153
Inherited from
Section titled “Inherited from”FactionConfigAccountData.standingEpochCapstandingEpochLengthSeconds
Section titled “standingEpochLengthSeconds”readonly standingEpochLengthSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:154
Inherited from
Section titled “Inherited from”FactionConfigAccountData.standingEpochLengthSecondsterritoryYieldPerTick
Section titled “territoryYieldPerTick”readonly territoryYieldPerTick: number;Defined in: packages/sage/src/internal/c4/factions.ts:156
Inherited from
Section titled “Inherited from”FactionConfigAccountData.territoryYieldPerTickterritoryYieldTickSeconds
Section titled “territoryYieldTickSeconds”readonly territoryYieldTickSeconds: number;Defined in: packages/sage/src/internal/c4/factions.ts:157
Inherited from
Section titled “Inherited from”FactionConfigAccountData.territoryYieldTickSecondsversion
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:146
Inherited from
Section titled “Inherited from”FactionConfigAccountData.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:116
Returns
Section titled “Returns”unknown
FactionEconomicsSnapshot
Section titled “FactionEconomicsSnapshot”Defined in: packages/sage/src/factions/index.ts:127
Immutable per-Game NPC and capture economics.
Example
Section titled “Example”declare const economics: FactionEconomicsSnapshot;console.log(economics.captureCostAtlas); // ATLAS for displayconsole.log(economics.captureCostAtlasRaw); // exact Floyds for arithmeticExtends
Section titled “Extends”Omit<FactionEconomicsConfigAccountData,"game">
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:132
readonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:162
Inherited from
Section titled “Inherited from”Omit.bumpcaptureCostAtlas
Section titled “captureCostAtlas”readonly captureCostAtlas: number;Defined in: packages/sage/src/internal/c4/factions.ts:171
Dynamic-capture cost in ATLAS.
Inherited from
Section titled “Inherited from”Omit.captureCostAtlascaptureCostAtlasRaw
Section titled “captureCostAtlasRaw”readonly captureCostAtlasRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:169
Exact dynamic-capture cost in ATLAS Floyds.
Inherited from
Section titled “Inherited from”Omit.captureCostAtlasRawfactionCaptureCooldownSeconds
Section titled “factionCaptureCooldownSeconds”readonly factionCaptureCooldownSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:172
Inherited from
Section titled “Inherited from”Omit.factionCaptureCooldownSecondsreadonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:133
readonly kind: "factionEconomicsConfig";Defined in: packages/sage/src/factions/index.ts:131
npcMintCostAtlas
Section titled “npcMintCostAtlas”readonly npcMintCostAtlas: number;Defined in: packages/sage/src/internal/c4/factions.ts:165
Inherited from
Section titled “Inherited from”Omit.npcMintCostAtlasnpcMintCostAtlasRaw
Section titled “npcMintCostAtlasRaw”readonly npcMintCostAtlasRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:164
Inherited from
Section titled “Inherited from”Omit.npcMintCostAtlasRawnpcRespawnCostAtlas
Section titled “npcRespawnCostAtlas”readonly npcRespawnCostAtlas: number;Defined in: packages/sage/src/internal/c4/factions.ts:167
Inherited from
Section titled “Inherited from”Omit.npcRespawnCostAtlasnpcRespawnCostAtlasRaw
Section titled “npcRespawnCostAtlasRaw”readonly npcRespawnCostAtlasRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:166
Inherited from
Section titled “Inherited from”Omit.npcRespawnCostAtlasRawversion
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:161
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:134
Returns
Section titled “Returns”unknown
FactionOwnershipSnapshot
Section titled “FactionOwnershipSnapshot”Defined in: packages/sage/src/factions/index.ts:209
Immutable dynamic ownership sidecar for one territory asset.
Example
Section titled “Example”declare const ownership: FactionOwnershipSnapshot;console.log(ownership.asset.kind, ownership.controllingFactionId);Extends
Section titled “Extends”Omit<FactionOwnershipAccountData, |"game"|"asset"|"controllingFactionId"|"previousControllerFactionId"|"contestedUntilUnixSeconds"|"capturedSystemSequenceId"|"lastYieldTickUnixSeconds">
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:220
readonly asset: FactionOwnershipTarget;Defined in: packages/sage/src/factions/index.ts:222
readonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:244
Inherited from
Section titled “Inherited from”Omit.bumpcapturedAtUnixSeconds
Section titled “capturedAtUnixSeconds”readonly capturedAtUnixSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:249
Inherited from
Section titled “Inherited from”Omit.capturedAtUnixSecondscapturedSystemSequenceId?
Section titled “capturedSystemSequenceId?”readonly optional capturedSystemSequenceId?: bigint;Defined in: packages/sage/src/factions/index.ts:226
contestedUntilUnixSeconds?
Section titled “contestedUntilUnixSeconds?”readonly optional contestedUntilUnixSeconds?: bigint;Defined in: packages/sage/src/factions/index.ts:225
controllingFactionId?
Section titled “controllingFactionId?”readonly optional controllingFactionId?: number;Defined in: packages/sage/src/factions/index.ts:223
readonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:221
readonly kind: "factionOwnership";Defined in: packages/sage/src/factions/index.ts:219
lastYieldTickUnixSeconds?
Section titled “lastYieldTickUnixSeconds?”readonly optional lastYieldTickUnixSeconds?: bigint;Defined in: packages/sage/src/factions/index.ts:227
previousControllerFactionId?
Section titled “previousControllerFactionId?”readonly optional previousControllerFactionId?: number;Defined in: packages/sage/src/factions/index.ts:224
version
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:243
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:228
Returns
Section titled “Returns”unknown
FactionRelationsSnapshot
Section titled “FactionRelationsSnapshot”Defined in: packages/sage/src/factions/index.ts:144
Immutable diplomacy and territory-gating configuration.
Example
Section titled “Example”declare const relations: FactionRelationsSnapshot;console.log(relations.dynamicCaptureEnabled);Extends
Section titled “Extends”Omit<FactionRelationTrackerAccountData,"game">
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:149
alliedTollBps
Section titled “alliedTollBps”readonly alliedTollBps: number;Defined in: packages/sage/src/internal/c4/factions.ts:182
Inherited from
Section titled “Inherited from”Omit.alliedTollBpsreadonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:177
Inherited from
Section titled “Inherited from”Omit.bumpceasefireMinimumDurationSeconds
Section titled “ceasefireMinimumDurationSeconds”readonly ceasefireMinimumDurationSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:184
Inherited from
Section titled “Inherited from”Omit.ceasefireMinimumDurationSecondscombatGatingEnabled
Section titled “combatGatingEnabled”readonly combatGatingEnabled: boolean;Defined in: packages/sage/src/internal/c4/factions.ts:179
Inherited from
Section titled “Inherited from”Omit.combatGatingEnabledcontestedWindowSeconds
Section titled “contestedWindowSeconds”readonly contestedWindowSeconds: number;Defined in: packages/sage/src/internal/c4/factions.ts:187
Inherited from
Section titled “Inherited from”Omit.contestedWindowSecondscrossFactionEconomicsEnabled
Section titled “crossFactionEconomicsEnabled”readonly crossFactionEconomicsEnabled: boolean;Defined in: packages/sage/src/internal/c4/factions.ts:181
Inherited from
Section titled “Inherited from”Omit.crossFactionEconomicsEnableddynamicCaptureEnabled
Section titled “dynamicCaptureEnabled”readonly dynamicCaptureEnabled: boolean;Defined in: packages/sage/src/internal/c4/factions.ts:186
Inherited from
Section titled “Inherited from”Omit.dynamicCaptureEnabledreadonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:150
readonly kind: "factionRelationTracker";Defined in: packages/sage/src/factions/index.ts:148
nemesisActive
Section titled “nemesisActive”readonly nemesisActive: boolean;Defined in: packages/sage/src/internal/c4/factions.ts:188
Inherited from
Section titled “Inherited from”Omit.nemesisActiveneutralTollBps
Section titled “neutralTollBps”readonly neutralTollBps: number;Defined in: packages/sage/src/internal/c4/factions.ts:183
Inherited from
Section titled “Inherited from”Omit.neutralTollBpsreCeasefireCooldownSeconds
Section titled “reCeasefireCooldownSeconds”readonly reCeasefireCooldownSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:185
Inherited from
Section titled “Inherited from”Omit.reCeasefireCooldownSecondsrelations
Section titled “relations”readonly relations: readonly { ceasefireUntilUnixSeconds: bigint | null; factions: readonly [number, number]; relationship: FactionRelationship;}[];Defined in: packages/sage/src/internal/c4/factions.ts:189
Inherited from
Section titled “Inherited from”Omit.relationsterritoryAccessEnabled
Section titled “territoryAccessEnabled”readonly territoryAccessEnabled: boolean;Defined in: packages/sage/src/internal/c4/factions.ts:180
Inherited from
Section titled “Inherited from”Omit.territoryAccessEnabledversion
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:176
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:151
Returns
Section titled “Returns”unknown
FactionSnapshot
Section titled “FactionSnapshot”Defined in: packages/sage/src/factions/index.ts:83
Immutable faction identity, lifecycle, and NPC capacity state.
Example
Section titled “Example”declare const faction: FactionSnapshot;console.log(faction.factionId, faction.status);Extends
Section titled “Extends”Omit<FactionAccountData, |"game"|"operatorProfile"|"controller"|"homeRegionId"|"nameHash"|"contentUriHash"|"lastCaptureAtUnixSeconds">
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:94
alignment
Section titled “alignment”readonly alignment: FactionAlignment;Defined in: packages/sage/src/internal/c4/factions.ts:128
Inherited from
Section titled “Inherited from”Omit.alignmentauthorityBump
Section titled “authorityBump”readonly authorityBump: number;Defined in: packages/sage/src/internal/c4/factions.ts:131
Inherited from
Section titled “Inherited from”Omit.authorityBumpreadonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:125
Inherited from
Section titled “Inherited from”Omit.bumpcapabilityFlags
Section titled “capabilityFlags”readonly capabilityFlags: number;Defined in: packages/sage/src/internal/c4/factions.ts:129
Inherited from
Section titled “Inherited from”Omit.capabilityFlagscontentUriHash?
Section titled “contentUriHash?”readonly optional contentUriHash?: readonly number[];Defined in: packages/sage/src/factions/index.ts:100
controller?
Section titled “controller?”readonly optional controller?: Address;Defined in: packages/sage/src/factions/index.ts:97
createdAtUnixSeconds
Section titled “createdAtUnixSeconds”readonly createdAtUnixSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:138
Inherited from
Section titled “Inherited from”Omit.createdAtUnixSecondsfactionId
Section titled “factionId”readonly factionId: number;Defined in: packages/sage/src/internal/c4/factions.ts:127
Inherited from
Section titled “Inherited from”Omit.factionIdreadonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:95
homeRegionId?
Section titled “homeRegionId?”readonly optional homeRegionId?: number;Defined in: packages/sage/src/factions/index.ts:98
readonly kind: "faction";Defined in: packages/sage/src/factions/index.ts:93
lastCaptureAtUnixSeconds?
Section titled “lastCaptureAtUnixSeconds?”readonly optional lastCaptureAtUnixSeconds?: bigint;Defined in: packages/sage/src/factions/index.ts:101
maxAllies
Section titled “maxAllies”readonly maxAllies: number;Defined in: packages/sage/src/internal/c4/factions.ts:133
Inherited from
Section titled “Inherited from”Omit.maxAlliesmaxNpcFleets
Section titled “maxNpcFleets”readonly maxNpcFleets: number;Defined in: packages/sage/src/internal/c4/factions.ts:142
Inherited from
Section titled “Inherited from”Omit.maxNpcFleetsnameHash?
Section titled “nameHash?”readonly optional nameHash?: readonly number[];Defined in: packages/sage/src/factions/index.ts:99
npcFleetCount
Section titled “npcFleetCount”readonly npcFleetCount: number;Defined in: packages/sage/src/internal/c4/factions.ts:141
Inherited from
Section titled “Inherited from”Omit.npcFleetCountoperatorProfile?
Section titled “operatorProfile?”readonly optional operatorProfile?: EntityRef<"profile">;Defined in: packages/sage/src/factions/index.ts:96
status
Section titled “status”readonly status: FactionLifecycleStatus;Defined in: packages/sage/src/internal/c4/factions.ts:130
Inherited from
Section titled “Inherited from”Omit.statustreasuryCount
Section titled “treasuryCount”readonly treasuryCount: number;Defined in: packages/sage/src/internal/c4/factions.ts:134
Inherited from
Section titled “Inherited from”Omit.treasuryCountversion
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:124
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:102
Returns
Section titled “Returns”unknown
FactionStandingSnapshot
Section titled “FactionStandingSnapshot”Defined in: packages/sage/src/factions/index.ts:161
Immutable optional Profile standing with one faction.
Example
Section titled “Example”declare const standing: FactionStandingSnapshot;console.log(standing.profile.address, standing.standing);Extends
Section titled “Extends”Omit<FactionStandingAccountData,"game"|"profile"|"storylineExpiresAtUnixSeconds">
Properties
Section titled “Properties”accrualToday
Section titled “accrualToday”readonly accrualToday: number;Defined in: packages/sage/src/internal/c4/factions.ts:206
Inherited from
Section titled “Inherited from”Omit.accrualTodayaddress
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:166
bandFloor
Section titled “bandFloor”readonly bandFloor: number;Defined in: packages/sage/src/internal/c4/factions.ts:203
Inherited from
Section titled “Inherited from”Omit.bandFloorbandFloorReachedAtUnixSeconds
Section titled “bandFloorReachedAtUnixSeconds”readonly bandFloorReachedAtUnixSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:209
Inherited from
Section titled “Inherited from”Omit.bandFloorReachedAtUnixSecondsreadonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:198
Inherited from
Section titled “Inherited from”Omit.bumpdayAnchorUnixSeconds
Section titled “dayAnchorUnixSeconds”readonly dayAnchorUnixSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:207
Inherited from
Section titled “Inherited from”Omit.dayAnchorUnixSecondsfactionId
Section titled “factionId”readonly factionId: number;Defined in: packages/sage/src/internal/c4/factions.ts:201
Inherited from
Section titled “Inherited from”Omit.factionIdreadonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:167
readonly kind: "factionStanding";Defined in: packages/sage/src/factions/index.ts:165
lastUpdateUnixSeconds
Section titled “lastUpdateUnixSeconds”readonly lastUpdateUnixSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:208
Inherited from
Section titled “Inherited from”Omit.lastUpdateUnixSecondslifetimeEarnedRaw
Section titled “lifetimeEarnedRaw”readonly lifetimeEarnedRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:205
Inherited from
Section titled “Inherited from”Omit.lifetimeEarnedRawprofile
Section titled “profile”readonly profile: EntityRef<"profile">;Defined in: packages/sage/src/factions/index.ts:168
standing
Section titled “standing”readonly standing: number;Defined in: packages/sage/src/internal/c4/factions.ts:204
Inherited from
Section titled “Inherited from”Omit.standingstorylineActive
Section titled “storylineActive”readonly storylineActive: boolean;Defined in: packages/sage/src/internal/c4/factions.ts:202
Inherited from
Section titled “Inherited from”Omit.storylineActivestorylineExpiresAtUnixSeconds?
Section titled “storylineExpiresAtUnixSeconds?”readonly optional storylineExpiresAtUnixSeconds?: bigint;Defined in: packages/sage/src/factions/index.ts:169
version
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:197
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:170
Returns
Section titled “Returns”unknown
FactionTreasurySnapshot
Section titled “FactionTreasurySnapshot”Defined in: packages/sage/src/factions/index.ts:180
Immutable faction ATLAS and cargo reserve state.
Example
Section titled “Example”declare const treasury: FactionTreasurySnapshot;console.log(treasury.atlasBalance, treasury.reserves.length);Extends
Section titled “Extends”Omit<FactionTreasuryAccountData,"game">
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:185
atlasBalance
Section titled “atlasBalance”readonly atlasBalance: number;Defined in: packages/sage/src/internal/c4/factions.ts:219
Inherited from
Section titled “Inherited from”Omit.atlasBalanceatlasBalanceRaw
Section titled “atlasBalanceRaw”readonly atlasBalanceRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:218
Inherited from
Section titled “Inherited from”Omit.atlasBalanceRawatlasOutCapPerEpoch
Section titled “atlasOutCapPerEpoch”readonly atlasOutCapPerEpoch: number;Defined in: packages/sage/src/internal/c4/factions.ts:225
Inherited from
Section titled “Inherited from”Omit.atlasOutCapPerEpochatlasOutCapPerEpochRaw
Section titled “atlasOutCapPerEpochRaw”readonly atlasOutCapPerEpochRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:224
Inherited from
Section titled “Inherited from”Omit.atlasOutCapPerEpochRawatlasOutThisEpoch
Section titled “atlasOutThisEpoch”readonly atlasOutThisEpoch: number;Defined in: packages/sage/src/internal/c4/factions.ts:223
Inherited from
Section titled “Inherited from”Omit.atlasOutThisEpochatlasOutThisEpochRaw
Section titled “atlasOutThisEpochRaw”readonly atlasOutThisEpochRaw: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:222
Inherited from
Section titled “Inherited from”Omit.atlasOutThisEpochRawreadonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:215
Inherited from
Section titled “Inherited from”Omit.bumpepochLengthSeconds
Section titled “epochLengthSeconds”readonly epochLengthSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:221
Inherited from
Section titled “Inherited from”Omit.epochLengthSecondsepochStartedAtUnixSeconds
Section titled “epochStartedAtUnixSeconds”readonly epochStartedAtUnixSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:220
Inherited from
Section titled “Inherited from”Omit.epochStartedAtUnixSecondsfactionId
Section titled “factionId”readonly factionId: number;Defined in: packages/sage/src/internal/c4/factions.ts:217
Inherited from
Section titled “Inherited from”Omit.factionIdreadonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:186
readonly kind: "factionTreasury";Defined in: packages/sage/src/factions/index.ts:184
reserves
Section titled “reserves”readonly reserves: readonly { cargoId: number; floorRaw: bigint; quantityRaw: bigint;}[];Defined in: packages/sage/src/internal/c4/factions.ts:226
Inherited from
Section titled “Inherited from”Omit.reservesversion
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:214
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:187
Returns
Section titled “Returns”unknown
KingSystemOwnership
Section titled “KingSystemOwnership”Defined in: packages/sage/src/factions/index.ts:238
One King system with its current effective faction owner.
Example
Section titled “Example”declare const system: KingSystemOwnership;console.log(system.system.address, system.factionId);Properties
Section titled “Properties”factionId?
Section titled “factionId?”readonly optional factionId?: number;Defined in: packages/sage/src/factions/index.ts:241
system
Section titled “system”readonly system: EntityRef<"starSystem">;Defined in: packages/sage/src/factions/index.ts:240
systemId
Section titled “systemId”readonly systemId: number;Defined in: packages/sage/src/factions/index.ts:239
KingSystemsSnapshot
Section titled “KingSystemsSnapshot”Defined in: packages/sage/src/factions/index.ts:251
Immutable King-system ownership catalog.
Example
Section titled “Example”declare const tracker: KingSystemsSnapshot;console.log(tracker.systems.length);Extends
Section titled “Extends”Omit<KingSystemTrackerAccountData,"game"|"systems">
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:256
readonly bump: number;Defined in: packages/sage/src/internal/c4/factions.ts:257
Inherited from
Section titled “Inherited from”Omit.bumpconfiguredAtUnixSeconds
Section titled “configuredAtUnixSeconds”readonly configuredAtUnixSeconds: bigint;Defined in: packages/sage/src/internal/c4/factions.ts:259
Inherited from
Section titled “Inherited from”Omit.configuredAtUnixSecondsreadonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:257
readonly kind: "kingSystemTracker";Defined in: packages/sage/src/factions/index.ts:255
majorFactionCounts
Section titled “majorFactionCounts”readonly majorFactionCounts: Readonly<{ mud: number; oni: number; ustur: number;}>;Defined in: packages/sage/src/internal/c4/factions.ts:260
Inherited from
Section titled “Inherited from”Omit.majorFactionCountssystems
Section titled “systems”readonly systems: readonly KingSystemOwnership[];Defined in: packages/sage/src/factions/index.ts:258
version
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:256
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:259
Returns
Section titled “Returns”unknown
TerritoryRegionsSnapshot
Section titled “TerritoryRegionsSnapshot”Defined in: packages/sage/src/factions/index.ts:297
Immutable nested RegionTracker ownership catalog.
Example
Section titled “Example”declare const tracker: TerritoryRegionsSnapshot;console.log(tracker.regions.length);Extends
Section titled “Extends”Omit<RegionTrackerAccountData,"game"|"regions">
Properties
Section titled “Properties”address
Section titled “address”readonly address: Address;Defined in: packages/sage/src/factions/index.ts:302
readonly game: EntityRef<"game">;Defined in: packages/sage/src/factions/index.ts:303
gridExponent
Section titled “gridExponent”readonly gridExponent: number;Defined in: packages/sage/src/internal/c4/factions.ts:311
Inherited from
Section titled “Inherited from”Omit.gridExponentreadonly kind: "regionTracker";Defined in: packages/sage/src/factions/index.ts:301
regions
Section titled “regions”readonly regions: readonly TerritoryRegionSummary[];Defined in: packages/sage/src/factions/index.ts:304
version
Section titled “version”readonly version: number;Defined in: packages/sage/src/internal/c4/factions.ts:309
Inherited from
Section titled “Inherited from”Omit.versionMethods
Section titled “Methods”toJSON()
Section titled “toJSON()”toJSON(): unknown;Defined in: packages/sage/src/factions/index.ts:305
Returns
Section titled “Returns”unknown
TerritoryRegionSummary
Section titled “TerritoryRegionSummary”Defined in: packages/sage/src/factions/index.ts:282
Region ownership and geometry summary with edge-aligned neighbor ids.
Example
Section titled “Example”declare const region: TerritoryRegionSummary;console.log(region.id, region.owner);Extends
Section titled “Extends”Omit<FactionRegionData,"systems"|"coreSystems">
Properties
Section titled “Properties”border
Section titled “border”readonly border: readonly { x: number; y: number;}[];Defined in: packages/sage/src/internal/c4/factions.ts:296
Inherited from
Section titled “Inherited from”Omit.borderboundingBox
Section titled “boundingBox”readonly boundingBox: { maxX: number; maxY: number; minX: number; minY: number;};Defined in: packages/sage/src/internal/c4/factions.ts:290
readonly maxX: number;readonly maxY: number;readonly minX: number;readonly minY: number;Inherited from
Section titled “Inherited from”Omit.boundingBoxconnections
Section titled “connections”readonly connections: readonly number[];Defined in: packages/sage/src/internal/c4/factions.ts:301
Inherited from
Section titled “Inherited from”Omit.connectionscoreSystems
Section titled “coreSystems”readonly coreSystems: readonly TerritoryRegionSystem[];Defined in: packages/sage/src/factions/index.ts:287
readonly id: number;Defined in: packages/sage/src/internal/c4/factions.ts:282
Inherited from
Section titled “Inherited from”Omit.idminingResearchRequirementTagIds
Section titled “miningResearchRequirementTagIds”readonly miningResearchRequirementTagIds: readonly number[];Defined in: packages/sage/src/internal/c4/factions.ts:305
Inherited from
Section titled “Inherited from”Omit.miningResearchRequirementTagIdsreadonly name: string;Defined in: packages/sage/src/internal/c4/factions.ts:283
Inherited from
Section titled “Inherited from”Omit.nameneighborsByEdge
Section titled “neighborsByEdge”readonly neighborsByEdge: readonly (number | null)[];Defined in: packages/sage/src/internal/c4/factions.ts:300
Inherited from
Section titled “Inherited from”Omit.neighborsByEdgereadonly owner: FactionAlignment;Defined in: packages/sage/src/internal/c4/factions.ts:284
Inherited from
Section titled “Inherited from”Omit.ownerreadonly risk: | { faction: FactionAlignment; kind: "low";} | { kind: "medium" | "high";};Defined in: packages/sage/src/internal/c4/factions.ts:286
Inherited from
Section titled “Inherited from”Omit.risksafety
Section titled “safety”readonly safety: "safe" | "border";Defined in: packages/sage/src/internal/c4/factions.ts:285
Inherited from
Section titled “Inherited from”Omit.safetyscanningResearchRequirementTagIds
Section titled “scanningResearchRequirementTagIds”readonly scanningResearchRequirementTagIds: readonly number[];Defined in: packages/sage/src/internal/c4/factions.ts:304
Inherited from
Section titled “Inherited from”Omit.scanningResearchRequirementTagIdssystems
Section titled “systems”readonly systems: readonly TerritoryRegionSystem[];Defined in: packages/sage/src/factions/index.ts:286
xpMultiplier
Section titled “xpMultiplier”readonly xpMultiplier: FactionFixedValueData;Defined in: packages/sage/src/internal/c4/factions.ts:289
Inherited from
Section titled “Inherited from”Omit.xpMultiplierTerritoryRegionSystem
Section titled “TerritoryRegionSystem”Defined in: packages/sage/src/factions/index.ts:269
Compact region system ownership linked to a StarSystem reference.
Example
Section titled “Example”declare const system: TerritoryRegionSystem;console.log(system.systemId, system.faction);Properties
Section titled “Properties”faction
Section titled “faction”readonly faction: FactionAlignment;Defined in: packages/sage/src/factions/index.ts:272
system
Section titled “system”readonly system: EntityRef<"starSystem">;Defined in: packages/sage/src/factions/index.ts:271
systemId
Section titled “systemId”readonly systemId: number;Defined in: packages/sage/src/factions/index.ts:270
Type Aliases
Section titled “Type Aliases”FactionOwnershipAsset
Section titled “FactionOwnershipAsset”type FactionOwnershipAsset = | { address: Address; kind: Exclude<FactionOwnershipKind, "region">;} | { kind: "region"; regionId: number;};Defined in: packages/sage/src/factions/index.ts:69
A requested asset whose optional ownership sidecar can be derived.
Example
Section titled “Example”declare const address: Address;const asset: FactionOwnershipAsset = { kind: 'fleet', address };FactionOwnershipDiscoveryOptions
Section titled “FactionOwnershipDiscoveryOptions”type FactionOwnershipDiscoveryOptions = Omit<DiscoveryRequest, "filters" | "strategy">;Defined in: packages/sage/src/factions/index.ts:57
Options accepted by targeted FactionOwnership discovery.
Example
Section titled “Example”const options: FactionOwnershipDiscoveryOptions = { commitment: 'confirmed' };FactionOwnershipTarget
Section titled “FactionOwnershipTarget”type FactionOwnershipTarget = | { kind: "starbase"; system: EntityRef<"starSystem">;} | { fleet: EntityRef<"fleet">; kind: "fleet";} | { kind: "region"; regionId: number;};Defined in: packages/sage/src/factions/index.ts:197
Typed ownership target retaining the underlying capability reference.
Example
Section titled “Example”declare const asset: FactionOwnershipTarget;console.log(asset.kind);Functions
Section titled “Functions”getFaction()
Section titled “getFaction()”function getFaction( context, factionId,options?): Promise<FactionSnapshot>;Defined in: packages/sage/src/factions/index.ts:586
Derives and reads one faction identity.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
factionId | number |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<FactionSnapshot>
Example
Section titled “Example”declare const ctx: SageContext;const faction = await getFaction(ctx, 4);getFactionEconomics()
Section titled “getFactionEconomics()”function getFactionEconomics(context, options?): Promise<FactionEconomicsSnapshot>;Defined in: packages/sage/src/factions/index.ts:636
Derives and reads per-Game faction economics.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<FactionEconomicsSnapshot>
Example
Section titled “Example”declare const ctx: SageContext;const economics = await getFactionEconomics(ctx);getFactionOwnerships()
Section titled “getFactionOwnerships()”function getFactionOwnerships( context, kind,options?): Promise<readonly FactionOwnershipSnapshot[]>;Defined in: packages/sage/src/factions/index.ts:791
Discovers validated ownership sidecars for one asset kind.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
kind | FactionOwnershipKind |
options? | FactionOwnershipDiscoveryOptions |
Returns
Section titled “Returns”Promise<readonly FactionOwnershipSnapshot[]>
Example
Section titled “Example”declare const ctx: SageContext;const fleets = await getFactionOwnerships(ctx, 'fleet');getFactionRelations()
Section titled “getFactionRelations()”function getFactionRelations(context, options?): Promise<FactionRelationsSnapshot>;Defined in: packages/sage/src/factions/index.ts:659
Derives and reads the diplomacy relation tracker.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<FactionRelationsSnapshot>
Example
Section titled “Example”declare const ctx: SageContext;const relations = await getFactionRelations(ctx);getFactionTreasury()
Section titled “getFactionTreasury()”function getFactionTreasury( context, factionId,options?): Promise<FactionTreasurySnapshot>;Defined in: packages/sage/src/factions/index.ts:717
Derives and reads one faction treasury.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
factionId | number |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<FactionTreasurySnapshot>
Example
Section titled “Example”declare const ctx: SageContext;const treasury = await getFactionTreasury(ctx, 4);getKingSystems()
Section titled “getKingSystems()”function getKingSystems(context, options?): Promise<KingSystemsSnapshot>;Defined in: packages/sage/src/factions/index.ts:814
Derives and reads current King-system ownership.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<KingSystemsSnapshot>
Example
Section titled “Example”declare const ctx: SageContext;const systems = await getKingSystems(ctx);getTerritoryRegions()
Section titled “getTerritoryRegions()”function getTerritoryRegions(context, options?): Promise<TerritoryRegionsSnapshot>;Defined in: packages/sage/src/factions/index.ts:846
Derives and reads compact nested region ownership summaries.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<TerritoryRegionsSnapshot>
Example
Section titled “Example”declare const ctx: SageContext;const regions = await getTerritoryRegions(ctx);maybeGetFactionConfig()
Section titled “maybeGetFactionConfig()”function maybeGetFactionConfig(context, options?): Promise< | FactionConfigSnapshot| undefined>;Defined in: packages/sage/src/factions/index.ts:615
Derives and reads the optional per-Game standing configuration.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<
| FactionConfigSnapshot
| undefined>
Example
Section titled “Example”declare const ctx: SageContext;const config = await maybeGetFactionConfig(ctx);maybeGetFactionOwnership()
Section titled “maybeGetFactionOwnership()”function maybeGetFactionOwnership( context, asset, options?): Promise< | FactionOwnershipSnapshot| undefined>;Defined in: packages/sage/src/factions/index.ts:747
Derives and reads an optional ownership sidecar for one asset.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
asset | FactionOwnershipAsset |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<
| FactionOwnershipSnapshot
| undefined>
Example
Section titled “Example”declare const ctx: SageContext;declare const address: Address;const ownership = await maybeGetFactionOwnership(ctx, { kind: 'fleet', address });maybeGetFactionStanding()
Section titled “maybeGetFactionStanding()”function maybeGetFactionStanding( context, profile, factionId, options?): Promise< | FactionStandingSnapshot| undefined>;Defined in: packages/sage/src/factions/index.ts:683
Derives and reads optional standing for one Profile/faction pair.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
context | SageContext |
profile | Address |
factionId | number |
options? | ReadOptions |
Returns
Section titled “Returns”Promise<
| FactionStandingSnapshot
| undefined>
Example
Section titled “Example”declare const ctx: SageContext;declare const profile: Address;const standing = await maybeGetFactionStanding(ctx, profile, 4);