We do often include affiliate links to earn us some pennies. See more here.

Playing Quake 4 on Linux in 2018

By -

A few months back I wrote an article outlining the various options Linux users now have for playing Doom 3, as well as stating which of the three contenders I felt to be the best option in 2017. Having already gone to the trouble of getting the original Doom 3 binary working on my modern Arch Linux system, it made me wonder just how much effort it would take to get the closed source Quake 4 port up and running again as well.

 

Getting it running

 

Quake 4 was ported to Linux by Timothée Besset in 2005, although the binaries themselves were later taken down along with the rest of the id Software FTP server by ZeniMax. The original Linux FAQ page is still online though, and mirrors hosting the Linux installer still exist, such as this one run by the fan website Quaddicted. Once downloaded this will give you a graphical installer which will install the game binary without any of the game assets. 

These will need to be taken from either the game discs of a retail Windows version as I did, or taken from an already installed Windows version of the game such as from Steam. Follow the steps in the Linux FAQ to the letter for best results. Please note that the GOG.com release of Quake 4 is unique in not supplying a valid CD key, something which is still required for the Linux port to launch. There are ways to get around this, but we only condone these methods for legitimate purchasers.

Like with Doom 3 I had to remove the libgcc_s.so.1 and libstdc++.so.6 libraries that the game came with in the install directory in order to get it to run. I also ran into the same sound issue I had with Doom 3, meaning I had to modify the Quake4Config.cfg file located in the hidden ~/.quake4/q4base directory in the same fashion as before. However, this time I ran into a whole host of other issues that made me have to modify the configuration file as well.

First off the language the game wanted to use would always default to Spanish, meaning I had to manually tell the game to use English instead. I also ran into a known issue on all platforms wherein the game would not properly recognize the available VRAM on modern graphics cards, and as such would force the game to use lower image quality settings. Quake 4 will also not render see-through surfaces unless anti-aliasing is enabled, although going beyond 8x caused the game not to load for me.

Appending the following to the end of the Quake4Config.cfg file resolved all of my issues:

seta image_downSize "0"
seta image_downSizeBump "0"
seta image_downSizeSpecular "0"
seta image_filter "GL_LINEAR_MIPMAP_LINEAR"
seta image_ignoreHighQuality "0"
seta image_roundDown "0"
seta image_useCompression "0"
seta image_useNormalCompression "0"
seta image_anisotropy "16"
seta image_lodbias "0"
seta r_renderer "best"
seta r_multiSamples "8"
seta sys_lang "english"
seta s_alsa_pcm "hw:0,0"
seta com_allowConsole "1"

Please note that this will also set the game to use 8x anti-aliasing and restore the drop down console to how it worked in all of the previous Quake games. Similar to the Linux port of Doom 3 the Linux version of Quake 4 also does not support Creative EAX ADVANCED HD audio technology. Unlike Doom 3 though Quake 4 does seem to also feature an alternate method for surround sound, and widescreen support was thankfully patched into the game soon after its release.

 

Playing the game

 

Over the years Quake 4 has gained something of a reputation as the black sheep of the Quake family, with many people complaining that the game's vehicle sections, squad mechanics, and general aesthetic made it feel too close to contemporary military shooters of the time. In the game's heart of hearts though it really does feel like a concerted sequel to Quake II, with some of developer Raven Software's own Star Trek: Voyager - Elite Force title thrown in for good measure.

To me at least Quake 4 does stand as being one of the "Last of the Romans" in terms of being a first person shooter that embraced classic design ideals at a time when similar titles were not getting the support of major publishers. Most of the game still features the player moving between levels featuring fixed enemy placements, a wide variety of available weapons, traditional health packs, and an array of enemies each sporting unique attributes and skills.

Quake 4 also offers a well made campaign that I found myself going back to on a higher skill level not long after I had already finished my first try at the game. Certain aspects like the vehicle sections do indeed drag the game down a bit, and the multiplayer aspect pales in comparison to its predecessor Quake III Arena, but overall I am quite pleased with what Raven Software was able to accomplish with the Doom 3 engine, especially when so few others tried.

 

Final thoughts

If anyone ever needed a reason to be reminded of the value of video game source code releases, this is it. Most of the problems I encountered could have been easily sidestepped if Quake 4 source ports were available, but with the likes of John Carmack and Timothée Besset gone from id Software and the current climate at ZeniMax not looking too promising, it is doubtful that any such creations will ever materialize. Doom 3 source ports look to be the end of the road.

Instead we are stuck using this cranky 32 bit binary with an obstructive CD Key check and a graphics system that freaks out at the sight of any modern video card sporting more than 512 MB of VRAM. The game itself has aged well, with graphics that still look great and dynamic lighting that is better than what is included with many modern titles. It is just a shame that it is now such a pain to get running, not just on Linux, but on any platform.

Article taken from GamingOnLinux.com.
Tags: Action, FPS, HOWTO, Review | Apps: QUAKE IV
28 Likes
About the author -
author picture
Hamish Paul Wilson is a free software developer, game critic, amateur writer, cattle rancher, shepherd, and beekeeper living in rural Alberta, Canada. He is an advocate of both DRM free native Linux gaming and the free software movement alongside his other causes, and further information can be found at his icculus.org homepage where he lists everything he is currently involved in: http://icculus.org/~hamish
See more from me
The comments on this article are closed.
39 comments
Page: 1/4»
  Go to:

PublicNuisance Jan 14, 2018
Shame on Zenimax for taking down the binaries and the rest of the id Software FTP server. There was no good reason for that. It's one thing to not care about Linux but to go out of your way to make it more difficult for Linux users to run what once was a game with a Linux port is just being a bully.
rea987 Jan 14, 2018
Cool article! Keep in mind the game's quake4-smp script executes SM accelerated quake4smp.x86 binary which provides more framerate. By the way, best way to solve the sound issues is to let the game use OSS instead of ALSA and install osspd-pulseaudio alsa-oss:i386. Will you cover other Linux supported id Tech 4 titles like Enemy Territory: Quake Wars and Prey?

Configure ~/.quake4/q4base/Quake4Config.cfg:

seta s_driver "oss"

Launch:

aoss ./quake4-smp


Last edited by rea987 on 15 January 2018 at 1:01 am UTC
ElectricPrism Jan 14, 2018
Too bad it cant just be flatpaked.

I guess best you can do is tar.xz it for later.
Guest Jan 14, 2018
Nice write up. Remember playing this on triple monitors the easy setting of resolution and FOV was a plus.


Last edited by on 15 January 2018 at 6:40 pm UTC
appetrosyan Jan 14, 2018
Why, Zenimax?

I still can't figure out: why are they so actively anti-linux. Yes it constitutes a minority among gamers, still, wouldn't explain why aren't they publishing games that already have tested Linux support.

The only logical explanation would be a contract with Microsoft, but then why aren't they pioneering DX12 and blatantly supporting Vulkan.

I suppose Zenimax are run by Chimps, because partnering up with nVidia and then doing a 180 after the Ryzen launch, is not a sane business decision, but I'm guessing there's something at play here.
Grim85 Jan 14, 2018
Quoting: appetrosyanWhy, Zenimax?

I still can't figure out: why are they so actively anti-linux. Yes it constitutes a minority among gamers, still, wouldn't explain why aren't they publishing games that already have tested Linux support.

The only logical explanation would be a contract with Microsoft, but then why aren't they pioneering DX12 and blatantly supporting Vulkan.


Boiling Steam did an interview with Tim Basset, he seems to paint it not so much of a resentment, but lack of knowledge
Hamish Jan 14, 2018
As always thanks for the feedback everyone. :)

Quoting: rea987Cool article! Keep in mind the game's quake4-smp script executes SM accelerated quake4smp.x86 binary which provides more framerate.
Thanks for letting me know about this, although the difference it seems to make for me is minimal. I am pretty sure my frame rate is being bottlenecked by r600g anyway though, seeing as how scaling the graphics settings down seems to not improve my frame rate either. I dug up some old Phoronix articles for those interested into reading into this further:

https://www.phoronix.com/scan.php?page=article&item=455&num=1
https://www.phoronix.com/scan.php?page=news_item&px=NTgx

I should also mention that I actually played the game with 2x AA enabled as it gave me the best performance, but kept it at 8x AA for the article and when taking screenshots.

Quoting: rea987By the way, best way to solve the sound issues is to let the game use OSS instead of ALSA and install osspd-pulseaudio alsa-oss:i386.
Indeed there are multiple ways to tackle the sound issue, I just went with what worked well for me.

Quoting: rea987Will you cover other Linux supported id Tech 4 titles like Enemy Territory: Quake Wars and Prey?
I was actually planning on making this a double feature with Prey to start with, but I ran into so many issues with Quake 4 it just made more sense to have it go out as its own article. So yes, that is definitely something I am open to doing in the future.


Last edited by Hamish on 15 January 2018 at 12:34 am UTC
apocalyptech Jan 15, 2018
Huh! I hadn't realized that Quake 4 never got opensourced - I'd just sort of assumed that somewhere down the line it had been. That's a shame! I'm one of the folks who actually quite liked Quake 4, and I'd actually been thinking about giving it another spin soon. Looks like this article should give me some help with that!
slaapliedje Jan 15, 2018
Under Debian.
game-data-packager -d ~/Downloads quake4 --binary-executables

I think that works, I am low on disk space!
Hamish Jan 15, 2018
Well, I am going to walk back what I said earlier - launching the game with quake4-smp does actually provide me with a much smoother frame rate as long as I am playing at 2x AA and have seta r_useSMP "1" included in my Quake4Config.cfg file along with the previously listed options. Nice call rea987. :)

I am seriously tempted to amend the actual article.

EDIT: So the only way I could get SMP to stick after a restart was by creating a separate AutoExec.cfg file instead of just using the main Quake4Config.cfg file. Even then it does not always handle SMP right on first launch, but on the plus side keeping all of my configuration changes in a separate file means I do not need to be as worried about overwriting them from inside the game's graphical configuration menus.


Last edited by Hamish on 15 January 2018 at 6:57 pm UTC
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.