Linux Gamers' FAQ

Current topics

About the Linux Gamers' FAQ (return)

Q: What is the Linux Gamers' FAQ about anyway?

A: We will try to answer the most commonly asked questions here, so you can get on to playing games in Linux.
Thanks to icculus (http://www.icculus.org/) for hosting this FAQ. We'd also like to thank icculus for coding the gamelist.

Q: Who is producing this?

A: zjs@zacharyjackslater.com
A: icculus@icculus.org
A: If you'd like to contribute as well, either mail your diff(s) to zjs (zjs@zacharyjackslater.com), or e-mail zjs for access and use subversion (svn co svn://svn.icculus.org/lgfaq/trunk/ lgfaq) to contribute. You can also contribute or complain about stuff via the bugzilla interface (https://bugzilla.icculus.org). When contributing please add yourself to the above list.
A: If you don't have the time to contribute, and would like to contribute with gifts, send them to icculus.org (http://www.icculus.org/sysinfo/donations.html).

Q: Where is the latest version of this FAQ?

A: http://www.icculus.org/lgfaq/


Native Ports (return)

Q: Just who does port commercial games to Linux, anyway?

A: For some time now, a few companies have been nice enough to port their games in-house and often release binaries for free, some companies not only release native ports, but also release source! Other companies, known as porting houses exist solely to port games to Linux. Usually boxed with the hope that they can be sold at retail.

Q: Okay, what developers have ported their own games?

A: id software (http://www.idsoftware.com/) over the years has released ports (and in some cases source) for it's various titles. You can find their ports and some source available on ftp://ftp.idsoftware.com/. A number of enhanced ports are available from the game list.
A: Epic (http://www.epicgames.com/) of Unreal Tournament fame did the original work on porting Unreal Tournament, before handing off to Loki. Daniel Vogel, who worked on Unreal Tournament at Loki, now works at Epic. Epic has also hired icculus.org's own Ryan C. Gordon to work on Unreal Tournament 2003, for which a demo is available. Unreal Tournament 2003 also shipped with a Linux client, making it one of the few games to ship with a Linux version on the release cd! Unreal Tournament 2004 also has a demo available, and shipped with a Linux client (32/64bit) installer on the first disc!
A: Crack.com (whom no-longer owns that domain) released source to Abuse, currently you can find an excellent port of Abuse at: http://www.labyrinth.net.au/~trandor/abuse/
A: Mountain King Studios (http://www.mking.com/) has done a port of Raptor: Call of the Shadows.
A: Introversion Software (http://www.introversion.co.uk/) has their port of Uplink on the same cd as the Windows version, and their port of Darwinia is available as a free download.
A: Pom Pom (http://www.pompomgames.com) has done a port of their arcade-style shooter Space Tripper, and their Mutant Storm.
A: Pyrogon (http://www.pyrogon.com/) hired icculus.org's icculus, and later EonGames' David Hedbor to port their games.
A: eGenesis (http://www.egenesis.com) has ported their Massively Multiplayer game, A Tale in the Desert to Linux.
A: Bioware (http://www.bioware.com) ported Neverwinter Nights to Linux.
A: Chronic Logic (http://www.chroniclogic.com/) ported their own TripTych and Pontifex II.
A: Croteam (http://www.croteam.com/) let icculus port Serious Sam The First Encounter, and more recently, the Second Encounter. Later they even ported Serious Sam 2 and Serious Sam 3: BFE in-house.
A: S2Games (http://www.s2games.com/) ported their own Savage: The Battle for Newerth. The Linux version of which is even on the same CD-Rom as the Windows version, way to go! They also ported the upcoming sequel Savage 2: A Tortured Soul.
A: Mindware Studios (http://www.mindwarestudios.com/) ported their stealth action game Cold War; the port was subsequently published by Linux Game Publishing.

Q: Can I get a list of commercial games?

A: Sure, http://www.icculus.org/lgfaq/gamelist.php?license=commercial

Q: What about the source releases, where are they covered?

A: We try to list the good source ports for commercial games in the above URL as well.


Acquiring Commercial, Packaged Games (return)

Q: Where can I find commercial games for Linux?

A: There are many online stores where you can find commercial games, http://www.steampowered.com// for example have a wide selection of games available for download. For commercial games ported by a specific company, please see the following questions.

Q: Where can I find Linux Game Publishing's Games?

A: Linux Game Publishing maintains a reseller list: http://www.linuxgamepublishing.com/resellers.php?.

Q: Where can I get Introversion's games?

A: Introversion has an online store: http://www.introversion.co.uk/store/.


Availability of Binaries (return)

Q: Why do you keep recommending online Linux retailers for games, which are for Windows but have Linux binaries?

A: When you buy a game from an online Linux retailer, the money shows up as a Linux sale. When you buy from Electronics Boutique, the money shows up as a Windows sale. If you want more games for Linux, buy Windows games that only have binaries available from an online Linux retailer.

Q: I have Quake III Arena and/or the add-on pack, Team Arena for Windows, can I procure binaries/patches so as to play my non-Linux Quake III game in Linux?

A: You can get a Quake III installer from ftp://ftp.idsoftware.com/.
A: If you buy Team Arena from TuxGames, then you get an extra CD with the relevant binaries already included in the box.
A: Or you can go the open-source route with http://www.ioquake3.org/

Q: I have Quake 4 for Windows; can I get an installer for this?

A: Yes, there are in-depth instructions for getting Quake 4 set up on Linux at http://zerowing.idsoftware.com/linux/quake4/.

Q: I have Return to Castle Wolfenstein for Windows; can I procure binaries/patches for this game to play in Linux?

A: Yes, you can download the binaries from ftp://ftp.idsoftware.com/, or via bittorrent from http://zerowing.idsoftware.com:6969/.
A: You could also purchase a copy with the binaries included from tuxgames (http://www.tuxgames.com/).

Q: I have Wolfenstein: Enemy Territory, for Windows, can I get a Linux version?

A: Yes, since Activison chose to release the multiplayer portion of the game for free, you can get it from http://games.activision.com/games/wolfenstein/.

Q: I have Medal of Honor: Allied Assault for Windows; can I get an installer for this?

A: Yes, you can get an installer from http://www.icculus.org/~ravage/mohaa/. Please be aware that there are known bugs with the Linux binaries.
A: If you buy Medal of Honor: Allied Assault from TuxGames, then you get an extra CD with the relevant binaries already included in the box.

Q: I have Unreal Tournament for Windows; can I get an installer for this?

A: Yes, Epic hired Loki to maintain a Linux port. It is available from:
http://www.lokigames.com/products/ut/updates.php3.

Q: I have Unreal Tournament 2003, for Windows; can I get an installer for this?

A: Yes, it is on the third CD, please read the installation notes here before installing the game.

Q: I have Unreal Tournament 2004 for Windows; can I get an installer for this?

A: Yes, it is on the first DVD, and for the CD version it is on the first CD. Please read the Unreal Tournament 2003 installation notes as well, as they partially apply.

Q: I have Darwinia for Windows; can I get an installer for this?

A: Yes, you can download the installer from http://www.darwinia.co.uk/support/linux.html.

Q: I have Doom 3 for Windows; can I get an installer for this?

A: Yes, there are in-depth instructions for getting Doom 3 set up on Linux at http://zerowing.idsoftware.com/linux/doom/. As of version 1.3 of the Linux binaries the expansion - Resurrection of Evil - has been supported on Linux.

Q: I have America's Army for Windows, is there a Linux installer/download?

A: Yes, http://www.americasarmy.com/downloads/.

Q: I have Neverwinter Nights for Windows, can I get an installer for this?

A: Yes, http://icculus.org/~ravage/nwn/. This page also has installers for both expansion packs, though you will still have to manually patch up using the newer Neverwinter Nights binaries from http://nwn.bioware.com/.

Q: I have Tribes 2 for Windows, there is a Loki logo on the box, doesn't this mean it has the Linux version (or that I am entitled to it?)

A: No. The logo was there as Dynamix's way of saying thank-you to Loki, not as meaning there is any Linux client available for those who purchase the Windows copy. However there is a Linux dedicated server available for the purchasers for Windows copies on Loki's ftp (ftp://ftp.planetmirror.com/pub/lokigames/).

Q: I have X game for Windows which was/will be ported by Y porting house, can I download binaries/installers?

A: Unless specifically stated otherwise by Y porting house, no.
In most cases Y porting house has to pay Z developer for the right to port X game, and most likely royalties for each packaged copy as well. So, by releasing binaries they would be greatly losing money. Especially seeing as how bandwidth, programmers, PR, shelf-space, and looking respectable to the outside world costs lots of cash, this isn't a viable method.


Commonly Misunderstood Topics (return)

Q: What if I have a question that is not answered here?

A: First off, check that it's really not answered here. Just because your graphics card doesn't work in Unreal Tournament doesn't mean searching on this page for "Unreal Tournament" will yield the answer. If your game is throwing an error about XQueryDeviceState, have you looked at the rest of the FAQ to see if it is referenced with respect to any other game? If your joystick doesn't work in Heavy Gear 2, that doesn't mean that an answer to a question about Descent 3 won't fix it. You're using Linux. A certain degree of self-help and lateral thinking never goes amiss. If that means that you need to read the whole of this FAQ, consider everything that doesn't answer your specific Question to be a learning experience.

Q: Do these porting houses provide any support for Windows copies of games, ported or otherwise?

A: In most cases they don't provide support for Windows copies of games. Loki did however provide support for Unreal Tournament on Linux, although only Windows CDs are available for purchase.

Q: Do the id game source releases mean that it is okay to download the pak files, wads, and such?

A: No, the pak files, wads, and such are still available for purchase. The source releases and GPL'ing of the Wolfenstein 3D, Doom, Doom II, Quake, and Quake II engines does not negate purchasing a copy of the game data which contains all the art, sound and map files.

A: This goes for the 3D Realms Rise of the Triad, Duke Nukem 3D, and Shadow Warrior source code releases as well as many other games listed in the game list. If a game is in the game list and marked commercial, even though the source is available, that means that the data files still need to be legally obtained.

Q: What of other source releases?

A: The only release we are aware of which also freed the relevant art, sound, and such, is the Abuse release. You can find these data files included with a source port for Linux on the Abuse-sdl website (http://www.labyrinth.net.au/~trandor/abuse/).

Q: Since Loki is out of business, am I legally/morally allowed to distribute or use warez versions of their games?

A: Nope, don't do this. It's that simple. Warez, of any kind, is wrong.

Q: Why isn't the Half-Life client ported to Linux?

A: Sierra/Valve decides who gets to touch their code, and decided against letting anyone port the client. Besides this, if it were released as a commercial boxed game, the people releasing it would _probably_ be putting the nail in their own coffins, as the game already works at an average level in some windows emulation software.

Q: Do any of the porting houses sell Windows versions of games?

A: No.

Q: Will any of my boxed Linux games work in Windows?

A: No. With one notable exception, the Quake III tin boxes Loki sold can be made to work.

Q: Should I piss off the lead programmer by sending streams of e-mail demanding to be on the beta or I won't buy the product?

A: No.

Q: Do any of my x86 binary-only/loki_setup-ified Linux games work on ps2linux/OS X/AIX/Alpha/etc?

A: No.

Q: This site icculus does so many cool ports!

A: Perhaps you misunderstood. Icculus is a person, not all the things on icculus.org are his.

Q: I read in Ryan Gordon's .plan, or heard on IRC, or heard from holarse, that he was working on a client of ...

A: It's like christmas. If you expect not to get a client, you might get a pleasant surprise. If you expect one, then Santa Claus's shadow armies will attack you with blunt objects.

Q: So, for the sake of argument, say I've done everything described here, my machine locked up. Is there anything you recommend I do instead of just pushing the magic button, given that I don't like fscks and corrupt files and stuff?

A: First off, try hitting ctrl+alt+backspace, then ctrl+alt+del half a second later. If you hear a beep, then your machine will be rebooting shortly, and you should wander off and leave it for a while.
A: If that doesn't work, you can probably use the Magic SysRq button. Technically, you should read /usr/src/linux/Documentation/sysrq.txt, but a brief, catch-all solution is as follows: hold alt, and then hold down SysRq as well. If you don't have a SysRq key, it's the prt screen button. After that, while still holding those two keys, push "s". Then wait a moment (disk activity here is considered a good thing.) Still holding alt and SysRq, push "u". Wait a moment [disk activity here is also good]. Then push "b". Read the file named above to find out what all this is about.

Q: I heard from my Aunt Tillie that Unreal Tournament, or Pong, or Doom 3 uses a Direct X wrapper, what evil!

A: Your Aunt Tillie was wrong. No OpenGL games we are aware of, outside of any games that rely on windows emulators (wine, etc) to run use Direct X wrappers. Not Unreal Tournament 2004, not Unreal Tournament 2003, nothing native.


Non-Commercial, Free Software (at least the source code part, not necessarily the pretty data bits) (return)

Q: Where can I find freeware/GPL'd games?

A: http://www.freshmeat.net/
A: http://www.happypenguin.org/
A: http://www.linuxgames.com/
A: In our Linux game list: http://www.icculus.org/lgfaq/gamelist.php?license=free
A: Many of the library sites mentioned below list what games use their libraries.


Installation Queries (return)

Q: How do I install this .bin or .run file?

A: Try sh file.bin or sh file.run
A: If that doesn't work, you need to give it execute access and then run it: chmod +x file.bin;./file.bin
A: If you still have problems then you may have mounted the media the installer is on with the user option, which implies the noexec. That option, as you may have already guessed, implies that no files will be executable. Adjust your /etc/fstab with the exec,user options, in that order.

Q: I'm using {random loki_setup based installer}, and it's telling me the "installation doesn't support glibc-2.1" or something

A: Just type the following before running setup.sh [or the installer]: export SETUP_LIBC=glibc-2.1.

Q: I've just downloaded an installer, and when I run it, it says "/bin/sh: bad interpreter: permission denied"

A: Try re-downloading the file with a download utility. Like downloader for x: http://www.krasu.ru/soft/chuchelo/. Browsers sometimes see the installer's first couple lines of text and assume the rest is just English too.
A: Also, try running chmod +x on the file.

Q: I've just downloaded a loki_setup'ified installer, and it says "Error in MD5 checksums"!

A: Download the file again, possibly from another host, or using another program to download. This occurs when the file is corrupt.

Q: I keep getting some error about a tail when I'm trying to install something!

A: In the terminal before running the setup:
export _POSIX2_VERSION=199209

Q: What is this error I'm getting now about a trap or Updatetrap?

A: Run the setup with /bin/bash setupname.bin or setupname.run instead of /bin/sh

Q: Why can't I run this installer on amd64?

A: In the terminal, run the setup with the 32bit fake-out like so:
linux32 something.sh

Q: I'm running some distro that has a very new glibc (debian, slackware beta, red hat 9, et cetera), and it is having problems with loki_setup, what should I do?

A: You can run the setup with --keep to preserve the files. Then you can compile your own copy of loki_setup (http://www.icculus.org/loki_setup/) and replace setup and/or setup.gtk, then run setup.sh.

Q: I'm running one of the above distros, and now I'm getting some kind of error about loki_patch when I try to upgrade a game.

A: Download and use Loki Patch Fix to be able to use older patches.

Q: This installer that came with Heretic 2/Myth 2 doesn't seem to be working! ~or~ I want to play this Loki game on a different architecture!

A: Most of the time this kind of problem will pop up when the software on the CD is outdated to current developments in distributions and other software. In any case, you can download new installers for Heretic 2 and Myth 2 (and other architectures) from Loki's ftp site (ftp://ftp.planetmirror.com/pub/lokigames/).

Q: Why doesn't Unreal Tournament seem to be installing properly with the installer provided by Loki?

A: There are many different versions of Unreal Tournament, most likely, you have the wrong installer for the version you are using. The 'Best of Infogrames' and 'Totally Unreal' versions of the game aren't supported at all. While you can install using a plain Unreal Tournament retail CD (you'll note the CD is blue, as is the jewel case). Or, from a Game of The Year edition CD (red cd, red jewel case).
A: The CD that came with your creative card may work if you get /really/ heavy on it, but it's actually unlikely. It doesn't simply install & work. At the moment, you can get a pack with Unreal Tournament, Unreal, and Return to Na Pali for about 20 bucks; at least two of those will run in Linux...

Q: Unreal Tournament still won't install, can I specify the CD directory?

A: Yes, if you want to install Unreal Tournament remotely, or the installer doesn't find your CD-ROM drive properly, export the environment variable SETUP_CDROM before running the setup installer. For example:

$export SETUP_CDROM=/path/to/cdrom
$sh ut-install-436.run
			

Q: Even after specifying the CD path, Unreal Tournament still won't install, because it can't find the CD!

A: First of all, make sure the Joliet extensions are enabled in your kernel since the Unreal Tournament CD was burned using the Joliet extensions for the long filenames, and that you are using the correct installer for your CD. A quick test is to mount the Unreal Tournament CD and list the files on it. If the filenames are all 8 characters or less, and contain tildes (~), then you do not have the Joliet extensions enabled. You will need to recompile your kernel and/or modules to enable the Joliet extensions.
A: If you are running SuperMount or an auto-mounter, you may need to manually un-mount and re-mount the CD prior to pressing "Retry". You may also need to kill the associated daemons, to prevent them from confusing the CD detection.

Q: I've just bought Unreal Tournament 2003, and I can't get it to install. The installer on the third disk asks me to insert the "PLAY" disk, but no matter which disk I try, they all fail. What's wrong?

A: The Linux installer asks for the wrong disc names. This was the results of an unfortunate miscommunication right before the disc went gold. The installer will ask for "play disc", "disc 1", "disc 2". What it should ask for is "disc 1", "disc 2", "disc 3". This is obnoxious, but it is not fatal, as the text is just used in the user interface, and is not used in detecting the disc. Just put in the disc it wants, not the one it asks for. :)
A: Note that, perhaps most importantly, the other questions about the original Unreal Tournament apply. Especially with regard to joilet support. When you mount disc 3 to look for the installer, you should see linux_installer.sh, not linux_in.sh. The option you want in the kernel configuration is under "Filesystems". Enable "ISO 9660 CDROM file system support" and then "Microsoft Joliet CDROM extensions". If there is a "Rock Ridge extensions" option, enable that too.
A: Do not sit on the mount point, or you won't be able to switch discs. So if you do this (or something like it):

mount -t iso9660 -r /dev/cdrom /mnt
cd /mnt
./linux_installer.sh
			

You won't be able to unmout the disc when the installer asks for the next disc in the series, since your shell is still sitting in the mountpoint. It will work better if you do something more like this:

mount -t iso9660 -r /dev/cdrom /mnt
cd /somewhere/else
/mnt/linux_installer.sh
			

The installer copies itself to $TMPDIR before running, so it shouldn't be sitting on the mountpoint. If this still isn't working, copy the installer yourself, to make sure it is not blocking your unmount:

mount -t iso9660 -r /dev/cdrom /mnt
cp /mnt/linux_installer.sh $HOME
umount /mnt [this is making sure the disc is unmountable]
$HOME/linux_installer.sh
			

A: Are you using Mandrake? If so, you will probably need to disable supermount for your CDROM/DVDROM drive, since it appears to be interfering with the installer's ability to detect the CDROM properly. To turn it off, run drakconf, go to "Mount Points" -> DVD (or CDROM) -> Options -> uncheck supermount.
Save your changes, make sure the CDs are completely unmounted, and then try the installer again. You'll need to manually mount the cdroms, insert disk 3, run the installer, and it should work fine now.
Other distributions will need to use their way of turning off supermount, although we don't know of any others that use it by default.
A: If you get a bunch of errors to the console for each file installed, talking about different devices in your /etc/fstab, they can (usually) be ignored. If they are causing trouble, temporarily comment those lines out of fstab. (If that makes you nervous, the SETUP_CDROM environment variable described below accomplishes this better.)
A: If you have multiple CD drives, and the installer is continuously grinding the one you're not currently installing off, then tells you "mount: no media" or similar, just stuff one of the other Unreal Tournament 2003 CDs into that drive. The installer will even pick up on that and save you a disk change later.
A: If you are SURE you've got the correct disc mounted and the installer seems to disagree, export the environment SETUP_CDROM before running the installer, and you might be able to fool it (this is untested):

export SETUP_CDROM=/where/i/mounted/the/cdrom
/where/i/mounted/the/cdrom/linux_installer.sh
			

The installer doesn't care if it's really a CD, so if you get really desperate, you can copy it to your hard drive or mount an ISO on a loop back device, etc. The installer just looks for files in a directory tree to decide if the CD-ROM is mounted. If you've got multiple CD-ROM or DVD-ROM drives, mount a disc in each and export SETUP_CDROM_CD1, SETUP_CDROM_CD2, and SETUP_CDROM_CD3, and the installer will go directly to those locations for the needed files.
A: The installer will seem to install some stuff very fast, and then really slow down, taking a long time for individual files. This is normal. Files that are compressed into Epic's "uz2" format take a long time to uncompress. This is the bulk of the installer's work. This game takes a LONG time to install (you are, after all, uncompressing about 2.5 gigs worth of data).
A: Read this.
A: If none of the above works, consider e-mailing our mailing list after subscribing as described above.

Q: I see some errors when installing Unreal Tournament 2004 about announcer voice files!

A: These are harmless, they were listed twice in the installer, once with the incorrect names, once with the correct names. So they definitely get installed, unless you have more serious problems.

Q: Why can't I move or shoot in Unreal Tournament 2004 after installing the bonus pack, and the latest patch?

A: A non-working User.ini was regrettably included in the Editor's Choice Edition Bonus Pack. You should remove it from your system-wide ut2004/System directory, and then remove the local one from your ~/.ut2004/System/ directory.

Q: I can't umount a CD! It's telling me "device in use" or some such garbage?

A: You need to find out which processes have files open on the CD. Use fuser -m /mnt/cdrom or a similar command [as root] to find what processes have files open on the CD. Often times people will, as a regular user, mount the CD and change to that (the mounted cd) directory, then su to root. The shell that ran the su command is it still on the CD, so you won't be able to umount it. Until you exit the superuser shell and move the user back off the mount point.

Q: Is there any way to install the original Unreal on Linux, if I have Unreal Tournament installed?

A: Chunky has built an installer for exactly this task, which can be found on his web page here: http://icculus.org/~chunky/ut/unreal/. It is also available from tuxgames: http://www.tuxgames.com/details.cgi?gameref=87

Q: I bought Darwinia on Steam before I knew there was a Linux version. Is there any way to run it in Linux?

A: Yes. Thanks to Darwinia not using Steam for anything but content delivery, it is possible to run a copy of Darwinia from Steam on Linux. First you have to locate the content directory on Windows. This will probably be C:\Program Files\Valve\Steam\SteamApps\[account name]\Darwinia\. Then you need to download and run the Linux Darwinia installer from http://www.darwinia.co.uk/support/linux.html. Be sure to not have "copy CD data" selected in the installer. Once the binaries have been installed, copy the ".dat" files from your Steam content directory into the lib/ subdirectory of your Darwinia directory. You should now be able to launch Darwinia.
Note: Introversion Software will not support Linux users who run Darwinia from Steam in this way, due to potential compatibility issues.

Q: How do I install .umod files in Linux?

A: http://umodpack.sourceforge.net/

Q: How exactly do I install the Linux variant of Quake III when I have the windows CD?

A: First, download the point release from ftp://ftp.idsoftware.com/. Run it with something like sh q3pointrelease_131.run.
Then, simply copy pak0.pk3 off the CD into /usr/local/games/quake3/baseq3
A: If you'd like an open-source variant, there is http://www.ioquake3.org/

Q: How do I install Quake III/Return to Castle Wolfenstein modifications?

A: Simply uncompress Quake III mods into their own directory under ~/.q3a/.
A: If you want to install Quake III mods system-wide, you can uncompress them into /usr/local/games/quake3/.
A: Return to Castle Wolfenstein similarly uses ~/.wolf/ and /usr/local/games/wolfenstein/ by default.

Q: How do I install custom mods and maps for Myth 2?

A: Unzip the mod and/or map in a temporary area, then, copying only the map file, place it in your ~/.loki/myth2/plugins/. Don't put anything but your map and mod files in this directory.

Q: How do I install custom mods and maps for Unreal Tournament 2004?

A: It is a rather convoluted process to install modifications for Unreal Tournament 2004, so we will cover maps first. Unzip the map zip file to your ~/.ut2004/Maps/ directory.
A: To install modifications in plain zip files, with directories in them (unzip -l SomeMod.zip reports SomeMod/bunchoffilesetcetera):

cd ~/.ut2004
unzip /path/to/SomeMod.zip
			

A: To install modifications in the ut4mod format (unzip -l SomeMod.zip reports SomeMod.ut4mod):

unzip SomeMod.zip
cd ~/.ut2004/
su -
[insert your root password when prompted]
cd /usr/local/games/ut2004/System [change that to your Unreal Tournament 2004 path, if it isn't installed to the default]
./ucc-bin umodunpack -x /path/to/SomeMod.ut24mod
cp ~/.ut2004/SomeMod/KarmaData /usr/local/games/ut2004/KarmaData
cp -R ~/.ut2004/SomeMod /home/myusername/.ut2004/SomeMod
chown -R myusername:users /home/myusername/.ut2004/SomeMod
exit
			

If you want to list the contents of the file, rather than extract it, change the "-x" to "-l".
A: After installing either kind of modification, you then launch the mod via this command: ut2004 -mod=SomeMod where SomeMod is the same as the directory it installed to.

Q: How do I install custom mods for Darwinia?

A: Unarchive the mods into your ~/.darwinia/full/mods directory.

Q: All right, I've downloaded games now some won't compile/run, is there something I'm missing?

A: There are several popular libraries which are often required by most free Linux games, Simple DirectMedia Layer (http://www.libsdl.org/), PLIB (http://plib.sourceforge.net/), ClanLIB (http://www.clanlib.org/), OpenAL (http://www.openal.org/), and Allegro (http://alleg.sourceforge.net).
A: You might not have your XFree86 development headers. Some distributions neglect to install these by default and you will need to locate them for the exact version you are using, or replace the X version that came with your distro.

Q: I just installed some 3D game and when I click on the icon nothing happens!

A: Please run that game from the terminal. Many games install into /usr/local/bin and /usr/local/games/gamename. One or the other should get you something to run with ./gamename

Q: When compiling some game, I get something about gz_open!

A: Some Linux distributions have old versions of zlib installed as /usr/X11R6/lib/libz.a, and a newer version at:
/usr/lib/libz.a
If you find your system to have these two libz.a files, remove or move /usr/X11R6/lib/libz.a
A: You may also need to delete /usr/X11R6/include/zlib.h

Q: I'm getting an error at compile-time about gzgets even though the types all look just fine to me?

A: Some distributions and/or installs of X have a /very/ old /usr/X11R6/include/zlib.h [about 1.0.4]. Remove or move it.


Kernel Queries (return)

Q: I'm experiencing strange lockups with my nForce 2 motherboard!

A: You might try disabling, acpi, apic, and/or lapic.
A: There is a lot of documentation related to this problem available here: http://atlas.et.tudelft.nl/verwei90/nforce2/index.html
A: Newer Linux kernels have The Official Way to deal with this in them already, (2.6.6+, 2.4.26+)


Video Queries (return)

Q: What is the definitive way to know if OpenGL is working or not?

A: At a console type the following: glxinfo | grep direct if it replies with direct rendering: Yes. Then OpenGL should be working.

Q: What cards does DRI support (What Drivers should I use for my Card)?

A: To answer that, you'll have to check out http://dri.sourceforge.net/
A: You also want to avoid using DRI with an nVidia card. For nVidia cards, use the drivers from their official website at http://www.nvidia.com/.
A: If you have an ATi Radeon 8500 or any newer model there are drivers available from ATi: http:/www.ati.com/
A: If you've got a Kyro II from PowerVR, visit this page for drivers: http://www.powervr.com/Downloads.asp
A: If you're using Gentoo, you'll want to make sure you use the nVidia drivers from their portage system, so emerge nvidia-glx, and emerge nvidia-kernel. Gentoo tends to not work with the nvidia package from nvidia.com. Debian-ites can run the nvidia.com package or use their distributions package system, for varying means to the end of hopefully working drivers.

Q: Where is the friendly documentation for nVidia cards?

A: For the current drivers (8762), the README is here: ftp://download.nvidia.com/XFree86/Linux-x86/1.0-8762/README/index.html. The AMD64 README is here: ftp://download.nvidia.com/XFree86/Linux-x86_64/1.0-8762/README/index.html.

Q: I'm playing X game, and it's so small, just this little part of my screen!

A: Most likely, you don't have the default resolution for that game defined in your XF86Config/xorg.conf engage $EDITOR.

Q: Is anywhere to get a sample XF86Config to start my nVidia TwinView adventures?

A: Yes, Primer has generously created one: http://www.icculus.org/lgfaq/files/XF86Config-twinview. See his site (http://www.sh.nu/nvidia/) for more of that kind of thing.

Q: I'm using nVidia TwinView and I want to use one monitor in full screen for a game and leave the other monitor available for other apps. Is this possible?

A: Yes. The principle is pretty easy. Basically you want to run all your games in windowed mode in the same resolution as one of the monitors, presuming your hardware can support the resolution and still have a playable game. If not, there's still a way. The first way can be done like this: Start the game and select to run it in "windowed mode". Sometimes this means "full screen: no" in the game's menu. Once you see the game in a window, make your window manager remove the window dressing (This means the title bar and sides surrounding the window). Once this is done, move the window into place, and tell your window manager to "remember" where it goes. You may be scratching your head wondering how you can grab a window with no title bar! Well, as an example, let's see how this can be done using Enlightenment:
Step 1) Remove the window dressings: hold down ALT and right click the window, a menu will pop up. Go to "Set border style" and select borderless.
Step 2) Move the window: Hold down ALT and left click/drag the window into possition.
Step 3) Remember the settings: Hold down ALT and right click on the window. Select "Remember" and choose to remember the location and border style.
Voilá! Next time you start that game, it'll be right where you left it! Of course, there are some issues with all this. First, if you don't use E, you'll have to figure out how to do the above steps using your window manager. Also, some games tend to "capture" the mouse. You'll have to figure out how to release the mouse to do some of these steps. For Quake III engine games, simply drop down the console (~), and for loki games, use CTRL-g. The second way involves changing the resolution of the monitor you'll be playing the game in. Everything is the same as above, but the only difference is that you'll have to configure X to setup the resolution in question, then change to that resolution once the game starts. You can even script the resolution change by using xvidtune.

Q: I'm having problems setting up my DRI-supported card, is there anywhere I can get a sample XF86Config?

A: Yes, http://dri.sourceforge.net/res.phtml

Q: My 3DFx card doesn't seem to be working in general, I'm not sure why...

A: Are you running at 16bpp? All the Voodoo cards below the Voodoo 4 need to run in 16bpp for 3D acceleration. To change this edit your XF86Confg(-4) like so:

Section "Screen"
...
DefaultColorDepth 16
...
EndSection
			

Q: My 3DFx card doesn't seem to be working with a variety of games since I upgraded my distribution and/or my XFree86 version, why is that?

A: Most likely the problem you're having is that a variety of games (Myth 2, Unreal Tournament, et cetera) were set for use with Glide2x, which is no longer available in XFree86 4.x. Usually, you can just switch to the opengl rendering for whichever game. Instructions for doing so with Unreal Tournament can be found here.

Q: I have a DRI supported card, in some games I see slowdowns in certain areas, or corrupted graphics...

Q: I'm playing certain games and I get effects like pieces of screen not being refreshed like when you noclip outside a wall in Quake III...

A: Most likely, your problem is with multitexturing. Multitexturing can be disabled in most games, you'll have to investigate on your own to find out how for your particular game(s), however.

Q: Using DRI, I get these errors about "libGL error: failed to open DRM: Operation not permitted", what does that mean?

A: It means the permissions are wrong, simply add this section to your XF86Config(-4):

 Section "DRI"
      Mode     0666
 EndSection
			

Q: I have an nVidia card, and I'm getting an error about libGL.so not being available

A: Some distros don't include /usr/lib in /etc/ld.so.conf. This means that where nVidia put their libraries by default doesn't actually make them available. Edit /etc/ld.so.conf and make sure it has _at least_

/usr/local/lib
/usr/lib
/lib
/usr/X11R6/lib
			

in /etc/ld.so.conf, and run /sbin/ldconfig

Q: My nVidia graphics card keeps locking the entire machine up, and I have to ssh in to reboot

A: First, do you have the latest drivers?
A: Next, try disabling AGP in your BIOS, or setting it to a slower speed. If you have a VIA chipset, 4x is very unlikely to work.
A: For those running KDE, try disabling Anti-Aliased fonts. Or try commenting out the loading of the freetype support in your XF86Config.
A: You could try going back to an older version of the drivers. Counter-intuitive, but some people have more success with older ones.
A: Check your /etc/X11/XF86Config(-4). There is one included with the nVidia driver distribution. Chunky has put his up as a simple example here: http://www.icculus.org/lgfaq/XF86Config
A: [Thanks, Johan Schuring], If you're using Mandrake and you're getting errors about "extension glx not found", or if you try to run any accellerated app and it says "suitable visual not found" or something, you may need to change the line

Load "glx"
			

to read

Load "/usr/X11R6/lib/modules/extensions/libglx.so"
			

Q: I've done everything you have said, but my nVidia drivers still aren't loading properly, and although it works, it doesn't do GL at speed or anything

A: Check that you've given your NV card an IRQ (this should only be a problem for people with pci cards). If you haven't there will be a message when the nvidia module loads, but you'll probably not see it as it goes past too quicklky.

Q: I'm experiencing strange crashes in a variety of games, which nothing else seems to fix. Sometimes it is while changing resolutions...

A: First, check for updates. They may be beta, but sometimes they fix problems like this. That includes Tribes 2 on Loki's FTP mirror (ftp://david.hedbor.org/).
A: You might try doing this in a terminal before running your game (from the same terminal):
export LD_PRELOAD=/usr/lib/libGL.so
A: If your crashes are random and with Athlon hardware (as in, not always when you start a GL game, but sometime whilst you're playing) try passing the mem=nopentium option to your kernel while booting from your favourite boot loader. If that helps things out, you can add it to your /etc/lilo.conf file as append="mem=nopentium". Make sure to re-run lilo -v after adding it, this will check for problems with the lilo configuration file. Also note that this may be worked around in the latest stable kernels.

Q: The nvidia driver has really slow 2D! What can I do?

A: X makes use of Memory Type Range Register (AKA "mtrr", check out /usr/src/linux/Documentation/mtrr.txt for more info). To see if you have mtrr enabled in the kernel, do: cat /proc/mtrr. If you don't have that file, you don't have mtrr. Re-compile your kernel with this option enabled. It's in "Processor Type and Feature" in the kernel config. You want this feature. There is a known issue with version 1-0.4191 of the nvidia drivers where 2D is just slow. It is not related to mtrr. 2d performance appears to be much better with version 1.0-4349.

Q: I'm having other problems with my nVidia graphics card, is there anything else I can try?

A: Did you compile your own kernel? Do you have a VIA chipset? Make sure you compiled in support for it. There are some explicit workarounds that need to be enabled.
A: Make sure your video card has an IRQ assigned to it. This is set in the BIOS, and the option is ordinarily called "Assing IRQ to VGA". Once in Linux, lspci -v will show if your card has an IRQ. Don't rely on cat /proc/interrupts! The IRQ won't show up for your video card there unless a driver is using it, which won't be the case unless it's already setup properly.
A: Make sure nvidia has been installed and is loaded. Use lsmod | grep nvidia to see if it's loaded. If not, try loading it manually with insmod nvidia.
A: Unresolved symbols when compiling/installing nvidia. You must use the kernel source tree that compiled your kernel If you are compiling the kernel module (nvidia) from source tarball or source rpm. If you compile your own kernel, you probably have it in /usr/src/linux, and will be ok, presuming that's the tree that compiled your running kernel. If you use a kernel from a distro, make sure you have the kernel source packages installed for that particular kernel. (i.e. if you use RedHat, install the kernel-source and kernel-headers packages from the RedHat CD-ROM)

Q: Some game crashed and I can't switch back to my normal resolution using CTRL ALT +/-

A: You'll need to run xvidtune -unlock.

Q: Some game crashed and I can't seem to do anything.

A: Try the keys CTRL ALT Backspace all at once to kill your X server, if this doesn't work your best bet is to ssh in from another one of your boxes, and either reboot, or try something else.

Q: Can I use OpenGL with Myth 2?

A: With the latest patch, yes.

Q: How do I turn on OpenGL fog in Heavy Gear 2?

A: hg2 -g for the true OpenGL fogging. If your driver does not support this, you will need to start it with the vertex-fogging hack, hg2 -x.

Q: I try to start either Quake III, or Return to Castle Wolfenstein}, and I get an error about libMesaVoodooGL-something-something-something

A: Just start the respective binary with the +seta r_gldriver /usr/lib/libGL.so (if you're an nVidia user) or +seta r_gldriver /usr/X11R6/lib/libGL.so (elsewise). You should only have to do that once.

Q: How do I run Quake 4 in a widescreen mode?

A: Open ~/.quake4/q4base/Quake4Config.cfg in your favorite editor. Change the variables seta r_aspectRatio "1" to one of 0 for 4:3, 1 for 16:9, or 2 for 16:10.
Next change your custom resolution to fit the desired aspect ratio, for instance the lead editor's monitor is 16:10, so he uses: seta r_customHeight "1050"
seta r_customWidth "1680"

Finally, change r_mode to "-1". Then the game should start up in your widescreen resolution.

Q: Some OpenGL game is running really slowly...

A: Your game is probably using the wrong library for OpenGL. The instructions above for Quake III/Return to Castle Wolfenstein about libmesavoodoo-something-something-something apply here
For Unreal Tournament, edit your config file and make sure the OpenGL library points to the right one
Loki games usually take a parameter to point to the correct libGL to use. Run "game --help" to find out what it is. Check out any config files you can find stored in locations mentioned in the Game Queries section.
A: If you're running a non-nvidia card, make sure that X says "direct rendering enabled" in the log (/var/log/XFree86.0.log). If it doesn't, make sure you're loading the dri module in /etc/X11/XF86Config
A: For anything else, and what is actually the better, cleaner solution, anyway, you need to get rid of the incorrect libraries on your system. Run the command ldd sproingies [or any other trivial openGL app, eg gears], and look for which libGL is being used. If it's not the correct one [as described above], then you want to get rid of it, as it's probably not helping your cause.
A: You may be using an ATi card, for whatever reason, ATi has not yet released drivers capable of much in Linux (speed-wise, or feature-wise). Look to replace your ATi card, or continue assuring yourself that one-day, ATi will decide to spend real money on Linux. As yet the DRI drivers for ATi cards are out of date, and possibly even worse than the propietary ATi drivers.

Q: My menus in Unreal Tournament look wrong, maybe even with black boxes where th text should be, how can I fix this?

A: Some faulty OpenGL implementations cause this. You'll need to edit your ~/.loki/ut/System/UnrealTournament.ini. Look for the line in the RenderDevice sections that says UsePalette. Change the value from 1 to 0.

Q: Unreal Tournament crashes on my DRI supported card when I press ESC to bypass the opening movie.

A: You can try setting SDL_VIDEO_X11_DGAMOUSE=0 in a console before running Unreal Tournament like so:

export SDL_VIDEO_X11_DGAMOUSE=0
ut
			

Q: How do I change Unreal Tournament's renderer after installing?

A: Note: It is recommended that you use the OpenGL rederer, and not the SDLGL one. The OpenGL one continued development long after the SDLGL one ceased being worked on, and as such is both faster and more reliable.
A: Edit your ~/.loki/ut/System/UnrealTournament.ini.
A: For the SDLGL renderer:

[Engine.Engine]
GameRenderDevice=SDLGLDrv.SDLGLRenderDevice
WindowedRenderDevice=SDLGLDrv.SDLGLRenderDevice
RenderDevice=OpenGLDrv.SDLGLRenderDevice
			

A: For the OpenGL renderer:

[Engine.Engine]
GameRenderDevice=OpenGLDrv.OpenGLRenderDevice
WindowedRenderDevice=OpenGLDrv.OpenGLRenderDevice
RenderDevice=OpenGLDrv.OpenGLRenderDevice
			

A: For the Glide renderer (Voodoo 1/2/3 cards in XFree86 3):

[Engine.Engine]
GameRenderDevice=GlideDrv.GlideRenderDevice
WindowedRenderDevice=GlideDrv.GlideRenderDevice
RenderDevice=GlideDrv.GlideRenderDevice
			

A: For the Software renderer:

[Engine.Engine]
GameRenderDevice=SDLSoftDrv.SDLSoftwareRenderDevice
WindowedRenderDevice=SDLSoftDrv.SDLSoftwareRenderDevice
RenderDevice=SDLSoftDrv.SDLSoftwareRenderDevice
			

Q: Unreal Tournament 2003 (or 2004) runs very, very slowly!

A: Is your video card using AGP? Are you sure?
A: Look in your ~/.ut2003/System/UT2003.log (or ~/.ut2004/System/UT2004.log) for the line:
WARNING: Couldn't allocate AGP memory - turning off support forGL_NV_vertex_array_range
to get the definitive check for AGP.

Q: OK, I appear to not have AGP/it's still slow.

A: Try changing your AGP system from NVAGP, to AGPGART, or vice-versa. See the nVidia documentation for details.
A: The OpenGL rendering in Unreal Tournament 2003/2004 is very cpu-limited.
A: Are the quality or resolution settings too high? Unreal Tournament 2003/2004 is a very new game, with very new requirements. Most people who are used to playing older games at 1280x1024, or other, high resolutions, will note that Unreal Tournament 2003/2004 is much slower at this resolution.

Q: How do I see what frame rate I'm getting in Unreal Tournament 2003/2004?

A: Drop down the console with `(tick mark under the tilde), type stat fps.

Q: How do I take a screenshot in Unreal Tournament 2003/2004?

A: Press the F9 key.

Q: I'm getting this message in Unreal Tournament 2003/2004 about Xlib: extension "XiG-SUNDRY-NONSTANDARD" and something about a hull!

A: Don't panic, both of these messages, and the one about ALC_EXT_capture, are harmless.

Q: I have a Radeon card. Why won't Unreal Tournament 2003 run?

A: Unreal Tournament 2003 makes extensive use of Savage Texture compression (colloquially, S3TC). Since your drivers don't support S3TC, you should upgrade your drivers, the newest ones should support S3TC.
A: Xi Graphics (http://www.xig.com/), has drivers for the Radeon which support S3TC. Beware, these cost money, and none of the LGFAQ authors/editors have tested them.
A: The latest version of Unreal Tournament 2003 has a software path for dealing with S3TC. Expect it to look poor for the moment, but if the DRI developers fix it later, it should be playable on boxes with fast CPUs.

Q: I have a very old TNT or TNT2 card that I recently purchased at bargain basement prices, surely, this card will work with Unreal Tournament 2003?

A: No, your card does not support S3TC, although the nvidia drivers do. See the answers above and below, not that it matters since this card is really too slow for modern engines.

Q: Whenever I run Unreal Tournament 2003 I get the message "OpenGL renderer relies on DXTC/S3TC support." and it exits. What is this?

A: This is, again, a lack of driver support. You need S3TC in your OpenGL drivers before the game will work. Note that in a newer patch there is a software path for handling S3TC, but it will be much slower.

Q: Unreal Tournament 2003/4 exits with a message about DRI and GL_EXT_bgra or glDrawRangeElements, what does this mean?

A: If you're using the nvidia drivers, but glxinfo reports the correct information, and still getting this, you have mesa libraries laying around, and need to exterminate them. SDL looks for libGL in a different place than glxinfo. Note that Quake III does not use SDL, so it might still work, and has nothing to do with Unreal Tournament 2003/2004.

Q: Why doesn't my Unreal Engine 2 game have detailed shadows or my name on the Hellbender license plate?

A: As of patch 3369 for Unreal Tournament 2004, this functionality has been added. Expect other Unreal Engine 2 games to follow. To enable the functionality you'll need to use the latest nvidia/ati drivers and set "UseRenderTargets=True" in the "[OpenGLDrv.OpenGLRenderDevice]" section of your UT2004.ini. To get realistic shadows, you also have to set "bPlayerShadows=True" and "bBlobShadow=False" in the "[UnrealGame.UnrealPawn]" section of your User.ini.

Q: nvagp or agpgart? Which is better when using the nvidia driver?

A: This usually boils down to a question of stability. In the early days of the nvidia driver, nvagp was more stable, but sometimes slower. Also, some times nvagp didn't support a particular chipset, so it was either agpgart or nothing. Nowadays, it's commonly presumed that agpgart is a bit faster than nvagp, but nvagp is more stable. This is really something of a gamble, and depends on your hardware. Try agpgart first. If it works, great! If your box proves to be unstable with it, use nvagp. If it continues to be unstable, you may have to disable agp altogether.

Q: Why can't I use a framebuffer for my console and the nVidia driver at the same time?

A: Basically, the framebuffer console, with your happy pretty bootsplash, and small fonts and whatnot is a driver that uses your nVidia card. The X (x.org, xfree86, natx) nVidia driver is, the more obvious driver that provides you with working 3D, and some neat 2D stuff (twinview, and whatnot) also uses your card. If the two are used at once, they will both attempt to talk to your video card, and this is a conflict. The nvidia install script won't even let you install the driver if you have the framebuffer driver rivafb compiled into your kernel. You can sort-of get away with the framebuffer driver vesafb, but you are likely to run into problems later. Even the NVIDIA README says that you can't use the kernel framebuffer and the nVidia driver.

To sum it all up:
Framebuffer == driver
nVidia things == driver
Two drivers == conflict.
Conflict == war!

Disabling the kernel frame buffer involves either changing your kernel configuration (Console Drivers - Frame Buffer Support section), disabling it within your boot loader (append="video=rivafb:off" for lilo, grub users just add video=rivafb:off), or preventing the module from ever loading via your distributions documentation regarding module loading. If it is compiled as a module that is (lsmod, look for rivafbor vesafb.)

Q: How do I see my frame rate in Quake III while playing the game?

A: Drop down the console with ` and type /cg_draw fps 1.

Q: How do I see my frame rate in Return to Castle Wolfenstein while playing the game?

A: Drop down the console with ` and type /toggle cg_drawfps. Once you're tired of looking at the frame rate, use the same command to turn the fps display off again.

Q: How do I enable full screen in FreeSpace 2?

A: Edit your FreeSpace2.ini/FreeSpace2Demo.ini adding the following to the [Default] section:
Fullscreen=1

Q: How do I switch to 1024x768 in FreeSpace 2?

A: Edit your FreeSpace2.ini/FreeSpace2Demo.ini editing the following in the [Default] section:
Videocard=OpenGL (640x480)
to
Videocard=OpenGL (1024x768)

Q: How do I get a different resolution in Tribes 2, than what's in the menus?

A: Edit your ~/.loki/tribes2/base/prefs/ClientPrefs.cs. Look for: $pref::Video::resolution

Q: How do I overclock my nVidia card in Linux?

A: The nvclock utility provides that functionality. http://www.linuxhardware.org/nvclock/

Q: My desktop is at resolution YYYxZZZ, and my games are refusing to run properly in any other resolution?

A: You need to add the resolutions you want to run the game at to /etc/X11/XF86Config's screen section:

Section "Screen"
    Identifier "Screen AGP"
    Device      "GFII GTS"
    Monitor     "Chuntex"
    DefaultColorDepth 24
    Subsection "Display"
        Depth       24
        Modes       "1280x1024" "1024x768" "800x600" "640x480"
    EndSubsection
EndSection
			

Q: How do I set environment variables, so I can enable fun effects on my nVidia card?

A: export ENVVARNAME=VALUE, so, for Full Scene Anti-Aliasing you might export __GL_FSAA_MODE=4 before running your game. See the nVidia documentation for a list of options.

Q: Is there a simple, GUI method of changing nVidia options, like anti-aliasing?

A: Yes, nVidia provides for this in their GPL'd nvidia-settings (source: ftp://download.nvidia.com/XFree86/nvidia-settings/) program. It is included with the nVidia drivers, and a user-guide is also provided (ftp://download.nvidia.com/XFree86/Linux-x86/nvidia-settings-user-guide.txt .)

Q: How do I force Side-Band-Addressing and Fast-Writes to enable with the nVidia drivers?

A: First note that these options can decrease system stability. Then, if you are ready to bump up your frame rates about 0.00000002%, load the nvidia.o module with the options NVreg_EnableAGPSBA=1, and NVreg_EnableAGPFW=1 like so:
modprobe nvidia NVreg_EnableAGPSBA=1 NVreg_EnableAGPFW=1

Q: Neverwinter Nights doesn't seem to run on my non-nvidia card?

A: Gothmog of A from the BioWare forums has made a workaround patch for ATI users to try. You can download it here: http://mschoder.bei.t-online.de/nwnati.tar.gz. Note that you shouldn't require the xdelta patch with the latest client released from BioWare. Users have reported success with this patch on TNT2, Matrox 450 and Voodoo5 cards.

Q: Neverwinter Nights isn't windowed, how do I make it so?

A: Edit your nwn.ini, change FullScreen=1 to Fullscreen=0 and add a line after that: AllowWindowedMode=1. Note that despite the fact that the game will be windowed, you must have the resolution defined in your X configuration file.

Q: Darwinia screenshots taken with "p" come out black. Why?

A: This happens when you run Darwinia at the same resolution as your desktop. No known workarounds exist at present, other than changing your game or desktop resolution.


Audio Queries (return)

Q: How do I figure out what sound card/chipset(s) I have?

A: Usually this means running cat /proc/pci | less and/or cat /proc/isapnp (depending which bus your sound hardware is on).

Q: How do I get my Crystal 4232 sound card/chipset to work?

A: modprobe cs4232 io=0x534 irq=5 dma=1 dma2=0 note that, although this works for one of the authors, you may need to adjust the settings.

Q: How do I get my Sound Blaster Live to work?

A: modprobe emu10k1. Please also see http://opensource.creative.com/.

Q: I'm running Y SDL game that's using SDL for audio, is there any way I can specify my DSP?

A: Yes, export SDL_PATH_DSP=/dev/dsp. For no sound set it to /dev/null.

Q: How can I specify what driver (oss...alsa) to use with these SDL games?

A: export SDL_AUDIODRIVER=dsp, other relevant options are:

Q: How can I tell OpenAL based games what driver (oss...alsa) to use?

A: Replace driver with one of the below options echo "(define devices '(driver))" > ~/.openalrc

Q: I'm running Gnome or KDE and my audio works with some things, but rarely works with games...

A: Most likely, your desktop environment is set up to run a sound server. In the case of Gnome, it's usually esound (killall -9 esd). In KDE, it is usually artsd (killall -9 artsd). Both of these can be disabled from inside the environment. In Gnome you can disable it inside the gnomecc program. In KDE you can open KDE Control Center -> Sound -> Sound Server -> uncheck "Start aRts soundserver at KDE startup", and restart.

Q: In Unreal Tournament, I get some generally scary effects with latency & other things, even though I'm not running arts or esd.

A: Build the latest CVS of OpenAL (http://www.openal.org/), or, if that's too scary for you, follow the next answer (which will yield a lower sould quality if you've got a descent OpenAL setup):
A: [Thanks, Adam Kirchhoff] Are you using the commercial OSS drivers? There's a "feature" of the non-commercial ones and ALSA that means you may get strange effects. Unreal Tournament has a generic audio driver that should fix this for you. In the section:

[Engine.Engine]
			

of your config file, change the line

AudioDevice=ALAudio.ALAudioSubsystem
			

to say:

AudioDevice=Audio.GenericAudioSubsystem
			

Q: My Aureal sound card isn't working with x or y game, is there anywhere I can go for help/updated drivers?

A: Yes, http://aureal.sourceforge.net/
A: You might also try adding this to your ~/.openalrc: (define native-use-select #f)
A: If none of the other suggestions work, try using this hacked driver source tarball: http://www.icculus.org/lgfaq/files/q3auhack.tar.gz

Q: Uplink (with the 1.2 patch) isn't giving me any sound!

A: Upgrade to the latest version, it should be fine (and not require esd).

Q: Now Uplink's sound is choppy, what gives?

A: You'll need to renice X and Uplink. First, ps auxw | grep X to find out the proccess ID of X, then renice 10 <pid of X>. Next, ps auxw | grep uplink to find out the PID of Uplink, then renice 10 <pid of uplink>.

Q: With my Sound Blaster Live! under Red Hat 7.3 the latest Uplink patch puts out static!

A: You can probably fix this with new drivers: http://sourceforge.net/projects/emu10k1/.

Q: Unreal Tournament 2003/2004 is giving terrible sound, or none at all!

A: Try this:
echo "(define devices '(sdl))" > ~/.openalrc

Q: How do I enable Text-to-Speech in Unreal Tournament 2004?

A: Try following these instructions:

  1. install festival (http://www.cstr.ed.ac.uk/projects/festival/, gentoo users can just emerge festival)
  2. install speechd (http://www.speechio.org/speechd.html, again, gentoo users can just emerge speechd)
  3. Make speechd run.
  4. Edit your ~/.ut2004demo/System/UT2004.ini, look for the [SDLDrv.SDLClient] section, and add TextToSpeechFile=/dev/speech.
  5. Run Unreal Tournament 2004.
  6. Enable TTS via the in-game options.
  7. ???
  8. Profit!!

Q: Text-to-Speech is making Unreal Tournament 2004 hang at start!

A: Either speechd isn't running, or your /etc/hosts has 127.0.0.1 pointing at your hostname and not localhost. 127.0.0.1 should only point to localhost.

Q: How do I enable Voice over IP in Unreal Tournament 2004?

A: With ALSA, create a ~/.openalrc, and then follow these instructions:

You may need to tweak the in and out device lines some for your specific setup, on a Live! Value with a surround setup you might use (define alsa-out-device "surround40:0,0") and (define alsa-in-device "hw:0,0").

Q: Quake engine games exit, and I see an error about mmap!

A: Your sound card/chipset + driver combination doesn't support this needed feature. However, if you use KDE/arts you may be able to bypass this with the -m switch to the artsdsp wrapper.
A: Or switch to the open-source Quake III port here at icculus.org: http://www.ioquake3.org/

Q: How do I disable sound in Quake III?

A: quake3 +s_initsound 0

Q: I get no sound in Quake III, and I'm using ALSA!

A: echo "quake3.x86 0 0 direct" > /proc/asound/card0/pcm0p/oss
A: Note that this also works for any other game that doesn't support ALSA and needs mmap'd audio, just change the binary name (quake3.x86 with, for instance, et.x86, for Enemy Territory.)
A: Or switch to the open-source Quake III port here at icculus.org: http://www.ioquake3.org/

Q: Is EAX, or any other proprietary 3D sound stuff supported in Linux?

A: No. Nobody has picked up the ball on getting EAX supported. Neither ALSA, nor OSS (free or otherwise), support EAX or any other proprietary 3D sound stuff.

Q: Is there anything like {Roger Wilco, BattleCom, That nasty MS thing} for Linux?

A: There's a new teamspeak linux client out at http://www.teamspeak.org/
A: Yes, But unfortunately you'll have to convince your windows-using friends to use the same software; none of the above are cross-platform. All the programs here are, though.
OpenPhone/ophone (http://www.openphone.org/)
Robust Audio Tool, AKA rat (http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/)
Speak Freely for windows (http://www.speakfreely.org/), and it's Unix counterpart (http://www.fourmilab.ch/speakfree/unix/)
www.Voxilla.com; a site for the very much more enthused among you


Input Queries (return)

Q: How do I enable the gameport on my es1370?

A: Either modprobe the module with the joystick=1 option, or select the tick box for joystick loading in the kernel configuration. Note that in the latest kernel series (2.6.0) you don't need to specify the option. It should just work.

Q: How do I enable the gameport on my es1371?

A: Modprobe the module with joystick=0x200, where 0x200 is the address of the gameport. Legal values are: 0x200, 0x208, 0x210, and 0x218.

Q: How do convince the analog driver that I've got a gameport joystick not a USB one?

A: Pass the analog module the "js=gameport" option.

Q: My joystick works, but is uncalibrated/etc

A: You need to use the program "jscal" to calibrate it. If you don't already have it installed, you need to get the CVS of it. If it asks for a password, just hit enter. Simply:

export CVSROOT=:pserver:anonymous@cvs1.sourceforge.net:/cvsroot/linuxconsole
cvs login
cvs -z3 co ruby
cd ruby/utils
make
			

If that is more complex than you would like, there are some binaries available: http://www.icculus.org/lgfaq/files/jsutils.tar.gz, but they haven't been tested.
That done, you need to "jscal /dev/js0". Do what it says and you should have your joystick configured properly.

Q: Everything else on my joystick works, but the hat seems strange; when I push the hat up, it's up. When I push the hat down, it does nothing. When it's centered, it's down.

A: The hat's strange behaviour is caused by it being an axis, not four buttons. You can calibrate it as above (recommended), or for the brave, you can modify your kernel as described in http://www.icculus.org/lgfaq/coolie.txt to change the hat's behaviour so it seems like 4 buttons

Q: In Descent 3, the hat doesn't do anything at all.

A: That's because you're trying to use the hat in a button-like way, make sure that you're altering the "Move up or Down Axis", and not trying to alter the "Move up" as pushing up, and "Move down" as pushing down.

Q: Does this PlayStation Gameport to USB adapter from Radio Shack work in Linux?

A: Yes. Except it doesn't work with PyDance, so you can't dance your heart out without soldering the mat's circuits to change their layout (as far as what type of signal they send).

Q: How do I make my USB joystick do stuff?

A: Have you modprobed hid?

Q: How do I use a different joystick in FreeSpace 2

A: Edit your FreeSpace2.ini/FreeSpace2Demo.ini adding the following to the [Default] section:
CurrentJoystick=1
Where 1 is the number of the joystick device (same as js0/1/2/3...).

Q: Is there any way to use the Gravis "Grip" Multiport (4-way gameport)?

A: Sure is, http://members.cox.net/bonnlander/

Q: Is there any Force Feedback support in Linux?

A: http://user.it.uu.se/~johannd/projects/ff/ is a page that offers support for a number of devices.

Q: I see an option in Unreal Tournament 2003 for Force Feedback...

A: Sorry, no. That's only there to maintain network compatability with the versions for other platforms. All (most?) Unreal Tournament 2003 files are checksummed.

Q: My mouse has a wheel, but it's not working, what's up with that?

A: Make sure you're using the proper protocol for your mouse, most of the new optical mice use the "IMPS/2" protocol. As defined by your xorg.conf's InputDevice section. The instructions for the next answer won't work if the proper protocol isn't being used.
A: If you're using XFree86 version 4.x, or X.Org at all, put this in your /etc/X11/xorg.conf (or XF86Config):

Section "InputDevice"
...
Option      "Buttons"     "5"
Option      "ZAxisMapping" "4 5"
...
EndSection
			

Q: I have this fancy 5 button Microsoft Intellimouse and I'd like to use the side buttons in games. How?

A: It's pretty simple. Change your mouse configuration section in XF86Config or xorg.conf to look something like this:

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option "Buttons"      "7"
    Option "Protocol"     "ExplorerPS/2"
    Option "Device"       "/dev/input/mice"
    Option "Resolution"   "300"
    Option "ZAxisMapping" "6 7"
EndSection
			

Modify the above according to your hardware. For example, if you have a PS/2 mouse, use device /dev/psaux. You'll also need to add a command at X startup to make sure the mouse wheel still works as before: xmodmap -e "pointer = 1 2 3 6 7 4 5" (if you start X from the command line and use an ~/.xinitrc file, put that line in there) or add the following line to /etc/X11/Xmodmap (this might be a RedHat default location...YMMV):"pointer = 1 2 3 6 7 4 5"
Quake III and Return to Castle Wolfenstein make use of these buttons thanks to TTimo taking the time to heed requests (read "nags") from the Linux community. Thanks TTimo! For other games, try clicking the button, and see if it works. Or bug the developer!

Q: A game crashed and now I can't move my mouse pointer any more, how can I get it back?

A: The simplest way to get the mouse back after it has been grabbed by an application which has subsequently crashed is to use the umouse utility, available from http://icculus.org/lgfaq/files/umouse (source with compilation instructions is available at http://icculus.org/misc/umouse.c if the binary doesn't work or you don't trust us). Running the "umouse" binary should release the pointer back into your control.


Game Queries (return)

Q: Where do Linux Game Publishing products store their configuration files, save games, screen shots, and what not?

A: ~/.lgp/gamename

Q: Where do Loki products store their configuration files, save games, screen shots, and what not?

A: ~/.loki/gamename/

Q: Where do Tribsoft products store their configuration files, save games, screen shots, and what not?

A: ~/.tribsoft/gamename/

Q: Where do Hyperion products store their configuration files, save games, screen shots, and what not?

A: ~/.hyperion/gamename/

Q: Where do Pyrogon products store their configuration files, save games, screen shots, and what not?

A: ~/.pyrogon/

Q: Where does Quake III Arena store its configuration files, save games, screen shots, and what not?

A: ~/.q3a/

Q: Where does Return to Castle Wolfenstein store its configuration files, save games, screen shots, dead zombies, and what not?

A: ~/.wolf/

Q: Where does Wolfenstein: Enemy Territory store its configuration files, save games, screen shots, dead nazis, and what not?

A: ~/.etwolf/

Q: Where does icculus.org/quake2 store its configuration files, save games, screen shots, and what not?

A: ~/.quake2/

Q: Where does icculus.org/avp store its configuration files, save games, screen shots, and what not?

A: ~/.avp/

Q: Where does Uplink store its configuration files, save games, and what not?

A: ~/.uplink/

Q: Where does Darwinia save its configuration files, save games, and what not?

A: In the demo, ~/.darwinia/demo/.
A: In the full game, ~/.darwinia/full/.

Q: Where does Unreal Tournament 2003 store its configuration files, save games, and what not?

A: ~/.ut2003/

Q: Where is the Unreal Tournament 2003 mailing list?

A: You can subscribe to the mailing list via this address: ut2003-subscribe@icculus.org and the archives which you should read before posting are here: http://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?25.

Q: Where does Unreal Tournament 2004 store its configuration files, save games, and what not?

A: ~/.ut2004/

Q: Where is the Unreal Tournament 2004 mailing list?

A: You can subscribe to the mailing list via this address: ut2004-subscribe@icculus.org, and the archives which you should read before posting are here: http://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?42.

Q: Where does Orbital Eunuchs Sniper store its configuration files?

A: ~/.oes/

Q: Where does America's Army store its configuration files?

A: ~/.armyops230/

Q: I'm having various problems with X game!

A: Have you patched up yet? Most of the time, patches will fix the problem. Loki in particular has even made it very easy to patch their ports using the Loki Update (http://updates.lokigames.com/) tool.
A: If patching up doesn't solve your problem, have you tried updating your drivers?
A: Try checking your memory and filing systems. We recommend memtest86+, available at http://www.memtest.org.
A: Have you properly set up your video drivers?
A: If nothing else works, please read the rest of this FAQ, and some of the external resources before bugging any of the support available for whichever closed or open product you are trying to play. Generally, you aren't the only one with a problem.

Q: Are there any enhancements that are generally applied to Linux games?

A: Yes, most Loki games for instance usually have several key bindings added such as:
alt+enter will usually switch between full screen and windowed modes.
ctrl+g will usually grab/ungrab the mouse and keyboard.
A: Note that in Quake III, and Return to Castle Wolfenstein, alt+enter works but it reconnects you to the server. Also, bring down your console with the tilde key, to 'release' the mouse.

Q: I have played through the first level in Postal Plus, killing everything that moves, now what?

A: Press F1 to end Postal levels once you have completed them.

Q: I've got the game Uplink, and it refuses to run due to some dynamic libraries not being found (or I get "undefined symbol: __glutRoot")!

A: This is solved in the latest full-game patch, which uses SDL rather than GLUT. Get it from http://www.uplink.co.uk/.
A: If you have the demo, you can't patch, so download http://www.icculus.org/lgfaq/files/libglut.so.3.7.bz2 and replace your system copy (if you have one) with this one (after bunzip2'ing it). If you don't already have glut installed, put it in /usr/X11R6/lib. Questionable instructions are available on introversion's site: http://www.introversion.co.uk/uplink/slackware.txt
A: If you already have libglut installed and you're getting this error undefined symbol: XQueryDeviceState you could run Uplink using the following script:

#!/bin/sh
LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
LD_PRELOAD=/usr/X11R6/lib/libXmu.so.6:/usr/X11R6/lib/libXi.so.6:$LD_PRELOAD
export LD_PRELOAD LD_LIBRARY_PATH
exec ./uplink $*
			

A: If you are missing a libstdc++-libc6.2-2.so.3, but have libstdc++-libc6.1-1.so.2, you can use a symlink to fix it like so:
ln -s libstdc++-libc6.1-1.so.2 libstdc++-libc6.2-2.so.3. Then run ldconfig.
A: To find out what you are missing for Uplink, grab UPX (http://upx.sourceforge.net/ and decompress the binary using upx -d uplink, then ldd uplink.

Q: I try to use themes with Uplink but they don't work!

A: As an example, get http://www.introversion.co.uk/uplink/downloads/darkaurax.zip, put it in your Uplink directory, unzip, and you won't be able to see it. However, if we symlink it to a graphics/ directory, it will be the default theme, since it overrides graphics.dat. To recap:

wget http://www.introversion.co.uk/uplink/downloads/darkaurax.zip
unzip darkaurax.zip
mv Dark\ Aura-X/ DarkAura
ln -s DarkAura graphics
./uplink
			

Q: Terminus won't start, no matter what I try to do.

A: Do you have more than 2 GB of virtual memory [core plus swap together]? If so, you need to reduce the level of either one, or the other, until you're under 2 GB total. An easy way to do this is to give your kernel the parameter "mem=XXXM" at boot time, so that XXX plus your swap comes to less than 2 GB.

Q: Do most Quake III/Return to Castle Wolfenstein modifications work in Linux?

A: Yes, most Quake III/Return to Castle Wolfenstein modifications work in Linux as long as they are compiled to the Quake III/Return to Castle Wolfenstein VM bytecode as advised by id Software. Quake III/Return to Castle Wolfenstein modifications compiled to Windows library files will not work.

Q: Why does this Quake III/Doom 3 engine game exit and complain about a "default.cfg" thingy?.

A: Your Quake 3 engine or Doom 3 engine game can't find the pak files it needs. You need to copy them from the installation media to the destination directory as was described in the readme.

Q: How do I run Quake III/Return to Castle Wolfenstein modifications?

A: With the latest point release you can either use the menus, or, like so for Quake III:
quake3 +set fs_game baseq3
Replace baseq3 with the directory name of the modification you are running.
For Return to Castle Wolfenstein Single Player modifications:
wolfsp +set fs_game main
For Return to Castle Wolfenstein Multi Player modifications:
wolfmp +set fs_game main
In both cases, you will need to replace main with the directory name of the modifications you are running.

Q: Navy Seals Quake III/Q3F/XYZ Quake III mod keeps exiting with errors about mallocs and heaps when I try to connect to a server!

A: If you have enough RAM to do it, set up Quake III to use more like so: quake3 +set com_hunkmegs 180 +set com_zonemegs 32 +set com_soundmegs 16 +set fs_game baseq3. Replace baseq3 with the name of the mod (q3f2, seals...) you're trying to run.

Q: icculus.org/quake2 just exits with Error: Missing Particle Picture: particles/beam.jpg

A: Compile with Q2MAX=0 in the Makefile
A: Download the missing pak file here: http://icculus.org/quake2/files/maxpak.pak, place it in either ~/.quake2/baseq2, or /usr/local/games/quake2/baseq2.

Q: Unreal Tournament appears to have installed properly, but the game keeps complaining about a missing 'Entry' and exiting!

A: Under some circumstances (such as using an unsupported CD), the maps are not uncompressed during the installation. The opening screen of Unreal Tournament is actually a map, called "Entry", which should be named usr/local/games/ut/Maps/Entry.unr. If this file is missing, the installation was not successful and you should make sure that you are using the correct installer for your CD. If the file is present but is named Entry.unr.uz, it is still compressed. Since the maps were not shipped on the retail Unreal Tournament CD in a compressed format, you are either trying to use a GotY (Game of the Year) CD (or one of the other, unsupported, Unreal Tournament releases) with the regular installer, or the uncompression step failed. If you have a number of .uz files in your /usr/local/games/ut/Maps/ directory, you will need to uncompress them after the installation. A description for doing so follows:

#!/bin/sh
# FILENAME: convert.sh
#
# Change this to YOUR install-dir of Unreal Tournament
#
INSTALLDIR=/usr/local/games/ut

cd $INSTALLDIR/System

for i in ../Maps/*.unr.uz
do
  ucc decompress $i -nohomedir
done

mv *.unr ../Maps

cd ../Maps
for f in *.unr
do
  rm $f.uz
done

echo "..:: Done! ::.."
			

Q: I try to run Unreal Tournament and it always exits with a SIGIOT

A: If the SIGIOT occurs shortly after a line indicating an fread error, the UT data files did not install correctly. If you have one available, please try installing from a different CD-ROM drive. Not all drives can correctly handle the copy protection on the CD. You should also check the md5sums of your CD against one of the lists at http://www.icculus.org/lgfaq/md5sums/. If the md5sums do not match, your drive is not reading the CD correctly. (ut-cd1.txt is for the original Unreal Tournament retail release, ut-goty-cd1.txt and ut-goty-cd2.txt are for the CDs of the Game of the Year edition.)
A: If the SIGIOT occurs after an audio initilization, or if you upgraded Unreal Tournament from a previous installation, you will need to rename your ~/.loki/ut/System/UnrealTournament.ini (if you want to carry over any customizations) and allow Unreal Tournament to re-create its own default UnrealTournament.ini.
A: DMA on your CD drive may be causing issues. Try turning it off with hdparm(1)
A: If you are installing using a GotY (Game of the Year) CD, make sure you are using the correct installer. The retail release (blue CD/jewel case) uses ut-install-436.run.

Q: I'm editing /usr/local/games/ut/System/UnrealTournament.ini for Unreal Tournament (or /usr/local/games/rune/System/*.ini for Rune), and nothing's changing

A: That's because after the first run, the config files have been copied to ~/.loki/ut/System/ (or ~/.loki/rune/System), and it now is using that for all config things. Edit it in there instead. The author humbly recommends you also backup the one in /usr/local/games/{ut,rune}/System, and overwrite it with the one from your home dir, for if any other users decide to use your machine and want an already properly set up config.

Q: I'm using an AMD K6 processor, and Unreal Tournament 2003 is bombing out!

A: The K6 line lacks instructions needed for the physics code. You'll need to use a different CPU.

Q: I've got this patch for the Unreal Tournament 2003 demo, but I can't get it to apply?

A: The update must be run as the user who installed the demo.
A: There is an addon patch for the 1080b patch for Unreal Tournament 2003 demo. Make sure you have 1080b applied before trying to apply the 1080c patch.
A: Unreal Tournament 2003 demo had a patch released for it, 1080. This patch had a number of issues, the least of which was being dynamically linked against libxdelta and libxml, which may not be included with all distributions. It was pulled, and 1080b released in its stead. 1080b was missing the updated Package.md5 which described the proper md5sums of the data files the client should have to be able to play on a server. 1080c was released as an Addon to 1080b.
A: If you're sure you've applied 1080b and still can't get 1080c to apply, try deleting your installation and using the auto-updater included with the demo (/path/to/ut2003_demo/updater/update). This will attempt to download the patches and install them for you.

Q: How do I change the localization for Unreal Tournament 2003?

A: Edit your ~/.ut2003/System/UT2003.ini looking for Language=int in the [Engine.Engine] section. Change it to Language=det for German.

Q: When I'm playing Unreal 1, I can't use weapon priorities, or automatically switch weapons.

A: Open your user.ini and look for:

[Engine.Pawn]
bNeverSwitchOnPickup=True
			

change the True bit to False.
You also might want to change this:

[Engine.PlayerPawn]
bNeverAutoSwitch=True
			

Q: Why does PunkBuster anti-cheat software take forever to update?

A: The creators of the PunkBuster software, Even Balance, for whatever reason, decided to make their software "sleep" while updating, for minutes at a time. This would seem to be a waste of your time, so a user by the nick of "zinx" has created a work-around to go with the PunkBuster command-line updater.

A: So, you'll want to update the PunkBuster software per-game via the command-line before you run them using the work-around. The following example is for America's Army version 2.3.0, however it will work for any PunkBuster-enabled game, as long as you change the pb directory you access.

cd ~/.armyops230/System/pb
wget http://www.icculus.org/lgfaq/files/pbweb_fix.c
wget http://www.evenbalance.com/downloads/pbweb.x86
chmod +x pbweb.x86
gcc -shared -o pbweb_fix.so pbweb_fix.c -ldl
(gcc -shared -o pbweb_fix.so pbweb_fix.c -ldl -m32 if you're on AMD64)
LD_PRELOAD=./pbweb_fix.so ./pbweb.x86
			

Q: A new, official Windows patch came out for Tribes 2, I'm going to ....

A: Don't, we have a Linux version available via loki_update, and loki's ftp (ftp://ftp.planetmirror.com/pub/lokigames/).

Q: My copy of FAKK 2 is always crashing on early levels, specifically when I talk to the scooter-guy or the first room with the face-guys.

A: There are two ways of getting around this: disable sound for that part of the level by running the game with the "./fakk2 -nosound", or by trying Chunky's experimental patch from http://icculus.org/~chunky/fakk2/.

Q: Krilo crashes on entering passwords, it segfaults randomly, certain levels seem unbeatable, etc...

A: Install Krilo, via your chosen method [rpm, rpm2targz]. Update, via similar. Now: Make sure that /usr/lib/krilo/levels.pak has been overwritten with /usr/lib/krilo/levels2.pak. If you've started Krilo before as a user, rm -f ~/.krilo/levels.pak. Edit the shell script that runs krilo to include:

#!/bin/sh
cd /usr/lib/krilo
LD_LIBRARY_PATH=/usr/lib/krilo:$LD_LIBRARY_PATH ./krilo2.prog
			

Q: I'm trying to connect to a password-protected Unreal Tournament server, and it's being weird

A: You need to remove the stored password from your ini file in ~/.loki/ut/System/UnrealTournament.ini before you'll be able to reconnect.

Q: Rune crashes when I try to save the game, why?

A: This is due to having a hostname that doesn't resolve. Put it into /etc/hosts.

Q: How do I build a highway on-ramp in SimCity 3000 Unlimited?

A: You need to be sure that there are five straight unobstructed road tiles, and a stretch of highway. Somewhat difficult to understand, but once you do it you should be alright for future attempts.

Q: In SimCity 3000, when I first start the game, I can hear the music for the intro movie, but can't actually see anything on-screen.

A: Some people find that running the dynamic executable fixes this.
A: Failing that, try this: export SDL_VIDEO_YUV_HWACCEL=0

Q: How do I turn SMP on in these games?

A: Most games don't require you to do anything; Tribes 2 and Unreal Tournament 2003 ALWAYS run sound in a different thread, so if your kernel supports it, you'll gain an SMP advantage wihtout doing anything.
A: Quake III requires you to run a different binary (quake3-smp) since version 1.32b. Note that you probably won't see much of a speed up on modern SMP hardware, it may even be slower. See CHANGES-1.32.txt for more information.

Q: I want to have my games output ascii art, or something else, instead of the regular video modes.

A: AALib (http://aa-project.sf.net/) is the standard library for displaying graphics with letters, numbers, and other characters, rather than regular pictures.
A: libcaca (http://sam.zoy.org/projects/libcaca/) is another option, but with a focus on color matching instead of shape matching.
A: AA UT (http://icculus.org/~chunky/aaut/)
A: TTY Quake (http://webpages.mr.net/bobz/ttyquake/)
A: AA Quake2 (http://www.jfedor.org/aaquake2/)
A: Alternatively, there's AcidUT (http://icculus.org/~chunky/ut/AcidUT.tar.bz2)

Q: I'm trying to play Soul Ride/Virtual Jay Peak and the game keeps exiting after complaining about libstdc!

A: You might try opening the "soulride" binary in your favourite editor and changing the reference to libstdc to a version of it that you actually have.

Q: How do I change the controls in Xmame?

A: Press TAB whilst running the program, you can change a number of settings in addition to the controls.

Q: Descent 3 doesn't work on my 2.6 kernel, how can I fix it?

A: su - to root, cd to your Descent 3 directory (/usr/local/games/descent3, usually). Then ln -s ppics.hog PPics.Hog

Q: I get segmentation faults when trying to use a custom map on Heroes of Might and Magic III! How can I fix this?

A: Download and run H3MapFix to fix this problem.

Q: Loki's Kohan port doesn't work! How can I make it work?

A: Download and run the Kohan library patch to fix this problem.

Q: Kingpin's saying it can't open /etc/kingpin.conf, and telling me that I don't have an OpenGL graphics card, but I do. Why?

A: Kingpin needs the file "/etc/kingpin.conf" to be in place. To fix this, run "ln -s /path/you/installed/kingpin/kingpin.conf /etc/" as root.

Q: Kingpin's complaining about a missing pics/colormap.pcx, how do I fix this?

A: Make a new directory called "pics" in your "kingpin/main" directory, and copy "kprad/colormap.pcx" from the Kingpin CD in to it.

Q: Kingpin prints a load of OpenGL extension information to the console, then crashes. What's going on?

A: Check to see if you have a file called "pak0.pak" in your "kingpin/main" directory. If you don't, get unshield from http://synce.sourceforge.net/synce/unshield.php, mount your Kingpin CD, and run:

unshield -L -g "Program Executable Files" x /path/to/cdrom/kingpin/data1.hdr
cp program_executable_files/main/* /path/to/kingpin/main/
			

Q: Gish crashes when I try to run it, saying something about "undefined symbol: alutInit". How do I fix this?

A: Make sure that you have libalut.so.0, which will likely be in /usr/lib or /usr/local/lib. You may need to install a new package for this - for example, in Debian and Ubuntu it's libalut0, and in Gentoo it's freealut.
A: When you have found libalut.so.0, run Gish as so:

cd /path/to/gish/
LD_PRELOAD=/path/to/libalut.so.0 ./gish
			

Q: Unreal Tournament and/or Rune runs WAY TOO FAST! How can I fix this?

A: For UT: Download this launch script and replace the script in /usr/local/games/ut (or wherever you installed UT) with this script.
A: For Rune: Download this launch script and replace the script in /usr/local/games/rune (or wherever you installed Rune) with this script.

Q: How can I view the movies included in Quake 4: Special Edition?

A: Download the bink video commandline player for Linux and then run:

BinkPlayer -p /path/to/file.exe

For instance:

BinkPlayer -p /mnt/cdrom/Movies/making_of.exe

Remember to add -p, it can be sluggish without it.

Q: Airline Tycoon Deluxe crashes/hangs X after showing the first screen, is this normal?

A: You can find the reason for this behaviour in the game CD's README file, so check it out. To fix the problem mentioned (and other, undocumented ones) download this archive, uncompress it as root in /usr/local/games/ATDeluxe (or wherever you installed ATD). The original ATDeluxe script must be replaced with the one provided by the archive!

Q: How do I run Airline Tycoon Deluxe in a window/without the in-game movies?

A: Go to /path/to/ATDeluxe and edit the ATDeluxe file so that the last line looks like this:

./AT.x $@
			
You can then use ATDeluxe /window to run ATD in a windowed mode or ATDeluxe /nomovie to skip all the in-game movies. Note that if you're using the archive from the previous answer to avoid the crashes, you don't need to edit anything.

Q: I've got the deluxe version of Neverwinter Nights with some premium modules included. How can I make them run?

A: Download our installer and run it (sh nwn_deluxe-modinstaller) then follow the on-screen instructions. The installation sadly requires wine, but the game afterwards does of course not.

Q: Erics ultimate solitaire doesn't work! How can I make it work?

A: Download and run the EUS library patch to fix this problem.

Q: I hear Cyberlore made some downloadable quests for Majesty available for the Windows version of the game over at their website. Any chance I can make them work with the Linux port from LGP?

A: The lgfaq team have converted both quests to Linux and obtained Cyberlore's and LGP's approval to make them publicly available. You can manually install the quest Wrath of Krolm for Majesty and Balance of Twilight for The Northern Expansion (READMEs included).
A: Linux Game Publishing updated Majesty to version 1.4.01. This update only consists of those two levels and is best installed through lgp_update.

Q: Mindware Studios' Cold War crashes when I try to launch it, displaying an error code that doesn't really suggest what's wrong. Might this be my graphics card doesn't support some of the required OpenGL features?

A: Most probably not, there is an annoying bug that somehow worked its way into the Cold War release which causes the game to crash unless all language packs have been installed. Reinstall Cold War with all language packs and try launching it again.
A: The new 1.0.1 patch from LGP fixes this issue, use lgp_update as the user who installed Cold War to download and apply it.

Q: Help! I'm addicted to Andrew Henderson's Sid Meier's Alpha Centauri, what can I do?

A: I'm afraid the prognosis is fatal.


Benchmarking Queries (return)

Q: Hey, I want to get some way to index how my system performs, stacks up, etc?

A: Several games available today offer a way to benchmark themselves. Quake III is often used for this purpose these days, and several other games and specialised tools offer different tests.

Q: Okay, so how do I go about it? What can I use, and how?

A: Okay, depends what you're benchmarking, there are a good many tools around, but we'll focus on the ones that matter to gaming.

Q: So. About benchmarking Quake III Arena?

A: As of this writing, Quake III Arena is at version 1.32. ID Software didn't include a new demo that was fully compatible with their updated network code. However, the one from version 1.30 works perfectly fine, and exists even if you've patched to version 1.32.
To use it, cd into /tmp, and run unzip /path/to/quake3/baseq3/pak6.pk3 demos/four.dm_66. This will give you a directory in /tmp, called /tmp/demos containing four.dm_66. Create either a demos directory in your global game data directory (usually /usr/local/games/quake3/baseq3/), where pak6.pk3 is kept, or in ~/.q3a/baseq3/. Copy the file into there, and then rename it to four.dm_67.
Start Quake III, and bring down the console (using the key below the tilde ` key), and type:
timedemo 1
demo four

Quake III will then load the demo, and perform a benchmark. The results are displayed in the console. Note that selecting the demo from the demos menu will ditch you back to the menu screen.

Q: Bah! Quake III is old! Surely there's something that'll work my hardware harder than that!

A: Yes. There are a number of other programs, and some will postulate that Quake III isn't actually a usable Benchmark. That said it can be used as a way to index systems, but it's by no means something that is valuable completely on it's own.

Q: Okay, so what about Unreal Tournament 2003? I love that game, and it's got lots of pretty stuff in it I'm sure my machine had to work hard to do!

A: Unreal Tournament 2003's demo can be used for benchmarking, yes.
A: To benchmark using Unreal Tournament 2003, you need a copy of the demo. The demo contains benchmarking utilities of its own, and quite sophisticated results can be derived from them.
To benchmark, make sure you have version 1080c of the Unreal Tournament 2003 demo, and go into the directory you installed the base demo in. Contained in there is a Benchmark directory, and several shell scripts.
The scripts all run a different benchmark, and they're all executed at the resolution and detail settings for your particular system, but they'll be devoid of sound. Furthermore, the botmatch benchmarks can be cpu-dependent, the bots may do things differently on faster and slower cpus, so these aren't really a comparitive benchmark.
The results end up in your home directory ~/.ut2003/Benchmarks/Results/, in a datestamped file, along with complete frame-by-frame CSV text-dumps in ~/.ut2003/Benchmarks/CSVs/.
An atypical run from one of the authors system on flyby-asbestos.sh at 1024x768 full detail looks like this:

UT2003 Build UT2003_Build_[2002-09-16_05.17]
No OS
AuthenticAMD PentiumPro-class processor @ 757 MHz
No Video

dm-asbestos?game=engine.gameinfo exec=../Benchmark/Stuff/flybyexec.txt 
-benchmark -seconds=71 -nosound

14.660646 / 51.439404 / 97.774536 fps         rand[703095388]
Score = 51.466518
			

As you can see, this particular author need a new cpu :). Keep in mind that since it's using -nosound, the results will be much faster than with sound (about 30-40% of cpu time is taken up by the sound thread), and bot code adds even more on top of that.
A: A Simple benchmark can be achieved with stat fps typed into the console of Unreal Tournament 2003 while gaming, which contains a last second and average FPS score. stat render and stat net also work as well.

Q: What about Unreal Tournament. I have that too!

A: Unreal Tournament also had a way to benchmark its performance, similar to the way stat fps works in Unreal Tournament 2003. Bring down the console while playing, and type timedemo 1.
A: What about a standard benchmark? Well, so far as it goes, once you've typed timedemo 1, you can then open the demo intro map, where you fly through the city towards the liandri building. Type open CityIntro.

Q: Will stat fps work elsewhere, too?

A: You bet, it should work in any unreal engine game.

Q: Can I use X2: The Threat as a benchmark?

A: Sure, just check the 'Run as Benchmark' checkbox in the startup dialog and don't forget to set the graphic resolution and level of details accordingly. The game will run a benchmark and save its results to ~/lgp/x2/xperf.txt.

Q: Hey!? The performance under game XYZ is faster/slower than the same game under Windows! It sucks/rules! I'm going to brag/badmouth about the one I don't like!

A: Wow, what a conclusive test! You're bound to totally convince anyone you talk to! Perhaps you should visit http://www.timedoctor.org/, they need people like you!
A: Okay, so what have you proved, exactly? That windows and linux aren't the same? That's really all you can say, since you really are comparing apples to oranges. The two systems were designed with completely different goals in mind, which just happen to intersect at a lot of points.
A: Bragging tends to be offputting, and so does badmouthing.
A: Perhaps you should read this: http://www.specbench.org/gpc/opc.static/viewperf.html. Benchmarks are often meaningless in a comparitive sense

Q: So. What other tools, non-gaming, are there that I can check?

A: The simple tests in life are often the best. Running /sbin/hdparm -Tt /dev/hda will test the IDE disk throughput of the primary master disk, and the linux-buffer cache throughput of your system. Expect to see 10-12 MB/sec for ATA33, and increasingly higher for higher speed ATA specs. Buffer-cache speed will give an indication of the performance of the linux kernel's management of buffers in memory, and will increase with memory speed or DDR technology. If this value is much lower than expected, perhaps you need to make sure DMA is enabled. You might need to turn it on during boot with hdparm, or need to recompile your kernel with support for your IDE controller.
A: LMBench can perform a few different benchmarks. We will not go into that here, but the graphs can show things like surface defects on the disk if you see a section that has significantly higher latency than the rest of the disk. It can be obtained at http://www.bitmover.com/lmbench/.
A: SPECViewPerf will probably get its own section soon, but for the moment, here is a link to it at http://www.specbench.org/gpc/opc.static/opcview70.html. It should contain specific OpenGL tests. Note that it is extremely large (approx 290MB in size), and does not clearly state whether it works under Linux (the previous version, 6.something, did however). A mini how-to for SPECViewperf is available at http://icculus.org/~ashridah/svp/, covering downloading, compiling the bits, and running the tests.


Editing Maps and Mods (return)

Q: Can I make Quake III/Return to Castle Wolfenstein levels and modifications in Linux?

A: Yes, look to http://www.qeradiant.com/.

Q: How do I use the nifty-neato built-in map editor that came with Tribes 2?

A: Simply start a server (preferably a LAN server with a player limit of 1) in the map of your choice and hit Alt+E. A good mapping tutorial can be found here: http://hosted.tribalwar.com/zear/mapeditmain.html. We recommend keeping Tribes 2 in a window and bringing up a browser to http://www.tribes2maps.com/browser/index.html. One note for those who have used the Windows version: to select a SimGroup into which objects should be put, Alt+Click does not work on Linux. Alt+Shift+Click does.


Emulation Queries (return)

Q: Can I emulate Arcade games in Linux like I did with MAME in windows?

A: You sure can! The MAME project has a generic UNIX version called XMAME: http://mame.net/.

Q: What about SNES emulation?

A: ZSNES (http://zsnes.com/) has a Linux version, as does Snes9x (http://snes9x.com/).

Q: What about PlayStation?

A: ePSXe (http://epsxe.com/, a HOWTO for which is http://terror.snm-hgkz.ch/gaming/linux/epsxe_howto/ available) and PCSX (http://www.pcsx.net/).

Q: Can I play my old LucasArts adventure games in Linux?

A: You bet! A number of games run almost perfectly in ScummVM (http://scummvm.org/).

Q: What about DOS emulation?

A: There are a few different methods of DOS emulation, notably dosbox (http://dosbox.sourceforge.net/) for DOS games. It works very well, and supports a number of nice games, including the Crusader series.

Q: Do you have any suggestions for emulators that emulate other consoles and such?

A: The game list also lists a number of emulators: http://www.icculus.org/lgfaq/gamelist.php?genre=Emulator

Q: Can I emulate regular Windows games using Linux?

A: Maybe. The WINE project (http://www.winehq.com) is working on making it possible to run Windows applications under Linux. WINE is not a surefire solution to Linux game availability, games usually wont work and those that do work rarely do so without problems. The price of purchasing a game that has been natively ported is well worth avoiding the trouble of getting WINE to work properly.

Q: What games can I emulate using WINE and Cedega?

A: CodeWeavers maintains a database of applications at http://appdb.codeweavers.com. This database is filled with information from users and may not necessarily reflect what works with the current release of WINE.

Q: Why not play games that have been natively ported using WINE?

A: Playing games in WINE simply isn't a reliable option, although many games work acceptably, almost none will work perfectly. Games in WINE may suffer instability, from minor glitches in sound and graphics, to poor performance. Oftentimes Wine requires minutes to start their pseudo-Windows interface while it checks over your fonts. Native ports may suffer from bugs, but a natively portedg game is in a much better position to provide support.


External Resources (return)

Q: Hey, this FAQ stinks, is there anywhere else I can go for info?

A: The mod db (http://www.moddb.com/) is full of modifications for most games.
A: LinuxGames (http://www.linuxgames.com/) will often have updates regarding a topic you may be wondering about before we'll have anything on the subject.
A: To speak with a community of Linux gamers live, join #icculus.org on irc.freenode.net. There are also channels for graphics cards: #nvidia, #ati.


The LGFAQ is the property of Zachary J. Slater. Ape shall not kill ape. The LGFAQ was last updated Mon Oct 17 02:48:11 EDT 2016. Portions are owned by their respective authors as identifiable through new entries in the SVN interface on the web:
http://svn.icculus.org/lgfaq/trunk/