Steam browser protocol

From Valve Developer Community
Revision as of 01:32, 22 April 2006 by TomEdwards (talk | contribs) (→‎Commands: Added steam://open, tried making some of the entries <code>)
Jump to navigation Jump to search

Commands

There are several commands available that interact with Steam. All of them open up Steam if it is not open. They can either be typed into a command box (Start-> Run) or through your browser's address bar.

Suggested

  • steam://connect/<IP or DNS name>[:port]/<password>
    • Connects to the specified server with the right password --Semi
  • steam://connect/<IP or DNS name>[:port]/'command1 "arg1" "arg2";command2 "arg1";password "blah";etc..'
    • Connects to the specified server after executing the specified commands --ts2do
  • steam://vdc/<page title>
  • steam://friends/add/<user>
    • Prompt to add user to Friends list. --VealCalf
  • steam://friends/chat/<user>
  • steam://gameinfo/<IP or DNS name>[:port]
    • Opens the "game info" window for the specified server. Maybe also integrated into the server browser, so you don't have to add a server to the favorites to have access to that window. --Koraktor

Ability

What can be done with these commands from a websites point of view? Its a pretty open and powerful system. A website link can start up steam and not only change any ConVar of a user, but it can also execute ConCommands like making a player join a specific server running a specific mod. It can even get the player to start up a dedicated server with a single click.

Here some examples:

steam:"-applaunch 70 -game "<mod>" +map "<map>"" - This starts up Half-Life running the specified mod then loads a specified map.

steam://connect/<IP or DNS name>[:port]" - If a mod was running at the specified server, Steam would attempt to start up that mod and connect there. This applies to any kind of Goldsource/Source server.

To view this browser based command system in action look at this server browser website and click on one of the servers.

Note.pngNote:If you forget the closing quote on a steam:"<command>", you will get an assertion failed error from Steam.exe/BootStrapperApp.cpp.