Introducing Hive Roshambo — 1v1 Rock-Paper-Scissors on the Hive Blockchain

Play now at hive-roshambo.com
I've been building something fun and I'm excited to finally share it. Hive Roshambo is a 1v1 Rock-Paper-Scissors game where you wager real HIVE tokens against other players. It's fast, it's fair, with on-chain HIVE settlement.
The idea is simple: pick Rock, Paper, or Scissors, lock in a wager between 0 and 5 HIVE, and wait for someone to accept your challenge. The moment your opponent commits their move, the server instantly decrypts both choices and declares a winner. No waiting, no multi-step reveals, just instant results.
All wagers are sent to the escrow account @roshambo-escrow. Winners take home 95% of the total pot. 3% gets burned by sending it to @null. The remaining 2% goes to the platform treasury account @kemantapan. And if it's a draw, both players get a full 100% refund with zero fees deducted.
There's also a free play mode at 0 HIVE for anyone who wants to try it out without putting tokens on the line.

When you pick your move, your browser generates a random salt and encrypts the entire payload using the server's public key via the Web Crypto API. Only cipher-text ever travels over the network. Your plaintext choice never leaves your device. The Convex backend holds the private key in a secure environment variable and only decrypts both moves simultaneously the instant Player 2 commits. Standard Rock-Paper-Scissors logic runs in the same server tick. There's no window for anyone to peek at the other player's move.
To deal with griefers, the backend runs a cron sweeper every 60 seconds. There's a payment lock pattern that atomically reserves the match before the wallet popup even opens, preventing race conditions. If the challenger abandons the wallet popup, the lock releases after 2 minutes and the match goes back to the open lobby. Stale lobby matches that sit untouched for 24 hours auto-cancel and refund.

For the tech-curious, here's what's under the hood:
- Next.js 16 with React 19 and TypeScript for the frontend
- Tailwind CSS 4 and shadcn/ui for styling and components
- Framer Motion and canvas-confetti for animations and win celebrations
- Convex for the real-time backend — WebSocket-based state sync, no polling
- Web Crypto API (RSA-OAEP) for asymmetric encryption
- @hiveio/dhive for reading balances and broadcasting escrow payouts
- Hive Keychain for desktop wallet signing
- Deep Links (
has://) + Hive Auth Server for mobile wallet integration - Railway (frontend) + Convex Cloud (backend) for deployment
The escrow payout engine runs as a Convex internal action. When a match finishes, the backend automatically broadcasts the HIVE transfers — winner payout, burn, and platform fee — all server-side via dhive. For draws and cancellations, it handles full refunds the same way. There's also a pre-flight health check system that verifies Convex connectivity and Hive node status before any transaction. If anything is degraded, action buttons get disabled with clear messaging so nobody accidentally sends HIVE into the void.


I want to give a huge shoutout to @coldbeetrootsoup and @beggars — their work on Hive app development was a massive inspiration for this project. Watching what they've built showed me what's possible when you combine creative ideas with the Hive ecosystem, and Hive Roshambo is my attempt to add to that energy.
This entire app was vibe coded using the BMAD Method (Build More Architect Dreams) — an AI-driven agile development workflow. From the PRD to architecture to sprint planning and execution, every piece was designed and built through structured AI-agent collaboration. It kept me organized, helped me ship fast, and maintained quality across what ended up being a surprisingly complex full-stack plus blockchain integration.
Looking ahead, it would be great to add support for Hive-Engine tokens, and to add more features like bracket-style tournaments with prize pools, and social features like in-game reactions. I'm also considering open-sourcing the codebase so the community can audit the escrow logic and contribute.
If you want to give it a spin, head over to hive-roshambo.com. (Note: For the most convenient mobile experience, logging in directly via the Hive Keychain app's built-in browser is highly recommended!) Feedback, bug reports, and challengers are all welcome.
I'm super-excited for the future of HIVE, especially when I see ordinary people stepping out, and launching these small games, testing the waters... I know these are just small steps, but it shows just a glimpse of much stronger possibilities...
Keep creating things like this, and who knows what you can achieve... Maybe next Splinterlands, or Warcraft on HIVE? 🙂
PS. At one moment, I got an error from your hosting:
It looks like you will need a stronger machine... :)
I have picked this post on behalf of the @OurPick project! Check out our Reading Suggestions Posts!
Please consider voting for our Liotes HIVE Witness. Thank you!
Haha. Thanks. Super fun developing things like this, especially in this AI era.
Thank you for spotting that error!
Really nice work man. Nice to see other people creating awesome little games for Hive. It's a whole thing now and I want to see it catch even more.
Thanks! Yeah I hope more and more people will create mini apps on Hive. AI slop at it best haha
That looks cool!