Backend (“your server list”) — route checklist
What to implement on your HTTPS server when the hostname in global-metadata.dat points to you.
Documentation map
| Page | Contents |
|---|---|
| Home | Index, files to patch, quick routes |
| Implementing | Files, patch vs proxy, compliance |
| Official & list | is_official, API vs server tags, checklist |
| Alkad | Tirify + Alkad URLs |
| Arab | Arab + mixed Facepunch URLs |
| Real / SKYLIGHT | Facepunch + companion URLs |
Route matrix — suffix after your API base
Implement these path suffixes once your base URL is embedded in metadata (prefix differs per build).
| Suffix | Used for |
|---|---|
nexus/ | Nexus backend |
playerAuth/steam | Steam auth |
public/serverlist | Main browser list (JSON; is_official per row) |
public/serverlist/banned | Banned list |
discord/... | Discord link / login / friends (per build) |
| Companion | avatar, subscriptions/* (separate host on stock Real/SKYLIGHT) |
Metadata fragments (copy)
public/manifest/?public_key=public/steamServers/playerCounts/rustStub or implement if your client hits them.
Minimum viable custom server list
- HTTPS with a valid certificate for the hostname in metadata.
…/public/serverlist→ compatible JSON.…/public/serverlist/bannedif requested (Arab build may still use Facepunch for banned until patched).- Nexus / playerAuth stubs or real behavior if the UI calls them.
For exact JSON fields, capture traffic from a test client or reverse-engineer IL2CPP types.