Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.

Difference between revisions of "Store:Steam"

From PCGamingWiki, the wiki about fixing PC games
m (→‎Download older game versions: removed dotnet and use through the DLL file and just invoke the compiled exe file instead.)
m (→‎Download older game versions: DepotDownloader.dll -> DepotDownloader.exe)
Line 407: Line 407:
 
# Download the latest version of [https://github.com/SteamRE/DepotDownloader/releases/latest DepotDownloader] and extract it to any location.
 
# Download the latest version of [https://github.com/SteamRE/DepotDownloader/releases/latest DepotDownloader] and extract it to any location.
 
#* By default downloads will be stored in a subfolder of DepotDownloader so be sure to extract it to a drive with enough space to download all files.
 
#* By default downloads will be stored in a subfolder of DepotDownloader so be sure to extract it to a drive with enough space to download all files.
# Navigate to the extraction target folder where {{file|DepotDownloader.dll}} is located.
+
# Navigate to the extraction target folder where {{file|DepotDownloader.exe}} is located.
 
# Hold down {{Key|Shift}} and right click in the folder itself, without selecting any specific files.
 
# Hold down {{Key|Shift}} and right click in the folder itself, without selecting any specific files.
 
# If done correctly a few new option will be available in the context menu
 
# If done correctly a few new option will be available in the context menu

Revision as of 20:54, 24 July 2021

Steam
Steam cover
Developers
Valve Corporation
Release dates
Windows September 12, 2003
macOS (OS X) May 12, 2010
Linux February 14, 2013
Steam at Wikipedia
Stores
Amazon
Battle.net
Bethesda.net
Discord
Epic Games Store
FireFlower Games
GamersGate
Games for Windows - LIVE
Gamesplanet
GOG.com
Green Man Gaming
Humble Store
Itch.io
Kartridge
Mac App Store
Meta Store
Microsoft Store
Origin
Rockstar Games Launcher
Steam
Ubisoft Connect
Viveport
ZOOM Platform

Key points

DRM: Digital distribution platform with accompanying client required for downloading and often playing games as well. Games can also be DRM-free or contain third party DRM.
Two-factor authentication: Steam Mobile app, or email
Architectures: All clients support 32- and 64-bit games; no support for ARM64 games.[1] The client itself is 32-bit on Windows and Linux, despite a Steam update in 2018 that allowed Valve to update individual features to 64-bit.[2] A 64-bit client is available for macOS.
Some games sold through third parties activate on Steam; see Retail / Digital CD Keys.
For better integration with Linux, it is recommended to install Linux Steam Integration.
The Flatpak version of the client is available at the FlatHub database. [3] However, be aware that most games have issues with the Steam Cloud sync, more about this can be found here. For a better security, it is suggested to follow the Snap version progress.
Support for systems predating Windows 7 was retired on January 1, 2019.[4]

General information

Official Store
Official Support
Account Details
Steam Community Discussions
Steam Translation Server
Steam Database
Steam Charts

Installation

Download and run the latest installer from the About page of Steam.
Beta participation for the Steam client can be toggled in the settings.
Changelog
Beta Changelog

Client data

Configuration file(s) location

Element Location
Cloud saves See the related section for details.
Games launch configuration[5] <Steam-folder>\appcache\appinfo.vdf
Games setup configuration <library-folder>\SteamApps\appmanifest_<game-id>.acf
<path-to-game>\*.vdf(optional)
Games dependencies status HKEY_CURRENT_USER\SOFTWARE\Valve\Steam\Apps
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Valve\Steam\Apps
User settings HKEY_CURRENT_USER\Software\Valve\Steam
<Steam-folder>\config\
<Steam-folder>\userdata\<user-id>\config\
<Steam-folder>\SteamApps\libraryfolders.vdf
<Steam-folder>\steamapps\libraryfolders.vdf on Linux
localconfig.vdf contains the main client preferences, the user apps configuration, and the game licenses and legacy cd keys cache.

Big Picture

Big Picture is a 10-foot user interface mode of the Steam client designed for readability and interaction on a TV with a game controller; although it supports keyboards and mice and is accessible on all computers and form factors as well. Most features and functionality of the desktop mode of the client is supported in Big Picture mode as well, although a few limitations might exist (such as the inability to configure Steam Cloud synchronization). Big Picture mode is also the UI that Steam will launch and make use of when streaming to the Steam Link streaming box.

See PC gaming on a TV and couch for general setup information.
Allows Steam to be used with a controller.
Open Big Picture mode from desktop mode:
  1. Launch Steam.
  2. Open Big Picture mode using one of these ways:
    • Click on the Big Picture Mode icon (a gamepad), usually located in the upper right corner of the Steam window.
    • Open the View menu and select Big Picture Mode.
    • Push Alt+ Enter while the Steam window have focus.
    • Push the home/guide button on a controller while the Steam window have focus.
  3. Big Picture should now have opened.
  4. If you need to return to desktop mode; on the start screen, open the Power menu and select Exit Big Picture.

Render the UI at resolutions above 1080p

For desktop resolutions above 1080p Big Picture Mode automatically renders the UI at 1080p and then upscales it to cover the full desktop resolution. This results in slightly blurry UI elements and text. Users can choose to always render Big Picture Mode in the full desktop resolution of Windows.
Some elements may not be made for high resolutions, and may appear blurry.
Use a custom shortcut to launch Steam
  1. Exit Steam.
  2. Add -fulldesktopres to a shortcut to Steam.
  3. Use the shortcut to launch Steam.

Family Sharing

Allows sharing games between accounts. Each account gets separate saves (if supported by the game), achievements, et al. except for DRM keys, which are shared.[6]
If the account's main owner is playing a game from their own account, or someone else is using family share on that account, you are presented with the "buy" option instead of install/play for the selected game.[7]
VAC bans can apply to the both the perpetrator and the owning account of a shared game, and the Family Share feature can be revoked entirely.[6]
Games with 3rd party DRM tied to account-locked keys (such as Ubisoft Connect), have the feature specifically turned off by their publisher.[6]
Instructions[citation needed]
  1. Log into your Steam account and press Authorize this computer if shown in Settings->Family.
  2. Log out and into the account to want to share with, go to Settings->Family, press Authorize this computer if shown, and for each account in Eligible accounts you want to share with ensure the Share box is enabled.
  3. Log back into your main account, go to Library and select Games from the drop down, and you should see games categorized as MY GAMES for games belonging to your account and [USER]'s Games for each family shared account.

Offline Mode

Offline Mode is a mode of Steam where installed games can still be accessed and played without an online connection. It is mostly relevant when users have limited or no Internet access, and will automatically be engaged when the client detects that there's no Internet access available.

Requires the user to have signed in and launched downloaded games at least once with online connectivity in advance to properly configure both the account and the individual games for offline play.
Additional third-party DRM might prevent offline play. Certain use of the Steam Cloud and/or Steam API can also inadvertently prevent offline play (e.g. Mega Man Legacy Collection 2 and Caladrius Blaze).
Prepare Steam and games for offline mode[8]
  1. Open Steam while being connected to the internet.
  2. When logging in tick the Remember my password checkbox.
  3. Run downloaded games at least once to ensure they're properly configured for offline mode.
  4. On the top left, select Steam and Go Offline.
  5. Verify that Steam can sign into offline mode, and that downloaded games are accessible as well.

Notes

Start dialog box can be removed by setting SkipOfflineModeWarning to 1 in <Steam-folder>/config/loginusers.vdf

Steam Cloud

For a list of games, see games using Steam Cloud over on the Steam storefront. Some games might not be listed even though they use the feature.

Steam Cloud is a feature of the Steam client that allows game data to sync between players' computers by uploading it to the online Steam platform after a game have been played, and downloading/synchronizing the local data when the Steam client or the game is launched. The implementation of the feature is game-specific and up to the developers of the game. Some developers choose to only sync save game data, or both save game data and configuration files, yet others force users to choose only a single slot to be synced. Some games list Steam Cloud as a supported feature, but do not sync any data whatsoever. An examples of such a game is Capsized.

Automatically backs up saves/settings on supported games.
Not every game is supported; up to the developers to implement it and decide on to sync.
Can only be toggled through the desktop mode of the Steam client.

Location

The below table lists where Steam Cloud data may be stored for games locally.
Note that games rarely use these locations for the actual local storage of their save files and configurations; which is most often saved elsewhere. If save games or configuration files can be seen here, chances are those files are merely cached copies used by Steam Cloud of files stored elsewhere (e.g. in %USERPROFILE%). They are often not an indication that a game works directly toward these locations.
System Location
Windows <Steam-folder>\userdata\<user-id>\<app-id>\
Linux $HOME/.SteamCloud/<user-id>/<app-id>/[citation needed]
macOS (OS X)

Subfolders

  • remote - Contains locally cached data synchronized with Steam Cloud. Files contained within are synchronized with the cloud servers before a game is started or after it is closed.
  • local - Contains data not meant to be synced towards Steam Cloud. This folder is rare, and is often an indication that a game uses Steam Cloud as its primary storage, and does not store save games or configuration files elsewhere.

Game-specific setting

Disabling the feature system-wide takes precedence over the game-specific setting.
Toggle the feature for a specific game:
  1. Launch Steam in desktop mode.
  2. Open the Library, Right Click on the game and select Properties.
  3. On the Updates tab, change Enable Steam Cloud synchronization for <game-title> as desired.
  4. Click Close to save the changes.

System-wide setting

Toggle the feature system-wide:
  1. Launch Steam in desktop mode.
  2. Open the View menu and select Settings.
  3. On the Cloud page, change Enable Steam Cloud synchronization for applications which support it as desired.
  4. Click OK to save the changes.

Delete files stored in the cloud

Upload empty files[9]
  1. Make sure that Steam Cloud is enabled in the game whose files you want to delete.
  2. Close Steam.
  3. Navigate to <Steam-folder>\userdata\<user-id>\<game-id>\remote\.
  4. Erase the contents of every file present within the remote folder with a text editor.
    1. This can be achieved quickly in Windows PowerShell: Hold shift and right-click on your remote folder. Select the option “Open PowerShell window here”.
    2. Once PowerShell is opened, type: clc –path "<Steam-folder>\userdata\<user-id>\<game-id>\remote\*".
  5. Launch the game whose files you want to delete.
  6. Once the Cloud conflict error is forth, don’t click any option.
  7. Navigate to <Steam-folder>\userdata\<user-id>\<game-id>\ and delete all the files in it. There will be two files (remote folder and remotecache.vdf).
  8. Go back to the conflict window and select the option of Upload to the Steam Cloud. Now Steam will sync your AppID folder while there will be nothing in it and the previous data on your Steam Cloud will be deleted.
  9. Now the game will start automatically, but it will create new files that will be synced to your Steam cloud when you close it. Exit the game by pressing Alt+Tab .
  10. Select the Steam client and disable Steam Cloud.
  11. Now return to the game and exit.
To make sure if it worked you can go to https://store.steampowered.com/account/remotestorage and see if the game is there.
Cloud conflict error may not work if it is the first time launching the game after installation.
Games without a remote folder
  1. Make sure that Steam Cloud is enabled in the game whose files you want to delete.
  2. Close Steam.
  3. Navigate to the save game location.
  4. Erase the contents of every file present within the folder with a text editor or Windows PowerShell.
  5. Launch the game whose files you want to delete.
  6. Once the Cloud conflict error is forth, don’t click any option.
  7. Navigate to <Steam-folder>\userdata\<user-id>\<game-id>\ and delete remotecache.vdf).
  8. Navigate to the save game location and delete all the files in it.
  9. Go back to the conflict window and select the option of Upload to the Steam Cloud. Now Steam will sync your save folder while there will be nothing in it and the previous data on your Steam Cloud will be deleted.
  10. Now the game will start automatically, but it will create new files that will be synced to your Steam cloud when you close it. Exit the game by pressing Alt+Tab .
  11. Select the Steam client and disable Steam Cloud.
  12. Now return to the game and exit.
To make sure if it worked you can go to https://store.steampowered.com/account/remotestorage and see if the game is there.
Cloud conflict error may not work if it is the first time launching the game after installation.

Steam Community Overlay

The Steam Community Overlay is an in-game overlay component of Steam that is available in all supported games launched through the Steam client. It enables users to access the Steam Community platform, list of achievements for the game, the Steam Chat, a general-purpose web browser, as well as a FPS counter OSD, all without leaving the confines of the game window. It also features in-game notifications for events such as achievement unlocked, invite received, new chat message, etc. Most common graphics APIs are supported, and compatibility with games are quite high.

Used by Steam Input, Steam Controller, and in-game features like DLC purchase, game invites, screenshots, etc. Disabling the overlay globally or game-specific will limit the functionality within affected games.
Add an external game to the Steam Library as a Non-Steam Game and launch it through Steam to allow the use of the Steam Overlay within the external game.
Toggle using Shift+Tab or the Home/Guide button on a controller.

Game-specific setting

Disabling the feature system-wide takes precedence over the game-specific setting.
Toggle the feature for a specific game:
  1. Launch Steam in desktop mode and open the Library.
  2. Right Click on the game and select Properties.
  3. Under the General tab, change Enable the Steam Overlay while in-game as desired.
  4. Click Close to save the changes.

System-wide setting

Toggle the feature system-wide:
  1. Launch Steam in desktop mode.
  2. Open the View menu and select Settings.
  3. On the In-Game page, change Enable the Steam Overlay while in-game as desired.
  4. Click OK to save the changes.

Steam Input

Steam Input is a feature of the Steam client and umbrella term referring to the entire collection of software, hardware, and configuration utilities that Steam uses to interface with games. It acts like a wrapper using the Steam Community Overlay to intercept and manipulate player input before passing it on along to the game. This allows it to bind certain game-specific actions to specific input that supports action-based input, or to add or extend the functionality of input devices in various ways, such as adding XInput, keyboard, or even mouse support to input devices that otherwise would not support them. The feature was previously known simply as Steam Controller as there was no distinction from the controller with the same name and its supporting environment and features, which eventually was renamed to Steam Input.

Disabling the Steam Community Overlay prevents Steam Input from being active as well.
Allows supported input devices that lacks native XInput support to function in XInput-based games.
Can interfere with the functionality of a controller in some games, based on Steam Input configuration and whether Steam Community Overlay is enabled for the game or not.
See the Steam Input section of the Steamworks documentation for much more in-depth information.

Steam Input API

For a list of games, see List of games that support Steam Input API support.

Steam Input API (SIAPI, previously known as Steam Controller API or SCAPI) refers to the accompanied API that games can make use of to add support for action-based input, as opposed to button-based input. The main difference from other APIs like XInput and DirectInput is that when a game implements support for the Steam Input API the game itself does not need to add support for any particular input device or method. Instead the Steam Input layer and API acts as a hardware abstraction layer and converts the input received from a supported input device to the proper game-specific action the user has configured the input to. This means that when Steam adds more supported input devices or methods to the Steam Input layer, games will automatically support those new devices and methods without any additional development time required by the game developers.

Controller Configurator

The Controller Configurator in native mode using a Steam Controller.
The Controller Configurator in native mode using a Steam Controller.
The Controller Configurator in legacy mode using a Steam Controller.
The Controller Configurator in legacy mode using a Steam Controller.
How the game-specific controller configurator functions depend on the level of support the game have for Steam Input. Refer to supported games for details.
Community configurations and pre-built templates (from either Valve or the game developer) are available and can be adjusted to one's liking.

Steam Controller Configurator is used to rebind actions (for games that natively support the Steam Input API) or buttons (for games that do not natively support the API). If a game does not support the Steam Input API natively, the Steam Controller Configurator will fall back to a "legacy mode" where the user can instead rebind buttons on their controllers (e.g. bind Numpad 5 to X on the gamepad) as well as tweak various functionality of their controllers (e.g. rapid fire, deadzone, sensitivity etc).

Open controller configuration for compatible controllers:
  1. Verify that a compatible controller is connected and support enabled for it, see Supported input devices for details.
  2. Open Steam
  3. Access Controller Configuration depending on which configuration you want to customize:
  • Game-specific configurations:
    • In desktop mode: Library -> select game in details view -> click on Controller Configuration under Links
    • In desktop mode: Library -> right-click on the game -> Edit Steam Controller Configuration
    • In Big Picture mode: Library -> select game -> Manage Game -> Controller Configuration
  • Big Picture, Desktop, or Guide Button Chord configurations:
    • In desktop mode: View -> Settings -> Controller -> appropriate configuration
    • In Big Picture mode: Settings -> Base Configuration -> appropriate configuration

Notes

The Controller Configuration option will not show or be accessible if a compatible controller was not found attached to the system, or if support for the aforementioned controller type has not been enabled (not applicable for the Steam Controller).

Supported configurations

Steam Input supports four different configurations, three of which are known as "base" configurations while the one remaining is game-specific. What configuration is currently active depends on what environment Steam Input currently believes it is being used in, using the Steam Overlay to properly detect games. This can result in scenarios where the desktop configuration is applied for a game because the Steam Overlay is disabled or not functioning properly for the game.

Configuration Explanation
Game-specific Used when Steam Input detects the presence of a game. The actual configuration is game-specific.
Big Picture Used for Big Picture mode of Steam.
Desktop Used while outside of a game, on the desktop of the operating system.

Will be used if Steam Input fails to properly detect a game.

Guide Button Chord Global accessible override configuration by holding down the Guide/Home button of the controller.

Can result in unwanted input if accidentally triggered while turning off certain wireless controllers.

Supported games

Some games might not natively support Steam Input API but still provide button prompts for the Steam Controller, see the Steam Controller article for more information.
Subreddit with a list of games with native/official bindings support

All games the Steam Community Overlay is capable of hooking are supported; although the level of support varies based on the game-specific support for the Steam Input API.

Support Mode Rebind Explanation
Native Steam Input API support Native Actions The game supports Steam Input API and allows for full use of the controller configurator for all compatible devices. The game can include native button prompts, action sets, haptic feedback and official configurations with aliased text for games features.

For a list of games, see List of games that support Steam Input API support.

No Steam Input API support; provides official bindings Legacy Buttons The game does not support Steam Input API, however it does provide one or more official controller config(s) for the configurator.

For a list of games, see List of games that support Steam Input presets.


Supported input devices will be limited to emulating XInput and/or mouse/keyboard input.

No Steam Input API support Legacy Buttons The game does not support Steam Input API nor provide any official config for the controller configurator. The user has to use a community-created config or create their own.

Supported input devices will be limited to emulating XInput and/or mouse/keyboard input.

Toggle Steam Input for a specific game:
  1. Open Steam and navigate to the game-specific controller options:
    • In desktop mode: Library -> right-click on the game -> Properties
    • In Big Picture mode: Library -> [desired game] -> Manage Game -> Controller Options
  2. Configure Steam Input Per-Game Setting as desired:
    • Global setting (None or PS4/XBox/Generic/Switch) - Uses the global configuration. Note that even if set to None, Steam Input might still be active in certain cases (e.g. launchers).
    • Forced Off - Forcefully disables Steam Input. This option prevents Steam Input from being active in launchers as well.
    • Forced On - Forcefully enables Steam Input.
  3. Click OK or Close to save the changes.
  4. Restart the game if it is currently running.

Notes

The option is only exposed in desktop mode if using the latest Steam Beta client.
The option was called Use Steam Configuration for Non-Steam Controllers before being renamed to Steam Input Per-Game Setting late 2018.

Supported input devices

Supported style of input options differs based on the controller. Refer to the controller-specific page for more information.
Enabling controller support can cause double input or similar input issues in certain games, or while using certain configurations for the controller.
In some instances Steam Input will be enabled for a controller even without the user having explicitly enabled support for it. This is typically seen in games where developers have expressively tagged them as requiring Steam Input to support certain types of controllers, as well as in external configuration tools or launcher where Steam Input automatically uses the desktop configuration to spoof mouse and keyboard input, even for controllers without enabled support. Forcefully disabling Steam Input for that specific game is necessary to circumvent this behavior.

To make use of the Steam Input feature users must have a compatible Steam Input device, such as the Steam Controller, DualShock 3 controller, DualShock 4 controller, Dualsense Controllers, Switch Pro controllers, Xbox 360 controller, Xbox One controller, or any other generic XInput or DirectInput controller.[10] However only support for the Steam Controller is enabled by default; support for all other compatible controllers must be manually enabled within Steam before the controller can make use of the features.

Enable controller configuration support for compatible controllers:
  1. Turn off or disconnect the controller from the computer.
  2. Open Steam and navigate to the controller settings page:
    • In desktop mode: View -> Settings -> Controller -> General Controller Settings
    • In Big Picture mode: Settings -> Controller Settings
  3. Enable the proper configuration support based on the controller:
  4. Turn on or connect the controller to the computer again.
  5. Steam should now detect the controller and allow it to use Steam Input features.

Steam Play

ProtonDB - Community-driven database of Proton compatibility for games.

Steam Play refers to features and functionality of Steam that allows some form of cross-operating system access to purchased games. Back in 2010 when the feature was first announced it referred to titles where a single purchase regardless of operating system granted users access to versions of that game on other operating systems as well, thereby making OS transitions easier as purchased games did not have to be purchased anew for the new operating system.

On August 21, 2018, Valve announced[12] a new version of Steam Play that focused on enhancing and integrating existing third-party Windows compatibility layers and wrappers for Linux into the Steam client and games. It makes use of Proton, a tool that is based on a custom version of the compatibility layer Wine as well as additional libraries developed alongside it and the Vulkan-based Direct3D 11, 10 and 9 translation layer; DXVK. Some of the improvements include a Vulkan-based Direct3D 12 implementation called vkd3d, as well as the "esync" patchset to improve multi-threaded performance in Wine. Proton is available to use through the Steam client on Linux for both officially supported Proton compatible titles, such as DOOM (2016), as well as third-party titles that Valve have not yet verified compatibility with (such as HITMAN2).

Issues fixed

Steam Support Knowledge Base

Expansive official knowledge base covering everything from account issues, general client issues, and OS-specific issues, to name a few.
Troubleshoot the issue according to Steam Support's Knowledge Base

Steam fails to launch or log in

For network connectivity issues, see the Troubleshooting Network Connectivity support article or the Network/Connection Issues category.
General troubleshooting[8]
  1. Restart the computer.
  2. See this support article: Steam Client Troubleshooting
Try to launch Steam.exe with -tcp parameter[13]

Game fails to launch or function properly

Launch the game after each individual step to see if the issue is resolved.
General troubleshooting[8]
  1. Restart Steam.
  2. Restart the computer.
  3. Consult the game-specific article to see if it's a known issue.
  4. See this support article: Verify Integrity of Game Files
  5. See this support article: Games do not run after 'Preparing to Launch'
  6. See this support article: Steam Client Troubleshooting

Dependencies install at every launch

Delete install VDF and redist folder
  1. Go to the game's installation folder.
  2. Delete or rename the install.vdf file beginning with the game's numeric app ID.

Unable to download any games

Follow this support article: Update & Installation Issues[8]

Steam CEG protected games crash or freeze the system (AMD Bulldozer CPU)

Might also just have them slow down.[14]
Update your BIOS to the latest version[15][14]
Should it still lack the required >06000626 microcode[16], bios modding, µcode injection or Orochi-CEG might still be tried
Possibly affect Bobcat processors too[17]

Other information

Change the language of a game

Instructions
  1. Right Click on the desired game in the Library.
  2. Select Properties, the Language tab, then select the desired language.

Notes

Changing a game's language might not be possible while the game is already open.
It's also possible to change the language by editing the language parameter of the relevant appmanifest_<app-id>.acf. For some games this can allow additional options not available through the UI, such as with Child of Light.

Playing without game updates

The Only update this game when I launch it option does not allow playing without updates; the only way to avoid updates is by playing in Offline Mode.[18]
Some developers make earlier versions available under the Betas tab in the game's properties in the Steam client. Once selected and downloaded, this alternate version can be played without further updates.
It is possible to download older game versions and play the older version indefinitely (unless external game-specific services prevents it) if it is stored in another location than the download or game folder.

Download older game versions

This requires a full download, and free space to allow it, of the older version of the game. The download does not overwrite existing game files.
There's no way to monitor or throttle the download progress without using external third-party tools.
As of February 12, 2020[19] it is not longer possible to use the Steam client to download older game versions. A third-party application DepotDownloader can be used instead at your own risk.
See GitHub for more parameters that can be used to control what gets downloaded.
Locate and download the manifest of the older version[20]
Disclaimer: The tool requires your Steam username, password, and Steam Guard authentication token to function.
PCGamingWiki cannot make any guarantees regarding the safety of the tool. Use at your own risk!
  1. Search for the game on SteamDB.
  2. Switch to the Depots tab and open the depot(s) with the required files to downgrade.
  3. On the pages of the aforementioned depot(s), switch to the Manifests tab and take note of the manifest IDs of the desired version.
  4. Download the latest version of DepotDownloader and extract it to any location.
    • By default downloads will be stored in a subfolder of DepotDownloader so be sure to extract it to a drive with enough space to download all files.
  5. Navigate to the extraction target folder where DepotDownloader.exe is located.
  6. Hold down Shift and right click in the folder itself, without selecting any specific files.
  7. If done correctly a few new option will be available in the context menu
  8. Select the Open Powershell window here option.
  9. Enter the .\DepotDownloader.exe -app <app-id> -depot <depot-id> -manifest <target-manifest-id> -username <username> -password "<password>" -validate command with relevant info:
    • <app-id> is the App ID as specified on SteamDB. This can also be found in the link to the store page of the game on Steam; e.g. https://store.steampowered.com/app/2620/Call_of_Duty/ where 2620 is the app id.
    • <depot-id> is the ID of the depot(s) noted in step 2.
    • <target-manifest-id> is the manifest ID of the desired older version, as noted in step 3.
    • <username> is your Steam username (not to be confused with your profile name).
    • <password> is the password of your Steam account.
    • -dir <installdir> can also be used to specify a custom download target folder.
  10. If the account is protected using Steam Guard, the window will prompt for the two-factor authentication code displayed on your authenticator app.
  11. If executed properly the console will say:
    Downloading depot <depot-id> - <depot description>
  12. Wait for the download to complete. Do not close the window or shut down the computer as this will terminate the download!
  13. When the download is finished the following line will be printed in the console:
    Depot <depot-id> - Downloaded <size> bytes
  14. The downloaded files will be saved in the specified folder, typically in a subfolder called depots\<depot-id>\<build-id> below DepotDownloader.
  15. Open indicated download folder. You can now move the contents of the folder to a more proper location.

Notes

Move the older version to a folder separate from the regular version to prevent Steam from removing the older version when a new update is released.
Some games might require a steam_appid.txt file containing the app ID and nothing else before they can be launched from another location.

Copying a game from a different computer

Instructions[citation needed]
  1. Go to <Steam-folder>/SteamApps/common/ on the computer where the game is installed.
  2. Look for the folder that fits the game you want to copy and move it to the same location on the target computer.
  3. Go to steampowered.com in your browser and visit the game's store page
  4. in the Url bar of your browser you'll see store.steampowered.com/app/<app-id>/, where <app-id> is a number that uniquely identifies the game on Steam.
  5. Grab the <Steam-folder>/SteamApps/appmanifest_<app-id>.acf file that fits the <app-id> from the store page and copy it to the same location on the target computer.
  6. Close and restart Steam.
  7. The game should now show up in your Library and be ready to play.
  8. (Optional) If the game doesn't run or if it came from a different OS, right click on the game in your Library and choose Properties ; then go to the Local Files tab and click on Verify integrity of game cache… . This will trigger Steam to repair the installation.

Windows-specific

Add Microsoft Store games as non-Steam games

Use UWPHook[citation needed]
For manual configuration, see this forum post.

Speed up loading of web pages in Steam

See Speed up loading of web pages in Windows.

Launch batch file via Steam for non-Steam game

Treat cmd as a non-Steam game[21]
  1. Add cmd.exe as a non-Steam game. It can be found in %WINDIR%\System32\.
  2. In the game properties, change the path listed as "Start in" to the path to the batch file.
  3. Click "Set Launch Options...", and add /C "<filename>.bat", replacing <filename> with the name of the batch file.

Linux-specific

Downloading game files with SteamGet

SteamGet is a script created by Ryan C. Gordon (aka Icculus) which requires SteamCMD to work. What it does is that it will download all the files from the selected game you own in your account without requiring you to rely Wine to do that or use the SteamCMD itself as this script makes its task more simple. This can be very useful if you wish to use the game files for the source port of the game or an open source engine.

Optimize PulseAudio to audio in Steam games

Edit daemon.conf[22]

Open daemon.conf file from /etc/pulse/ as root and add the following text:

# Start as daemon 
daemonize = yes
allow-module-loading = yes

# Realtime optimization
high-priority = yes
realtime-scheduling = yes
realtime-priority = 9

# Scales the device-volume with the volume of the "loudest" application
flat-volumes = no

# Script file management
load-default-script-file = yes
default-script-file = /etc/pulse/default.pa

# Sample rate
resample-method = speex-float-9
default-sample-format = s24-32le
default-sample-rate = 192000
alternate-sample-rate = 176000
exit-idle-time = -1

# Optimized fragements for steam
default-fragments = 5
default-fragment-size-msec = 2

# Volume
deferred-volume-safety-margin-usec = 1

Save the file and run both pulseaudio -k and pulseaudio --start to restart PulseAudio or just reboot the system.

Use Native Steam runtime mode

Improves the performance for both games and the software itself.
Basic
Install Linux Steam Integration and enable Use Native Runtime.
Advanced
On a 64-bit system you must install the 32-bit version of these libraries: openal, nss, gtk2, gtk3, libcanberra, gconf, dbus-glib, libnm-glib, libudev0-shim and libappindicator-gtk2 (so the tray icon would work).
Some games may still require some additional libraries to work. You can use this page to learn which ones are needed for the specific software regardless of the linux distribution you are using. Most of the Ubuntu-based distros may already include them.

While the current Steam package already includes required libraries to work, they are sadly outdated as they are from Ubuntu 12.04. However, Valve included an option to force Steam to use the libraries used in your system, also known as Steam Native mode. This can be done by adding STEAM_RUNTIME=0 before the command for launching Steam.

It's best to create a separate executable file for it in order to allow easily switch between the Runtime and Native.

Create a Steam Native executable script
  1. Open or go to /usr/bin in Terminal and type sudo nano steam-native
  2. Copy and paste this script:
#!/bin/sh
export STEAM_RUNTIME=0
# Workaround for dbus fatal termination related coredumps (SIGABRT)
# https://github.com/ValveSoftware/steam-for-linux/issues/4464
export DBUS_FATAL_WARNINGS=0
# Override some libraries as these are what games linked against.
export LD_LIBRARY_PATH="/usr/lib/steam:/usr/lib32/steam"
exec /usr/lib/steam/steam "$@"
  1. Exit while saving the file with Ctrl+X and accept while leaving the name intact.
  2. Type sudo chmod +x steam-native to mark the script as executable

Once done, you will be able to run Steam Native with the steam-native command on Terminal, you can add it to the Start/Program Menu if you wish, but it is also best to add it's .desktop file as well, so it'd be available and automatically added.

Create a Steam Native Desktop script
  1. Open or go to /usr/share/applications or $XDG_DATA_HOME/applications (recommended, usually represents ~/.local/share/applications) in Terminal.
  2. Type nano steam-native.desktop. Remember to prefix this with sudo if editing within a system folder such as the first one mentioned in step 1.
  3. Copy and paste this script
  4. Exit while saving the file with Ctrl+X and accept while leaving the name intact.

Arch Linux-based distributions only require installing steam-native-runtime package which will automatically install required repositories and automatically set everything for you, once you install Steam.


References

  1. Total War: Rome Remastered - last accessed on 2021-05-06
  2. Valve May Soon Release a Native 64-Bit Version of Its Steam for Linux Client - last accessed on 2021-05-06
  3. Steam Is Now Available As A Flatpak App Via Flathub - GamingOnLinux
  4. Windows XP and Windows Vista Support - Steam Support
  5. Decoder for the binary Valve Data Format : ReverseEngineering - Reddit
  6. 6.0 6.1 6.2 Steam Family Sharing FAQ
  7. StackExchange :: Why is Steam only showing me “Buy” instead of “Play” option for a game shared via Family Sharing?
  8. 8.0 8.1 8.2 8.3 Verified by User:Aemony on 2018-04-09
  9. How to Delete Steam Cloud Saves
  10. Steamworks Documentation > Features > Steam Input > Steam Input Devices - last accessed on 2018-04-03
  11. Steam - Steam Client Beta - July 19, 2018 - last accessed on 2018-07-20
    "Added support for PS3 Controllers as a separate controller type. Does not include support for the DS3 gyro or analog face buttons. If you’re using a DS3 on Windows you’ll have to obtain the Sony driver through PlayStation Now."
  12. Steam for Linux - Introducing a new version of Steam Play - last accessed on 2019-03-10
  13. Cannot connect to Steam servers :: Steam Community Discussions
  14. 14.0 14.1 [READ FIRST] AMD Bulldozer CPU Crashes CS:GO - Steam Users' Forums (retrieved)
  15. Does Your AMD FX Platform BSOD with Steam? Read This. - Tom’s Hardware
  16. Are you running the latest AGESA microcode? - HWBOT Community Forums
  17. See XCOM: Enemy Unknown#References
  18. New Steam version removes option to disable automatic updates - Steam Users' Forums (retrieved)
  19. Reddit - As of the latest version of the Steam Client, it is no longer possible to use download_depot in the console to download earlier .exe versions. - last accessed on 2020-07-26
  20. Verified by User:Aemony on 2020-07-26
  21. Verified by User:SirYodaJedi on 2020-04-15
    Using launch parameters found here.
  22. Optimize PulseAudio settings for Steam Games