A provably fair treasure hunt on Arbitrum, paid in USDG. The hider seals the board on-chain, every clue is checked by Merkle proof, and a lying or vanishing hider is slashed. No trusted server.




Dead Drop is hide-and-seek for money, where the hider can't cheat.
Imagine a hider who writes their secret spot on a card and seals it in an envelope in front of everyone. Hunters search one square at a time, and the hider says how many steps away the treasure is. The envelope can't be changed, and at the end a robot judge (a smart contract) opens it and checks every answer was true.
The problem
Games with hidden information (treasure hunts, battleship, fog of war) normally need a trusted server that knows the secret. On-chain, everything is public, so there's nowhere to hide it. Most solutions reach for heavy tools like zero-knowledge proofs, or give up on fairness.
What we built
A fully on-chain treasure hunt on Arbitrum, paid in Paxos USDG:
The hider buries a prize on a hidden 6x6 board. Only a Merkle root (a sealed fingerprint) goes on-chain, together with the prize and a 50% bond.
Hunters pay a small USDG fee to dig a square. Each dig returns a clue: the distance to the treasure.
Every clue is proven against the sealed root, so the hider can't change the board mid-game.
The UI glows the squares still possible, so you can see the deduction.
The first hunter to dig the treasure is paid instantly.
At the end the hider reveals the whole board. The contract checks exactly one treasure and every clue true. Pass: bond back. Fail or vanish: the deposit is paid to the hunters.
Why cheating doesn't pay
Lie about a clue: caught at the audit and slashed.
Seal a board with no treasure to farm fees: audit fails, and fees are capped so hunters always get at least their fees back.
Ignore a dig: the hunter takes the prize, tips and the hider's bond.
Vanish after the hunt: anyone can slash.
All of this is covered by 11 automated tests, including cheating attempts.
Built with
Solidity and OpenZeppelin (MerkleProof, SafeERC20, ReentrancyGuard), Hardhat, React and Vite, ethers v6. Paxos USDG is the game currency, and the game is deployed on Arbitrum Sepolia and Robinhood Chain Testnet. Alchemy RPC was used for deployments.
Nice touches
A wallet-free Practice round, an Autopilot (a throwaway key that can only answer digs for one hunt, so no wallet pop-up per dig), and an optional keeper bot for hands-free hiding.
Honest limitations
It's an unaudited testnet prototype. A hider must stay online, using Autopilot or the keeper bot, or they forfeit by design.
Everything here was built from scratch during the Buildathon. It was developed with AI pair-programming (Claude), and the work was tested and deployed by me.
What I did
Chose the idea deliberately: I reviewed the project gallery first and avoided the crowded areas (lending, tokenized stocks, agent payments). Gaming and SocialFi looked under-served.
Smart contracts: the Merkle-sealed board, the dig/answer flow, timeouts, a full-board audit and slashing. I added 11 tests, including two cheating attempts.
Deployed on Arbitrum Sepolia and Robinhood Chain Testnet, wired to the Paxos USDG addresses, plus a free test token so anyone can play.
Game UI: a radar-style board with clue colours and glowing candidate squares, a wallet-free Practice round and a network switcher.
Autopilot and keeper bot: hiders don't need to click a wallet pop-up for every dig.
Fixed real bugs found in testing, such as a field name that clashed with a built-in array method and made Autopilot miss digs.
Wrote the README and deployed the live app on Vercel.
Still to do: a security audit and a mainnet launch.
Not fundraising. Dead Drop is a self-funded Buildathon project with no outside investment.
Interested in an Arbitrum grant to cover a smart-contract audit, bigger boards and tournaments, and a mainnet launch on Arbitrum One.