Handbook
Reference

Every number

Every figure this handbook states, with the call that produced it. All of these were read off the deployed contracts rather than from notes — a manual that quotes numbers the game does not use is worse than no manual.

Time

ValueRead fromMutable
Epoch length7 daysregistry.epochLength()immutable
Claim cooldown4 hoursproduction.claimCooldown()owner
Storage, in own output3 daysproduction.capSeconds()owner
Raid transit8 hoursraid.RAID_DELAY()constant
Defence sealed before impact15 minutesraid.DEFENCE_CUTOFF()constant
Raid written off after24 hoursraid.ABANDON_AFTER()constant
Siege reserve melts over6 hoursraid.reserveWindow()owner
Wall stand-down8 hoursraid.UNARM_DELAY()constant
Vendetta cooldown24 hoursraid.VENDETTA_DURATION()constant
Shield after a repel12 hoursraid.SHIELD_DURATION()constant

Production

ValueRead fromMutable
Base rate, SCRIP per $ per epoch70production.ratePerUsdPerEpoch()owner
Funding share100%production.fundingBps()owner
Material share of output1%resources.mintBps()owner
Minimum holding to count$25registry.paramsStruct().minTicketUsdowner

The three ladders

ValueRead fromMutable
Weekly industry ranking0.7x – 1.3xregistry.paramsStruct().base / .spreadowner
Daily company ranking0.75x – 1.25xdailyOracle.base() / .spread()owner
Staking boost ceiling1.2xproduction.boostCeilingBps()owner
CDLT for full cover, per $100production.tokensPerUsd()owner
Combined range0.52x – 1.95xthe three multipliedderived
TWAP window1 hourregistry.paramsStruct().twapWindowowner

Building

ValueRead fromMutable
Base cost, level 1100 SCRIPregistry.paramsStruct().buildingBaseCostowner
Maximum level10registry.paramsStruct().maxBuildingLevelowner
Bonus per level25%registry.paramsStruct().levelBonusBpsowner
Base build time4 hoursregistry.paramsStruct().buildBaseSecondsowner
Cover target4 sub-industriesregistry.paramsStruct().kTargetowner
Era skip cost500 SCRIPregistry.paramsStruct().eraSkipBaseCostowner

Raiding

ValueRead fromMutable
Wall wear per unit of loot200%raid.wallWearPerLootBps()owner
Maximum wall damage in one hit60%raid.maxWallDamageBps()owner
No-penalty size band2xregistry.paramsStruct().mismatchPlateauowner
Falloff past that bandpower of 4registry.paramsStruct().mismatchAlphaowner
Hard size floornot setraid.minMismatchWad()owner
Minimum attacker city sizenot setraid.minAttackerPowerUsd()owner
Minimum attacker frontiernot setraid.minAttackerFrontier()owner
Loot ceiling per unit of force3xraid.carryPerForceBps()owner
Defender's cut of a repel30%raid.repelPayoutBps()owner
Minimum build depth to attackLevel 3raid.minAttackerBuildLevel()owner
Shares seized per raid5%vault.seizePerRaidBps()owner
Shares seized per epoch15%vault.seizePerEpochBps()owner

Protection

ValueRead fromMutable
New-account immunity4 epochsregistry.paramsStruct().newAccountImmunityEpochsowner
Immunity value ceiling$1,000registry.paramsStruct().immunityValueCeilingUsdowner

Shields, paid in USDG rather than SCRIP:

CoverPriceCooldown after
24 hours$153 days
48 hours$305 days
7 days$12020 days

Standing

ValueRead fromMutable
Rank ladder1, 5, 15, 35, 70, 120, 180, 260buildings.rankLadder()owner
What the number countsTotal building levelsbuildings.standingOf()derived

Guilds

ValueRead fromMutable
Levy on outsiders5%guilds.levyBps()owner
Member cap50guilds.MAX_MEMBERS()constant
Score cap per member$25,000guilds.scoreCapUsd()owner

The universe

ValueRead fromMutable
Companies61registry.tickerCount()owner
Industries5registry.sectorCount()owner
Sub-industries24registry.subIndustryCount()owner
Minimum companies to open an industry3registry.paramsStruct().minTickersPerSectorowner

“owner” on the last three means the registry is append-only: an industry or a company can be added, but nothing is ever deleted — ids are permanent, and an entry is deactivated rather than removed.