Skip to main content

Concepts

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

It covers key terms and definitions crucial to your development experience.
conceptsconcepts

Bridge and bridging

Blockchain 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.


Burning

Burning 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 composability

Smart 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.


Crafting

Crafting 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.


ERC2981

A 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 ERC721

ERC20 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 Fees

All 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 transactions

Gasless 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.


IPFS

InterPlanetary 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 L2

Blockchain consists of 5 layers: hardware infrastructure layer, data layer, network layer, consensus layer, and application layer. Ethereum is considered a "Layer 1" (L1) protocol. 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".


Metadata

To 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.


Metamask

Metamask is one of the most popular self-custodial wallets. You can see the project here.


Minting

Minting 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-chain

On-chain means data is stored on a blockchain. Transacting and interacting 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 sale

Primary 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 sale

Secondary 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 key

A 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 fees

Royalties 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 contract

Seaport 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.


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 contract

A 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 Swapping

A 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.


Transferring

Assets 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.


Wallet

Cryptocurrency wallets store users' public and private keys, while providing an easy-to-use interface to manage crypto balances.


zkEVM

zkEVM introduces 2 concepts. Zero-knowledge rollups which you can see above under "Rollups" and EVM compatibility, which stands for "Ethereum Virtual Machine Compatibility". 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. Immutable zkEVM 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.


Related content