November 9, 2005

Quake 4 for Linux

Author: Joe Barr

As soon as I read the news on Slashdot that id Software's just released Quake 4 was already available as both a Linux client and game server, I ran out and dropped $50 for the game. The box contained 4 CDs, a game guide, and a license key. But that's not enough to let you play Quake 4 on Linux.

The product FAQ explains that in addition to the CD key contained in the retail package -- required to play the game -- you'll need to copy a bunch of files from the CDs as part of the installation process. You'll also need to download the Linux installer -- -- from id Software or a mirror site. Hardware requirements include a 2GHz or better processor with 512MB of memory, an ATI Radeon or Nvidia GeForce video card, and a sound card supported by OSS or ALSA. You must be running version 2.2.4 or later glibc, and a kernel version of at least the 2.4 level is recommended.

Getting the Linux installer was a little frustrating. I found it impossible to download from id Software. Every time I tried I got a "421 Too many users - please try again later" response. Of course, there are other sites to get it from. At some sites, you can get a free download after clicking past a seemingly endless number of pages designed to do nothing but ring up their ad sales, and then find the free download is throttled all the way down and allows only two simultaneous free downloads -- but they will gladly sell you a download. I eventually had success at 3Ddownloads, which puts in a queue and shows ads as you wait your turn. You can't turn around and ignore the ads, as that same window is where eventually you see a "Click here to begin download" message.

Installation and tweaking

I installed Quake 4 on my homebrew AMD64 Sempron 3000+ CPU with 512MB memory, sitting on an MSI K8N mainboard, running Ubuntu Breezy. It has a PNY Verto G-Force 6600 with 256MB of memory sitting in a PCI Express slot and an SB Live! Audigy 2 sound card. Due to issues with Breezy and the Audigy 2, I am using the 5.1 channel AC97 2.3-compliant sound card on the mainboard.

Before you copy the needed files from the retail CDs prior to running the installer, create the directories needed for Quake 4 by executing the following command as root:

mkdir -p /usr/local/games/quake4/q4base

Each of the four CDs contains a directory named /Setup/Data/q4base. You'll need to insert each of the four CDs and -- as root -- copy the needed files to your hard drive. Depending on what the mount point is for your CD -- /cdrom works on mine -- the following command should do it.

cp /cdrom/Setup/Data/q4base/*.pk4 /usr/local/games/quake4/q4base

After you've copied all the files, copy the installer to /usr/local/games/quake4. Then, still as root, change to that directory and enter:


Click to enlarge

You'll have to agree to the Quake 4 license agreement to continue. The Punkbuster license agreement is next, you can agree or not as you like, but if you don't agree, you won't be able to play on a lot of Quake 4 servers. At this point, you'll see the installer window.

Make sure the paths and options are as you want them, then click on Begin Install. If all goes well, it takes only a couple of seconds to finish the install from that point. But in my case, I found had a couple of issues to resolve before proceeding.

First, I found that I could run Quake4 only as root. I noticed while copying files off the CDs that the permissions are different on the first CD than they are on the others. On those three, only root had any permissions at all; user and group were not even allowed read permission. I fixed the problem by going into /usr/local/games/quake4/q4base as root and entering chmod 755 *.pk4. Afterward, I could start the game as a normal user.

Second, I had no sound. For the answer to this problem, I turned to the Doom 3 FAQ, since Quake 4 is built on the Doom 3 engine, and the FAQ said it would not repeat suggestions/problems outlined there. The solution it suggests for people having problems when using the ALSA sound system is to use OSS instead. That was as easy as getting to the Quake 4 console -- by typing Ctrl-Alt-~ instead of simply ~ as you do in Quake 3 -- and entering set s_driver oss. The next time I started the game, I had sound.

Next: Playing the game

Quake 4 is a big game. On my system, once you get past the opening ads, it takes about a minute to start a new game or to reload a saved game-in-progress. The default game settings are for full-screen mode at 640x480 resolution. I thought that with my PCI Express video card I might be able to run at a higher resolution, so I changed to 800x600 windowed play. I shouldn't have.

It was not unusual for me to experience a noticeable hitch during play at that resolution and mode. The graphics would freeze and the game would become unresponsive for a moment or two. I thought that doubling the 512MB of RAM I had on my system would help, and it did, but I still experienced momentary stalls in the action every few minutes, even though also I went back to the default video settings.

Click to enlarge

Quake 4 offers two types of play: for single or multiple players. Single-player mode is based on the theme of you -- as a private, corporal, lieutenant, or general -- against the scum-sucking enemies of Earth known as the Strogg. The bad guys like to eat the humans they kill. The Strogg invasion of Earth has been foiled, and are now they are being engaged on their own home planet. According to the story line:

You are Matthew Kane, a member of the elite Rhino Squad and part of the next massive invasion that spans across the entire Stroggos planet. Equipped with hi-tech weapons and vehicles, and teamed with a top Marine squadron, you soon realize this war is far from over. In fact, your worst nightmare is soon realized when you discover to defeat the Strogg, you must become one of them.

Single-player mode is Quake 4's big attraction. With 29 maps to wade through before the game's end, it provides hours of blood-letting, monster-killing, Strogg-splattering fun.

After a few hours of single-player game experience in Quake 4, I have only two tips for you. First, learn that you're not in it by yourself. Use the help provided by your fellow Marines. You'll find that not only do they offer you health, weaponry adjustments, and weapons as well, they also are pretty good at killing Stroggs when given the chance. Second, if you find a ladder but can't climb it, try the other side.

If you run into trouble, you'll find plenty of help out by using Google for hints, cheat codes, and walk-throughs. Many of the cheat codes for Doom 3 are the same in Quake 4.

Multiplayer mode

Click to enlarge

In multiplayer mode, you find a server with the Quake 4 browser and play against other humans instead of the computer. There are a variety of multiplayer game types: Death Match, Tourney, and Capture the Flag. Some are team against team, some one-against-all. The most popular is Death Match, where the winner is the player with the most kills. To find a multiplayer game, select Multiplayer and click on Game Browser. But before you select a game to join, you might want to pick your nom de guerre and a proper outfit. There are more than a dozen models to choose from for you multiplayer game: from the standard issue Kane used in single-player mode to half-man, half-Strogg.

The Quake 4 game browser's most prominent feature is its annoying mouse-over behavior. It seems impossible to navigate the browser without having the details of the game servers listed on the screen popping up and gettting in the way of what you want to see or click, very much like an intrusive Web site ad. In spite of that annoyance, you can choose from a thousand or so game servers to find a suitable match. Look for one with a low ping time.

Game servers

There are two types of servers: dedicated and not. When you run a non-dedicated server, you spawn both a game server and a client. On my system, only five players can play at once in this mode. But in addition to creating a playpen for pals, the non-dedicated server mode offers you a good way to get familiar with all the standard maps for multiplayer games.

To create a game server with client, start Quake 4 as normal and then choose Multiplayer and Create Server. Once there, you can configure the server to your liking. Choose one of the nine maps to play, the server name, and the type of server -- Internet or LAN -- to get started. You can also specify the type of game, choosing from Death Match, Team Death Match, Tourney, Capture the Flag, or Arena Capture the Flag. There are a number of other options you can set.

The second option is to run as a dedicated server. This means that if you want to play on your server, you'll have to log in from a client on another machine. It also means more people can play the game at once, since your machine is not being asked to play a resource-intensive 3D game at the same time it is providing server functionality. Use the command quake4-dedicated to start the server in this mode.

Why the back of the bus for Linux gamers?

Lots of Linux gamers are excited about the early availability of Quake 4 for their platform of choice. Personally, I enjoyed the game but not the business side of the deal. Here's why.

I paid the full retail price for a game that I can't run without considerable extra effort. I had to run all over the Internet to beg, borrow, or steal a download of the secret-sauce to transform the Windows version to one playable on Linux. The demand for the Linux version is great enough that a cottage industry has grown up around providing this and similar downloads, either through club membership, so you don't have to wait for a free queue choked down to the lowest possible limit, or simply by becoming a stationary receptor for ads auto-clicked for you. Further, id Software says Quake 4 is explicitly not supported on Linux. If you buy the game and run into a problem, good luck.

The game maker doesn't provide the Linux version out of the goodness of its heart. Not only do we pay full retail for the privilege of playing, but the dedicated Linux servers that we set up on the Internet contribute to the profit margin on the game. More servers means more people can play online, and that means more game sales.

How much effort would it take for id Software -- or any other firm -- to provide and support a ready-to-run Linux version of the game? The heavy lifting has already been done. All that remains to do is to provide packaging.


  • Games
Click Here!