Steam Tips and Tricks - Steam

A collection of tips and tricks that are simple enough not to require making individual guides out of.

Disable the ♥♥♥♥♥♥♥ word filter
Under Community Content Preferences, add this to Never filter these words:
.*
User-generated content privacy warning
Any content, even with visibility not set to public, is scanned by Google and Amazon image analysis services. It is evident by image blur that may appear on such submissions.
Cannot join game group chats
Follow the game first.

Following actually adds you to the Official Group[web.archive.org] of the game, which is now the Community Hub. If you are not a member, you cannot join the chat.

Official Group
Community Hub

Under Followed Games, you can find all games you followed (joined the Official Groups of).
Full width artwork
At some point, Featured Artwork Showcase was silently added. Notice Featured, it is different from the original Artwork Showcase in that it only displays one artwork. However, gaps will be present if the height is greater than the width, as usual. Just please, don't use the infamous exploit to overcome the limitation.

Artwork Showcase
Featured Artwork Showcase
Steam God Mode
Steam Support contains many features to help solve your issue as well as many other pages you may find useful. In particular, Data Related to Your Steam Account (under Steam Support > My Account) links to a large selection of pages.

Preview of the page
Make webkit.css work again
Since Steam Client Beta Feb 2023 versions, webkit.css that was used to replace CSS on Steam hasn't worked. Thanks to chasingEcho's workaround, CSS overrides are possible again.

Manual method
Initial setup
  1. Navigate to Steam > skins > <your_skin_name> > resource
  2. Move or make a symbolic link of webkit.css in Steam > steamui
  3. Edit Steam > steamui > index.html
  4. Find </head> and right before it, insert:
    <link href="webkit.css" rel="stylesheet">
  5. Depending on what you use, edit your Steam shortcut or launch script, and append -noverifyfiles

Fixing after an update reverts changes
  1. Navigate to Steam > steamui
  2. Edit index.html
  3. Find </head> and right before it, insert:
    <link href="webkit.css" rel="stylesheet">

Script
Linux (Bash + GNU Sed)
#!/bin/bash STEAM_DIR=$HOME/.local/share/Steam SUI_INDX=$STEAM_DIR/steamui/index.html if ( ! grep -q webkit\.css $SUI_INDX ); then sed -i 's/<\/head>/\<link href="webkit.css" rel="stylesheet"><\/head>/' $SUI_INDX echo "steamui/index.html edited" fi # For the final part, copy the contents of /usr/bin/steam # and add -noverifyfiles exec /usr/lib/steam/steam -noverifyfiles "$@"
Table noborder=1 and equalcells=1 parameters not working
Despite being included in formatting help for Guides, these parameters are not available to be used in Guides. However, it is evident that News and Support articles use them. It is unlikely, but possible that a future Community revision brings this feature back.

If you want to read more about inconsistent formatting on Steam, read this guide:
https://steamcommunity.com/sharedfiles/filedetails/?id=2807121939
WTF is error X?
SteamErrors.com has a documented list of error codes as well as descriptive names and useful information.

Trade-related codes
Code
Description
2
Fail[steamerrors.com]
11
InvalidState[steamerrors.com]
15
AccessDenied[steamerrors.com]
16
Timeout[steamerrors.com]
20
ServiceUnavailable[steamerrors.com]
25
LimitExceeded[steamerrors.com]
26
Revoked[steamerrors.com]
28
AlreadyRedeemed[steamerrors.com]
Guide images gone, reupload results in file upload error 29
For some reason, Steam tends to randomly lose uploaded images in guides, even though they are supposed to stay for good. Attempting to reupload them results in error 29 if the latest version has the same SHA-1 hash as the uploaded image. In order to influence different file hashes in bulk without modifying any content, use this command (adjust the file extension):

Linux (ImageMagick + Bash)
for image in ./*.png; do convert $image -set keywords '' $image; done
Windows (WIP)

Also note that uploaded images are not compressed or otherwise modified by Steam, only the file names differ. Thus, ideally, alongside an offline copy of all images, consider using Wayback Machine[archive.org] or Archive.today[archive.is] that will reliably preserve the guide.
Host block list for Steam games
Note: This will reduce outbound data to big data companies at the expense of some games and software being less likely to work.

GameIndustry Hosts Template[codeberg.org] is a very comprehensive list I recommend for this purpose.

Also check out the project website[gameindustry.eu] and Steam group (mainly in German) for a lot of relevant information and reviews.
Workshop pages broken if YouTube is unreachable
Use this bookmarklet (select and drag to your bookmarks):
javascript:onYouTubeIframeAPIReady()
Use Offline Mode automatically
Make sure the account password is saved. Edit Steam > config > loginusers.vdf and under the desired account, set "WantsOfflineMode" and "SkipOfflineModeWarning" to "1".

If you don't always intend to use Offline Mode, instead of setting WantsOfflineMode, it is possible to make a separate shortcut that launches Steam with -offlinemode (only works if the client hasn't been launched yet).

For a true offline experience, use this launch option:
-net_fake_state NoSteam
The ConVar net_fake_state does the same thing, but lets you change the state while the client is running (normal is the default value, use the command find net_fake_state for more).
Execute Steam client ConCommands/ConVars on launch
Currently, there's a bug preventing console command arguments (prepended with +) from being executed on launch in the same manner as Source games. Luckily, a workaround has been discovered, enabling any internal command to be successfully executed on launch, but it can be done even more easily by using steam_dev.cfg instead.

Use steam_dev.cfg
Note: Some commands, like user_info, will not work, which is evident in the console:
ConCommand 'user_info' not currently supported in config file

This script will execute new line-separated console commands. Simply create steam_dev.cfg in the root directory of your Steam installation and write the commands one by one on each line.

+command workaround
Append a dummy command, then enclose all +commands together in quotes:
<steam_path> <args> "+some_command <arg> +some_other_command <arg> +dummy"

Use case examples
  • Skip game updates without Offline Mode* (must use Small Mode, -applaunch <AppID>, steam://run/<AppID>, or desktop shortcut):
    @AllowSkipGameUpdate 1
  • Use Steam (mostly) offline without using a firewall**:
    net_fake_state NoSteam
    Reset it with Normal, check the find entry for more options
  • Automatically increase Family Library Sharing limits:
    library_sharing_account_max 10
  • Disable metrics:
    @bMetricsEnabled 0
  • Linux - accelerate shader pre-caching (may be slower or make it stuck at 99%):
    unShaderBackgroundProcessingThreads <nproc> unShaderHighPriorityProcessingThreads <nproc>

*Mostly pointless for current client versions, considering Offline Mode no longer prevents playing outdated game versions.
**-net_fake_state can be used instead, but the console command enables changing the value in real time instead of having to restart the client.
Reusing avatars without reupload
Every single profile without an avatar set uses this default "?" avatar to the point it is always the same URL (albeit load balanced between 3 or so CDNs). Any attempts to upload that image will produce a different result since the "full" version served for profiles is not original, but a compressed variant, thus using a different file hash which determines the URL.

However, it is possible to reuse any profile picture on Steam, including the default one (done on Firefox):
  1. Obtain the SHA-1 hash of 32px version (also in the file name)
  2. Open Edit Profile » Avatar in the browser
  3. Open Web Developer Tools (Ctrl+Shift+I)
  4. Go to the Network tab
  5. On the avatar selection page, select a previously applied avatar and click Save
  6. Back to the Network tab, look for this request:
    /actions/selectPreviousAvatar
  7. Right click, then select Edit and Resend
  8. In the body field, look for:
    Content-Disposition: form-data; name="sha" 0000000000000000000000000000000000000000
  9. Edit the 40 character file hash to the SHA-1 hash of the desired avatar
  10. Click Send
Selection/mouse click freezes (Linux)
Press Shift once. It should unfreeze and be usable as normal.
Combo boxes break on tiling window managers (Linux)
Click on the combo box, then use up/down arrow to navigate and select an item.
Slow smooth scroll speed (Linux)
In February of 2023 (and again in April) the client finally received a fix that enabled smooth scrolling. However, it still uses an outdated Chromium version (85) which had the slow scrolling issue. It has been fixed in Chromium 109, so until they sort that out, there's a dirty hack called IMWheel[wiki.archlinux.org] you can use.

~/.imwheelrc preset for Steam:
# Speed up scrolling for pre-109 CEF "^(Steam|Friends List.*)$" None, Up, Button4, 2 None, Down, Button5, 2 # Default (or else Ctrl+Scroll and such won't work in any application) ".*" Control_L, Up, Control_L|Button4 Control_L, Down, Control_L|Button5 Control_R, Up, Control_R|Button4 Control_R, Down, Control_R|Button5 Shift_L, Up, Shift_L|Button4 Shift_L, Down, Shift_L|Button5

Considering that IMWheel handles all events, even with modifier keys, this is not a good solution for long-term use. Revert as soon as the core issue is fixed.
Use Steam Overlay without launching through Steam (Linux)
Set the environment variable for the game:
32-bit
LD_PRELOAD="<steam-dir>/ubuntu12_32/gameoverlayrenderer.so:$LD_PRELOAD"
64-bit
LD_PRELOAD="<steam-dir>/ubuntu12_64/gameoverlayrenderer.so:$LD_PRELOAD"
If unsure, use this instead and ignore the invalid architecture error:
LD_PRELOAD="<steam-dir>/ubuntu12_32/gameoverlayrenderer.so:<steam-dir>/ubuntu12_64/gameoverlayrenderer.so:$LD_PRELOAD"
SteamCMD not launching games (Linux, macOS)
Note: This is pointless for the most part, considering it is hardly different compared to launching games directly (without Steam client), meaning many features won't be present, and it may require the full client to be running.
Note: Launching Steam client with -textclient, other than requiring libraries to be manually imported, is no different from using SteamCMD, and moreover, will break your installation!

The reason why app_launch always fails for multi-platform games is that every launch entry for every OS is in a list, and selecting the first one (which happens when LaunchOptionIndex is unset) tends to be for the wrong OS since app_launch doesn't filter by OS.

Also, if a full Steam client isn't installed, launching requires some binaries to be present in SteamCMD working directory. Arch Linux example (steamcmd AUR package):
ln -s ~/.local/share/Steam/ubuntu12_32/{reaper,steam-launch-wrapper} ~/.steam/steamcmd/linux32

app_launch command must be specified along with LaunchOptionIndex parameter, corresponding to app_info_print output ("<AppID>" > "config"):
"launch" { "0" { "executable" "Terraria.exe" "config" { "oslist" "windows" } } "1" { "executable" "Terraria.app/Contents/MacOS/Terraria" "type" "default" "config" { "oslist" "macos" } } "2" { "executable" "Terraria" "description" "Launch" "config" { "oslist" "linux" } } }

Example of proper use of the app_launch command with the default Linux launch options:
app_launch 105600 2
Source/Source 2 tools not present (Linux, macOS)
Valve hasn't ported all Source/Source 2 tools to Linux/macOS yet, even if some are based on Qt and other cross-platform libraries.

In order to work around the unavailability, you may derive binaries from another Source/Source 2 Windows game build, provided that the engine branch is the same or similar enough.

Otherwise, download Windows binaries separately from the game installation:
  1. Go to the SteamDB[steamdb.info] page of the desired game
  2. Go to the Depots page
  3. Find the depot containing Windows binaries and copy its Depot ID
  4. Run this command:
    steam steam://open/console
  5. Enter this command in the console:
    download_depot <appid> <depotid>
    — <appid> being the game's App ID and <depotid> being the ID from earlier
  6. Wait for the download to finish, find the binaries in the directory printed in the console
  7. Use Wine to run the desired tool

Note: Since all Valve projects are statically linked, the working directory must be correctly set before using the desired tool.
Additional resources
Useful tools

Useful guides

-- Mirrored from Steam