Gaming in Linux: how to get the best of it

The title of this post is a paradox itself. If you're a Linux user, you already know that. If you're not, let's just say that the procedure to play a popular game in Linux is usually something like the following:
  • Think about some game not too heavy for the box you own (even when you ran Windows);
  • Look said game up on WineHQ's AppDB section;
  • Pray it's rated Platinum (or at least Gold, for mercy);
  • Torrent said game (unless you actually have a CD of it);
  • Install said game and play it, only to find out a few side glitches that were not there with Windows;
This is the standard procedure with most of the games I've ran, or currently run. Most of them (which were AppDB checked beforehand) ran seamlessly, and only two presented glitches that had to be tweaked out. So, though I know that gaming in Linux is a lost cause by definition, I find that the Wine workarounds have worked pretty damn well so far. And that is to say:

I am pretty damn satisfied with Desktop Linux as it is at the moment - and gaming IS included in my satisfaction rating.

What... do you want more explanations? Well, I guess I do owe them in this case... It'll also help you to understand how to get the best Gaming experience in your Linux box.

For starters, a little disclaimer: I am not a gamer, at least not a hardcore one. I did play a lot of games when I used Windows, but most of them were limited to single player shooters or real-time strategy ones. Among other games that made my childhood, there were: Doom, Quake, Duke Nukem (3D and beyond), Age of Empires (series), Half Life (series and mods), Max Payne (series), and various games for non-PC consoles. You can see that my gaming aspirations were along the more modest ones. Not surprising given my age and raising environment. I do also enjoy a couple of games native to Linux - including emulators (they are native regardless of argument), MMORPGs and the Quake-based shooter OpenArena.

A basic rule for using wine is the KISS simple: the simpler, lighter and older an application is, the better it will run on wine. Batch files and DOS programs work 100% in bash under wine, for example. Hell, even my professor's self-authored Thermodynamics Calculator work without any problem. What this means is that games released from the 90s and mid-2000s will work without any problem. You can consult the AppDB to validate my argument. There are a few exceptions: Valve Software's Team Fortress 2, for example, has a platinum rating, and I've ran it without major problems. In fact, all of Valve's games can run perfectly under a Linux environment - so perfectly that it makes you wonder why won't they port them, but then again they are Valve software... Well, back to the gaming choice: your best bets for smooth gaming are the Platinum rated ones. With the right game on, let's move on to the next step: the choice of base software.

The base software I'll talk about are the Operating System and the wine release. Though many times generalized, there are great distinctions among Linux distributions, which also includes compatibility with certain Games. You can see that on the AppDB, as the test results are ordered according to both wine version and Distribution. Now, I've tested over 15 distributions in my Linux experience, but only gamed in two (Ubuntu and PCLinuxOS). Therefore the data I'll present here is drawn mainly from WineHQ's test results. It appears that the two most successful distros for Gaming are Ubuntu and Gentoo - and since Ubuntu is Debian-based, I take that most Debian-based distros should follow prompt. I expect that since you read through this in my blog, you probably use Ubuntu, so go ahead and game on without fear, son. Unless you are some L33t h4x and decided to tweak the shit out of your Gentoo box, but even then you are also good to go.

The other thing to consider is your wine version. It is indeed the spirit of Linux to live on the edge in terms of software, but it does have some small drawbacks. One of which is the fact that the latest version of wine may not exactly be the best to run the game you want. The WineHQ website itself says it. By adding the Wine repository, you will end up installing an experimental package that does have a couple of holes in it. Your best bet? Download the latest STABLE package. As of Nov 2011, this would be wine-1.2.3. If you (in a Debian-Based box) type 'apt-get install wine' after adding the repository, what you get is the experimental version. So search the repository carefully, preferably in Synaptic.

The last thing to consider is your machine. It is well known to the Linux community that certain pieces of hardware like Linux more than others, and that does reflect in the overall performance of gaming. ATI graphics cards, for example, had failed or did poorly on my gaming experience. Also, I've found that wine, although not a full emulator, tends to divide computer resources to separate the running application from the rest of the Operating System. This means that you end up taking all the free memory and CPU and splitting it evenly with the game you will play. Got a dual core processor? Your game will sack one of them! That is to say: make your gaming environment lightweight. LXDE works awesomely, and so does Xfce, I've heard, and it integrates better with compiz, should you really want that. Of course you can also put a heavy-ass KDE to play it, but the previous ones are the most optimal alternatives in my opinion.

Combine the above steps together, and you will have a pretty optimal experience in gaming with Linux. Feel free to contact me any issues you can have!

November 2011 by Klaus Zimmermann
Contact me.