Inspiration

Ethernaut
Capture the Ether

What it does

0xBADAC1D is a CTF (capture the flag) hacking game.
The protocol is split between Ethereum L1 on one hand and xDAI (with other chains and L2s to be added) on the other.
On xDai, players complete on-chain puzzles and bridge the completion of those levels to Eth.
On Ethereum there are 2 types of generative NFTs, one for players, and another for level creators.
Player NFTs collect on chain badges as levels are completed. Creator NFTs entitle creators to weekly treasury emissions. Royalties from NFT sales accrue in the treasury, and more difficult levels earn creators more.

How we built it

Tools:

dapptools for smart contract development and testing
nodejs and jupyter notebooks for modelling incentives
nodejs for creating generative NFTs gifs

Architecture:

immutable NFT contract (to be deployed using create2, at address 0xBADAC1D...)
upgradable contracts for: Controller, Treasury, Distributor on Eth
upgradable LevelController on xDai

Challenges we ran into

Frontend proved to be a hassle and was not completed

Accomplishments that we're proud of

Commit-reveal pattern for minting the NFTs
Proof of work bonding curve for minting NFTs, increasing distribution while maintaining affordability
Using the xDai-Eth arbitrary message bridge

What we learned

Modelling tokenomics of smart contracts in a jupyter notebook.

What's next for 0xBADAC1D

Build a functioning frontend
Deploy to mainnet
Integrate NFT marketplaces
Promote on CT

Built With

Share this project:

Updates