1. The Economic Loop
1. Users burn OSR + pay a SOL fee to deploy virtual nodes (Oil Rigs or Mining Shafts).
2. Every mint and upgrade burns 70% of the OSR cost to the burn wallet, routing the other 30% into the treasury wallet.
3. A halving emission curve (E₀ = 262 OSR/sec, halves every 7 days) distributes OSR from a pre-minted 229M reserve. Each user earns a share proportional to their grow-power, capped at 30% per user to prevent lottery-in-thin-network wins.
4. Under v2 accrual, both Oil Rigs and Mining Shafts accrue $OSR per second out of that reserve. Mining Shafts can additionally compound pending OSR directly into upgrades at a 0.75% fee; Oil Rigs are claim-only in v1.
5. Protocol SOL revenue (Token-2022 2% transfer fee + Meteora DAMM v2 LP 2% fee) flows to the treasury ops budget — it funds infrastructure, not user rewards. User accrual is OSR-only from the halving reserve.
2. Node Family Economics
Loading…
3. Fees
Mint burn
70%
of OSR cost
Mint treasury
30%
of OSR cost
Mint SOL fee
0.05 SOL
flat, per mint
Upgrade SOL fee
0.02 SOL
flat, per upgrade
Claim fee
2%
on gross claim
Compound fee
0.75%
Mining Shaft only
Max nodes
5
per wallet
Upgrade scaling
base × level
OSR cost scales linearly with target level
4. Reward Flow
Genesis: 229M OSR pre-minted to OSR Emission Reserve PDA
(mint authority revoked immediately after distribution)
│
▼
┌─────────────────────────────┐
│ OSR Emission Reserve │
│ 229M OSR (pre-minted) │
└──────────────┬──────────────┘
│ halving curve E(t) = 262 × 0.5^(t/7d)
▼
Each user's per-second rate:
share = min(userGP / totalGP, 30%) × welcomeBoost(elapsed)
│
▼
┌─────────────────────────┐ ┌──────────────────────────┐
│ Oil Rig claims │ │ Mining Shaft claims │
│ pay OSR │ │ pay OSR (compoundable) │
└─────────────────────────┘ └──────────────────────────┘
Separately: Protocol SOL revenue (Token-2022 2% + LP 2%) → treasury ops
(XOMX/CVXX swap path is a legacy ops-side flow, not a user-rewards path)
5. Halving Emission Model
Global OSR emission follows a Bitcoin-style halving curve. Starting at E₀ = 262 OSR/sec at genesis, the rate halves every 7 days until the reserve is fully paid out.
E(t) = E₀ × 0.5 ^ (t / 7 days) Day 0 : 262 OSR/sec (22.6M/day) Day 7 : 131 OSR/sec (11.3M/day, 50% of lifetime emitted) Day 14 : 65.5 OSR/sec (5.66M/day, 75%) Day 30 : 13.4 OSR/sec (1.16M/day, 95%) Day 90 : ~0 (emission effectively extinct)
Lifetime emission = 229M OSR, pre-minted to the program-owned emission reserve PDA at genesis. Mint authority is revoked post-distribution — no new supply can ever be created.
Each user earns a proportional share of each second's emission:
user_rate = min(user_gp / total_network_gp, 30%) × E(t) × welcome_boost user_gp = Σ componentMult for each node (Formula D: base × Π rarityBoost)
A 30% per-user share cap prevents lucky-in-thin-network lottery wins, keeping the experience fair across network sizes.
5b. Welcome Boost
New users receive an 8× share multiplier that linearly decays to 1× over their first 72 hours. This is critical for latecomers joining mid-cycle when the halving curve has already decayed.
boost(elapsed) = 1 + 7 × max(0, 1 − elapsed / 72h) Hour 0 : 8.00× Hour 24 : 5.67× Hour 48 : 3.33× Hour 72 : 1.00× (boost expired)
Sybil gate: boost only counts toward accrual after the user reaches Compound L4 — prevents $100 × 10 alt-wallets from draining the welcome allocation.
5c. Emission Throttle (safety layer)
Orthogonal to the halving, a runway-based throttle factor f ∈ [0, 1] protects against pathological drain on legacy flat-rate families (not used for OSR under the halving model, but retained for any future secondary-asset families):
runwayDays = reserveBalance / unconstrainedDailyBurn runway ≥ 45d → f = 1.0 (healthy) 14d → 45d → f 0.7 → 1.0 (gentle) 7d → 14d → f 0.3 → 0.7 (notable) 3d → 7d → f 0 → 0.3 (emergency) ≤ 3d → f = 0 (halted)
Under the halving model for OSR, the emission reserve is pre-minted and cannot deplete beyond lifetime emission, so f = 1.0 effectively always. When paused by admin, f is forced to 0 across all families.
6. Level Multiplier
Each level tier multiplies a node's base reward rate. L1 = 1×, L10 = 5×, extrapolates linearly beyond L10 at +0.6 per level.
L1
1.00×
L2
1.25×
L3
1.55×
L4
1.90×
L5
2.30×
L6
2.75×
L7
3.25×
L8
3.80×
L9
4.40×
L10
5.00×
7. Aura Tier Palette
Each node's emissive material color shifts with its level, making progression visible at a glance in the 3D scene.
L1
rust
L2
bronze
L3
copper
L4
steel
L5
silver
L6
platinum
L7
amber
L8
hot-orange
L9
white-hot
L10
gold
8. Live Protocol State
Loading live state…
See Reserve Vault for the full event feed and Market Room for aggregated metrics.
9. Source of Truth
All constants on this page are imported from @osr/types and the live family config comes from GET /api/nodes/families, so this page can never drift from what the backend actually enforces. Admin config changes appear here on the next reload.