Feb 12, 2011 : Update UT99 server, client in Slackware 13.1
Mar 13, 2011 : update UT2003 for Slackware 13.1, auto update hack
Mar 26, 2011 : update ut2004 for Slackware 13.1, ioQuake / Q3A



Installing/Patching New(ish) Games in Slackware Linux




*****************************************************************************************


Unreal Tournament (1999)
(Slackware 13.1, nVidia)

Quicklinks
OK, after reading through this, it occured to me that a couple of quick links to essential Linux UT files was in order.
Base installer w/OpenGL update, Bonus Pack installer.
Updates v440 w/IpDrv update, v451.


Hardware
I'm running an Intel Core i7 w/3G RAM through and an nVidia 8200GS PCIe using nVidia's module NVIDIA-Linux-x86-256.53.run on an otherwise stock Slackware 13.1 kernel.

Intro

Well, Unreal Tournament has been around for awhile, released in 1999. There's been at least two sequels since the original release, plus the single-player sequel "Unreal II" in there somewhere, as well. Even by today's standards, though, this game looks and plays pretty damn well. The great thing about it is that, by today's standards, it takes a pretty low-spec computer to have a good time. It is unforunate that a lot of the maps, mods, mutators and general information about this game are disappearing on the internet; there was such a plethora of fan-made files, you could literally play for weeks and not play the same map twice. I know there is a torrent of many DM (DeathMatch) maps in the wild, but if someone has a link to an archive of maps, I'd sure like to know about it.
I'll try and aggregate UT links that are still current at the end of this post.


Installation


You know, the game actually installed really painlessly in Slackware 13.1 (32bit).
I am running a Core i7 920 with 3G of RAM, nVidia 8200GS PCI-E video card, on-board Realtek ACL888 audio (snd_hda_intel module),
nVidia's x86-256.53 driver on an otherwise stock Slackware 2.6.33.4.SMP kernel. This installation was done in the XFCE window manager.
I used the original 2-disc set, not the GOTY (Game of the Year) edition, and not the "Creative Labs Edition". Avoid the Creative release, there are networking issues with it and the 451 update.

 There are Linux installers, the last official version is 436, although a fine group of individuals did some additional work with further upgrades.
I work from within a graphical environment to install Lokigame releases, but this will take a bit of  typing in a terminal window.
Download the 436 installer for your CD version here.
Grab the 440 & 451 updates as well.


The liflg 436 installer will update, among other things,  the openGL rendering engine that came with the initial Linux install script. There were some issues (details of which escape me at the moment), but their script will address that.
The 440 update from utpg will perform the Ipdrv issue that was later discovered and addressed. Their 451 release was the last bit of work that I am familiar with, for Unreal Tournament. Security updates, as I recall.
You should note that, if you upgrade to v451 (and possibly just v440) that if you try to connect to a UT server which employs file redirection, your client will not accept the redirected files. If you play a lot of online games on many servers with different maps, and you want to use the patches, you should find a way to download and install the maps and their associated textures, sounds, etc, first. The 451 Linux client is still able to acquire files directly from the server, if the server has been configured that way, but on larger maps, it is unlikely you'll receive the files in time to play. I've read that most people tend to stick with 436 for online play, in both Windows and Linux, and that v451 is used mainly as a server. Apparently the update breaks UnrealEd in Windows, and breaks file redirection in Linux. I have been able to extract and install the OpenGLDrv.so  fix from both updates, and use them in the 436 installation, with excellent results, but the IpDrv updates cause my 436 client to crash when I try to connect on the LAN.
If you are going to use a full install to run a server, then absolutely do both updates.
FWIW, Win451 clients will redirect properly against Lin451 servers.


So, to install the game, open up 2 terminals, su into root , make a directory called   /cdrom  (
if you don't already have it) and mount the first cd on it.
<open an xterm>
su root
<enter password>
mkdir /cdrom
mount /dev/cdrom   /cdrom

in the second terminal, chmod 555 the installer and run it, defining the target directory. I put all my games in   /usr/local/games  , the traditional Lokigames directory of choice.
chmod 777   .
/unreal.tournament_436-multilanguage.run
./unreal.tournament_436-multilanguage.run
or, if that doesn't put things where you want them, try
./unreal.tournament_436-multilanguage.run    --target /usr/local/games/ut

This should bring up the popup box, which will inform you how the installation is going. On the bottom there is a button for creating KDE/Gnome associations and menu items. I unchecked it, as I've had issues with it previously, and also have migrated over to XFCE. At the same time, I selected the choice to use S3TC compressed textures; most modern video cards are more than capable of using these. Everything went smoothly to the end of the first CD, it prompted me to mount the second CD. So, in the second terminal
umount   /dev/cdrom
Switch CDs and remount
mount   /dev/cdrom
and click "try again" as stated in the popup window.
The compressed textures are on CD2. If for some reason you are unable to copy them through the installer, just copy them directly into the new ut directory, after the installation completes.
<insert 2nd CD>
mount /dev/cdrom   /cdrom
cp -v /cdrom/Textures/* /usr/local/games/ut/Textures/


Now we (optionally) install the remaining patches (440, 451).
su back into root, copy the 440 patch into /usr/local/games/ut/System and unarchive it right there.
su root
<enter password>
cd  /usr/local/games/ut/System
cp  /your/dowload/directory/utpgPatch440.tar.bz2   ./
tar  -jxvf  utpgPatch440.tar.bz2


Then move up one directory, cp the 451 patch here and unarchive it
cd / usr/local/games/
cp  /your/dowload/directory/UTPGPatch451.tar.bz2   ./
tar  -jxvf 
UTPGPatch451.tar.bz2
exit

Or, just unarchive the v451 patch in a temporary directory and copy OpenGLDrv.so into /usr/local/games/ut/System/

Lastly, update the SDL library in the game's /System directory to use the OS' SDL library. It doesn't appear to be absolutely necessary, the game seems to run all right without it, but if we're able to use the newer libs, why not?
cd   /usr/local/games/ut/System
mv   libSDL-1.1.so.0   libSDL-1.1.so.0.old
ln  -s   /usr/lib/libSDL-1.2.so.0  /usr/local/games/ut/System/libSDL-1.1.so.0


I would exit from root and try to start the game as a normal user now, just type  
ut   at the command line. This didn't work for me at first, I had to symlink the executable into a /usr/bin
ln  -s   /usr/local/games/ut/ut   /usr/bin/


and then everything ran well, clear audio & full 1920x1080 accelerated video.

The following were notes, when I was still running the KDE:
If you want a startup menu item, create it manually. There is an   .xpm  icon in the   /usr/local/games/ut   directory that works. Make sure you select "run in console", just in case it doesn't finish cleanly (like ut2004).
I have a process called "gnome-pty-helpe" still running after I shut down, doesn't seem to have a detrimental effect, so I just kill it off.


If you fired up the game and it didn't work, check your user's .ini file.You may have to edit it thus :
/usr/local/games/ut/System/UnrealTournament.ini
so that in the subsection    [Engine.Engine]    , the first four lines read:
GameRenderDevice=OpenGLDrv.OpenGLRenderDevice
WindowedRenderDevice=OpenGLDrv.OpenGLRenderDevice
RenderDevice=OpenGLDrv.OpenGLRenderDevice
AudioDevice=ALAudio.ALAudioSubsystem

and further down in the SubSection     [OpenGLDrv.OpenGLRenderDevice]   , it's first four lines read:
UseTNT=0
UseGammaExtension=1
UseModulatedGamma=0
UseS3TC=1

Now you should be as up to date as you can possibly be. Try running the game again, just to make sure the patches have taken. If 3D graphics just aren't happening, you can always run in software rendering mode. The game is getting old enough that the hot new consumer CPUs can do a damn fine job of keeping the graphics happening. For software rendering, edit   ~/.loki/ut/UnrealTournament.ini    subsection   [Engine.Engine]   thus:

GameRenderDevice=SDLSoftDrv.SDLSoftwareRenderDevice
WindowedRenderDevice=SDLSoftDrv.SDLSoftwareRenderDevice
RenderDevice=SDLSoftDrv.SDLSoftwareRenderDevice



That's it. It worked very easily for me, and man oh man, playing UT in 1080p on full detail is sure a better experience than I remember <grin>.

You probably also want to download and install the official bonus pack collection from liflg
, I believe it addresses the "de mismatch" issue, includes all four official bonus packs.
From here, I'll leave you to your own devices to grab and install your favourite mutators, mods and maps.

Most mutators and mods were delivered in .umod format. If you find something you want to install, I recommend acquiring the non-umod version if it is available. If you are stuck with .umod, there is a UMOD extractor, which works in Wine v1.2, or if you have access to a 32-bit Windows system (<= WinXP), you can extract a UMOD's contents with this, then install the extracted files manually in your Linux box.


Linux 451 Server and Client Won't Redirect

Through a bit of trial and error, it's become clear that there is a wee bug in v451 update. A v451 Linux server doesn't redirect downloads to v451 Linux clients properly - they'll have to acquire any missing files directly (slowly) from the server, or through other channels. All Windows version of the client are redirected without trouble, and earlier Linux (436, 440) versions are redirected as well, it is just the v451 Linux clients that cannot get fed through the big hose.
One option to consider, if you are expecting to have to acquire a lot of stuff through the various online servers+redirection, is to make a copy of your initial v436 install
cp -vAr /usr/local/games/ut /usr/local/games/ut436
before upgrading to v451. Once you've copied it, finish upgrading, then rename the finished install to ut451
mv   /usr/local/games/ut   /usr/local/games/ut451
now make a sym-link to whichever version you want to play
cd /usr/local/games/
ln -s ./ut451 ./ut
Whenever you hit a server necessitating a download, you can
1> back out of the game (remember the server name)
2> sym-link to ut436 instead  ut451
3> restart the game, hit the server again, wait for the files to download
4> stop the game
5> copy the cache from ut436 into ut451's cache
6> symlink back to ut451
7> restart the game and hit the server


I seem to recall that identifying which files are which, in the cache, was not that big a deal. You should be able to copy the cache files from ut436 directly into their approriate directory in ut451, rather than its cache, if you are inclined to do so.




My Own UT99 Work
I modded the excellent map DM-Zeitkind_ProFinal13, remapped for better bots, and more access to rooftops, a few extra passages. It's called   DM-ZeitkindPro_DanzMod031106.unr, the UT-compressed files are available
 here
 and I host it whenever I run a server (see : "UT99 Dedicated Server", below).
I've released two maps :
DanzGallery
DanzBasement
And I made a mutator called BotKillsDontCount
.
I wrote BKDC to entice players to compete with each other on sniper servers running bots. The basic gist of it, is that you can only shoot bots to bring yourself  back from a negative score. Once you reach zero, killing bots doesn't benefit you any more. The bots, on the other hand, CAN kill you and diminish your score, so you still have to be wary of them. The only way to win a match is by fragging your human opponent. I ran it on my modified Zeitkind map in my sniper server for a long time, it seemed to work pretty well.





Current (as of this writing) Unreal Tournament Links

UT-Files looks like an excellent repository of UT99 files.
Planet Unreal still seems to up and running. Lots of maps mods and hosted sites available in there.
Map Factory has a few maps available for download.
UT99.org has a some very pretty maps.
Smeerkat wants you to make your own stuff.
Mapraider has a bunch of maps for UT99.
If you've chosen an older, low-spec computer to run your client, you might be interested in the low poly packs available.
utzone.de also has a downloads area, perhaps there is something of interest to you.





UT99  Dedicated Server on Slackware 13.1

Just quick comment that the Unreal Tournament (1999) dedicated server, updated to v451 & UTPure7G anticheat, seems to work under Slackware 13.1 without any difficulty. The only caveat (and it is not specific to Slackware, but all Linux distros in general) is that, through a bit of trial and error, it's become clear that there is a wee bug in v451 server. It doesn't redirect downloads to v451 Linux clients properly - they'll have to acquire any missing files directly (slowly) from the server, or through other channels. All Windows version of the client are redirected without trouble, and earlier Linux (436, 440) versions are redirected as well, it is just the v451 Linux clients that cannot get fed through the big hose.


If you are hard pressed for disc space, you can do a very bare-bones installation of Slackware 13.1, and the server will still run. The game is old enough that it really doesn't take a lot of horsepower to make things work - probably a Pentium1, 64M RAM, and a 10/100 NIC would be enough for 1vs1 maps - and all you really have to install, from the Slackware 13.1 install disc, are packages "a" and "n" - it may even be possible to pare those down further, but IIRC, those two full package subsets are the minimum that the Slackware team suggests installing. This will leave you with a command line OS and enough software to run the dedicated server, including web admin. All tabulated, the pared-down OS, UT99 server, bonus packs, and anticheat, weigh in at about 1.8GB. Maybe there's use for that old system after all?

I've been messing around with a Norhtec Microclient Jr dx (same as DMP eBox-3300) recently, decided to take a stab at making a 6-watt UT99 Server. Although it is not without its quirks, it seems to be holding its own.
Follow this link to read about the unreal tournament server on a Vortex86 (updated silicon called XCore86) system.



Open Source alternative to UT: IOquake3
Open Source alternative UT: OpenArena


*****************************************************************************************

UT2003
(Slackware 13.1)

Hardware
I'm running an Intel Core i7 w/3G RAM through and an nVidia 8200GS PCIe using nVidia's module NVIDIA-Linux-x86-256.53.run on an otherwise stock Slackware 13.1 kernel.

Installation
Well, the good ol' days of everything automatically updating are over. In fact, I had a hard time simply tracking down the necessary updates, doesn't look like the producer of the game is even hosting them any more, all but one of the official mirrors have turfed them, and the one that has archived them has changed the directory structure so that "updates.txt" no longer points to the correct directory.
I've hacked a solution (see below) so that the game can update itself, but I currently lack the webspace to host it (limited to 10M, update weighs in at about 12M). It's pretty easy, I run it on my LAN, if you are interested in doing it from your own webserver, take a look further down the page.

Although loki_update no longer works on this game it is not a huge deal, because there is an update which will take you straight to v2225.3, and it's pretty painless to install.
The installation still goes well. If you've researched a bit, you'll know that the Discs were labelled 1, 2, and 3, but the installer asks for Discs "Play", 1 and 2.
Installer "Play" = Printed 1
Installer "1" = Printed 2
Installer "2" = Printed 3
To install ut2003, open two consoles and su into each of them as root. The game expects to find an optical drive at /dev/cdrom, so check and be certain that there is a link to /dev/cdrom from your true optical drive (probably /dev/sr0 in Slackware 13.1). Mount the third CD in the drive
mount   /dev/sr0   /cdrom
then in the other console, do *not* descend in to the CD's directory - you have to do some CD swapping, so you need to stay out of it. Just go to the root of the file system and run
sh /cdrom/linux_installer.sh
There is an option to install KDE/Gnome startup menu entries, which I deselect (I use XFCE now, have had difficulty with installing older games using that button, in the past). It will run its course, whenever it needs a different CD, just unmount from the first console
umount   /dev/sr0
 replace with the approriate CD, and remount, then click "Yes" in the Installation GUI's popup window.

That's all there is to it; watch the progress bar, and click exit when it's done. The game should be installed.

Now you want to update straight to v2225.3. In the past, loki_update would run the game through about five progressively newer updates, and you'd sit there and watch the magic. Now, we go straight to v2225.3. Grab
ut2003lnx_patch2225-3-beta.tar.bz2
Then simply unarchive it, and copy each of the files in the unarchived directories into your new ut2003 install.
tar -jxvf ut2003lnx_patch2225-3-beta.tar.bz2
cd  ut2003-lnx-2225-3
cp  -vr  /System/*  /usr/local/games/ut2003/System/
cp -vr Textures/* 
/usr/local/games/ut2003/Textures/
cp  -vr  /Web/*  /usr/local/games/ut2003/Web/
cp  -vr  /Help/*  /usr/local/games/ut2003/Help/


That should have you up to snuff. Exit as root, and run the game as a mortal user by calling
ut2003




Old Skool Manual Updating

If you want to do it the old way, by applying each update one at a time, I've found them at

ftp://ftp.student.utwente.nl/pub/games/UT2003/Patches/Linux/
http://downloads.unrealadmin.org/UT2003/Patches/Linux/

I haven't used these patches myself, I use the first quick method, but I have mess ed around a bit with the .bin updates.
Note that, if you choose to use the *.bin versions, a call to loki_patch will fail, with the error :
loki_patch: dynamic-link.h:57: elf_get_dynamic_info: Assertion `! "bad dynamic tag"' failed.

This is loki_patch being unable to verify the patch. You can get around this, but running the .bin with the switch --keep
sh install_name.bin --keep
letting it fail, then moving into
~/.loki/loki_update/tmp/
directory, then into the retained files' directory
./RETAINED_NAME/bin/Linux/x86/
directory, and swap out loki_patch with the "fixed" one from
http://icculus.org/~msphil/loki/x86/

that has been used in the past to update the Loki Games releases, on modern Linux. Now just run
update.sh
from within the retained files' directory, and it should install.


If you want loki_update to grab the files for you, I have a modded updates.txt file that will grab them from
ftp://ftp.student.utwente.nl/pub/games/UT2003/Patches/Linux/ . Call loki_update with
loki_update  --update_url  http://members.shaw.ca/dan.mckay/ut2003/updates.txt
It will download the first update
, but the updater will ultimately fail when it tries to verify the patch. Do your manual thing, and repeat until you're up to v2199.



Mentioned here for posterity: In the past (Slackware 11.0), there was an issue with
/usr/lib/tls
which kept ut2003 from starting. It was resolved by renaming the directory
/usr/lib/tls.old
but I didn't encounter this in Slackware 13.1.




UT2003 Bonus Packs


There are some bonus packs you will probably want to install:

Epic Bonus Pack
DE Bonus pack
Community Bonus Pack 1
Bright Skins Patch



If you have the Epic Bonus pack in .bin format, you can just run it
sh  EpicBonusPack.bin
and it will install - it yields a
dynamic-link link error, but it seems to copy everything down.

If you have the DE Bonus and/or Bright Skins in .exe format, they are just self-extracting zip files. Unzip them
unzip BrightSkins.exe
and manually copy the contents of its /Textures directory, into the ut2003's /Textures directory. There's a bunch of stuff that is unarchived, but AFAIK, we only need the texture set.
To actually use the bright player skins, you need to edit
/usr/local/games/ut2003/System/Default.ini
as root, and
~/.ut2003/System/UT2003.ini
for normal users. Include the following two lines, somewhere in those files (I just tack them on to the bottom) :

[BonusPackGroup]
UnrealGame.DMMutator.bBrightSkins=true


The Digital Extremes bonus pack can just be unzipped and copied straight into the appropriate ut2003 installation directories

So far, I've only been able to dredge up the community bonus pack in UT2MOD format. Your updated installation of the game should be able to extract the files. As root, cd into ut2003's /System directory and
cd  /usr/local/games/ut2003/System
./ucc-bin  umodunpack  -x  /PLACE/WHERE/UT2MOD/IS/FILENAME.ut2mod  -nohomedir

Which extracted everything into its proper place. This should work for any UT2MOD files you want to install.




UT2003 Automatic updates

AFAIK, there is no way to automatically update ut2003 to version 2225.3. There are a couple of reasons. Firstly, it looks like there was simply no binary update file ever made, only the bzipped "manual" file. Additionally, even if it existed, it would appear that there is no support from the producer of the game, any more - if you try and run update from within the game's installation directory, it fails immediately, because the update files are no longer hosted on Epic's web server, and there is a built in switch that precludes using a new URL, forcing it to fall back to the old Epic URL.

If you would like to be able to update via your own webserver, using loki_update, there are a couple of things to do. You need a slick little piece of software called makeself.sh, download and install it.
You also need five files :
Grab this one, and rename it to    updates.txt
Grab this one and rename it to    update.sh
Grab this one and rename it to    README-2225.3.001
Grab the official 2225.3 update archive

Grab this one and rename it to    update.
This is just my quick fix for the "update" script failing. I just deleted the bad switches. If you use loki_update directly, you don't need it.


First, unarchive the official 2225.3 update. Descend into the first level of the archive, and create another directory called   /updater/  to go along with the directories already present.
Copy   update.sh   into the first level of the archive
Copy   
README-2225.3.001   also into the first level of the archive
Copy    update   into the   /updater/  directory. All this is, is a fix for the issue with "update" not using a user-defined update URL.

Now back out and run makself.sh on the directory. Here's how I ran mine, but sort out the options that suit you best.
sh  ~/MAKESELF-INSTALL-DIR/makeself.sh  --bzip2  --notemp  --nomd5  --nocrc  ./ut2003-lnx-2225.3/  ut2003lnx_full2225.3.1.sh.bin  "Update ut2003 to v2225.3.1"  ./update.sh

That will create a file   
ut2003lnx_full2225.3.1.sh.bin   which is going on your webserver later. Now
edit the first line of
updates.txt
to redirect to the webserver directory where you will have the ut2003lnx_2225.3.1sh.bin file. So, for instance, if you are
http://www.UT2003-Masters.org

you could make a directory on your webserver called
/ut2003-updates/

then edit the first line of    updates.txt    to :
Mirror: http://www.UT2003-Masters.org/ut2003-updates 


So, make the directory on your webserver, make sure updates.txt reflects that URL directory, then copy
updates.txt
ut2003lnx_2225.3.1sh.bin

into that directory on your webserver. You should be able to run loki_update against that webserver, now, to update ut2003
loki_update   --update_url  
http://www.UT2003-Masters.org/ut2003-updates/updates.txt

Should present you with the ability to download and install the .bin offered by your webserver. Two more files, which are not absolutely necessary, but will make the process a little cleaner, are and md5 and txt file
ut2003lnx_2225.3.1sh.bin.md5
ut2003lnx_2225.3.1sh.bin.txt

The text file is just a description of the update, you can read it in the updater GUI by clicking the "README" button on the botom of the popup.
The md5 file is, obviously, just an md5sum of the .bin. Generate with
md5sum  
ut2003lnx_2225.3.1sh.bin  >  ut2003lnx_2225.3.1sh.bin.md5
and copy it into the webserver alongside the other ut2003 files you've placed.
This method should work for virtually any kind of update you want to push - a set of maps and mods in your server's rotation, for instance. Just hack updates.sh and include the various Textures, Maps, etc. IIRC, the Brightskins, DEBonus, and CBP1 all were offered in .bin format, already, so they should be a trifle to include.



 
If you want to make your webserver the default location for updating ut2003 from now on, taker a look at
~/.loki/installed/ut2003.xml
it should be pretty straight forward.





Current (as of this writing) UT2003 Links

Updates
ftp://ftp.student.utwente.nl/pub/games/UT2003/Patches/Linux/
Updates http://downloads.unrealadmin.org/UT2003/Patches/Linux
ut2003 server Unreal Admin
Public redirect  UT-Files.com
Maps http://www.utmr2003.dk/
Maps at Mapraider



Open Source alternative to UT2003: IOquake3
Open Source alternative UT2003: OpenArena





*****************************************************************************************


UT2004
(for Slackware v13.1)


UT2004 is a fairly effortless installation, even with a newer (as of this writing) linux distribution like Slackware 13.1, and hot new hardware.
I'm currently running a Core i7 920 with 3G RAM and an nVidia 8200GS PCI-E video card, Realtek ACL888 on-board sound
(snd_hda_intel module), nVidia's x86-256.53 driver on an otherwise stock Slackware 2.6.33.4.SMP kernel.

  I encountered just one issue installing and running the game, in Slackware 13.1 :
The game installer can't find the DVD mounted in the optical drive, it kept prompting me to mount the disc, even though the disc was already mounted.

Before I start, I should mention that I'm using XFCE, rather than KDE. I don't know if that is important, but if you are having difficulty and you're in the KDE,  try switching to a different window manager. The KDE has a lot of stuff going on in the background...
To address the mount prompting issue, just export the path to the mount point first, then run the installer script.
<open a console>
su
<enter password>
<insert DVD disc>
mount   /dev/YourOpticalDrive   /your/mount/directory
export   SETUP_CDROM=/your/mount/directory
sh   /your/mount/directory/linux-installer.sh


One option, near the bottom of the popup menu, will be to install KDE/Gnome shortcuts, but you want to uncheck that - if you leave them active, the installer may hang at the end (it did in  Slack 12.2, I didn't even bother trying with 13.1). Let the installer run its course  - it takes a while, and for whatever reason, really grinds at my optical drive - and exit upon completion.
Next,
download the ut2004 megapack installer from liflg
and install that (without the KDE/Gnome shortcuts, again).
su
<enter password>
sh ut2004.megapack-english-2.run
exit


That's all there is to it.
From the link above, there are also 3 community bonus packs that are probably also worth grabbing and installing, while your in the mood.
From a console prompt, type   ut2004   as a non-root user, and you're off.
Previously (in Slackware 12.2), when I first started the game, I lost the input peripherals - keyboard and mouse - I had to copy the default .ini files, from /usr/local/games/ut2004/system/, into my normal user's home directory.
cp    /usr/local/games/ut2004/System/DefUser.ini   ~/.ut2004/System/User.ini
cp    /usr/local/games/ut2004/System/Default.ini   ~/.ut2004/System/UT2004.ini

But this time 'round, it wasn't necessary - just install and play, everything worked out of the box. Very nice.


UT 2004 Mod:  Unwheel
( HOMEPAGE )


UT 2004 Mod:  Alien Swarm and Alien Swarm Infested
( HOMEPAGE )

UT 2004 Mod:  Air Buccaneers
( HOMEPAGE )

UT 2004 Mod:  CTF4
( HOMEPAGE )


Open Source alternative to UT2004 : ??? Let me know


*****************************************************************************************


  Quake II: Colossus

I don't own this release... yet.


Open Source alternative to Quake II: Apparently Q^2 ( and others? ), but I know nothing about it / them.



*****************************************************************************************

ioQuake
(Slackware 13.1)

Technically, ioQuake is now open source - you can download the source and compile it yourself, but AFAIK, you still need a retail copy of the original Q3A game to make ioQuake run, so I'll lump it in with all the other commercial FPS on this webpage, until I know otherwise. Installing and running ioQuake is pretty easy stuff.

Grab the Engine Installer for your particular hardware (I'm still using a 32-bit x86 kernel), and the Data Installer. As root, run the Engine Installer script
sh  ioquake3-1.36-7.1.i386.run
then do the same with the Data Installer
sh ioquake3-q3a-1.32-9.run
Now mount your Q3A or Q3 Team Arena disc and copy pak0.pk3 into the ioquake install directory
cp   -v  /cdrom/Quake3/baseq3/pak0.pk3    /usr/local/games/ioquake3/baseq3/

That's all there is to it. Run the game with the command
ioquake
from a console if you did not install menu items.





Open Source alternative to ioQuake: OpenArena
TMK, OpenArena is rooted in the ioQuake3 project, but I believe it uses GPLed media as well. I haven't used it yet, myself, but if I do I'll update something here. If you don't own a commercial copy of Q3A/Q3TA, then perhaps OpenArena is a direction that will work for you.




 Quake 3 Arena (Q3A)
(Slackware 13.1)

I'll start by saying that the game will install, but audio is no longer functional - apprently there is no support for either ALSA, or ALSA'a OSS compatability. I'll go through the steps necessary to get the retail version running, but really,
ioQuake is the way to go, now. It is the same engine, based on id's source code, but updated for modern linux - there's realy no reason, that I am aware of, to run the commercial releases any more.

Having said that, here's what you do to get Q3A happening. It is still a pretty uneventful installation. Get the latest installer (linuxq3apoint-1.32b.x86.run) here
. Get the latest commercial point-release (quake3-1.32c-linux.zip) here. Mount the Q3A CD on /cdrom and run the installation script. When it's done installing, copy the pak0.pk3 file from the CD into /usr/local/games/quake3/baseq3, unzip the latest point-release update, and copy the contents of the linux directory into the quake3 installation directory. Unmount the CD and run the game as a non-root user.
<open an xterm>
su
<enter password>

I believe the game expects to find the CD mounted on /cdrom, so if you don't have that mountpoint already, make it.

mkdir  /cdrom
mount  /dev/cdrom  /cdrom
sh 
linuxq3apoint-1.32b.x86.run
cp /cdrom/Quake3/baseq3/pak0.pk3  /usr/local/games/quake3/baseq3
unzip  quake3-1.32c-linux.zip
cp ./Quake\ III\ Arena\ 1.32c/linux/*  /usr/local/games/quake3/
umount /cdrom


The 1.32c point release will leave two new binaries which require sym-linking. Delete the old sym-links, and make the new ones.
rm  /usrl/local/bin/quake3
rm  /usrl/local/bin/quake3-smp
ln  -s  /usr/local/games/quake3/quake3.x86  /usr/local/bin/quake3
ln  -s  /usr/local/games/quake3/quake3-smp.x86  /usr/local/bin/quake3-smp
exit

Lastly, as you normal user, create two directories called .q3a & .q3a/baseq3
mkdir .q3a
mkdir .q3a/baseq3
and sym-link all the pak files from the quake3 install into it
ln  -s  /usr/local/games/quake3/baseq3/*  ~/.q3a/baseq3

If you don't do this, when you try and run the game, it will shut down with an error message:
Sys_Error: Couldn't load default.cfg

 
Now you can run the game
quake3
or, if you have a multi-core system
quake3-smp

 If you have the Team Arena disc, mount it and copy PAK0.PK3 from it into /usr/local/games/quake3/missionpack/. I sym-linked it with pak0.pk3 inside that directory, but am uncertain it was necessary.

cp  /cdrom/missionpack/PAK0.pk3  
/usr/local/games/quake3/missionpack
cd  /usr/local/games/quake3/missionpack
ln  -s  ./PAK0.PK3  ./pak0.pk3
umount  /cdrom



It plays well at this point, but as I said, no audio. I'll recommend  ioQuake  one more time, for the full experience.





*****************************************************************************************


Quake 4
(for Slackware v11.0)


Quake 4 is not a point'n'click installation, but the steps necessary to make it happen are not too difficult.
I ended up purchasing the four-CD set for Quake 4, but the DVD installation is probably similar. The box mentions nothing about Linux, only Win2K/XP. To install in Slackware Linux, first  download the installation script ; we'll need it after we've done the initial work.
As root, make a directory
/usr/local/games/quake4/q4base/

then move into that directory, and for each of the CDs, copy the .pk4 files from
/Setup/Data/q4base/
into it.
su
<enter password>
mkdir   /usr/local/games/quake4
mkdir   /usr/local/games/quake4/q4base
cd   /usr/local/games/quake4/q4base
<insert first CD>
mount   /dev/cdrom   /cdrom
cp   -v   /cdrom/Setup/Data/q4base/pak00*pk4   /usr/local/games/quake4/q4base/
umount   /cdrom
<insert second CD>
mount   /dev/cdrom   /cdrom
cp   -v   /cdrom/Setup/Data/q4base/pak00*pk4   /usr/local/games/quake4/q4base/
umount   /cdrom
<insert third CD>
mount   /dev/cdrom   /cdrom
cp   -v   /cdrom/Setup/Data/q4base/pak00*pk4   /usr/local/games/quake4/q4base/
umount   /cdrom
<insert fourth CD>
mount   /dev/cdrom   /cdrom
cp   -v   /cdrom/Setup/Data/q4base/pak00*pk4   /usr/local/games/quake4/q4base/
umount   /cdrom
cd   /usr/local/games/



For some reason, the permissions on some of the pk4 files are different across the different CDs. Change those now
chmod 644 /usr/local/games/quake4/q4base/*.pk4

Now run the point release file

sh   /wherever/your/downloads/go/quake4-linux-1.3-2.x86.run

a few popups windows will prompt you for various acknowledgments. Let the installer do its thing, end exit the installation. You will probably want to install the punkbuster software as well (default choice), if you plan on playing online.
Exit as root, and run the game as a non-root user
exit
quake4


where you'll be prompted for the CDkey. Enter it (from the inside of your game's hardcopy manual) and away you go. It's a pretty slick game to play. For more info,
here is the reference site I used to assist with my installation.



Open Source alternative to Quake 4: ??? Let me know



*****************************************************************************************



Doom 3
(for Slackware v11.0)



Doom 3 installs in a a similar manner to Quake 4, which makes sense as hey are both made by ID.
Start by downloading the latest patch ( version 1.3.1302 as of this writing). When that's done,  open a console and make a directory to copy the necessary files
<open console>
mkdir   /usr/local/games/doom3
mkdir   /usr/local/games/doom3/base



Now mount the each of the CDs and copy the .pk4 files from each
<insert 1st CD>
mount   /dev/cdrom   /cdrom
cd   /usr/local/games/doom3/base
cp   -v   /cdrom/Setup/Data/base/*.pk4   ./
umount  /cdrom
<remove 1st CD, insert 2nd>
mount   /dev/cdrom   /cdrom
cd   /usr/local/games/doom3/base
cp   -v   /cdrom/Setup/Data/base/*.pk4   ./
umount   /cdrom
<remove 2nd CD, insert 3rd>
cd   /usr/local/games/doom3/base
cp   -v   /cdrom/Setup/Data/base/*.pk4   ./
umount   /cdrom


OK, the required files are down, now run the installer
sh   /directory/where/your/files/are/downloaded/to/doom3-linux-1.3.1302.x86.run

This will perform the final part of the installation, including the punkbuster software, which you will likely need if you plan on going online with the game. When it's done, exit the install and run it from the console as a user
exit
doom3


My installation has a corrupted icon, so although it installed a menu item in the KDE, the pretty icon wasn't showing up.
You can get a new one from this page.
Just copy into /usr/local/games/doom3  , replacing the one that is currently there.
su
<enter password>
cp  
/directory/where/your/files/are/downloaded/to/doom3.png  /usr/locla/games/doom3/


That's it, the game should run from there.




Open Source alternative to Doom 3: ??? Let me know



*****************************************************************************************


Terminus
(Slackware 11.0)

The Terminus CD is burned with the HFS fiilesystem, my guess is that the crew at Vatical Entertainment develop on Macs. If you are using a custom kernel, you'll need to have HFS filesytem compiled into it.
Installation of the first two CDs is straightforward. Mount them and start the installation script.
<insert 1st CD>
su
<enter password>
mount /dev/cdrom /cdrom
sh /cdrom/Linux_Install
<let it install its files>
<no you don't want to play>
umount   /cdrom
<insert the second CD>
mount /dev/cdrom /cdrom
sh /cdrom/Linux_Install
let it install its files>
<no you don't want to play>
exit




There is a patch for Terminus, it brings a base install up to version 1.81. Download and run that patch now.
su
<enter password>
tar -zxvf TerminusLinuxPatch11to181.tar.gz
cd .
/TerminusLinuxPatch11to181
./termpatch  /usr/local/games/Terminus/
exit



Now you have a fully patched version of Terminus. Unfortunately, when I tried to fire it up, it hung at a point shortly after setting the /dev/dsp sound device.
Here's where I found the solution I use.
So, for a first run, start it like this
esddsp terminus

and let it go into its game startmenu. The sound won't work, but all we're really trying to do is get it started just once, so that it'll make a configuration file for itself. It will prompt you about using the audio disc. For now, just hit ESC (no). Once the game menu comes up, choose to exit the game. In your home directory there will be a new directory called Terminus, inside will be a file called     terminus.cfg
Edit it with a basic text editor (Kedit for instance), inserting the line
linux_sound_output   "/dev/audio"

Now you can start it up again, and the audio should work fine.
If you want to use the 3D graphics, you'll have to start the game with that switch
terminus +gfx_renderer opengl

The next problem to adress is that   terminal.cfg   appears to get re-written every time the game plays. So you edit, run the game and everything is kewl, shut it down, start it again, and it hangs at the /dev/dsp device. One option is to edit the file, run the game and configure it just how you like (or if you are Ok with the stock configuration, just go straight to the next step without starting the game). Once you're done configuring, exit the game, then edit the terminus.cfg file and re-insert the   /dev/audio line  , save it, then change the permission on it read-only ( -r- -r- -r- )
chmod 555 ./terminus.cfg


If you want to listen to the audio disc while your playing, make sure that your user ID has permissions to access the   /dev/cdrom   device before you start the game. If it doesn't, then as root, chmod it to (rw- rw- rw-)
su
<enter password>
chmod 666 /dev/cdrom


Terminus did not create a start item in my KDE menu, so I had to do that manually. Make sure you include the switch(es) you want to employ, in the command line. You'll also want to check the "Run in Terminal" field, or the screen does render properly.



Open Source alternative to Terminus: ??? Let me know


*****************************************************************************************



Others?
Well, I've got a bunch of Lokigames releases, here's a webpage on how to install and run them.

I've got a webpage linking a few very good Open Source games.

Sometimes, there is simply no alternative to emulation.
Go here to see my WINE work
Go here to see my DOSbox work


*****************************************************************************************


HTH, "Have fun".
I am Dan