s&box hits Steam on April 28th after years of closed developer preview, and if you're reading this you've probably figured out that yes, you can run your own dedicated server for it. Good news: you can. Slightly-less-good news: the server binary is Windows-only at launch, and the tooling is still finding its feet.
I've been poking at the preview docs for a while now, and the flow for hosting an s&box server is actually pretty tidy once you know what you're looking for. The short version is: install the server via SteamCMD (anonymous login, app ID 1892930), pick which game-on-the-platform you want to host via a command-line flag, and you're in. Longer version below.
If you'd rather skip the setup and just have a box running somewhere that isn't your desktop, we rent s&box servers at LOW.MS with automatic backups, DDoS protection, and 24/7 support. The guide below works either way – the underlying Facepunch server is the same binary whether you're hosting with us or on your own metal.
What you're actually hosting
Before we get to the commands, a quick orientation. s&box isn't one "game" in the traditional sense. It's a platform – Facepunch call it their spiritual successor to Garry's Mod – where creators publish their own games and gamemodes to the sbox.game cloud, and players jump between them from the same client. So when you host a dedicated server, you're not just launching "s&box the game", you're launching s&box with a specific gamemode loaded (e.g. facepunch.walker, which is one of Facepunch's first-party offerings).
This is different from how, say, Garry's Mod or ARK handle things. There's no Steam Workshop subscription step, no gamemode.cfg file shipping with twenty ConVars. Game packages live on sbox.game and your server pulls them at start time.
What you'll need
For the self-hosted path:
- A Windows machine. Facepunch haven't shipped a Linux server binary and their own status doc explicitly says "Dedicated server support, no Linux" at launch. That may change, but don't plan around it yet.
- SteamCMD installed. If you've ever set up any other Steam-based dedicated server (ARK, CS, Rust, Valheim) you already have it.
- Enough RAM and CPU to run whatever gamemode you pick. Facepunch haven't published official server specs, so this is a "depends on the game you're loading" situation. A Party Royale is going to be lighter than a large-map sandbox.
- A firewall rule open for whatever port your gamemode uses. Facepunch don't publish a fixed port here – different game packages can bind different ports, so check the package you're running.
For the LOW.MS-hosted path the box comes pre-configured and you don't need to touch SteamCMD, so skip ahead to the "Picking a gamemode" section.
Self-hosting: the SteamCMD install
Get SteamCMD running, then:
steamcmd +login anonymous +app_update 1892930 validate +quit
1892930 is the server app ID. 590830 is the client – don't use that by mistake, it'll pull a 30+ GB install you don't need and won't give you the server binary. Plenty of secondary tutorials get this wrong; stick with 1892930.
Once that completes you'll find sbox-server.exe inside steamcmd\steamapps\common\Dedicated Server\. That's your binary.
If you're testing against a newer patch than what's on the public branch, Facepunch also publish a staging branch:
steamcmd +login anonymous +app_update 1892930 -beta staging validate +quit
For 99% of operators the default public branch is what you want. Staging is for people who specifically want to play with tomorrow's build.
Picking a gamemode
This is where s&box diverges from anything you've hosted before. You tell the server which game package to load via +game:
sbox-server.exe +game facepunch.walker garry.scenemap +hostname My Server
Three things happening there. facepunch.walker is a game package on sbox.game – the "org.name" identifier. garry.scenemap is an optional map package. +hostname is what players see in the lobby list.
Facepunch only document three CLI switches officially: +game, +hostname, and +net_game_server_token. If you see a tutorial mentioning sv_tickrate, a server.cfg, or a gamemode.json file, it's almost certainly copy-pasted from Garry's Mod or Source 1 and doesn't apply to s&box. Assume anything Source-1-flavoured you see online is wrong until you can check it against Facepunch's own docs.
You can also point +game at a local .sbproj file if you're hosting a project you're developing yourself:
sbox-server.exe +game c:/projects/mygame/.sbproj +hostname Dev Server
Missing assets get streamed from the server to connecting clients, which is handy for iteration.
net_game_server_token and why you probably want one
By default, every time your server restarts it generates a new Steam ID. Not a huge deal for casual servers, but if you want a persistent identity – "the same server keeps showing up in lobby lists" – generate a token at Steam's game server management page and pass it:
sbox-server.exe +game facepunch.walker +hostname My Server +net_game_server_token YOUR-TOKEN
Facepunch note that this flag is optional and only becomes available at full release, not during the developer preview. For anything longer-lived than a quick one-off, set it.
How players find your server
s&box discovery works through Steam lobbies, not a classic Source-style in-game server browser. Players see servers in the multiplayer UI of whatever gamemode they're trying to play. This is less "paste an IP" and more "the game finds the server through Steam", and if you're coming from Garry's Mod it takes a minute to get used to.
If you need to share a direct join link, check the specific gamemode's own docs – each game on sbox.game handles its own UI and may or may not expose a copy-link button.
Admin permissions: users/config.json
This is the one config file s&box actually documents. You'll find it at users/config.json in your server directory, and it's a JSON array of Steam IDs plus "claims":
[
{
"SteamId": 76561198012345678,
"Claims": ["kick", "ban", "restart"]
}
]
Claims are arbitrary strings. "kick", "ban", and "restart" are the ones Facepunch give as examples, but gamemode authors can add their own. The server host implicitly has all claims, so this file is for granting trusted players partial admin access. Worth knowing: claims are server-side only. You can't check them from clientside code.
If you're hosted with us, the Configuration Files section in the LOW.MS Control Panel exposes this file directly, so you don't need to SFTP in to edit admins.
Keeping the server updated
Re-run the SteamCMD update:
steamcmd +login anonymous +app_update 1892930 validate +quit
Facepunch don't document an in-process auto-updater, so you'll want this on a scheduled task or, if you're hosted with us, the Steam Update button in the panel handles it with one click. Game packages themselves update separately via sbox.game's cloud, so your server pulls the latest version of the gamemode on restart without a SteamCMD step.
A few launch-day gotchas
Things worth flagging if you're about to host your first s&box server:
- The
publicbranch laggedstagingfor most of the developer preview. A known 2024 issue was that public-branch servers wouldn't accept the+gameswitch at all and operators had to force-beta stagingto get anywhere. This should be sorted by launch, but if you hit weird command-line rejection errors in the first week or two, flipping to staging and seeing whether it clears is a fast sanity check. - Anticheat details haven't been published. Facepunch haven't said anything public about VAC, EAC, or BattlEye on dedicated servers, and I don't want to guess. Check whichever gamemode's own docs if your players care.
- The
+gameargument takes a package identifier, not a free-form name.+game DeathMatchwon't work. It has to be+game author.package-name, e.g.+game facepunch.walker. - "Server browser empty" isn't always a server problem. Because discovery goes through Steam lobbies per-gamemode, if you're looking at the wrong gamemode's lobby list you won't see your server. Join via your token or a direct Steam invite if you're unsure whether the server's even up.
For a tidier end-to-end walkthrough from the panel side, Getting started with your s&box dedicated server covers setup from the LOW.MS Control Panel, and s&box server configuration goes deeper on the CLI switches and users/config.json format. If something's broken, s&box server troubleshooting has the usual suspects.