Digital Rights Management (DRM)
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.
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.
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.
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.
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.
For a list of games, see games with 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.
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).
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.
Will be used if Steam Input fails to properly detect a game.
Can result in unwanted input if accidentally triggered while turning off certain wireless controllers.
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.
For a list of games, see games with Steam Input presets support.
Supported input devices will be limited to emulating XInput and/or mouse/keyboard input.
Supported input devices will be limited to emulating XInput and/or mouse/keyboard input.
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, Switch Pro controllers, Xbox 360 controller, Xbox One controller, or any other generic XInput or DirectInput controller. 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.
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 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 and Direct3D 10 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 as well as third-party titles that Valve have not yet verified compatibility with.
download_depot <app-id> <depot-id> <target-manifest-id> <delta-manifest-id>
Downloading depot <depot-id> (<download-size> MB) ...
Depot download complete : "C:\Program Files (x86)\Steam\steamapps\content\app_<app-id>\depot_<depot-id>" (<total-num-of-files> files, manifest <manifest-id>)
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.
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
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.
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.
sudo nano steam-native
# Workaround for dbus fatal termination related coredumps (SIGABRT)
# Override some libraries as these are what games linked against.
exec /usr/lib/steam/steam "$@"
sudo chmod +x steam-native
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.
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.