frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: Snaketron – Competitive multiplayer Snake. Back after 14 years

https://snaketron.io
4•lopatin•1h ago
Hi HN, I just completed a rewrite of Snaketron, a competitive multiplayer Snake game. (Yes, yes, in Rust)

A quick funny story about this game's history:

Back in 2012 I had (poorly) implemented the first version of Snaketron. The issue with it was that I was keeping game state on the client, and while I did realize that it was insecure, I also had no idea what to do about it without increasing latency to unplayable levels. I was still in school, never worked on games, and haven't even heard of the term "netcode" before. The excitement of releasing my first pet project got the better of me, and I placed this security concern in the "theoretical issues" bucket, and shipped it.

No one would even notice, and if they did, they wouldn't take the time to break into my little Snake game project, right?

WRONG! Hacker News absolutely lived up to its name. While I was busy with my first experience of handling a traffic surge, scaling up my database and fixing bugs, several players found the security holes and were beginning their Snake rampage. Reports were coming in of unkillable snakes so I decided to start up a game to see if I could catch it.

I loaded a 1v1 and my opponent was ... space invaders. My snake was a snake. Their "snake" was a rendering of the game Space Invaders. Needless to say they were also moving around and were invincible. I really wish I had taken a video of that, but I was floored that HN not just played, but hacked, my project is such an epic way.

I always wanted to rebuild it properly, so here's V2! The architecture and motivations are quite different this time around.

First, the state is server authoritative and lag is compensated for by client-state prediction. The game engine is written in Rust and compiled to WASM for the client side library.

To minimize the ops burden, I also imposed a strict resiliency requirement on this project: it must be auto-scalable. So a node can join the cluster and live games will rebalance to it without disrupting gameplay.

I also tried to make the new Snaketron a little more fun. The core mechanic is still, like classic Snake, collecting food without crashing. But now team matches have an objective to make competitive games more structured. There's also a Bronze to Grand Master ranking sub system (if enough people play, calibrating this will be interesting) and some fun features like boosting, combos, skins, and Play Of The Game detection.

On Rust: One of my original goals for doing this in Rust was so that I could learn the language. That didn't work out as well as I thought it would. Usually I learn by building stuff, but AI got so good that I stopped writing code by hand and preferred to spend my nights & weekends working on what was more intereting to me than borrow checking errors: game design and the high availability stuff.

On AI: Who knows if this would have gotten done without AI. Probably not, what with my day job and other things going on in life. It's 200k LOC (most of that is tests don't worry) but still.

Anyway, here are the project links. Thank you for reading, I hope you enjoy the game and any feedback is very much appreciated!

[0] https://snaketron.io

[1] https://github.com/lopatin/snaketron

[2] https://news.ycombinator.com/item?id=4028597 (original post from 2012)

Estimates of Global Burden of Snakebite

https://journals.plos.org/plosmedicine/article?id=10.1371/journal.pmed.1005201
1•bushwart•17s ago•0 comments

Zero Trust in someone else's environment

https://byocanywhere.org
1•aloknnikhil•20s ago•0 comments

PlateChat

https://talkwithlicenseplates.vercel.app/
1•mayankm•25s ago•1 comments

An 'old school' San Jose barber is now teaching robots to cut hair with AI

https://abc7news.com/post/heres-old-school-san-jose-barber-taiyadi-magic-day-is-now-teaching-robo...
1•ChrisArchitect•3m ago•0 comments

Everything's broken and nobody's upset (2012)

https://www.hanselman.com/blog/everythings-broken-and-nobodys-upset
1•chrisjj•5m ago•0 comments

MIT AI Report Calls for Alternative Grading, More Social Learning

https://www.insidehighered.com/news/tech-innovation/artificial-intelligence/2026/08/28/mit-ai-rep...
1•hn_acker•6m ago•0 comments

The Evolution of the Agent Harness

https://www.latent.space/p/attention-interface
1•wslh•7m ago•0 comments

An Implementation of Scheme in Rust

https://github.com/vinay/rscheme
1•vmmenon•8m ago•0 comments

What Dolly, then AL97, taught my weather site about wind gusts

https://dewedda.com/blog/one-year-of-de-wedda-and-the-week-that-taught-it-the-most
2•ashitlerferad•9m ago•1 comments

The Reverse Information Paradox (Satya Nadella)

https://snscratchpad.com/posts/reverse-information-paradox/
2•adletbalzhanov•11m ago•0 comments

Gram Editor 3.3.0 Released

https://gram-editor.com/posts/release-3.3.0/
2•birdculture•19m ago•0 comments

Evaluating Skills, Not Just Agents: Agentic Continuous Evaluation of Skills

https://arxiv.org/abs/2608.20614
4•swolpers•19m ago•0 comments

12TB Steam leak reveals unseen Half-Life 2: Episode 3 builds

https://www.tomshardware.com/video-games/pc-gaming/massive-12tb-steam-leak-reveals-decades-of-unr...
4•sbulaev•22m ago•0 comments

Show HN: I filtered August Who is Hiring to 19 $100k+ remote jobs, salary listed

https://www.commitasync.com/
1•lucianh•22m ago•0 comments

Elegant scientific graphs: Learning from examples

https://www.royfrancis.com/elegant-scientific-graphs-learning-from-examples/
1•jruohonen•24m ago•1 comments

DuckDB and the Burdens of Success (With Hannes Mühleisen) – Developer Voices [video]

https://www.youtube.com/watch?v=C3l4CsP1Ak0
1•abhijeetpbodas•24m ago•0 comments

Airlink's low flypast over Rugby match in Cape Town

https://www.flightradar24.com/blog/flight-tracking-news/special-event/airlinks-low-flypast-over-r...
2•TechTechTech•25m ago•0 comments

Show HN: CardGo – Reusable, end-to-end encrypted context cards for AI chats

https://cardgo.ai
2•trinhngocdieu•25m ago•0 comments

Coordination Headwind: How Organizations Are Like Slime Molds

https://komoroske.com/slime-mold/
5•rzk•25m ago•0 comments

Poll: What will a better LLM do for me?

2•Zigurd•27m ago•0 comments

Haiku R1/beta6 has been released

https://www.haiku-os.org/news/2026-08-26_haiku_r1_beta6
26•metrofun•28m ago•3 comments

Mechanical Panda's Scanning Tunneling Microscope (STM)

https://github.com/MechRedPanda/red-panda-stm
2•rickcarlino•28m ago•0 comments

Omarchy: Any User Process Can Escalate to Root

https://0xcc.io/posts/omarchy-root-creds/
4•trap0xcc•29m ago•0 comments

Sword swallowing and its side effects (2006)

https://www.bmj.com/content/333/7582/1285
3•bookofjoe•30m ago•0 comments

Oscilloscope app written in Rust with bevy game engine

https://github.com/serjster/neowon
2•serjts•30m ago•1 comments

Startup Anti-Patterns

https://www.itamarnovick.com/intro-to-startup-anti-pattern-series/
3•rzk•31m ago•0 comments

Show HN: BentoPDF, Hyper Compress and Kura

https://www.bentopdf.com
3•__alam__•32m ago•0 comments

Takeaway cups release microplastics into your coffee

https://news.uq.edu.au/2026-08-takeaway-cups-release-microplastics-your-coffee
3•geox•33m ago•0 comments

Extinction events happen every 100M years or so

https://twitter.com/elonmusk/status/2094077799719993646
2•tosh•34m ago•0 comments

Ceramic 2.2

https://ceramic-engine.com/blog/ceramic-2-2/
1•gr4vityWall•36m ago•0 comments