Case study · Somnia

Somini Fights

A browser PvP fighting game on Somnia. Fighters are NFTs with stats that shift from bout to bout, and every match runs through a matchmaking and wager contract instead of a trusted backend — Somnia's speed is what makes settling a wager on-chain, mid-session, actually feel instant.

Role

Contracts · matchmaking · economy

Chain

Somnia

Platform

Web
Somini Fights

The problem

A wager nobody can audit is just a promise

Casual PvP games with real stakes usually settle off-chain, which means players are trusting a server not to fudge a result. That trust doesn't scale past a small, loyal community.

What we built

Fighter NFTs and a wager contract that resolves mid-session

Each fighter is an NFT whose stats update after every bout. Queuing a match locks a stake in a contract; Somnia's near-instant finality lets the outcome and payout land before the next match even queues.

The economy

The ladder pays out of its own wagers

Payouts are funded by the stakes already in the pool, not by new token emissions — a deliberately different mechanic from Zk Chickens' match-fee model, but the same underlying rule: the economy has to be funded by people already playing.

Stack

SoliditySomniaNext.jsERC-721

Links


Next

UlakUlak

Building something similar?

Send the scope — we reply within 24 hours.

Start a project