Doki Doki
  • Overview
    • Key features
    • Protocol Fees
    • FAQ
  • Tutorials
    • How to create NFT Gacha
    • How to remove NFTs from Gacha
    • How to freeze metadata for NFTs minted on Opensea
    • How to add special rules to your Gacha using .CSV file
  • Resources
    • For developers
      • Supported token URI values
      • Supported metadata structures
      • Solidity Interfaces and ABIs
    • Brand & Media Kit
    • Disclaimer
    • Customizations
  • Integrations & Partnerships
    • Chainbinders
    • Unicly (uDOKI)
Powered by GitBook
On this page
  • 1. Deploying a new Gacha
  • 2. Configuring your Gacha
  • 3. Loading NFTs into your Gacha
  • For NFTs created using the Doki Doki Minter
  • For all other NFTs (Not minted using the Doki Doki Minter)
  • Unlocking or Locking your Gacha

Was this helpful?

  1. Tutorials

How to create NFT Gacha

This tutorial will guide you through the process of launching your own Gacha, broken down into three simple steps 1) Deploy 2) Configure 3) Load NFTs

PreviousFAQNextHow to remove NFTs from Gacha

Last updated 3 years ago

Was this helpful?

1. Deploying a new Gacha

To deploy a new Gacha, head over to the and click "Deploy New Standard Gachapon". Select the network you wish to deploy on, the accepted token, and input a name for your Gacha (don't worry, you can change it after). Press deploy, confirm the dialog in your Metmask, and wait for the transaction to process. Done!

2. Configuring your Gacha

Click on your newly deployed Gacha and you'll be able to modify its settings which include:

  • Machine Name - Self Explanatory

  • Price per Play - The cost of getting one random NFT from your Gacha

  • Category - Art & Collectibles, Gaming, or leave it uncategorized

  • Description - A brief description which will appear on your Gacha page

  • Payout addresses - Gachas can automatically split tokens earned to up to 10 different wallet addresses. Percentage share of the addresses must add up to 100%

Each of the above attributes are stored on-chain, so you'll need to click the "Apply" button and confirm a Metamask transaction for changes to take effect. As the owner of the Gacha, you can change these settings at anytime.

The ability to fully customize the look & feel of your Gacha is a feature we're currently working on.

3. Loading NFTs into your Gacha

For NFTs created using the Doki Doki Minter

Navigate to the NFT Loader tab in the Gacha Factory. You should be able to see all NFTs you created using the Doki Doki official minter. Select your Machine at the top left, and click on the NFT you wish to load. Input the quantity, confirm the transaction in Metamask and you are done!

For all other NFTs (Not minted using the Doki Doki Minter)

Click the purple "Load NFTs from Custom Collection" button. A popup will appear with the instructions.

The easiest and recommended way to load is by pasting the full Opensea link to the NFT, inputting the quantity, and confirming the transfer.

If for some reason the above did not work, you can also load the NFT by transferring it directly to the Gacha contract address. You can do this using Opensea's transfer function.

Once the transfer is confirmed, check your Gacha play page to verify if the NFT was successfully loaded.

You can load up to 800 copies of a NFT into your Gacha in one transaction, exceeding this limit may cause the action to be reverted. Always doublecheck the address of the Gacha before sending. Sending to incorrect address may result in the loss of your NFT.

Unlocking or Locking your Gacha

Once you're done configuring your Gacha and loading NFTs, unlock your machine to allow others to play. The unlock button can be found in both the Gacha Factory and NFT Loader tabs. In summary:

  • Locked = Maintenance mode. No one can play your Gacha, but you can safely load NFTs into it while your Gacha is locked.

  • Unlocked = Active mode. Others can play your Gacha to win NFTs. You cannot load new NFTs while your Gacha is unlocked.

Important Note: For NFTs minted using the , you must Freeze its metadata before loading into your Gacha for the media to display correctly. Please refer to

Opensea public minter
the instructions posted here.
Gacha Factory
Opensea Transfer Button