Ri

Rivet – Open-source game server management with Nomad and Rust

Hacker News

Rivet – Open-source game server management with Nomad and Rust

Hey HN! Rivet is an OSS game server management tool that enables game developers to easily deploy their dedicated servers without any infra experience. We recently open-sourced Rivet after working on it for the past couple of years. I wanted to share some of my favorite things about our experience building this with the HN community. My cofounder and I have been building multiplayer games together since middle school for fun (and not much profit [1]). In HS, I stumbled into building the entire infrastructure powering [Krunker.io]( http://Krunker.io ) (acq by FRVR) & other popular multiplayer web games. After wasting months rebuilding dedicated server infrastructure + DDoS/bot mitigation over and over, we started building Rivet as a side project. Some interesting tidbits: - ~99% Rust and a smidgeon of Lua. - Bolt [2] – Cluster dev & management toolchain for super configurable self-hosted Rivet clusters. It’s way over-engineered. - The entire repo is usable as a library. Our EE repo uses OSS as a submodule. - Traefik used as an edge proxy for low-latency UDP, TCP+TLS, & WSS traffic. - Apache Traffic Server is under-appreciated as a large file cache. Used as an edge Docker pull-through cache to improve cold starts & as a CDN cache to lower our S3 bill. - ClickHouse used for analytics & game server logs. It’s so simple, I have nothing more to say. - Serving Docker images with Apache TS is simpler & cheaper than running a Docker pull-through cache. - Nebula has been rock solid & easy to operate as our overlay network. - We use Redis Lua scripts for complex, atomic, in-memory operations. - Obviously, we love Nix. - We keep a rough SBOM [3]. - Licensed under Apache 2.0 (OSI-approved). We seriously want people to run & tinker with Rivet themselves. We get a lot of questions about this: [4] [5] Some HN-flavored FAQ: > Why not build on top of Agones or Kubernetes? Nomad is simpler & more flexible than Agones/Kubernetes out of the box, which let us get up and running faster. For example, Nomad natively supports multiple task drivers, edge workloads, and runs as a standalone binary. > [Fly.io]( http://Fly.io ) migrated off of Nomad, how will you scale? Nomad can support 2M containers [6]. Some quick math: avg 8 players per lobby * 2M lobbies * 8 regional clusters = ~128M CCU. That’s well above PUBG’s 3.2m CCU peak. Roblox’s game servers also run on top of Nomad [7]. We’re in good company. > Are you affected by the recent Nomad BSL relicensing [8]? Maybe, see [9]. > How do you compare to $X? Our core goal is to get developers up and running as fast as possible. We provide extra services like our matchmaker [10], CDN [11], and KV [12] to make shipping a fully-fledged multiplayer game require only a couple of lines of code. No other project provides a comparably accessible, OSS, and comprehensive game server manager. > Do you handle networking logic? No. We work with existing tools like FishNet, Mirror, NGO, Unreal & Godot replication, and anything else you can run in Docker. > Is anyone actually using this? Yes, we’ve been running in closed beta since Jan ‘22 and currently support millions of MAU across many titles. [1]: https://github.com/rivet-gg/microgravity.io [2]: https://github.com/rivet-gg/rivet/tree/main/docs/libraries/b... [3]: https://github.com/rivet-gg/rivet/blob/main/docs/infrastruct... [4]: https://github.com/rivet-gg/rivet/blob/main/docs/philosophy/... [5]: https://github.com/rivet-gg/rivet/blob/main/docs/philosophy/... [6]: https://www.hashicorp.com/c2m [7]: https://www.hashicorp.com/case-studies/roblox [8]: https://www.hashicorp.com/blog/hashicorp-adopts-business-sou... [9]: https://news.ycombinator.com/item?id=37084825 [10]: https://rivet.gg/docs/matchmaker [11]: https://rivet.gg/docs/cdn [12]: https://rivet.gg/docs/kv

Share card

Actual performance

327points
44comments
Made the leaderboard

Launch Intel predictions

Analyze your own launch →
Hacker NewsStrong engagement from HN community · Strong signals: exist, lua, existing · Missing: https docs, excited, just released
93%93% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
Indie HackersFits the IH revenue-focused audience · Strong signals: supports, started, para · Missing: reddit linkedin, podcasting, created
85%85% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
Product HuntOn track for Day 1 leaderboard · Strong signals: dock, new, using · Missing: mac, agents, macos
77%77% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
TrustMRRFits verified-revenue profile · Strong signals: month, way, para · Missing: mobile apps, ios, personal
51%51% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
AppSumoMay struggle as an AppSumo deal · Strong signals: host · Missing: plus, platform, intuitive
27%27% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Strong signals: profit · Missing: arr, mrr, revenue
17%17% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Correct prediction on native model

Similar products

Op
Open-source Valheim game server installer69%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Open-source Valheim game server installer

Hacker News1
Op
Open-source Rust implementation of Turbopuffer65%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Open-source Rust implementation of Turbopuffer

Hacker News2
Hy
Hydra – Open-Source OAuth2 Server74%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Hydra – Open-Source OAuth2 Server

Hacker News190
Re
Rewriting our engine on Rust and going open source65%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Rewriting our engine on Rust and going open source

Hacker News12
Op
Open-Source Implementation of John Conway's Mathy Game of Hackenbush61%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Open-Source Implementation of John Conway's Mathy Game of Hackenbush

Hacker News2
Op
Open-Source Pong Game58%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Open-Source Pong Game

Hacker News1
Op
Open Source Game Clones67%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Open Source Game Clones

Hacker News3
Ta
Tania – An open source farm management system65%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Tania – An open source farm management system

Hacker News2
Fe
FeatureProbe – an open-source featureflag management65%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

FeatureProbe – an open-source featureflag management

Hacker News1
Ch
Chakra – An open source WASM runtime in Rust63%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Chakra – An open source WASM runtime in Rust

Hacker News2