Contract addresses
The canonical Fantums Reborn contracts deploy to Sonic mainnet (chain ID 146) and Sonic testnet (chain ID and address space published at launch). All addresses below are TBD until deploy day — verify against the live repo at launch before sending funds.
Addresses are published in three places when they're final:
- This page
script/deploy/deployments.jsonin the public repo- On the verified contract page on
sonicscan.org
If those three disagree, the on-chain bytecode wins.
Reborn contracts (Sonic mainnet)
| Contract | Address | Purpose |
|---|---|---|
Fantums.sol | TBD at launch | ERC-721 with on-chain combat stats, traits, OG flag, legacyDna |
SFUMS.sol | TBD at launch | Utility ERC-20, fixed supply 100,000 |
SFUMSTimelock.sol | TBD at launch | Team vesting lock for sFUM allocation |
MintDrop.sol | TBD at launch | Public mint, USDC + S accepted, tier-priced |
LegacyClaim.sol | TBD at launch | OG reserved-window mint, Merkle-gated |
Duel.sol | TBD at launch | PvP combat with signed-result EIP-712 |
DuelRouter.sol | TBD at launch | Matchmaking + queue management |
Graveyard.sol | TBD at launch | Permadeath escrow + paid revival |
Marketplace.sol | TBD at launch | In-house secondary marketplace |
ArenaOptOut.sol | TBD at launch | Vanity-mode flag |
FeeMSplitter.sol | TBD at launch | Sonic FeeM rebate distribution |
FantumRenderer.sol | TBD at launch | On-chain SVG renderer library |
Reborn contracts (Sonic testnet)
| Contract | Address | Status |
|---|---|---|
| All Reborn contracts | TBD at testnet deploy | A full mirror of mainnet deploys to testnet for integration testing |
The testnet deployment is typically two weeks ahead of mainnet so external integrators can integrate against real addresses before launch.
Canonical Sonic addresses we depend on
These are not Reborn contracts — they're protocol-level Sonic infrastructure that our contracts call into:
| What | Address |
|---|---|
| Wrapped S (wS) | Sonic canonical address — published in frontend/.env.example |
| Native USDC (CCTP V2) | Sonic canonical address — published in frontend/.env.example |
| Bridged USDT | Sonic canonical address — published in frontend/.env.example |
| WETH | Sonic canonical address — published in frontend/.env.example |
| Multicall3 | Same canonical address as every EVM chain (0xcA11bde05977b3631167028862bE2a173976CA11) |
| Sonic Gateway bridge | Sonic canonical address |
| Sonic FeeM registry | TBD at launch (FeeM registration is a deploy-day action) |
| Chainlink S/USD oracle | TBD at launch |
| Primary DEX | TBD at launch (SwapX / Shadow / Beethoven / Equalizer — chosen on TVL + LP-burn UX) |
The canonical addresses are committed in frontend/.env.example and re-derived programmatically at build time — they're not duplicated by hand in multiple files.
Original FUM contracts (Fantom Opera — read-only reference)
These are the original contracts on Fantom Opera (chain 250). They are reference only. The Reborn contracts do not call them at runtime. Fantom Opera shuts down on 2026-06-30.
| Contract | Address | Purpose |
|---|---|---|
| FUM (original ERC-721) | 0x0C600D41b9C7656e60C0bf76D79B1532b4770D0C | The original Fantums collection (10,860 supply) |
| FOO (original ERC-20) | 0xfbc3c04845162f067a0b6f8934383e63899c3524 | Original duel currency, 100M supply |
| sFOO (original staking) | 0x57c47A330022edAe0a2eC8d6546689508e1278e8 | Original FOO staking token |
| RIP token | 0x659D813beB17435acF822CdD80DB0c7090755771 | Added Sept 2021 |
| Original deployer EOA | 0x60795390f5393e5641fE8F04099632A884168719 | Still holds 2 FUM as of snapshot |
| SushiSwap FOO/FTM LP | 0xc9a3ad55ef7b859e0c5fdb81e4f4b6a709d758fd | Original liquidity pool |
These addresses are in the project memory and the historical snapshot. They are not callable from the Reborn deployment.
Snapshot artifacts
The frozen snapshot of the original FUM collection lives at data/fantum-snapshot/:
| File | Contents |
|---|---|
owners.json | tokenId → owner address, all 10,860 |
hashes.json | tokenId → on-chain DNA hash, all 10,860 |
eligible-holders.json | EOA-filtered holder set at snapshot block |
merkle/tree.json | Merkle tree for legacy claim |
merkle/proofs.json | Per-address proofs |
Snapshot pin block: 121,669,337 on Fantom Opera. Frozen, never re-derived.
Verifying a contract address
Three things to check before sending value:
- The address appears in
script/deploy/deployments.jsonin the public repo on the right network - The address has verified bytecode on
sonicscan.orgmatching the source in the public repo - The address signature on Twitter and Discord match — we cross-post canonical addresses on launch day
If any of those three disagree, do not send funds. Wait for confirmation from the founder wallet.
See also
- Security — invariants and protections baked into the contracts
- Open source — where to find the source
- On-chain rendering — what
FantumRenderer.soldoes
Last updated: 2026-05-21