Who Can See That You're Online, and How the Game Decides
There is a green dot next to your name and nobody has ever told you what it means, who is allowed to look at it, or how to switch it off. Presence is one of the few systems in Nutopia that every single trainer touches without ever reading a word about it — and it has a privacy control most players have never found. Here is the whole thing, read out of the code: what your browser tells the server, how often, what the server does when you stop talking, and the one button that actually changes any of it.
Your Browser Says "Still Here" Every Sixty Seconds
Presence is not magic and it is not a guess. While a NuPalz tab is open, your browser sends a tiny message to the server on a fixed timer — once every sixty seconds, nothing in it but proof of life. That is the heartbeat. It carries no game data, no location, no page you are looking at. It says one thing: this trainer is still here.
There is a second message, and it is the more interesting one. When you close the tab, the browser fires a final beacon on the way out — a send-and-forget request specifically designed to survive a page that is already unloading. So in the ordinary case, the moment you close NuPalz your friends see you go dark, without waiting for anything to time out.
Did You Know?
The exit beacon cannot attach the usual authorization header — browsers do not allow it on that kind of request — so the code puts your token in the body instead and the server pulls it out there. A small piece of plumbing that exists entirely so that closing a tab is not the one action the game misses.
The Server Does Not Trust Your Last Heartbeat Forever
Beacons get lost. Laptops close mid-sentence, phones drop signal, a browser tab dies in a way that fires nothing at all. So the server keeps its own clock, and it is short: if it has not heard from you in 150 seconds — two and a half heartbeats — it writes you offline whether or not anything told it to.
The detail worth appreciating is what happens to your last seen time when that fires. The server does not stamp it with the moment it noticed. It backdates it to your last real activity, so a friend who looks you up sees the truth — when you were actually last there, not when the server got around to checking. A small honesty in a place where nobody would have caught the lie.
Away and Offline Happen Without You
The other half runs in your browser and it watches for signs of life — clicks, keys, scrolling, touch. Go quiet and it steps you down on a schedule:
Which means an idle tab left open overnight does not sit there advertising you as online until morning. It slides to Away in a quarter of an hour and to Offline within the hour, and the server's own 150-second rule catches anything the browser cannot report at all.
The Three Dots Are a Readout, Not a Control
Open the friends panel in the sidebar and you will see four things stacked together: Online, Away, Offline, and Invisible. This trips people up, so it is worth stating plainly. The first three are not buttons. They are a display — the game showing you which state it has decided you are in. The panel says so directly underneath, in a line most people scroll past: Status updates automatically based on activity.
Invisible is the only one you can press. It is a real button, it is the entire manual control surface for presence in NuPalz, and it does considerably more than the name suggests.
Invisible Is Stronger Than a Grey Dot
In most software, invisible means your dot goes grey while everything else about you stays on screen. Not here. When a friend loads their list and you are invisible, the server does not send them a dimmed version of you. It sends them offline — and it withholds the rest:
That last row is the one that matters. A greyed-out dot with a "last seen 4 minutes ago" underneath it is not privacy; it is a slightly quieter announcement. Suppressing the timestamp is what turns Invisible into an actual absence. And the automatic machinery leaves it alone on purpose — the staleness check has an explicit carve-out saying invisible is a manual choice and must not be auto-corrected. Nothing steps you back out of it but you.
Where to find it
Sidebar, friends panel, the row of status dots. Invisible is the one below the other three. Your choice is remembered in your own browser rather than on our servers, which is also why it is listed by name on our cookies page — and why turning it on in one browser does not turn it on in another.
What We Found While Writing This
Invisible had a hole in it, and we fixed it today
Checking every claim above against the code turned up a real one. Opening your messages while invisible connected a live channel to the server, and that channel wrote you back to online — overwriting the choice you had made, while your own sidebar still showed Invisible lit up. Closing messages then wrote you to offline, and the next heartbeat promoted that straight back to online. So a player could be visible to their entire friends list, believing the opposite, with no way to tell. That is fixed as of today: the messaging channel now refuses to touch an invisible status on the way in or the way out, and your browser re-states your choice every time the page loads instead of assuming the server still remembers it.
We are telling you this rather than quietly patching it because a privacy control you cannot verify is not a privacy control. If you used Invisible in the past few weeks and also opened your messages, assume it did not hold. From today it does.
Who Is Allowed to Ask
Not everyone. Presence is friends-only at the server, not just in the interface — ask the game about a trainer who is not on your friends list and it refuses outright rather than returning a polite blank. There is no page, no trick and no URL that turns presence into a lookup service for strangers. The friends list is the boundary, and it is enforced where it counts.
Which is one more reason to be deliberate about who you add in the first place. Accepting a request is not only about who can message you — it is also the moment you decide who gets to see when you are around.
Blocking is a different tool
If the question is not "can they see me" but "I want this person gone," presence is the wrong lever entirely and Invisible is a poor substitute for the right one. Blocking exists, it does considerably more than hide a dot, and it deserves its own explanation rather than a paragraph borrowed from an article about green circles. If someone is bothering you, use the block control or report them — the same principle behind why messages here are not encrypted applies: we would rather be able to act than be unable to look.
The Short Version
None of this is hidden on purpose — it simply never got written down, which is a different failure and the one this blog exists to fix. If you want more of the same treatment, the features most trainers miss is the companion piece, the Guild Hall covers the social side you actually came for, and the Trading Post guide handles the one place where being online at the right moment genuinely matters.