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.
Private List Server
Overview
This article discusses how to create a PRIVATE List Server and have players authenticate via this server. This is generally not necessary, since BZFlag clients perform Global Registration via the official bzflag.org List Server. However, if a BZFS server is created within a private LAN network, it may be desirable/necessary to authenticate players locally.
Assumptions
- This article assumes that a working BZFS server is already in place and has been tested.
 - This article assumes that the server administrator has access to web hosting with MySQL and PHP.
 - This article assumes that the server administrator understand how to download and install PHPBB3.
 - This article assumes that the private list server will use the same database as PHPBB3.
 - This article assumes that the server administrator understands how to perform basic editing of PHP code.
 - This article was written using Linux for the BZFS server.
 - This article was written using Windows clients to access both the game server and the private list server.
 
Directions
- Install and test your BZFS server. Make sure clients can connect and play the game.
 - Install PHPBB3 on a web server, configure settings, test that users can REGISTER to the PHPBB3 board.
 - In the "main" PHPBB3 folder, (ex: /usr/share/phpbb3/www/), place the following THREE files found in the SVN DB Repository (https://bzflag.svn.sourceforge.net/svnroot/bzflag/trunk/db/):
 
bzfls.php serversettings.php.tmpl (rename to serversettings.php) banfunctions.php
- Edit serversettings.php such that it can connect to your PHPBB3 MySQL database. Note that this example assumes that the same database is used for MySQL tables used by bzfls.php and by the PHPBB3 installation:
 
$dbhost = "localhost"; $dbname = "phpbb3"; $dbuname = "phpbb3"; $dbpass = "********"; $bbdbname = 'phpbb3';
- For ease of setup, bzfls.php was edited to access files from the "main" PHPBB3 folder (ex: /usr/share/phpbb3/www/). The following lines were changed to accomplish this:
 
$phpbb_root_path = '/usr/share/phpbb3/www/'; $phpEx = 'php'; include($phpbb_root_path.'includes/functions.'.$phpEx); include($phpbb_root_path.'includes/utf/utf_tools.'.$phpEx); include($phpbb_root_path.'includes/utf/utf_normalizer.'.$phpEx); include($phpbb_root_path.'serversettings.'.$phpEx); include($phpbb_root_path.'banfunctions.'.$phpEx);
- The PHPBB3 phpbb_user table must have additional fields added to track the BZFLAG player user_token, user_tokendate, and user_tokenip. This is how the List Server authenticates each player, by sending an up to 10 digit token to the BZFLAG client:
 
`user_token` int(10) unsigned NOT NULL DEFAULT '0', `user_tokendate` int(10) unsigned NOT NULL DEFAULT '0', `user_tokenip` varchar(40) COLLATE utf8_bin NOT NULL DEFAULT ,
- Next, a number of tables must be added to the PHPBB3 database to accommodate player tracking These tables can be found here:
 
Acknowledgments
This process would not have been successful without the help of Blast/Blast007.