From Libregamewiki
Jump to navigation Jump to search
Bzflag red base shots.png
GenreOnline Multiplayer FPS
Latest release2.4.26  (Announcement)
Release dateNovember 20th, 2022
Code licenseLGPL
Media licenseLGPL
P. languageC++
BZFlag is a free game. This means that the source code is available to be studied, modified, and distributed. Most projects look for help with testing, documentation, graphics, etc., as well.
Available as a package in:  
Slackware logo.svg Slackware: bzflag 
Error creating thumbnail: /bin/bash: line 1: convert: command not found
Arch AUR:
Openlogo-debianV2.svg Debian: bzflag 
Fedora logo.svg Fedora: bzflag  
Gentoo Linux logo matte.svg Gentoo: games-action/bzflag 
UbuntuCoF.svg Ubuntu: bzflag 
OpenSUSE Logo.svg OpenSUSE: bzflag 
Mageia logo small.jpg Mageia: bzflag 
Flatpak logo.png Flatpak: org.bzflag.BZFlag 
Snapcraft-logo.svg Snap: bzflag 
Daemon-phk.svg FreeBSD: bzflag

BZFlag, short for Battle Zone capture the Flag, is an online first-person shooter game. The code and media is licensed under the LGPL 2.1, with pieces of code and fonts being under other free licenses.[1] Originally written by Chris Schoeneman, it is now maintained by Tim Riker. The game is written in the C++ programming language. Earlier versions were written in C.


BZFlag has several different game modes, including capture the flag, deathmatch, and kill the rabbit. Thus there are numerous BZFlag servers hosting different kinds of games.

Players control tanks with which they can jump. Flags are items that enhance or handicap tanks' abilities. An example is a radar jamming flag, which jams your radar for a certain period of time. Another is a machine gun flag, which makes evading bullets impossible at close range, though it is also handicapped by the fact that it have a shorter range. Some flags are very deadly, such as the ability to launch homing missiles, making it very easy for a tank to get several kills in a row.

Different servers often have different rules, affecting gameplay. For example, there is a laser only game where everyone only use laser to kill each other. Others have no jump rule, while others make jumping to allow the possibility of prolonged aerial combat.

Development History[edit]

BZFlag was written originally in C by Chris Schoeneman along with some of his classmates in 1992 when he was a student. Later, he rewrote the game into C++ for SGI's IndiZone contest. He won a computer for winning the Reality Engine category.[2]

BZFlag development team has been chosen as mentoring organization for Google's Summer of Code program.[3]

See BZFlag release history for an extensive timeline of releases.


On April 3rd, 2008, the BZFlag development team opened up the BZFlag store to fund development efforts, but it has since been shut down. It sold t-shirts and sweatshirts.[4][5]


BZFlag's open source client code has one major downside in it that makes cheating extremely easy. Even with little or no knowledge of programming, users can easily give themselves an unfair advantage over normal players by making minor modifications to the source code.[6]

The official BZFlag wiki maintains a list of known cheats.


As of 19 Dec 2008, the game is available as source code (version 2.0.12, 2.0.8, …) and as binaries for:

  • Microsoft Windows (official 2.0.10, 2.0.8, …)[7]
  • Mac OS X (official 2.0.10; official 2.0.8 [PPC only])[7]
  • GNU
    • Official build of 2.0.12 for GNU/Linux[7]
    • Debian repositories (maintained by Tim Riker himself)[8]
      • Etch: version (alpha amd64 arm hppa i386 ia64 mips mipsel powerpc s390 sparc m68k)
      • lenny/sid: (alpha amd64 arm armel hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 m68k mips mipsel powerpc s390 sparc)
    • Fedora repositories: package version 2.0.12-3.fc8[9]
    • Gentoo portage[10]
      • amd64, ppc, x86: bzflag-2.0.12, 2.0.8
      • ~x86-fbsd: 2.0.8
  • OpenBSD ?: [11]
  • more?

See also[edit]

External links[edit]