Last 24 hUptime
From the server's own memory (one sample a minute, cleared on restart; restarts marked). For outside-in checks, point a free monitor (UptimeRobot / Better Stack) at https://play.ashbreakers.com/healthz every 5 min.
Server control room
Only the studio's admin Google account gets in. The server checks the token on every request; this page shows nothing without it.
From the server's own memory (one sample a minute, cleared on restart; restarts marked). For outside-in checks, point a free monitor (UptimeRobot / Better Stack) at https://play.ashbreakers.com/healthz every 5 min.
| Code | Phase | Players | Seats | Age | Ticks | Players / actions |
|---|
Full VM reboot needs OCI credentials (not stored here): do it from the OCI console → Compute → Instances → Reboot. The service restarts itself (systemd ashbreakers, Restart=always).
Read by the game at boot: motd, events (flags), shop (rotation toggles).
| Gamertag | uid | Created | Last seen | Build | Ban | Actions |
|---|
The game checks every id against its own tables and clamps qty (scrap ≤ 100,000; mats ≤ 500; parts ≤ 20). Unknown ids are skipped, never invented.
Each account redeems a code once (a transaction; the rules check the claim, the use count and the expiry).
JSON "hero" uses the frozen internal id: rivet = BEACON, brakk = BULWARK, vesper = ZENITH, kestrel = SALVO. Pick the callsign above; the id is saved for you.
A skin can only pick modules the game already has (palette, body kit, cloth pattern, crest, finish, emissive, outline). New geometry (a new body kit, pattern, crest shape or emote) still needs code + a deploy.
Dates are ms since epoch (or ISO strings; saved as ms). Multipliers clamp to 1-3x in the game; prices to 50-50,000. The game reads all of this at boot and every 10 min at the front door.
Off: shop = the built-in prices and shelf, no data skins for sale · codes = redeem refused · online = the client won't connect (the server switch above also closes sockets) · events = 1x.
https://play.ashbreakers.com/healthz, 5 min, email alert.gcloud firestore export to a bucket.