This commit is contained in:
gferg 2006-11-24 21:34:50 +00:00
parent b9c23b7a7a
commit 64d452edd5
3 changed files with 173 additions and 31 deletions

View File

@ -282,7 +282,7 @@ to be used with a Microsoft Exchange Server. </Para>
Quake-HOWTO</ULink>,
<CiteTitle>Linux Quake HOWTO</CiteTitle>
</Para><Para>
<CiteTitle>Updated: Jul 2006</CiteTitle>.
<CiteTitle>Updated: Nov 2006</CiteTitle>.
How to install, run and troubleshoot Quake, QuakeWorld and Quake II
on an Intel Linux system. </Para>
</ListItem>

View File

@ -3597,7 +3597,7 @@ alternative to sendmail. </Para>
Quake-HOWTO</ULink>,
<CiteTitle>Linux Quake HOWTO</CiteTitle>
</Para><Para>
<CiteTitle>Updated: Jul 2006</CiteTitle>.
<CiteTitle>Updated: Nov 2006</CiteTitle>.
How to install, run and troubleshoot Quake, QuakeWorld and Quake II
on an Intel Linux system. </Para>
</ListItem>

View File

@ -11,11 +11,11 @@ Author: Steven A
<newline>
Version: 2.03
Version: 2.04
<newline>
Last updated: 26 July, 2006
Last updated: 22 November, 2006
<abstract>
@ -41,11 +41,9 @@ Does all this mean our game is important ? No... It's just fun ;-)
<sect1> About <p>
This document is not an exhaustive how-to about setting up any particular
program, but an overall guide to Quake, including compilation notes, tips, and
pointers to the best web resources.
It concentrates on the many engine rewrites and incredible add-ons which make
Quake the phenomena it is.
This document is a guide to installing Quake and it's many related games and
modifications. It includes compilation notes, tips and pointers to the best
web resources, as well as some information about Quake II, III and IV.
<sect1> Notation <p>
@ -743,6 +741,14 @@ Single player games are possible by playing against computer bots.
<url url="http://www.planetquake.com/digitalpaint/">
<label id="argonium_">
<sect1> Argonium <p>
This slick looking deathmatch mod is another freely distributable Quake II game.
<url url="http://www.planetquake.com/td/argonium/">
<label id="proquake_">
<sect1> ProQuake <p>
@ -883,11 +889,10 @@ the value in the correct procedure.
<bf>Problems with GCC 4</bf>
<itemize>If you're experiencing core dumps and are using version 4.x of the GNU
compiler (better known as "gcc") disabling the "-O" flag when compiling
programs, or using gcc-3.x may be the answer. This problem is widespread with
gcc-4 and C code with poorly written low level data structures. </itemize>
compiler, see <ref id="compissues_" name="Compilation Issues"> below.
</itemize>
<sect1>Program dies loading level <p>
<sect1> Program dies loading level <p>
<itemize>
@ -909,7 +914,7 @@ sound section.
<sect1> Sound Problems <p>
<em>For more information about Linux sound see the <ref id="sound_" name="drivers"> section.
<em>For more information see the <ref id="sound_" name="drivers"> section.
</em>
An error such as: "<bf>/dev/dsp: Device or resource busy</bf>" indicates some program is
@ -952,11 +957,74 @@ Sound stutters or is not very good.
<itemize>
<item> See the sound note in <ref id="compissues_" name="Compilation Issues">.
<newline><newline>
<item> Try using the <bf>-sndspeed</bf> or <bf>-sndbits</bf> option(s), or
swapping sound drivers.
</itemize>
<label id="compissues_">
<sect1> Compilation Issues <p>
The dynamic nature of GNU/Linux means compiling old software is often hard
work, and even small hurdles are impossible for people not experienced in C
programming. Below are a few relevant issues.
<sect2> GCC-4.x <p>
<descrip>
The GNU C compiler has recently had a major revision, and
most modern distributions now include GCC-4.1. (To find out which
version you are using, type <bf>gcc --version</bf>).
The author used GCC-3.2.2 to make this How-To, and people using GCC-4.x may find
extra problems when compiling programs:
<tag/Warnings/
GCC-4.x issues many more compilation warnings than 3.x. These are small errors that can
generally be ignored, but when the compiler is given the "-Werror" flag,
warnings will bring everything to a halt. To fix this you can safely remove the "-Werror"
from the program's Makefile.
<tag/Slurred Sound/
Yet another sound issue. This common problem is fixed by altering snd_mix.c thus:
<verb>
- snd_scaletable[i][j] = ((signed char)j) * i * 8;
+ snd_scaletable[i][j] = ((j < 128) ? j : j - 0xff) * i * 8;
</verb>
<tag/Optimizations/
GCC-4.0 in particular had a problem with "-O" flags breaking some variable
type-casting. If you are able to compile the program , but it segfaults,
try disabling these optimizations by removing the "-O" options from
any makefiles.
</descrip>
If you are having troubles compiling with GCC-4 which weren't there previously, it's
possible to install GCC-3.x alongside 4.x. Most people will want to look for
precompiled packages from their Linux distribution.
Once GCC-3.x is installed, the program must then be told to compile with this
version rather than the default 4.x. Projects that come with configuration
scripts will often have options for defining which compiler to use (type
<bf>./configure --help</bf> and look for hints), and other times you be able
to use <bf>export CC=gcc32</bf> or edit the Makefile and replace occurrences of
"gcc" with "gcc32" (or "gcc-3.2.2", etc) manually.
<sect2> Nvidia Drivers <p>
The latest Nvidia drivers can also cause headaches. Recently they have started
installing their own OpenGL headers by default, which has lead to some
conflicting variable declarations. This is fixed by removing them,
or by uninstalling the drivers (with <bf>nvidia-installer
--uninstall</bf>) and re-installing with the "--no-opengl-headers" option.
<sect1> Other Issues <p>
<descrip>
@ -1183,8 +1251,9 @@ systems. On a slightly different note - the <url
url="http://www.bytonic.de/html/jake2.html" name="Jake2"> project is a version
of Quake II written in Java.
The multiplayer paintball mod <ref id="digitalpaint2_" name="Digital Paint 2">
is also based on Quake II.
The multiplayer mods <ref id="digitalpaint2_" name="Digital Paint 2">
and <ref id="argonium_" name="Argonium">
are also based on Quake II.
<em>See the <ref id="other_" name="old version"> of this how-to
for Quake II troubleshooting tips.</em>
@ -1195,11 +1264,6 @@ The third Quake installment was a landmark multiplayer game, with some of the
most beautiful and well balanced fragging ever. It was one of the first games
to receive a full Linux commercial release.
Recently <url url="http://www.idsoftware.com" name="ID Software">
released the source code, and you'll find an
<url url="http://www.icculus.org/quake3/" name="Open Source Quake III"> project
at Icculus.org.
Most mods should work. The Linux Gamers FAQ reports:
<verb>
Yes, ... modifications work in Linux as long as they are compiled to the
@ -1209,13 +1273,22 @@ Most mods should work. The Linux Gamers FAQ reports:
The retail add-on Quake III Team Arena is supported and, despite never
getting rave reviews, is a great game.
For an atmospheric Q3 single player conversion visit
<url url="http://www.planetquake.com/tdc/" name="The Dark Conjunction">, and
check out the alien themed <url url="http://tremulous.net" name="Tremulous">
for an original multiplayer mod.
<descrip>
<tag/Open Source Projects/
Icculus <url url="http://www.icculus.org/quake3/" name="Quake III Project">
Sourceforge <url url="http://q3cellshading.sourceforge.net" name="Quake III - Cell Shading">
<tag/Mods
<url url="http://www.planetquake.com/tdc/" name="The Dark Conjunction">
is an atmospheric Q3 single player conversion.
Or try the alien themed <url url="http://tremulous.net" name="Tremulous">
for an original multiplayer mod.
<tag/Links/
The Zerowing <url url="http://zerowing.idsoftware.com/linux/q3a/INSTALL" name="installation">
@ -1238,11 +1311,53 @@ All things Quake III at <url url="http://www.planetquake.com/quake3/q3aguide/" n
Quake IV is an epic FPS from the awesome <url url="http://ravensoft.com"
name="Raven Software">. It is based on the Doom-III engine and has high
hardware specs: A 2GHz cpu and 512meg ram are the official minimum
hardware specs: A 2GHz P4 (or AMD equivalent) and 512meg ram are the official minimum
requirements. It's a beautiful game which should really be played with the
graphical settings set to "medium" or "high". For this reason the author
recommends against using entry level cards such as the FX5200. Celeron
owners (cough) should have at least a 2400MHz chip.
recommends against using entry level cards such as the FX5200.
The game runs well under Linux, but still has a couple of issues:
<itemize>
<item> Quake IV only runs in 32 bpp colours (X11 colour depth 24), so restart X in
this mode if you have to. Attempting to run in 16 bpp colours will give you an
error message like:
<bf> Couldn't find matching GLX visual ..... Sys_Error: Unable to initialize OpenGL.</bf>
Alternatively you can start a new X session with the command:
<verb>
startx `which quake4` -- :1 -depth 24
</verb>
<item> The Alsa sound libraries are used by default. To start with OSS sound , type:
<verb>
quake4 +set s_driver oss
</verb>
<item> The Quake IV DVD Edition comes with several promotional movies.
Although the movies appear to be Windows executables, they are in fact Bink
videos, and can be viewed with the
<url url="http://www.radgametools.com/down/Bink/BinkLinuxPlayer.zip" name="Linux Bink Player">.
<newline><newline>
<item> Apart from demanding a quality video
card and CPU, the author found 512meg ram to be slightly insufficient and
performance wasn't great.
The game ran better after placing the kernel's swap file on a different
hard-drive from the game. To do this, once you have the second disk installed and partitioned,
type (for example)
<verb>swapoff -a
mkswap /dev/hdb2
swapon /dev/hdb2
</verb>
if hdb2 is the new swap partition.
</itemize>
<descrip>
@ -1363,6 +1478,20 @@ sys_sdl.c: -#include <sys/shm.h>
+int psize = _SC_PAGESIZE;
</verb>
<sect1> Quake Inspired XTerms <p>
Quake's in-game console is a great feature and has been adopted by many
other games. Now you can also use the 'tilda' key to access X terminal windows.
Both <url url="http://yakuake.uv.ro/" name="Yakuake"> and <url
url="http://tilda.sourceforge.net/" name="Tilda"> are projects inspired by this
idea.
Unfortunately neither are easy to install from source. Yakuake is a KDE
application and needs the KDE development packages, and compiling Tilda is more
complicated. It requires a couple of unusual libraries, and gave this author
compilation errors, so perhaps looking for a RPM package is a better choice.
The author can recommend Yakuake as a very handy X terminal.
<sect1> Miscellaneous <p>
<itemize>
@ -1524,6 +1653,11 @@ how to use this powerful unix command. ;-/
<tag/SDL/<url url="http://www.libsdl.org/" name="Simple DirectMedia Layer">
cross platform hardware API widely used in Linux games.
<tag/Segfault/A broad term indicating a program is faulty and terminated
abruptly. Depending on the bash shell's <bf>ulimit -c</bf> setting, a dump of
the program's image (coredump) may be left behind for examination with
the GNU debugger (GDB).
<tag/Server/A program central to multiplayer games to which every player connects.
<tag/Tarball/An archive file such as <bf>somefile.tar</bf> created by the
@ -1561,6 +1695,14 @@ impulses, ezquake.
<descrip>
<tag/2.04 (November 2006)/
Added some troubleshooting hints for Quake IV.
A new section for (gcc-4.1) compilation issues.
Links to the Quake III Cell Shading project.
<tag/2.03 (July 2006)/
Changed order of game engines, added extra compilation notes, and expanded the
@ -1591,8 +1733,8 @@ This document is released under the GPL.
<!-- http://www.ibiblio.org/pub/Linux/docs/HOWTO/Quake-HOWTO -->
The Quake How-To is also available as a
<url url="http://prdownloads.sourceforge.net/uhexen2/Quake-HOWTO.txt?download" name="text file"> and a
<url url="http://prdownloads.sourceforge.net/uhexen2/Quake-HOWTO.html?download" name="single html file">.
<url url="http://tldp.org/HOWTO/text/Quake-HOWTO" name="text file"> and a
<url url="http://tldp.org/HOWTO/html_single/Quake-HOWTO" name="single html file">.
The latest version should be available
<url url="http://tldp.org/HOWTO/Quake-HOWTO.html" name="here">.