Skip to main content

Launch NFTs on Mavis Launchpad

Overview

The Mavis Launchpad is an NFT primary marketplace within Mavis Market. In a primary sale, a game studio sells digital assets directly to players in exchange for any token on the Ronin chain.

Mavis Launchpad is designed to introduce your projects to the community with launch stages and customizable landing pages. A launch stage is a period when users that meet specific conditions can mint NFTs.

Your launch can have a series of stages, each with its own conditions and supply. To make sure that your collection stands out, design your own landing page from a variety of provided layouts.

note

In a series of launch stages, only one stage can be active at a time.

Prerequisites

  • Basic knowledge of Solidity for smart contract development.
  • A deployed NFT smart contract on Ronin.

Steps

Step 1. Customize your launch

  1. Make a copy of the Mavis Launchpad form.
  2. Fill in the details of your collection and launch stages. For more information, see Launch details. Leave blank any information that doesn't apply to your collection, such as a testnet or mainnet deployment.
  3. Send the form to your point of contact.

Step 2. Integrate your NFT smart contract with the launchpad

During the minting process, the launchpad will call the mintLaunchpad(to, quantity, extraData) function in your contract to issue NFTs to the user. The parameters of this function are described as follows:

  • to: the address of the user who will receive the minted NFTs.
  • quantity: A uint256 representing the number of NFTs requested by the user.
  • extraData: A bytes parameter containing any additional data that may be required during the minting process. This field is typically left empty.

Our Launchpad also implements the ERC-165, which require the NFT contract to provide supportsInterface(interfaceId).

For optimal integration, please refer to SampleNFT721Launchpad and SampleNFT1155Launchpad

Grant the minter role to the launchpad

  1. Visit app.roninchain.com and search for your deployed NFT contract.
  2. On the Contract tab, click Write Contract.
  1. Locate the grantRole method and fill in the following parameters:
  • Role: the role you want to grant. For Mavis Launchpad, use 0x9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6 (the MINTER_ROLE as byte32).
  • Account: the address of Mavis Launchpad depending on the network you deploy to:
    • Ronin mainnet: 0xa8e9fdf57bbd991c3f494273198606632769db99
    • Saigon testnet: 0x9eaf882f8cdfef42a3c272365f9cd069a220ce7c
  1. Connect your Ronin Wallet with the administrator account and click Write.

Step 3. Create a landing page

The landing page is the first thing users see when they visit your project. To make a good first impression, make sure your landing page is attractive and informative. Mavis Launchpad offers six different types of block layouts for the About page to choose from. You can add up to 10 blocks per page.

To create your own layout, follow these steps:

  1. Open the Mavis Launchpad Template Figma file.
  2. Click an empty spot in the canvas to select any layers.
  3. Click the filename at the top of the page, then select Duplicate to drafts to create a copy.
  1. In your copy of the template, you can now add or remove the blocks to create your own layout.
  2. After you created the layout that fits your project, generate a shareable link to the Figma board.
  3. Update the 5. Collection about page layout field with the link to your Figma board, and send it to your point of contact.

Reference

Launch details

A launch includes a series of launch stages, with one stage active at a time. Each stage has the following details:

FieldDescription
Stage nameThe name of the stage.
Start timeThe time when the stage begins.
End timeThe time when the stage ends. If not specified, the stage continues indefinitely or until the stage supply sells out.
Stage typeThe type of the stage: Allowlist or Public. Allowlist stages have a list of specified addresses that can mint. Public stages allow any address to mint.
Allowlist conditionThe condition for stage participants. You can set one condition for each stage. For more information, see Stage conditions.
Per wallet mintThe total number of tokens that one wallet can buy at this stage.
Stage's supplyThe total supply of the stage that must be equal to or less than the total launch supply.
Unit price (RON)The item price in RON. You can set it to 0 to show that the item is free of charge.

Stage conditions

For each stage, you set one of the four conditions to determine who can mint in the stage:

ConditionDescription
No condition, or publicAnyone can take part in the stage, as long as the stage limit and the total mints per wallet permit. Public stages always occur at the end of a launch.
Allowlist conditionAddresses in an allowlist can mint at this stage. Prepare the list and upload it to the launchpad before the stage starts. You can also specify how many NFTs a particular address can mint. For example, 0x123,1, 0x124,2 means that the addresses 0x123 and 0x124 can mint one and two NFTs, respectively.
Token-gated conditionUsers who hold a specific token can mint at this stage. Each required token allows the user to mint a specific number of NFTs.
Server-signed condition (coming soon)A backend server determines if the user can mint in the stage. You can use this condition for any restriction type. For example, in a free mint, you can add bot protection with a CAPTCHA.

Cumulative mint

caution

Cumulative mints apply to allowlist and token-gated stages only.

A cumulative limit prevents individual users on the allowlist stage from over-purchasing throughout the entire allowlist period. If a user's eligible for more than one allowlist and token-gated stages, their limit accumulates from the previous stage. This means the user's limit doesn't reset or start anew in each stage. Instead, it carries over from one stage to the next.

For example, a user can mint three NFTs in the first stage, and they mint two. In the following stage, with a limit of four per user, the user can mint two more.