This project is a game that leverages NFTs from another game, Aavegotchi and uses them to battle against each other in an arena kind of like Pokemon-style. Aavegotchis can equip wearables so it would be very fun if equipping different wearables would give them new battle abilities in this game. This is a proof of concept game that I would like to extend to add other NFTs that you could add - I think the interoperability of fighting one group of NFTs against another would be pretty fun!

Aavegotchi Arena showcase

How it's made

This project is built in Unity using Moralis to Authenticate the User as well as provide a way to save the user's battle loadouts, keep track of how many battles the player has won and lost and player scores. Moralis makes saving and loading data super easy, making it ideal for any database related needs. Once a player's loadout is loaded from moralis, I'm use The Graph to quickly get the aavegotchi details that we need using custom queries (this could have also been done using moralis cloud functions, but haven't tried this in unity sdk yet). Aavegotchi's use SVG's, but Unity does not handle this format very well (tried the svg package and got bad visual results) so I grabbed the required data from the Aavegotchi diamond contract using ethers.js and converted all the SVG's to PNGs and layered them all in Unity, similar to how its is being done on-chain. I focused on the mechanics and functionality to make sure there was an actual "game" so the art is pretty lacking!