Skip to main content

Concepts

This section aims to guide you through Web3 and game building concepts, including Immutable-specific innovations and EIPs.

TermDescription
Bridge and bridgingBlockchain bridges work just like the bridges we know in the physical world. Just as a physical bridge connects two physical locations, a blockchain bridge connects two blockchain ecosystems and across layers (see L1 and L2). Bridges facilitate communication between blockchains through the transfer of information and assets.
BurningBurning is the process of removing a NFT from circulation. It is identical to a transfer except the receiving address will always be the null address 0x000000000000000000000000000000000000000. (This null address is also the address from which a new token is minted - sender or from variable). Typically within the game building context, you burn assets as the item gets used in crafting.
Contract composabilitySmart contract composability refers to the ability of different smart contracts to work together and interact with each other in a seamless and predictable manner. It's like having a modular system where you can combine different smart contracts like Lego pieces to create complex and sophisticated decentralized applications (DApps) or decentralized finance (DeFi) protocols. This interoperability allows developers to leverage existing smart contracts and build new functionalities on top of them, leading to innovation and the ability to create novel and interconnected blockchain-based applications.
CraftingCrafting assets is a broad term for the process of combining various in-game resources or items to create new and unique items or equipment. At its core, crafting consists of receiving existing assets, combining them, and then burning them to create a new asset.
Custodial (Self-custodial, Non-custodial)Crypto wallets can be broken out into two different groups - non-custodial and custodial. Custodial wallet services include offerings from crypto exchanges like Kraken and Coinbase where a third party has control over your private keys (and therefore, your crypto). With a non-custodial wallet, like the Metamask or Ledger, the user is the only one with access to their private keys, and therefore, has complete control over their assets. The tradeoff between the custodial and non-custodial wallets usually lies in having less responsibility of safeguarding your crypto vs having more direct control.
ERC2981A standardized way to retrieve royalty payment information for non-fungible tokens (NFTs) to enable universal support for royalty payments across all NFT marketplaces and ecosystem participants.
ERC20 and ERC721ERC20 is a fungible token standard that produce commodity-like tokens that are interchangeable with another token in its category, ie. ETH, IMX. ERC721 meanwhile is a non-fungible token. Each token has unique properties from other tokens in their collection.
Gas FeesAll on-chain transactions require a gas fee, which is used to cover the costs of the computational resources to execute that transaction. These fees are additional amounts that a user pays on top of a base price of an asset.
Gas-less transactionsGasless transactions are those that have the gas fee paid for by a third party instead of the transaction sender. Typically, this means the dApp owner covers the gas costs of their users' transactions, providing a more seamless user experience.
IPFSInterPlanetary File System (IPFS) is a distributed protocol for storing and accessing files, websites, applications, and data. Underlying NFT metadata images are typically stored on this service.
L1 and L2Blockchain consists of 5 layers: hardware infrastructure layer, data layer, network layer, consensus layer, and application layer. Ethereum is considered a "Layer 1" (L1) protocal. L2 or "Layer 2" is a term used to describe mechanisms that process batches of transactions independently of "Layer 1" (L1) and only periodically reports them to the main chain. This decreases the total number of transactions that have to be validated on Layer 1. Layer 2s are also known as "execution layers" or "rollups".
MetadataTo enable NFTs to be more descriptive, smart contracts can contain metadata, which is information about the special characteristics of each token. The aim of metadata is to allow applications to utilize this data. The metadata of an NFT can describe its characteristics and properties, such as its name, description, transaction history, traits, link to the hosted image, and more. Additionally, the metadata of an NFT can point to the link you use to view the NFT, whether it’s a photo or video.
MetamaskMetamask is one of the most popular self-custodial wallets. You can see the project here.
MintingMinting an NFT (Non-Fungible Token) refers to the process of creating a unique digital asset and recording it on a blockchain. NFTs are digital tokens that represent ownership or proof of authenticity of a particular item, such as artwork, music, videos or collectibles.
On-chain and off-chainOn-chain means data is stored on a blockchain. Transacting and iteracting with it requires the standard methods which you'd engage with a blockchain, including incurring gas fees. Off-chain means data is stored anywhere else, typically this can be done in a relational database that's hosted in a centralised fashion. This often improves speed and reduces costs. Game builders often need to make decisions on what assets and interactions to put on-chain and what to keep off-chain.
Primary salePrimary sales are often the first step to getting game assets into your players' hands. They involve users paying funds to your collection's smart contract and then the contract directly minting the assets into the player's wallet. Typical primary sales campaigns include selling in-game assets such as land, weapons or characters.
Secondary saleSecondary sales refers to all subsequent sales of an NFT that occur after the initial purchase in the primary market. Once an NFT has been sold in the primary market, it can be resold by the buyer to another party in the secondary market. The secondary market provides a platform for the exchange of previously owned NFTs.
Private key and public keyA public key is used to receive cryptocurrency, whereas a private key is used to sign transactions and send cryptocurrency.
Rollup"Rollups" perform transaction execution outside layer 1 and then the data is posted to layer 1 where consensus is reached. As transaction data is included in layer 1 blocks, this allows rollups to be secured by native Ethereum security. Typically you would also see "zero-knowledge rollups" or "optimistic rollups". Optimistic rollups are called “optimistic” because they assume all the Layer 2 transactions are valid until proven otherwise. On the other hand, ZK-rollups use a complex piece of cryptography called a zero-knowledge proof to prove the transactions' validity without knowing too much about the transactions' specifics.
Royalty feesRoyalties are amounts that a user pays on top of a base price (or subtracted from total price) of an asset which accrues to the royalty holder(s). These can be imposed by various entities. Royalties are usually imposed by the owner of the collection or contract.
Seaport contractSeaport is the settlement contract used for safely and efficiently creating and fulfilling orders. Immutable zkEVM uses a modified version of the open sourced Seaport contract with a focus on enforceable royalties. You can checkout the source code here.
Signer

A signer is a representation of a user's wallet (account) that is used to authorise transactions. These transactions typically involve transferring the ownership of assets (currencies or NFTs) from one account to another, hence why the user is required to "sign" these transactions. Applications use signers to obtain user signatures to execute payments, asset transfers, and more. For more information, see the Signers definition from the ethers library.

Smart contractA smart contract is a program stored on a blockchain that runs when predetermined conditions are met. Their purpose is to automatically execute agreements without intermediaries, ensuring that all parties can confirm the result instantly. These are coded in a language called Solidity.
Swaps and SwappingA token swap refers to exchanging to exchanging one cryptocurrency token directly for another without using fiat money (eg USD). For example trading ETH for IMX. A common use case is when a user needs to pay in one currency but does not have it.
TransferringAssets can be transferred to power a number of in-game mechanics from simple trading and rewarding to more complex crafting mechanics. Transferring can happen between:
  • Player to player
  • Player and the master application wallet
Put simply, asset transfer involves transferring the ownership of an asset from one wallet to another. This must be authorised by the sending wallet. This transaction requires a small amount of gas, which is paid by the transferring wallet.
WalletCryptocurrency wallets store users' public and private keys, while providing an easy-to-use interface to manage crypto balances.
zkEVMzkEVM introduces 2 concepts. Zero-knowledge rollups which you can see above under "Rollups" and EVM compatibility, which stands for "Ethereum Virtual Machine Compatiblity". This means creating an EVM-like (Solidity) code execution environment that makes it easy for Ethereum developers to migrate smart contracts to an EVM compatible chain without having to write the code from scratch again. ImmutablezkEVM is the first of its kind - a chain for games that offers EVM compatibility, low cost, massive scale, and Ethereum security. The most cutting-edge technology in gaming with the largest ecosystem in Web3.