Quake 4 Guide

Quake has been an on-going franchise begginning with the first game to be completely developed in 3D. It's popularity grew and now there are several Quake games with focus on single-player and multi-player game types.

quake82.png


ID Software has always released Linux binaries for their games, so Quake 4 has native support in Linux.

Follow my step-by-step guide on installing, configuring and optimizing Quake 4 in Linux.

Note: This guide applies to the Retail version of Quake 4. Other versions may require additional steps.

Download Linux Binaries

Go to: ftp://ftp.idsoftware.com/idstuff/quake4/linux

Right-Click quake4-linux-1.4.2.x86.run
Click "Save link as..."
Navigate to your desktop
Click Save
quake06.png


Installing Binaries with Terminal

When the download is done...
Launch Terminal
Ctrl+Alt+T

Note: There should be a terminal menu item or shortcut in your distribution

Navigate to your desktop
Type:
Code:
cd ~/Desktop
quake07.png


Make binaries executable
Type:
Code:
chmod +x quake4-linux-1.4.2.x86.run
Press Enter
quake08.png


Note: To avoid making "typos" type the first 5 letters and hit Tab to auto-populate

Launch Quake 4 Installer
Type:
Code:
./quake4-linux-1.4.2.x86.run

Uncompressing...
quake10.png


License Agreement
Press Space to scroll to the bottom
quake11.png


Type: Y to agree
Press Enter
quake12.png


README?
Type: N
Press Enter
quake13.png


Please enter the installation path
Use your home directory for the installation
Type:
Code:
/home/username/quake4
Press Enter

Note: Type your login in place of "username"

This will automatically create a folder called "quake4" and copies all the binaries into it

Please enter the path for symbolic links
Translation: Where do you want the game shortcuts?
The desktop of course!
Type:
Code:
/home/username/Desktop
Press Enter
Note: Type your login in place of "username"

All versions?
Type: Y
Press Enter
quake15.png


Punkbuster?
Punkbuster is required for online play
Type: Y
Press Enter
quake16.png


Punkbuster License Agreement
Type: Y
Press Enter
quake17.png


Continue Install?
Type: Y
Press Enter
quake20.png


Start Now?
Type: N
Press Enter
quake21.png


Copying pk4 files

In order to play the full Quake 4, you will need all of the pk4 files
You can find these on the CD-ROMs, DVD, Steam installation or your Quake 4 Windows Installation.

Navigate to your home
Open the quake4/q4base folder
There are already some existing pk4 files, but you will need all of them to play the full game.

Pop in your CD's one at a time and copy all of the pk4 files into this q4base folder.
Windows Steam:
Go to c:\Program Files\steam\steamapps\common\quake4\q4base
Windows Quake:
Go to c:\Program Files\Quake4\q4base

Do not overwrite any existing files!
quake22.png


When the copying is complete, you should have the following pk4 files:
  • pak001.pk4
  • pak002.pk4
  • pak003.pk4
  • pak004.pk4
  • pak005.pk4
  • pak006.pk4
  • pak007.pk4
  • pak008.pk4
  • pak009.pk4
  • pak010.pk4
  • pak011.pk4
  • pak012.pk4
  • pak013.pk4
  • pak014.pk4
  • pak015.pk4
  • pak016.pk4
  • pak017.pk4
  • pak018.pk4
  • pak019.pk4
  • pak020.pk4
  • pak021.pk4
  • pak022.pk4

Don't forget the zpak with the language you want to use.
quake23.png


Quake 4 Shortcut

Open the quake folder in your home
right-click
Click "Make Link"
Drag-n-drop this link to your desktop
quake24.png


Launching Quake 4

Double-Click your Quake 4 Link
Click "Run in Terminal"
quake25.png


Optimization

Click Settings
quake26.png


Click System
quake27.png


Adjust the Quality, Screen size and Advanced settings.
Quake 4 is an older game so it should run on most laptops, but try to keep the screen size smaller.

Rule of thumb:
High settings
= More detail, lower frame rates
Low settings = Less detail, higher frame rates

To apply the video settings, Exit Quake 4 and launch again.

Conclusion:
Originaly I tried Quake 4 in PlayOnLinux and the performance was very slow no matter which Wine version or Video settings I selected. Textures were always low resolution and the game just wasn't going to run properly. I knew there were Linux binaries available, so after installing them, Quake 4 was beautiful! Performance was great and it supported modern widescreen resolutions.

Screenshots:
quake81.png


quake83.png


quake84.png


quake85.png


quake89.png


quake90.png


quake93.png




quake94.png


quake95.png
 
Last edited:
Thank you for posting this guide Booman.

I had installed Quake 4 back in 2006 on Ubuntu using the installer available at that time, which was very similar to the one you linked to.

After the first time, installing the game on a newer version of Ubuntu (or another distro) meant simply copying the Quake 4 folder and inserting the CD key.

However, in the last 3 years or so, probably due to changing libraries, there was a very annoying cracking sound which made playing the game very unpleasant, until I found on the net this command: ./quake4 +set s_alsa_pcm plughw:0 +set s_driver alsa +set r_alphaToCoverage "0".

It didn't occur to me (nor was it suggested it anywhere I looked) that an updated installer was needed.

Well, back to frag some Stroggs!:D
 
Great! Thanks for the tip!
Ever since I set Mint to share audio with Pulse and Alsa, most of my audio problems have disappeared. I'm at least 5 hours into Quake 4 and loving it!
Honestly, I never had a chance to play it until now. I always expected a Doom 3 clone, but its much much better!
 
I played this game when it first came out, although that was on Windows. And by my memory, I also found it to be superior to Doom 3. I may have to get this game for Linux because reading your guide made me want to play it again.
 
Its totally superior in just about every way. Once again Raven used something id Software created and made it better. They did it with Hexen and Hexen II.
 
I completely agree with you guys that Quake 4 is clearly better than Doom 3, despite being much less successful on the market, but I would like to remind you that in 2012 Doom 3 was re-released with the BFG edition, which included the original game, the Resurrection of Evil expansion and the new Lost Mission, not to mention the original Doom and Doom II!

But most importantly they modified the game to allow the possibility to use the flashlight while holding a weapon, so you were not forced to fight in the darkness anymore.

Having said all that, IMHO none of those games come close to the great Quake 3 Arena!:)
 
Quake 3 huh? I honestly didn't really get into it because there was no singleplayer. It was all multi-player based and nothing but bots for me. I'm not much into multi-player games. They can be fun, but usually the 12 year old kid frags me to kingdom come before I can even get a weapon.

I hate to say it, but I am still a fan of Quake 1. I love the dark, gothic architecture and spooky monsters. I really miss those levels and secret doors. I know they didn't have much to do with the Strogg, but that is the element that keeps me going back.
I even play Darkplaces which uses the darkplaces engine and adds all kinds of eye-candy to Quake. Not to mention Quake comes with 4-player cooperative campaign.
Love it!
I've always wanted someone to create a whole new Quake based on the first one. Dark moody environments with wood, blood and iron. Spooky monsters and secret passages.
 
Hi, Thanks for this guide!
I'm trying to follow it today to install Quake 4 on Linux Mint but while launching the game I get this:

-------- Initializing Sound System ----------
sound system initialized.
---------------------------------------------
--------------- R_InitOpenGL ----------------
Initializing SDL subsystem
Loading GL driver 'libGL.so.1' through SDL
SDL_ListModes:
2560x1080 1920x1080 1680x1050 1440x900 1280x1024 1280x960 1280x800 1280x720 1152x864 1024x768 832x624
800x600 720x576 720x480 720x400 640x480
SDL_ListModes are currently ignored for resolution filtering. Set r_useSDLModes to 1 if you want it
libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/i386-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/i386-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/i386-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 152 (GLX)
Minor opcode of failed request: 3 (X_GLXCreateContext)
Value in failed request: 0x0
Serial number of failed request: 43
Current serial number in output stream: 44
pure virtual method called
terminate called without an active exception
signal caught: Aborted
si_code -6
Trying to exit gracefully..
pure virtual method called
terminate called recursively
double fault Aborted, bailing out

Do you have any idea? Thanks!
 
I haven't personally tested this yet, but there is a chance that such an old binary might have problems on newer systems, or if there are bundled libraries, those could be incompatible with newer systems. You could investigate with the lddtree command on the main binary for the game.

I could also check this out myself during this weekend.
 
I went ahead and downloaded the Linux port for Quake 4 and had a look. It appears to ship with a few libraries, and I had the exact same issue launching it as described. In the directory for Quake4 I deleted the file named "libstdc++.so.6" and then it would launch.

I could not verify if the game would run as I don't have the game files to test with. But at least the engine appeared to be able to run after deleting that file. It will instead rely on the shared library on your system after you delete it.
 
Very nice Daerandin! Thanks for testing the engine. I might have to give this a try because its been a long time.
 
I went ahead and downloaded the Linux port for Quake 4 and had a look. It appears to ship with a few libraries, and I had the exact same issue launching it as described. In the directory for Quake4 I deleted the file named "libstdc++.so.6" and then it would launch.

I could not verify if the game would run as I don't have the game files to test with. But at least the engine appeared to be able to run after deleting that file. It will instead rely on the shared library on your system after you delete it.
thanks man, it worked! Now I have to find a way around the cdkey check because I have a legit GOG copy of the game, which does not come with a cd key. The workaround provided in the guide it’s not working apparently. Thanks again!
 
Back
Top