Contracts and addresses
Find the full addresses used by this app, learn what each one does and check which contract appears in your wallet request.
How to use this list
- Compare the full address and network with your wallet request. Names and token symbols alone are not enough.
- Use the game's purchase, claim or staking controls. Sending tokens directly to a listed address does not buy an item or create a staking position.
- A token approval names the contract allowed to spend that token. Card and item approvals can cover the whole collection; review the permission.
- Some entries share an address because they are aliases or refer to the same token in a pool. Project accounts are listed separately from game contracts.
Configured addresses do not confirm an audit, current permissions, available liquidity or completed deployment setup. See Fairness and safety for what the contracts and game server each control.
Tokens and cards
USDC
The payment token used for purchases and market sales. Check this address when adding the token to your wallet.
Configuration name: USDC0x036CbD53842c5426634e7929541eC2318f3dCF7eZooCards — your card collection
Records who owns each card and its on-chain card data. Card transfers and collection approvals use this contract.
Configuration name: ZooCards0xAF4290BFe70A4efb5Ea711DaA6E018f8D447f1D8ZooItems — your game items
Records wallet items such as essence and PvE tickets. Item approvals can allow another contract to use items from this collection.
Configuration name: ZooItems0xECF6742494D330e6033f88d9CF54a13243c148D6ZOO token
The game token used for rewards, supported purchases and staking. Check this address when adding ZOO to your wallet.
Configuration name: ZooToken0xC1438aaE4f87EB454ff2094F82D30024587C696CPlaying and trading
ZooShop — buying and claiming items
Sells game items and handles supported signed item claims. A token approval for a shop purchase names this contract.
Configuration name: ZooShop0x7FC0Cfb5e446e063c8F7b8c89Ac74AD62DA1D660BoxSale — buying and opening boxes
Takes box payments, requests random draws and creates the revealed cards. It also handles eligible delayed-order refunds. A USDC or ZOO approval for a box purchase names this contract.
Configuration name: BoxSale0x1429e476f695f81976737af43B7c79bB17f6EF41ChestOpener — opening key chests
Uses the game's signed opening voucher, requests a random draw and creates your chest rewards. The server handles your key balance; this contract handles the wallet opening.
Configuration name: ChestOpener0xa3C608E47d10d01a54eAcE6AFB110786F23441c8Marketplace — player card sales
Holds listed cards, accepts USDC purchases and pays sellers after fees. Selling needs a card approval; buying needs a USDC approval.
Configuration name: Marketplace0x8069D3aCE18eF77AAaa26DE1B78a5eb8DDFb1A31Forge — upgrading and merging cards
Consumes the selected cards or essence, applies card upgrades and combines cards into universals. Feeding or combining can need card, item and payment approvals.
Configuration name: Forge0x2965172271bdE01A7119A7bCa5b0D7717683Cf97Rewards and token reserves
RewardDistributor — player rewards and esZOO
Checks published reward claims, records locked player rewards and releases ZOO over time. Claiming, collecting unlocked ZOO and early unlock use this contract. esZOO is a reward balance here, not a separate transferable token.
Configuration name: RewardDistributor0x13522773135Ba68990f8E4086bc65c4d8f1540f3RewardStreamer — funding player rewards
Moves scheduled ZOO from the reward reserve into RewardDistributor. It funds the reward system; players claim through RewardDistributor.
Configuration name: RewardStreamer0xB5d3517f6A7f5338BEc9623C94E88e110Db60db2ZooVesting — project allocation schedule
Releases a project token allocation over time. If its address matches a named vesting entry below, both names refer to the same contract. It is separate from your player esZOO balance.
Configuration name: ZooVesting0xAE761a7BAe331F93f9a5Fab821B87Dbae32f0ffETeamVesting — team allocation
Holds the team's ZOO allocation and releases it under its vesting schedule. It does not hold player staking positions or esZOO rewards.
Configuration name: TeamVesting0x415444C79dC4D2a96d152Aa5CA8efEc58C95DFF2TreasuryVesting — treasury allocation
Releases the treasury's scheduled ZOO allocation. Players do not use it to collect game rewards.
Configuration name: TreasuryVesting0x63A1dA35153cfeACb55bE51e7ef012d17B56e9f4PartnersVesting — partner allocation
Releases the partners' scheduled ZOO allocation. A matching ZooVesting address is another name for the same contract, not another pool of tokens.
Configuration name: PartnersVesting0xAE761a7BAe331F93f9a5Fab821B87Dbae32f0ffEBuybackVault — buyback funds
Receives allocated USDC fees. An authorized operator can use allowed swaps to buy and burn ZOO. Its address does not promise a buyback date or a guaranteed token price.
Configuration name: BuybackVault0x91047eb53fA6089505c5d6AbEE227B0d0F812B17StakingLock — locked ZOO
Holds the ZOO you stake and records the lock period. Unlocking or leaving early uses this contract; the game calculates the resulting mining HP bonus.
Configuration name: StakingLock0x2F6eefb90093BDC31de9d2B48DEd92f5604E4724Prices and swaps
MockOracle — test price source
A test contract with a settable ZOO price. Its presence in an older deployment record does not mean the game still uses it: contracts can be switched to another price source.
Configuration name: MockOracle0xaddF3cecA63587a046Bd23b8e5E6bb97dB5eF282Launch vault
Manages the project's ZOO/USDC liquidity positions and collects their fees. It is part of the exchange infrastructure, separate from player staking.
Configuration name: launch.vault0x631C8Ee8e6F62741ba2e45a2e9f426E8459725E9Pool hook
Applies the ZOO pool's trading rules and provides its price observations. Game contracts can use it as their price source after configuration.
Configuration name: launch.hook0xfAab29d82189158984Dc330781ac72F6191ba0C0Pool manager
The Uniswap v4 contract that manages pools and settles their swaps. The ZOO pool is identified by its two tokens, fee setting, tick spacing and hook; it has no separate pool contract address.
Configuration name: launch.poolManager0x05E73354cFDd6745C338b50BcFDfA3Aa6fA03408Deployment factory
A helper used to deploy the pool hook at a calculated address. Players do not need to approve it or send funds to it.
Configuration name: launch.create20x3A675b01857E6f0119A928f5543821B528E3CD82Swap router
Routes the app's supported ZOO/USDC swap. Use the swap screen to review the payment and approval; the router used by a test deployment can differ from mainnet.
Configuration name: launch.swapRouter0x7Ba55d080743FFbc6CFeEBb0245866aF79011e8fPool token 0
The first token address in the pool's sorted token pair. This repeats one of the payment or ZOO token addresses above.
Configuration name: launch.poolKey.currency00x036CbD53842c5426634e7929541eC2318f3dCF7ePool token 1
The second token address in the pool's sorted token pair. This repeats the other payment or ZOO token address above.
Configuration name: launch.poolKey.currency10xC1438aaE4f87EB454ff2094F82D30024587C696CPool hook reference
The hook address included in the pool's identity. It should match the pool hook above.
Configuration name: launch.poolKey.hooks0xfAab29d82189158984Dc330781ac72F6191ba0C0Randomness and administration
ParamRegistry — game contract settings
Stores adjustable prices, limits and other settings used by game contracts. This is why a guide's default value can differ from the amount shown for a live action.
Configuration name: ParamRegistry0xC0F2f4845e846A858Be66f7F627321972751aA2dReplacement contracts' randomness coordinator
The coordinator recorded for the replacement box and chest contracts. Check the provider label on Boxes to see what the app has confirmed about the live randomness provider.
Configuration name: securityRollout.vrfCoordinator0x5C210eF41CD1a72de73bF76eC39637bB0d3d7BEEProject accounts
These are recorded account roles. An account can be a normal wallet or a contract wallet; this list does not establish its current owners or permissions.
Reward reserve wallet
Receives the token reserve for rankings and events. This is a project account; players collect published rewards through RewardDistributor.
Configuration name: reserveWallet0xD4885A5aa53446843CABcDE1F35DE9b4E906030eDeployment account
The account that created the deployment. Creating a contract does not prove that this account still controls it.
Configuration name: deployer0xD4885A5aa53446843CABcDE1F35DE9b4E906030eTreasury account
Receives the project's treasury allocations and applicable fees. It is not a player deposit address.
Configuration name: treasury0xD4885A5aa53446843CABcDE1F35DE9b4E906030eGuardian account
The configured emergency account for actions such as pausing supported contracts or cancelling a reward list during its waiting period. Its current permissions must be checked on-chain.
Configuration name: guardian0xD4885A5aa53446843CABcDE1F35DE9b4E906030eWallet permissions and help
Disconnecting your wallet does not remove spending approvals. You can review and revoke approvals through your wallet's supported tools.
The collection contract address and card number together identify your card.
For pending purchases and wallet prompts, open Account and help.
This guide describes the current code and its defaults. Some app previews also use defaults; deployed settings can differ. Review the network, amount and action before confirming.
