BZFS 2.4 Upgrade
Stub for BZFS 2.0.x to 2.4 server upgrade path
- 1 Overview
- 2 Getting your server listed on the server list
- 3 Upgrading third party plugins
- 4 BZFlag server commandline option changes
- 5 Server Groups
For version 2.4 there are new requirements for your server to be listed on the BZFlag hosted server list.
This page documents user visible changes to the BZFlag server for the 2.4 release of BZFlag.
Short Version for the impatient
- -public changed to -publictitle
- -publickey specifies your server key for including your server on the server list
- -utc logs server timestamps in UTC instead of localtime
- -passdb removed
- -requireudp removed
- -offa selects teamless free-for-all game style
- -time can specify end time for timed games
- Groups can now be referenced in the groupdb before they are defined
Getting your server listed on the server list
Generating and managing server keys
You need to generate a public server key for your BZFlag server which matches your server host. If you have multiple server hosts you need a separate key per host. You can generate and manage your server keys at http://my.bzflag.org/listkeys/
Starting your BZFlag server using your server key
After generating a server key you need to provide the key to your bzfs server so it can authenticate with the list server. Only servers with valid public keys will be shown on the BZFlag list server.
Keys are shown at http://my.bzflag.org/listkeys like this:
You need to provide the key value to the bzfs server option -publickey like this
$ bzfs -public "Map name goes here" -publickey 1234567890123456789
The -publicaddr and -p parameters have not changed from 2.0.x and are used to provide the hosting server address and port respectively.
More information about the public key option can be found at ServerAuthentication
Upgrading third party plugins
The API for plugins has changed in the 2.4 release. See BZFS_API_2.4_Upgrade for details on upgrading your server plugins.
BZFlag server commandline option changes
- Local password databases are no longer supported for authentication
- -passdb has been removed as a command line option
- UDP is on by default
- -requireudp has been removed as a command line option
- The option for specifying the map name on the server list has changed
- -public changed to -publictitle
- Timed games can now specify the end time in either seconds or end time
- -time now takes either the number of seconds or an end time as an option (format hh:mm or hh:mm:ss)
- New game mode for teamless free-for-all
- -offa added as an option to select this mode
- bzfs server timestamps can now be output in UTC instead of the local time
- Specifying -utc outputs all times in UTC and implies -ts
- Public keys are required to have your server included on the BZFlag server list
- -publickey is used to specify your key. See Getting your server listed on the server list for details
With this release BZFlag groups defined in the groupdb can now be referenced before they are defined.
Permissions provided by existing server groups will work with no modifications as long as no forward references to groups exist in your groupdb.
If your group files reference other groups that were not yet defined the permissions provided by those forward-referenced groups will now be granted to your group members.
We recommend that you review your server groupdb settings.
group1: *group2 +spawn group2: +talk group3: *group2 group2: +poll
In 2.0 the "*group2" statement in line one would have been ignored because group2 was not yet defined. Also line 4 would have been ignored becaused group2 was used as a reference in line 3. Now in 2.4 these aren#t errors anymore, so while in 2.0 the resulting perms are:
they are in 2.4
group1: spawn talk poll
group2: talk poll
group3: talk poll
If bzfs didn't warn (with -d) about bad group references or skipped lines in 2.0 your groupdb file should work the same way in 2.4. Else you should have a look on it or expect unexpected effects.