id games source ports
id software released the source code for Doom 3 BFG Edition a few days ago following their terrific tradition of releasing the source of past games once the technology is no longer part of the state of the art in gaming. What follows is a list of some source ports that will allow you to play some of their classic (and sometimes not so classic) games, with emphasis on the single player experience if possible. All of them build and play cleanly on x86_64 Linux, which is my main OS.
-
Doom and Doom II, and any of their expansion packs in general: I used to play these games with PrBoom, which is a fantastic source port with many features. But I also discovered Chocolate Doom, which is really the best way to enjoy this game family, IMHO. Highly recommended.
-
Quake: for years I used to enjoy this game with QuakeForge, but lately I’ve been using Quakespasm. I even submitted a patch for proper widescreen FOV like I did for Yamagi Quake II. It’s a really good port.
-
Quake II: as mentioned previously, my favourite port is Yamagi Quake II hands down. Up to date, bug free, maintained and keeping the original gameplay and graphics while providing widescreen support.
-
Quake III Arena: not many properly maintained and good ports to choose from, so the obvious choice here is no doubt ioquake3 from icculus.org. Available everywhere, for the occasional and classic Q3 deathmatch games.
-
Doom III: the more recent the game, the more complex the game engine and the more difficult to find good ports. Right now I’m replaying this classic using the dhewm 3 source port. I feel it’s one of the few ports which is active and does things right by building cleanly on 64-bit and providing the original gameplay you’re expecting. Thumbs up!
I should also mention a couple more hints for playing id’s games in Linux.
First off, for games that use OpenGL (Quake onwards), you really get a performance hit if compositing is enabled in your desktop. Fortunately, KDE4 (which is the desktop I use) lets you set up a quick key combination to toggle desktop compositing before launching the game and after quitting. I think it should be possible to ask KWin, the window manager, to disable compositing via D-Bus, so you could in theory create a launch script for the game that disables compositing, launches the game and then enables it again automatically, but I haven’t bothered investigating this possibility yet. Maybe I should now…
And finally you may have a dual monitor setup like me, and the fullscreen mode in some ports is not very friendly for that situation. Maybe the game will be displayed in the middle of the desktop (taking one half of the space in each screen), or maybe it will not use the screen you want. In KDE, this is easy to solve. Keep the game in windowed mode. Configure a special window behavior for the application so that its window stays above others, window borders are removed and the window gets placed exactly where you want it. It’s the same as playing fullscreen and the game will be displayed wherever you choose.