aaquake2 - Text Mode Quake II

What?

Just what you heard - text mode Quake II.

Why?

Why not? You can watch TV in text mode, you can play DVDs in text mode, you can play Quake 1 in text mode. Quake II is the logical next step.

Or, as the author of ttyquake put it, "If you have to ask why, you're not a member of the intended audience."

How?

Easy. Quake II source code is available and with AA-lib the whole thing was really a quick hack.

OK, so how do I make it work?

Thought you'd never ask.

If you want to compile it yourself, first download and install the AA-lib library, if you don't have it already. Then get the Quake II source from id Software's FTP or one of the mirrors, get ref_softaa source from this page and then issue the following commands:

unzip q2source-3.21.zip
tar -xzf quake2-ref_softaa-0.1.tar.gz
cd quake2-3.21/linux/
make
cd debugi386-glibc/
mkdir baseq2
cd baseq2/
ln -s ../gamei386.so
ln -s /path/to/quake2/baseq2/pak*.pak ./
cd ..
echo "." > /etc/quake2.conf
./quake2 +set vid_ref softaa

And you should be seeing Quake II in text mode. If not, try to find out what went wrong and tell me. You will probably have to be root to write /etc/quake2.conf (but that's the only step requiring root privileges). Of course if you don't have an i386 machine then you'll have to change "i386" to whatever your architecture is (but I'm not sure it will even compile on anything else). And, obviously, you need the original paks to play (the game engine is under the GPL, the game content is not!).

If you get errors because you don't have SVGAlib or OpenGL you can comment out ref_soft, ref_gl and ref_glx in the TARGETS variable in the Makefile. They're not needed for text mode rendering to work.

If you don't want to compile it yourself then well, technically I could make the binaries available for download, but I encourage you to try and compile it. It's fun, really.

FAQ

Where's the Windows version?

There is no Windows version. Let me know if you make one.

The control key doesn't work, I can't fire my weapon!

Yeah, I know, that's because of the AA-lib keyboard driver. Bind +attack to some other key (alt and shift don't work either).

I can't see anything!

Try using a higher resolution text mode. Use your imagination!

Why not just use aavga?

Good point. But I couldn't get it to work with Quake II. Fortunately not everyone is as dumb as me - Jennifer Elaan has modified aavga to work with Quake II long before I thought of it. Oh, and BTW - if you take Relnev's Quake II (now known as icculus.org Quake II) and use its SDL renderer first setting the SDL_VIDEODRIVER environment variable to "aalib" you get text mode Quake II for free! (I didn't know about either of these until I read this and this post on Slashdot.)

TODO

Thanks

I would like to thank John Carmack and id Software for creating Quake II and releasing it under the GPL. I would also like to thank Jan Hubicka for AA-lib, Greag Alexander for aavga (from which I borrowed some code) and Bob Zimbinski for ttyquake, which inspired me to do this.

Links

Feedback

If you have any comments or suggestions or maybe you've fixed something, please feel free to contact me at this address.

If you're looking for something a little more practical, check out Quake II for red-blue 3D glasses.

Have fun!