第八章:使用 BZFlag 设置游戏服务器
虽然适用于 Microsoft Windows 的流行商业电脑游戏数量仍然远远超过 Linux,但作为游戏服务器,Linux 是一个极其流行的平台。 Linux 服务器软件适用于数百种商业游戏,让您的 Linux 服务器可以一次性聚集数十甚至数百名在线游戏玩家。
从纯粹的开源角度来看,有一些有趣的游戏拥有完全免费的客户端和服务器软件,您可以设置这些软件并在您的局域网或互联网上与其他人对战。 这些包括棋盘游戏(例如围棋和 Atlantik)、策略游戏(例如 freeciv)和战斗游戏(例如 BZFlag)。
为了让您尝试设置和从您自己的游戏服务器玩游戏,我将介绍如何配置 Battle Zone Capture the Flag (BZFlag)。 BZFlag 是一款有趣的 3D 坦克对战游戏,旨在通过网络与其他人对战。 设置 BZFlag 服务器后,您可以让玩家使用其他 Linux、BSD、Mac OS X 或 Windows 系统上的客户端通过网络相互对战。
图 8-1 展示了 BZFlag 启动服务器屏幕以及可能出现在 Linux、Mac OS X、Windows 和 BSD 系统上运行的 BZFlag 客户端上的坦克。

图 8-1:从您的 Linux 服务器在不同的客户端上玩 BZFlag 坦克对战。
像许多开源项目一样,BZFlag 最初是由一个人作为一个小想法开始的,然后就流行起来了。 Chris Schoeneman 在 1993 年于康奈尔大学攻读计算机图形学研究生时开始了 BZFlag 的项目。 该项目最初是一个演示程序,用于使用鼠标旋转 3D 模型。
当一位朋友建议 Schoeneman 将该演示程序变成一个游戏时,他创建了坦克模型,添加了射击坦克的功能,并使该游戏能够在局域网上与其他玩家对战。 该游戏在康奈尔大学越来越受欢迎,并且随着时间的推移,添加了诸如旗帜、团队基地和夺旗式游戏玩法等功能。 随着夺旗的加入,游戏名称从 bz 更改为 BZFlag。
十多年后,BZFlag (BZFlag.org/) 拥有一个蓬勃发展的社区,在 BZFlag 论坛上有超过 3,000 名注册用户和 34,000 篇文章 (my.BZFlag.org/bb)。 在任何给定的时间,都有数十个公共 BZFlag 服务器正在运行并等待您的加入。 新的世界和新功能不断被创建并可用于 BZFlag。
当前的 BZFlag 维护者是 Tim Riker。 许多其他贡献者也列在其中。 这些包括 Daniel Léonard,Jeremiah â