Freely distributed games include popular card games, Gaming with X Window board games, strategy games, and first person shooters. The list of commercial games that will run in Linux has also grown steadily in recent years.
Running commercial Linux games
These days, many native Linux games are also network-enabled.
You can battle tanks (BZFlag), create civilizations (freeciv) or play standard board games (gnuchess) against others on the Internet. In most cases, both the clients (playing the games) and the game servers (managing dozens or hundreds of players) will all run natively in Linux.
TransGaming and Cedega gaming Playing games from id Software and Loki
This chapter provides an over view of the state of Linux gaming today. It describes games that were created specifically to run in Linux, and explains how to find commercial games that run in Linux (either with a Linux version or running a Windows version along with Windows compatibility software, such as
Overview of Linux Gaming
Linux is a wonderful platform for both running and, perhaps more especially, developing computer games. Casual gamers have no shortage of fun games to tr y. Hardcore gamers face a few more challenges with Linux. Here are some of the opportunities and challenges as you approach Linux gaming:
Plenty to play — If you just like to be diver ted by playing some solitaire or shooting some asteroids, start with the Games menu on your desktop. Both GNOME and KDE desktops come with many more games than you will get on default desktop Windows systems. I provide a list of popular desktop games later in this chapter. If your Linux system doesn’t have them, you can certainly get them.
If you are a more serious gamer, you will almost certainly want a video card that provides hardware acceleration. Open source drivers for some video cards are available from the DRI project. Video cards from
NVIDIA and ATI often have binar y-only drivers available. Fun open source games such as PenguinPlanet Racer, BZFlag, and others that recommend hardware acceleration, will run much better if you get one of these supported cards and drivers.
The latest commercial computer games are not all por ted to run in Linux. Boxed commercial games for Linux include Unreal Tournament 2003 and 2004, as well as about 50 first-rate commercial games that have been ported to run in Linux. Using Cedega software from Transgaming.com, you can get hundreds more commercial games to run. To see if the game you want is running in Cedega, visit the Transgaming.Org
Games Database (http://transgaming.org/gamesdb) to see its status.
Commercial Linux games are described in more depth later in this chapter.
Many commercial computer games that don’t have Linux
clients available do have Linux game servers associated with them. So Linux is a great operating system for hosting a LAN party or setting up an Internet gaming server.
Linux Gaming Development — Some of the most advanced tools and application programming interfaces (APIs) for developing computer games run on Linux systems. If you are interested in developing your own games to run in Linux, check out the OpenGL (http://opengl.org) and Simple Directmedia Layer (www.libsdl.org) projects.
While the development tools available for developing open source games are awesome, a primary goal of this book is to get you up and using Linux as quickly as possible. To that end, I want to tell you first how to get hold of games that already run well in Linux and then how to get games working in Linux that are intended for other platforms (particularly Windows and some classic gaming consoles).
Basic Linux Gaming Information
There isn’t much you need to know to run basic X Window–based games that come with Linux. The following sections describe basic information about Linux gaming.
Where to Get Information About Linux Gaming
Many Web sites provide information about the latest games available for Linux, as well as links to download sites. If you’re looking for information about Linux gaming, start with your distribution’s home page www.redhat.com, for example), the home page of your desktop environment (www.kde.org or www.gnome.com, for example) or simply search for “Linux Games” or your favorite game title and
“Linux” in any search engine. Here are several to get you started:
TransGaming Technologies (www.transgaming.com) — This company’s mission is to bring games from other platforms to Linux. It is the provider of Cedega, formerly known as WineX, a powerful tool that enables you to play hundreds of PC games on your Linux system.
The Linux Game Tome (http://happypenguin.org) — Features a database of descriptions and reviews of tons of games that run in Linux. You can do keyword searches for games listed at this site. There are also links to sites where you can get the different games and to other gaming sites.
Linuxgames.com (http://linuxgames.com) — This site can give you some ver y good insight into the state of Linux gaming. There are links to HOWTOs and Frequently Asked Questions (FAQs), as well as forums for discussing Linux games. There are also links to Web sites that have information about
id Software (www.idsoftware.com) — Go to the id Software site for information on Linux demo versions for Quake and Return to Castle Wolfenstein.
Linuxgamepublishing.com (www.linuxgamepublishing.com) — A new entrant into the Linux gaming world, linuxgamepublishing.com aims to be a one-stop shopping portal for native Linux games, as well as for por ts of games from other platforms. At the time of writing, it offers 15 games. To purchase
games from this site, you must create a user account.
Loki Entertainment Software (www.lokigames.com) — Loki provided ports of best-selling games to Linux but went out of business in 2001. Its products included Linux versions of Civilization: Call to Power, Myth II: Soulblighter, SimCity 3000, Railroad Tycoon II, and Quake III Arena. The Loki Demo Launcher is still available to see demo versions of these games, and some boxed sets are available for ver y little money.
Tux Games (www.tuxgames.com) — If you are ready to purchase a game, the Tux Games Web site is dedicated to the sale of Linux games. In addition to offering Linux gaming news and products, the site lists its top-selling games and includes notices of games that are soon to be released.
While the sites just mentioned provide excellent information on Linux gaming, not all games have been packaged specifically for every version of Linux. Even though you can always nudge a game into working on your particular Linux distribution, it’s probably easiest to start with games that are ready to run. The following list provides information about where to find out about games packaged for different
Choosing a Video Card for Gaming
Because 3D games place extraordinar y demands on your video hardware, choosing a good video card and configuring it properly is one of the keys to ensuring a good gaming experience. For advanced gaming, you need to go beyond what a basic 64-bit card can do for you.
Binary-only Video Card Drivers
Most serious Linux gamers have either an NVIDIA or ATI card, so that’s the short answer to starting out with serious Linux gaming. Although open source drivers are available from most NVIDIA and ATI cards, those drivers do not support 3D hardware acceleration. While that’s fine for most desktop applications, for gaming you want to get the binar y-only drivers for those cards from the following locations:
NVIDIA — To get NVIDIA drivers that run in Linux, go to the Unix Drivers Por tal Page (www.nvidia.com/object/unix.html).
ATI — To find Linux drivers for ATI video cards, visit the ATI support Knowledge Base page that describes Linux drivers at http://support.ati.
When you go to get a binar y-only video driver, be sure that you know not only the video card model you are using, but also the name and version of your X ser ver (XFree86 used to be the most popular, but many of the biggest Linux distributions now use X.Org). Resulting video driver modules may be specific to the Linux kernel you are running. So, know that if you upgrade your kernel, you might need to rein-
stall your video driver as well.
The rpm.livna.org site has greatly simplified the process of installing ATI and NVIDIA drivers for Fedora Core and other Red Hat systems. Refer to the Livna Switcher page (http://rpm.livna.org/livna-switcher.html) to learn how to install RPM packages containing the ATI or NVIDIA drivers you need.
If you load a binary-only driver, it does what is referred to as “tainting the kernel.”
As a result, you won’t be able to get support if you run into problems (at least from kernel.org) because, lacking the source code, it is hard to debug driver-related problems. Also, binary-only drivers are known to cause obscure problems because they get out of sync with kernel code changes. Similarly, binary-only drivers aren’t updated as frequently as the kernel. While many people, including myself, use binary-only drivers in special cases, they do have shortcomings that you should be aware of.
Open Source Video Drivers
If you want to use open source drivers for 3D accelerated gaming, whether you are running the games using Cedega or natively in Linux, look for cards that have drivers that support OpenGL. The DRI project is one initiative that is creating OpenGL driver implementations. Following is a list of video card manufacturers
that have DRI video driver support available. The list is from the DRI project site http://dri.sourceforge.net/).
ATI Technologies — You don’t have to use binary-only drivers to get 3D acceleration for some ATI video cards with open source drivers. Chip sets from ATI Technologies that support DRI include the Mach64 (Rage Pro), Radeon 7X00 (R100), Radeon 2 / 8500 (R200), and Rage 128 (Standard, Pro, Mobility). Cards
based on these chip sets include All-in-Wonder 128, Rage Fury, Rage Magnum, Xpert 99, Xper t 128, and Xpert 2000.
3dfx— If you can find a used unit on eBay (3dfx is no longer in business), there are several 3dfx cards that support DRI. In particular, the Voodoo (3, 4, and 5) and Banshee chip sets have drivers that support DRI. Voodoo 5 cards support 16 and 24 bpp. Scan Line Interleaving (SLI), where two or more 3D
processors work in parallel (to result in higher frame rates) is not supported for 3dfx cards.
3Dlabs — Graphics cards containing the MX/Gamma chip set from 3Dlabs have drivers available that support DRI in Linux.
Intel— Supported video chip sets from Intel include the i810 (e, e2, and -dc100), i815, and i815e.
Matrox — The Matrox chip sets that have drivers that support DRI include the G200, G400, G450, and G550. Cards that use these chips include the Millennium G450, Millennium G400, Millennium G200, and Mystique G200.
To find out whether DRI is working on your current video card, type the following:
$ glxinfo | grep rendering
direct rendering: Yes
This example shows that direct rendering is enabled. If it were not supported, the output would say No instead of Yes. While DRI can be important, many games implement OpenGL rendering, which is a feature supported by both NVIDIA and ATI video cards. To enable rendering for cards that suppor t it, add the following line to your /etc/X11/xorg.conf file:
| || |