====================================================================== Battlefield Server Manager 2.0 for Windows README Version 2.0 beta 4e 11 July 2004 Copyright (c) 2004, Black Bag Operations, www.blackbagops.com ====================================================================== This file contains information about new program features that is not in the manual. Please read these notes carefully before asking for support. CONTENTS 1. About the New Ban System 2. About the In-Game Administration System 3. About the New User Permissions 4. User Permission Presets 5. Admin CSV log 6. Custom Console Commands 7. Banned Words 8. Editing PunkBuster Server Settings 9. UserAccess.con 10. Additional Information ---------------------------------------------------------------------- 1. About the New Ban System ---------------------------------------------------------------------- Server Manager nows keeps its own player banlist in the file ServerBanList.con on the server. This banlist is only used by BxSM and is separate from the server application's banlist kept in BanList.con. When you ban a player in SM or RM, BxSM will ban that player using their keyhash on an Internet server or their IP on a LAN server. If you have the "ban in both" option on the Friendly Fire dialog page enabled, BxSM will also ban the player's GUID on the PunkBuster server. When a player is banned BxSM adds the ids it banned on the server to an entry for that player in the banlist on the Bans page. A blank id field (IP, keyhash or GUID) in this list means there is no ban on that id for that player. BxSM also records additional information about the ban including the name of the BxSM user who banned the player, when the ban took place, when the ban expires, and a reason for the ban. When you unban a player BxSM unbans all of the player ids that are recorded in the banlist entry for that player. If multiple banlist entries share the same id (e.g. IP address) the common id will be removed from all of the banlist entries. When all player ids have been unbanned for a particular player, BxSM will delete the entire ban entry from the banlist. This is done to help prevent the banlist growing to a large size over time. You can see that the bans shown on the Bans page are a listing of the CURRENT player bans in place, not a list of every ban that has ever occured. The new admin CSV log fulfills this purpose. How to Ban and Unban Using the New System ----------------------------------------- When you ban a player using the Player menu, the ban is automatically added to the banlist on the Bans dialog page. See the section "About the Player menu" in the BxSM manual for more information about the Player menu. You can also ban players manually using the controls on the Bans page: 1. Enter at least one ban id in the fields provided 2. Click Save to record the ban To unban a player: 1. Select an entry in the banlist using the mouse 2. Click Delete to unban the player To clear BOTH the BxSM AND server banlists: 1. Click the Clear button 2. Click Yes to the failsafe prompt Banlist Synchronisation Functions --------------------------------- There are several functions available to control synchronisation between the BxSM and server banlists. These functions are available from the right-click menu on the Bans dialog page. 1. Verify synchronisation This function does a two-way comparison between the BxSM and server banlists and records the outcome in the BxSM log. Use this function to determine whether or not the banlists are in sync. If they are not synchronised you can use one of the following two functions to synchronise them again. 2. Sync to server banlists This function will force synchronisation by exporting FROM the BxSM banlist TO the server banlist. This action can cause loss of information if the server banlist contains bans that are not recorded in the BxSM banlist. Use this function after reinstalling a server application to recover the server banlist. 3. Sync from server banlists This function will force synchronisation by importing FROM the server banlist TO the BxSM banlist. This action can cause loss of information if the BxSM banlist contains bans that are not recorded in the server banlist. Use this function when migrating to BxSM beta 4e to import an existing server banlist into BxSM. Please note that bans cannot be edited once they are added to the list on the Bans dialog page. ---------------------------------------------------------------------- 2. About the In-Game Administration System ---------------------------------------------------------------------- The in-game administration system works via the chat message system in the game. This feature does NOT require users to be connected with Remote Manager. NOTE: In-game admin only works on Internet game servers, it will not work on LAN game servers. In-game administration will not work in BFVietnam before v1.1. To enable in-game administration for a particular player you must create a BxSM user account with the keyhash of the player that is permitted to issue admin commands in-game. Use the new "Copy keyhash to user" player menu command to associate a player's keyhash with a BxSM user account. You must click Save on the Users page after using this command to save the keyhash permanently. Players that do not have a BxSM user account with an associated keyhash cannot issue in-game admin commands. BxSM looks for commands in the chat messages formatted in the following manner; !alias name OR !alias .id The exclamation mark (!) identifies the chat message as a BxSM in-game admin command. The 'alias' is a command alias configured in PlayerMenu.con. This system allows you to use any Player menu command in-game. Specify command aliases in [square brackets] at the end of a line in PlayerMenu.con like so: Warn server>"Please do not chat spam"|global,[gwspam] To issue the above global warning message in-game, send the following command chat message: !gwspam The PlayerMenu.con file that comes with BxSM contains a command alias for each command in the default menu. Print this file for use as a reference to in-game commands aliases until you learn them. You can target admin commands at particular players using a partial name or id number like so; !kick bozo OR !kick .10 Player id numbers MUST be prepended with a period (.) character. You can match multiple players with a single command by prepending the @ symbol to the partial player name like so: !kick @tag The above command would cause all players with 'tag' in their player name to be kicked from the server. In-game Map Commands -------------------- There are four in-built map commands that are available to any BxSM in-game admin user that has access to the Maps dialog page: 1. !change This command changes the server to the specified map immediately. is the same syntax used in MapList.con (GPM_CQ, GPM_COOP, etc). 2. !setnext This command sets the specified map to play next in the rotation. 3. !runnext This command causes the server to change to the next map in the rotation. 4. !restart This command restarts play on the current map. BxSM will display error messages relating to in-game administration as chat messages in-game. Keep a watch for these messages after you issue a command. See the section on Custom Console Commands in these notes for instructions about how to make custom console commands available via the in-game admin system. ---------------------------------------------------------------------- 3. About the New User Permissions ---------------------------------------------------------------------- Beta 4e changes the way user permissions are granted in the SM and RM GUI. To grant or revoke permissions, right-click a user account in the list on the Users dialog page and check or uncheck the desired permission. Click Save to make changes permanent. 1. User can start/stop the server Controls who can use the Start/Stop button in RM. 2. User can view server log Controls who can view the Server Manager log in Remote Manager. 3. User can connect multiple times Prevents more than one user connecting with the same user account simultaneously. 4. User can change critical settings Controls who can change server hardware settings on the Server dialog page. 5. User can issue console commands Controls who can use custom console commands defined in PlayerMenu.con. 6. User can edit PunkBuster settings Controls who has access to the PunkBuster commands in the Settings button-menu. To make a user an -admin- user, click 'Grant admin access' in the User menu. To revoke all permissions, click 'Revoke all access' in the User menu. ---------------------------------------------------------------------- 4. User Permission Presets ---------------------------------------------------------------------- You can configure customised presets for permissions in the BXServerManager.ini or BXRemoteManager.ini files by choosing "Edit permissions presets" from the User menu. Each preset is displayed as a menu item in the User menu. Selecting the menu item selects all the page buttons and permissions configured in the preset. To configure presets, add an INI file section called [presets] and specify up to 10 presets like so; Preset[#]=[name],[permissions] For example, [presets] Preset0=Sergeant,2272 Preset1=Lieutenant,2528 Preset2=Major,211455 Preset3=Colonel,229375 The permissions number is constructed by adding up the permissions you want from the following table; Server Page 1 Game Page 2 Friendly Fire Page 4 Miscellaneous Page 8 Admin Page 16 Status Page 32 Maps Page 64 Players Page 128 Bans Page 256 Users Page 512 Schedule Page 1024 Clients Page 2048 Start/stop server 4096 View SM log 8192 Logon multiple times 16384 Critical settings 32768 Console commands 65536 Edit PB settings 131072 ---------------------------------------------------------------------- 5. Admin CSV log ---------------------------------------------------------------------- BxSM now keeps a record of all kicks and bans in adminlog.csv. This comma-separated-values text file has the following format; name, address, keyhash, guid, admin, bantime, mapname, action, expires, reason The 'bantime' and 'expires' fields are date/time values in Epoch format (number of seconds elapsed since Jan 1 1970). The admin CSV log can be used with an external application to provide "Why Was I Kicked/Banned" functionality for external users. ---------------------------------------------------------------------- 6. Custom Console Commands ---------------------------------------------------------------------- Server Manager beta 4e allows you to configure customised console commands via the Player menu. This feature allows you to configure commands that are not built-in to Server Manager. These commands can also be made available via the in-game administration system by specifying a command alias. Use the new "cmd" Player menu keyword to configure custom console commands like so; Console Commands>"admin.toggleGamePause"|cmd,[pause] The console command goes inside the "double-quotes". You can use the following parameters in custom console commands which will be substitued for the indicated value when the command is executed; %bfid %pbid %name %keyhash %guid For example, Console Commands>"pb_sv_power %pbid 100"|cmd,[deputy] This command makes the selected player a PunkBuster "deputy". By specifying a command [alias] you can also use this command via in-game admin like so; !deputy player The new "User can issue console commands" permission controls who can issue these commands. See the "About the New User Permissions" section in these notes for more information about the new permissions. ---------------------------------------------------------------------- 7. Banned Words ---------------------------------------------------------------------- The Banned Names functions in previous versions of BxSM has been replaced by the new Banned Words function. The "Enable auto-kick on banned word" function available from the Admin dialog page will kick any player that has a banned word in his/her player name or chat messages. Players are not warned before being kicked. Specify the words you want to ban in BannedWords.con using the same format previously used in BannedNames.con (you can rename BannedNames.con to BannedWords.con to preserve your existing list if you want). Click the Edit BannedWords.con button on the Admin dialog page and add the names that you want to ban one-per-line. By default, BxSM will look for a partial match of any name you specify here. If you want to specify an exact match, start the line with a dollar sign ($). All names are matched without regard to case. ---------------------------------------------------------------------- 8. Editing PunkBuster Server Settings ---------------------------------------------------------------------- You can now edit your server's PunkBuster configuration using the new commands in the Settings button-menu. Access to these commands is controlled using the new "User can edit PunkBuster settings" permission. See the "About the New User Permissions" section in these notes for more information about the new permissions. There are three commands available from this menu; 1. Dump PunkBuster settings This command causes the current PunkBuster server config to be written to pbsv.cfg in the PB directory on the server. 2. Edit PunkBuster settings This command opens the PunkBuster server's config file (pbsv.cfg) locally for editing in Notepad. Edit the file as desired and save it before using the next command. 3. Load PunkBuster settings This command saves the modified config pbsv.cfg file to the server and causes it to be loaded into the running PunkBuster server thereby applying the changes. The PunkBuster server config file contains detailed remarks about each setting and its allowable values. Consult this file and the following webpage for more information about PunkBuster server settings; http://www.evenbalance.com/publications/bf1942-ad/index.htm ---------------------------------------------------------------------- 9. UserAccess.con ---------------------------------------------------------------------- This file records information about BxSM users on the server. This file is normally encrypted but beta 4e will recognise unencrypted entries in this file which can be generated by scripted server setup systems used by GSPs. The file format is as follows; username,password,keyhash,permissions,state The 'username', 'password' and 'keyhash' fields are limited to 32 characters in length. Keyhash must be a valid 32-digit hexadecimal number. The permissions field is constructed by adding up the permissions you want from the following table; Server Page 1 Game Page 2 Friendly Fire Page 4 Miscellaneous Page 8 Admin Page 16 Status Page 32 Maps Page 64 Players Page 128 Bans Page 256 Users Page 512 Schedule Page 1024 Clients Page 2048 Start/stop server 4096 View SM log 8192 Logon multiple times 16384 Critical settings 32768 Console commands 65536 Edit PB settings 131072 The state field is either '1' for enabled or '0' for disabled. Server Manager will encrypt any clear-text entries it finds in UserAccess.con the first time this file is read. ---------------------------------------------------------------------- 10. Additional Information ---------------------------------------------------------------------- This software is not endorsed or supported by either Electronic Arts or Digital Illusions CE. Do not contact them about any problems you may experience while using this program. For more information about BxSM read the Users Guide available at; http://www.blackbagops.com/files/bfsm20ug.pdf See the News page for a list changes from previous versions of BxSM; http://www.blackbagops.com/news.shtml You can find a list of resources for trouble-shooting problems with BFSM at; http://www.blackbagops.com/bf1942/bfsm/support.shtml Post questions and other support requests in the BBO forums; http://www.blackbagops.com/forums.shtml Read the answers to frequently asked questions in the FAQ here; http://www.blackbagops.com/bf1942/bfsm/faq.shtml Get the latest version of BVSMD at "Black Bag Operations"; http://www.blackbagops.com/bf1942/index.shtml Find contact details for the author of this software at; http://www.blackbagops.com/contact.shtml ====================================================================== END ======================================================================