Matic Mike NFT — 100% On-Chain NFT — Initial Launch & PvP Dance Royale

Mike Dev
11 min readNov 9, 2021

The Matic Mike NFT is a 100% on-chain NFT launched on the Polygon chain with a Polygon <-> Ethereum bridge. This article is to go over our initial release and the process we took, how everything works, as well as our short-term and long-term plans for the future. So, without further delay, let’s get into it.

A quick list of bullet points on initial release…

  • Around $1000 in MATIC was airdropped to our whitelist for initial mint
  • 10,000 Mikes were minted over a 12 hour window
  • 7,363 Mikes were burn rerolled
  • 2637 Mikes remain
  • 2 Mikes have crossed over to Ethereum (by me, for testing and setting up collections)
  • Averaging around 2200/2637 Mikes in the gym (staking)
  • Around 15,500 $HGH has been generated at the time of this article
  • Over 630 unique wallets holding these 2637 Mikes.
  • DiscordJS bot with full contract read interaction on initial release complete
  • PvP Dance Royale contract launched on 11/4/21
  • Submission to Chainlink Hackathon complete, and development of PvE Evil Club Owners NFT is underway
  • Everything done with no API — all data and functionality is 100% on chain, website & discord bot just provides a UI to interact.

A list of links pertaining to the project…

As you’ll notice from the list of links, there are a couple Ethereum contracts. These are the bridges if you chose to send your $HGH or Matic Mike NFT over the bridge to Ethereum. Although we have all utility functions on Polygon, we wanted to give our users the ability to sell on any aftermarket that may not have Polygon listings available. Now, let’s get into the mint.

Minting Process

Matic Mike was a 100% free mint with a tokenized minting process after 2500. To keep a healthy amount of wallets, we allowed minting one 1 MIKE per wallet while the whitelist minting was open for 2 hours before the public release. To onboard users to the Polygon chain, we decided to airdrop around $1000 worth of MATIC to our entire whitelist for gas money. This introduced a lot of users to the Polygon network and the benefits of layer 2 Ethereum solutions.

Once the whitelist window was closed, we opened the public minting up, which was limited to 10 mints per wallet. This shot from about 900 minted to 2500 minted in a matter of minutes. The next step was the tokenized minting process, which was as follows…

  • 2500–4000: 1 $HGH
  • 4000–6000: 2 $HGH
  • 6000–8000: 3 $HGH
  • 8000–10000: 4 $HGH
Matic Mike minting process and burn rerolls.
Minting & Burn Rerolls, as well as the Inject Button

We also opened up burn rerolls at the same time, and this is where the fun began. Over the next 8 hours, our holders managed to burn off over 7000 Mikes in attempts to get rarer trait Mikes. With the low transaction cost of Polygon, we had users burning some very rare traits in an attempt to generate even rarer traits.

During this time we also had an optional donation mint of 50 MATIC in case users missed out on the mint and wanted to join in on the burning fun. A handful of addresses donated. This money was put directly into streamlining our Etherscan and Polygonscan token information page with a priority pass. Although the burn rerolls pushed the mint fast, we did have some users take advantage of the tokenized minting with $HGH, which we’ll explain how it was earned.

The Gym — Staking & Earning $HGH

In the previous section we spoke about tokenized minting, but in order to take advantage of that, you needed our ERC20 token, $HGH. So let’s go over how our holders earn their $HGH.

Our storyline is that Matic Mike loves to pump iron and hit the gym to keep his physique in tip-top shape, as well as prepare himself for the dance battles and taking down his evil bosses that steal all of his tips. To put this story into action, we created the gym, which is essentially the interface for the $HGH contract where you send your Matic Mike to earn copious amounts of $HGH.

You can visit our gym page here, which is our interface to interact with the $HGH contract and stake your Mikes.

Mikes staked in the gym earn $HGH at a rate of 1 $HGH over the course of 24 hours, per Mike staked.

We have a limit set of 10 Mikes being staked at a time per wallet, however, expansion projects will also allow users to stake an NFT within the Matic Mike family in the gym to earn $HGH as well, at a different (lower) emissions rate.

To allow access to the gym, you’ll need to first click on the “Allow Access to Gym” button as shown in the image below. This allows the $HGH contract to hold onto your Mike while he earns $HGH. Don’t worry, you can still participate in the PvP Dance Royale contract while your Mike is in the gym, which we’ll get into later in this article.

Allowing access to the gym.
Allow contract access

Once Mike has access to the gym, you can send individual Mikes to the gym, which will transfer them to the $HGH token contract address, or send all of them to the gym at once, as shown in the image below…

Send Mikes to the gym.
Sending Mikes to the Gym

You will begin generating $HGH instantly and can claim at any time by clicking the “Claim Earned $HGH” as shown in the previous image, or withdrawing Mikes from the gym, as shown above and below.

Withdrawing a single Mike or all Mikes without claiming will automatically add the $HGH earned by said Mike or Mikes to your wallet.

Withdraw individual Mikes from the gym.

This sums up how the gym process works along with our interface on how to interact with it. Now that we have that out of the way, let’s get into a few of the current uses of your $HGH token.

ERC20 -> ERC721 Token Injection, Pumping Mike full of Juice!

Our first use case of $HGH is a fun one. Mike has the ability to evolve over the course of time, all on chain, by slightly changing his DNA code. Every Mike has their own unique DNA code, which is used to generate their traits that the data contract encodes and sends back the metadata and encoded image file to the main Matic Mike contract. We created a process, which we named “token injection” which allows you to burn off a globally set amount of $HGH for a small chance to upgrade a random trait, modifying his DNA code and increasing his overall powerlevel.

Before we get into how all of this works, let’s first make sure we allow our Matic Mike contract to use the $HGH you’ve been earning in the gym. You can do so by clicking “Allow Access to HGH” on the main page, which is also where token injections take place.

Allow Access to HGH
Allow Access to HGH

Once this transaction has been approved, you’ll be able to inject your Mike. The process of injecting your Mike is somewhat simple. Injecting will burn off the current price for injection, and generate a random number, utilizing Chainlink VRF. This random number must fall within a range that equates to about a 5.5% chance for a successful upgrade to occur. Our code will then select a random trait and move it 1–2 rarities up. You still cannot have the same DNA code of any other Mike.

Injecting your Mike
Inject your Mike

To inject your mike, all you need to do is click “Inject $HGH.” It will take about a minute on average for the transaction to be approved, and for chainlink to send back the random number to the contract. You’ll notice a change in your Mike if the injection was successful, as well as an increase of injection price by a cost of 3 $HGH. This is global for every user to preserve rarities and keep upgrades costly.

A successful injection, in most cases, will also increase your Mike’s power level. Power levels play a significant role in the PvP Dance Royale Contract we released on 11/4/21 which we’ll get into next. They will also play a role in fighting battling Boss NFTs in an attempt to steal their loot.

All injection attempts, whether successful or unsuccessful, burn $HGH equal to the current cost per attempt.

PvP — Welcome to the Dance Royale

As mentioned earlier, 2 weeks after our initial launch we launched our Dance Royale contract, a 50 man (adjustable) rolling queue system that costs 1 $HGH per entry and pays out the pot to 1st, 2nd and 3rd place. The Dance Royale contract has it’s own interface for queuing, as well as a live dance, results page, individual Mike stats, and your rosters stats. We’re also in the process of creating a leaderboards discord command and a leaderboards page.

Enter the Royale

Let’s start with the queuing system. As stated, to enter the dance royale it’s going to cost you 1 $HGH per Mike you select to enter into the dance. This 1 $HGH is sent to the contract, and stored in the pot for the current royale. There is an optional “Juice Up” feature in which you can select 1–5 additional $HGH to increase your Mike’s power level by 1–10 per additional $HGH spent. This optional $HGH is burned from the circulating supply.

Queue up for the dance royale.
Queue up for the Dance Royale

You’ll notice in the screenshot above, the queue is not 50, but 15. This is due to logic within the contract that reduces the queue size down to a minimum threshold if a certain amount of time passes without a dance royale contract filling (currently set to 30 minutes, with a minimum threshold of 15 Mikes). This is to keep queues rolling and not let the users have to wait a very long time for the dance to begin. Once you enter your Mike, a “Watch Live Dance” button will appear.

You can only enter your Mike once per dance, but you can enter as many unique Mikes as you want into the dance.

Watch the Live Dance and Replays

Every Mike entered into the dance gets their own random number generated by Chainlink VRF. This promotes total fairness while still giving a slightly higher chance to win based on power level. The contract is linked at the start of this article for those wanting to dig deeper into the algorithm.

Watching the live dance and dance replays are pretty self explanatory, so instead I’ll just link an image as well as a link to the live queue.

Screenshot of the live dance
Let’s dance!

The end result will payout the winners…

  • First Place: 70% of the pot
  • Second Place: 20% of the pot
  • Third Place: 10% of the pot

The $HGH will be sent directly from the contract. The analytics are generated and stored for the previous dance by the first person in the next royale queue.

The results
Results Page

You can see a history of all previous dances on the queue page scrolling down past the enter royale queue.

Individual Stats Page

Every tournament entered is stored on an address and token basis, meaning we can generate analytics for both addresses as well as individual tokens. This will help in our future contracts which will allow naming your wallet (name your club) and having a custom uri slug on our website. This will allow you to see overall stats for your club, as well as individual stats for each of your tokens. The purpose of this is to flex your ability as a club owner to put the right Mikes in for dance, and still retain those stats if you were to sell your Mike off to a new owner.

Although the name your club contract is not yet integrated, we do have the individual token stats integrated. Each Token has stats like dances entered, total $HGH earned over their lifetime, placement %, and their placements. It also has links to replays of every dance they have ever entered.

individual stats page
Individual Stats Page

My Stats

The my stats page also allows you to see each of your Mikes individual stats, however this page will be updated to show your entire club stat history by wallet address as well. This will be implemented with the “Name Your Club” contract mentioned earlier.

My Stats Page
My Stats page

Leaderboards

Within the next week we’ll be integrating the discord leaderboards command as well as a leaderboards page on the website which allows you to fight for the top spot. Point values will be assigned as follows

  • 3 points for every first place finish
  • 2 points for every second place finish
  • 1 point for every third place finish

We will also allow sorting by first place rate, second place rate, third place rate, placement rate, lifetime purse.

Wrapping Up

Discord Bot Commands

Before we finish here I should quickly give the commands of our discord bot that integrates web3js and directly communicates with our contract to provide some useful information we don’t have displayed on the site.

/supply

/supply command returns Mike and $HGH supply

/powerlevel {id}

/powerlevel {id} returns power level a specified Mike

/snapshot {id}

/snapshot {id} returns a snapshot of the MetaData and a link to the OpenSea URI

/peek {address}

/peek {address} returns all tokens both staked and unstaked belonging to an address

Closing Statements

This was a basic overview of the first 2 weeks into our project. We’ll be writing another article on what you can expect to come, but the best way to stay informed is by joining our discord and checking the announcements and roadmap channels. We will be releasing our PvE Evil Club Owners NFT soon, so get your Mikes while you can because every new release will require your Mike either directly or indirectly, and a whole lot of $HGH.

Hope this article was informative, and if you want a deeper understanding on what we have done to get to this point, you can watch the 25 minute technical overview listed at the start of the article we made for the Chainlink Hackathon we are submitting the project to this month.

--

--

Mike Dev

Matic Mike is a 100% on-chain NFT on the Polygon chain w/ Eth bridge. Unique ERC20->ERC721 injection, PvP, PvE, staking, summoning, wallet wide buffs & more.