Provided by: bzflag-client_2.4.26-1build3_amd64 

NAME
BZFlag - a tank battle game
SYNOPSIS
bzflag [-badwords filterfile] [-config filename] [-configdir directoryname] [-d | -debug] [-date
mm/dd/yyyy] [-dir | -directory directory] [-e | -echo] [-ea | -echoAnsi] [-h | -help | --help] [-latitude
latitude] [-list list-server-url] [-locale locale] [-longitude longitude] [-m | -mute] [-motd URL]
[-multisample] [-nolist] [-nomotd] [-notime] [-solo number-of-robots] [-team {automatic | red | green |
blue | purple | rogue}] [-time hh:mm:ss] [-v | -version | --version] [-view {normal | stereo | stacked |
three | anaglyph}] [-window widthxheight[{+|-}x{+|-}y]] [-zbuffer {on | off}]
[[callsign[:password]@]server[:port]]
DESCRIPTION
BZFlag is a 3D multi-player tank battle game that allows users to play against each other in a networked
environment. There are five teams: red, green, blue, purple and rogue (rogue tanks are black).
Destroying a player on another team scores a win, while being destroyed or destroying a teammate scores a
loss. Rogues have no teammates (not even other rogues), so they cannot shoot teammates and they do not
have a team score.
There are three main styles of play: capture-the-flag, free-for-all, and rabbit-chase. In
capture-the-flag, each team (except rogues) has a team base and each team with at least one player has a
team flag. The object is to capture an enemy team's flag by bringing it to your team's base. This
destroys every player on the captured team, subtracts one from that team's score, and adds one to your
team's score. In free-for-all, there are no team flags or team bases. The object is simply to get as
high a score as possible. In rabbit-chase, the lead player is chosen as the target for all other
players. When the rabbit (target) is destroyed, the live player with the next highest score becomes the
rabbit. The object is to remain the rabbit for as long as possible. The rabbit is marked as a white tank.
Joining a Game
To get quickly started, select the "Join Game" menu in the BZFlag client using the arrow keys on your
keyboard. Choose the "Select a Server" link and pick one of the servers near the top of the menu. This
should take you back to the "Join Game" menu where you should then provide a callsign. Select the
"Connect". Within a few seconds you should be on that server ready to play.
BZFlag includes a global registration system that allows players to register a callsign that defines them
uniquely on the BZFlag network. Some servers require registration for all users, some require it to
obtain administrative abilities. If you attempt to use a callsign that is already registered, you may be
denied access to a server. See https://forums.bzflag.org/ for details regarding callsign registration
and to check on available names. Once registered, you will be able to provide your password in the "Join
Game" menu and have it used for authentication. You are encouraged to register your callsign.
There are generally public BZFlag servers running around the clock all around the world, available over
the Internet. Similarly, private servers can be set up for running local network games. See the bzfs
manual page (bzfs.6) for details on starting a new server, public or private.
Options
-badwords filterFile
Specify a file containing bad words to be replaced with !@#$%^&* characters when they
appear in chat.
-d or -debug Adds some diagnostic output. Can be specified multiple times to increase verbosity.
-dir or -directory directory
Looks for data files in directory first. This defaults to a directory named data in the
current directory. If not found there, the game looks for data files in the current
directory, then in the default installation location /usr/share/games/bzflag.
-config Specify the configuration file to load. The name is relative to the default configuration
directory. This is usually only used by developers.
-configdir Specify the configuration directory to use. This will be the default config directory used
by this instance of the game. This is really only needed if you can not use the default
directory.
-date mm/dd/yyyy
Specifies the date for positioning celestial objects. This option is available only when
bzflag is compiled with debugging enabled.
-e, -echo Copies all message window output to the shell on *nux and OSX, to stdout.txt on windows
-ea, -echoAnsi Copies all message window output like -echo preserving the ANSI color coding on *nix, same
as -echo on windows.
-h, -help, --help
Prints a concise list of the bzflag command line options.
-latitude latitude
Uses latitude when computing celestial object positions.
-list url Look for list servers using url. A built-in url is used by default (the same url is the
default for bzfs). If url is default then the url is reset to the built-in url (the url
is remembered across invocations of bzflag). list servers keep a list of bzfs servers
accessible from the internet and are queried when using the Find Server menu.
-locale locale Set the locale used to display messages, menus, hud alerts, etc.
-longitude longitude
Uses longitude when computing celestial object positions.
-m, -mute Disables sound.
-motd URL Specify an alternate URL for the message of the day displayed when bzflag starts.
https://www.bzflag.org/motd.php is the default. See -nomotd.
-multisample Uses a multisample buffer for rendering. If multisampling isn't available then the
application will terminate.
-nolist Disables list server querying. See -list.
-nomotd Disables queries for the message of the day when bzflag starts.
-notime Removes a previously set fixed time for celestial object positions. See -time.
-solo number-of-robots
When you join a game, you'll also cause number-of-robots robots to join too. This is an
experimental option and the robots are extremely stupid players. Robots are added to
teams at random.
-team team-name
Chooses the player's team. If there are no team positions available and the team-name is
set to be automatic, the player will try to join as an observer.
-time hh:mm:ss Specifies the local time used for positioning celestial objects, which will remain fixed
rather than move through the sky as the day advances. Use -notime to undo this setting.
-v, -version, --version
Prints the version number of the executable.
-view {normal | stereo | stacked | three | anaglyph}
Chooses one of the possible display options. Normal will render a single view to the
entire screen. Stereo will try to allocate a stereo (in-a-window) capable buffer and then
draw a single view in stereo. Your system must support stereo-in-a-window buffers. Three
will render the front view to the upper right quadrant of the display, a left view to the
lower left quadrant, and a right view to the lower right quadrant. This is intended for
systems capable of driving multiple monitors from various areas of the display surface,
yielding a wrap around view. stacked will render the two right eye view on the upper half
of the display and the left eye on the lower half. anaglyph supports red-cyan stereo
viewing glasses. Note that setting an unsupported view option will often lead to BZFlag
not running successfully. To correct this, run with -view normal.
-window widthxheight
Runs the application in a window instead of full screen. Specify the width and height of
the window after the option.
-zbuffer {on | off}
When off is chosen the game will not attempt to allocate a depth (z) buffer and will use a
different rendering technique for hidden surface removal. Some systems may be capable of
using a higher screen resolution if a depth buffer isn't allocated.
[callsign[:password]@]server[:port]
Specifies the callsign you want, and the host running the bzfs server. Multiple
independent games can be run on a single network, or even on different ports on a single
computer. Which server and port you choose decides which game you enter. The callsign and
the port are optional. If you don't specify a port the standard server port will be used,
and if you don't specify a callsign the callsign used for the previous game is used. If
that cannot be found then bzflag will prompt for a callsign when joining a game.
Controls
Tanks are controlled by moving the mouse within the large yellow box in the main view. When the mouse is
inside the small yellow box, the tank is motionless. The large box is the limit of the tank's speed.
Shots are fired by pressing the R left mouse button . The type of shot fired depends on what flag the
tank has. Normal shots last about 3.5 seconds. Reloading also takes 3.5 seconds for normal shots.
Pressing the R middle mouse button drops a flag. Nothing will happen if the tank has no flag or is not
allowed to drop the flag for some reason (e.g. it's a bad flag). Flags are picked up by driving over
them. A dropped flag gets tossed straight up; it falls to the ground in about 3 seconds.
Pressing the R right mouse button identifies the closest player centered in the view. If your tank has
the guided missile super-flag, this will also lock the missile on target. However, the target must be
carefully centered for the missile to lock.
When the server allows jumping or if the tank has the jumping flag, the R Tab key jumps. Tanks can jump
onto buildings, however there is no way to shoot downward (or upward) with a regular shot. The guided
missile and the shock wave are two ways of destroying a tank on or from a building.
The current radar range can be changed by pressing the R 1, R 2, or R 3 keys above the alphabetic keys
for low, medium, and long range, respectively. The R f key toggles the flag help display, which
describes the flag in the tank's possession. Displaying help does not pause the game.
The R Pause key pauses and resumes play. When paused, the tank cannot be destroyed nor can its shots
destroy other players. The reload countdown is suspended and the radar and view are blanked when paused.
A paused tank has a transparent black sphere surrounding it. Since a paused tank is invulnerable a
player could cheat by pausing just before being destroyed, so there's a brief delay before the pause
takes effect. This delay is long enough to make pausing effectively useless for cheating. Pressing R
Pause before the pause takes effect cancels the pause request.
The R Delete key initiates a self destruct sequence. You will see a countdown that can be stopped by
pressing R Delete once more. Otherwise, you tank will self destruct. This can be useful if your tank gets
stuck and there is no other tank around to shoot you.
The list of players and scores is displayed when your tank is paused or dead. Pressing the R s key
toggles the score display when alive and not paused.
The R b key toggles binoculars, which gives a close up view of distant objects. The R 9 key toggles
Otto, the automatic pilot, on and off. R t key toggles the frame rate display and the R y key toggle the
frame time display. The time of day can be changed with the R plus and R minus keys, which advance and
reverse the time by 5 minutes, respectively. The time of day in the game is initialized to the system's
clock. In addition, the latitude and longitude are used to calculate the positions of celestial objects.
The R Esc key shows the game menu. Use the R Enter and arrow keys to navigate the menu and the R Esc key
to return to the previous menu or hide the main menu. The menus allow you to start a new server, join a
game, leave a game and enter another, change the rendering options, change the display resolution, change
the sound volume, remap the meanings of keys, browse online help, and quit the game.
The display resolution is not always available for changing. If it is, use the R t key to test a
selected resolution; it will be loaded for a few seconds and then the previous resolution restored.
Press the R Enter key to permanently select a new resolution. When you quit the game, the resolution is
restored to what it was before the game started.
Options are recorded between game sessions in the .bzf/<version>/config.cfg file in the user's home
directory. This file has a simple name/value pair format. This file is completely rewritten by the game
after each session.
You can send typed messages to other players by pressing the R m or R n keys. The R m key will send a
message to your teammates only. Rogue players cannot send these messages. The R n key will send a
message to all the other players. After pressing the key, just type your message and press enter or
Control-D. To cancel a message, you can enter a blank message or press Delete, Escape, or Control-C. Be
careful with the Escape key; pressing Escape once will cancel the message, pressing it again will show
the main menu. Backspace will delete the most recently typed character. The Tab key doesn't add a tab
to the message but instead causes the tank to jump (as usual). You can also send a direct message to a
single player by pressing the R , or R . keys. The R , key will send your message to your 'nemesis',
i.e. the last player who killed you or was killed by you. The R . key will send a private message to
another player. You can choose the recipient by using the left and right arrow keys. R o toggles the
quick-admin interface. Use the arrow keys to select a command, and then fill in the necessary parameters
Scoring
An individual's score is the difference between that player's wins and losses. A win is scored for each
enemy tank destroyed. A loss is scored for each teammate destroyed and for each time the player is
destroyed. The score sheet displays each player's score and the number of wins and losses.
A team's score is calculated differently depending on the game style. In the capture-the-flag style, the
team score is the number of enemy flags captured minus the number of times the team's flag was captured.
Capturing your own flag (by taking it onto an enemy base) counts as a loss. In the free-for-all style,
the team score is sum of the wins of all the players on the team minus the sum of the losses of all the
players on the team. In the rabbit-chase style, scoring is similar to free-for-all.
The score sheet also lists the number times you have destroyed or been destroyed by each other player
under the Kills heading. This lets you compare your one-on-one performance against other players.
Teleporters
The server can be configured to place teleporters in the game. A teleporter is a tall black transparent
object that instantaneously moves any object (tanks and shots) passing through it to some other
teleporter. The teleporter connections are fixed for the entire game. In the capture-the-flag style the
connections are always the same. In the free-for-all style the connections are random and reversible
(going back through where you come out puts you back where you started).
Each side of a teleporter teleports independently of the other side. However, it's possible for each
side to go to the other. This is a through-teleporter and it's almost as if it weren't there. It's also
possible for a side to teleport to itself. This is a reverse-teleporter. Shooting at a reverse
teleporter is likely to be self-destructive. Shooting a laser at a reverse teleporter is invariably
fatal.
Radar
The radar is displayed on the left side of the control panel. It provides a satellite view of the game.
Buildings and the outer wall are light blue. Team bases are outlined squares in the team colors.
Teleporters are short yellow lines. Tanks are dots the in the tank's team color, except for rogues which
are yellow. The size of a tank's dot is a rough indication of the tank's altitude: higher tanks have
larger dots. Flags are small crosses. Team flags have the team color while super-flags are white.
Shots are small white dots (except laser beams which are line segments and shock waves which are
circles).
The tank always appears in the center of the radar and the radar display rotates with the tank so that
forward is always up. There's a small tick mark indicating forward. The left and right extremes of the
current view are represented by a yellow V whose tip is at the center of the radar. North is indicated
by the letter N.
Heads Up Display
The heads-up-display, or HUD, has several displays. First, there are two boxes in the center of the
view. As explained above, these delimit the ranges for the mouse. These boxes are yellow when you have
no flag. Otherwise they take the color of the flag you're holding (white for superflags).
Above the larger box is a heading tape showing your current heading. North is 0, east is 90, etc. If
jumping is allowed, an altitude tape appears to the right of the larger box.
Small colored diamonds or arrows may appear on the heading tape. An arrow pointing left means that a
particular flag is to your left, an arrow pointing right means that the flag is to your right, and a
diamond indicates the heading to the flag by its position on the heading tape. In capture-the-flag mode
a marker in your team's color is always present, showing you the direction to your team's flag. A yellow
marker shows the way to the antidote flag (when you have a bad flag and antidote flags are enabled).
At the top of the HUD are several text readouts. At the very top on the left is your callsign and score,
in your team's color. At the very top on the right is the name of the flag you're holding (or nothing if
you have no flag). In the center at the top is your current status: ready, dead, sealed, zoned, or
reloading. If you have a bad flag and shaking time is enabled and your status is ready, the status
displays how much time is left before the bad flag is shaken. When reloading, the time until you're
reloaded is displayed. A tank is sealed when it has the oscillation overthruster flag and any part of
the tank is inside a building. A tank is zoned when it has the phantom zone flag and has passed through a
teleporter. When there's a time limit on the game, the time left in the game is displayed to the left of
the status.
Flags
Team flags are supplied by the server in the capture-the-flag style game. While at least one player is
on a team, that team's flag is in the game. When captured, the flag is returned to the team's base. If
the flag is dropped in a Bad Place, it is moved to a safety position. Bad Places are: on top of a
building or on an enemy team base. The flag can be dropped on a team base only by a player from a third
team; for example, when a blue player drops the red flag on the green base.
A team flag is captured when a tank takes an enemy flag onto its base or when a tank takes its flag onto
an enemy base (even if there's no one playing on that team). You must be on the ground to capture a
flag.
The server can be configured to supply a fixed or random set of super-flags. These flags are white and
come in many flavors. However, you cannot tell what a super-flag is until it's picked up. There are two
broad categories of super-flags: good and bad. Good super-flags may be dropped and will remain for up
to 4 possessions. Bad super-flags are sticky -- in general, they cannot be dropped. The server may
provide a yellow antidote flag. Driving over it will release the bad flag. The server may also allow a
timeout and/or a number of wins to shake the flag. Scoring the required number of wins, surviving the
required amount of time or being destroyed will automatically drop the flag. Bad flags disappear after
the first possession.
Here is a brief description of each good superflag with the flag's code in parentheses:
High Speed (V) Boosts top speed by 50%.
Quick Turn (QT)
Boosts turn rate by 50%.
Agility (A) Improves a tank's dodging capabilities.
Oscillation Overthruster (OO)
Let's the tank go through buildings. You cannot back up in or into a building, nor can
you shoot while inside.
Rapid Fire (F) Increases shot speed and decreases range and reload delay.
Machine Gun (MG)
Increases shot speed and dramatically decreases range and reload delay.
Guided Missile (GM)
Shots guide themselves when locked on. The missile can be retargeted at any time during
its flight (with the right mouse button). This allows the player some control over the
missile's steering.
Laser (L) Shoots a laser, with effectively infinite speed and range. Just point and shoot. The
binoculars are handy for lining up distant targets. The downside (you knew it was coming)
is that the reload time is doubled.
Ricochet (R) Shots reflect off walls. It is exceptionally easy to kill yourself with this flag.
Super Bullet (SB)
Shots can go through buildings (possibly destroying a tank with the oscillation
overthruster flag) and can also destroy (phantom) zoned tanks.
Stealth (ST) Tank becomes invisible on radar but is still visible out-the-window.
Cloaking (CL) Tank becomes invisible out-the-window but is still visible on radar.
Invisible Bullet (IB)
Shots are invisible on radar (except your own). They are visible out-the-window. Sort of
stealth for shots.
Tiny (T) Tank becomes much smaller and harder to hit.
Narrow (N) Tank becomes paper thin. It's very hard (but not impossible) to hit a narrow tank from
the front or back. However, the tank is as long as usual so hitting it from the side has
normal difficulty.
Shield (SH) Getting shot while in possession of this flag simply drops the flag (instead of destroying
the tank). Since the flag may not disappear you may want to wait around for it to fall to
the ground so you can grab it again, but, be warned, the shield flag flies for an extra
long time (longer than the normal reload time).
Steamroller (SR)
Tank can destroy other tanks by driving over them (but you must get quite close).
Shock Wave (SW)
Tank doesn't fire shells. Instead it sends out a shock wave in all directions. Any tank
caught in the wave is destroyed (including tanks on or in buildings).
Phantom Zone (PZ)
Driving through a teleporter phantom zones the tank. A zoned tank cannot shoot, but can
drive through buildings and cannot be destroyed except by a Super Bullet or a Shock Wave
(or if the team's flag is captured).
Genocide (G) Destroying any tank on a team destroys every player on that team.
Jumping (JP) Allows the tank to jump. You cannot steer while in the air.
Identify (ID) Displays the identity of the closest flag in the vicinity.
Masquerade (MQ)
You tank looks like a teammate when viewed out of the window. Bullets, radar and
targeting reveal your true identity.
Burrow {BU} You tank burrows into the ground up to your muzzle, making you impervious to normal shots,
as they sail above you. However your tank controls are sluggish, and anyone, no matter
what flag they have, can crush you like.
Seer (SE) See Stealthed, Cloaked and Masqueraded tanks as normal, as well as Invisible Bullets.
Thief (TH) Tank is small and fast, when you shoot an opponent, he is not killed, but instead, you
steal his flag.
Useless (US) It's useless!
Wings (WG) Tank can drive around in the air, and may be able to jump multiple times. This can be
useful when jumping or falling.
A brief description of each bad superflag with the flag's code in parentheses:
Colorblindness (CB)
Prevents tank from seeing any team information about other tanks. You have to be careful
to avoid shooting teammates.
Obesity (O) The tank becomes very large and easy to hit. It's so big that it can't fit through
teleporters.
Left Turn Only (<-)
Prevents the tank from turning right.
Right Turn Only (->)
Prevents the tank from turning left.
Forward Only (FO)
Prevents the tank from going backwards.
Reverse Only (RO)
Prevents the tank from going forward.
Momentum (M) Gives the tank a lot of inertia.
Blindness (B) Blanks the out-the-window view. The radar still works. It is effectively impossible to
detect any tank with Stealth; shooting a Stealth with Blindness is the stuff legends are
made of.
Jamming (JM) Disables the radar but you can still see.
Wide Angle (WA)
Gives the tank a fish eye lens that's rather disorienting.
No Jumping (NJ)
Tank is not allowed to jump.
Trigger Happy (TR)
Tank can't stop shooting. Watch out for that ricochet.
Reverse Controls (RC)
Tank driving controls are reversed from their usual behavior.
Observing
If a server is full or if you just want to watch a battle without interfering in it, you can use the
observer mode. To join a server as an observer, select R Observer as your tank's team. The maximum number
of observers can be restricted by the server admin, so you might still not be able to join a full server.
When in observer mode, you can freely roam the world. Using the arrow keys you can rotate the camera in
every direction. Holding shift and using the arrow keys moves the camera left, right, forward or back.
Pressing the up or down arrow while holding the R ALT key will change the camera's altitude. The R F9 and
R F10 keys change the camera's focal lengths, giving a zoom effect. The R F11 key will reset the zoom.
Pressing R l lets you toggle the display of tank labels.
Repeatedly pressing R F8 cycles through different roaming modes: free, tracking, following, first person
(driving with) and tracking team flag. In tracking mode, the camera will automatically look at a tank.
You can cycle through available tanks with the R F6 and R F7 keys. In follow mode, the camera is
positioned right behind the targeted tank, whereas you actually look from within the tank when using
first person mode. The last mode, track team flag is only available in capture-the-flag games and will
track the team flags. Again, use R F6 and R F7 to choose which flag to track. One special option that can
be used with follow, tracking, and first person modes is that you can choose to do it with the winning
tank. This is selected by cycling through the tanks until you see the winner option. In this mode, you
will always be engaged with whoever has the best score (and is alive). The default is drive with winner
mode.
User Commands
The following commands can be executed by sending a message to all and using these strings as the message
/bind key press action
Bind a key press to an action. press can be up, down or both
/cmds Show a list of all client and server commands
/debug [level] Show or set the debug level to level
/diff List all BZDB server variables that are not set to the default value
/dumpvars Dump a list of all local variables and their values to the standard output
/forceradar Force the radar to be displayed (only works for observers)
/highlight pattern
Highlight all messages containing pattern on the console
/localset variable [value]
Read a local variable or set it to value
/quit Exit the game
/retexture Reload the textures of the game
/roampos {reset|send|angle|x y z [theta [phi [zoom]]]}
Manipulate the observer camera (only useful in Roaming and Tracking modes). Without
arguments, it shows a usage message and the current camera location. reset resets the
camera's location to the center of the map and send sends information about the camera to
the server. angle moves the camera outside the map at a certain angle, looking towards its
center. x, y and z are used to set the camera's location, theta defines the camera's
horizontal angle, phi defines its vertical angle and zoom sets the camera's zoom level.
All angles are defined in degrees.
/savemsgs [-s] [-t]
Save all messages to a file in your config directory. If -s is provided, coloring data are
stripped. If -t is provided, timestamps are added to the messages.
/saveworld [-g] [-m] [-o] filename
Save the current world to filename. Specify -g to prevent the creation of groups, -m to
save some primitives as meshes and -o to create a WaveFront OBJ file instead of a BZW one.
/silence playerName
Do not display any message coming from player with playerName name
/unsilence playerName
Reshow messages coming from player with playerName name
FILES
~/.bzf/<version>/config.cfg
Stores options between game sessions.
SEE ALSO
bzadmin(6), bzfs(6), bzw(5)
BZFlag 2.4.26 2024-04-16 BZFLAG(6)