Quake, Meet GPL; GPL, Meet Quake

December 1st, 2007 by Shawn Powers in

What has spiders, bubble gum, rocket launchers and camo pants? Quake 3, of course!
Your rating: None Average: 3.5 (2 votes)

Back in the summer of 2005, id Software released the Quake 3 engine to the public under the GPL license. For open-source enthusiasts, it was amazing news, but to the general public, it seemed like mostly marketing nonsense. Releasing the Quake 3 engine, unfortunately, wasn't the same as releasing the game, so the average gamer didn't gain anything—at least, not at first. In this article, I introduce some great new games that use the Quake 3 engine. They're all free, and they all run natively under Linux.

First, let's talk about what id Software really did when it released the engine under the GPL. As Linux users, we're familiar with terms like, “Free as in speech and free as in beer”. For the record, I have never understood the latter part of that motto. Beer is rarely free. Nonetheless, the Quake 3 engine is indeed free in several ways:

  • The program is free to download. You don't have to pay for it, and it's not crippled in any way whatsoever. You can give it to your friends, for free, and you won't be a pirate. (This is the “free as in beer” part.)

  • The program is free to modify, change, repackage and even sell—provided you include your source code. (This is the “free as in speech” part.)

  • The engine is not the whole game. You can't install the program and expect to frag your little brother in the next room. The graphics, models, maps and such are not free. If you distribute those things (from the retail Quake 3 CD), you, in fact, will be a pirate. That part is not free.

I tried to explain the significance of releasing the engine to non-techie friends of mine, but, alas, they had no idea what I was talking about. So, for those of you who have never really understood the whole game engine versus actual game thing, check out the “Grandma's GPL Cookie Recipe” sidebar.

My Gaming System

Before I begin talking about the games, I have a few confessions to make. First, I'm not a gamer. I am the player you want on the opposite team in pretty much any gaming situation. I'm horrible. Second, my computer is just about as adept at gaming as I am. Here are the specs:

  • Pentium 4 2.4GHz

  • Onboard Intel 915 graphics (shared 8MB memory)

  • 20GB IDE hard drive

  • 512MB of RAM

  • Ubuntu Linux 7.04

I chose Ubuntu because it's very common and easy to use. It doesn't really matter what distribution you have; they'll all work, but some of my examples might not look exactly the same. I'll try to be as generic as possible.

One key issue with getting any 3-D game working is to make sure you're using an accelerated driver in the X Window System. It's possible your computer already has this. A simple way to check is to open a terminal window and type:


# glxinfo | grep endering <enter>

And, look for:

# direct rendering: Yes

(I purposefully left off the r in the grep statement, in case the word Rendering happened to be capitalized.) If you don't have direct rendering, you need to configure your video card for acceleration before you can run any of the games covered in this article. In my case, I had to change my video driver to “intel” instead of “i810”. You might have to do some research on the type of card you have. Most semi-modern video cards are capable of acceleration in Linux, so it likely will be worth the effort. Now that you (hopefully) have your video system running properly, let's get down to the games!

Open Arena

This first game is basically an attempt to re-create Quake 3 Arena, but with free graphics, models and so on. If you ever played Quake 3 Arena, Open Arena will look very familiar. Because it uses the new-and-improved engine (ioQuake3, based on the original Quake 3 engine), I think it's actually more fun than the original. Don't tell id.

For Ubuntu users, simply type the following to install Open Arena:

# sudo apt-get install openarena

If you are using a distribution that doesn't have a package available, you can download the zip file from www.openarena.ws, and follow the simple directions for installation. (Basically, unzip the files, and start the executable for your architecture. It's pretty simple.)

Once you start the game, you first need to configure things. Because my video card is on the slow side of pokey, I set my resolution to 640x480, and most of the other details to low. Unlike some of the other games, Open Arena has a single-player version. That's great news for me, because on the “I Can Win” setting, I actually can do fairly well. Figure 1 shows a screenshot of me dying (note that most of the screenshots in this article are of me dying—I'll pretend it's on purpose).

Figure 1. Shawn Dying in Open Arena

Open Arena is fun. It's fast, simple and you get to blow stuff up. Even though the game says it requires 16MB of video RAM, Open Arena ran extremely well on my 8MB system. It's the kind of game you can actually play during a television commercial and frag 20 people (or get fragged 20 times) before the show starts again.

Urban Terror

Urban Terror started as a game mod for the original Quake 3. I actually played it back when it required Quake 3, and apart from being more mature, the game play is very similar. The difference, of course, is that now it runs on the open-source ioQuake3 engine, so it's completely free. Urban Terror is designed to take the first-person-shooter-type game into an urban landscape. As creepy as that sounds, it actually makes for some interesting maps and allows for realistic firearms.

Urban Terror has the least-friendly Linux installer. If you read the installation instructions closely enough, it's not too difficult, but my suggestion is to use the handy-dandy installation script available on the forums (see Resources). One important installation note is that if you run the installer as root, the game will be accessible by all the users on your computer. It's also important to follow the directions on the forum post. If you do so, it will download all the needed files, create icons and download some common maps.

Urban Terror is a multiplayer game. Generally, this means you play on-line or set up a server and play on your local network. It is possible (although unsupported) to add bots to your server, so in theory, you could play alone. Not all maps support bots, and bots tend to cause random crashes. If you're like me, however, and can't hack it against real people on the Internet, it might be worth the effort. Because bots aren't officially supported, I'll leave it to the reader to add them (see Resources).

It's a little more complicated to jump into an Urban Terror game than playing a quick game of Open Arena. The weapon selection is done at the beginning of a round, and without doing some research, it's hard to tell which guns are best. I tend to stick with the default choice. I also tend to get shot a lot, so the default weapons might not be the best bet. Figure 2 shows an example of the realistic maps in Urban Terror.

Figure 2. Urban Terror's Realistic Maps

Tremulous

Tremulous is an interesting game. It's kind of a cross between a first-person-shooter and a real-time strategy game. Although the game is played in first person, and indeed, you frag the other team, you also build devices and set up bases. Unlike most other first-person-shooter games, the two races in Tremulous are drastically different. The humans are, well, humans. The aliens, however, are spider-like and tend to attack without weapons. The idea behind Tremulous is really remarkable, and the two separate races make for radically different game play.

This is another game that is simple to install on Ubuntu. All it takes is a quick:

# sudo apt-get install tremulous

If you have a different distribution, www.tremulous.net supplies a generic installer. Honestly, installing Tremulous is painless. I wish I could say the same about actually playing the game.

Tremulous is hard—really, really, really hard. Unfortunately, there is no single-player version, nor is there any support for bots. The only way to play Tremulous is against other people. Other people, as a group, all tend to be better than I am. I played for more than an hour, both as a human and as an alien, and I didn't get a single kill—not a single one.

I'm sure there are other folks who understand the game better than I do, and I know there are other people who can play the game better than I do. Sadly, Tremulous is the game I was most excited about, and the game I enjoyed the least. No matter what race I chose, or what character I chose to play, I just couldn't get the hang of playing. Figure 3 shows me dying. So does Figure 4.

Figure 3. Shawn Dying in Tremulous

Figure 4. Shawn Dying Again in Tremulous

World of Padman

The last game on the list has many similarities to the first. World of Padman has the same sort of fast-action and easy-to-learn features that make Open Arena so great. The interesting twist is that World of Padman is staged in a cartoon-like, oddly proportioned environment. All the players are tiny mouse-sized, and the “maps” are generally rooms in a house. I absolutely love the graphics, and apart from a few annoyances, it is easily the most visually appealing of the four.

Although World of Padman isn't distributed as a package for Ubuntu, the installer is very easy to use. On its Web site, www.worldofpadman.com, it even offers a live DVD version of the game. (Actually, several games are on the DVD.) Once the installer was done, I did have one small issue. It wouldn't start. When I started from the command line, I could see the game was complaining it didn't have libvorbisfile installed. After I installed it (sudo apt-get install libvorbisfile3), the game started just fine. I was a little surprised the installer didn't check for stuff like that, but all in all, it wasn't too hard to fix.

World of Padman is demanding on the video card. Even with details and resolution turned way down, I still could tell the video card was holding me back. In high-action scenes, like the one shown in Figure 5, the screen started to stutter. As the requirements mention a need for a 128MB OpenGL video card, I guess I can't complain that my 8MB shared memory video was a bit underpowered. The game was still very playable, even with my system.

Figure 5. High-Action Scene in World of Padman

This game is pure fun. The weapons range from a water-balloon launcher to a bubble-gum gun. The maps are extremely detailed and enjoyable to explore. My only real complaint is with the pictures on the main menu and on the loading screen. A game that would otherwise be perfect for young gamers quickly becomes inappropriate due to the sexually explicit cartoons. If there were a G-rated version of the game, I would install it for my kids to play and use it for the after-school gaming club at our school. Unfortunately, it's a little to risqué for such an environment.

Also, although the single-player mode isn't yet complete, World of Padman has excellent bots. If you have a poor Internet connection or poor gaming skills, it's possible to have tons of fun with a local server full of bots. Honestly though, World of Padman is easy enough that while playing on-line, I actually fared quite well. Although I really enjoyed Open Arena, I think World of Padman might be my favorite game of the bunch.

Grandma Would Be Proud

I own the retail version of Quake 3 Arena. After running these new games, however, I have to admit I don't foresee myself playing the old one anymore. id released its game engine, and that allowed developers to concentrate on some really innovative additions. I'm truly amazed at the quality of these games.

Shawn Powers is a geeky Technology Director for a small school in northern Michigan. He did manage to find a wife to love him and has three wonderful daughters. His wife even watches Star Trek with him, but he suspects it's just because she loves him. Send e-mail to him at shawn@brainofshawn.com.

__________________________

Shawn Powers is an Associate Editor for Linux Journal. You might find him chatting on the IRC channel, or Twitter


Special Magazine Offer -- Free Gift with Subscription
Receive a free digital copy of Linux Journal's System Administration Special Edition as well as instant online access to current and past issues. CLICK HERE for offer

Linux Journal: delivering readers the advice and inspiration they need to get the most out of their Linux systems since 1994.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
David Watzke's picture

Nexuiz is not quake3-based

On March 8th, 2009 David Watzke (not verified) says:

Kosh: Nexuiz is not based on the Quake3 engine. It uses improved Quake1 engine called "DarkPlaces".

Anonymous's picture

+1 for Nexuiz

On March 5th, 2009 Anonymous (not verified) says:

+1 for Nexuiz

Anonymous's picture

Open Arena

On March 5th, 2009 Anonymous (not verified) says:

If you are an Ubuntu user you best get Open Arena from www.openareana.ws It's the current 0.8.1 version, the one supplied with Ubuntu is two versions behind the times. There are not many online servers left using the old version. Just unzip in your home directory and you are ready to frag.

Kosh's picture

Forgot the best one.

On March 4th, 2009 Kosh (not verified) says:

I have played all of the games you mentioned except for Padman and you forgot the best of them all - Nexiuz. The game is very easy to install, straight forward to customize , has single and multi-player games. The only issues I have had is I can not see were I can turn on the grappling hook in single player mode and I am a terrible shot. But I can move fast so watch out when I am in the capture the flag maps.

John Hardin's picture

grepping

On March 4th, 2009 John Hardin (not verified) says:

More grep nitpicking:

glxinfo | grep -i rendering

The "-i" switch makes grep case-insensitive.

-- "Sgt. Bothari" in Urban Terror

Anonymous's picture

grep

On March 4th, 2009 Anonymous (not verified) says:

The pipeline
glxinfo | grep '[Rr]endering'
would have
a) captured the information you wanted from the glxinfo report,
b) been more readable to your audience,
c) accomodated both the capitalized and the lowercased word, and
c) needed no explanation about why you left off the R

Just a thought

David Watzke's picture

Quake 3 Arena

On March 4th, 2009 David Watzke (not verified) says:

Well, I am familiar with Open Arena, Urban Terror and Tremulous and I think that even though these games are good, they just can't compete with good ol' Quake III. Also, Quake III engine under GPL is IMHO a great thing even if one isn't a game developer. Think of the compatibility, if not anything else.

-- Proud owner of Quake III Gold.

Post new comment

Please note that comments may not appear immediately, so there is no need to repost your comment.
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <pre> <ul> <ol> <li> <dl> <dt> <dd> <i> <b>
  • Lines and paragraphs break automatically.

More information about formatting options

Newsletter

Each week Linux Journal editors will tell you what's hot in the world of Linux. You will receive late breaking news, technical tips and tricks, and links to in-depth stories featured on www.linuxjournal.com.
Sign up for our Email Newsletter

Tech Tip Videos

From the Magazine

July 2009, #183

News Flash: Linux Kernel 3.0 to include an on-the-go Expresso machine interface! Ok, maybe not, but Linux is definitely going mobile, from phones to e-readers. Find out more inside about Android, the Kindle 2, the Western Digital MyBook II, The Bug, and Indamixx (a portable recording studio). And if you've gone mobile and you been wanting more Emacs in your life then check out Conkeror.


To compliment the mobile we've got the stationary: parsing command line options with getopt, checking your Ruby code with metric_fu, and building a secure Squid proxy. How is this stationary you ask? What can we say? It's not. We just wanted to see if anybody actually read this part of the page :) .


All this and more, and all you have to do is get your hot sweaty hands on the latest copy of Linux Journal.





Read this issue