The Linux Gamers' HOWTO

Peter Jay Salzman

Frédéric Delanoy

2004-07-30 v.1.0.2

Abstract

The same questions get asked repeatedly on Linux related mailing lists and news groups. Many of them arise because people don't know as much as they should about how things "work" on Linux, at least, as far as games go. Gaming can be a tough pursuit; it requires knowledge from an incredibly vast range of topics from compilers to libraries to system administration to networking to XFree86 administration ... you get the picture. Every aspect of your computer plays a role in gaming. It's a demanding topic, but this fact is shadowed by the primary goal of gaming: to have fun and blow off some steam.

This document is a stepping stone to get the most common problems resolved and to give people the knowledge to begin thinking intelligently about what is going on with their games. Just as with anything else on Linux, you need to know a little more about what's going on behind the scenes with your system to be able to keep your games healthy or to diagnose and fix them when they're not.


Table of Contents
1. Administra
1.1. Authorship and Copyright
1.2. Acknowledgements
1.3. Latest Versions and Translations
2. Definitions: Types Of Games
2.1. Arcade style
2.2. Card, logic and board games
2.3. Text Adventure (aka Interactive Fiction)
2.4. Graphical Adventures
2.5. Simulation (aka Sims)
2.6. Strategy (aka Strats)
2.7. First Person Shooter (aka FPS)
2.8. Side Scrollers
2.9. Third Person Shooters
2.10. Role Playing Game (aka RPG)
3. Libraries
3.1. What is Glide2?
3.2. What is Glide3?
3.3. What is OpenGL?
3.4. What is Mesa?
3.5. What is DRI?
3.6. What is GLX?
3.7. What is Utah GLX?
3.8. What is xlib?
3.9. What is a widget set?
3.10. What is SDL (Simple DirectMedia Layer)?
3.11. What is GGI?
3.12. What is SVGAlib? Frame buffer? Console?
3.13. What is OpenAL?
3.14. What is DirectX?
3.15. Clanlib
4. XFree86 and You
4.1. Getting information about your X system
4.2. Playing Games In X Without a Window Manager
5. Various Topics
5.1. Memory Type Range Registers
5.2. Milking performance from your system for all it's worth
5.3. About libraries on Linux
6. When Bad Things Happen To Good People
6.1. RTFM!
6.2. Look For Updates and Patches
6.3. Newsgroups
6.4. Google Group Search
6.5. Debugging: call traces and core files
6.6. Saved Games
6.7. What to do when a file or library isn't being found (better living through strace)
6.8. Hosed consoles
6.9. Locked System
7. Video Cards
7.1. History
7.2. Current Status (1 March 2004)
7.3. Which Video Card Should I Buy? (1 March 2004)
7.4. Definitions: Video Card and 3D Terminology
8. Sound
8.1. Which sound card is best?
8.2. Why isn't my sound working?
9. Miscellaneous Problems
9.1. Hardware Acceleration Problems
9.2. Hardware acceleration works only for the root user
10. Emulation and Virtual Machines
10.1. What is a virtual machine?
10.2. Apple 8-bit
10.3. DOS
10.4. Win16
10.5. Win32
11. Interpreters
11.1. SCUMM Engine (LucasArts)
11.2. AGI: Adventure Gaming Interface (Sierra)
11.3. SCI: SCript Interpreter or Sierra Creative Interpreter (Sierra)
11.4. Infocom Adventures (Infocom, Activision)
11.5. Scott Adams Adventures (Adventure International)
11.6. Ultima Underworld: The Stygian Abyss (Origin, Blue Sky Productions)
11.7. Ultima 7 (Origin, Electronic Arts)
11.8. System Shock (Electronic Arts, Origin)
12. Websites And Resources
12.1. Meta gaming websites
12.2. Commercial Linux Game Resources
12.3. Other Resources