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!
Getting Started with DevOps - Including New Data on IT Performance from Puppet Labs 2015 State of DevOps Report
August 27, 2015
12:00 PM CDT
DevOps represents a profound change from the way most IT departments have traditionally worked: from siloed teams and high-anxiety releases to everyone collaborating on uneventful and more frequent releases of higher-quality code. It doesn't matter how large or small an organization is, or even whether it's historically slow moving or risk averse — there are ways to adopt DevOps sanely, and get measurable results in just weeks.
Free to Linux Journal readers.Register Now!
- August 2015 Issue of Linux Journal: Programming
- Django Models and Migrations
- Hacking a Safe with Bash
- Secure Server Deployments in Hostile Territory, Part II
- The Controversy Behind Canonical's Intellectual Property Policy
- Huge Package Overhaul for Debian and Ubuntu
- Shashlik - a Tasty New Android Simulator
- KDE Reveals Plasma Mobile
- Embed Linux in Monitoring and Control Systems
- diff -u: What's New in Kernel Development