Quake 3

From Gentoo Linux Wiki
Jump to: navigation, search
Quake3logo3.JPG

Contents

[edit] Introduction

This article covers installing, configuring and troubleshooting Quake III Arena. Much of this article may also apply to Quake 3 engine based games such as Enemy Territory.

[edit] Prerequisites

This article assumes that you have ALSA and ALSA-OSS, OSS or Esound installed and working.

[edit] Install

While Quake 3's engine is now open source, the game data is not. To install the full version, you will need the Quake 3 install CD - specifically you will need pak0.pk3. If you do not have this available, you will only be able to play the demo version.

[edit] Demo

Install the demo with:
emerge --ask --verbose quake3-demo

[edit] Full Version

Install the full version with:
emerge --ask --verbose quake3

Now copy the pak0.pk3 file into the Quake3 directory:

cp pak0.pk3 /usr/share/games/quake3/baseq3/

[edit] PunkBuster

To be able to play online on most servers, you will need to update the anti-cheat software called PunkBuster.

To update PunkBuster, You will need to download the pbsetup tool from the Even Balance website.

To be able to run this application from anywhere, put it in the /usr/local/bin directory (this is like /usr/bin except it is used for applications installed without using the package manager):
cp pbsetup.run /usr/local/bin
Ensure the file is executable:
chmod +x pbsetup.run

When you run pbsetup, you may have to point to the install location of the game. For Quake 3, this is /usr/share/games/quake3

[edit] Sound

The Quake 3 engine, like many games uses the Open Sound System, which is not used on most installs. You are probably using ALSA instead, so make sure that ALSA and ALSA-OSS are configured correctly and working.

There are different methods may work that activate audio for these games:

  • Alsa patch
  • OSS Parameters can be modified
  • In-game fix
  • Esound setup

[edit] ALSA Patch

There is an alpha hack that makes Quake III use ALSA for sound by replacing standard sound system functions in runtime, as aoss won't work for ET. This may fix issues when using other applications at the same time, such as TeamSpeak 2.

It's located at SDL Support for ET, RTCW, QIIIArena.

[edit] OSS Parameters

Most audio cards have two devices that can be used. One of these devices (the default) does playback and capture. The first (default) device is /dev/dsp. This device is used with a mic and basic output. There is typically a second device that supports playback only. This second device is /dev/adsp.

As root specify the OSS device is playback only using the following commands. The second line is optional (it disables audio capture) but may be needed by some games.

For Quake 3 use:

echo "quake3.x86 0 0 direct" > /proc/asound/card0/pcm0p/oss echo "quake3.x86 0 0 disable" > /proc/asound/card0/pcm0c/oss

For Quake 3 demo use:

echo "q3demo.x86 0 0 direct" > /proc/asound/card0/pcm0p/oss echo "q3demo.x86 0 0 disable" > /proc/asound/card0/pcm0c/oss

For Return to Castle Wolfenstein use:

echo "wolfsp.x86 0 0 direct" > /proc/asound/card0/pcm0p/oss echo "wolfsp.x86 0 0 disable" > /proc/asound/card0/pcm0c/oss echo "wolf.x86 0 0 direct" > /proc/asound/card0/pcm0p/oss echo "wolf.x86 0 0 disable" > /proc/asound/card0/pcm0c/oss

[edit] In-game Fix

Some may only need to instruct the game of the new parameters. Start Quake 3, then press ~ or shift + ´ to bring up the console. Enter the following command into the game console: set +snddevice /dev/dsp

Restart the game to apply the change.

[edit] Esound

When using esound, you may find that you need to disable it while playing using:
esdctl off
To reenable esound when done playing, run:
esdctl on
Alternatively you may find that enabling memory mapping emulation helps. You can do this by running:
esddsp --mmap et

[edit] Troubleshooting

[edit] Urban Terror

Urban Terror is a Quake III based game and will need its pak0.pk3 file:

ln -s /opt/quake3/baseq3/pak0.pk3 /usr/share/games/quake3/baseq3/

[edit] No /proc/asound/card0/pcm0p Directory

This fix may apply if you're using ALSA and get the message:

bash: /proc/asound/card0/pcm0p/oss: No such file or directory

You will need to rebuild you kernel to include optional proc filesystem support:

Linux Kernel Configuration: ALSA ProcFS support
Device Drivers  --->
     Sound  --->
          Advanced Linux Sound Architecture  --->
               [*]   Verbose procfs contents

Also make sure you have the oss modules loaded. You need snd-pcm-oss, snd-mixer-oss, and snd-seq-oss.

[edit] Game freeze at map start

Some people reported game freeze at map start. Set a negative value to the music volume fix it using:
quake3.x86 +set s_musicvolume -1

[edit] See Also

Personal tools
In other languages