User: Password:
Subscribe / Log in / New account


The State of Linux Gaming

September 22, 2004

This article was contributed by Dave Fancella

With all the talk about Linux for the Desktop, Linux for the Server, Linux for the Toaster, and Linux for the Masses there's one area that gets consistent criticism: gaming. Popular wisdom is that Linux will never be good for gaming because open source developers don't write games. Open source developers don't like to have fun, apparently.

Well, it's not true. None of it is true.

I did a fairly exhaustive search for Linux games, installing them and running them on my own machine, and this article is entirely about what I found. Like many applications, each game is lacking in some area. Since most of these games are pre-1.0 versions, it's not surprising at all. I ruled out any game that crashed my X server, requires root privileges, or is unplayable for any other reason. I've also ruled out games that are generally bundled with CD distributions, since you already know about those. So here is a list of games that are playable, relatively stable, and fun.

My test hardware consists of an 800mhz Duron processor, 256MB of DDR RAM, an nVidia TNT2 video card, and VIA's infamous AC'97 onboard sound system. These games all ran well on my system, so you should be able to compare your system specs to mine and easily extrapolate how well they should run on your own system.

Blobwars 0.91

[Blobwars] Blobwars is a pretty standard platform game. It is structured in levels, but organized as missions. You play Bob, a blob whose purpose is to rescue soldiers that are marked Missing In Action due to an alien invasion and subjugation. The game is playable and has many levels, an excellent mod-based soundtrack, and some pretty polished graphics. Some of the graphics and levels are reminiscent of the old arcade game Strider, and the plot itself is similar. Game play is different, for the most part. According to Parallel Realities' website, Blobwars is story-complete and all that's left for a 1.0 release is testing and bug fixing.

I installed Blobwars from the generic Linux RPM provided, and it ran fine. Like most Linux games, it uses a selection of SDL libraries. Blobwars is licensed under the GPL.

SDL Vexed 0.6

[SDL Vexed] SDL Vexed is a SDL-perl clone of the popular PalmOS game, Vexed. Vexed is a puzzle game. Your goal is to eliminate all blocks on a level by placing each one adjacent to one another. When you move a block, you can move it left or right. If there is empty space under it, it will fall. Game play is slightly different than the PalmOS version, so if you've been a fan of the original game you will have to adjust. The soundtrack appears to be minimal but good, and reminiscent of the soundtrack in Frozen Bubble. Here, again, I don't have any idea what is planned for a 1.0 release, but the 0.6 release has many levels. In fact, I looked in the levels subdirectory and saw that the game was written to use the levels in the original Vexed game. There don't appear to be any new levels over the existing Vexed for PalmOS, but it does look like SDL Vexed may well provide a path to a level editor that will be advantageous for both games. The graphics are good, but still a little rough around the edges.

The game doesn't actually install, you just need to make sure you have SDL-perl installed. Then unpack the tarball, cd into the directory, and run it. SDL Vexed is released under the GPL.

Armagetron Advanced

[Armagetron Advanced] (A slight disclaimer, I am somewhat involved in this project.)

Armagetron Advanced is a fork of the game Armagetron. You may already know Armagetron from your distribution, it comes with Mandrake, SuSE, and possibly others. In Armagetron Advanced you are a light cycle on a grid, and wherever you go this big wall appears behind you. The object of the game is to coerce the other players to crash into your wall. It's an excellent 3d gaming version of the light cycle sequence from Tron. Like all of the best games in history, game play itself is very simple, but the game is not. Played as a network game, you will find servers that range in abilities; some will have a steep learning curve for survival, while others will be more friendly to new players. There is a sizeable and growing community around this game. Armagetron Advanced has a decent collection of sound samples and does a good job panning the sounds. Many players have become dependent on the sounds as clues to what is going on around them. The graphics are excellent and fairly well-polished, but the game is lacking a musical soundtrack. Sound effects are present, non-intrusive, and actually reflective of the game you see. The game is playable now, and continues to get better.

I installed Armagetron Advanced using the generic Linux RPM provided by the project. I was also able to successfully build it with the SDL libraries provided by Mandrake. Armagetron Advanced is released under the GPL.

Cube 2004.05.22

[Cube] Cube is a first person shooter game. It appears that Cube brings some interesting innovation to this field; according to this statement from their web page: "Cube is a landscape-style engine that pretends to be an indoor FPS engine, which combines very high precision dynamic occlusion culling with a form of geometric mipmapping on the whole world for dynamic LOD for configurable fps & graphic detail on most machines." Whatever that means.

I enjoyed the game when I played it. Cube appears to have a very active community of players and servers, and it doesn't take long to find a server for you to get your brains blown out. Game play was fairly typical of first person shooters, but the Cube developers have made some real strides in eliminating lag, the biggest problem facing first person shooting. Speaking as a metal-head, the heavy metal soundtrack was outstanding and varied. The sound effects themselves were good, and with the polished graphics combined well to make a fairly realistic playing experience.

I almost didn't include Cube because it didn't fit some of my criteria. Namely, it has a tendency to run out of memory and crash, leaving my X environment stuck in Cube's native resolution. Cube also didn't surrender my mouse gracefully after one session. I decided I could safely ignore these problems since they are doubtless bugs that will be fixed soon. If you want a good open source first person shooter, Cube is it.

Cube includes binaries for all supported platforms in one tarball. It is released under the Zlib license.

Battle for Wesnoth 0.8

[Battle for Wesnoth] The Battle for Wesnoth is a fantasy turn-based strategy game with a twist. It is story-driven. Victory conditions for maps range from "Destroy the bad guys" to "Run a player character to a specific point on the map". There are even factions on the maps that are allies, but you don't get to control them. I found myself getting sucked into a world of trolls, orcs, elves, and magic even though I had thought I had outgrown such things. The soundtrack is pretty complete with a good variety of music and sound effects. All the little bells and whistles appear to be present, with fun animations for combat, walking units, and even standalone hexes on the map. The map itself doesn't have grid lines by default, and unless you turn on the grid lines, you may not even notice the map is hexagonal.

I did have a little trouble installing Battle for Wesnoth. The Mandrake packages provided didn't install on my system, so I built the source code tarball. The build went smoothly although it did take some time. Naturally I recommend building from source, but you may find the packages work for you. Battle for Wesnoth is released under the GPL.

Crimson Fields 0.4.4

[Crimson Fields] (A disclaimer for this one as well, I am pretty involved with Crimson Fields.)

Crimson Fields is a turn-based strategy game set way in the future on another planet. You are the leader of the Free Nexus Army, a rebel group whose purpose in life is to overthrow the alien invaders and bring independence back to the planet of Nexus. Crimson Fields draws a lot of inspiration from the old Battle Isle series, and supports the map format from that series. It is still a very young project and only comes with a few maps, but it is playable now. You can play by email, hot seat, or locally against the computer. It has a soundtrack of exactly one song, and during extended play you may find that one song to be worth disabling after a while. Sound effects are pretty minimal as well, but both are at the level expected for a pre-0.5 release.

I have installed Crimson Fields every which way, and it installs smoothly. There are user-contributed packages for every operating system under the sun, and the project directly provides a source tarball, source rpm, and generic Linux rpm. Crimson Fields is released under the GPL.

FlightGear 0.9.3

[FlightGear] FlightGear is a flight simulator. FlightGear claims to have a huge selection of airports and accurate scenery to accompany its airports. I was unable to confirm any of this because the few times I managed to get the plane off the ground it crashed. That is actually my litmus test of how good a flight simulator is. If I can't get the plane off the ground, it must be good. I'm starting to suspect I'll have to go to flight school to be able to play this game, so if flight simulators are your thing, you definitely need to check this game out. I can say, however, that I'm dying to see the beautiful scenery that I see in their screenshots. FlightGear only ran at about 10 frames per second on my machine, you will definitely need more powerful hardware than what I have.

FlightGear can be tricky to download. For some of their packages they depend on, and for others you have to surf through their ftp mirrors. I have built FlightGear from source before, so it's definitely possible, but it's a build on the order of the Linux kernel itself--it takes a while. When you manage to find a binary download it's going to be very large, 98MB large. Luckily they offer it on CD as well, so if either bandwidth or patience are problems you are currently experiencing, consider ordering a CD. FlightGear is released under the GPL.

Gaming Resources

There are a number of web sites you can visit that keep tabs on the Linux gaming community. Here is a list of those websites:
  • LINUXGAMES - A community news site that accepts story submissions from its readers.
  • The Linux Game Tome - attempts to catalog every single game available for Linux.
  • The Linux Gamers' Game List - A searchable list that offers filtering and sorting of the games in the list. The list is fairly old, but is still a good way to find established games.
  • Games for Linux - Another searchable list that supports user ratings.

Comments (32 posted)

System Applications

Audio Projects

Jack Audio Connection Kit 0.99.0

Version 0.99.0 of JACK, the Jack Audio Connection Kit has been released. Changes include additions to the API, better compatibility with NPTL, a new --unlock option, a new CoreAudio driver, fixes, code cleanups, and more.

Comments (none posted)

Database Software

Knoda 0.7.1 released

Version 0.7.1 of Knoda, a database frontend, is available. Changes include a fully KDE-compliant GUI, subform support, support for asterics in the Query Editor, and bug fixes.

Full Story (comments: none)

pgst 1.1.0 Released

Version 1.1.0 of pgst, a GNOME-based frontend to PostgreSQL, has been announced. Here are the release comments: "Was developed on RedHat 9 Linux that had all the default RPMs installed on it and nothing more. Uses the same technology for the frontend that Red Hat uses for its GNOME-based control panels. More than likely it will work on any post 2003 Linux in the RedHat and Suse product lines, and many others."

Comments (none posted)

PostgreSQL Weekly News

The PostgreSQL Weekly News for September 21, 2004 is available, take a look for the latest PostgreSQL database information.

Full Story (comments: none)


Prerelease of libgdither 0.2 dithering library

A pre-release of libgdither 0.2 is available for testing and comments. "Libgdither is a GPL'd library library for performing audio dithering on PCM samples. The dithering process should be carried out before reducing the bit width of PCM audio data (eg. float to 16 bit int conversions) to preserve audio quality."

Full Story (comments: none)

Mail Software

SpamAssassin 3.0 released

SpamAssassin 3.0 has been released. There's a lot of stuff in this release, including SPF checking, testing for spammer URLs, a new plugin mechanism for third-party modules, better SQL database support, and more. This is the first release under the Apache Software Foundation umbrella; it is now covered by the Apache license. There is an information posting with details on this release.

Comments (none posted)

Web Site Development

Apache HTTP Server 2.0.51 Released

Version 2.0.51 of Apache is out. "This version of Apache is principally a bug fix release. Of particular note is that 2.0.51 addresses five security vulnerabilities".

Full Story (comments: none)

Midgard 1.6.0rc1 released

Version 1.6.0rc1 of Midgard, a CMS framework, is available. Changes include Multilang and PAM support, an Apache2 module, a PHP4 module, and a new version of midgard-data.

Full Story (comments: none)

Samizdat 0.5.3, the Portal release

Version 0.5.3 of Samizdat, a generic RDF-based engine for building collaboration and open publishing web sites, is out. "Starting with this version, Samizdat can send out email: currently, it is used to recover lost passwords and to confirm that member email address is real. Email addresses are now unique, making it more difficult to cheat using throwaway accounts. Other changes include new dc:description message property for attaching article abstract, thumbnail image, or table of contents to a message, new preferences infrastructure allowing to add more server-side member settings in the future, and the inevitable database schema change."

Full Story (comments: none)

ZopeMag Weekly News

The ZopeMag Weekly News for September 22, 2004 is out with the latest Zope and Plone development news.

Comments (none posted)


YALE 2.4 released (SourceForge)

Version 2.4 of YALE (Yet Another Learning Environment), a Java environment for machine learning and data mining, is available. "Several new features where implemented for YALE 2.4. These are a LearningCurveOperator, StandardDeviationWeighting, PrincipalComponents, WekaAttributeWeighting, C45ExampleSource, Obfuscator, Deobfuscator, CorpusBasedWeighting, and several XXXExampleSource operators."

Comments (none posted)

Desktop Applications

Desktop Environments

GARNOME 2.8.0 announced

Version 2.8.0 of GARNOME, the bleeding-edge GNOME distribution, is out. "This release incorporates the GNOME 2.8.0 Desktop & Developer Platform, as well as plenty of new third-party package updates and funkey new features."

Full Story (comments: none)

gnome-themes 2.8.0 announced

Version 2.8.0 of GNOME-themes, a collection of themes for the GNOME desktop, is available. Changes include the new Glider theme and some bug fixes.

Full Story (comments: none)

KDE CVS-Digest

The September 17, 2004 edition of the KDE CVS-Digest is online, here's the content summary: "Kpdf adds zoom, search, thumbnails and is optimized. Kontact now supports Kolab version 2. Krita adds startup templates. khtml improves the outline painting algorithm. Kopete merges Novell GroupWise Messenger support into HEAD. Plastik style optimized."

Comments (none posted)

KDE 3.3 Usability Study and Review (KDE.News)

KDE.News looks at a userinstinct usability review. "Based on feedback from our test group, the default settings for a number of KDE parameters differ from what is usually expected and desired by users. Providing better defaults would reduce the time users spend looking for configuration settings and would provide a better "out-of-the-box" experience."

Comments (none posted)


gEDA News

The latest releases from the gEDA project include new versions of the Icarus Verilog compiler and gspiceui, a GUI frontend to several freely available SPICE simulators.

Comments (none posted)

XCircuit 3.2.27 released

Version 3.2.27 of Xcircuit, a schematic drawing package, is available. From the CHANGES file: "Quick fix to allow the non-Tcl code to compile; the experimental "ngspice" code contains numerous Tcl references, and although it does not depend on Tcl in principle, it is easier just to disable the code for the non-Tcl compile. It will not be missed. Also: Changed the startup method from the hacked-up redirection of $HOME to a standalone "wish"-like executable that sets up "wish" to read in the .xcircuitrc file as its startup script."

Comments (none posted)

GUI Packages

GTK+ 2.4.10 released

Version 2.4.10 of GTK+, a multi-platform toolkit for creating GUIs, is out with numerous bug fixes and more.

Full Story (comments: none)

TG Framework - Milestone Release 1.0a1

The first alpha release (1.0a1) of the TechGame Framework for Python, has been announced. "The TechGame Framework for Python is a toolkit for skinning (building) GUIs using a blend of XML, CSS, and Python."

Comments (none posted)


Wine 20040914 is available

Version 20040914 of Wine has been announced. Changes include improvements to the common controls, a new ITSS dll, compatibility fixes in the exported headers, replacements for the Windows standard bitmap fonts, and bug fixes.

Comments (none posted)

Wine Traffic

The September 17, 2004 edition of Wine Traffic is available with the week's Wine news.

Comments (none posted)

Mail Clients

Evolution 2.0.0 released

Evolution 2.0.0 has been released to go along with GNOME 2.8. There's lots of new features, including NNTP and S/MIME support, built-in SpamAssassin filtering, web calendars, and more; click below for the details.

Full Story (comments: 16)

Ristretto 1.0 RC2 released (SourceForge)

Version 1.0 rc2 of Ristretto, the mail api for the Columba mail client, is out. "New and noteworthy features are: implementation of the IMAP Namespace extension (RFC 2342), asynchronous download of messages from POP3, license changed to tri-license MPL/LGPL/GPL and more JavaDocs added."

Comments (none posted)

Music Applications

Q-Audio 2.0 and Q-Synth 1.0 released (SourceForge)

New versions of Q-Audio and Q-Synth have been announced. "Q is a functional programming language based on the term rewriting calculus. Q-Audio 2.0 is a major update, which now supports LSA and Jack via PortAudio v19, and also adds Fourier transform operations via FFTW3. Q-Synth 1.1 is a minor update which fixes some bugs in the SuperCollider synth definitions and adds support for Q-Audio 2.0."

Comments (none posted)

Office Suites

KOffice 1.3.3 Released (KDE.News)

KOffice version 1.3.3 has been announced. "The KOffice team is happy to bring you the third bugfix package that builds upon the previous 1.3.x versions, with many fixes, mainly in the core libraries and in some filters. But there is also a fully new and complete translation for KOffice: Welsh."

Comments (none posted)

Digital Photography

ESWPHOTO 0.1.9 released

The Pygame site has an announcement for version 0.1.9 of ESWPHOTO: "A slideshow viewer, designed for digital photography enthusiasts. Features include: intuitive control (no distracting GUI), zoom and pan feature, full screen, fast, EXIF tag display, high quality scaling, lossless image rotation."

Comments (2 posted)


gcalctool v4.4.19 announced

Stable version 4.4.19 of gcalctool, the default GNOME desktop calculator, is available. "This release is for GNOME 2.8.1 when it becomes available. Note that gcalctool now requires the Gtk+ libraries that come with GNOME 2.6 or later in order to build."

Full Story (comments: none)

GPSBabel beta 09202004 released (SourceForge)

Beta release 09202004 of GPSBabel, a cross-platform and cross-vendor GPS application, has been announced. "This version adds several new formats and filters and fixes several bugs. The next version will add the Garmin/USB work to cover 60C, 60CS, 76C, 76CS, 96C, VistaC, and SummitC on Windows."

Comments (none posted)

Languages and Tools


Caml Weekly News

The September 14-21, 2004 edition of the Caml Weekly News is out with the week's collection of Caml language articles.

Full Story (comments: none)


Erlange REPOS 1.0 beta 3 released

Version 1.0 beta 3 of Erlange REPOS, a CDROM-based repository of Erlang projects, is out with a multitude of ready-to-use Erlang software projects.

Full Story (comments: none)


Joone DTE 0.8.0 released (SourceForge)

Version 0.8.0 of Joone, a Java-based neural net framework, has been announced. Changes with this release include an almost linear-scaled training process, dynamic addition and removal of machines, XML-based process paramenter control, Jini 2.0 compliance, and more.

Comments (none posted)

Develop aspect-oriented Java applications with Eclipse and AJDT (IBM developerWorks)

Matt Chapman and Helen Hawkins introduce AJDT on IBM's developerWorks. "The AspectJ Development Tools for Eclipse (AJDT) is an open source Eclipse Technology Project that provides the tooling required to develop and run AspectJ applications. We believe good tools have a key role to play in realizing the full benefits of aspect-oriented programming, and particularly in helping newcomers understand the concepts involved."

Comments (none posted)

Can't beat Jazzy (IBM developerWorks)

Tom White covers spell checking with Jazzy on IBM's developerWorks. "Users have come to expect spell-check capabilities from applications that involve natural-language text entry. Because building a spell checker from scratch is no simple task, this article offers you a workaround using Jazzy, an open source Java spell checker API."

Comments (1 posted)

Developing Your First Enterprise Beans (O'Reilly)

O'Reilly has published part one in a book excerpt series on Enterprise Beans. "One of the most important features of EJB is that enterprise beans have the ability to work with containers from different vendors. However, that doesn't mean that selecting a server and installing your enterprise beans on that server are trivial processes."

Comments (none posted)

Understanding the Interplay Between Utility Classes and Static Initialization (O'Reilly)

Satya Komatineni covers issues with Java static functions on O'Reilly. "Java is an OO language, which means much of the functionality of a Java application is encapsulated into cohesive classes that can be instantiated and acted upon. Nevertheless, once in a while you end up with some functions that are applicable to more than one class. These functions don't really belong to any particular class, but to a sub-system or a package. Although one can express this grouping as a class by itself (represented by interfaces), it is just simpler to collect them as static functions in a class, when one doesn't need the sophistication of service-centric approach for these methods."

Comments (none posted)


Simon Cozens' Modules Need New Maintainers (use Perl)

Use Perl has a request for help with the maintenance of Simon Cozens' legacy Perl modules. "He's retiring from the CPAN, and leaving his legacy of Perl modules behind. I've stepped up to take on the task of making sure his 100 modules don't fall into disuse, and that they have proper new masters and mistresses, like I did with Iain Truskett's modules when he passed away last year."

Comments (none posted)

Volunteers wanted to help get PPI to 1.0 (use Perl)

Use Perl has a request for volunteer help on PPI, the 'almost parser' for Perl. "While all the hard work is done now, and it is largely complete and quite usable, I've gotten tied up with work, and I will not have the time in the forseeable future to finish the final features, testing and docs to get it to 1.0."

Comments (none posted)

This Week on Perl 6

The September 16, 2004 edition of This Week on Perl 6 is out with the latest Perl 6 discussion topics.

Comments (none posted)


PHP 4.3.9RC3 released

Version 4.3.9RC3 of PHP is out. "This is the last release candidate before the final release and should have a very low number of problems and/or bugs. Nevertheless, please download and test it as much as possible on real-life applications to uncover any remaining issues."

Comments (none posted)

PHP Weekly Summary for September 6, 2004

The PHP Weekly Summary for September 6, 2004 is out. Topics include: PHP 5 Bug Summary, native PHP events, 4.3.9 RC 2, vars to string, preg_match and object cast, pdflib 6 support, hashes in globals, sqlite_temp_dir, and untrusted serialized data.

Comments (none posted)


python-dev Summary

The August 16-31, 2004 edition of the python-dev Summary is available, take a look to see the latest discussions from the python-dev mailing list.

Full Story (comments: none)

Dr. Dobb's Python-URL!

The September 20, 2004 edition of Dr. Dobb's Python-URL! is online with a new collection of Python language article links.

Full Story (comments: none)


QtRuby and Korundum Bring eXtreme RAD to KDE (KDE.News)

KDE.News looks at Ruby developments under KDE. "Now with QtRuby and Korundrum, that power and expressivity has increased: You can sketch out pretty interfaces with Qt Designer and automatically create Ruby code with the rbuic tool. Or do amazing things with DCOP without needing preprocessors, makefiles etc -- just type in your Ruby script and be in control of your desktop. In fact, you can find a fairly complete description of all the features supported by QtRuby and Korundrum over at the Ruby bindings section of the KDE Developer's Corner."

Comments (none posted)


Dr. Dobb's Tcl-URL!

The September 21, 2004 edition of Dr. Dobb's Tcl-URL! is available with more Tcl/Tk articles and resources.

Full Story (comments: none)


Perl Parser Performance (O'Reilly)

Petr Cimprich looks at Perl-based XML parser performance in an O'Reilly article. "There was one dominant XML parser in Perl a few years ago; parsing an XML document was synonymous for using the XML::Parser module. The module written by Larry Wall and Clark Cooper worked as an interface to James Clark's expat XML parser, and it didn't leave much room for competitors. Traditional Perl modules for XML processing were built on the top of XML::Parser. But times are changing."

Comments (none posted)

Build Tools

Automate the application build and distribution process (IBM developerWorks)

Martin C. Brown works on the process of optimizing software builds across multiple platforms. "You have enough to consider when building an open source application for a single type of system, but what if you're building that application for distribution among a range of different, incompatible machines? There's no easy answer, but using a little discipline and some custom scripts, you can simplify the process. This article looks at how to create a structure for building and distributing applications, including heavily customized versions, and a simple way of disseminating the applications among a number of machines, manually or automatically, as easily as possible."

Comments (none posted)


developing FLTK applications in Eclipse

A new document called developing FLTK applications in Eclipse by Dejan Lekic has been placed online. "Each section in this document will come with one picture and explanation (that is why it's called "step-by-step"), and it actually represents each sucessive step in setting up Eclipse for working on simple FLTK-based application called "flimple"."

Comments (none posted)


Coverage Measurement and Profiling (Linux Journal)

Zach Frey explains code coverage analysis on Linux Journal. "Maybe you've always wondered what the gcov utility that comes with GCC is used for, or maybe your new project at work has a regulatory or customer requirement that your delivered software be tested to a certain percentage of coverage, and you are looking for how to accomplish that task. In this article, I introduce the general ideas of coverage measurement and of performance profiling, along with the standard GNU tools (gcov and gprof) used in these two techniques."

Comments (none posted)

Test Suites

Marathon 0.84 Released (SourceForge)

Version 0.84 of Marathon is available. "Marathon is a testing framework for GUI applications developed using Java/Swing. Marathon composes of recorder, runner and editor. The testscripts are composed of python code. Marathon version 0.84 is released, this contains minor feature enhancement and bugfixes."

Comments (none posted)

Page editor: Forrest Cook
Next page: Linux in the news>>

Copyright © 2004, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds