It is the year 2021:
Humans have invested relentlessly into NFTs, which have no practical use. The craze is insane and everyone wants and needs NFTs. In order to find out who is the ultimate master of all NFTs, humans started longing for a proper way to determine their ultimate champion.
AND SO THE IDEA OF NFT ARENA WAS BORN.
CRAFT MIGHTY WEAPONS
EQUIP YOUR NFTs
FIGHT EPIC BATTLES WITH YOUR NFTS
earn sweet coins by winning!
What it does
With Crowdcontrol NFT Arena you can transfer your NFTs from other chains to our chain (currently IBC is not yet supported by Pylons, so you have to use the famous "right click and save as"-method to transfer your NFTs).
Once the NFT has arrived on our chain, you can equip it with armor and weapons which can be crafted and enchanted with random properties so that your fighter has an edge over all others!
When your NFT fighter is ready and equipped, you can go to the Arena and find a worthy opponent.
As soon as an opponent is found – an epic battle unfolds and THERE CAN ONLY BE ONE.
Winning a battle earns you coins, which makes it possible to craft more weapons and armor.
Why it make sense
For Blockchains it is often very attractive to accumulate external value (TVL is a thing). The NFT Arena concept gives owners of NFTs a very good reason to move their NFT onto the Pylons blockchain and let it fight. Through winning battles and participating in tournaments the NFTs can earn badges and become famous fighters which further increases their value. It also allows stories about them to be created and posted on Twitter and Reddit. It is far more interesting to have a fight between a Cryptopunk and a Cryptokittie than just observing their images. IBC makes it possible to turn this vision into reality.
How we built it
- We fork Pylons blockchain and add an Arena functionality to it. The Arena allows to enlist for battle and automatically matches 2 fighters who are enlisted on the same cookbook (playing the same game)
- We deploy a cookbook and recipes as intended by Pylons to our running chain. These recipes include the properties of the items.
- We generate a Vue frontend with Starport.
- We code the design created by our designer into the Vue frontend.
- We go through endless DevOps pain to make these parts available on a public domain.
Challenges we ran into
- Pylons blockchain not open source
- Starport failed with node-sass before version 18.4, luckily this version came out in the first week of the Hackatom
- Starport generated vue spamming HTTP requests (wrong .env file fixed)
- ran into a few bugs of pylons (indexOutOfBounds, weights not properly working), reported, were fixed by the Pylons team
- We are not a android/ios dev team (cosmos sdk, web), so we cannot use flutter and need to find another way => Vue frontend
- Wrong Sequence. In many occasions txs were no longer possible because of wrong sequences. An obvious situation was firing too many tx from the browser in short succession. We tried several fixes like waiting for the response first and could fix most issues here.
Accomplishments that we're proud of
- Brainstorming this idea and finding a way to combine the Pylons blockchain, external NFTs with Gamification, Individualization and cross-blockchain functionality.
- Forking the pylons blockchain and expanding its functionality, finding 2 bugs in the upstream repo and getting it to work.
- Getting the Vue frontend generated by Starport to run, which still has some bugs and comes with roadblocks. For example the Gas fees are hardcoded, so we had to find the values in the generated source files, because 2 of our Txs need more gas. This bug has been reported in the Starport Discord.
What we learned
- The new Starport is exceptionally mighty. Generating the proto stuff for CosmJS is awesome. Signing Tx with a Browser was real horror in the past. Now it is very easy, once you get it to work.
- Pylon makes creating game mechanics that only involve you and your items remarkably easy.
What's next for CrowdControl NFT Arena
More features were brainstormed but cannot be build in the short timeframe of the hackatom. These include:
- The Tokenomics were designed and implemented on the consumption side, this means tokens are used when crafting and enchanting, but the supply side was not implemented. This meas fine tuning the initial amount of token given on account creation and the rewards given for won battles. We decided to just give a big amount of token on account creation, so that players trying it out are not blocked by not having coins, until we have everything fine tuned.
- Tournaments, where NFTs can be used as prize money and/or entry fee.
- More complex item enchantments. Currently enchantments only increase the base stats of items, but with our combat system we would also like to have effects such as poisoning, freezing effects, stunning and many more.
- IBC of course. Besides being entertaining, the main aspect which gives value to this project is that there is a perfect reason for users to transfer their valuable NFTs to our cookbook/the pylons blockchain. By moving real NFTs on the blockchain users can further enrich the value of their NFTs because they are then winners of many battles and tournaments. This also gives more individuality to NFTs, just imagine a Cryptopunk that is famous for many battles wielding 2 blood-smeared Axes.
- Make it possible to export Fighters via IBC or internally in Pylons so that other games can use an equipped NFT Figther for their game.
- World Domination (Q3 2022).