Mystic Kaizer

NFT battle dApp with AI-generated art, on-chain logic, social quests & tradable rewards.

Mystic Kaizer

Created At

ETHGlobal Taipei

Winner of

Celo - Celo L2 Pool Prize

Prize Pool

Project Description

Mystic Kaizer is a gamified social dApp on Ethereum where players mint AI-generated NFT characters and engage in battles, social quests, and event-based experiences. Upon signing up, users receive a randomized NFT with one of four rarity tiers: Common, Rare, Epic, or Mythic. These NFTs are visually unique, created through an AI agent that selects randomized traits, converts them into art generation prompts, and generates imagery via an AI image generator. The resulting artwork is then uploaded to IPFS and minted directly as an ERC-721 NFT.

Only verified organizers can host events on the platform. Players who participate in these events can earn new NFTs, and by adding friends during events, unlock social milestone rewards—for example, every 2 friends added grants a Common NFT, while adding 100 friends earns a Mythic NFT. This system encourages meaningful interaction and community building.

Players can battle with their added friends using a code-based room system. Battles are turn-based, where each player takes turns triggering a randomized attack within their NFT's damage range. All battle logic is executed on-chain for fairness and transparency.

Mystic Kaizer also features a built-in NFT marketplace for players to trade and collect new characters. Beyond gameplay, this dApp serves as a social hub, allowing users to connect with more people and potentially earn small gigs or collaborations through event involvement and community interaction.

How it's Made

Mystic Kaizer was built using a modular, battle-tested stack optimized for rapid development and deep blockchain integration. Here’s a breakdown of the tech and magic behind the scenes:

⚙️ Tech Stack Frontend: Built with Next.js and styled using Tailwind CSS for a responsive and performant UI.

Smart Contracts: Written in Solidity, compiled and deployed using Hardhat. Each key logic module (e.g., battles, events, NFT minting) is separated for modularity.

Multibaas: Acts as our Web3 read layer. We use it for:

Indexed contract events to display real-time on-chain activity.

View function reads via SDK, replacing direct Web3 calls.

Webhooks to trigger backend workflows (e.g., saving a new event to Supabase after creation).

Thirdweb: Powers NFT minting and signature-based interactions for secure asset creation.

Pinata: Hosts NFT metadata (JSON + images) on IPFS for immutability and decentralization.

Celo: Our chosen blockchain, ideal for low gas fees and mobile-first experiences.

Supabase: Serves as our off-chain real-time database and auth system.

Express.js Webhook Server: Handles real-time event triggers and performs post-processing logic (like registering new event contracts in Multibaas dynamically).

🔌 Hacky Highlights Dynamic Contract Indexing: When an organizer creates an event, it deploys a new contract. Instead of hardcoding addresses, we use a webhook to:

Insert metadata into Supabase.

Register the new address in Multibaas with a unique alias.

Link it to the implementation ABI—all automated. 🪄

Composable Events: Events aren’t just simple records—they are actual smart contracts deployed on the fly using an EventFactory, allowing full on-chain state for battles, participation, and reward milestones.

Gasless Reads: All public state reads are handled through the Multibaas SDK, meaning no provider setup, no RPC throttling, and zero gas cost for the frontend.

View Function Batching: We optimized reads by batching critical view calls via SDKs to reduce latency on battle loading screens.

🤝 Why Multibaas Was Essential Multibaas gave us instant contract readability, webhook-driven reactivity, and frontend-native querying. This allowed us to stay fully decentralized on-chain while still moving fast and building dynamic features.

background image mobile

Join the mailing list

Get the latest news and updates