Note:Steam installs library dependencies of a game to a library directory, but some are missing at the moment. Report bugs involving missing libraries on Valve's bug tracker on their GitHub page before adding workarounds here, and then provide a link to the bug so it can be removed as the problems are fixed.

Tip: If a game fails to start, a possible reason is that it is missing required libraries. You can find out what libraries it requests by running ldd game_executable. game_executable is likely located somewhere in ~/.steam/root/steamapps/common/. Please note that most of these "missing" libraries are actually already included with Steam, and do not need to be installed globally.

The Book of Unwritten Tales

If the game does not start, uncheck: Properties > Enable Steam Community In-Game.

The game is known to segfault when opening the settings and possibly during or before playing. A workaround from the Steam discussions is to replace the game's RenderSystem_GL.so with one from Debian's repositories. To do that download this deb file, and extract it with dpkgAUR:

$ dpkg -x libogre-*.deb outdir

Now replace gamedir/lib/32/RenderSystem_GL.so with the one extracted from the .deb package.

The Book of Unwritten Tales: The Critter Chronicles

To prevent the game from crashing at the end credits, change the size of the credits image as described here.

Borderlands 2

Migrating saves from other platforms

Borderlands 2 does not support cross-platform Steam Cloud syncing,
you have to manually copy the files between platforms.
Save locations can be found here.
Make sure your user can access the files.

Using Ctrl Key

Borderlands 2 does not allow the Ctrl key to be used by default. The game seems to be accessing keycodes and not keysyms, therefore xmodmap has no affect. A workaround is using setkeycodes to map the Ctrl-scancode to some other key, as described in Map scancodes to keycodes#Using setkeycodes. I use setkeycodes 0x1d 56 (as root) to map Ctrl to Alt before starting the game and setkeycodes 0x1d 29 to restore the default.

Logging into SHiFT

Out of the box you will not be able to log into SHiFT since the game expects certificates to be in /usr/lib/ssl, which is where Ubuntu stores them. Arch however uses /etc/ssl.
To resolve the problem, add SSL_CERT_DIR=/etc/ssl/certs to your launch options.

Game crashes nearly instantly

As of lib32-openal version 1.18.0-1, the game crashes instantly. The possible solutions are to downgrade lib32-openal to 1.17.2-1, or to start the game with LD_PRELOAD='$HOME/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libopenal.so.1'.

Borderlands: The Pre-Sequel

Keyboard not working

Not starting via Steam

If the game appears as Running, then syncs and closes when you launch it from Steam, try creating a steam_appid.txt in the game directory
containing 261640. This should resolve the issue and let you start the game directly from the game directory. If that does not work, try using the steam-native-runtime.

Cities in Motion 2

Dialog boxes fail to display properly

You will not be able to read or see anything, and you will have this in your logs:

Cannot reach bottom of the screen on menus

If you have a secondary monitor you might have a part of your lower screen you cannot reach in menus.
If on Gnome you can try to open the overview (Super key) and drag the game to the other monitor and back.

If you are not on Gnome or dragging the window back and forth did not work you can try to installwmctrl and run this command, where X and Y is the offset of the window and H and W is the size.

wmctrl -r "Counter-Strike: Global Offensive - OpenGL" -e 0,X,Y,H,W

Example: SecondaryMonitor: on the left 2560x1600, GamingMonitor: on the right 2560x1440).

Dwarfs F2P

Game does not start

There was a bug that stopped Steam from fetching all the needed files. It should be resolved, if you still bump into this problem, try verifying integrity of game cache from game properties, local files tab.

If the game still crashes at startup, edit gamedir/Run.sh and change

export LD_LIBRARY_PATH=.:${LD_LIBRARY_PATH}

to

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:.

Note: This file may be overwritten by updates or by verifying integrity of game cache. You may need to modify it again.

If these do not help, you may have outdated libraries in the game installation folder that are crashing the game on startup. Try removing the following files from the game directory:

libX11.so.6 libsteam.so libtier0_s.so libvstdlib_s.so steamclient.so

Game crashes

In some cases, the game crashes about 2 minutes before the end of every arcade. This bug has been reported, but there's no known solution to it.

Dynamite Jack

Sound Issues

When running on 64-bit Arch Linux, there may be "pops and hisses" when running Dynamite Jack. This could be caused by not having STEAM_RUNTIME=0 set. (However, even with STEAM_RUNTIME=0 set, the game may still sometimes start with this issue. Exiting and restarting the game seems to make the problem go away.)

Game does not start

If running steam with the STEAM_RUNTIME=0, Dynamite Jack may have a problem starting. Check the steam error messages for this message:

Football Manager 2014

FORCED

This game has 32-bit and 64-bit binaries. For some reason, Steam will launch the 32-bit binary even on 64-bit Arch Linux.
When manually launching the 64-bit binary, the game starts, but cannot connect to Steam account, so you cannot play.
So install 32-bits dependencies, and launch the game from Steam.

FTL: Faster than Light

Compatibility

After installation, FTL may fail to run due to a 'Text file busy' error (characterised in Steam by your portrait border going green then blue again). The easiest way to mend this is to just reboot your system. Upon logging back in FTL should run.

The Steam overlay in FTL does not function as it is not a 3D accelerated game. Because of this the desktop notifications will be visible. If playing in fullscreen, therefore, these notifications in some systems may steal focus and revert you back to windowed mode with no way of going back to fullscreen without relaunching. The binaries for FTL on Steam have no DRM and it is possible to run the game without Steam running, so in some cases that may be optimum - just ensure that you launch FTL via the launcher script in ~/.steam/root/steamapps/common/FTL Faster than Light/data/ rather than the FTL binary in the $arch directory.

Problems with open-source video driver

FTL may fail to run if you are using an opensource driver for your video card. There are two solutions: install a proprietary video driver or delete (rename if you are unsure) the library "libstdc++.so.6" inside ~/.steam/root/steamapps/common/FTL Faster Than Light/data/amd64/lib. This is if you are using a 64bit system. In case you are using a 32bit system you have to remove (rename) the same library located into ~/.steam/root/steamapps/common/FTL Faster Than Light/data/x86/lib.

If the error mentions a missing library for libgcrypt.so.11, install lib32-libgcrypt15.

Opening some menus causes the game to crash

Most menus work fine, but ones with checkboxes (LAN multiplayer, mounted games list) do not work at all. This is a bug in the menu code.

If you prefer the default menu style and do not mind a hacky solution: Simon311 has written code with instructions to fix it.

If you do not care for the default menu style and want a more stable but feature-incomplete solution, Facepunch developer robotboy655 has written a new menu.

Game crashes after attempting to join server

While in the process of joining a server, downloading resources, etc, the game seems to hang and after a while, perhaps during the "sending client info" portion the game crashes, usually without any error messages. Error does not give much information, however, the process for Garry's mod is killed.

This issue arises more often when joining servers with many addons like DarkRP servers specifically.

The problem seems to correlate with a weak GPU and the game is timing out from the server, so if the GPU is the problem, lowering the graphics settings to the minimum should fix the problem.

The problem seems to be related to RAM usage, once you hit around 2GB of RAM used, the game will crash. Servers with many addons have much more RAM usage, and lowering graphics settings to the minimum lowers RAM usage and mitigates crashes.

Halo: Custom Edition

Although not a Steam game, Halo: Custom Edition running under Wine and/or PlayOnLinux has many audio problems. To mitigate this, install dsound via winetricks or PlayOnLinux. Then, set the in-game "Sound Quality" to medium. If you have installed the campaign extra, this also restores all video cut-scene audio.

Cutscenes are still black

Turn off Vertical Sync in the Display options, and/or set POST FX to Low in the Quality options, and/or turn global Quality options down a notch.

Cursor disappears

Go to Options > Controls, and set mouse locking to unlocked.

The options is visible only if you're navigating using your (invisible) mouse. It will not show up when navigating with a controller.
One solution is to go to Options -> Controls with a controller before switching to the mouse and trying to blindly it the setting.

Mark of the Ninja

Bad sound

Metro: Last Light

The game does not allow you to change its resolution on a multi-monitor setup on GNOME with the AMD Catalyst drivers. A temporary workaround is to disable the side monitors.
Jason over at unencumbered by facts managed to get it working with his multi-monitor setup using a single display server, he however is using Nvidia.

The Polynomial

Segfaults during program start on 64-bit systems

The game segfaults during program start because of the LD_LIBRARY_PATH setting in the launcher script. Edit gamedir/Polynomial64, and comment out the LD_LIBRARY_PATH variable. Make sure to put the ./bin/Polynomial64 "$@" command on a new line.

Portal 2

Game does not start

Several OpenGL-related errors (such as PROBLEM: You appear to have OpenGL 1.4.0, but we need at least 2.0.0! or libGL error: driver pointer missing) are caused by Portal 2 bundling an old libstdc++ file. This error is especially common with open source Radeon drivers (radeonsi). See Steam runtime issues.

A problem with libstdc can be fixed by adding LD_PRELOAD='/usr/$LIB/libstdc++.so.6' to your launch options.

Resolution too low

When the game starts with a resolution so low that you cannot reach the game settings,
start the game in windowed mode by setting the launch option-windowed.

Missing non Latin font

Portal and Portal2 use Helvetica, add the following lines to ~/.config/fontconfig/fonts.conf:

Serious Sam 3: BFE

No audio

If that does not work, try tweaking ~/.alsoftrc as proposed by the Steam community (Serious Sam 3: BFE uses OpenAL to output sound). If you are not using Pulse Audio, you may want to write the following configuration:

Space Pirates and Zombies

No audio

If that does not work, try tweaking ~/.alsoftrc as proposed by the Steam community (Serious Sam 3: BFE uses OpenAL to output sound). If you are not using Pulse Audio, you may want to write the following configuration:

Splice

Star Wars Battlefront II

Star Wars Battlefront 2's Steam version running under Wine has a bug which causes it to take forever to load a game. The solution is to compile a custom Wine version with the patch from this WineHQ bug comment.

In order to use the patched wine version with PlayOnLinux, copy the completely patched and compiled wine-1.7.55 folder to ~/.PlayOnLinux/wine/linux-x86/.

The Stanley Parable

Game won't start

As discussed in the Steam store page, remove bin/libstdc++.so.6 from the game folder.

No English fonts

Stephen's Sausage Roll

No sound

If using native libraries[broken link: invalid section] and libpulse is installed, Unity may try to use that library for sound and fail.
To test if this is the problem, try removing libpulse or renaming the package files that are named libpulse-simple*. To see which libpulse files are relevant, run:

After you have created these 0-byte files, you can now attempt to run the game binary directly, telling the dynamic linker to use our 0-byte files:

$ LD_LIBRARY_PATH="noload/:$LD_LIBRARY_PATH" ./Sausage.x86_64

If everything works up to this point, you can amend the launch options in Steam to be:

LD_LIBRARY_PATH="noload/:$LD_LIBRARY_PATH" %command%

Again, this should work because Steam checks for a noload/ directory relative to the game's directory. The dynamic linker should respect the $LD_LIBRARY_PATH variable and fail to load the necessary libpulse files. The game should then fallback to plain ALSA.

Tabletop Simulator

CJK characters not showing in game

Team Fortress 2

HRTF setup

Assuming HRTF (head-related transfer function) has been properly set up in the operating system, HRTF won't be enabled unless you disable the original processing. To do so, use

dsp_slow_cpu 1

For best results, also change the following:

snd_spatialize_roundrobin 1
dsp_enhance_stereo 0
snd_pitchquality 1

Loading screen freeze

If you are a non-english (speaking) user, you have to enable "en_US.UTF-8" in the locale.gen! Generate a new locale after that.

No audio

It happens if there is no PulseAudio in your system.
If you want to use ALSA, you need to launch Steam or the game directly with SDL_AUDIODRIVER=alsa
(From SteamCommunity).

If it still does not work, you may also need to set the environment variable AUDIODEV. For instance AUDIODEV=Live. Use aplay -l to list the available sound cards.

Slow loading textures

If you are using Chris' FPS Configs or any other FPS config, you may have set mat_picmip to 2. This spawns multiple threads for texture loading, which may cause more jittering and lag on Linux, especially on alternative kernels. Try setting it to -1, the default.

Correctly recognized means you can control the desktop mouse and Steam in Big Picture mode and the controller is shown in the Big Picture settings.

Tower Unite

Graphical Glitches

This is a known issue, and it occurs because the shaders had not been ported to Linux yet by the developers.
To minimize glitches and make the game playable add -opengl4 to your launch options,
set Ocean Quality to "Potato" and Effects Quality to "Low" in the game settings.

Resolution

If the game resolution is wrong when using a dual monitor setup and you can't see the whole window edit ~/.frozenbyte/Trine2/options.txt and change the options ForceFullscreenWidth and ForceFullscreenHeight to the resolution of your monitor on which you want to play the game.

Unity3D

Games based on the Unity3D engine, like War For The Overworld or Pixel Piracy may need the package lsb-release to understand that they run on Linux and work properly.

Locale settings

Games made in C# often have a problem with some locales (e.g. Russian, German) because developers don't specify locale-agnostic number formatting. This can result in some game screens loading only partially, problems with online features or other bugs.

Worms W.M.D

The game includes several workarounds in the Run.sh script, however these may not work and it is easy to get the game running without this script.

First, try running the game directly from its SteamApps directory (usually ~/.steam/steam/steamapps/common/WormsWMD/Worms W.M.Dx64). If you get a "No such file or directory" error about libcurl-gnutls, install libcurl-gnutls. If the game crashes after playing the intro movies, add the Steam Runtime dbus libraries to the game's library directory:

Now the game should run using the default "Play Worms W.M.D" option. See also Steam community discussions [11] and [12].

On some systems there are terrain bugs where holes in terrain are not rendered properly and worms can fall through terrain unexpectedly. These bugs can make the game unplayable in many situations and there is no known fix for them.