Steam

Steam

Not enough ratings
Unused Player Statuses
By hCerisu ❤
This guide details how to set your player status manually via a function in the Steam Chat web app, as well as how to apply normally-inaccessible statuses that were available in previous versions of Steam (Busy, Looking to Play, Looking to Trade) to yourself.
   
Award
Favorite
Favorited
Unfavorite
Introduction
Before the chat interface was overhauled in 2018, three additional user status indicators (Busy, Looking to Play, Looking to Trade) were accessible through the friends menu before they were taken away for simplicity's sake. While nominally removed, it is still possible to set your player status to one of these with a tiny bit of code.
Instructions
1. Access the web-based Steam Chat client via https://steamproxy.com/chat/
2. Press CTRL+SHIFT+I to open your browser's JavaScript console.
3. Enter the function g_FriendsUIApp.FriendStore.SetUserPersonaState(s) into the console interface, replacing the placeholder parameter s with the ID of the status you want to set:

  • 0: Offline - Temporarily logs you out of Steam Chat; a browser refresh will usually restore your session.

  • 1: Online

  • 2: Busy - You will not appear away while idle if your status is initially set to Busy, Looking to Trade, or Looking to Play.

  • 3: Away

  • 4: Snooze - Visually identical to Away, but used internally to denote that a user has gone AFK.

  • 5: Looking to Trade - See Busy

  • 6: Looking to Play - See Busy

  • 7: Invisible

Note that attempting to call g_FriendsUIApp.FriendStore.SetUserPersonaState(s) with a positive integer parameter outside of this range will set your status back to Online.

4. Use your newfound knowledge to confuse your enemies (and friends :3)
12 Comments
Dom 21 Mar @ 7:36am 
Better yet if they introduced an option to choose 'Looking to Play' or 'Looking to Trade' from a list of games that the user has. The lack of this feature is probably why these statuses are hidden. So as of now it seems like we have to resort to these kinds of tactics if we want to use those.
Capuno 20 Mar @ 11:50pm 
how can i get the cute status you always have? is that also an unused steam status?
autumn22 19 Mar @ 11:23pm 
This is so cool! I'd love it if they introduced these in again, especially busy and looking to play. I dislike having to go invisible when I'm at my computer but doing something else, and looking to play seems like a great way for people on friends lists to actually get together and join something.

I mean, it's only three options... Surely it can't be THAT confusing to warrant removing them.
Ha.Na 18 Mar @ 2:32pm 
ily
vorzie | FIH 18 Mar @ 12:55pm 
Yoo tysm i was thinking how people put looking for trade or busy status <3
lightwo 18 Mar @ 9:16am 
It's also possible to make these arguments work in desktop client by simply adding missing browser protocol URIs, again adding busy as an example:

http://0x0.st/8QRm.diff
lightwo 18 Mar @ 8:59am 
It's possible to hack Steam client's chat client to make you busy when in DND mode by editing ToggleUserDND() something like this:

http://0x0.st/8QRK.txt

It doesn't keep track of previous status, but it works...!

No time to cheer, as I have no idea how to do this in a way that doesn't suck, but it works as a proof of concept. Had to beautify and edit chunk~2dcc5aaf7.js which isn't a long-term solution.
lightwo 18 Mar @ 8:29am 
Oh, so that works inconsistently? Thanks for clarifying, that's super odd o.o
hCerisu ❤  [author] 17 Mar @ 10:42pm 
@lightwo Yup, I've just reconfirmed with a friend that these statuses display correctly from within their friends list window. There is another method, however, of directly setting your user status through the Steam browser protocol (e.g. steam://friends/status/busy) which does not work for the purposes of this guide and might be what you're thinking of.
lightwo 17 Mar @ 8:58pm 
So, they used to work, they didn't work for a long time, and now they... work again? Really?

Could you confirm that the status actually displays the same way on other clients? From what I recall, it only shows this way in the client where this was executed.