Rules define the world. Ownership is the entry point.
Conventional NFTs often treat a token as a static media pointer. Eternal Beings treats a token as access to an evolving state. The visible image is one projection; the durable asset is its verifiable history, world rules, and path through the shared simulation.
Determinism
Identical seeds, parameters, and historical inputs must reproduce identical states.
Sovereignty
Each World has independent supply, resources, interaction rules, and economic boundaries.
Composability
Standard interfaces expose ownership and state to markets, games, and other protocols.
Modular contract architecture
| Module | Responsibility | Recommended constraint |
|---|---|---|
| WorldFactory | Validate configuration, deploy Worlds, register versions and implementation hashes. | Predictable CREATE2 addresses; allowlisted templates; complete deployment events. |
| World | Store the rule root, epoch, resource totals, and engine addresses. | Accept transitions only from authorized modules. |
| BeingToken | ERC-721 ownership and on-chain metadata interface. | Transfers must respect locks, staking, and cooldown state. |
| Genesis Engine | Derive initial genes, traits, rarity, and rendering instructions. | No single transaction participant may control entropy. |
| Evolution Engine | Process gathering, mutation, fusion, encounters, and hunting. | Every transition has prerequisites, limits, cooldowns, and events. |
| Renderer | Encode state as SVG, JSON, or another on-chain representation. | Renderer failure must never freeze core ownership. |
Being and World state vectors
Global World state is W(t)=[P,R(t),N(t),E(t),H(t)]: immutable parameters, resource pools, active population, epoch, and accumulated event commitment.
require C(Bᵢ, W, action) = true
T is the transition function and C is the constraint set. Each action should use a separate nonce to prevent replay. Cross-module execution should use checks-effects-interactions and reentrancy protection.
From seed to reproducible genes
entropyᵢ = H(seedWorld ∥ randomness ∥ tokenId ∥ mintNonce)
traitᵢ,k = Fₖ(entropyᵢ, distributionₖ)
The media seed is a content commitment, not randomness. Full on-chain claims require every generation input and rendering instruction to remain chain-readable, rather than merely storing a remote URL.
Entropy options
- Commit-reveal is inexpensive but must handle non-reveal and last-revealer bias.
- Verifiable randomness offers stronger guarantees but adds oracle and callback dependencies.
- Batch entropy lowers cost but must preserve provable fairness across token IDs.
Traits, activity, and evolution
Trait distribution
Energy and renewable resources
Rₖ(t+1)=Rₖ(t)+ρₖ(1-Rₖ(t)/Kₖ)-Σᵢqᵢk(t)
The second equation is a discrete logistic regeneration model. Use lazy accrual at interaction time instead of block-by-block updates.
Rarity score
Rarity is a display metric, not a price. Dynamic frequency changes over time, so every score must publish its version and snapshot block.
Closed-loop resources and inflation control
Sources
Gathering, exploration, quests, encounters, and bounded cross-world imports.
Sinks
Mutation, fusion, repair, acceleration, access fees, and governance submissions.
Velocity
Cooldowns, escalating costs, and account/Being rate limits prevent extraction loops.
congestion(t)=1+η·max(0,u(t)-u*)²
Marginal action cost rises with repeated use and above-target utilization. Every parameter needs a hard bound so governance cannot make interaction impossible. Resources are gameplay units, not guaranteed yield.
Mutation, fusion, and hunting
Mutation
A piecewise-linear sigmoid is practical on-chain. Every mutation stores parent state hash, mutation type, and entropy proof.
Fusion
cost = base + κ·similarity(g_A,g_B) + scarcityPremium
Rules must specify whether parents remain, lock, or burn. Both owners must authorize fusion unless one address owns both assets.
Encounter
Risk actions should lock assets before settlement. Asynchronous randomness requires timeout, retry, and refund paths.
Suggested starting ranges
| Parameter | Starting range | Design effect |
|---|---|---|
| maxSupply | 1,000–10,000 | Must be fixed after deployment. |
| mintPrice | Derived from chain cost and access target | Never implies secondary-market value. |
| epochLength | 1–24 hours | Shorter improves feedback but raises transaction load. |
| energyDecay | 0.5%–3% of Emax per day | Encourages activity without making recovery impossible. |
| mutationRate | 0.1%–2% per eligible action | Needs caps, cooldowns, and outcome protection. |
| fusionCooldown | 1–7 epochs | Limits recursive batch fusion. |
| resourceCap K | Calibrated to active population | Simulate at 95th-percentile load. |
Threat model and launch gates
Entropy manipulation
Use VRF or penalized commit-reveal; do not rely on block data alone.
Economic attacks
Snapshots, delays, rate limits, and holding periods reduce flash and Sybil attacks.
Gas and denial of service
No unbounded loops. Use pagination, pull settlement, and lazy accounting.
- Invariant and fuzz tests: capped supply, conserved resources, monotonic nonces, and valid ownership transitions.
- Independent audit, public testnet, bug bounty, and incident response plan.
- Publish bytecode hashes, compiler versions, and reproducible build instructions.
Immutable core, optional extensions
Genesis parameters, supply cap, gene definitions, and state history should be immutable. Interfaces, indexers, and optional gameplay modules can remain replaceable adapters. Any governed change should obey boundaries and a timelock.
A World creator must never be able to seize user assets, rewrite rarity arbitrarily, or bypass resource conservation.
Long-term protocol directions
ZK State Compression
Execute complex simulation off-chain and prove the resulting state transition.
Agent Governance
Autonomous agents operate only within verifiable permissions, budgets, and termination rules.
Inter-world Portals
Capability tickets export selected traits while the source World preserves ownership truth.
Implementation should begin with the minimum verifiable path: Factory → World → Being Mint → deterministic metadata. Add resources, mutation, and fusion only after simulation and security testing.
OPEN DEPLOYMENT AND MINT GUIDE →