@aephia/atlas-kit 0.6.0-next.72 → 0.6.0-next.73
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/fleets/index.d.ts +14 -0
- package/dist/fleets/index.d.ts.map +1 -1
- package/dist/fleets/index.js +20 -1
- package/dist/fleets/index.js.map +1 -1
- package/dist/internal/c4/fleet.d.ts +2 -0
- package/dist/internal/c4/fleet.d.ts.map +1 -1
- package/dist/internal/c4/fleet.js +25 -7
- package/dist/internal/c4/fleet.js.map +1 -1
- package/dist/internal/c4/world.d.ts +7 -0
- package/dist/internal/c4/world.d.ts.map +1 -1
- package/dist/internal/c4/world.js.map +1 -1
- package/dist/world/index.d.ts +46 -0
- package/dist/world/index.d.ts.map +1 -1
- package/dist/world/index.js +56 -0
- package/dist/world/index.js.map +1 -1
- package/dist/world/planet-claim-stake-plots.d.ts +130 -0
- package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
- package/dist/world/planet-claim-stake-plots.js +110 -0
- package/dist/world/planet-claim-stake-plots.js.map +1 -0
- package/dist/world/starbase-status.d.ts +176 -0
- package/dist/world/starbase-status.d.ts.map +1 -0
- package/dist/world/starbase-status.js +153 -0
- package/dist/world/starbase-status.js.map +1 -0
- package/package.json +1 -1
package/dist/world/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/world/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/world/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { type Address, type EntityRef, type SageContext } from '../client/index.js';
|
|
2
|
+
import type { ClaimStakeTier as C4ClaimStakeTier, GameClaimStakeDefinitionData } from '../internal/c4/claim-stake-definitions.js';
|
|
3
|
+
import type { WorldFixedValue, WorldStarbaseLevel } from '../internal/c4/world.js';
|
|
4
|
+
import type { PlanetSnapshot, StarSystemSnapshot } from './index.js';
|
|
5
|
+
/** Claim Stake tier label, the column axis of Planet plot tables.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const tier: ClaimStakeTier = 'two';
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export type ClaimStakeTier = C4ClaimStakeTier;
|
|
13
|
+
/** Returns the zero-based column index of a Claim Stake tier.
|
|
14
|
+
*
|
|
15
|
+
* Planet plot, base rent and base placement-fee tables are indexed
|
|
16
|
+
* `[starbaseLevelIndex][claimStakeTierIndex]`: seven Starbase level rows and
|
|
17
|
+
* five tier columns.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```ts
|
|
21
|
+
* declare const planet: PlanetSnapshot;
|
|
22
|
+
* const level1TierTwo = planet.details.claimStakePlots[1]![claimStakeTierIndex('two')];
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare function claimStakeTierIndex(tier: ClaimStakeTier): number;
|
|
26
|
+
/** One Claim Stake structure recorded on a Planet plot.
|
|
27
|
+
*
|
|
28
|
+
* `active` is true while the stored deactivation time is zero. A deactivated
|
|
29
|
+
* structure still occupies its plot until the program removes it from the
|
|
30
|
+
* Planet.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* declare const structure: PlanetClaimStakePlotStructure;
|
|
35
|
+
* console.log(structure.address, structure.active);
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export interface PlanetClaimStakePlotStructure {
|
|
39
|
+
readonly address: Address;
|
|
40
|
+
readonly deactivationTimeUnixSeconds: bigint;
|
|
41
|
+
readonly active: boolean;
|
|
42
|
+
}
|
|
43
|
+
/** One Claim Stake definition and the plots it occupies on a Planet.
|
|
44
|
+
*
|
|
45
|
+
* `occupied` counts every structure still recorded for this definition.
|
|
46
|
+
* `available` is the tier's `plotLimit` minus `occupied`, clamped at zero; it
|
|
47
|
+
* is the per-definition check the placement planner runs
|
|
48
|
+
* (`claimedCount(details, definition.id)` against the tier cell) and is absent
|
|
49
|
+
* when the System has no Starbase. `requiredTagsProvided` is true when the
|
|
50
|
+
* Planet provides every tag the definition requires. Neither value is a
|
|
51
|
+
* complete eligibility verdict: permissions, rent, faction rules and
|
|
52
|
+
* concurrent placements remain chain-authoritative. `chronology` is the stored
|
|
53
|
+
* placement order the program uses to index structures.
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```ts
|
|
57
|
+
* declare const entry: PlanetClaimStakePlotDefinition;
|
|
58
|
+
* console.log(entry.definition.name, entry.occupied, entry.available);
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
export interface PlanetClaimStakePlotDefinition {
|
|
62
|
+
readonly definition: GameClaimStakeDefinitionData;
|
|
63
|
+
readonly requiredTagsProvided: boolean;
|
|
64
|
+
readonly occupied: number;
|
|
65
|
+
readonly available?: number;
|
|
66
|
+
readonly structures: readonly PlanetClaimStakePlotStructure[];
|
|
67
|
+
readonly chronology: readonly Address[];
|
|
68
|
+
}
|
|
69
|
+
/** Plot limits for one Claim Stake tier on a Planet.
|
|
70
|
+
*
|
|
71
|
+
* `plotLimitByLevel` lists the stored plot cell for every Starbase level in
|
|
72
|
+
* {@link starbaseLevelIndex} order. `plotLimit`, `baseRentRate` and
|
|
73
|
+
* `basePlacementFee` select the row for the System's current Starbase level
|
|
74
|
+
* and are absent when the System has no Starbase. The limit applies per
|
|
75
|
+
* definition: the placement planner compares one definition's recorded
|
|
76
|
+
* structures against this cell, so each entry in `definitions` carries its own
|
|
77
|
+
* `occupied` and `available`. Whether the program also caps the tier as a
|
|
78
|
+
* whole is not established by the pinned contract, so no tier-wide remainder is
|
|
79
|
+
* reported. Base rent and placement fee are the stored Planet values;
|
|
80
|
+
* definition multipliers and the exact settlement remain program-authoritative.
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```ts
|
|
84
|
+
* declare const tier: PlanetClaimStakePlotTier;
|
|
85
|
+
* for (const entry of tier.definitions) {
|
|
86
|
+
* console.log(entry.definition.name, tier.plotLimit, entry.available);
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
export interface PlanetClaimStakePlotTier {
|
|
91
|
+
readonly tier: ClaimStakeTier;
|
|
92
|
+
readonly tierIndex: number;
|
|
93
|
+
readonly plotLimitByLevel: readonly number[];
|
|
94
|
+
readonly plotLimit?: number;
|
|
95
|
+
readonly baseRentRate?: WorldFixedValue;
|
|
96
|
+
readonly basePlacementFee?: WorldFixedValue;
|
|
97
|
+
readonly definitions: readonly PlanetClaimStakePlotDefinition[];
|
|
98
|
+
}
|
|
99
|
+
/** Immutable Claim Stake plot availability of one Planet.
|
|
100
|
+
*
|
|
101
|
+
* `tiers` always holds the five Claim Stake tiers in order. `starbaseLevel`
|
|
102
|
+
* and `starbaseLevelIndex` come from the Planet's StarSystem and are absent
|
|
103
|
+
* when that System has no Starbase. Read metadata reports the older of the
|
|
104
|
+
* Planet and StarSystem observations.
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```ts
|
|
108
|
+
* declare const plots: PlanetClaimStakePlotsSnapshot;
|
|
109
|
+
* const open = plots.tiers.flatMap((tier) =>
|
|
110
|
+
* tier.definitions.filter((entry) => (entry.available ?? 0) > 0),
|
|
111
|
+
* );
|
|
112
|
+
* console.log(plots.name, open.map((entry) => entry.definition.name));
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
export interface PlanetClaimStakePlotsSnapshot {
|
|
116
|
+
readonly kind: 'planetClaimStakePlots';
|
|
117
|
+
readonly address: Address;
|
|
118
|
+
readonly bodyId: number;
|
|
119
|
+
readonly name: string;
|
|
120
|
+
readonly game: Address;
|
|
121
|
+
readonly system: EntityRef<'starSystem'>;
|
|
122
|
+
readonly starbaseLevel?: WorldStarbaseLevel;
|
|
123
|
+
readonly starbaseLevelIndex?: number;
|
|
124
|
+
readonly providedTags: readonly number[];
|
|
125
|
+
readonly tiers: readonly PlanetClaimStakePlotTier[];
|
|
126
|
+
toJSON(): unknown;
|
|
127
|
+
}
|
|
128
|
+
/** Builds the plot availability snapshot for a loaded Planet and its System. */
|
|
129
|
+
export declare function createPlanetClaimStakePlotsSnapshot(context: SageContext, planet: PlanetSnapshot, system: StarSystemSnapshot): Promise<PlanetClaimStakePlotsSnapshot>;
|
|
130
|
+
//# sourceMappingURL=planet-claim-stake-plots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"planet-claim-stake-plots.d.ts","sourceRoot":"","sources":["../../src/world/planet-claim-stake-plots.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,SAAS,EAEd,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,cAAc,IAAI,gBAAgB,EAClC,4BAA4B,EAC7B,MAAM,2CAA2C,CAAC;AACnD,OAAO,KAAK,EAEV,eAAe,EACf,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AASjC,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErE;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAU9C;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAEhE;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,2BAA2B,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,UAAU,EAAE,4BAA4B,CAAC;IAClD,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,SAAS,6BAA6B,EAAE,CAAC;IAC9D,QAAQ,CAAC,UAAU,EAAE,SAAS,OAAO,EAAE,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAC5C,QAAQ,CAAC,WAAW,EAAE,SAAS,8BAA8B,EAAE,CAAC;CACjE;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,kBAAkB,CAAC;IAC5C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACpD,MAAM,IAAI,OAAO,CAAC;CACnB;AAwBD,gFAAgF;AAChF,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,6BAA6B,CAAC,CAiFxC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { entityRef, } from '../client/index.js';
|
|
2
|
+
import { attachJsonSerialization } from '../internal/json.js';
|
|
3
|
+
import { attachReadMeta, readMeta } from '../internal/read-meta.js';
|
|
4
|
+
import { freezeResolvedSnapshot } from '../internal/resolved-snapshot.js';
|
|
5
|
+
import { listClaimStakeDefinitions, resolveClaimStakeDefinition, } from '../registry/index.js';
|
|
6
|
+
import { starbaseLevelIndex } from './starbase-status.js';
|
|
7
|
+
const CLAIM_STAKE_TIERS = Object.freeze([
|
|
8
|
+
'one',
|
|
9
|
+
'two',
|
|
10
|
+
'three',
|
|
11
|
+
'four',
|
|
12
|
+
'five',
|
|
13
|
+
]);
|
|
14
|
+
/** Returns the zero-based column index of a Claim Stake tier.
|
|
15
|
+
*
|
|
16
|
+
* Planet plot, base rent and base placement-fee tables are indexed
|
|
17
|
+
* `[starbaseLevelIndex][claimStakeTierIndex]`: seven Starbase level rows and
|
|
18
|
+
* five tier columns.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* declare const planet: PlanetSnapshot;
|
|
23
|
+
* const level1TierTwo = planet.details.claimStakePlots[1]![claimStakeTierIndex('two')];
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export function claimStakeTierIndex(tier) {
|
|
27
|
+
return CLAIM_STAKE_TIERS.indexOf(tier);
|
|
28
|
+
}
|
|
29
|
+
function structuresOf(group) {
|
|
30
|
+
return (group?.structures ?? []).map((structure) => ({
|
|
31
|
+
active: structure.deactivationTimeUnixSeconds === 0n,
|
|
32
|
+
address: structure.address,
|
|
33
|
+
deactivationTimeUnixSeconds: structure.deactivationTimeUnixSeconds,
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
function olderMetadata(planet, system) {
|
|
37
|
+
return {
|
|
38
|
+
commitment: planet.commitment,
|
|
39
|
+
slot: planet.slot < system.slot ? planet.slot : system.slot,
|
|
40
|
+
source: planet.source,
|
|
41
|
+
strategy: 'direct',
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
/** Builds the plot availability snapshot for a loaded Planet and its System. */
|
|
45
|
+
export async function createPlanetClaimStakePlotsSnapshot(context, planet, system) {
|
|
46
|
+
const details = planet.details;
|
|
47
|
+
const catalog = await listClaimStakeDefinitions(context);
|
|
48
|
+
const groups = new Map(details.claimedPlots.map((group) => [group.key, group]));
|
|
49
|
+
const known = new Set(catalog.map((definition) => definition.id));
|
|
50
|
+
// A group keyed outside the loaded catalog forces the registry refresh and
|
|
51
|
+
// out-of-sync rejection that every definition lookup applies.
|
|
52
|
+
const refreshed = await Promise.all([...groups.keys()]
|
|
53
|
+
.filter((key) => !known.has(key))
|
|
54
|
+
.map((key) => resolveClaimStakeDefinition(context, key)));
|
|
55
|
+
const definitions = [...catalog, ...refreshed];
|
|
56
|
+
const starbase = system.starbase;
|
|
57
|
+
const levelIndex = starbase === undefined ? undefined : starbaseLevelIndex(starbase.level);
|
|
58
|
+
const tiers = CLAIM_STAKE_TIERS.map((tier, tierIndex) => {
|
|
59
|
+
// The pinned Planet codec fixes seven level rows and five tier columns.
|
|
60
|
+
const plotLimitByLevel = details.claimStakePlots.map((row) => row[tierIndex]);
|
|
61
|
+
const plotLimit = levelIndex === undefined ? undefined : plotLimitByLevel[levelIndex];
|
|
62
|
+
const entries = definitions
|
|
63
|
+
.filter((definition) => definition.tier === tier)
|
|
64
|
+
.map((definition) => {
|
|
65
|
+
const group = groups.get(definition.id);
|
|
66
|
+
const structures = structuresOf(group);
|
|
67
|
+
const occupied = structures.length;
|
|
68
|
+
return {
|
|
69
|
+
chronology: [...(group?.chronoAddresses ?? [])],
|
|
70
|
+
definition,
|
|
71
|
+
occupied,
|
|
72
|
+
...(plotLimit === undefined
|
|
73
|
+
? {}
|
|
74
|
+
: { available: Math.max(0, plotLimit - occupied) }),
|
|
75
|
+
requiredTagsProvided: definition.requiredTagIds.every((tag) => details.providedTags.includes(tag)),
|
|
76
|
+
structures,
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
if (levelIndex === undefined || plotLimit === undefined) {
|
|
80
|
+
return { definitions: entries, plotLimitByLevel, tier, tierIndex };
|
|
81
|
+
}
|
|
82
|
+
return {
|
|
83
|
+
basePlacementFee: {
|
|
84
|
+
...details.baseClaimStakePlacementFee[levelIndex][tierIndex],
|
|
85
|
+
},
|
|
86
|
+
baseRentRate: {
|
|
87
|
+
...details.baseClaimStakeRentRate[levelIndex][tierIndex],
|
|
88
|
+
},
|
|
89
|
+
definitions: entries,
|
|
90
|
+
plotLimit,
|
|
91
|
+
plotLimitByLevel,
|
|
92
|
+
tier,
|
|
93
|
+
tierIndex,
|
|
94
|
+
};
|
|
95
|
+
});
|
|
96
|
+
return freezeResolvedSnapshot(attachReadMeta(attachJsonSerialization({
|
|
97
|
+
address: planet.address,
|
|
98
|
+
bodyId: planet.id,
|
|
99
|
+
game: planet.game,
|
|
100
|
+
kind: 'planetClaimStakePlots',
|
|
101
|
+
name: planet.name,
|
|
102
|
+
providedTags: [...details.providedTags],
|
|
103
|
+
...(starbase === undefined || levelIndex === undefined
|
|
104
|
+
? {}
|
|
105
|
+
: { starbaseLevel: starbase.level, starbaseLevelIndex: levelIndex }),
|
|
106
|
+
system: entityRef('starSystem', system.address),
|
|
107
|
+
tiers,
|
|
108
|
+
}), olderMetadata(readMeta(planet), readMeta(system))));
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=planet-claim-stake-plots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"planet-claim-stake-plots.js","sourceRoot":"","sources":["../../src/world/planet-claim-stake-plots.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { type Address, type EntityRef, type SageContext } from '../client/index.js';
|
|
2
|
+
import type { WorldFaction, WorldStarbaseData, WorldStarbaseLevel, WorldStarbaseLevelInfoData } from '../internal/c4/world.js';
|
|
3
|
+
import { type CargoDefinitionSummary } from '../registry/index.js';
|
|
4
|
+
import type { StarSystemSnapshot } from './index.js';
|
|
5
|
+
/** Returns the zero-based ordinal of a Starbase level label.
|
|
6
|
+
*
|
|
7
|
+
* Levels `level-0` through `level-5` map to 0 through 5 and the Central Space
|
|
8
|
+
* Station (`css`) ranks above them as 6. This is the row index used by Planet
|
|
9
|
+
* Claim Stake plot tables and Starbase Crafting Hab plot tables, and the order
|
|
10
|
+
* used to compare a Starbase level with a service enable level.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* const unlocked = starbaseLevelIndex('level-3') >= starbaseLevelIndex('level-2');
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare function starbaseLevelIndex(level: WorldStarbaseLevel): number;
|
|
18
|
+
/** One material a shared Starbase needs before it can reach its next level.
|
|
19
|
+
*
|
|
20
|
+
* `needed`, `deposited` and `remaining` are raw cargo units. `complete` is true
|
|
21
|
+
* once `deposited` has reached `needed`. `crew` and `durationSeconds` describe
|
|
22
|
+
* one contribution of this material: a Starbase Player installs it through its
|
|
23
|
+
* own `StarbaseUpgradeProcess`, which the `starbases` entry reads separately.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* declare const material: StarbaseUpgradeMaterial;
|
|
28
|
+
* console.log(material.cargoId, material.remaining);
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export interface StarbaseUpgradeMaterial {
|
|
32
|
+
readonly cargoId: number;
|
|
33
|
+
readonly needed: bigint;
|
|
34
|
+
readonly deposited: bigint;
|
|
35
|
+
readonly remaining: bigint;
|
|
36
|
+
readonly complete: boolean;
|
|
37
|
+
readonly crew: number;
|
|
38
|
+
readonly durationSeconds: number;
|
|
39
|
+
}
|
|
40
|
+
/** Shared progress of a Starbase toward its next level.
|
|
41
|
+
*
|
|
42
|
+
* `complete` is true when every listed material is fully deposited. The pinned
|
|
43
|
+
* contract states that the Starbase should then change level and reset the
|
|
44
|
+
* deposits; the program applies that change, the SDK only reports the stored
|
|
45
|
+
* state.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```ts
|
|
49
|
+
* declare const upgrade: StarbaseUpgradeProgress;
|
|
50
|
+
* console.log(upgrade.toLevel, upgrade.complete);
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export interface StarbaseUpgradeProgress {
|
|
54
|
+
readonly toLevel: WorldStarbaseLevel;
|
|
55
|
+
readonly complete: boolean;
|
|
56
|
+
readonly materials: readonly StarbaseUpgradeMaterial[];
|
|
57
|
+
}
|
|
58
|
+
/** Whether one Starbase service is enabled at the current level.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```ts
|
|
62
|
+
* declare const service: StarbaseServiceAvailability;
|
|
63
|
+
* if (service.available) console.log('enabled since', service.enabledFromLevel);
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export interface StarbaseServiceAvailability {
|
|
67
|
+
readonly enabledFromLevel: WorldStarbaseLevel;
|
|
68
|
+
readonly available: boolean;
|
|
69
|
+
}
|
|
70
|
+
/** Derived status of the shared Starbase nested in one StarSystem.
|
|
71
|
+
*
|
|
72
|
+
* `current` pairs the stored hull and shield points with the maximums the
|
|
73
|
+
* current level configures. `pendingHullPoints` mirrors the stored
|
|
74
|
+
* `pendingHp` field as is: the pinned contract only names it, so the SDK makes
|
|
75
|
+
* no claim about when or how the program settles it into `hullPoints`.
|
|
76
|
+
* `timing` values are raw Unix seconds, as on the Fleet combat status; shield
|
|
77
|
+
* and hull settlement rules are likewise unqualified. `upgrade` is absent once
|
|
78
|
+
* the Starbase has reached its maximum level.
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```ts
|
|
82
|
+
* declare const status: StarbaseStatus;
|
|
83
|
+
* console.log(status.level, status.current.hullPoints, status.current.maxHullPoints);
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
export interface StarbaseStatus {
|
|
87
|
+
readonly kind: 'starbaseStatus';
|
|
88
|
+
readonly owner: WorldFaction;
|
|
89
|
+
readonly level: WorldStarbaseLevel;
|
|
90
|
+
/** Ordinal from {@link starbaseLevelIndex}; the Central Space Station is 6. */
|
|
91
|
+
readonly levelIndex: number;
|
|
92
|
+
readonly maxLevel: WorldStarbaseLevel;
|
|
93
|
+
readonly atMaxLevel: boolean;
|
|
94
|
+
/** Configured values for the current level, copied from the level table. */
|
|
95
|
+
readonly levelInfo: WorldStarbaseLevelInfoData;
|
|
96
|
+
readonly current: {
|
|
97
|
+
readonly hullPoints: number;
|
|
98
|
+
readonly pendingHullPoints: number;
|
|
99
|
+
readonly maxHullPoints: number;
|
|
100
|
+
readonly shieldPoints: number;
|
|
101
|
+
readonly maxShieldPoints: number;
|
|
102
|
+
};
|
|
103
|
+
readonly timing: {
|
|
104
|
+
/** When shield points may resume regenerating after reaching zero. */
|
|
105
|
+
readonly shieldBreakDelayEndsAtUnixSeconds: bigint;
|
|
106
|
+
readonly lastCombatUpdateAtUnixSeconds: bigint;
|
|
107
|
+
/** When the Starbase was last built or destroyed. */
|
|
108
|
+
readonly builtOrDestroyedAtUnixSeconds: bigint;
|
|
109
|
+
};
|
|
110
|
+
readonly services: {
|
|
111
|
+
readonly localMarket: StarbaseServiceAvailability;
|
|
112
|
+
readonly repair: StarbaseServiceAvailability;
|
|
113
|
+
};
|
|
114
|
+
readonly upgrade?: StarbaseUpgradeProgress;
|
|
115
|
+
toJSON(): unknown;
|
|
116
|
+
}
|
|
117
|
+
/** One upgrade material with its registry-resolved cargo definition.
|
|
118
|
+
*
|
|
119
|
+
* @example
|
|
120
|
+
* ```ts
|
|
121
|
+
* declare const material: ResolvedStarbaseUpgradeMaterial;
|
|
122
|
+
* console.log(material.cargo.name, material.remaining);
|
|
123
|
+
* ```
|
|
124
|
+
*/
|
|
125
|
+
export interface ResolvedStarbaseUpgradeMaterial extends StarbaseUpgradeMaterial {
|
|
126
|
+
readonly cargo: CargoDefinitionSummary;
|
|
127
|
+
}
|
|
128
|
+
/** Upgrade progress whose materials carry resolved cargo definitions.
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```ts
|
|
132
|
+
* declare const upgrade: ResolvedStarbaseUpgradeProgress;
|
|
133
|
+
* console.log(upgrade.materials.map((material) => material.cargo.name));
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
export interface ResolvedStarbaseUpgradeProgress extends Omit<StarbaseUpgradeProgress, 'materials'> {
|
|
137
|
+
readonly materials: readonly ResolvedStarbaseUpgradeMaterial[];
|
|
138
|
+
}
|
|
139
|
+
/** Immutable shared Starbase status read for one StarSystem.
|
|
140
|
+
*
|
|
141
|
+
* `address` is the StarSystem address: the nested Starbase has no account of
|
|
142
|
+
* its own. Read metadata comes from the StarSystem observation.
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* ```ts
|
|
146
|
+
* declare const status: StarbaseStatusSnapshot;
|
|
147
|
+
* console.log(status.systemName, status.upgrade?.materials[0]?.cargo.name);
|
|
148
|
+
* ```
|
|
149
|
+
*/
|
|
150
|
+
export interface StarbaseStatusSnapshot extends Omit<StarbaseStatus, 'upgrade'> {
|
|
151
|
+
readonly address: Address;
|
|
152
|
+
readonly system: EntityRef<'starSystem'>;
|
|
153
|
+
readonly systemName: string;
|
|
154
|
+
readonly upgrade?: ResolvedStarbaseUpgradeProgress;
|
|
155
|
+
}
|
|
156
|
+
/** Derives the status of a shared Starbase from already-loaded StarSystem data.
|
|
157
|
+
*
|
|
158
|
+
* This is pure and network-free: it needs neither the context nor the Game
|
|
159
|
+
* definitions registry, so galaxy-map readers can call it on every System they
|
|
160
|
+
* already hold. The result is a new deeply frozen value; the input is left
|
|
161
|
+
* untouched. Materials carry numeric cargo ids; use `getStarbaseStatus` when
|
|
162
|
+
* you want them resolved to cargo definitions.
|
|
163
|
+
*
|
|
164
|
+
* @example
|
|
165
|
+
* ```ts
|
|
166
|
+
* declare const system: StarSystemSnapshot;
|
|
167
|
+
* if (system.starbase !== undefined) {
|
|
168
|
+
* const status = deriveStarbaseStatus(system.starbase);
|
|
169
|
+
* console.log(status.level, status.upgrade?.toLevel);
|
|
170
|
+
* }
|
|
171
|
+
* ```
|
|
172
|
+
*/
|
|
173
|
+
export declare function deriveStarbaseStatus(starbase: WorldStarbaseData): StarbaseStatus;
|
|
174
|
+
/** Builds the resolved status snapshot for a loaded StarSystem's Starbase. */
|
|
175
|
+
export declare function createStarbaseStatusSnapshot(context: SageContext, system: StarSystemSnapshot, starbase: WorldStarbaseData): Promise<StarbaseStatusSnapshot>;
|
|
176
|
+
//# sourceMappingURL=starbase-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"starbase-status.d.ts","sourceRoot":"","sources":["../../src/world/starbase-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { InvalidDerivationInputError, entityRef, } from '../client/index.js';
|
|
2
|
+
import { attachJsonSerialization } from '../internal/json.js';
|
|
3
|
+
import { attachReadMeta, readMeta } from '../internal/read-meta.js';
|
|
4
|
+
import { freezeResolvedSnapshot } from '../internal/resolved-snapshot.js';
|
|
5
|
+
import { resolveCargo, } from '../registry/index.js';
|
|
6
|
+
const STARBASE_LEVEL_INDEX = Object.freeze({
|
|
7
|
+
'level-0': 0,
|
|
8
|
+
'level-1': 1,
|
|
9
|
+
'level-2': 2,
|
|
10
|
+
'level-3': 3,
|
|
11
|
+
'level-4': 4,
|
|
12
|
+
'level-5': 5,
|
|
13
|
+
css: 6,
|
|
14
|
+
});
|
|
15
|
+
/** Returns the zero-based ordinal of a Starbase level label.
|
|
16
|
+
*
|
|
17
|
+
* Levels `level-0` through `level-5` map to 0 through 5 and the Central Space
|
|
18
|
+
* Station (`css`) ranks above them as 6. This is the row index used by Planet
|
|
19
|
+
* Claim Stake plot tables and Starbase Crafting Hab plot tables, and the order
|
|
20
|
+
* used to compare a Starbase level with a service enable level.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```ts
|
|
24
|
+
* const unlocked = starbaseLevelIndex('level-3') >= starbaseLevelIndex('level-2');
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export function starbaseLevelIndex(level) {
|
|
28
|
+
return STARBASE_LEVEL_INDEX[level];
|
|
29
|
+
}
|
|
30
|
+
function copyFixed(value) {
|
|
31
|
+
return { raw: value.raw, value: value.value };
|
|
32
|
+
}
|
|
33
|
+
function copyLevelInfo(info) {
|
|
34
|
+
return {
|
|
35
|
+
damagePerRound: info.damagePerRound,
|
|
36
|
+
hp: info.hp,
|
|
37
|
+
repairAbility: copyFixed(info.repairAbility),
|
|
38
|
+
repairCost: copyFixed(info.repairCost),
|
|
39
|
+
repairEfficiency: copyFixed(info.repairEfficiency),
|
|
40
|
+
repairFeeAtlas: info.repairFeeAtlas,
|
|
41
|
+
repairFeeRaw: info.repairFeeRaw,
|
|
42
|
+
repairRate: copyFixed(info.repairRate),
|
|
43
|
+
shieldBreakDelaySeconds: info.shieldBreakDelaySeconds,
|
|
44
|
+
shieldRechargeRate: copyFixed(info.shieldRechargeRate),
|
|
45
|
+
sp: info.sp,
|
|
46
|
+
xp: copyFixed(info.xp),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function serviceAvailability(levelIndex, enabledFromLevel) {
|
|
50
|
+
return {
|
|
51
|
+
available: levelIndex >= starbaseLevelIndex(enabledFromLevel),
|
|
52
|
+
enabledFromLevel,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
function upgradeProgress(toLevel, upgrades) {
|
|
56
|
+
const materials = upgrades.map((upgrade) => {
|
|
57
|
+
const remaining = upgrade.needed > upgrade.deposited
|
|
58
|
+
? upgrade.needed - upgrade.deposited
|
|
59
|
+
: 0n;
|
|
60
|
+
return {
|
|
61
|
+
cargoId: upgrade.cargoId,
|
|
62
|
+
complete: remaining === 0n,
|
|
63
|
+
crew: upgrade.crew,
|
|
64
|
+
deposited: upgrade.deposited,
|
|
65
|
+
durationSeconds: upgrade.durationSeconds,
|
|
66
|
+
needed: upgrade.needed,
|
|
67
|
+
remaining,
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
return {
|
|
71
|
+
complete: materials.every((material) => material.complete),
|
|
72
|
+
materials,
|
|
73
|
+
toLevel,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
/** Derives the status of a shared Starbase from already-loaded StarSystem data.
|
|
77
|
+
*
|
|
78
|
+
* This is pure and network-free: it needs neither the context nor the Game
|
|
79
|
+
* definitions registry, so galaxy-map readers can call it on every System they
|
|
80
|
+
* already hold. The result is a new deeply frozen value; the input is left
|
|
81
|
+
* untouched. Materials carry numeric cargo ids; use `getStarbaseStatus` when
|
|
82
|
+
* you want them resolved to cargo definitions.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```ts
|
|
86
|
+
* declare const system: StarSystemSnapshot;
|
|
87
|
+
* if (system.starbase !== undefined) {
|
|
88
|
+
* const status = deriveStarbaseStatus(system.starbase);
|
|
89
|
+
* console.log(status.level, status.upgrade?.toLevel);
|
|
90
|
+
* }
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export function deriveStarbaseStatus(starbase) {
|
|
94
|
+
const levels = starbase.maxLevel.levels;
|
|
95
|
+
const position = levels.findIndex((entry) => entry.level === starbase.level);
|
|
96
|
+
if (position === -1) {
|
|
97
|
+
throw new InvalidDerivationInputError('Starbase level', starbase.level, `The nested Starbase reports level ${starbase.level}, but its ${starbase.maxLevel.kind} level table only describes ${levels.map((entry) => entry.level).join(', ')}. Refresh the StarSystem and verify the pinned binding version before deriving its status.`);
|
|
98
|
+
}
|
|
99
|
+
const current = levels[position];
|
|
100
|
+
const next = levels[position + 1];
|
|
101
|
+
const levelIndex = starbaseLevelIndex(starbase.level);
|
|
102
|
+
const upgrade = next === undefined
|
|
103
|
+
? undefined
|
|
104
|
+
: upgradeProgress(next.level, current.upgrades);
|
|
105
|
+
return freezeResolvedSnapshot(attachJsonSerialization({
|
|
106
|
+
atMaxLevel: next === undefined,
|
|
107
|
+
current: {
|
|
108
|
+
hullPoints: starbase.hp,
|
|
109
|
+
maxHullPoints: current.info.hp,
|
|
110
|
+
maxShieldPoints: current.info.sp,
|
|
111
|
+
pendingHullPoints: starbase.pendingHp,
|
|
112
|
+
shieldPoints: starbase.sp,
|
|
113
|
+
},
|
|
114
|
+
kind: 'starbaseStatus',
|
|
115
|
+
level: starbase.level,
|
|
116
|
+
levelIndex,
|
|
117
|
+
levelInfo: copyLevelInfo(current.info),
|
|
118
|
+
maxLevel: starbase.maxLevel.kind,
|
|
119
|
+
owner: starbase.owner,
|
|
120
|
+
services: {
|
|
121
|
+
localMarket: serviceAvailability(levelIndex, starbase.localMarketEnableLevel),
|
|
122
|
+
repair: serviceAvailability(levelIndex, starbase.repairEnableLevel),
|
|
123
|
+
},
|
|
124
|
+
timing: {
|
|
125
|
+
builtOrDestroyedAtUnixSeconds: starbase.builtDestroyedAtUnixSeconds,
|
|
126
|
+
lastCombatUpdateAtUnixSeconds: starbase.lastCombatUpdateUnixSeconds,
|
|
127
|
+
shieldBreakDelayEndsAtUnixSeconds: starbase.shieldBreakDelayExpiresAtUnixSeconds,
|
|
128
|
+
},
|
|
129
|
+
...(upgrade === undefined ? {} : { upgrade }),
|
|
130
|
+
}));
|
|
131
|
+
}
|
|
132
|
+
/** Builds the resolved status snapshot for a loaded StarSystem's Starbase. */
|
|
133
|
+
export async function createStarbaseStatusSnapshot(context, system, starbase) {
|
|
134
|
+
const { upgrade, ...status } = deriveStarbaseStatus(starbase);
|
|
135
|
+
const resolvedUpgrade = upgrade === undefined
|
|
136
|
+
? undefined
|
|
137
|
+
: {
|
|
138
|
+
complete: upgrade.complete,
|
|
139
|
+
materials: await Promise.all(upgrade.materials.map(async (material) => ({
|
|
140
|
+
...material,
|
|
141
|
+
cargo: await resolveCargo(context, material.cargoId),
|
|
142
|
+
}))),
|
|
143
|
+
toLevel: upgrade.toLevel,
|
|
144
|
+
};
|
|
145
|
+
return freezeResolvedSnapshot(attachReadMeta(attachJsonSerialization({
|
|
146
|
+
...status,
|
|
147
|
+
address: system.address,
|
|
148
|
+
system: entityRef('starSystem', system.address),
|
|
149
|
+
systemName: system.name,
|
|
150
|
+
...(resolvedUpgrade === undefined ? {} : { upgrade: resolvedUpgrade }),
|
|
151
|
+
}), readMeta(system)));
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=starbase-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"starbase-status.js","sourceRoot":"","sources":["../../src/world/starbase-status.ts"],"names":[],"mappings":"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"}
|