A Roman-themed metaverse game. Players complete mini-games to earn COMMODITY tokens, which are burned to CRAFT in-game NFT items.
Romeaverse is a roman-themed metaverse game. Players complete in-game jobs (mini-games) like soldiering, mining, and farming to MINT commodity tokens: IRON, WOOD, WOOL, LEATHER, and GRAIN. These ERC-20 commodity tokens can be burned to craft unique NFT items that can be worn and used in-game. Some items are aesthetic. Other items help players complete in-game jobs. Ultimately, I'd like players to be able to design and customize these craftable items. I hope to create a real economy around the game. I would like this economy to be governed by a DAO. In my mind this gaming experience is successful if it extends beyond the computer and resonates in the players' real lives.
I built this game using the ImpactJS game engine, an html5/js game engine written in pure javascript. I used the Web3JS plugin to connect to wallets and make calls to smart contracts. I developed an API using PHP and a MySQL database. The API is connected to a Chainlink oracle on the Kovan testnet. When players go to the in-game bank and try the MINT their ERC-20 commodity tokens, they make a call to a smartcontract. The smartcontract asks an oracle to make a GET request to our server, which asks if the account has the rights to mint the amounts of tokens that they are requesting. If this is true, the API returns a TRUE variable which grants the mint request. This project would not be possible to create without Chainlink. There is no way for me to get the server data into a smartcontract without it.