Commander's guide.Lore and mechanics.
The canon, the tables and the exact numbers the code uses.
Lore
The canon in a few lines, then the tables: explorations, moon types, resources, rarities.
The cradle, the Corporation, the moons
Elysium is the cradle and the base of humanity after the collapse of Earth: the station that trained the colonists, built the fleets and dispatched them across the galaxy. The chain the game runs on carries its name.
The Moon Corporation is Elysium's largest and most powerful corporation. It runs the galactic economy, from the exploration fleets to the resource markets, and $MOON is its official token: every price in the game is written in it.
The fleets reported the same thing from every arm of the galaxy. The planets they reached were barren; the ground that took seed was their moons. Since that report the registry records moons, and planets stay on the charts as navigation marks.
Commanders explore, settle and trade moons. A moon produces the resource of its type for as long as it is held, and the Corporation prices those resources in HYPE, paid out in $MOON at the rate of the day.
Explorations are paid in HYPE, as fuel. The more fuel a ship carries, the further it goes, and the further it goes, the rarer the moons within its reach. The Corporation keeps a share in HYPE, sets another aside in its assistance fund, and buys $MOON with the rest, in its own pool, in the same transaction. The assistance fund buys $MOON only by its written rule, when the price has fallen below nine tenths of its three-week average, never above that line, and burns what it buys; it never sells. The Corporation sells $MOON only when the market has already risen, and never more than a quarter of what it bought the day before.
Anyone may sell $MOON back to that pool. For now only the Corporation buys there, on behalf of the explorers; when it opens the pool to every buyer is its own decision, and the Relay will say so.
Every morning the tide comes in: each resource opens the day a little above or below its target, drawn from a public random beacon nobody can read in advance. The Relay announces it.
The Elysium Relay broadcasts the Corporation's dispatches to every registered commander. The log is kept on the star map.
The relay log is on the star map: GALAXY → ELYSIUM.
Fuel, odds and the four bands
An exploration is paid in fuel: the more HYPE the ship carries, the further it goes and the rarer the moons within reach. Between two reference amounts your odds are the mix of the two tables, in proportion to the distance.
Fuel. You choose how much HYPE an exploration carries, from the minimum to 45 HYPE, in steps of 0.01. The price you pay is the fuel less your cashback; the odds use the full fuel.
Odds. Five reference tables are published, at 0.5, 2, 8, 40 and 45 HYPE. Between two reference amounts your odds are the mix of the two tables, in proportion to the distance: at 5 HYPE, halfway between 2 and 8, they are half the Cosmos table and half the Horizon table. From 45 on, the last table applies.
At least as rare. More fuel never lowers the odds of getting at least a given rarity. The share of one rarity on its own can fall as the fuel grows (Rare peaks near 8 HYPE, then gives way to Epic); what grows is the chance of that rarity or better.
Any moon, any fuel. Every table gives every type at least 1 in 10,000, so a Hyper Crystal can come out of the smallest fuel and a Quartzite out of the largest.
The step. Every 1,000 explorations the step multiplier m grows by 8 % (m = 1.08^k). The odds are read at fuel ÷ 1.08^k, the effective fuel: the same odds take 8 % more fuel. Fuel always runs from 0.5 to 45 HYPE; under 0.5 effective, the odds stay those of the first table.
Purity. Each moon draws its own production when it is revealed: the base of its type, from −15 % to +15 %. That deviation is its purity. Fuel raises the floor; the ceiling is +15 % for everyone: −15 % to +15 % at 0.5 HYPE, −11.25 % at 2, −7.5 % at 8, −1.5 % at 40, 0 % at 45, mixed between them like the odds. A gifted ticket draws above the floor of its band.
Bands. The effective fuel falls in one of four bands named after the four missions: Voyager 0.5 – 2, Cosmos 2 – 8, Horizon 8 – 20, Lazarus 20 – 45. The band sets the duration, the artwork and the lore; the odds come from the fuel itself. Each mission card is a preset: its reference fuel × m.
| Band | Effective fuel | Fuel today | Preset today | Duration | Odds at the preset |
|---|---|---|---|---|---|
| Voyager | 0.5 – 2 | 0.5 – 2.16 HYPE | 0.54 HYPE | 5 min | COMMON 74.00% · UNCOMMON 23.15% · RARE 2.79% |
| Cosmos | 2 – 8 | 2.16 – 8.64 HYPE | 2.16 HYPE | 10 min | UNCOMMON 74.45% · RARE 23.30% · EPIC 2.13% |
| Horizon | 8 – 20 | 8.64 – 21.6 HYPE | 8.64 HYPE | 15 min | RARE 59.56% · EPIC 30.20% · LEGENDARY 10.08% |
| Lazarus | 20 – 45 | 21.6 – 45 HYPE | 43.2 HYPE | 20 min | EPIC 64.58% · LEGENDARY 30.30% · MYTHIC 5.00% |
Effective fuel is fuel ÷ m; today m = ×1.08, so “fuel today” is the band in HYPE paid, before cashback (Part II, mint window). The last band ends at 45 HYPE paid. A preset is the band's reference fuel (0.5 / 2 / 8 / 40) × m, capped at 45. Paying in MOON at the epoch rate (160 MOON per HYPE today) costs 5 % less. Rarities under 1 % are left out of the last column; the tables below have them all.
| Moon type | Rarity | 0.5 · Voyager | 2 · Cosmos | 8 · Horizon | 40 · Lazarus | 45 · Max |
|---|---|---|---|---|---|---|
| Quartzite | COMMON | 74.00% | 0.05% | 0.02% | 0.01% | 0.01% |
| Obsidium | UNCOMMON | 23.00% | 0.05% | 0.02% | 0.01% | 0.01% |
| Voltanite | UNCOMMON | 0.10% | 44.60% | 0.03% | 0.01% | 0.01% |
| Cosmite | UNCOMMON | 0.05% | 29.80% | 0.03% | 0.01% | 0.01% |
| Solarium | RARE | 2.72% | 0.10% | 0.03% | 0.01% | 0.01% |
| Onyxium | RARE | 0.03% | 15.00% | 0.03% | 0.01% | 0.01% |
| Nebulite | RARE | 0.02% | 0.20% | 59.45% | 0.05% | 0.05% |
| Lunarium | RARE | 0.02% | 8.00% | 0.05% | 0.01% | 0.01% |
| Moonbar | EPIC | 0.01% | 2.00% | 0.10% | 0.02% | 0.02% |
| Crysolite | EPIC | 0.01% | 0.10% | 29.80% | 0.10% | 0.10% |
| Graviton | EPIC | 0.01% | 0.03% | 0.30% | 64.46% | 57.46% |
| Celestium | LEGENDARY | 0.01% | 0.03% | 10.00% | 0.30% | 0.30% |
| Moonspire | LEGENDARY | 0.01% | 0.02% | 0.08% | 30.00% | 35.00% |
| Hyper Crystal | MYTHIC | 0.01% | 0.02% | 0.06% | 5.00% | 7.00% |
| Total | 14 types | 100.00% | 100.00% | 100.00% | 100.00% | 100.00% |
Columns are effective fuel in HYPE. Stored on-chain in basis points (1 bp = 0.01 %); every column sums to 10,000 and gives every type at least 1 bp. Rows follow the single rarity scale of the fourteen types, from the most common to the rarest.
| Effective fuel | 0.5 | 1 | 2 | 5 | 8 | 15 | 25 | 40 | 45 |
|---|---|---|---|---|---|---|---|---|---|
| COMMON | 74.00% | 49.35% | 0.05% | 0.04% | 0.02% | 0.02% | 0.01% | 0.01% | 0.01% |
| UNCOMMON | 23.15% | 40.25% | 74.45% | 37.27% | 0.08% | 0.07% | 0.05% | 0.03% | 0.03% |
| RARE | 2.79% | 9.63% | 23.30% | 41.43% | 59.56% | 46.55% | 27.96% | 0.08% | 0.08% |
| EPIC | 0.03% | 0.73% | 2.13% | 16.17% | 30.20% | 37.72% | 48.46% | 64.58% | 57.58% |
| LEGENDARY | 0.02% | 0.03% | 0.05% | 5.07% | 10.08% | 14.50% | 20.82% | 30.30% | 35.30% |
| MYTHIC | 0.01% | 0.01% | 0.02% | 0.04% | 0.06% | 1.14% | 2.68% | 5.00% | 7.00% |
| Epic or better | 0.06% | 0.77% | 2.20% | 21.27% | 40.34% | 53.36% | 71.97% | 99.88% | 99.88% |
| 1 Mythic in | 10,000 | 7,500 | 5,000 | 2,500 | 1,667 | 88 | 37 | 20 | 14 |
HYPE of effective fuel (fuel ÷ m). 1, 5, 15 and 25 sit between two tables and read the mix: at 5, halfway between 2 and 8, half the Cosmos table and half the Horizon table. Exact odds for any fuel are shown on the launch screen before you pay.
The fourteen moon types
A moon's type fixes its family in the lore, its rarity, the resource it produces and its base production. Each moon then draws its own purity, within ±15 % of that base. Any fuel can find any type.
| # | Moon type | Family | Rarity | Resource | Base / day | Range / day |
|---|---|---|---|---|---|---|
| 00 | Quartzite | Voyager | COMMON | Quartzite | 200 | 170 – 230 |
| 01 | Obsidium | Voyager | UNCOMMON | Obsidium | 105 | 89.3 – 121 |
| 02 | Solarium | Voyager | RARE | Solarium | 50 | 42.5 – 57.5 |
| 03 | Voltanite | Cosmos | UNCOMMON | Voltanite | 98 | 83.3 – 113 |
| 04 | Cosmite | Cosmos | UNCOMMON | Cosmite | 90 | 76.5 – 104 |
| 05 | Onyxium | Cosmos | RARE | Onyxium | 48 | 40.8 – 55.2 |
| 06 | Lunarium | Cosmos | RARE | Lunarium | 40 | 34.0 – 46.0 |
| 07 | Moonbar | Cosmos | EPIC | Moonbar | 21 | 17.9 – 24.2 |
| 08 | Nebulite | Horizon | RARE | Nebulite | 44 | 37.4 – 50.6 |
| 09 | Crysolite | Horizon | EPIC | Crysolite | 20 | 17.0 – 23.0 |
| 10 | Celestium | Horizon | LEGENDARY | Celestium | 7 | 5.95 – 8.05 |
| 11 | Graviton | Lazarus | EPIC | Graviton | 16 | 13.6 – 18.4 |
| 12 | Moonspire | Lazarus | LEGENDARY | Moonspire | 6 | 5.10 – 6.90 |
| 13 | Hyper Crystal | Lazarus | MYTHIC | Hyper Crystal | 3 | 2.55 – 3.45 |
Base production in units per day. A moon makes base × (1 + purity), purity drawn once at reveal between −15 % and +15 %; production and pending balances are decimal and accrue on the moon until its owner claims (Part II, resources). The admin may rebalance a type's base later, forward only.
| Effective fuel | 0.5 · Voyager | 2 · Cosmos | 8 · Horizon | 40 · Lazarus | 45 · Max |
|---|---|---|---|---|---|
| Purity | −15 % to +15 % | −11.25 % to +15 % | −7.5 % to +15 % | −1.5 % to +15 % | 0 % to +15 % |
Fuel raises the floor of the purity draw; the ceiling is +15 % for everyone. Between two reference fuels the floor is the mix of the two, like the odds; the step applies the same way (fuel ÷ m). A gifted ticket draws above the floor of its band. On the launch screen: “Purity at this fuel”, e.g. −9 % to +15 % at 5 HYPE effective.
The fourteen resources
One resource per moon type. The target price is set in HYPE and converted to MOON at the opening of every epoch; the pool price is whatever the pool says.
| Resource | Rarity | Produced by | Target (µHYPE / unit) | HYPE / unit | At epoch rate (MOON / unit) |
|---|---|---|---|---|---|
Quartzite | COMMON | Quartzite · Voyager | 20 | 0.00002 | 0.003200 |
Obsidium | UNCOMMON | Obsidium · Voyager | 150 | 0.00015 | 0.02400 |
Solarium | RARE | Solarium · Voyager | 1,500 | 0.0015 | 0.2400 |
Voltanite | UNCOMMON | Voltanite · Cosmos | 200 | 0.0002 | 0.03200 |
Cosmite | UNCOMMON | Cosmite · Cosmos | 500 | 0.0005 | 0.08000 |
Onyxium | RARE | Onyxium · Cosmos | 2,000 | 0.002 | 0.3200 |
Lunarium | RARE | Lunarium · Cosmos | 5,100 | 0.0051 | 0.8160 |
Moonbar | EPIC | Moonbar · Cosmos | 15,000 | 0.015 | 2.4000 |
Nebulite | RARE | Nebulite · Horizon | 3,000 | 0.003 | 0.4800 |
Crysolite | EPIC | Crysolite · Horizon | 19,500 | 0.0195 | 3.1200 |
Celestium | LEGENDARY | Celestium · Horizon | 190,000 | 0.19 | 30.4000 |
Graviton | EPIC | Graviton · Lazarus | 60,000 | 0.06 | 9.6000 |
Moonspire | LEGENDARY | Moonspire · Lazarus | 520,000 | 0.52 | 83.2000 |
Hyper Crystal | MYTHIC | Hyper Crystal · Lazarus | 5,000,000 | 5 | 800.00 |
Target prices are stored on-chain in micro-HYPE per unit (1 µHYPE = 0.000001 HYPE) and converted to MOON at the epoch rate, the 24 h average of the MOON/HYPE pool read at the opening (160 MOON per HYPE today). The tide of the day then shifts each opening by −10 … +10 % (Part II, treasury).
Six rarities, and what they mean here
Rarity is a label on the moon type. It says how often an exploration lands on that type and nothing else: base production and target price are per type and listed in the tables above; each moon then has its own purity.
Every exploration draws over all fourteen types; the odds below are the share of each reference table landing on a type of the rarity, summed over its types. Between two reference fuels, read the mix of the two columns.
| Rarity | Moon types | 0.5 · Voyager | 2 · Cosmos | 8 · Horizon | 40 · Lazarus | 45 · Max |
|---|---|---|---|---|---|---|
| COMMON | Quartzite | 74.00% | 0.05% | 0.02% | 0.01% | 0.01% |
| UNCOMMON | Obsidium · Voltanite · Cosmite | 23.15% | 74.45% | 0.08% | 0.03% | 0.03% |
| RARE | Solarium · Onyxium · Lunarium · Nebulite | 2.79% | 23.30% | 59.56% | 0.08% | 0.08% |
| EPIC | Moonbar · Crysolite · Graviton | 0.03% | 2.13% | 30.20% | 64.58% | 57.58% |
| LEGENDARY | Celestium · Moonspire | 0.02% | 0.05% | 10.08% | 30.30% | 35.30% |
| MYTHIC | Hyper Crystal | 0.01% | 0.02% | 0.06% | 5.00% | 7.00% |
Technical
How the app and the contracts work, for a curious player or a developer. Exact numbers, no projections.
Elysium, the chain
Where the contracts live and what gas is paid in.
- Network
- Elysium
- Stack
- Kinetiq L2 on Hyperliquid (Arbitrum Orbit)
- Gas token
- HYPE, also the currency of explorations
- Wallet
- Any EVM wallet that can add a custom network
- Randomness
- drand evmnet beacon, verified on-chain
- Market engine
- Uniswap v4 PoolManager (official deployment)
Elysium is an EVM chain. The game contracts are plain Solidity on OpenZeppelin building blocks, and the BN254 pairing precompiles the chain exposes are what let the beacon contract check drand signatures itself, with no trusted relayer in between.
| Contract | Role | Upgradeable |
|---|---|---|
| MoonToken | $MOON, the ERC-20 the pools pay in; holds the phase 1 transfer lock | Yes (UUPS) |
| NFTMoons | Moons (ERC-721), explorations, mint schedule, names | Yes (UUPS) |
| NFTMoonsDataInitializer | Writes the launch tables once: types, odds, levels | No |
| ExplorationGateway | Takes the HYPE, splits it (operations, HYPE reserve, assistance fund, buyback), pays referrer and referee out of the MOON bought, burns, then starts your exploration in NFTMoons in the same transaction | No (fixed code) |
| AssistanceFund | Holds its share of every exploration in HYPE; buys MOON under one written rule and burns it; no withdrawal function | No (fixed code) |
| MoonSink | Receives MOON and burns it; the only burner | No |
| DrandEvmnetBeacon | Verifies drand rounds; stateless | No |
| TokensResources | Registry of the 14 resource tokens, claims, transfer gate | Yes (UUPS) |
| ResourceToken × 14 | One ERC-20 per resource | No |
| MoonMarketHook | Fee and gate logic of every pool, including the phase 1 buy gate of MOON/HYPE; records the 24 h average of MOON/HYPE | No (CREATE2) |
| TreasuryFund | Protocol-owned liquidity, HYPE reserve, MOON reserve, tide, sell wall, pool refills | Yes (UUPS) |
| MoonSwapRouter | Exact-input swaps for the site and the gateway | No |
| MoonMarketplace | Fixed-price moon listings in MOON | Yes (UUPS) |
The token
One ERC-20, a fixed supply, one burner.
- Standard
- ERC-20, pausable, upgradeable (UUPS)
- Name · Symbol
- MOON · MOON
- Decimals
- 18
- Supply
- 10,000,000 MOON, minted once at initialisation
- Minting
- MINTER_ROLE renounced after deployment: no further minting
- Burning
- BURNER_ROLE held by the MoonSink only; burned amounts are public
- Transfers
- Locked to the game's contracts during phase 1: no wallet-to-wallet transfer (II.3)
Marketplace listings and the resource pools are priced in MOON. Explorations are paid in fuel, in HYPE, with a MOON path 5 % cheaper. Transfer lock. During phase 1 the token refuses any transfer outside the game's contracts: MOON cannot be sent from one wallet to another, nor moved to a pool or contract that is not part of the game; it still moves through swaps on the game's own pools, whichever router sends them. The lock lifts with public buys, by the same one-way decision of the Corporation; from then on any holder can send MOON to any address. A transfer from a blacklisted address reverts, and the admin can pause every transfer.
No primary sale. The Corporation never sells MOON at a fixed price. MOON trades against HYPE in one pool, MOON/HYPE, whose liquidity is the treasury's own. Anyone can sell MOON there; during phase 1 only the exploration buyback, the treasury and the assistance fund can buy (II.3, II.14). The treasury sells into it only through the sell wall rule (II.9).
Phase 1 · how MOON enters circulation
From launch, MOON can be sold by anyone, bought only through explorations, and moved only through the game's contracts. The rules are enforced on-chain by the MOON token and the hook of the MOON/HYPE pool, not by the site.
- The buyback. Every exploration paid in HYPE sends 55 % of its net price (60 % from day 15; 47.5 %, then 52.5 %, without a referrer) through the gateway into the MOON/HYPE pool, which buys MOON in the same transaction (II.13).
- Referral legs. Of that MOON, 10 % of the net price goes to the referrer and 5 % back to the player when a referrer is set.
- The assistance fund. It receives its share of every exploration in HYPE and buys MOON only under its rule: from day 4, below 90 % of the 21-day average, up to that level and never above; the MOON it buys is burned (II.14).
- Selling resources. What a moon produces sells for MOON in its RESOURCE/MOON pool. The resource pools are open both ways: this is how a moon pays its owner.
- The treasury. The only other buyer of MOON in the pool: its HYPE reserve buys MOON to refill the resource pools (at most 100 HYPE a day, II.9).
- Between players, MOON changes hands on the marketplace, where moons are priced in MOON. There is no plain transfer during phase 1 (below).
| Pool | Operation | Phase 1 |
|---|---|---|
| MOON/HYPE | Sell MOON for HYPE | Open to anyone |
| MOON/HYPE | Buy MOON with HYPE | Exploration buyback, TreasuryFund and AssistanceFund only |
| MOON/HYPE | Add liquidity | TreasuryFund only |
| RESOURCE/MOON | Sell a resource for MOON | Open to anyone |
| RESOURCE/MOON | Buy a resource with MOON | Open to anyone |
| RESOURCE/MOON | Add liquidity | TreasuryFund only |
| MOON | Wallet-to-wallet transfer | Locked |
Removing liquidity is never gated: only the treasury holds positions.
Transfer lock. During phase 1 MOON is not transferable between wallets. It moves only through the game's contracts:
| MOON moves | Through | Phase 1 |
|---|---|---|
| Exploration paid in HYPE (buyback) or in MOON | ExplorationGateway | Open |
| Referrer and referee legs | ExplorationGateway | Open |
| Resource for MOON, MOON for resource | RESOURCE/MOON pools | Open |
| MOON for HYPE | MOON/HYPE pool | Open (sell side) |
| A moon bought or sold for MOON | MoonMarketplace | Open |
| MOON bought by the assistance fund, sent to be burned | AssistanceFund → MoonSink | Open |
| MOON sent to be burned | MoonSink | Open |
| From one wallet to another | — | Locked |
| Another pool, contract or OTC deal | — | Locked |
The site has no send screen for MOON; a transfer built by hand outside these contracts reverts.
How it is enforced. The MOON token refuses any transfer outside the game's contracts. The Uniswap v4 PoolManager holds the tokens of every pool, so it is not an open path either: it can move MOON only within the amount the hook allows for that swap. A MOON pool created elsewhere, another contract or a wallet-to-wallet send therefore cannot carry MOON while the lock is on. A swap on the game's own pools opens that allowance whichever router sends it, so selling MOON or trading resources against MOON also works through a standard Uniswap v4 router; only buying MOON stays reserved to the game (buy gate, II.8).
Public buys and the transfer lock. Both lift together, later, by one decision of the Corporation, announced by the Relay. No date is set. The decision is one-way: once open, buys are never closed again and transfers are never locked again. Opening MOON/HYPE liquidity to other providers is a separate one-way switch. Today: public buys closed, wallet transfers locked.
Explorations and the beacon
Which moon you get is decided by a public randomness beacon, verified on-chain: not by the team, not by a validator, not by you.
- 01PayExplorationGateway.explore(stake, referrer) takes the fuel you chose, less your cashback, splits it (II.13), computes the odds key of the fuel and starts the exploration for you in NFTMoons (startExplorationFor), all in one transaction. exploreWithMoon does the same with MOON at 5 % off.
- 02CommitStarting the exploration consumes your epoch quota and records a future drand round: the first round published after the exploration ends. That round does not exist yet. A gifted ticket goes through the same path with startExploration and no payment.
- 03Waitdrand publishes a round every 3 s, as a threshold BLS signature by the League of Entropy nodes. Your round is produced after your timer, by nodes that know nothing about the game.
- 04VerifycompleteExploration takes the signature of that round. The beacon contract checks it against the group public key on-chain; a wrong or missing signature reverts.
- 05MintThe randomness is mixed with your address and exploration id, reduced to a value below 10,000 × 65,536 and walked through the blended weights of your odds key (below). The moon is minted to you with that type.
- Beacon
- drand evmnet (bls-bn254-unchained-on-g1)
- Round period
- 3 s, genesis at Unix time 1727521075
- Round committed
- roundAt(start + duration) + 1
- Signature
- BLS on BN254, a G1 point (x, y)
- Group key
- G2 point, constant in the beacon contract
- Randomness
- sha256(signature), as drand defines it
- Draw
- keccak256(randomness, player, explorationId) mod (10,000 × 65,536), walked through the cumulative weights w_t in type-id order
- Signature source
- api.drand.sh/v2/beacons/evmnet/rounds/{round}
Why nobody can predict or grind it. The round is fixed when you start and its value does not exist yet; it is produced later by a threshold of independent nodes, and no single party can compute it. BLS signatures are unique, so each round has exactly one valid value and the contract rejects any other. Waiting longer to complete changes nothing, because the round does not move. Two explorations bound to the same round still get independent draws, because the player address and exploration id are mixed in.
The odds curve on-chain. NFTMoons stores the five reference tables (fuel 0.5 / 2 / 8 / 40 / 45 HYPE) as one storage slot each: 14 weights in basis points, each table summing to 10,000 with every type at least 1 bp, and the reference fuel. Tables are added by version and an existing version is never modified, so an exploration under way keeps the curve it was paid on.
- Effective fuel
- σ = stake × 10,000 ÷ m, with m the step multiplier in bps (II.5)
- Segment
- i such that A_i ≤ σ < A_{i+1} over the reference fuels A; from 45 on, the last table alone
- Blend
- frac = floor((σ − A_i) × 65,536 ÷ (A_{i+1} − A_i)), 0 … 65,535
- Weights
- w_t = P_i[t] × (65,536 − frac) + P_{i+1}[t] × frac; they sum to 10,000 × 65,536
- Odds key
- Stored in the exploration's level field: band (bits 0–7), curve version (8–15), segment (16–23), frac (32–47)
- Band
- σ < 2 Voyager · < 8 Cosmos · < 20 Horizon · otherwise Lazarus; it sets the duration (5 / 10 / 15 / 20 min), not the odds
- Gifted ticket
- The reference table of its band (frac = 0): Voyager 0.5, Cosmos 2, Horizon 8, Lazarus 40
NFTMoons itself moves no money: payment lives in the gateway, and both the paid path (startExplorationFor) and the gifted-ticket path (startExploration) go through the same quota, name and randomness path. The beacon contract is stateless and not upgradeable. The odds of every fuel are listed in Part I (explorations).
One collection, 28 days, fuel steps
The collection is 7,000 moons and nothing more. They come out over 28 days: a quota per epoch, a quota per wallet, and a fuel step every 1,000 explorations: the same odds take 8 % more fuel.
- Collection
- 7,000 moons, one per exploration; no second collection
- Window
- 28 days from the launch timestamp, or until the 7,000th exploration, whichever comes first
- Epoch
- 24 h from the launch timestamp; quotas and the tide reset at the boundary
- Launch epochs
- 3 × 400 explorations
- Later epochs
- 232 explorations each (3 × 400 + 25 × 232 = 7,000)
- Per wallet
- 10 explorations per epoch
- Fuel
- From 0.5 to 45 HYPE, in steps of 0.01; the odds are read at fuel ÷ m
- Fuel step
- m = 1.08^k after k blocks of 1,000 explorations (+8 %, compounding): the minimum fuel rises with it, the maximum stays 45
- Cashback
- 0 / 2 / 4 / 6 / 8 / 10 % off the fuel by moons held (0 … 5+); the odds use the full fuel
An exploration counts the moment it is paid and started, which is one transaction. When an epoch quota is spent, the gateway refuses until the next epoch; a wallet past its own quota is refused too. Gifted tickets are launched against the same quotas. The marketplace is the only route to a moon in the meantime, and the only route once the window has closed.
| Step | Explorations | Multiplier m | Min fuel | 45 counts as | Voyager preset | Cosmos preset | Horizon preset | Lazarus preset |
|---|---|---|---|---|---|---|---|---|
| 0 | 0 – 999 | ×1 | 0.5 | 45 | 0.5 | 2 | 8 | 40 |
| 1 | 1,000 – 1,999 | ×1.08 | 0.5 | 41.67 | 0.54 | 2.16 | 8.64 | 43.2 |
| 2 | 2,000 – 2,999 | ×1.1664 | 0.5 | 38.58 | 0.59 | 2.34 | 9.34 | 45 |
| 3 | 3,000 – 3,999 | ×1.2597 | 0.5 | 35.72 | 0.63 | 2.52 | 10.08 | 45 |
| 4 | 4,000 – 4,999 | ×1.3604 | 0.5 | 33.08 | 0.69 | 2.73 | 10.89 | 45 |
| 5 | 5,000 – 5,999 | ×1.4692 | 0.5 | 30.63 | 0.74 | 2.94 | 11.76 | 45 |
| 6 | 6,000 – 6,999 | ×1.5867 | 0.5 | 28.36 | 0.8 | 3.18 | 12.7 | 45 |
HYPE. Fuel runs from 0.5 to 45 at every step; an effective fuel under 0.5 reads the first table. The odds are read at fuel ÷ m, so the same odds take 8 % more fuel after every step. A card's preset is its reference fuel (0.5 / 2 / 8 / 40) × m, rounded up to 0.01 and capped at 45. m is kept in basis points and floored at every step; cashback is taken off afterwards.
| Moons held | 0 | 1 | 2 | 3 | 4 | 5+ |
|---|---|---|---|---|---|---|
| Cashback on the fuel | 0 % | 2 % | 4 % | 6 % | 8 % | 10 % |
Read off balanceOf at the time of the exploration, by the gateway. The cashback lowers the price paid, never the odds: those are read on the full fuel. The referrer and referee shares do not depend on moons held.
Moon names
A moon is minted with a generic name and can be renamed once in its whole life. No two moons share a custom name. A moon name is also its owner's referral link.
- Generic name at mint. A new moon is called "Moon #<token id>" (Moon #1235). No name is asked before or during an exploration.
- One rename per moon. The owner can rename it once (setCustomName). The right belongs to the moon, not to the owner: a moon never renamed keeps its rename for its next owner.
- Permanent. A custom name cannot be changed again and stays with the moon when it is sold; the token id does not change.
- 1 to 12 characters: letters, digits, space and hyphen. Empty and longer names are rejected. The forms "Moon 124", "Moon-124" and "Moon124" are kept for generic names.
- Unique across the collection, case-insensitive: ASCII letters A–Z are folded to a–z before comparison.
- Referral link. Every share from the site carries /?ref=<wallet address>. A moon name also works (/?ref=<moon name>, or /?ref=moon-<token id> while it keeps its generic name); the site resolves it to the owner of that moon. The first link you arrive with is kept for 30 days, a link to your own wallet is ignored, and the address is passed to the gateway at your first exploration (II.13). A referrer must own at least one moon.
- Metadata. tokenURI carries the name next to the type, rarity, resource, production per day and purity. The collection is "MOON Corporation NFTs" (MOON).
Resources as ERC-20 tokens
Fourteen tokens, one per resource, minted by the registry when you claim.
- Tokens
- 14 ERC-20 contracts, 18 decimals, not upgradeable
- Symbol
- The name upper-cased, letters and digits only (Hyper Crystal → HYPERCRYSTAL)
- Minters
- TokensResources (claims) and the TreasuryFund (pool seeding)
- Burn
- Open: any holder may burn their own balance (future sinks)
- Transfer gate
- Every transfer, mint and burn asks the registry: paused or sender blacklisted → revert
Production. Each moon has its own production: the base of its type × factorBps ÷ 10,000. factorBps (8,500 to 11,500, shown as purity −15 % to +15 %) is drawn at reveal from the same drand round as the type, through a separate hash, above the floor of the fuel (Part I). The moon accrues pending = production × secondsElapsed ÷ 86,400, counted in token wei from its creation or its last claim. Nothing moves until the owner claims. The base per type is listed in Part I; the admin may rebalance a type's base later, forward only.
- claimAllResources claims every moon you own; claimResourcesForNFTs a list of them; claimOneNFTResources a single one.
- Amount minted = pending, in wei (10^18 per unit). Production and balances are decimal: the site shows 2.87 / day or 0.42 units, and fractions sell (0.25 Hyper Crystal).
- Each claim stamps the claimed moons with the current time.
- Pending units travel with the moon: a sold moon brings its unclaimed production to the buyer.
The market: Uniswap v4 pools and the hook
Fifteen pools in the v4 singleton, one hook shared by all of them.
- Pools
- 14 RESOURCE/MOON + 1 MOON/HYPE
- Fee
- Dynamic: the hook sets it on every swap
- Tick spacing
- 60
- Hook
- MoonMarketHook, the same contract for every pool
- Who may initialise
- CONFIG_ROLE holders: the TreasuryFund
- Allowed pairs
- MOON against a counterpart whitelisted by the hook admin (resources, native HYPE)
- Buy gate
- Phase 1, MOON/HYPE only: buying MOON is reserved to the exploration buyback, the TreasuryFund and the AssistanceFund; selling is always open
- Liquidity
- Added by the TreasuryFund only: on the resource pools always, on MOON/HYPE during phase 1
| Callback | What the hook does |
|---|---|
| beforeInitialize | Refuses any pool that is not a whitelisted MOON pair with the dynamic-fee flag and tick spacing 60. The initial price becomes the opening reference unless one was set before. |
| beforeSwap | Reverts while paused or if the trader is blacklisted in NFTMoons. On MOON/HYPE, while public buys are closed, reverts any swap that takes MOON out of the pool unless it comes from the MoonSwapRouter on behalf of the ExplorationGateway, the TreasuryFund or the AssistanceFund. Reads the pool price, computes the fee below and returns it as the fee of this swap. |
| beforeAddLiquidity | Refuses any provider other than the TreasuryFund on the resource pools, and on MOON/HYPE while its liquidity is closed. |
| afterSwap | Emits PriceObserved(pool, sqrtPrice, fee) so anyone can follow the price history from the chain; on MOON/HYPE it also accumulates the time-weighted price the treasury reads as the epoch rate. |
The asymmetric fee. Each pool has an opening price for the epoch (the target shifted by the tide; for MOON/HYPE, the epoch opening). A swap that pushes the price toward it pays 10 bps. A swap that pushes it away pays 30 bps plus 10 bps per 1 % the price already stands from the opening, capped at 500 bps. The direction is judged on the price before the swap, so a trade that crosses the opening pays the toward fee even when it overshoots.
| Deviation from opening | Toward the opening | Away from the opening |
|---|---|---|
| 0 % | 10 bps | 30 bps |
| 1 % | 10 bps | 40 bps |
| 5 % | 10 bps | 80 bps |
| 10 % | 10 bps | 130 bps |
| 20 % | 10 bps | 230 bps |
| 47 % | 10 bps | 500 bps |
Away fee = 30 bps + 10 bps per 1 % of deviation, capped at 500 bps (the cap is reached at 47 %). 100 bps = 1 %.
Fee parameters are per pool and tuned by the treasury: toward ≤ away ≤ max, with max never above 2,000 bps (20 %) and a slope of at most 100 % per 100 % of deviation. The hook holds no funds; the fee it returns is the pool's LP fee for that swap and accrues to the liquidity in range, which is the treasury's positions.
Gate. The blacklist of NFTMoons applies to swaps: the transaction origin is checked always, and the trader forwarded by the MoonSwapRouter is checked too (smart-contract wallets, the gateway). The hook admin can pause every swap at once.
Buy gate (phase 1). The hook sees the router as the swapper, never the player. A buy of MOON on MOON/HYPE passes only when the swapper is the MoonSwapRouter and the buyer the router forwards is the ExplorationGateway, the TreasuryFund or the AssistanceFund; the router forwards its own caller, which the caller cannot forge. Any other router or aggregator cannot buy MOON on MOON/HYPE. It can still sell MOON and trade the resource pools, because each swap on the pools of the game opens the transfer allowance of the token for exactly the amount swapped (II.3). Liquidity is gated too, because a third-party position would buy the sellers' MOON as the price crosses its range. Both gates are lifted by one-way switches: once open, never closed (II.3).
The TreasuryFund: liquidity, epoch rate, tide, wall
The treasury is the liquidity provider of the fifteen pools. It converts the HYPE targets into MOON every morning, draws the tide, refills the pools and places the sell wall. All of it is on-chain and announced by the Relay.
What it holds. The HYPE reserve (10 % of the net price of every exploration), the HYPE side of the MOON/HYPE position (where the buyback share ends up), the MOON reserve, the MOON bought back that funds the resource pools, the marketplace fee and the LP fees its positions earn. What it does. One position per market: on MOON/HYPE a position opened with MOON only at launch (no HYPE deposited: the HYPE in it is what the buybacks brought), ±30 % around the day's opening on each resource, managed through the PoolManager directly.
- Epoch rate
- MOON per HYPE: the 24 h time-weighted average of the MOON/HYPE pool read by the hook, refreshed at every epoch opening (every 6 h during the 3 launch epochs). Today 160.
- Target prices
- Set in micro-HYPE per unit (Part I); targetMoon = targetHype × epoch rate, written at the opening
- Tide
- One of -10 / -6 / -3 / 0 / 3 / 6 / 10 % per resource and per epoch (max ±10 %, hard cap ±25 %); opening = targetMoon × (1 + tide)
- Opening depth
- 3 days of the resource's production at the target price over the moons on the registry, floor 1 HYPE-equivalent
- Refill order
- MOON received since the last epoch (buyback, marketplace fee) → MOON reserve up to 150 HYPE-eq a day → HYPE reserve buying MOON in the pool up to 100 HYPE a day; any shortfall is emitted. On an epoch the assistance fund defends, the MOON reserve step releases nothing (II.14)
- Sell wall
- Reserve MOON placed between 1.1× and 1.6× the epoch opening, at most 25 % of the MOON bought back the day before; the HYPE it earns stays in the pool. During phase 1 only the exploration buyback and the treasury buy from it; the assistance fund never does
- Buyback guards
- ≤ 10 % of the pool's HYPE per transaction, the rest queued and executed in slices by anyone; execution price ≤ 1.25× the last buyback
- Roles
- ADMIN (targets, seeding, parameters) · ORACLE (rebalance, fee collection); applyTide and the queue are permissionless
| Tide | −10 % | −6 % | −3 % | 0 % | +3 % | +6 % | +10 % |
|---|---|---|---|---|---|---|---|
| Weight | 1 / 16 | 2 / 16 | 3 / 16 | 4 / 16 | 3 / 16 | 2 / 16 | 1 / 16 |
| Share of days | 6.25 % | 12.5 % | 18.75 % | 25 % | 18.75 % | 12.5 % | 6.25 % |
One draw per resource and per epoch from the drand round that opens the epoch. The MOON/HYPE pool has no tide.
- 01RevealAnyone submits the drand round that starts the epoch (revealTide); the beacon verifies it. If nobody does, the tide is 0 for every resource.
- 02OpenapplyTideAll refreshes the epoch rate, writes targetMoon for every resource, re-centres each position on its opening price, sets the hook reference, computes the opening depth and emits one TideApplied per resource.
- 03RefillEach pool is topped up to its opening depth in the order above.
- 04WallThe sell wall of the day is placed on MOON/HYPE; the previous day's wall is collapsed back into the MOON/HYPE position, HYPE included.
- 05AnnounceThe Relay publishes the tide of the day in its morning dispatch: epoch rate, and per resource its tide, opening price and depth.
Launch. The MOON/HYPE pool opens with 2,500,000 MOON and no HYPE, a single-sided position from 10,000 MOON per HYPE. HYPE enters with the buybacks of the first explorations; sellers of MOON are served once HYPE is in the pool, from the HYPE the buybacks put there.
In words. "The Corporation sells MOON only when the market rises more than 10 % in the day, never more than a quarter of what it bought back the day before, and the HYPE stays in the pool."
After the mint window. No HYPE comes in from explorations any more, for the treasury or for the assistance fund. The pools keep opening every morning at the target price and the tide; they are refilled from the MOON reserve, from the wall proceeds, from the marketplace fee and from the swap fees the positions earn, and by the HYPE reserve buying MOON when the MOON reserve is spent. The balances are public and shown raw on /trading: HYPE held, HYPE in the pool, MOON reserve, MOON burned.
Swapping, and paying an exploration
A minimal router for the pools, and the gateway every exploration goes through.
- MoonSwapRouter
- swapExactIn(tokenIn, tokenOut, amountIn, minAmountOut, recipient)
- Pairs
- One side must be MOON; address 0 stands for native HYPE
- Approvals
- Plain ERC-20 approve to the router; HYPE is sent as value, the unused part is refunded
- Quote
- quoteExactIn simulates the swap and returns the output (eth_call only; it always reverts on-chain). During phase 1 a quote that buys MOON on MOON/HYPE reverts for any caller but the gateway, the treasury and the assistance fund
- Gate
- The trader address is forwarded to the hook for the blacklist check
The router derives the pool key from the pair (sorted tokens, dynamic fee, tick spacing 60, the hook), so there is nothing to configure: one call, one swap, output protected by minAmountOut. While the transfer lock is on, MOON moves only through the game's contracts and the game's pools; a standard v4 router that settles after the swap can still sell MOON and trade resources there, but only this router can carry a buy of MOON for the gateway, the treasury or the assistance fund (II.3, II.8).
- ExplorationGateway
- explore(stake, referrer) payable · exploreWithMoon(stake, referrer, maxMoon)
- Bounds
- minStake = 0.5 HYPE; maxStake = 45 HYPE; stake a multiple of 0.01 HYPE
- Quote
- quote(player, stake): price after cashback, MOON price, effective fuel, band, odds key, duration; the excess HYPE sent is refunded
- Presets
- presetStake(band) = reference fuel (0.5 / 2 / 8 / 40) × m, capped at 45
- Gifted ticket
- One free exploration of a band credited by the admin (first colonists, gifts) through setFreeExplorations; launched by the player with startExploration, at the reference table of the band
- Quotas
- 3 × 400 then 232 explorations per epoch, 10 per wallet, 7,000 in all
- Guards
- nonReentrant, pausable, no arbitrary call; minOut from the treasury's last buyback price; no upgrade role
The marketplace: fixed-price listings in MOON
List a moon at the price you choose, or buy one when the epoch is sold out, and after the mint window the only way to a moon.
- 01Listlist(tokenId, price) escrows the moon in the marketplace contract and opens a listing. A moon can hold one active listing at a time.
- 02AdjustupdatePrice changes the price of an active listing; cancel returns the moon to the seller (the admin may cancel too).
- 03Buybuy(listingId, maxPrice) pays the price in MOON and transfers the moon in the same transaction. It reverts if the price is above maxPrice, so a seller cannot change the price under you.
- 04SettleThe seller receives price − fee; the fee goes to the TreasuryFund and funds the resource pools. Fee: 5 % by default, 10 % hard maximum.
- Escrow. The contract only accepts a moon through list(): a moon sent any other way is refused by the receiver check or, if it slipped through a plain transfer, returned by the admin with rescueToken.
- Blacklist. A blacklisted address can neither list nor buy, and a listing from a blacklisted seller cannot be bought.
- No auctions, no offers. Fixed price only; the contract is pausable and upgradeable.
- Pending production stays on the moon and goes to the buyer.
The Elysium Relay
The Corporation's dispatches are off-chain. Here is exactly what is and what is not.
A transmission is a record served by the site (Next.js route handlers under /api/transmissions), not a contract. The relay panel on the star map reads the live list; the admin console at /admin/transmissions writes it. Two dispatches are regular: the tide of the day every morning (from the TideApplied events) and the closing report of the mint window.
- Kinds
- video · text · audio
- Priorities
- routine · priority · critical
- Statuses
- draft · published
- Live
- status published and publishedAt not in the future; a future date schedules the dispatch
- Order
- publishedAt desc, then createdAt desc, then id
- Admin
- Requests carry the x-admin-token header; a wrong token answers 401
- Uploads
- mp4, webm, mp3, ogg, m4a, wav, jpg, jpeg, png, webp up to 150 MB, stored under /Transmissions/
- Client
- List cached 60 s; a local seed stands in when the API is unreachable
- Acknowledgement
- A new dispatch is announced once; the marker lives in the browser (localStorage)
| On-chain | Off-chain |
|---|---|
| Moons, their type, creation date and name | Dispatches, their text and media |
| Explorations, tickets, committed rounds, completions | Display names, descriptions and visuals of the moon types |
| Resource balances, claims, pending production | The star map layout and the system views |
| Pools, prices, swap fees, treasury positions, tide, wall, burned MOON | The admin console and its token |
| Marketplace listings and sales; referrer of each wallet | Referral counters and leaderboards (indexed from the Explored events) |
Where every HYPE goes
The price paid for the fuel is split in a fixed order in one transaction, on a schedule written in the gateway's code: one split for days 1 to 14, another from day 15. No one can change it, nor the address of the assistance fund; a different split would take a new gateway. Marketplace and swap fees feed the treasury.
- 01PriceThe fuel chosen, less the cashback of the player's tier: the net price R. The excess HYPE sent is refunded.
- 02Keep5 % of R to the operations wallet and 10 % to the TreasuryFund as the HYPE reserve, both in HYPE.
- 03Assistance fund30 % of R in HYPE to the AssistanceFund during days 1 to 14, 25 % from day 15; more without a referrer (table below). The fund spends it only under its rule (II.14).
- 04Buy backThe rest of R (55 %, then 60 % with a referrer; 47.5 %, then 52.5 % without) buys MOON in the MOON/HYPE pool through the router, in the same transaction (at most 10 % of the pool's HYPE per transaction; the rest is queued and executed in slices). The HYPE stays in the pool as depth.
- 05ReferralOf the MOON bought: 10 % of R to the referrer and 5 % of R back to the player, when a referrer is set.
- 06Burn5 % of R, in that MOON, to the MoonSink.
- 07PoolsThe rest of the MOON to the TreasuryFund: it funds the resource pools (35 % of R with a referrer and 42.5 % without during days 1 to 14; 40 % and 47.5 % from day 15).
| Leg (% of R) | Paid in | Day 1–14 · ref | Day 1–14 · no ref | Day 15+ · ref | Day 15+ · no ref |
|---|---|---|---|---|---|
| Operations | HYPE | 5 % | 5 % | 5 % | 5 % |
| HYPE reserve (TreasuryFund) | HYPE | 10 % | 10 % | 10 % | 10 % |
| Assistance fund | HYPE | 30 % | 37.5 % | 25 % | 32.5 % |
| Buyback, in total | HYPE → MOON | 55 % | 47.5 % | 60 % | 52.5 % |
| of which referrer | MOON | 10 % | — | 10 % | — |
| of which referee (the player) | MOON | 5 % | — | 5 % | — |
| of which burned | MOON | 5 % | 5 % | 5 % | 5 % |
| of which resource pools | MOON | 35 % | 42.5 % | 40 % | 47.5 % |
R is the net price: the fuel less the cashback. "Ref": the player has a referrer. Each column sums to 100 % (operations, reserve, fund and buyback). Without a referrer, the 15 points of the referral legs go 50 % to the assistance fund and 50 % to the resource pools. The switch happens at the opening of day 15 (epoch 14) and applies to every exploration paid from then on.
In words. "Of every exploration, 15 % stays in HYPE with the Corporation (5 % operations, 10 % HYPE reserve). The assistance fund takes 30 % for the first 14 days, then 25 %. The rest buys MOON at once: 10 % of the price for the referrer, 5 % back to the player, 5 % burned, the rest to the resource pools. Without a referrer, those 15 % go half to the fund and half to the pools."
Paying in MOON. exploreWithMoon charges R × epoch rate × (1 − 5 %) in MOON, pulled from the player. No HYPE, so no HYPE share, no assistance fund share and no buyback; the MOON follows the same legs: referrer 10 %, referee 5 %, burn 5 %, the rest to the pools.
- Who can refer
- Any wallet that owns at least one moon and is not blacklisted; referring yourself is refused
- Link
- /?ref=<moon name>, or /?ref=moon-<token id> for a moon on its generic name; resolved to the moon's owner by the site (or /?ref=0x…)
- Tie
- referrerOf[wallet] is written at the wallet's first referred exploration and never changes; later referrer parameters are ignored
- Referrer gets
- 10 % of R in MOON, in the same transaction, on every later exploration of the wallet (HYPE or MOON path)
- Referee gets
- 5 % of R in MOON, on every exploration, for as long as the tie holds
- Counters
- Explored(player, band, referrer, stake, priceHype, oddsKey, …): distinct referred wallets, explorations, MOON received; the site shows them raw
- Swap fees (10 to 500 bps, see the hook) are the pools' LP fees: they accrue to the liquidity in range, the treasury's positions.
- Marketplace fee: 5 % of every sale to the TreasuryFund, in MOON.
- Tickets granted by the admin (first colonists) pay nothing and generate no referral leg.
- Nothing is projected here. The split is the rule; what it has produced to date (HYPE kept, HYPE in the assistance fund, MOON bought back, MOON burned) is shown on /trading.
The assistance fund
A share of every exploration paid in HYPE, held in HYPE by a contract with one written rule for spending it.
The rule. From day 4 (epoch 3), once it has recorded a day of price history, when the MOON price is below 90 % of its 21-day average, anyone can trigger a purchase: the fund buys MOON up to that level and never above, in slices of at most 2 % of the pool's HYPE depth, one per block, at most 3 % of its balance per epoch, and burns all the MOON it buys. It has no withdrawal function.
- Contract
- AssistanceFund: fixed code, not upgradeable; holds HYPE only
- Receives
- 30 % of R (37.5 % without a referrer) during days 1 to 14; 25 % (32.5 %) from day 15; nothing from explorations paid in MOON. Anyone may also send it HYPE (deposit)
- Active from
- Day 4 (epoch 3), once it has recorded at least 24 h of price history
- Reference
- The time-weighted average price of MOON in the MOON/HYPE pool over the last 21 days (the whole history while it is shorter), read from the hook's price accumulator
- Trigger
- The MOON price below 90 % of the reference; anyone can call the purchase (poke)
- Price limit
- Buys up to 90 % of the reference and never above it, and never MOON of the treasury's sell wall; a purchase that would end above it reverts
- Slices
- At most 2 % of the pool's HYPE depth per purchase, one purchase per block
- Epoch limit
- At most 3 % per epoch (one day) of its balance as it stood at the first triggered call of the epoch, bounties included
- Caller bounty
- 0.5 % of the HYPE swapped, paid in HYPE to whoever calls the purchase; a call with nothing to do does not revert
- MOON bought
- All burned through the MoonSink; the fund keeps no MOON and pays no MOON to any wallet
- Withdrawal
- None: HYPE leaves only into a purchase of MOON (to the pool, through the router) and as the caller bounty. A new fund would be a new contract; the balance of this one cannot be migrated
- Pause
- The admin can pause the purchases only: deposits, price checkpoints, the marking of defended epochs and the coordination below continue
- Rule changes
- Only within bounds written in the code, applied 48 h after their on-chain announcement: trigger 50–98 % of the reference, budget up to 10 % per epoch, slice up to 5 % of the depth, bounty up to 1 %, reference window 1–28 days, activation epoch 1–365; the phase 2 values can never be looser than phase 1
- Buy gate
- An allowed buyer of the MOON/HYPE pool through the MoonSwapRouter during phase 1, like the gateway and the treasury (II.8)
What it does, and what it does not. When the price is above the trigger, nothing is bought and the HYPE stays in the fund. When it is below, a purchase brings the price back toward the trigger level, within the epoch limit; it never buys above that level. Once the epoch limit or the balance is spent, it buys nothing more until the next epoch: it is not a floor. The fund does not sell, does not lend and pays players nothing but the caller bounty. Its purchases do not count toward the sell wall, which is sized on the gateway's buyback only (II.9).
With the treasury. On an epoch the fund defends (a call found the price below its threshold in that epoch or the one before, or it is below now), TreasuryEpoch releases no reserve MOON to the resource pools: the protocol does not buy MOON with one hand and sell reserve MOON with the other. The share released on such an epoch is a TreasuryEpoch parameter, 0 at launch. The treasury's free MOON and its HYPE reserve purchases continue (II.9).
After the mint window. No new HYPE comes in from explorations. The fund keeps applying the same rule with the HYPE it holds; once it is spent, it buys nothing more (it still marks the epochs it defends).
Phase 2. When public buys open (II.3), the fund switches by itself, with no action of the admin, to stricter rules: trigger at 85 % of the reference, confirmed by a 30-minute average also below the threshold; slices of at most 0.2 % of the depth, at most one every 60 seconds; at most 2 % of its balance per epoch. Once anyone can add MOON/HYPE liquidity, a purchase crosses at most one tick boundary, priced with the liquidity on each side.
What the window is, and what closes
The mint window is one mint schedule applied to the one collection: a launch timestamp, 24 h epochs, 3 launch epochs of 400 then 232 a day, 10 per wallet and per epoch, and the fuel steps. The site labels it Season 1: the name of this launch, not the first of a series. It closes at the end of day 28 or at the 7,000th exploration, whichever comes first.
- 01Closing reportA Relay dispatch in raw figures: explorations started, HYPE paid in, HYPE kept, HYPE in the assistance fund, MOON bought back, MOON burned, HYPE in the pool, HYPE paid out to players, moons by type.
- 02BurnThe unused part of the launch and community allocation is sent to the MoonSink.
- 03Nothing elseThe moons keep producing, each at its own production. The pools keep opening every morning with the tide, refilled by the treasury (II.9). The marketplace stays open. The collection stays at 7,000 moons and no exploration opens again.
Tokenomics
Supply, allocation and the rules that move MOON, as facts.
Supply. 10,000,000 MOON, minted once at initialisation. The minter role is renounced after deployment: no further minting. The burner role is held by the MoonSink contract only. Burned amounts are public.
| Envelope | MOON | Share | Use | Held by |
|---|---|---|---|---|
| MOON/HYPE launch liquidity | 2,500,000 | 25 % | Single-sided position, MOON only (0 HYPE deposited), from the opening price of 10,000 MOON per HYPE; HYPE enters with the buybacks of the first explorations | TreasuryFund |
| Resource pools | 300,000 | 3 % | Day-one depth of the 14 RESOURCE/MOON pools | TreasuryFund |
| Treasury reserve | 5,000,000 | 50 % | Pool refills (≤ 150 HYPE-eq a day) and the sell wall, for the life of the collection | TreasuryFund |
| Team and presale | 1,000,000 | 10 % | 600,000 (6 %) delivered to presale buyers by the team wallet; the rest on a 12-month vesting with a 3-month cliff | Team wallet |
| Launch and community | 400,000 | 4 % | First colonists, leaderboards, events; the unused part is burned when the mint window closes | Operations wallet |
| Unallocated reserve | 800,000 | 8 % | Not allocated; any use is announced by the Relay before it happens | Escrow |
Total 10,000,000 MOON of 10,000,000. One collection, one allocation: no later tranche is minted. While the transfer lock is on (II.3), the launch and community and the unallocated balances cannot be transferred: like any MOON, they move only through the game's contracts. The team wallet is the one exception: it is listed as a distributor so it can deliver the presale, and presale buyers then hold MOON under the same lock as everyone else.
Fuel. An exploration is paid in fuel, in HYPE: from 0.5 to 45 HYPE in steps of 0.01; m = 1.08^k grows by 8 % every 1,000 explorations of the window. The odds are read at fuel ÷ m. Cashback 0–10 % by moons held is taken off the price, not the odds. Paying in MOON at the epoch rate costs 5 % less.
Where the HYPE goes. Of the net price: 5 % to operations and 10 % to the HYPE reserve of the TreasuryFund, in HYPE. 30 % to the assistance fund in HYPE during days 1 to 14, 25 % from day 15. The rest (55 %, then 60 %) buys MOON in the MOON/HYPE pool in the same transaction (at most 10 % of the pool's HYPE per transaction; the rest is queued and executed in slices). Of the MOON bought: 10 % of the net price to the referrer and 5 % back to the player when a referrer is set, 5 % burned, the rest to the TreasuryFund, which funds the resource pools. Without a referrer the 15 points go half to the assistance fund, half to the pools (II.13). An exploration paid in MOON skips the HYPE shares and the buyback; its MOON follows the same legs.
Assistance fund. HYPE only. From day 4 (epoch 3), once it has recorded a day of price history, when the MOON price is below 90 % of its 21-day average, anyone can trigger a purchase: the fund buys MOON up to that level and never above, in slices of at most 2 % of the pool's HYPE depth, one per block, at most 3 % of its balance per epoch, and burns all the MOON it buys. It has no withdrawal function. (II.14)
Referral. Any wallet that owns at least one moon can refer. The referrer of a wallet is fixed on-chain at its first referred exploration. The referrer receives 10 % and the player 5 % of the net price, in MOON, in the same transaction, for every later exploration. Referring yourself is refused. Counts and amounts are public.
Resource prices. Target prices are set in HYPE per unit and converted to MOON at the opening of every epoch, at the 24-hour average rate of the MOON/HYPE pool. The pools pay in MOON. Opening depth of every pool: 3 days of its resource's production at the target price, refilled every epoch from the MOON bought back, then from the MOON reserve (up to 150 HYPE-equivalent per day), then by buying MOON with the HYPE reserve (up to 100 HYPE per day).
Tide. Every epoch, each resource opens at its target price shifted by one of −10, −6, −3, 0, +3, +6, +10 %, drawn from the drand round that starts the epoch (weights 1-2-3-4-3-2-1), revealed and applied by anyone, announced by the Relay. The MOON/HYPE pool has no tide.
Sell wall. At every epoch opening the treasury places reserve MOON for sale between 1.1× and 1.6× the opening price, never more than a quarter of the MOON bought back the day before. The HYPE it earns stays in the pool. There is no other sale of MOON by the Corporation.
Swap fee. 10 bps toward the opening price, 30 bps plus 10 bps per 1 % of distance away from it, capped at 500 bps. Fees accrue to the treasury's positions. Marketplace fee. 5 % of every sale, in MOON, to the TreasuryFund.
Mint window. One collection of 7,000 moons, explored over 28 days: 3 launch epochs of 400 explorations, then 232 per day, 10 per wallet per epoch. At the close: public report, unused launch allocation burned. The moons keep producing; the pools are funded from the treasury reserve, the wall proceeds, the marketplace fee and the swap fees. No second collection.
Phase 1. MOON enters circulation only through explorations (the buyback and the referral legs) and through selling resources to the resource pools; the treasury and the assistance fund are the only other buyers, and the fund burns what it buys. Anyone can sell MOON. MOON/HYPE liquidity is the treasury's only. MOON is not transferable between wallets: it moves only through the game's contracts. Public buys and transfers open together later, by a one-way decision of the Corporation announced by the Relay; no date is set (II.3).
Glossary
- Commander
- A player: the wallet that pays explorations and holds moons.
- Exploration
- A paid draw over the fourteen moon types, with the odds of its fuel. Paid in HYPE (or MOON) at the gateway, which starts it in the same transaction; it commits to a drand round and, once completed, mints one moon.
- Fuel
- What an exploration is paid with: an amount of HYPE you choose, from 0.5 to 45, in steps of 0.01. More fuel, the ship goes further: the odds of rarer moons grow, and the odds of at least a given rarity never fall.
- Effective fuel
- Fuel ÷ m, the step multiplier: the amount the odds are read at. "At X HYPE · step ×m" next to the odds on the launch screen.
- Reference table
- One of the five published odds tables, at 0.5 / 2 / 8 / 40 / 45 HYPE of effective fuel. Between two of them the odds are the mix of the two, in proportion to the distance.
- Band
- Voyager (0.5 – 2), Cosmos (2 – 8), Horizon (8 – 20) or Lazarus (20 – 45): the stretch of effective fuel an exploration falls in. It sets the duration, the artwork and the name; the odds come from the fuel itself.
- Ticket
- A gifted exploration not yet launched: one free exploration of a band credited in NFTMoons by the admin (first colonists, gifts), at the reference table of that band, its purity drawn above the floor of that table. It does not expire.
- Gateway
- The ExplorationGateway: the contract that takes the HYPE, splits it, buys MOON back and starts the exploration.
- Family
- The mission a moon type is told of in the lore (Voyager, Cosmos, Horizon, Lazarus). A family does not limit where a type drops: any fuel can find any type.
- Moon type
- One of the fourteen kinds of moon (id 0–13). Fixes the resource produced, the base daily production and the rarity label.
- Purity
- A moon's production against the base of its type, drawn once at reveal: −15 % to +15 %. Fuel raises the floor (−15 % at 0.5 HYPE, 0 % at 45); the ceiling is the same for everyone.
- Rarity
- A label on the moon type that reflects how often the reference tables land on it. Six rarities, from Common to Mythic, one scale across the fourteen types.
- Resource
- An ERC-20 token produced by a moon type; fourteen in total, one per type.
- Unit
- One resource, 10^18 token wei. Production, pending and balances are decimal; fractions of a unit can be sold.
- Claim
- Minting the units a moon has accrued to its owner, and stamping the moon with the claim time.
- Epoch
- A 24 h window of the mint schedule: a quota of explorations, one tide, one epoch rate.
- Epoch rate
- MOON per HYPE at the opening of the epoch: the 24 h average of the MOON/HYPE pool. Converts the HYPE targets into MOON.
- Quota
- The number of explorations allowed in an epoch (all players) or per wallet in an epoch.
- Mint window
- The 28 days during which the 7,000 moons are explored; labelled Season 1 on the site. Closes at day 28 or at the cap.
- Fuel step
- The +8 % added to the step multiplier m after each block of 1,000 explorations: the minimum fuel rises with it and the odds are read at fuel ÷ m.
- Cashback
- The share of the fuel taken off the price for the moons the player already holds: 0 to 10 %. It does not change the odds.
- Net price
- The fuel after cashback (R): the HYPE paid, and the amount every split percentage refers to.
- Buyback
- The share of the net price that buys MOON in the MOON/HYPE pool in the same transaction as the exploration: 55 % with a referrer during days 1 to 14, 60 % from day 15 (II.13).
- Split
- How the net price of an exploration is divided: operations, HYPE reserve, assistance fund, buyback, and out of the buyback the referral legs, the burn and the pools. Written in the gateway's code, no one can change it; switched at day 15 (II.13).
- Assistance fund
- The AssistanceFund contract: holds its share of every exploration in HYPE; from day 4, when the MOON price is below 90 % of its 21-day average, anyone can trigger a purchase up to that level and never above, at most 3 % of its balance per epoch; it burns all the MOON it buys and has no withdrawal function. A rule, not a floor (II.14).
- Phase 1
- The market rule from launch: anyone can sell MOON; only the exploration buyback, the treasury and the assistance fund can buy it in the MOON/HYPE pool, whose liquidity is the treasury's only; MOON moves only through the game's contracts (transfer lock). The resource pools trade both ways.
- Public buys
- Buying MOON with HYPE in the MOON/HYPE pool, open to anyone. Closed during phase 1; opened later by a decision of the Corporation, announced by the Relay, through a one-way switch of the hook, together with the end of the transfer lock. No date is set.
- Transfer lock
- The phase 1 rule of the MOON token: no transfer outside the game's contracts, so no wallet-to-wallet send and no other venue; the PoolManager moves MOON only within the amount the hook allows for that swap. Lifted with public buys, by the same one-way decision.
- Generic name
- The name a moon carries from its mint until its one rename: "Moon #<token id>".
- Rename
- Giving a moon its custom name (setCustomName). Once per moon, permanent, unique case-insensitive, 1 to 12 characters; it stays with the moon on sale.
- Referrer
- The wallet whose moon name was in the link a player first explored through; fixed on-chain, paid 10 % of the net price in MOON on every exploration of that player.
- Referee
- A player with a referrer: gets 5 % of the net price back in MOON on every exploration.
- MoonSink
- The contract that holds the burner role: MOON sent to it is burned; the total is public.
- Collection
- The 7,000 moons. There is one.
- drand
- A public randomness beacon run by the League of Entropy. The evmnet beacon publishes a round every 3 s.
- Round
- One output of the beacon, numbered from genesis. An exploration commits to a round that is published after it ends; the epoch tide is drawn from the round that opens the epoch.
- BLS signature
- The threshold signature of a round; unique for a given round, verifiable on-chain against the group public key.
- Basis point (bps)
- 1/100 of a percent. 10,000 bps = 100 %.
- Pool
- A Uniswap v4 market between MOON and a resource, or between MOON and HYPE.
- Hook
- The contract the PoolManager calls before and after each swap of a pool; here, the MoonMarketHook.
- Target price
- The price a resource is anchored on, set in micro-HYPE per unit and converted to MOON at the epoch rate.
- Tide
- The shift of a resource's opening from its target for one epoch: −10, −6, −3, 0, +3, +6 or +10 %, drawn from drand.
- Opening
- The price a pool is re-centred on at the start of the epoch: target × (1 + tide); the hook's reference for the fee.
- Deviation
- |price − opening| ÷ opening, in bps. Drives the "away" fee.
- Protocol-owned liquidity (POL)
- Liquidity provided by the treasury itself rather than by players.
- Position
- Liquidity placed in a price range of a pool. The treasury holds one per market, plus the wall.
- Opening depth
- The MOON a resource pool is filled to at the start of the epoch: three days of production at target, floor 1 HYPE-equivalent.
- Wall
- The sell wall: reserve MOON the treasury puts on sale between 1.1× and 1.6× the opening, at most 25 % of yesterday's buyback; its HYPE stays in the pool.
- Reserve
- The treasury's MOON reserve (pool refills, wall) and its HYPE reserve (10 % of every exploration; buys MOON for the pools when the MOON reserve is spent).
- Router
- The MoonSwapRouter: one call to swap an exact input through a pool.
- Listing
- A moon offered on the marketplace at a fixed MOON price, held in escrow until bought or cancelled.
- Escrow
- The marketplace contract holding a listed moon so the sale can settle atomically.
- Relay
- The Elysium Relay: the off-chain channel of the Corporation's dispatches, shown on the star map.
- Dispatch
- One transmission of the relay: a text, a video or an audio clip. The tide of the day is one every morning.
- HYPE
- The gas token of Elysium, the currency of explorations and the other side of the MOON/HYPE pool.
- Elysium
- The cradle and base of humanity, and the name of the chain the game runs on.
- Moon Corporation
- Elysium's largest corporation; runs the galactic economy. $MOON is its token.













