Steam on Linux: everything you need to know
12th May 2013 | 11:00
Taking Linux gaming up a level
The lack of quality mass-appeal games on Linux is the critics' favourite excuse for dismissing Linux as a serious desktop operating system. We are glad to report that developments in the last few months will rob the peanut gallery of this reason for looking past Linux.
If Linux has had an Achilles' heel, it's gaming. Sure there are top-quality open source games, but not anywhere near as many as on Windows. That's changed with Valve, developers of some of the most popular gaming titles, embracing Linux.
Gabe Newell, Valve's head honcho, has been very vocal in his support for Linux, and finally the company has put money where its mouth is and released a version of its Steam client on Linux, along with a host of games.
Linux users have been playing games on Steam for quite a while, thanks to compatibility apps such as Wine and PlayOnLinux. What we were missing, however, was a native Linux client and official support for our platform from Valve.
According to the buzz on the internet, Valve had been working on a Linux client for some time. However, it wasn't the OS's growing popularity with desktop users that accelerated things. The tipping point was the latest release from Microsoft - Windows 8 - which Newell thinks is a "catastrophe for everyone in the PC space".
Speaking at the Casual Connect gaming conference in July 2012, Newell - a former Microsoft employee - shared his concerns on Microsoft's integration of the Windows 8 Store in the latest release and how it would affect Valve's revenue stream. He believes that once Windows 8 takes off, consumers and developers might be tempted towards the official Windows distribution platform, especially when one considers features such as Xbox LIVE integration, and away from Valve's Steam.
To save his margins, Newell picked up Linux as a hedging strategy. Soon after the conference, Valve announced that it had put together a dedicated team of developers to bring the Steam client, and titles such as the popular Left 4 Dead 2, to Linux.
After months of feverish development, in November 2012 the company announced the launch of a limited-access beta for the Linux Steam client. The client supported many best-seller games, such as the free-to-play Team Fortress 2, and offered another two dozen more for sale. Then, just in time for Christmas, Valve opened the Steam beta for everyone, with an expanded library of more than 40 games.
For now, Valve is officially supporting the Steam client only on Ubuntu to ensure a solid foundation for the client. Subsequently, though, it'll expand its efforts to other distributions.
Turn on the Valves
Valve isn't the only gaming company that is embracing Linux. There has been a similar move by Blizzard, developers of the immensely popular World of Warcraft game. Although in the past the company hasn't been keen on porting its wares to Linux, Phoronix's Michael Larabel reports fresh Linux-related developments at Blizzard. According to his source at the company, Blizzard will officially announce the Linux port of at least one of its games this summer.
Another major studio that could announce titles for Linux is THQ. The company recently released some of its games in a Humble Bundle, but unlike other bundles they weren't cross-platform and were available only through Steam. In addition to over $5 million this bundle of Windows-only games also generated a lot of feedback from Linux users. Enough in fact to force THQ to re-think its Linux strategy.
The company's president, Jason Rubin, tweeted "Got the Linux message loud and clear via #HumbleBundle feedback. Evaluating cost/ benefit as we speak".
In a follow-up interview with Polygon.com, he further explained that "the message I took away from a large number of tweets and comments around the THQ Humble Bundle sale is that there are vibrant communities of gamers using other operating systems besides the dominant ones, and a company like THQ should not overlook them".
Valve (and soon Blizzard, and hopefully THQ) joins the Humble Indie Bundle, which has championed the cause of porting games to Linux. That said, more important than porting individual games is porting gaming engines, and 2012 has seen a lot of action on that front too.
A game engine is the core library that game developers use to define various aspects of the game, such as its graphics, sounds, input methods, networking and other systems. Since there's no game-specific code in a gaming engine, the same engine can be used to develop different titles.
There are lots of open source gaming engines. Some of the popular ones are Panda3D, which is used by various developers including Disney for games such as Pirates of the Caribbean Online and Ghost Pirates of Vooju Island. Then there's ioQuake3, which is an advanced version of the Quake 3 engine and powers games such as Turtle Arena. Another well known engine is Cube, which is used in Cube 2: Sauerbraten and Red Eclipse.
Besides the open source engines, there are lots of highly respectable commercial ones as well. Valve, along with its Steam client, is also porting its Source engine to Linux. The Steam engine isn't just used by Valve games, but also by indie game developers such as the Brighton-based The Chinese Room, which uses it in its awardwinning Dear Esther title.
The developers of Dear Esther have been looking for Ubuntu users to test their game on the distro. Considering that the Source engine is still being ported to Linux, we can rest assured that more developers will follow suit and bring their titles to Linux.
Other developers are also porting their engines to Linux. Developers of the Unity game engine are also gung-ho about Linux. Unity 4 introduced support for Linux, which was previewed by playable demos of two games, AngryBots and Unitroids. Then there's Rochard, which is one of the first games built using the Unity 3D engine that runs on Linux. It was released in the Humble Bundle 6.
Then came Humble Bundle 7, which included the first native Linux game built using the Unreal Engine 3 - Dungeon Defenders. The Unreal Engine, by Epic Games, powers popular titles such as BioShock, Batman: Arkham City and the Mass Effect series.
There are also reports that Overhaul Games is working to bring Baldur's Gate Enhanced Edition to Linux. The game is powered by the Infinity Enhanced Engine.
Some developers have more ambitious plans. Garage Games open-sourced its Torque 3D engine in September 2012. Since then, there have been almost 300 forks of the codebase, but all for the Windows platform. So the developers have launched a campaign on Indiegogo to crowd-source $30,000 to finance the port. Once ported, developers will be able to write games entirely on Linux using Torque 3D.
Valve has bigger plans for the Linux port of the Steam client. The company has announced plans to use Linux to make a bigger splash in the gaming segment.
The Big Picture
One of the interesting features in the Steam client is the Big Picture mode. This mode is designed for larger displays, such as TVs, and is part of Valve's strategy to use the Steam client in a living-room-friendly console PC of its own.
The idea is that you toggle the mode in your Steam client and then connect a USB controller to the PC and hook it up to your HDTV via HDMI cables. But before Valve can enter the hardware game, it needs a platform it can tweak and customise for its purposes. And we all know there's only one platform that allows such customisation.
In an interview with The Verge, Newell confirmed that its PC package, popularly referred to as a Steambox, will run on Linux. Behind the scenes, the company is also working with Nvidia, AMD and Intel to write better drivers for Linux, and it seems to be paying off. According to the company, Valve's own games are running faster on Linux than on Windows.
Talking of gaming consoles, the Android-based OUYA console is now available for pre-order. The $99 console was funded entirely via Kickstarter, and managed to pull in more than one million dollars on the inaugural day of the campaign. It'll be powered by a Tegra 3 quad-core processor and have 1GB of RAM and 8GB of internal flash storage.
The OUYA developers have tied up with the game streaming company OnLive, and have announced an in-house game title for the console in addition to Final Fantasy III. Expect a lot more titles once it starts shipping, since the console will also serve as a development kit for developers to write new games.
Although they aren't the most critical of software, games have historically helped popularise a platform, and pushed hardware vendors for better support and drivers, which eventually makes its way into other critical areas of desktop computing. Valve is working with Nvidia to write better drivers for its cards on Linux, and other developers are working on other aspects of the Linux desktop to make it a better gaming platform, in effect improving performance for all users.
Beyond Linux gaming
And don't forget that Steam isn't limited to games anymore. In October 2012, Valve began publishing non-gaming software on Steam. It offers a limited selection of software, such as ArtRage Studio Pro, CameraBag 2, GameMaker: Studio, 3D-Coat and 3DMark 11, and these are only available on the Windows platform. But if game studios can see users on Linux and, more importantly, an additional revenue stream, surely app developers can too.
These developments, along with reports of enterprise users thinking of giving Windows 8 a miss, have given the entire open source ecosystem another shot at the Linux desktop.
Get Steam on Ubuntu
Follow our guide and install the Steam client
Now that the Linux Steam client is open to the public, you too can help Valve polish the final product. The system requirements for running the client are fairly low. You need a processor newer than a Pentium 4 1GHz, or an AMD Opteron with upwards of 512MB RAM and 5GB of hard disk space.
To enjoy the modern games, make sure that you have a decent graphics card. As per Valve, if you are an Nvidia user make sure you have a Series 6 or newer card. Similarly, AMD users are recommended Series 5 or upwards, although older cards - such as HD 2400 Pro - should also work. If you don't have either of the above, you need at least powerful on-board graphics, such as the Intel HD 3000 or newer.
However, the one thing that you do need oodles of is internet bandwidth. Most of the games that have so far been made available for download on Steam for Linux are several gigabytes in size, and most are multiplayer games, which need an active internet connection - dial-up just won't cut it.
Step-by-step: Get started with Steam
1. Upgrade drivers
Make sure you have the latest drivers for your graphics hardware. To get the best performance for newer cards, you'll have to install their proprietary drivers.
In Ubuntu 12.10, launch Software Sources, click on the Additional Drivers tab and install the latest experimental drivers. You can skip this step if you are using Intel graphics.
2. Install the client
Head to Steam's website and download the 1.5MB .deb package. You can either double-click on the file and install it with Ubuntu's Software Centre, or install it from the terminal with sudo dpkg -i steam.deb. This will launch the graphical installer, which will then download the client.
3. Create an account
After installation, the Steam client will be docked in the Launcher. When you launch the client, it'll give you the option to create an account. If you already have one, enter your login credentials. In this case, since you are logging in from a different computer, Steam will send you an email with a confirmation code to authorise the new client.
4. Download games
That's it! You're now logged in to the Steam client. The Linux client doesn't look any different from the one available for Windows. The Linux tab in the Store section lists all the titles currently available for Linux. You can start by downloading the Team Fortress 2 game, which is available for free, and then purchase additional titles. Some titles also offer free playable demos.
5. Offline mode
Besides the multiplayer games, Steam also has some single-player titles that you can play offline. Steam will start in the offline mode if there is no internet connection available, or you can manually switch by heading to Steam > Go Offline from within the client. Before you can play the title offline, ensure you've activated the game by going online at least once after installation.
6. Connect to TV
Valve is also beta testing a new mode designed for using the Steam client on HDTVs. To switch to this mode, connect your computer to an HDTV, launch the Steam client and click the Big Picture button. Besides links to the Steam store, library and community, the mode has a web browser. It's designed to be navigated with a game controller, but also works with a mouse.