project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4

ShitCoin Dozer

We built a fully on-chain, multi-chain MemeCoin Dozer dapp that allows for global participation in a giant coin lottery. Physics simulation of coins is approximated via an off-chain ML model which can be queried for ZKML proof & verification.

ShitCoin Dozer

Created At

ETHGlobal Brussels

Winner of

ApeCoin - Best Infra project built on ApeChain

Project Description

This project is a Fully On-Chain game which attempts to simulate a coin-dozer machine (but for the entire global crypto at once), by using a machine learning/AI model to approximate the physics engine for a 3D coin-dozer environment. The coin position and state in the "dozer-machine" is recorded on-chain. Users deposit a minimum notional sum of meme coins into a base ERC4626 yearn strat vault which keeps track of First-In-First-Out coin mechanics. Coin sweeps are tracked on-chain by epochs of 2 to 5 minutes. A keeper (or running job) then views the positional "state" of the coins in the vault contract and sends the input to an off-chain AI model to make an inference to "Judge" whether some coins are dropped off as rewards. The inputs are emitted as on-chain Events which can be re-used to verify the "correctness" of the inference job via ZKML (we used EZKL library for this).

Users who deposited at the epoch right before the rewards are then eligible to claim using their minted vault receipt. We also used Pyth's pricing oracles to ensure a notional value of coin deposits by querying for the notional value of each meme coin.

To allow for an even seamless multi-chain degen experience, we added NEAR's cross-chain wallet accounts to allow for easy wallet "switching" within dapp.

We deployed this MemeCoin Dozer game's browser Front-end to vercel and also linked it to a Telegram web-app bot: https://t.me/shitcoindozerbot/shitcoindozer

How it's Made

This project uses EZKL's zkml library to build an off-chain physics game arbiter for the coin-dozer game. The contract that holds the coin deposits is via ERC4626 and base Yearn vault strategies. Pyth's pricing oracle contract is used to query for meme coin notional value so as to enforce an universal minimum notional value per deposit. NEAR's cross-chain wallet account is used to link to AA game wallets for better UX experience. We deployed our contracts to the various chain's testnets below to share our degeneracy:

Base : 0x9d71865290cca388D427807C971fe7f6C364f5B4 Arbi : 0x254aEC4487b08A53c32De73f234574246f1A0052 Scroll : 0x9Db954a49B6Bf304ACc4B5D76c723c1cC9C7E073 Rootstock : 0x9DB954a49b6bf304aCc4B5D76C723C1cC9C7E073 APE Chain : 0x9Db954a49B6Bf304ACc4B5D76c723c1cC9C7E073 Zircuit : 0x9Db954a49B6Bf304ACc4B5D76c723c1cC9C7E073

background image mobile

Join the mailing list

Get the latest news and updates