Quake, Meet GPL; GPL, Meet Quake
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.
Grandma's GPL Cookie Recipe
When id Software released the Quake 3 engine in the summer of 2005, it wasn't the same as releasing the entire game for free. It was more like Grandma giving you her cookie recipe. Let's say Grandma had an incredible cookie recipe, and she sold cookies like crazy for five years. After five years, Grandma decided to give away her recipe. Sure, you could make your own cookies based on Grandma's recipe, but Grandma didn't actually send you any cookies in the mail. In fact, Grandma still sold her cookies, and people bought them.
The great part is that not only can you take Grandma's recipe, you can add to it. You can make your own cookies and base the recipe on what Grandma gave you. That's pretty much what happened with the Quake 3 engine. The only caveat with releasing a new cookie recipe is that you need to include your recipe for free as well. And, that's just how Grandma wants it.
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>
(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!
- New Products
- New Products
- Dialog: An Introductory Tutorial
- Tech Tip: Really Simple HTTP Server with Python
- Cooking with Linux - Serious Cool, Sysadmin Style!
- Integrating Trac, Jenkins and Cobbler—Customizing Linux Operating Systems for Organizational Needs
- Non-Linux FOSS: Remember Burning ISOs?
- sc: the Venerable Spreadsheet Calculator
- Raspberry Pi: the Perfect Home Server