This wiki was in read-only mode for many years, but can now be edited again. A lot of information will need to be updated.

Sample conf: Difference between revisions

From BZFlagWiki
Jump to navigation Jump to search
Tanner (talk | contribs)
m CTF wrong.
Zehra (talk | contribs)
update
 
(27 intermediate revisions by 14 users not shown)
Line 1: Line 1:
<pre>
<pre>
<nowiki>#</nowiki> This is a BZFlag Server (bzfs) configuration file.
# This is a BZFlag Server (bzfs) configuration file.
<nowiki>#</nowiki> It assumes that you wish to connect to the bzflag list server.
# It assumes that you wish to connect to the bzflag list server.
<nowiki>#</nowiki> Please read through it carefully.  Lines starting with a <nowiki>#</nowiki> are comments.
# Please read through it carefully.  Lines starting with a # are comments.
<nowiki>#</nowiki> to enable an option, remove the <nowiki>#</nowiki> at the beginning of a line.  To
# to enable an option, remove the # at the beginning of a line.  To
<nowiki>#</nowiki> disable that option, put the <nowiki>#</nowiki> back.  There are some examples in this
# disable that option, put the # back.  There are some examples in this
<nowiki>#</nowiki> file.  Make sure you change the examples if you uncomment the line.  If
# file.  Make sure you change the examples if you uncomment the line.  If
<nowiki>#</nowiki> you don't know what something does, you are okay to just leave
# you don't know what something does, you are okay to just leave
<nowiki>#</nowiki> it commented out.  Failure to read through this file (looking for
# it commented out.  Failure to read through this file (looking for
<nowiki>#</nowiki> already uncommented lines) might be a little embarrassing. Have fun.
# already uncommented lines) might be a little embarrassing. Have fun.






<nowiki>#</nowiki> This option is for debug.  You can have as many as 4 of them.
# This option is for debug.  You can have as many as 4 of them.
<nowiki>#</nowiki> simple debug
# simple debug
<nowiki>#</nowiki>-d
#-d
<nowiki>#</nowiki> and more complex debugging.
# and more complex debugging.
-dd
-dd
<nowiki>#</nowiki>-ddd
#-ddd
<nowiki>#</nowiki>-dddd
#-dddd


<nowiki>#</nowiki> Sets the admin password for the server. It is necessary for server  
# Sets the admin password for the server. It is necessary for server  
<nowiki>#</nowiki> administration if no groups are used.
# administration if no groups are used.
<nowiki>#</nowiki> CHANGE THIS!
# CHANGE THIS!
-password abcdef
#-password abcdef


<nowiki>#</nowiki> Enables inertia and sets the maximum linear and angular accelerations.
# Enables inertia and sets the maximum linear and angular accelerations.
<nowiki>#</nowiki> The units are somewhat arbitrary so you'll have to experiment to find
# The units are somewhat arbitrary so you'll have to experiment to find
<nowiki>#</nowiki> suitable values.  The values must be non-negative and higher values
# suitable values.  The values must be non-negative and higher values
<nowiki>#</nowiki> yield greater inertia.
# yield greater inertia.
<nowiki>#</nowiki> Used to control "Mouse Enhancements"
# Used to control "Mouse Enhancements"
-a 50 38
-a 50 38




<nowiki>#</nowiki><nowiki>#</nowiki> World <nowiki>#</nowiki><nowiki>#</nowiki>
## World ##


<nowiki>#</nowiki> This specifies the world filename.
# This specifies the world filename.
<nowiki>#</nowiki> Use this format for Windows
# Use this format for Windows
<nowiki>#</nowiki>-world "c:\mymaps\louschurchyard.bzw"
#-world "c:\mymaps\louschurchyard.bzw"
<nowiki>#</nowiki> Use this format for *nix and Mac
# Use this format for *nix and Mac
<nowiki>#</nowiki>-world /users/noob/lousdesktop.bzw
#-world /users/noob/lousdesktop.bzw




<nowiki>#</nowiki><nowiki>#</nowiki> Random World Generation <nowiki>#</nowiki><nowiki>#</nowiki>
## Random World Generation ##


<nowiki>#</nowiki> This option allows world objects to be randomly rotated. Only applies
# This option allows world objects to be randomly rotated. Only applies
<nowiki>#</nowiki> if a randomly generated world is used.
# if a randomly generated world is used.
<nowiki>#</nowiki>-b
#-b


<nowiki>#</nowiki> Enables capture-the-flag style game with a balanced random map. Default is
# Enables capture-the-flag style game with a balanced random map.  
<nowiki>#</nowiki> free-for-all style game.
# Default is free-for-all style game.
<nowiki>#</nowiki>-c
#-cr


<nowiki>#</nowiki> Adds teleporters to the game. for random maps only
# Adds teleporters to the game. for random maps only
<nowiki>#</nowiki>-t
#-t


<nowiki>#</nowiki> This option controls the building density on random worlds(1-10) default is 5
# This option controls the building density on random worlds(1-10)  
<nowiki>#</nowiki>-density 7
# Default is 5
#-density 7


<nowiki>#</nowiki> This option changes the size of random maps.
# This option changes the size of random maps.
<nowiki>#</nowiki>-worldsize 800
#-worldsize 800


<nowiki>#</nowiki> This option gives buildings random heights.  This is used when
# This option gives buildings random heights.  This is used when
<nowiki>#</nowiki> you are using random maps.
# you are using random maps.
<nowiki>#</nowiki>-h
#-h




<nowiki>#</nowiki><nowiki>#</nowiki> Game Styles <nowiki>#</nowiki><nowiki>#</nowiki>
## Game Styles ##


<nowiki>#</nowiki> This enables capture-the-flag style game. Default is free-for-all style.
# This enables capture-the-flag style game. Default is free-for-all style.
<nowiki>#</nowiki> Requires one base object for each team to be specified in the world file.
# Requires one base object for each team to be specified in the world file.
<nowiki>#</nowiki> Can be used with random world generation.
# Can be used with random world generation.
<nowiki>#</nowiki>-c
#-c


<nowiki>#</nowiki> More than one team-flag may be specified.  
# More than one team-flag may be specified.  
<nowiki>#</nowiki> This is generally not desirable.
# This is generally not desirable.
<nowiki>#</nowiki> B* - Blue Team  G* - Green Team, P* - Purple Team,  R* - Red Team,
# B* - Blue Team  G* - Green Team, P* - Purple Team,  R* - Red Team,
<nowiki>#</nowiki>+f B*
#+f B*
<nowiki>#</nowiki>+f R*
#+f B*


<nowiki>#</nowiki> This sets the maximum number of shots before a reload.  The default
# This sets the maximum number of shots before a reload.   
<nowiki>#</nowiki> is 5.
# Default is 5.
-ms 3
-ms 3


<nowiki>#</nowiki> This makes most shots ricochet.
# This makes most shots ricochet.
+r
+r


<nowiki>#</nowiki> This option allows jumping.
# This option allows jumping.
-j
-j


<nowiki>#</nowiki> These two flags can be used if they are not specified as options.
# These two flags can be used if they are not specified as options.
<nowiki>#</nowiki> +f R{1} <nowiki>#</nowiki> Ricochet
# +f R{1} # Ricochet
<nowiki>#</nowiki> +f J{1} <nowiki>#</nowiki> Jumping  
# +f J{1} # Jumping  


<nowiki>#</nowiki> This option allows for flags on box buildings.
# This option allows for flags on box buildings.
<nowiki>#</nowiki>-fb
#-fb


<nowiki>#</nowiki> This option allows tanks to spawn on buildings. This is especially useful
# This option allows tanks to spawn on buildings. This is especially useful
<nowiki>#</nowiki> as tank spawn locations are now are calculated on the server without the
# as tank spawn locations are calculated on the server without the
<nowiki>#</nowiki> advantage of knowing where shots are.
# advantage of knowing where shots are.
<nowiki>#</nowiki>-sb
#-sb


<nowiki>#</nowiki> By default if a player kills a teammate, he dies too, this option turns this
# By default if a player kills a teammate, he dies too, this option turns this
<nowiki>#</nowiki> off.  Used mostly for capture the flag style games.
# off.  Used mostly for capture the flag style games.
<nowiki>#</nowiki>-tk
#-tk


<nowiki>#</nowiki> Kick a player if his ratio of teammate to non-teammate kills is this
# Announce team kills to the admin channel.
<nowiki>#</nowiki> percentage or greater.
#-tkannounce
 
# Kick a player if his ratio of teammate to non-teammate kills is this
# percentage or greater.
-tkkr 32
-tkkr 32


<nowiki>#</nowiki> This option allows you to tell the server how long a team flag remains
# This option allows you to tell the server how long a team flag remains
<nowiki>#</nowiki> before it is reset after the last player on a team leaves.  The default
# before it is reset after the last player on a team leaves.   
<nowiki>#</nowiki> is 30 seconds.
# Default is 30 seconds.
<nowiki>#</nowiki>-tftimeout 60
#-tftimeout 60
 
# Hunt the rabbit game is activated with this option. 
# Use only one of these options.
# Choose rabbit based on score.
#-rabbit score
# Rabbit is chosen by whoever kills the rabbit.
#-rabbit killer
# Or you can choose the rabbit randomly.
#-rabbit random


<nowiki>#</nowiki> Hunt the rabbit game is activated with this option.
# Open Free For All game is a teamless free-for-all game style. There are no
<nowiki>#</nowiki> Use only one of these options.
# teams, regardless of colors.
<nowiki>#</nowiki> Choose rabbit based on score.
# Don't combine this with -c, -cr or -rabbit
<nowiki>#</nowiki>-rabbit score
#-offa
<nowiki>#</nowiki> Rabbit is chosen by whoever kills the rabbit.
<nowiki>#</nowiki>-rabbit killer
<nowiki>#</nowiki> Or you can choose the rabbit randomly.
<nowiki>#</nowiki>-rabbit random


<nowiki>#</nowiki> It is possible to restrict bots and autopilot from being used on the server.
# It is possible to restrict bots and autopilot from being used on the server.
<nowiki>#</nowiki> This is accomplished with the following.
# This is accomplished with the following.
<nowiki>#</nowiki>-disableBots
#-disableBots


<nowiki>#</nowiki> This option causes the server to quit after serving one game.  This is
# This option causes the server to quit after serving one game.  This is
<nowiki>#</nowiki> handy if you want to do a timed game, or script a rotating server.
# handy if you want to do a timed game, or script a rotating server.
<nowiki>#</nowiki>-g
#-g


<nowiki>#</nowiki> This option sets the max score for players.  The game ends when a person
# This option sets the max score for players.  The game ends when a player
<nowiki>#</nowiki> reaches this score and is declared the winner.
# reaches this score and is declared the winner.
<nowiki>#</nowiki>-mps 100
#-mps 100


<nowiki>#</nowiki> This sets the max team score.  The first team to reach this score is
# This sets the max team score.  The first team to reach this score is
<nowiki>#</nowiki> declared the winner and the game is ended.
# declared the winner and the game is ended.
<nowiki>#</nowiki>-mts 250
#-mts 250


<nowiki>#</nowiki> This dumps the score to console when it changes.
# This dumps the score to console when it changes.
<nowiki>#</nowiki>-printscore
#-printscore


<nowiki>#</nowiki> This sets time limit (in seconds) for the game.  Time starts when first
# This sets time limit (in seconds) for the game.  Time starts when first
<nowiki>#</nowiki> client connects.
# client connects.
<nowiki>#</nowiki>-time 3600
#-time 3600


<nowiki>#</nowiki> This option requires a timed game to be started using the /countdown
# This option requires a timed game to be started using the /countdown
<nowiki>#</nowiki> command to start a timed game.  Default is when first player joins.
# command to start a timed game.  Default is when first player joins.
<nowiki>#</nowiki>-timemanual
#-timemanual




<nowiki>#</nowiki><nowiki>#</nowiki> List server Connection <nowiki>#</nowiki><nowiki>#</nowiki>
## List server Connection ##


<nowiki>#</nowiki> This is the public message that the server advertises on the public
# This is the public message that the server advertises on the public
<nowiki>#</nowiki> server list.  This is required if you want to be shown on the list.
# server list.  This is required if you want to be shown on the list.
<nowiki>#</nowiki> It often advertises the map you are using.  Keep it short.
# It often advertises the map you are using.  Keep it short.
-public "Noo BZFlag Server With Random Map"
-publictitle "Noo BZFlag Server With Random Map"


<nowiki>#</nowiki> This is also needed to be listed on the public server list.  The
# This is also needed to be listed on the public server list.  The
<nowiki>#</nowiki> address needs to be valid in DNS. It's your IP, plus port number.
# address needs to be valid in DNS. It's your IP, plus port number.
-publicaddr 123.456.789.000:5154
-publicaddr 123.456.789.000:5154


<nowiki>#</nowiki> The server will listen on this port.  Default port is 5154.
# You need a public key to get your server listed on the official
# listserver. Read here how to get one:
# http://wiki.bzflag.org/ServerAuthentication
-publickey XXXXXXXXXXXX
 
# The server will listen on this port.  Default port is 5154.
-p 5154
-p 5154


<nowiki>#</nowiki> Tells server not to respond to "pings". This makes the server private.
# Tells server not to respond to "pings". This makes the server private.
<nowiki>#</nowiki> You should remove -public and -publicaddr when using it.
# You should remove -public and -publicaddr when using it.
<nowiki>#</nowiki> If your router is open, you can still give people your IP and port, and   
# If your router is open, you can still give people your IP and port, and   
<nowiki>#</nowiki> they will be able to connect, you just wont be on the list.
# they will be able to connect, you just wont be on the list.
<nowiki>#</nowiki>-q
#-q


<nowiki>#</nowiki> You probably don't need to use this, but it is there if you do.  This
# You probably don't need to use this, but it is there if you do.  This
<nowiki>#</nowiki> specifies where the server advertises itself.  The built-in default
# specifies where the server advertises itself.  The built-in default
<nowiki>#</nowiki> should work just fine.  You need to hunt down the proper address if
# should work just fine.  You need to hunt down the proper address if
<nowiki>#</nowiki> it doesn't work. DON'T Change It
# it doesn't work. DON'T Change It
<nowiki>#</nowiki>-publiclist <list-server-url>
#-publiclist <list-server-url>


<nowiki>#</nowiki> Server will listen for and respond to "pings" (sent via broadcast) on
# Server will listen for and respond to "pings" (sent via broadcast) on
<nowiki>#</nowiki> the given interface.  The server uses the first interface by default.
# the given interface.  The server uses the first interface by default.
<nowiki>#</nowiki> This is the TCP/UDP/IP address the server will listen on.
# This is the TCP/UDP/IP address the server will listen on.
<nowiki>#</nowiki> You don't need to use this unless your server has multiple
# You don't need to use this unless your server has multiple
<nowiki>#</nowiki> interfaces and doesn't show up on the server lists.
# interfaces and doesn't show up on the server lists.
<nowiki>#</nowiki>-i 123.456.789.000
#-i 123.456.789.000




<nowiki>#</nowiki><nowiki>#</nowiki> Player Connections <nowiki>#</nowiki><nowiki>#</nowiki>
## Player Connections ##


<nowiki>#</nowiki> Automatically assigns players to teams when they join so that teams are
# Automatically assigns players to teams when they join so that teams are
<nowiki>#</nowiki> evenly matched in number of players.  Players are placed on teams with
# evenly matched in number of players.  Players are placed on teams with
<nowiki>#</nowiki> lowest number of players first, then those with the lowest scores or
# lowest number of players first, then those with the lowest scores or
<nowiki>#</nowiki> kill ratios.
# kill ratios.
-autoTeam
-autoTeam


<nowiki>#</nowiki> This sets the max number of players.  It can be done in 2 ways.  A flat
# This sets the max number of players.  It can be done in 2 ways.  A flat
<nowiki>#</nowiki> count of players, or by number of players on a given team.
# count of players, or by number of players on a given team.
<nowiki>#</nowiki> This allows up to 50 players, no team limits.
# This allows up to 50 players, no team limits.
<nowiki>#</nowiki> Typical home DSL connections max out at 12 players before lag begins.
# Typical home DSL connections max out at 12 players before lag begins.
<nowiki>#</nowiki> Lag equals players times shots. So a one-shot server could have more  
# Lag equals players times shots. So a one-shot server could have more  
<nowiki>#</nowiki> players, and vice-versa.  
# players, and vice-versa.  
-mp 12
-mp 12


<nowiki>#</nowiki> This allows for max player by team.
# This allows for max player by team.
<nowiki>#</nowiki> The order is rogue, red, green, blue, purple, observer.
# The order is rogue, red, green, blue, purple, observer.
<nowiki>#</nowiki>-mp 3,3,3,3,3,3
#-mp 3,3,3,3,3,3
 
# userdb can be used to map users to local groups. In most cases you can
# probably live without this. Consider using global groups instead.
#-userdb /path/to/users.txt
 
# If you use the BZFlag forums at http://my.bzflag.org/bb
# and have established groups there, you only need groupdb
# Though local registrations can also be used.
# groupdb stores group to permission mappings.
#-groupdb /path/to/groups.txt
 
# If you have registered groups at the bzbb forums, only players
# in this group will see your server in the list.
#-advertise NOOB.COP
 
# This option kicks the user after they have been idle for a number of
# seconds. Idle means paused, not-spawning or not-responding. 
-maxidle 300


<nowiki>#</nowiki> This requires clients to use UDP (a good thing). This will generally
# Set to not use a UDP connection for players. You typically do NOT want to
<nowiki>#</nowiki> make the server behave better, and make play more smooth.
# do this (UDP is good!)
<nowiki>#</nowiki> It will kick players who are unable to establish a UDP connection
#-noudp
<nowiki>#</nowiki> when they attempt to fire.
-requireudp


<nowiki>#</nowiki> Set to not use a UDP connection for players. You typically do NOT want to
# Define a lag threshold over which players with high lag will be
<nowiki>#</nowiki> do this (UDP is good!)
# announced to the admin channel.
<nowiki>#</nowiki>-noudp
#-adminlagannounce 300


<nowiki>#</nowiki> This option warns the user their lag is too high when it crosses the
# Define a threshold over which players with high lag will be announced.
<nowiki>#</nowiki> number of milliseconds set.
#-lagannounce 400
 
# This option warns the user their lag is too high when it crosses the
# number of milliseconds set.
-lagwarn 350
-lagwarn 350


<nowiki>#</nowiki> This option kicks players after they have been warned about high lag for
# This option kicks players after they have been warned about high lag for
<nowiki>#</nowiki> a certain number of times.
# a certain number of times.
-lagdrop 3
-lagdrop 3


<nowiki>#</nowiki> This option kicks the user after they have been idle for a number of  
# Packetloss and Jitter are two different things.
<nowiki>#</nowiki> seconds. Idle means paused, not-spawning or not-responding.
# Packetloss is a percentage of total data being completely lost.
-maxidle 300
# A player with packetloss is usually downloading files, switching
# between applications, or simply has a bad connection.
# Jitter is variation in the time between packets arriving, caused by network
#  congestion, timing drift, or route changes.
# A player with jitter may be purposely manipulating his lag to avoid
# being shot, or to "lag through a wall".
# These next four functions should be used with caution, slower servers
# may wish to avoid using them altogether.
# This option warns the user their packet loss is too high.
#-packetlosswarn 4
 
# This option kicks players after they have been warned about packet loss
# a certain number of times.
#-packetlossdrop 2
 
# This option warns the user their jitter is too high when it crosses
# the number of milliseconds set.  
# -jitterwarn 25
 
# This option kicks players after they have been warned about high
# jitter for a certain number of times.
# -jitterdrop 3


<nowiki>#</nowiki> This option sets up your ban list. This is ip masks separated by commas.
# This option tells the server where to store the ban list. The ban list will
<nowiki>#</nowiki> The * character is used as a wild card in range bans.  
# be loaded from this file when the server starts (if the file exists) and
<nowiki>#</nowiki>-ban "192.168.1.5,10.10.2.*,10.2.*.*"
# written back to the file when someone gets banned or unbanned. If this
# option isn't used the ban list will not be saved.
#-banfile /path/to/mybanfile.txt


<nowiki>#</nowiki> This option tells the server where to store the ban list. The ban list will
# This option sets up your ban list. This is ip masks separated by commas.
<nowiki>#</nowiki> be loaded from this file when the server starts (if the file exists) and
# The * character is used as a wild card in range bans.  
<nowiki>#</nowiki> written back to the file when someone gets banned or unbanned. If this
#-ban "192.168.1.5,10.10.2.*,10.2.*.*"
<nowiki>#</nowiki> option isn't used the ban list will not be saved.
<nowiki>#</nowiki>-banfile /path/to/mybanfile.txt


<nowiki>#</nowiki> Registered player files which will be loaded on startup.
<nowiki>#</nowiki> Use all three if you are not connecting to the list server.
<nowiki>#</nowiki> Players can use /register passwd and  /identify passwd
<nowiki>#</nowiki> to  confirm their identities.
<nowiki>#</nowiki> passdb stores local user password mappings.
<nowiki>#</nowiki>-passdb /path/to/passes.txt
<nowiki>#</nowiki> userdb stores user to group mappings.
<nowiki>#</nowiki>-userdb /path/to/users.txt


<nowiki>#</nowiki> If you use the BZFlag forums at http://my.bzflag.org/bb
## General Options ##
<nowiki>#</nowiki> and have established groups there, you only need groupdb
<nowiki>#</nowiki> Though local registrations can also be used.
<nowiki>#</nowiki> groupdb stores group to permission mappings.
<nowiki>#</nowiki>-groupdb /path/to/groups.txt


<nowiki>#</nowiki> If you have registered groups at the bzbb forums, only players
# adds timestamps to every line of the log
<nowiki>#</nowiki> in this group will see your server in the list.
#-ts
<nowiki>#</nowiki>-advertise NOOB.COP


# uses UTC for timestamps instead of localtime and implies -ts
#-utc


<nowiki>#</nowiki><nowiki>#</nowiki> General Options <nowiki>#</nowiki><nowiki>#</nowiki>
# -pidfile /path/to/pidfile.txt
# Specify a file where the server will write its process ID so it may be used for remote administration.


<nowiki>#</nowiki> This is the server welcome message.  Please change it.  
# This is the server welcome message.  Please change it.  
-srvmsg " This is a Noo BZFlag Server "
-srvmsg " This is a Noo BZFlag Server "
-srvmsg " Have Fun and Play Nice "
-srvmsg " Have Fun and Play Nice "


<nowiki>#</nowiki> Define a message which will be broadcast to all players every 15 minutes.
# Define a message which will be broadcast to all players every 15 minutes.
-admsg " Noo BZFlag Server "
-admsg " Noo BZFlag Server "
-admsg " BZFlag is Fun "
-admsg " BZFlag is Fun "


<nowiki>#</nowiki> This sets the amount of time in seconds that is required to pass between
# This sets the amount of time in seconds that is required to pass between
<nowiki>#</nowiki> two identical messages sent.
# two identical messages sent.
-spamtime 15
-spamtime 15


<nowiki>#</nowiki> This sets the amount of times to warn spammers (see -spamtime) before they
# This sets the amount of times to warn spammers (see -spamtime) before they
<nowiki>#</nowiki> are kicked.
# are kicked.
-spamwarn 3
-spamwarn 3


<nowiki>#</nowiki> Specify a file that contains bad words that will be used when  
# Specify a file that contains bad words that will be used when  
<nowiki>#</nowiki> either -filterCallsigns or -filterChat is enabled.
# either -filterCallsigns or -filterChat is enabled.
<nowiki>#</nowiki> A multilingual badwords file can be found in source downloads.  
# A multilingual badwords file can be found in source downloads.  
<nowiki>#</nowiki>-badwords /path/to/badwords.txt
#-badwords /path/to/badwords.txt


<nowiki>#</nowiki> Turn on the filtering of chat messages.  Messages have words provided
# Turn on the filtering of chat messages.  Messages have words provided
<nowiki>#</nowiki> via a  -badwords file are replaced with !@<nowiki>#</nowiki>$%^&* characters.
# via a  -badwords file are replaced with !@#$%^&* characters.
<nowiki>#</nowiki>-filterChat
#-filterChat


<nowiki>#</nowiki> Turn on the filtering of callsigns.  Callsigns are compared against
# Turn on the filtering of callsigns.  Callsigns are compared against
<nowiki>#</nowiki> bad words provided via -badwords.
# bad words provided via -badwords.
<nowiki>#</nowiki>-filterCallsigns
#-filterCallsigns


<nowiki>#</nowiki> By default, all filtering is aggressive, matching much more than what
# By default, all filtering is aggressive, matching much more than what
<nowiki>#</nowiki> is strictly listed in a -badwords file for convenience. Providing this
# is strictly listed in a -badwords file for convenience. Providing this
<nowiki>#</nowiki> option will make the -filterCallsigns and -filterChat comparisons
# option will make the -filterCallsigns and -filterChat comparisons
<nowiki>#</nowiki> exact match only.
# exact match only.
<nowiki>#</nowiki>-filterSimple
#-filterSimple


<nowiki>#</nowiki> This forces all clients to use the same time of day.  The time is
# This forces all clients to use the same time of day.  The time is
<nowiki>#</nowiki> determined by the server's clock.  This disables the + and - keys
# determined by the server's clock.  This disables the + and - keys
<nowiki>#</nowiki> on the clients.
# on the clients.
<nowiki>#</nowiki>-synctime
#-synctime






<nowiki>#</nowiki><nowiki>#</nowiki> Player Controlled Functions <nowiki>#</nowiki><nowiki>#</nowiki>
## Player Controlled Functions ##


<nowiki>#</nowiki> This option specifies a help file that will be displayed when the player
# This option specifies a help file that will be displayed when the player
<nowiki>#</nowiki> types /help name   
# types /help name   
<nowiki>#</nowiki> Maximum length is 50 lines and 120 characters per line
# Maximum length is 50 lines and 120 characters per line
<nowiki>#</nowiki>-helpfile shock /path/to/shockwavehelp.txt  
#-helpmsg shock /path/to/shockwavehelp.txt  
<nowiki>#</nowiki>-helpfile noob /path/to/noobhelp.txt
#-helpmsg noob /path/to/noobhelp.txt


<nowiki>#</nowiki> You can specify a file so that people can type /report to report problems
# You can specify a file so that people can type /report to report problems
<nowiki>#</nowiki> on the server.  The reports are logged in this file.
# on the server.  The reports are logged in this file.
<nowiki>#</nowiki>-reportfile /path/to/reports.txt
#-reportfile /path/to/reports.txt


<nowiki>#</nowiki> You can also use this option to cause the /report to trigger a command
# You can also use this option to cause the /report to trigger a command
<nowiki>#</nowiki> as well as, or instead of, logging to a file.
# as well as, or instead of, logging to a file.
<nowiki>#</nowiki>-reportpipe command
#-reportpipe command


<nowiki>#</nowiki> This specifies the number of seconds in which a poll can be vetoed.
# This specifies the number of seconds in which a poll can be vetoed.
<nowiki>#</nowiki>-vetoTime 60
#-vetoTime 60


<nowiki>#</nowiki> This specifies the percentage of people required for a successful vote.
# This specifies the percentage of people required for a successful vote.
<nowiki>#</nowiki>-votePercentage 51
#-votePercentage 51


<nowiki>#</nowiki> This is the number of voters required to hold a poll.
# This is the number of voters required to hold a poll.
<nowiki>#</nowiki>-votesRequired 6
#-votesRequired 6


<nowiki>#</nowiki> This is the length of time that players have to vote.
# This is the length of time that players have to vote.
<nowiki>#</nowiki>-voteTime 60
#-voteTime 60




<nowiki>#</nowiki><nowiki>#</nowiki> Flags <nowiki>#</nowiki><nowiki>#</nowiki>
## Flags ##


<nowiki>#</nowiki> This option allows for antidote flags to be available for players who
# This option allows for antidote flags to be available for players who
<nowiki>#</nowiki> get bad flags.
# get bad flags.
-sa
-sa


<nowiki>#</nowiki> Bad flags are automatically dropped after this many seconds.
# Bad flags are automatically dropped after this many seconds.
-st 5
-st 5


<nowiki>#</nowiki> Bad flags are automatically dropped after this many wins.
# Bad flags are automatically dropped after this many wins.
-sw 1
-sw 1


<nowiki>#</nowiki> This allows you to limit the number of shots from a particular flag.
# This allows you to limit the number of shots from a particular flag.
<nowiki>#</nowiki>-sl GM 20
#-sl GM 20
<nowiki>#</nowiki>-sl L 20
#-sl L 20


<nowiki>#</nowiki> There are two sets of flags. Flags that must be in the world at all times
# There are two sets of flags. Flags that must be in the world at all times
<nowiki>#</nowiki> and flags that may get generated randomly. in addition. +f specifies flags that
# and flags that may get generated randomly. in addition. +f specifies flags that
<nowiki>#</nowiki> must be there and -f specifies flags the should never be generated.
# must be there and -f specifies flags that should never be generated.


<nowiki>#</nowiki> The server will randomly place flags from the following list.  
# The server will randomly place flags from the following list.  
<nowiki>#</nowiki> To be sure there is at least a certain amount of a flag on the map
# To be sure there is at least a certain amount of a flag on the map
<nowiki>#</nowiki> at any given time, you can use the +f option to guarantee a certain
# at any given time, you can use the +f option to guarantee a certain
<nowiki>#</nowiki> number of a flag.
# number of a flag.


<nowiki>#</nowiki> Good Flags
# Good Flags
+f A{2}  <nowiki>#</nowiki> Agility
+f A{2}  #  Agility
+f CL{2} <nowiki>#</nowiki> Cloaking  
+f CL{2} #  Cloaking  
+f F{2}  <nowiki>#</nowiki> rapid Fire
+f F{2}  #  rapid Fire
+f G{1}  <nowiki>#</nowiki> Genocide
+f G{1}  #  Genocide
+f GM{2} <nowiki>#</nowiki> Guided Missile
+f GM{2} #  Guided Missile
+f IB{2} <nowiki>#</nowiki> Invisible Bullett
+f IB{2} #  Invisible Bullett
+f L{2}  <nowiki>#</nowiki> Laser
+f L{2}  #  Laser
+f MG{2} <nowiki>#</nowiki> Machine Gun
+f MG{2} #  Machine Gun
+f N{2}  <nowiki>#</nowiki> Narrow
+f N{2}  #  Narrow
+f OO{2} <nowiki>#</nowiki> Oscillation Overthruster
+f OO{2} #  Oscillation Overthruster
+f PZ{2} <nowiki>#</nowiki> Phantom Zone
+f PZ{2} #  Phantom Zone
+f QT{2} <nowiki>#</nowiki> QuickTurn
+f QT{2} #  QuickTurn
+f SB{2} <nowiki>#</nowiki> Super Bullet
+f SB{2} #  Super Bullet
+f SE{2} <nowiki>#</nowiki> SEer
+f SE{2} #  SEer
+f SH{2} <nowiki>#</nowiki> SHield  
+f SH{2} #  SHield  
+f SR{2} <nowiki>#</nowiki> SteamRoller
+f SR{2} #  SteamRoller
+f ST{2} <nowiki>#</nowiki> Stealth
+f ST{2} #  STealth
+f SW{2} <nowiki>#</nowiki> ShockWave  
+f SW{2} #  ShockWave  
+f T{2}  <nowiki>#</nowiki> Tiny
+f T{2}  #  Tiny
+f TH{2} <nowiki>#</nowiki> THeif
+f TH{2} #  THeif
+f US{2} <nowiki>#</nowiki> USeless
+f US{2} #  USeless
+f V{2}  <nowiki>#</nowiki> Velocity (high speed)
+f V{2}  #  Velocity (high speed)
+f WG{2} <nowiki>#</nowiki> WinGs  
+f WG{2} #  WinGs  


<nowiki>#</nowiki> BAD FLAGS
# BAD FLAGS
+f B{1}  <nowiki>#</nowiki> Blindness
+f B{1}  #  Blindness
+f BY{1} <nowiki>#</nowiki> Bouncy
+f BY{1} #  BouncY
+f CB{1} <nowiki>#</nowiki> Color Blindess
+f CB{1} #  Color Blindess
+f FO{1} <nowiki>#</nowiki> Forward Only
+f FO{1} #  Forward Only
+f JM{1} <nowiki>#</nowiki> Jamming
+f JM{1} #  JaMming
+f LT{1} <nowiki>#</nowiki> Left Turn only
+f LT{1} #  Left Turn only
+f M{1}  <nowiki>#</nowiki> Momentum
+f M{1}  #  Momentum
+f NJ{1} <nowiki>#</nowiki> No Jumping
+f NJ{1} #  No Jumping
+f O{1}  <nowiki>#</nowiki> Obesity
+f O{1}  #  Obesity
+f RC{1} <nowiki>#</nowiki> Reverse Controls
+f RC{1} #  Reverse Controls
+f RO{1} <nowiki>#</nowiki> Reverse Only
+f RO{1} #  Reverse Only
+f RT{1} <nowiki>#</nowiki> Right Turn only
+f RT{1} #  Right Turn only
+f TR{1} <nowiki>#</nowiki> Trigger Happy
+f TR{1} #  TRigger happy
+f WA{1} <nowiki>#</nowiki> Wide Angle
+f WA{1} #  Wide Angle


<nowiki>#</nowiki> Using "+f good" is the equivalent of doing +f for each of the good flags.  
#  Using "+f good" is the equivalent of doing +f for each of the good flags.  
<nowiki>#</nowiki> If you want to restrict a certain flag, you can use the -f option.
# If you want to restrict a certain flag, you can use the -f option.
<nowiki>#</nowiki> just like with the +f option.  "-f bad" is the same as doing -f for
# just like with the +f option.  "-f bad" is the same as doing -f for
<nowiki>#</nowiki> all of the bad flags.   
# all of the bad flags.   
<nowiki>#</nowiki>-f bad  <nowiki>#</nowiki>no bad flags
#-f bad  #no bad flags
<nowiki>#</nowiki>+f good <nowiki>#</nowiki>one of each good flag
#+f good #one of each good flag
<nowiki>#</nowiki>-f G    <nowiki>#</nowiki>no genocide
#-f G    #no genocide


<nowiki>#</nowiki> Use +s to have the server generate a certain number of extra flags
# For world weapons, a flag may be enabled, without placing it on the ground.
<nowiki>#</nowiki> and have them available at all times. This is in addition to
# by using the flag's switch, without a bracketed number.
<nowiki>#</nowiki> any other flags specified.
#+f SW
<nowiki>#</nowiki>+s 20


<nowiki>#</nowiki> The server will have up to this many super flags at any time.
# Use +s to have the server generate a certain number of extra flags
<nowiki>#</nowiki> Use this if you don't use any other method of flag generation.
# and have them available at all times. This is in addition to
<nowiki>#</nowiki>-s 30
# any other flags specified.
#+s 20


# The server will have up to this many super flags at any time.
# Use this if you don't use any other method of flag generation.
#-s 30


<nowiki>#</nowiki><nowiki>#</nowiki> Variables <nowiki>#</nowiki><nowiki>#</nowiki>


<nowiki>#</nowiki> And there are three ways to load sets of server-specific variables.
## Variables ##
<nowiki>#</nowiki> They can be specified in this .conf file.
<nowiki>#</nowiki> They can be specified in the .bzw map file in an options block.
<nowiki>#</nowiki> Or they can be specified in a third file with this option
<nowiki>#</nowiki>-vars /path/to/vars.txt


<nowiki>#</nowiki> Server variables can also be modified in-game using
# There are three ways to load sets of server-specific variables.
<nowiki>#</nowiki> /set _varName value
# They can be specified in this .conf file.
<nowiki>#</nowiki> View the entire variable list by using
# They can be specified in the .bzw map file in an options block.
<nowiki>#</nowiki> /set    (with nothing afterward) lists all vars
# Or they can be specified in a third file with this option
<nowiki>#</nowiki> /diff will list most non-default settings
#-vars /path/to/vars.txt
<nowiki>#</nowiki> /?    will list other available commands


<nowiki>#</nowiki> Here are a few examples of variables.
# Server variables can also be modified in-game using
<nowiki>#</nowiki> Some variables are set to 0 for off, 1 for on.  
# /set _varName value
<nowiki>#</nowiki>-set _obeseFactor 12
# View the entire variable list by using
<nowiki>#</nowiki>-set _skyColor grey44
# /set    (with nothing afterward) lists all vars
<nowiki>#</nowiki>-set _wingsJumpCount 3
# /diff will list most non-default settings
<nowiki>#</nowiki>-set _tankExplosionSize 60
# /?    will list other available commands
<nowiki>#</nowiki>-set _jumpVelocity 20
 
<nowiki>#</nowiki>-set _squishTime 7
# Here are a few examples of variables.
<nowiki>#</nowiki>-set _mirror grey22
# Some variables are set to 0 for off, 1 for on.  
<nowiki>#</nowiki>-set _wallHeight 2
#-set _obeseFactor 12
<nowiki>#</nowiki>-set _shotsKeepVerticalVelocity 1
#-set _skyColor grey44
<nowiki>#</nowiki>-set _drawGround 1
#-set _wingsJumpCount 3
<nowiki>#</nowiki>-set _drawSky 1
#-set _tankExplosionSize 60
<nowiki>#</nowiki>-set _drawClouds 0
#-set _jumpVelocity 20
<nowiki>#</nowiki>-set _drawMountains 0
#-set _squishTime 7
<nowiki>#</nowiki>-set _fogMode exp
#-set _mirror grey22
<nowiki>#</nowiki>-set _fogColor black
#-set _wallHeight 2
<nowiki>#</nowiki>-set _fogDensity .01
#-set _shotsKeepVerticalVelocity 1
#-set _drawGround 1
#-set _drawSky 1
#-set _drawClouds 0
#-set _drawMountains 0
#-set _fogMode exp
#-set _fogColor black
#-set _fogDensity .01
-set _rainType bubble
-set _rainType bubble




<nowiki>#</nowiki><nowiki>#</nowiki> Plugins <nowiki>#</nowiki><nowiki>#</nowiki>
## Plugins ##
 
<nowiki>#</nowiki> Plugins have mostly superseded patches as a means of modifying
<nowiki>#</nowiki> the play of BZFlag servers. Recent improvements in the bzfs2.0.9 have enabled
<nowiki>#</nowiki> almost every server functionality to be modified with the plugin API.
<nowiki>#</nowiki>
<nowiki>#</nowiki> Plugins cannot be accessed unless you compile your plugins and 
<nowiki>#</nowiki> bzfs binary with the option --enable-shared
<nowiki>#</nowiki>-loadplugin /path/to/playHistoryTracker


<nowiki>#</nowiki><nowiki>#</nowiki> Replay <nowiki>#</nowiki><nowiki>#</nowiki>
# Plugins have mostly superseded patches as a means of modifying
# the play of BZFlag servers. Recent improvements in the bzfs2.0.9 have enabled
# almost every server functionality to be modified with the plugin API.
#
# Plugins cannot be accessed unless you compile your plugins and 
# bzfs binary with the option --enable-shared
#-loadplugin /path/to/playHistoryTracker


<nowiki>#</nowiki> You can set up a server for replay mode by entering this option
## Replay ##
<nowiki>#</nowiki>-replay


<nowiki>#</nowiki> This option sets the recording buffer to the specified amount of megabytes.
# You can set up a server for replay mode by entering this option
<nowiki>#</nowiki>-recbuf 2
#-replay


<nowiki>#</nowiki> This option sets the directory to look for and save recordings.
# This option sets the recording buffer to the specified amount of megabytes.
<nowiki>#</nowiki>-recdir
#-recbuf 2


# This option sets the directory to look for and save recordings.
#-recdir /path/to/recordings


<nowiki>#</nowiki><nowiki>#</nowiki> More Comments <nowiki>#</nowiki><nowiki>#</nowiki>
## More Comments ##


<nowiki>#</nowiki> This is intended to include the minimum options for a working  
# This is intended to include the minimum options for a working  
<nowiki>#</nowiki> BZFlag server, that is also connected to the list server.
# BZFlag server, that is also connected to the list server.
<nowiki>#</nowiki> All you need to do is edit your IP numbers in -publicaddr
# All you need to do is edit your IP numbers in -publicaddr
<nowiki>#</nowiki> and start bzfs.
# and start bzfs.
<nowiki>#</nowiki> As it connects to the list server, your terminal will show  
# As it connects to the list server, your terminal will show  
<nowiki>#</nowiki> something that looks like a player has joined, then immediately left.  
# something that looks like a player has joined, then immediately left.  
<nowiki>#</nowiki> When you see that happen, you have succeeded, and are listed.
# When you see that happen, you have succeeded, and are listed.
<nowiki>#</nowiki> If you can not connect to the list server, you probably need to open   
# If you can not connect to the list server, you probably need to open   
<nowiki>#</nowiki> port 5154 through your router, for both UDP and TCP. Instructions for that
# port 5154 through your router, for both UDP and TCP. Instructions for that
<nowiki>#</nowiki> are not included here.
# are not included here.


<nowiki>#</nowiki> You join your server locally, by opening your BZFlag game client   
# You join your server locally, by opening your BZFlag game client   
<nowiki>#</nowiki> and editing these lines in the JOIN GAME screen.   
# and editing these lines in the JOIN GAME screen.   
<nowiki>#</nowiki> In the SERVER line add  localhost  
# In the SERVER line add  localhost  
<nowiki>#</nowiki> In the PORT line add    5154
# In the PORT line add    5154
<nowiki>#</nowiki> Then JOIN your server.
# Then JOIN your server.


<nowiki>#</nowiki> Here are the short instructions.
# Here are the short instructions.
<nowiki>#</nowiki> Open your router firewall at port 5154
# Open your router firewall at port 5154
<nowiki>#</nowiki> Change the -publicaddr line in this .file to match your IP.
# Change the -publicaddr line in this .file to match your IP.
<nowiki>#</nowiki> In your terminal, cd to the location of the bzfs binary.
# In your terminal, cd to the location of the bzfs binary.
<nowiki>#</nowiki> ./bzfs -conf /path/to/sample.conf
# ./bzfs -conf /path/to/sample.conf
<nowiki>#</nowiki> Don't take out any <nowiki>#</nowiki> comment markers or add options that you think look cool
# Don't take out any # comment markers or add options that you think look cool
<nowiki>#</nowiki> until after you have the server working.
# until after you have the server working.
<nowiki>#</nowiki> The options you need have been included in this file.
# The options you need have been included in this file.
<nowiki>#</nowiki> You don't even need to specify a map, bzfs will create a random map for you.  
# You don't even need to specify a map, bzfs will create a random map for you.  
<nowiki>#</nowiki>
#
<nowiki>#</nowiki> You do not even need this .conf file to start a server.
# You do not even need this .conf file to start a server.
<nowiki>#</nowiki> You can use as many options you'd like just typing them into the terminal.
# You can use as many options you'd like just typing them into the terminal.
<nowiki>#</nowiki> Assuming you have installed BZFlag in default locations.   
# Assuming you have installed BZFlag in default locations.   
<nowiki>#</nowiki> In Macintosh terminal application these two should work
# In Macintosh terminal application these two should work
<nowiki>#</nowiki> cd /Applications/BZFlag2.0.8/Contents/MacOS/  
# cd /Applications/BZFlag2.4.8/Contents/MacOS/  
<nowiki>#</nowiki> ./bzfs -dd  
# ./bzfs -dd  
<nowiki>#</nowiki>
#
<nowiki>#</nowiki> In windows command prompt, these two commands should suffice  
# In windows command prompt, these two commands should suffice  
<nowiki>#</nowiki> cd C:\program files\bzflag2.0.2
# cd C:\program files\bzflag2.4.8
<nowiki>#</nowiki> bzfs.exe -dd  
# bzfs.exe -dd  
<nowiki>#</nowiki> All other path examples given in this file use *nix format
# All other path examples given in this file use *nix format
<nowiki>#</nowiki> Windows users will have to change all the path examples given in this file.
# Windows users will have to change all the path examples given in this file.
</pre>
</pre>


[[Category:Sample]]
[[Category:Server]]
[[Category:Server]]

Latest revision as of 18:30, 28 February 2017

# This is a BZFlag Server (bzfs) configuration file.
# It assumes that you wish to connect to the bzflag list server.
# Please read through it carefully.  Lines starting with a # are comments.
# to enable an option, remove the # at the beginning of a line.  To
# disable that option, put the # back.  There are some examples in this
# file.  Make sure you change the examples if you uncomment the line.  If
# you don't know what something does, you are okay to just leave
# it commented out.  Failure to read through this file (looking for
# already uncommented lines) might be a little embarrassing. Have fun.



# This option is for debug.  You can have as many as 4 of them.
# simple debug
#-d
# and more complex debugging.
-dd
#-ddd
#-dddd

# Sets the admin password for the server. It is necessary for server 
# administration if no groups are used.
# CHANGE THIS!
#-password abcdef

# Enables inertia and sets the maximum linear and angular accelerations.
# The units are somewhat arbitrary so you'll have to experiment to find
# suitable values.  The values must be non-negative and higher values
# yield greater inertia.
# Used to control "Mouse Enhancements"
-a 50 38


## World ##

# This specifies the world filename.
# Use this format for Windows
#-world "c:\mymaps\louschurchyard.bzw"
# Use this format for *nix and Mac
#-world /users/noob/lousdesktop.bzw


## Random World Generation ##

# This option allows world objects to be randomly rotated. Only applies
# if a randomly generated world is used.
#-b

# Enables capture-the-flag style game with a balanced random map. 
# Default is free-for-all style game.
#-cr

# Adds teleporters to the game. for random maps only
#-t

# This option controls the building density on random worlds(1-10) 
# Default is 5
#-density 7

# This option changes the size of random maps.
#-worldsize 800

# This option gives buildings random heights.  This is used when
# you are using random maps.
#-h


## Game Styles ##

# This enables capture-the-flag style game. Default is free-for-all style.
# Requires one base object for each team to be specified in the world file.
# Can be used with random world generation.
#-c

# More than one team-flag may be specified. 
# This is generally not desirable.
# B* - Blue Team   G* - Green Team, P* - Purple Team,  R* - Red Team,
#+f B*
#+f B*

# This sets the maximum number of shots before a reload.  
# Default is 5.
-ms 3

# This makes most shots ricochet.
+r

# This option allows jumping.
-j

# These two flags can be used if they are not specified as options.
# +f R{1} # Ricochet
# +f J{1} # Jumping 

# This option allows for flags on box buildings.
#-fb

# This option allows tanks to spawn on buildings. This is especially useful
# as tank spawn locations are calculated on the server without the
# advantage of knowing where shots are.
#-sb

# By default if a player kills a teammate, he dies too, this option turns this
# off.  Used mostly for capture the flag style games.
#-tk

# Announce team kills to the admin channel.
#-tkannounce

# Kick a player if his ratio of teammate to non-teammate kills is this
# percentage or greater.
-tkkr 32

# This option allows you to tell the server how long a team flag remains
# before it is reset after the last player on a team leaves.  
# Default is 30 seconds.
#-tftimeout 60

# Hunt the rabbit game is activated with this option.  
# Use only one of these options.
# Choose rabbit based on score.
#-rabbit score
# Rabbit is chosen by whoever kills the rabbit.
#-rabbit killer
# Or you can choose the rabbit randomly.
#-rabbit random

# Open Free For All game is a teamless free-for-all game style. There are no
# teams, regardless of colors.
# Don't combine this with -c, -cr or -rabbit
#-offa

# It is possible to restrict bots and autopilot from being used on the server.
# This is accomplished with the following.
#-disableBots

# This option causes the server to quit after serving one game.  This is
# handy if you want to do a timed game, or script a rotating server.
#-g

# This option sets the max score for players.  The game ends when a player
# reaches this score and is declared the winner.
#-mps 100

# This sets the max team score.  The first team to reach this score is
# declared the winner and the game is ended.
#-mts 250

# This dumps the score to console when it changes.
#-printscore

# This sets time limit (in seconds) for the game.  Time starts when first
# client connects.
#-time 3600

# This option requires a timed game to be started using the /countdown
# command to start a timed game.  Default is when first player joins.
#-timemanual


## List server Connection ##

# This is the public message that the server advertises on the public
# server list.  This is required if you want to be shown on the list.
# It often advertises the map you are using.  Keep it short.
-publictitle "Noo BZFlag Server With Random Map"

# This is also needed to be listed on the public server list.  The
# address needs to be valid in DNS. It's your IP, plus port number.
-publicaddr 123.456.789.000:5154

# You need a public key to get your server listed on the official 
# listserver. Read here how to get one:
# http://wiki.bzflag.org/ServerAuthentication
-publickey XXXXXXXXXXXX

# The server will listen on this port.  Default port is 5154.
-p 5154

# Tells server not to respond to "pings". This makes the server private.
# You should remove -public and -publicaddr when using it.
# If your router is open, you can still give people your IP and port, and  
# they will be able to connect, you just wont be on the list.
#-q

# You probably don't need to use this, but it is there if you do.  This
# specifies where the server advertises itself.  The built-in default
# should work just fine.  You need to hunt down the proper address if
# it doesn't work. DON'T Change It
#-publiclist <list-server-url>

# Server will listen for and respond to "pings" (sent via broadcast) on
# the given interface.  The server uses the first interface by default.
# This is the TCP/UDP/IP address the server will listen on.
# You don't need to use this unless your server has multiple
# interfaces and doesn't show up on the server lists.
#-i 123.456.789.000


## Player Connections ##

# Automatically assigns players to teams when they join so that teams are
# evenly matched in number of players.  Players are placed on teams with
# lowest number of players first, then those with the lowest scores or
# kill ratios.
-autoTeam

# This sets the max number of players.  It can be done in 2 ways.  A flat
# count of players, or by number of players on a given team.
# This allows up to 50 players, no team limits.
# Typical home DSL connections max out at 12 players before lag begins.
# Lag equals players times shots. So a one-shot server could have more 
# players, and vice-versa. 
-mp 12

# This allows for max player by team.
# The order is rogue, red, green, blue, purple, observer.
#-mp 3,3,3,3,3,3

# userdb can be used to map users to local groups. In most cases you can
# probably live without this. Consider using global groups instead. 
#-userdb /path/to/users.txt

# If you use the BZFlag forums at http://my.bzflag.org/bb
# and have established groups there, you only need groupdb
# Though local registrations can also be used.
# groupdb stores group to permission mappings.
#-groupdb /path/to/groups.txt

# If you have registered groups at the bzbb forums, only players
# in this group will see your server in the list. 
#-advertise NOOB.COP 

# This option kicks the user after they have been idle for a number of 
# seconds. Idle means paused, not-spawning or not-responding.  
-maxidle 300

# Set to not use a UDP connection for players. You typically do NOT want to
# do this (UDP is good!)
#-noudp

# Define a lag threshold over which players with high lag will be 
# announced to the admin channel.
#-adminlagannounce 300

# Define a threshold over which players with high lag will be announced.
#-lagannounce 400

# This option warns the user their lag is too high when it crosses the
# number of milliseconds set.
-lagwarn 350

# This option kicks players after they have been warned about high lag for
# a certain number of times.
-lagdrop 3

# Packetloss and Jitter are two different things.
# Packetloss is a percentage of total data being completely lost. 
# A player with packetloss is usually downloading files, switching
# between applications, or simply has a bad connection.
# Jitter is variation in the time between packets arriving, caused by network
#  congestion, timing drift, or route changes. 
# A player with jitter may be purposely manipulating his lag to avoid
# being shot, or to "lag through a wall".
# These next four functions should be used with caution, slower servers
# may wish to avoid using them altogether. 
 
# This option warns the user their packet loss is too high.
#-packetlosswarn 4

# This option kicks players after they have been warned about packet loss 
# a certain number of times.
#-packetlossdrop 2

# This option warns the user their jitter is too high when it crosses 
# the number of milliseconds set. 
# -jitterwarn 25

# This option kicks players after they have been warned about high 
# jitter for a certain number of times.
# -jitterdrop 3

# This option tells the server where to store the ban list. The ban list will
# be loaded from this file when the server starts (if the file exists) and
# written back to the file when someone gets banned or unbanned. If this
# option isn't used the ban list will not be saved.
#-banfile /path/to/mybanfile.txt

# This option sets up your ban list.  This is ip masks separated by commas.
# The * character is used as a wild card in range bans. 
#-ban "192.168.1.5,10.10.2.*,10.2.*.*"


## General Options ##

# adds timestamps to every line of the log
#-ts

# uses UTC for timestamps instead of localtime and implies -ts
#-utc

# -pidfile /path/to/pidfile.txt 
# Specify a file where the server will write its process ID so it may be used for remote administration. 

# This is the server welcome message.  Please change it. 
-srvmsg " This is a Noo BZFlag Server "
-srvmsg " Have Fun and Play Nice "

# Define a message which will be broadcast to all players every 15 minutes.
-admsg " Noo BZFlag Server "
-admsg " BZFlag is Fun "

# This sets the amount of time in seconds that is required to pass between
# two identical messages sent.
-spamtime 15

# This sets the amount of times to warn spammers (see -spamtime) before they
# are kicked.
-spamwarn 3

# Specify a file that contains bad words that will be used when 
# either -filterCallsigns or -filterChat is enabled.
# A multilingual badwords file can be found in source downloads. 
#-badwords /path/to/badwords.txt

# Turn on the filtering of chat messages.  Messages have words provided
# via a  -badwords file are replaced with !@#$%^&* characters.
#-filterChat

# Turn on the filtering of callsigns.  Callsigns are compared against
# bad words provided via -badwords.
#-filterCallsigns

# By default, all filtering is aggressive, matching much more than what
# is strictly listed in a -badwords file for convenience. Providing this
# option will make the -filterCallsigns and -filterChat comparisons
# exact match only.
#-filterSimple

# This forces all clients to use the same time of day.  The time is
# determined by the server's clock.  This disables the + and - keys
# on the clients.
#-synctime



## Player Controlled Functions ##

# This option specifies a help file that will be displayed when the player
# types /help name  
# Maximum length is 50 lines and 120 characters per line
#-helpmsg shock /path/to/shockwavehelp.txt 
#-helpmsg noob /path/to/noobhelp.txt

# You can specify a file so that people can type /report to report problems
# on the server.  The reports are logged in this file.
#-reportfile /path/to/reports.txt

# You can also use this option to cause the /report to trigger a command
# as well as, or instead of, logging to a file.
#-reportpipe command

# This specifies the number of seconds in which a poll can be vetoed.
#-vetoTime 60

# This specifies the percentage of people required for a successful vote.
#-votePercentage 51

# This is the number of voters required to hold a poll.
#-votesRequired 6

# This is the length of time that players have to vote.
#-voteTime 60


## Flags ##

# This option allows for antidote flags to be available for players who
# get bad flags.
-sa

# Bad flags are automatically dropped after this many seconds.
-st 5

# Bad flags are automatically dropped after this many wins.
-sw 1

# This allows you to limit the number of shots from a particular flag.
#-sl GM 20
#-sl L 20

# There are two sets of flags. Flags that must be in the world at all times
# and flags that may get generated randomly. in addition. +f specifies flags that
# must be there and -f specifies flags that should never be generated.

# The server will randomly place flags from the following list. 
# To be sure there is at least a certain amount of a flag on the map
# at any given time, you can use the +f option to guarantee a certain
# number of a flag.

# Good Flags
+f A{2}  #  Agility
+f CL{2} #  Cloaking 
+f F{2}  #  rapid Fire
+f G{1}  #  Genocide
+f GM{2} #  Guided Missile
+f IB{2} #  Invisible Bullett
+f L{2}  #  Laser
+f MG{2} #  Machine Gun
+f N{2}  #  Narrow
+f OO{2} #  Oscillation Overthruster
+f PZ{2} #  Phantom Zone
+f QT{2} #  QuickTurn
+f SB{2} #  Super Bullet
+f SE{2} #  SEer
+f SH{2} #  SHield 
+f SR{2} #  SteamRoller
+f ST{2} #  STealth
+f SW{2} #  ShockWave 
+f T{2}  #  Tiny
+f TH{2} #  THeif
+f US{2} #  USeless
+f V{2}  #  Velocity (high speed)
+f WG{2} #  WinGs 

# BAD FLAGS
+f B{1}  #  Blindness
+f BY{1} #  BouncY
+f CB{1} #  Color Blindess
+f FO{1} #  Forward Only
+f JM{1} #  JaMming
+f LT{1} #  Left Turn only
+f M{1}  #  Momentum
+f NJ{1} #  No Jumping
+f O{1}  #  Obesity
+f RC{1} #  Reverse Controls
+f RO{1} #  Reverse Only
+f RT{1} #  Right Turn only
+f TR{1} #  TRigger happy
+f WA{1} #  Wide Angle

#  Using "+f good" is the equivalent of doing +f for each of the good flags. 
# If you want to restrict a certain flag, you can use the -f option.
# just like with the +f option.  "-f bad" is the same as doing -f for
# all of the bad flags.  
#-f bad  #no bad flags
#+f good #one of each good flag
#-f G    #no genocide

# For world weapons, a flag may be enabled, without placing it on the ground.
# by using the flag's switch, without a bracketed number.
#+f SW

# Use +s to have the server generate a certain number of extra flags
# and have them available at all times. This is in addition to 
# any other flags specified.
#+s 20

# The server will have up to this many super flags at any time.
# Use this if you don't use any other method of flag generation.
#-s 30


## Variables ##

# There are three ways to load sets of server-specific variables.
# They can be specified in this .conf file.
# They can be specified in the .bzw map file in an options block.
# Or they can be specified in a third file with this option
#-vars /path/to/vars.txt

# Server variables can also be modified in-game using 
# /set _varName value
# View the entire variable list by using 
# /set    (with nothing afterward) lists all vars
# /diff will list most non-default settings
# /?    will list other available commands

# Here are a few examples of variables.
# Some variables are set to 0 for off, 1 for on. 
#-set _obeseFactor 12
#-set _skyColor grey44
#-set _wingsJumpCount 3
#-set _tankExplosionSize 60
#-set _jumpVelocity 20
#-set _squishTime 7
#-set _mirror grey22
#-set _wallHeight 2
#-set _shotsKeepVerticalVelocity 1
#-set _drawGround 1
#-set _drawSky 1
#-set _drawClouds 0
#-set _drawMountains 0
#-set _fogMode exp
#-set _fogColor black
#-set _fogDensity .01
-set _rainType bubble


## Plugins ##

# Plugins have mostly superseded patches as a means of modifying
# the play of BZFlag servers. Recent improvements in the bzfs2.0.9 have enabled 
# almost every server functionality to be modified with the plugin API.
# 
# Plugins cannot be accessed unless you compile your plugins and  
# bzfs binary with the option --enable-shared 
#-loadplugin /path/to/playHistoryTracker 

## Replay ##

# You can set up a server for replay mode by entering this option
#-replay

# This option sets the recording buffer to the specified amount of megabytes.
#-recbuf 2

# This option sets the directory to look for and save recordings.
#-recdir /path/to/recordings

## More Comments ##

# This is intended to include the minimum options for a working 
# BZFlag server, that is also connected to the list server.
# All you need to do is edit your IP numbers in -publicaddr
# and start bzfs.
# As it connects to the list server, your terminal will show 
# something that looks like a player has joined, then immediately left. 
# When you see that happen, you have succeeded, and are listed.
# If you can not connect to the list server, you probably need to open  
# port 5154 through your router, for both UDP and TCP. Instructions for that
# are not included here.

# You join your server locally, by opening your BZFlag game client  
# and editing these lines in the JOIN GAME screen.  
# In the SERVER line add  localhost 
# In the PORT line add     5154
# Then JOIN your server.

# Here are the short instructions.
# Open your router firewall at port 5154
# Change the -publicaddr line in this .file to match your IP.
# In your terminal, cd to the location of the bzfs binary.
# ./bzfs -conf /path/to/sample.conf
# Don't take out any # comment markers or add options that you think look cool
# until after you have the server working.
# The options you need have been included in this file.
# You don't even need to specify a map, bzfs will create a random map for you. 
#
# You do not even need this .conf file to start a server.
# You can use as many options you'd like just typing them into the terminal.
# Assuming you have installed BZFlag in default locations.  
# In Macintosh terminal application these two should work
# cd /Applications/BZFlag2.4.8/Contents/MacOS/ 
# ./bzfs -dd 
#
# In windows command prompt, these two commands should suffice 
# cd C:\program files\bzflag2.4.8
# bzfs.exe -dd 
# All other path examples given in this file use *nix format
# Windows users will have to change all the path examples given in this file.