Quake Mods
These are mods or patches for Quake 1. If you have a copy of either Quake 1 or Quake 1 Shareware, you might like to check out QuakeForge, an open source, cross-platform implementation of the Quake engine.
Mods
-
- WeirdQuake (v0.2)
- MagicQuake (v0.5)
- MagicQuake (v0.65)
Quakeforge is apparently no longer maintained, but it is still my favourite port of Quake. The last version available (discounting cvs snapshots) is 0.5.5, but there are problems with it. First of all, it doesn't seem to want to compile under GCC 4, dying with the error
cd_file.c:87: error: static declaration of 'bgmvolume' follows non-static declaration
../../../include/QF/sound.h:126: error: previous declaration of 'bgmvolume' was here
so to save the effort of updating the code to make it compatible, I use GCC 3.4:
CC=gcc-3.4 ./configure && make && make install
Now, if and when this compiles, there is another problem: there appears to be no access to console, menus or anything. When Quakeforge starts up, this error appears in the middle of the terminal output:
Could not load plugin "/usr/local/lib/quakeforge/console_client.so".
Upon further investigation, this is because a symbol the linker was expecting is undefined. After much searching and hacking of the code, I finally came up with a solution, which this patch implements. For details of what this does, see patches. Download the quakeforge-0.5.5 tarball and the patch to the same place. Run the following commands:
tar jxf quakeforge-0.5.5.tar.bz2
cd quakeforge-0.5.5
patch -p1 < ../quakeforge-0.5.5.patch
then compile as before, and bingo.
Tools and Engines
-
- QCC, the QuakeC Compiler, with v1.06 progs.dat source
- QuakeForge, v0.5.5 tarball.
- quakeforge-0.5.5.patch, the console_client source patch