In last week’s post on Unreal Tournament vs. Quake ]I[ Arena, a couple of readers provided links to some games based on the Quake ]I[ Arena source code.
Id Software is in the habit of releasing the source code for their games under the GPL once the game has finished its run. It is one of many reasons I love and admire the company, even at times when I might be lukewarm to their games. They are a great bunch and have done a lot to enrich the medium as well as the fans. In 2005 they released the source to Quake 3 Arena, and since then I’m sure thousands have downloaded and experimented with the source. Of course, only a small percent of those projects ever see public release. Below are a couple that have made it far enough to make a worthy release and build a fanbase.
(I experimented with the source for the original Quake back in 2001, and what I remember most is that John Carmack is a very readable coder. When I had trouble understanding his code, it was because he was doing something clever or complex, not because the code itself was hard to follow. I can promise you this is not usually the case when dealing with source code. Making your code readable and easy to follow is extra work and requires dicipline, and I really appreciate the effort he puts into his work.)
The thing about releasing the games this way is that they do not give away the art assets, only the source. This means you have everything you need to build your own version of the Quake executable, but you have no maps, textures, sound effects, music, movies, player models, weapons, or interface graphics. That stuff is all copyrighted. If you want to make your own version of the game, you need to come up with all of that stuff yourself. This is a tall order, and I admire any group of enthusists that can come together and create a game like this.
I’m sure there are other projects out there, but Open Arena and Nexuiz are the ones that were brought to my attention and therefore the games that I played.
Reader Saborlas provided a link to Open Arena. It looks to be a fairly faithful reproduction of the original Q3A gameplay. The game mechanics remain largely unchanged, right down to the things the announcer says and the feedback sound when you tag a foe with weapons fire. Even the interface is the same, except with new art. Playing this game feels just like Quake to me, although someone with more time invested with the original might find differences I couldn’t detect.
It supports play against bots, although the AI seemed a little strange. The bots tended to stick to a very predictable circut, and would often run along in close proximity to other foes without fighting. Since the game is using the perfectly serviceble AI from Q3A, I’m assuming this must be a problem with the design of the level.
In any case, it is by no means complete. There are only a handful of maps, but what is there is solid and interesting.
Dihydrogen linked to Nexuiz, which is older (the project has been going for a couple of years now) and seems to have a different thrust. They aren’t making an exact copy of Q3A, but instead are trying to create something along the same lines but with different gameplay. The weapons, sounds, and interface are all very different.
I wasn’t able to give the game an honest evaluation. The mouse settings wouldn’t let me turn the sensitivity up high enough for the game to feel right. Even with it maxed out, turning my character still felt like piloting a barge. I’m not sure what went wrong there.
Both games have their quirks. These are both works-in-progress, but they are interesting and worth a look.
What did web browsers look like 20 years ago, and what kind of crazy features did they have?
Trashing the Heap
What does it mean when a program crashes, and why does it happen?
Grand Theft Railroad
Grand Theft Auto is a lousy, cheating jerk of a game.
Even allegedly smart people can make life-changing blunders that seem very, very obvious in retrospect.
How to Forum
Dear people of the internet: Please stop doing these horrible idiotic things when you talk to each other.