Contract Presets
Immutable provides a set of preset contracts than can be used by customers to deploy known, battle-tested contracts to the zkEVM.
Immutable's preset contracts are equipped with features purpose-built for Web3 gaming, simplifying the integration process with Immutable's zkEVM platform. For a comprehensive understanding of these contracts, please review the detailed documentation provided for each contract listed below.
We encourage you to delve into the capabilities offered by our ERC721 preset contract, meticulously crafted to enhance the efficiency of game development on our platform.
Key smart contracts in the Immutable ecosystem are deployed at addresses listed here
Explore the smart contracts deployed on Immutable's zkEVM Mainnet via the Explorer
The Immutable zkEVM contracts package, @imtbl/zkevm-contracts, was recently deprecated. Please use the new Immutable Smart Contracts monorepo @imtbl/contracts where the zkEVM contracts have been moved to.
List of zkEVM Immtuable Preset Contracts
Additional Features to Preset Contracts
Additonal Utility Smart Contracts
Immutable zkEVM collection requirements
All collections deployed on Immutable's zkEVM must utilise the operator allowlist to protect content creator (eg: you, the game studio's) royalty fees and Immutable's 2% protocol fees.
This can be achieved through embedding the following into your smart contract collection designs:
Recommended Approach: For seamless implementation use or inherit Immutable's preset contracts tailored for gas-efficient creation of Web3 gaming assets on the zkEVM network. Immutable offers the following 2 preset contracts:
- Recommended Preset for Web3 Games: ImmutableERC721.sol - Multiple batch minting functions for optimised gas efficiency. Required for use of Minting API (upcoming feature)
- Alternative Presets:
Minimally Required Standard: If the above options are not compatible with your game design, it is mandatory for your collection to inherit the OperatorAllowlistEnforced.sol contract, allowing your collection to interact with the
OperatorAllowlist
.OperatorAllowlistEnforced
includes the functions to identify compliant smart contracts for approvals and transfers, ensuring the preservation of content creators’ royalty fees and protocol fees in third-party marketplace transactions.- If your game design restricts your collections from importing Immutable's preset contracts, please note that your request for inclusion on the Mainnet's deployer allowlist may undergo additional processing time. Immutable will conduct thorough verification to ensure that your collections comply with our mandated standards, safeguarding content creators on the network. Thank you for your understanding and cooperation in ensuring Immutable's zkEVM network remains secure for our web3 gaming community.
The use of the preset contracts accelerates integration with Immutable's ecosystem. If your studio has developed custom ERC721 or ERC1155 collections, ensure they adhere to their respective standards in addition to inheriting the OperatorAllowlistEnforced.sol contract, to safeguard compatibility with Immutable's ecosystem.