Chapter 8: Setting Up a Game Server with BZFlag
While the number of popular commercial computer games for Microsoft Windows still far outstrips those available for Linux, as a gaming server, Linux is an extremely popular platform. Linux server software is available for hundreds of commercial games, allowing your Linux server to bring together dozens or hundreds of online gamers at a time.
From the pure, open source standpoint, there are some fun games that have completely free client and server software that you can set up and play against others on your LAN or over the Internet. These include board games (such as Go and Atlantik), strategy games (such as freeciv), and battle games (such as BZFlag).
To try your hand at setting up and playing from your own gaming server, I describe how to configure Battle Zone capture the Flag (BZFlag). BZFlag is a fun 3D tank battle game, designed to be played against others over a network. After you set up a BZFlag server, you can have players battle each other over the network using clients on other Linux, BSD, Mac OS X, or Windows systems.
Figure 8-1 illustrates the BZFlag Start Server screen and tanks that might appear on BZFlag clients that run on Linux, Mac OS X, Windows, and BSD systems.
Like many open source projects, BZFlag was begun by a single person as a small idea that just took off. Chris Schoeneman started what became BZFlag as part of his graduate studies in computer graphics at Cornell University in 1993. The project started as a demo program to spin a 3D model with a mouse.
When a friend suggested that Schoeneman make the demo into a game, he created tank models, added the ability to shoot the tanks, and made it so the game could be played against other players on a LAN. The game grew in popularity at Cornell and, over time, features were added such as flags, team bases, and Capture-the-flag–style game play. With the addition of capture-the-flag, the game's name changed from bz to BZFlag.
More than a dozen years later, BZFlag (BZFlag.org/) has a thriving community, with more than 3,000 registered users and 34,000 articles at the BZFlag forums (my.BZFlag.org/bb). At any given time, there are dozens of public BZFlag servers running and waiting for you to join in. New worlds and new features are constantly being created and made available for BZFlag.
The current BZFlag maintainer is Tim Riker. Many other contributors to the project are listed as well. These include Daniel Léonard, Jeremiah â
- VMware's Clarity Design System
- Let's Go to Mars with Martian Lander
- On Your Marks, Get Set...Gutsy Gibbon!
- Applied Expert Systems, Inc.'s CleverView for TCP/IP on Linux
- Papa's Got a Brand New NAS
- My Childhood in a Cigar Box
- Rogue Wave Software's TotalView for HPC and CodeDynamics
- Panther MPC, Inc.'s Panther Alpha
- Simplenote, Simply Awesome!
- Jetico's BestCrypt Container Encryption for Linux