Difference between revisions of "SteamPipe"

From Valve Developer Community
Jump to: navigation, search
(Add see also items for SteamPipe directories and the filesystem interface)
Line 1: Line 1:

Latest revision as of 16:57, 14 October 2018

Español Nederlands Polski Português-Brasileiro 简体中文

SteamPipe is Steam's new content distribution system. It changes the way games (including dedicated servers) are downloaded, updated and stored. More information can be found on the Steam Support page.



The benefits to players are:

  • Faster and smoother downloads
  • Faster game boot times and map load times
  • Easier distribution, installation, and management of mods
  • Smoother dedicated server distribution and update rollover

Server administrators

Instead of a proprietary delivery protocol, SteamPipe uses HTTP, which allows datacenters hosting multiple servers to set up a caching HTTP proxy, necessitating only a single download of an update from Valve's servers.

Game developers

Game developers using SteamPipe can issue updates themselves; the previous system required manual intervention by Valve when an update was to be published.

LAN Caching

As SteamPipe now uses HTTP it allows not only datacenters hosting multiple servers to setup a caching but is also very useful for LAN's. Setting up a caching proxy can significantly reduce the amount of bandwidth required for multiple clients or servers to preform updates.

LANcache – Dynamically Caching Game Installs at LAN’s using Nginx is an example of how to setup caching proxy for SteamPipe as used at Multiplay's Insomnia Gaming Festival. steam-squid is a Docker image containing a Steam-optimised version of the Squid caching proxy for easy installation.



The only real downside to the Steampipe update is that many Half-Life and Half-Life 2 mods that are now broken, and many that did not make the jump to the update.

Fortunately, there are known fixes for many Half-Life 2 mods. Those fixes can be found here.


The Source SDK Launcher no longer works. Tools for games that used to be in the Source SDK Launcher must now be launched by going to " C:\Program Files (x86)\Steam\SteamApps\common\[game name]\bin " Example: C:\Program Files (x86)\Steam\SteamApps\common\Half Life 2\bin


  • Downloads are performed using HTTP instead of a proprietary protocol.
  • Data files are no longer placed into GCFs but directly into the file system.
    • To counteract the performance issues with accessing many tiny files (the reason why GCFs were used in the first place), Source games distributed via SteamPipe store their assets in VPK archives.
  • Data generated before/during gameplay is no longer stored in user-specific subdirectories of SteamApps; instead, the common subfolder is used.
  • Dedicated servers are no longer updated using HLDSUpdateTool (known as steam on Linux) but using SteamCMD (a stripped-down version of the full Steam client).

See Also