Inspiration
I’ve been deeply connected with the entire Age of Empires community since my childhood. The game pretty much helped me form my entire online friend circle. I even met some really talented people who built several apps on top of it utilizing the game’s API to provide real time stats of in-game components, civilizations and matches. I also saw many talented digital artists who made several artworks related to the game. Seeing the community for such an old game still so active inspired me to build something that can help it grow more.
As a dapp developer, I came up with the idea of creating an NFT platform dedicated entirely to Age of Empires and will essentially provide us a way to incentivize the community that’s putting in so much effort and hardwork in it.
What it does
I first started off with looking into some other famous NFT marketplaces and projects and quickly realized that how they are not fit for Age of Empires as:
This game is vast and has so much potential for NFTs. It has different types of units, civilizations, special units, Heroes, campaigns and a different style of architecture for each civilization and age. Having these many categories in a public NFT marketplace is almost impossible to implement. Having an exclusive NFT Marketplace dedicated to it will allow us to have a whole different space to play around and add new things that can interact directly with the game.
How I built it
Age of NFTs is an open platform where each user can mint his own AOE NFTs and can list them on the marketplace by making an offer or buying an NFT from others.
The project includes:
A basic ERC-721 standard smart contract to represent a collection of NFTs
A smart contract for the marketplace which contains all the logic to list, buy NFTs.
A React.js frontend
This interface, built with React.js and Chakra UI, relies on the web3.js to communicate with the smart contracts through Metamask. I used Truffle and Ganache to deploy the contracts locally on my machine.
I have also deployed the contracts on the OEC Testnet using Remix
The whole project is deployed on Ropsten for now with the help of Infura node. The project will be migrated to OEC Testnet as soon as I get my OEC Testnet node setup.
The React Frontend is hosted on vercel.
For IPFS, I’ve gone with Infura here too. The NFT Metadata will be uploaded to the IPFS, creating a permanent hash which will be permanently recorded on the blockchain itself.
The user can Mint and upload new NFTs, Make offers, Cancel offers, Buy and Sell easily.
After selling the NFT successfully, the user can simply claim his funds from the claim button directly to his wallet.
Challenges we ran into
The biggest challenge for me was to make the platform as simple as I can. The people from the community will be everyday gamers and artwork designers. I had to make the platform simple enough to get them started with the NFT space.
The other big challenge for me was to get a local OEC testnet node set up on my machine. It took me some time but I was able to get it right. I also planned to run my own node for transactions as we don’t have a service like Infura for OEC Mainnet/Testnet. For now, I got the whole project setup on Ropsten but it will soon be migrated to OEC Testnet and then to Mainnet.
I also had to make sure that there won’t be any platform fee for anyone, and that’s the beauty of OEC. The network fee is almost negligible making it more accessible for new people to hop on
What's next for Age of NFTs
I have planned a long journey for the project. Running the OEC node on my end will let me experiment with a lot of stuff. I am working on a module that will connect to the Age of Empires’s API and can essentially link and fetch a user's profile directly from his account. This whole thing is work in progress
I will also be making a whole video series for the community members to buy the OKT Tokens from OKEx Exchange and then deposit them on metamask to start using the platform.
I also have ideas to make a betting module where people can bet on matches between top rank players.
Log in or sign up for Devpost to join the conversation.