Skip to content

world

Defined in: packages/sage/src/world/index.ts:99

Immutable Asteroid projection over a CelestialBody account.

declare const asteroid: AsteroidSnapshot;
console.log(asteroid.details.resources);
  • Omit<AsteroidAccountData, "system">

readonly address: Address;

Defined in: packages/sage/src/world/index.ts:100

readonly details: WorldAsteroidData;

Defined in: packages/sage/src/internal/c4/world.ts:407

Omit.details

readonly game: Address;

Defined in: packages/sage/src/internal/c4/world.ts:393

Omit.game

readonly id: number;

Defined in: packages/sage/src/internal/c4/world.ts:391

Omit.id

readonly kind: "asteroid";

Defined in: packages/sage/src/internal/c4/world.ts:406

Omit.kind

readonly lastSyncAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:396

Omit.lastSyncAtUnixSeconds

readonly name: string;

Defined in: packages/sage/src/internal/c4/world.ts:392

Omit.name

readonly system: EntityRef<"starSystem">;

Defined in: packages/sage/src/world/index.ts:101

readonly systemSequenceId: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:395

Omit.systemSequenceId

readonly version: number;

Defined in: packages/sage/src/internal/c4/world.ts:390

Omit.version

toJSON(): unknown;

Defined in: packages/sage/src/world/index.ts:102

unknown


Defined in: packages/sage/src/world/index.ts:86

Immutable Planet projection over a CelestialBody account.

declare const planet: PlanetSnapshot;
console.log(planet.details.resources);
  • Omit<PlanetAccountData, "system">

readonly address: Address;

Defined in: packages/sage/src/world/index.ts:87

readonly details: WorldPlanetData;

Defined in: packages/sage/src/internal/c4/world.ts:403

Omit.details

readonly game: Address;

Defined in: packages/sage/src/internal/c4/world.ts:393

Omit.game

readonly id: number;

Defined in: packages/sage/src/internal/c4/world.ts:391

Omit.id

readonly kind: "planet";

Defined in: packages/sage/src/internal/c4/world.ts:402

Omit.kind

readonly lastSyncAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:396

Omit.lastSyncAtUnixSeconds

readonly name: string;

Defined in: packages/sage/src/internal/c4/world.ts:392

Omit.name

readonly system: EntityRef<"starSystem">;

Defined in: packages/sage/src/world/index.ts:88

readonly systemSequenceId: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:395

Omit.systemSequenceId

readonly version: number;

Defined in: packages/sage/src/internal/c4/world.ts:390

Omit.version

toJSON(): unknown;

Defined in: packages/sage/src/world/index.ts:89

unknown


Defined in: packages/sage/src/internal/c4/world.ts:308

SDK-owned decoded StarSystem data.

declare const system: StarSystemAccountData;
console.log(system.coordinates);

readonly celestialBodyAddresses: readonly Address[];

Defined in: packages/sage/src/internal/c4/world.ts:317

readonly connections: readonly WorldConnectionData[];

Defined in: packages/sage/src/internal/c4/world.ts:316

readonly coordinates: WorldCoordinates;

Defined in: packages/sage/src/internal/c4/world.ts:314

readonly game: Address;

Defined in: packages/sage/src/internal/c4/world.ts:310

readonly name: string;

Defined in: packages/sage/src/internal/c4/world.ts:312

readonly optional regionId?: number;

Defined in: packages/sage/src/internal/c4/world.ts:313

readonly sequenceId: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:315

readonly optional starbase?: WorldStarbaseData;

Defined in: packages/sage/src/internal/c4/world.ts:318

readonly systemId: number;

Defined in: packages/sage/src/internal/c4/world.ts:311

readonly version: number;

Defined in: packages/sage/src/internal/c4/world.ts:309


Defined in: packages/sage/src/world/index.ts:67

Immutable, translated StarSystem snapshot including nested shared Starbase data.

declare const system: StarSystemSnapshot;
console.log(system.name, system.coordinates);

readonly address: Address;

Defined in: packages/sage/src/world/index.ts:69

readonly celestialBodyAddresses: readonly Address[];

Defined in: packages/sage/src/internal/c4/world.ts:317

StarSystemAccountData.celestialBodyAddresses

readonly connections: readonly WorldConnectionData[];

Defined in: packages/sage/src/internal/c4/world.ts:316

StarSystemAccountData.connections

readonly coordinates: WorldCoordinates;

Defined in: packages/sage/src/internal/c4/world.ts:314

StarSystemAccountData.coordinates

readonly game: Address;

Defined in: packages/sage/src/internal/c4/world.ts:310

StarSystemAccountData.game

readonly kind: "starSystem";

Defined in: packages/sage/src/world/index.ts:68

readonly name: string;

Defined in: packages/sage/src/internal/c4/world.ts:312

StarSystemAccountData.name

readonly optional regionId?: number;

Defined in: packages/sage/src/internal/c4/world.ts:313

StarSystemAccountData.regionId

readonly sequenceId: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:315

StarSystemAccountData.sequenceId

readonly optional starbase?: WorldStarbaseData;

Defined in: packages/sage/src/internal/c4/world.ts:318

StarSystemAccountData.starbase

readonly systemId: number;

Defined in: packages/sage/src/internal/c4/world.ts:311

StarSystemAccountData.systemId

readonly version: number;

Defined in: packages/sage/src/internal/c4/world.ts:309

StarSystemAccountData.version

toJSON(): unknown;

Defined in: packages/sage/src/world/index.ts:70

unknown


Defined in: packages/sage/src/internal/c4/world.ts:385

Fully translated Asteroid projection data.

declare const asteroid: WorldAsteroidData;
console.log(asteroid.resources);

readonly resources: readonly WorldAsteroidResourceData[];

Defined in: packages/sage/src/internal/c4/world.ts:386


Defined in: packages/sage/src/internal/c4/world.ts:371

One translated Asteroid resource state.

declare const resource: WorldAsteroidResourceData;
console.log(resource.amountMined);

readonly amountMined: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:374

readonly cargoId: number;

Defined in: packages/sage/src/internal/c4/world.ts:372

readonly miners: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:375

readonly richness: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:373


Defined in: packages/sage/src/internal/c4/world.ts:340

One translated nested Claim Stake structure group.

declare const group: WorldClaimStakeGroupData;
console.log(group.structures);

readonly chronoAddresses: readonly Address[];

Defined in: packages/sage/src/internal/c4/world.ts:343

readonly key: number;

Defined in: packages/sage/src/internal/c4/world.ts:341

readonly offset: number;

Defined in: packages/sage/src/internal/c4/world.ts:342

readonly structures: readonly WorldStructureData[];

Defined in: packages/sage/src/internal/c4/world.ts:344


Defined in: packages/sage/src/internal/c4/world.ts:157

Unit-explicit warp-lane costs for one connected system.

declare const costs: WorldConnectionCosts;
console.log(costs.level1Atlas);

readonly cssAtlas: number;

Defined in: packages/sage/src/internal/c4/world.ts:169

readonly cssRaw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:168

readonly level1Atlas: number;

Defined in: packages/sage/src/internal/c4/world.ts:159

readonly level1Raw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:158

readonly level2Atlas: number;

Defined in: packages/sage/src/internal/c4/world.ts:161

readonly level2Raw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:160

readonly level3Atlas: number;

Defined in: packages/sage/src/internal/c4/world.ts:163

readonly level3Raw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:162

readonly level4Atlas: number;

Defined in: packages/sage/src/internal/c4/world.ts:165

readonly level4Raw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:164

readonly level5Atlas: number;

Defined in: packages/sage/src/internal/c4/world.ts:167

readonly level5Raw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:166


Defined in: packages/sage/src/internal/c4/world.ts:179

One StarSystem connection keyed by the connected system id.

declare const connection: WorldConnectionData;
console.log(connection.systemId);

readonly costs: WorldConnectionCosts;

Defined in: packages/sage/src/internal/c4/world.ts:181

readonly systemId: number;

Defined in: packages/sage/src/internal/c4/world.ts:180


Defined in: packages/sage/src/internal/c4/world.ts:128

Coordinates in SAGE sector units.

const coordinates: WorldCoordinates = { x: 1, y: 2 };

readonly x: number;

Defined in: packages/sage/src/internal/c4/world.ts:129

readonly y: number;

Defined in: packages/sage/src/internal/c4/world.ts:130


Defined in: packages/sage/src/internal/c4/world.ts:265

One nested Crafting Hab group retained as shared Starbase data.

declare const hab: WorldCraftingHabData;
console.log(hab.structures);

readonly chronoAddresses: readonly Address[];

Defined in: packages/sage/src/internal/c4/world.ts:268

readonly key: number;

Defined in: packages/sage/src/internal/c4/world.ts:266

readonly offset: number;

Defined in: packages/sage/src/internal/c4/world.ts:267

readonly structures: readonly WorldStructureData[];

Defined in: packages/sage/src/internal/c4/world.ts:269


Defined in: packages/sage/src/internal/c4/world.ts:117

A translated fixed-point world value retaining its exact source integer.

const value: WorldFixedValue = { raw: 65_536n, value: 1 };

readonly raw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:118

readonly value: number;

Defined in: packages/sage/src/internal/c4/world.ts:119


Defined in: packages/sage/src/internal/c4/world.ts:354

Fully translated Planet projection data.

declare const planet: WorldPlanetData;
console.log(planet.resources);

readonly baseClaimStakePlacementFee: readonly readonly WorldFixedValue[][];

Defined in: packages/sage/src/internal/c4/world.ts:357

readonly baseClaimStakeRentRate: readonly readonly WorldFixedValue[][];

Defined in: packages/sage/src/internal/c4/world.ts:356

readonly claimedPlots: readonly WorldClaimStakeGroupData[];

Defined in: packages/sage/src/internal/c4/world.ts:361

readonly claimedPlotsUnsizedLength: number;

Defined in: packages/sage/src/internal/c4/world.ts:360

readonly claimStakePlots: readonly readonly number[][];

Defined in: packages/sage/src/internal/c4/world.ts:355

readonly providedTags: readonly number[];

Defined in: packages/sage/src/internal/c4/world.ts:359

readonly resources: readonly WorldPlanetResourceData[];

Defined in: packages/sage/src/internal/c4/world.ts:358


Defined in: packages/sage/src/internal/c4/world.ts:328

One translated Planet resource richness value.

declare const resource: WorldPlanetResourceData;
console.log(resource.richness.value);

readonly cargoId: number;

Defined in: packages/sage/src/internal/c4/world.ts:329

readonly richness: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:330


Defined in: packages/sage/src/internal/c4/world.ts:279

Fully translated nested shared Starbase data.

declare const starbase: WorldStarbaseData;
console.log(starbase.owner, starbase.level);

readonly baseCraftingHabPlacementFee: readonly readonly WorldFixedValue[][];

Defined in: packages/sage/src/internal/c4/world.ts:292

readonly baseCraftingHabRentRate: readonly readonly WorldFixedValue[][];

Defined in: packages/sage/src/internal/c4/world.ts:291

readonly buildingTags: readonly number[];

Defined in: packages/sage/src/internal/c4/world.ts:295

readonly builtDestroyedAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:289

readonly craftingHabPlots: readonly readonly number[][];

Defined in: packages/sage/src/internal/c4/world.ts:290

readonly craftingHabs: readonly WorldCraftingHabData[];

Defined in: packages/sage/src/internal/c4/world.ts:298

readonly craftingHabsUnsizedLength: number;

Defined in: packages/sage/src/internal/c4/world.ts:297

readonly hp: number;

Defined in: packages/sage/src/internal/c4/world.ts:284

readonly lastCombatUpdateUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:288

readonly level: WorldStarbaseLevel;

Defined in: packages/sage/src/internal/c4/world.ts:281

readonly localMarketEnableLevel: WorldStarbaseLevel;

Defined in: packages/sage/src/internal/c4/world.ts:282

readonly locationTags: readonly number[];

Defined in: packages/sage/src/internal/c4/world.ts:294

readonly maxLevel: WorldStarbaseMaxLevelData;

Defined in: packages/sage/src/internal/c4/world.ts:293

readonly owner: WorldFaction;

Defined in: packages/sage/src/internal/c4/world.ts:280

readonly pendingHp: number;

Defined in: packages/sage/src/internal/c4/world.ts:285

readonly repairEnableLevel: WorldStarbaseLevel;

Defined in: packages/sage/src/internal/c4/world.ts:283

readonly shieldBreakDelayExpiresAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:287

readonly sp: number;

Defined in: packages/sage/src/internal/c4/world.ts:286

readonly validRecipeIds: readonly number[];

Defined in: packages/sage/src/internal/c4/world.ts:296


Defined in: packages/sage/src/internal/c4/world.ts:228

One translated level inside the Starbase maximum-level union.

declare const level: WorldStarbaseLevelData;
console.log(level.upgrades);

readonly info: WorldStarbaseLevelInfoData;

Defined in: packages/sage/src/internal/c4/world.ts:230

readonly level: WorldStarbaseLevel;

Defined in: packages/sage/src/internal/c4/world.ts:229

readonly upgrades: readonly WorldStarbaseUpgradeData[];

Defined in: packages/sage/src/internal/c4/world.ts:231


Defined in: packages/sage/src/internal/c4/world.ts:191

Fully translated combat/economy values for one Starbase level.

declare const info: WorldStarbaseLevelInfoData;
console.log(info.repairFeeAtlas);

readonly damagePerRound: number;

Defined in: packages/sage/src/internal/c4/world.ts:203

readonly hp: number;

Defined in: packages/sage/src/internal/c4/world.ts:192

readonly repairAbility: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:198

readonly repairCost: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:200

readonly repairEfficiency: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:199

readonly repairFeeAtlas: number;

Defined in: packages/sage/src/internal/c4/world.ts:202

readonly repairFeeRaw: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:201

readonly repairRate: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:197

readonly shieldBreakDelaySeconds: number;

Defined in: packages/sage/src/internal/c4/world.ts:195

readonly shieldRechargeRate: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:196

readonly sp: number;

Defined in: packages/sage/src/internal/c4/world.ts:193

readonly xp: WorldFixedValue;

Defined in: packages/sage/src/internal/c4/world.ts:194


Defined in: packages/sage/src/internal/c4/world.ts:241

Plain replacement for the generated StarbaseMaxLevel union.

declare const maximum: WorldStarbaseMaxLevelData;
console.log(maximum.kind);

readonly kind: WorldStarbaseLevel;

Defined in: packages/sage/src/internal/c4/world.ts:242

readonly levels: readonly WorldStarbaseLevelData[];

Defined in: packages/sage/src/internal/c4/world.ts:243


Defined in: packages/sage/src/internal/c4/world.ts:213

One cargo deposit requirement for an intermediate Starbase level.

declare const upgrade: WorldStarbaseUpgradeData;
console.log(upgrade.cargoId);

readonly cargoId: number;

Defined in: packages/sage/src/internal/c4/world.ts:214

readonly crew: number;

Defined in: packages/sage/src/internal/c4/world.ts:217

readonly deposited: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:216

readonly durationSeconds: number;

Defined in: packages/sage/src/internal/c4/world.ts:218

readonly needed: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:215


Defined in: packages/sage/src/internal/c4/world.ts:253

One nested shared structure value from Starbase crafting-hab data.

declare const structure: WorldStructureData;
console.log(structure.address);

readonly address: Address;

Defined in: packages/sage/src/internal/c4/world.ts:254

readonly deactivationTimeUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/world.ts:255

type CelestialBodySnapshot =
| PlanetSnapshot
| AsteroidSnapshot;

Defined in: packages/sage/src/world/index.ts:112

A translated CelestialBody snapshot projected as a Planet or Asteroid.

declare const body: CelestialBodySnapshot;
if (body.kind === 'planet') console.log(body.details.claimStakePlots);

type StarSystemDiscoveryOptions = Omit<DiscoveryRequest, "filters" | "strategy">;

Defined in: packages/sage/src/world/index.ts:55

Options supported by galaxy-scale StarSystem discovery.

const options: StarSystemDiscoveryOptions = { commitment: 'confirmed' };

type WorldFaction = "unaligned" | "mud" | "oni" | "ustur";

Defined in: packages/sage/src/internal/c4/world.ts:139

Human-readable faction labels used by shared Starbase data.

const faction: WorldFaction = 'mud';

type WorldStarbaseLevel =
| "level-0"
| "level-1"
| "level-2"
| "level-3"
| "level-4"
| "level-5"
| "css";

Defined in: packages/sage/src/internal/c4/world.ts:147

Human-readable Starbase level labels.

const level: WorldStarbaseLevel = 'level-1';

function distanceBetweenStarSystems(from, to): number;

Defined in: packages/sage/src/world/index.ts:523

Returns Euclidean distance between two SAGE sector coordinates.

ParameterType
fromWorldCoordinates
toWorldCoordinates

number

const distance = distanceBetweenStarSystems({ x: 0, y: 0 }, { x: 3, y: 4 });

function findCelestialBodyPda(game, bodyId): Promise<Address>;

Defined in: packages/sage/src/world/index.ts:260

Derives the CelestialBody PDA for a Game and numeric body id.

ParameterType
gameAddress
bodyIdnumber

Promise<Address>

declare const game: Address;
const address = await findCelestialBodyPda(game, 11);

function findStarSystemPda(game, systemId): Promise<Address>;

Defined in: packages/sage/src/world/index.ts:246

Derives the StarSystem PDA for a Game and numeric system id.

ParameterType
gameAddress
systemIdnumber

Promise<Address>

declare const game: Address;
const address = await findStarSystemPda(game, 1);

function getAsteroids(
ctx,
systemAddress,
options?): Promise<readonly AsteroidSnapshot[]>;

Defined in: packages/sage/src/world/index.ts:502

Returns only Asteroid projections in one StarSystem.

ParameterType
ctxSageContext
systemAddressAddress
options?ReadOptions

Promise<readonly AsteroidSnapshot[]>

declare const ctx: SageContext;
declare const systemAddress: Address;
const asteroids = await getAsteroids(ctx, systemAddress);

function getCelestialBodies(
ctx,
systemAddress,
options?): Promise<readonly CelestialBodySnapshot[]>;

Defined in: packages/sage/src/world/index.ts:441

Traverses a StarSystem’s stored CelestialBody addresses with explicit reads.

ParameterType
ctxSageContext
systemAddressAddress
options?ReadOptions

Promise<readonly CelestialBodySnapshot[]>

declare const ctx: SageContext;
declare const systemAddress: Address;
const bodies = await getCelestialBodies(ctx, systemAddress);

function getCelestialBody(
ctx,
address,
options?): Promise<CelestialBodySnapshot>;

Defined in: packages/sage/src/world/index.ts:369

Reads a required CelestialBody by account address.

ParameterType
ctxSageContext
addressAddress
options?ReadOptions

Promise<CelestialBodySnapshot>

declare const ctx: SageContext;
declare const address: Address;
const body = await getCelestialBody(ctx, address);

function getCelestialBodyById(
ctx,
bodyId,
options?): Promise<CelestialBodySnapshot>;

Defined in: packages/sage/src/world/index.ts:412

Derives and reads a CelestialBody by its Game-scoped numeric id.

ParameterType
ctxSageContext
bodyIdnumber
options?ReadOptions

Promise<CelestialBodySnapshot>

declare const ctx: SageContext;
const body = await getCelestialBodyById(ctx, 11);

function getCelestialBodyCoordinates(
ctx,
bodyAddress,
options?): Promise<WorldCoordinates>;

Defined in: packages/sage/src/world/index.ts:538

Resolves a CelestialBody’s stored StarSystem relation to sector coordinates.

ParameterType
ctxSageContext
bodyAddressAddress
options?ReadOptions

Promise<WorldCoordinates>

declare const ctx: SageContext;
declare const bodyAddress: Address;
const coordinates = await getCelestialBodyCoordinates(ctx, bodyAddress);

function getPlanets(
ctx,
systemAddress,
options?): Promise<readonly PlanetSnapshot[]>;

Defined in: packages/sage/src/world/index.ts:479

Returns only Planet projections in one StarSystem.

ParameterType
ctxSageContext
systemAddressAddress
options?ReadOptions

Promise<readonly PlanetSnapshot[]>

declare const ctx: SageContext;
declare const systemAddress: Address;
const planets = await getPlanets(ctx, systemAddress);

function getStarSystem(
ctx,
address,
options?): Promise<StarSystemSnapshot>;

Defined in: packages/sage/src/world/index.ts:275

Reads a required StarSystem by account address.

ParameterType
ctxSageContext
addressAddress
options?ReadOptions

Promise<StarSystemSnapshot>

declare const ctx: SageContext;
declare const address: Address;
const system = await getStarSystem(ctx, address);

function getStarSystemById(
ctx,
systemId,
options?): Promise<StarSystemSnapshot>;

Defined in: packages/sage/src/world/index.ts:318

Derives and reads a StarSystem by its Game-scoped numeric id.

ParameterType
ctxSageContext
systemIdnumber
options?ReadOptions

Promise<StarSystemSnapshot>

declare const ctx: SageContext;
const system = await getStarSystemById(ctx, 1);

function getStarSystems(ctx, options?): Promise<readonly StarSystemSnapshot[]>;

Defined in: packages/sage/src/world/index.ts:344

Discovers all StarSystems for the configured Game with stable targeted filters.

ParameterType
ctxSageContext
optionsStarSystemDiscoveryOptions

Promise<readonly StarSystemSnapshot[]>

declare const ctx: SageContext;
const systems = await getStarSystems(ctx);

function maybeGetCelestialBody(
ctx,
address,
options?): Promise<
| CelestialBodySnapshot
| undefined>;

Defined in: packages/sage/src/world/index.ts:389

Reads an optional CelestialBody by account address.

ParameterType
ctxSageContext
addressAddress
options?ReadOptions

Promise< | CelestialBodySnapshot | undefined>

declare const ctx: SageContext;
declare const address: Address;
const body = await maybeGetCelestialBody(ctx, address);

function maybeGetStarSystem(
ctx,
address,
options?): Promise<
| StarSystemSnapshot
| undefined>;

Defined in: packages/sage/src/world/index.ts:295

Reads an optional StarSystem by account address.

ParameterType
ctxSageContext
addressAddress
options?ReadOptions

Promise< | StarSystemSnapshot | undefined>

declare const ctx: SageContext;
declare const address: Address;
const system = await maybeGetStarSystem(ctx, address);