Server connection overlay
A toast on the Roblox window that tells you which server you joined and where its data centre is.
When you connect to a Roblox server, Agentstrap can pop a small dark toast just inside the top of the game window showing where you ended up. It's designed to be read at a glance and then get out of the way.
What it looks like
Dallas, Texas: Brookhaven RP
Chicago, Illinois: Adopt Me!
The format is always {City}, {State}: {Experience name}. When information isn't available, the
overlay falls back gracefully:
| Situation | Text shown |
|---|---|
| Everything resolved | Dallas, Texas: Brookhaven RP |
| Location unknown, name known | Unknown location: Adopt Me! |
| Location unknown, name unknown | Unknown location: Roblox |
Options
| Option | Default | Detail |
|---|---|---|
| Show server connection notifications | On | Needs activity tracking to be enabled. When it's off, the row is greyed out and the overlay doesn't exist at all. |
| Notification duration | 5 seconds | How long the toast stays on screen. You can set anything from 1 to 30 seconds. |
| Test notification | — | Shows a preview of the toast over the Agentstrap settings window. It always uses the fallback text "Unknown location: Roblox" and makes no network requests, so it won't match a real notification exactly. |
How it behaves
- It appears immediately. The toast is shown right away using whatever is already cached, then the text is patched in place once the lookups come back. Waiting for the network first could stall it for the full request timeout and make it look broken.
- It never steals focus. The overlay is a click-through, always-on-top window that doesn't take input, doesn't appear in the Alt+Tab list, and doesn't affect the game.
- It follows the game window. The position is re-tracked every quarter-second, so the toast stays centred if you move or resize the Roblox window.
- It's always dark. The toast ignores the Agentstrap theme on purpose, so it stays readable over any Roblox experience.
- Stale results are discarded. If you leave the server or join another one while lookups are still running, the late result is dropped rather than overwriting the newer one. A toast that has already faded out is not brought back.
- Repeats are suppressed. Joining the same server twice in a row doesn't produce a second toast.
Where the data comes from
| What | Source |
|---|---|
| Experience name | games.roblox.com/v1/games |
| City and state | ipinfo.io/{server-ip}/json |
Requirements and caveats
- Windows only. The overlay uses Win32 window styles and DPI APIs.
- Activity tracking must be on. The overlay is built on the same watcher as activity tracking.
- No client patch required. Unlike Discord Rich Presence, the overlay reads Roblox's standard log output, so it works with an unmodified client.
- It depends on Roblox's logging. The code that detects a server join reads specific FLog lines from the Roblox log. Roblox can change its log verbosity at any time, and if it does, the overlay can silently stop appearing.
- Fullscreen games can hide it. In some exclusive fullscreen configurations, a separate top-level window can't composite over the game. Windowed and borderless modes are unaffected.
- Minimising Roblox hides it. The toast reappears when you restore the window.
Privacy
Enabling the overlay means the game server's IP address is sent to ipinfo.io. Only the server's address is queried — your own IP is never the subject of a lookup, though ipinfo.io naturally sees it as the connecting client, exactly as with any web request.
Agentstrap's own log files record every HTTP request, including the full ipinfo.io URL with the server IP in it. If you share logs when reporting a problem, those addresses go with them.