Steam browser protocol: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (Removed signature templates.)
(→‎Commands: Added steam://open, tried making some of the entries <code>)
Line 12: Line 12:
* '''steam://validate/<id>''' This Validates the files within gcf's of the Applaunch ID you choose.
* '''steam://validate/<id>''' This Validates the files within gcf's of the Applaunch ID you choose.
* '''steam://installaddon/<addon>''' This installs the specified add-on. Example: steam://installaddon/halflifehd installs HL High-Def Pack
* '''steam://installaddon/<addon>''' This installs the specified add-on. Example: steam://installaddon/halflifehd installs HL High-Def Pack
* '''steam://removeaddon/<addon>''' This uninstalls the specified add-on. Example: steam://removeaddon/halflifehd uninstalls HL High-Def Pack
* '''<code>steam://removeaddon/<addon></code>''' This uninstalls the specified add-on. Example: steam://removeaddon/halflifehd uninstalls HL High-Def Pack
* '''steam://connect/<IP or DNS name>[:port]''' This connects the user to the server specified by the IP or [[Wikipedia:DNS|DNS name]].  Using this, you can connect to servers for third party mods without needing to know the mod's installation path.
* '''<code>steam://connect/<IP or DNS name>[:port]</code>''' This connects the user to the server specified by the IP or [[Wikipedia:DNS|DNS name]].  Using this, you can connect to servers for third party mods without needing to know the mod's installation path.
**Example: steam://connect/1.0.0.27:27015
**Example: <code>steam://connect/1.0.0.27:27015</code>
**Example: steam://connect/dns.server.com
**Example: <code>steam://connect/dns.server.com</code>
* '''steam://runsafe/<id>''' This resets CVARs of the application with the specified [[Steam Applaunch IDs|Steam Applaunch ID]] (i.e. 211 for SDK).
* '''<code>steam://runsafe/<id></code>''' This resets CVARs of the application with the specified [[Steam Applaunch IDs|Steam Applaunch ID]] (i.e. 211 for SDK).
* '''steam://openurl/<url>''' Opens URL in default web browser.
* '''<code>steam://open/<component></code>''' Opens a Steam window. Known <component> values:
**<code>friends</code>
**<code>main</code>
**<code>servers</code>
**<code>settings</code>
* '''<code>steam://openurl/<url></code>''' Opens URL in default web browser.


===Suggested===
===Suggested===

Revision as of 01:32, 22 April 2006

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.