Open Source Challenge part 9: Gaming

Well I’ve left the realm of games towards the end our experiment because frankly Linux has never really been a gaming platform. In all the areas where Linux has excelled and even surpassed Windows gaming is not one of them.

So why not?

Pure market penetration aside Microsoft wisely invested in the development of DirectX many years ago. While the initial implementations of DirectX were horrid it quickly matured and has — quite literally — enabled a whole new age of gaming and all because it simplified the development of games for the Windows platform.

Linux can’t run DirectX obviously and while there are various inroads for providing Linux with a similar set of APIs for developers to use (such as SDL — Simple Directmedia Layer) it simply hasn’t attracted the attention warranted to make this a priority in the open source community.

That’s not to say Linux can’t play games however. They just might not be what you expect.

The Ratings

In this project we’re making the assumption that Windows does all that we need and we’re seeing if Linux and open source software measures up. Perhaps that’s not an entirely fair place to sit however as the de-facto in operating systems for which everyone is familiar it’s our best basis for comparison. So here’s how we’ll rate the experience of going Windows-free:

Optimal — Passes with flying colours. The task could not only be completed but better or easier than under Windows.

Pass — No problems. The task can be completed exactly as under Windows.

Iffy — When a task could only be partially completed or completed but not without issue.

Flop — Not possible to complete at all. Probably not a good thing.

Native games

There are in fact loads of games made specifically for the Linux platform aka ‘native’ games. They are for the most part not the blockbusters you’d expect.

Above and beyond the usual pre-installed puzzle games there are various shoot-em-ups platform games racing games and even FPS games for Linux (see Free Games below).

But what about the big commercial releases we see under Windows?

There are actually quite a few that were and are released with Linux binaries — though usually not in the box. You have to download them.

Largely whether a game gets a native Linux version is at the whim of the developers — afterall there so far hasn’t exactly been a strong economic case to build them. Here iD and Epic are the most supportive (as the above list shows) and there’s no doubt this has endeared the Linux community to them.

And how do these titles play? Exactly the same as under Windows. In fact in some cases these native games are a tad faster under Linux probably more reflective of the kernel and OpenGL layer than anything else. This is actually the key — OpenGL is supported as equally well under Windows as Linux but DirectX is Windows only. Native games have generally been OpenGL.

While I haven’t played any native Linux ports recently I don’t plan to buy any for this experiment — I’m better off saving my money for the next Windows based game release (Crysis anyone?). That said blockbuster native Linux games do exist. They’re just few and far between and unfortunately as the entertainment world moves to DirectX10 any legacies of OpenGL support will dry up and with it Linux’s best native graphics support.

I’m scoring this in the middle — native ports work beautifully but there just aren’t enough of them.

Native games: Pass — No problems. The task can be completed exactly as under Windows.

Enter Cedega

Never one to be stumped the Linux community gave birth to a company many years ago called Transgaming which have over time continually developed a product now known as Cedega. Cedega is essentially a highly developed branch of WINE with DirectX support thrown in. It can quite literally allow you to play native Windows games on the Linux desktop. However it’s a commercial product with a subscription fee which also includes the ability to cast ‘votes’ on which games you want the company to focus on running well under Linux next.

Cedega makes it possible to play not only some of most popular titles ever made under Linux — such as Half Life 2 and World of Warcraft — but it frequently allows you to play current releases as well. Sometimes they work out of the box other times Transgaming needs to update Cedega to get the games running and usually they do.

On Ubuntu installing Cedega is a matter of running the supplied .deb package that adds a new ‘Transgaming Cedega’ menu which launches the Cedega browser. The browser is basically an interface to make it easier to manage your games but note games must be installed afresh from here not simply run from a Windows partition.

As I’m a picky gamer and don’t like forking out cash for games that won’t hold my interest which means I haven’t bought a game for a while I grabbed some recent game demos including Supreme Commander and Command and Conquer 3 to test Cedega out. According to the Transgaming web site both are ‘approved’ and thus should work.

Unfortunately they didn’t. Supreme Commander bombed out at the Setup screen and Command and Conquer 3 wouldn’t even launch the installer (even with ‘Big exe’ ticked in Cedega). So I tried to grab a not so new game that wasn’t a demo — the full free version of F.E.A.R Combat. The Setup appeared to work until it came to the license agreement which the installer unrealistically expected to be read and checks by seeing if the document has been scrolled to the bottom — something it seems Cedega couldn’t pick up and so the install couldn’t continue. Surely it can’t be this hard just to handle setup routines?

Finally I tried Steam which I know should work as I have actually played games like Half Life with Cedega a while back in earlier versions but for some reason now it kept reporting that it couldn’t find glob files despite having the working directory correctly set. It could be something specific to my system or my Ubuntu install but I was disappointed that four out of four programs wouldn’t work.

Cedega has a popular following and a large game database of games that it can run to various levels of success. And given I have used it in the past (though not on an Ubuntu install at the time) it wouldn’t be fair to score it too low but it certainly would have fared better if it worked for me now.

Transgaming: Iffy — When a task could only be partially completed or completed but not without issue.

The Cedega browser good for managing games when you install them.

Free Games

Thanks to open source there are actually quite a few fun and free games to download and for which the Ubuntu repositories have a fine selection. From the Applications > Add/Remove menu there’s a whole range of games from the basic classics like Nethack and Frozen Bubble through to 3D accelerated gems like Chromium and Neverball. I played all of these. And then I played some more. And then some more. How do they make these so damn addictive?

They’re not blockbusters but they beat the pants off the free games bundled in Windows and will keep you occupied for many hours longer. Good deal for the price point.

Free games: Optimal — Passes with flying colours. The task could not only be completed but better or easier than under Windows.

Frozen Bubble.

Neverball.

Nvidia support

In the process of installing some of the Free games I needed to update to the official Nvidia drivers replacing the free ‘nv’ driver that comes with X11 (and which is designed for 2D acceleration only). This was easier said than done.

While these appear to be listed as installed in Ubuntu’s Synaptic package manager there’s no where to enable these through Ubuntu’s configuration options. In fact rather than fuss around with Forums to get yet another feature that should just work in Ubuntu I turned to Automatix which also has an ‘Nvidia’ option under Drivers.

This worked beautifully. Automatix downloaded installed and — the most important step — configured the drivers. When I re-booted I had full 3D acceleration support.

Unfortunately given these were official drivers they also reset my screen resolution. No problem right? I’ll just run System > Preferences > Screen Resolution and reset it.

Or not — my screen resolution wasn’t listed. Only 4:3 modes are present and I have a widescreen monitor. This has nothing to do with Nvidia: the Screen Resolution tool is a front-end to the X11 configuration file which will happily run the 1920 x 1200 resolution my monitor supports it’s just the tool doesn’t know how to do it. Is it Gnome or Ubuntu responsible? It doesn’t matter as a user I just need things to work how can anyone expect to take the distribution seriously as an alternative to Windows when it can’t even properly set display resolutions? This isn’t rocket science or genetics — setting one line in a text -based ini file from a selection of options could be programmed in minutes.

So off to the command prompt I go to fix yet another glaring oversight and something which anyone new to Linux would simply have no recourse to fix.

I would really love to love Ubuntu here — Nvidia make great drivers for Linux — but I just can’t when something so simple is omitted. Not impressed.

Driver and display support: Flop — Not possible to complete at all. Probably not a good thing.

Once installed the Nvidia drivers for Linux are excellent.

Conclusion

Well we know the Linux forte’ isn’t games so it’s not much of a surprise to score it low for native games but I’m disappointed by Cedega and Ubuntu’s handling of drivers and display — two areas which could have redeemed it but didn’t. At least there were the Free games many of which take advantage of full 3D acceleration.

In the next section the conclusion of our foray into a Linux only world. From business and working to games and entertainment what’s the verdict on surviving with nothing but Ubuntu for your desktop OS?