u/No_Construction_7091

Built a skill-based game on Solana — Anchor pool + Privy session signers + server-authoritative settlement. Looking for an architecture review.

Solo dev, 6 weeks in. Built a slither.io-style multiplayer game where players buy into a room and cash out winnings in SOL. Devnet for now, mainnet once it's solid. Wanted to get the architecture in front of people who've actually shipped on-chain because there are a few decisions I'm not sure about.

The on-chain flow:

  • Player joins a room → buy-in escrowed in an Anchor program (one program holds the pool + settlement logic)
  • Game runs server-authoritative (Rust, 60Hz tick) — the server is the only source of truth for position, score, kills
  • On cashout, the server signs a settlement instruction; the program pays out the player's share minus a flat house fee
  • Privy handles auth + embedded wallets (email/Google sign-in, no seed phrase). Session signers let players act without popping a wallet modal mid-game — this is the part I'm happiest with
  • Treasury is split hot/warm/cold; hot wallet only ever holds float for in-flight settlements
  • All balance mutations are idempotent + guarded by Postgres advisory locks so a flaky network can't double-credit or double-charge

Where I'd genuinely value feedback:

  1. Single program vs. split. Right now one Anchor program holds the pool, settlement, and fee logic. Is there a real benefit to splitting into separate programs (pool / settlement / fee distribution)? Upgrade authority and blast radius are my concerns.
  2. The settlement trust boundary. Game state is server-authoritative, but the settlement instruction the server signs is what hits chain. If the server key leaks, an attacker drains the pool. How are people hardening this? Multisig on settlement? Threshold sigs? A challenge window?
  3. Session signers in practice. Using Privy session signers for gasless play. Anyone hit footguns with session key rotation / revocation at scale?
  4. Treasury sweep cadence. Hot→cold sweep is on a timer right now. Event-driven (sweep when hot balance crosses a threshold) feels better but adds complexity. What's the standard here?

Transparency: devnet only, no token, no presale, no NFT mint. The game token is SOL. EU-based operator, working the licensing side before mainnet (iGaming is real, not pretending otherwise).

Live devnet demo + a sample cashout tx in the first comment. Anchor source isn't public yet but happy to walk through any specific part of the design.

reddit.com
u/No_Construction_7091 — 2 days ago

Snekrush — slither.io clone with a faster server, free to play, EU + desktop

Hey r/iogames — built a slither.io-style game over the last 6 weeks. Mouse to steer, click/shift to boost, eat orbs and other snakes' corpses to grow.

What's different: rewrote the multiplayer netcode from scratch so it stays smooth even with ping spikes — slither's biggest weakness imo. 60Hz server tick, no rubber-banding.

Free, no install, sign in with email/Google in 5 seconds.

Play: snekrush.com

Desktop only for now, EU server (US coming). Mobile broken — don't bother on phone yet.

Looking for feedback: does the movement feel right?

EDIT: you can get test tokens for the devnet wallet on https://faucet.solana.com/ - these are TEST tokens only

reddit.com
u/No_Construction_7091 — 3 days ago

Snekrush — multiplayer browser snake battler, looking for testers

Game Title: Snekrush

Playable Link: https://snekrush.com

Platform: Web (browser, desktop)

Description: Snekrush is a multiplayer browser-based snake battler in the slither.io tradition. You steer a snake with your mouse, eat glowing orbs scattered across the map to grow longer, and use a boost (left-click or shift) to outmaneuver opponents — boost costs length, so it's a real tradeoff, not a free button. The win condition is simple: ram your head into another player's body to kill them, then eat their corpse for a big growth payoff. Rounds run 1-3 minutes in a shared persistent lobby and you respawn instantly when you die.

What I think makes it different from other slither.io clones is the netcode. I rewrote the multiplayer layer in Rust with a 60Hz authoritative server tick and adaptive client-side interpolation, so movement stays smooth even at 80ms+ ping. Most clones I've tried feel laggy or rubber-bandy — this one shouldn't. The renderer is Pixi.js with a procedural body texture instead of sprite sheets, so snakes shade dynamically as they move.

Currently desktop-only on an EU server (US server coming). Sign-in is email or Google, takes 5 seconds, no password.

Free to Play Status:

[x] Free to play

[ ] Demo/Key available

[ ] Paid

Involvement: Solo dev. Designed, built, and deployed everything — backend (Rust), frontend (TanStack Start + Pixi.js), netcode, infra, the lot. 6 weeks of work so far.

---

What I'd love feedback on:

  1. Movement feel — turn-rate is tuned to match the original slither.io math, but I've stared at it too long to tell if it's actually right. Stiff? Twitchy? Just right?
  2. First-time experience — when you land cold, is it obvious what to do? Where do you get confused?
  3. Visual readability — can you tell at a glance which snake is yours, who's bigger, where danger is coming from?
  4. Anything broken or unfair — boost felt useless? Death felt cheap? Server lag spike? Tell me bluntly.

Already on my fix list:

- Mobile is broken — don't bother on phone

- US ping isn't great yet — EU is best

- A bit of menu polish still rough

Thanks for any time you spend on it.

Heads up — devnet tokens: there's a payout layer running on Solana devnet for testing, so you'll see a "Balance" and "Cashout" UI in the lobby. It's all devnet tokens, no real money, no risk, no crypto knowledge needed. Sign in, get some test tokens, ignore the rest if you want. Mentioning it here so the UI doesn't surprise anyone.

reddit.com
u/No_Construction_7091 — 3 days ago