BackNext

  Configure Bec

  Bec is not limited to one server, but for each arma server a config file is needed.
  Lets start looking at a example file and go though it step by step.


  This File must be saved in the Config Directory.

C:\ServerTools\Bec\Config\Config.cfg



  Full Config Example

[Bec]
Ip = 127.0.0.1
Port = 2302
BePath = C:\SC1\Battleye\
LogDir = Server1
Admins = Admins.xml
Commands = Commands.xml

# Optional
[Misc]
AsciiNickOnly = False
AsciiChatOnly = True
IgnoreChatChars = £æøå
NickFilterFile = C:\Path\BadNames.txt
WordFilterFile = BadWords.txt
WhiteListFile = WhiteList.txt
WhiteListKickMsg = Please contact us on our TS3 to be able to play here!!!
Warnings = 3
ServerExeName = myAwesomeServer.exe
ConsoleColor = 1f
ConsoleHeight = 65
ConsoleWidth = 130
Timeout = 40
FloodControl = 5
KickLobbyIdlers = 300
Scheduler = Scheduler.xml
MaxPlayerNameLength = 16
DisallowPlayerNameChars = [](){}<>/\^¨|§!"'#¤%&@£$€
ChatChannelFiles = true
SlotLimit = -1

# Read on how this works.
FloodControl = 5
# And or
#FloodSampleTime = 5
#FloodLockTime = 10

Ts3 = Ts3_server.xml

# Optional
[ChatRestriction]
Global = 2
Side = -1
Group = -1
Vehicle = -1
Command = -1
Commander = -1
Direct = -1

# Optional
[ChatSpam]

Lobby = 0
Lobby_Time_Lower = 0
Lobby_Time_Upper = 0
Global = 0
Global_Time_Lower = 0
Global_Time_Upper = 0
Side = 0
Side_Time_Lower    = 0
Side_Time_Upper    = 0
Group = 0
Group_Time_Lower = 0
Group_Time_Upper = 0
Vehicle    = 0
Vehicle_Time_Lower = 0
Vehicle_Time_Upper = 0
Command = 0
Command_Time_Lower = 0
Command_Time_Upper = 0
Commander = 0
Commander_Time_Lower = 0
Commander_Time_Upper = 0
Direct = 0
Direct_Time_Lower = 0
Direct_Time_Upper = 0

# Optional
[Reporter]
User = username
Password = password

# Optional
[Heartbeat]
BanFile0 = C:\SC2\BattlEye\bans.txt
BanFile1 = C:\SC3\BattlEye\bans.txt
 

   

  Minimal Config Example

[Bec]
Ip = 127.0.0.1
Port = 2302
BePath = C:\SC1\Battleye
LogDir = Server1
Admins = Admins.xml
Commands = Commands.xml 

 

 Real Life Config Example

[Bec]
Ip = 127.0.0.1
Port = 2302
BePath = c:\Server_1\Battleye
Admins = Admins.xml
Commands = Commands.xml
LogDir = Server1

[Misc]
AsciiChatOnly = True
IgnoreChatChars = £€æøå
ConsoleColor = 1f
Timeout = 60
KickLobbyIdlers = 500


 
Explaining the options in each block

 [Bec]

  In the [Bec] block we define Rcon parameters such as Ip, port etc. All are needed for Bec to work.

  Ip = x.x.x.x
  if you can not use 127.0.0.1, set the ip to your game server.

  Port = int
  This is the port the game server is running on.

  BePath = string
  Set the full path to your Battleye directory for you current profile setup.
  This means the path to where your BeServer.cfg and bans.txt is located.
  If you have used -profiles or -bepath as startup parameters on your server you need to point it to that dir.

  Example:
  This is how arma is started.

  "C:\arma 2\arma2oaserver.exe" -config=C:\Server-1\serveroa.cfg -cfg=C:\Server-1\arma2oa.cfg -profiles=C:\Server-1 -port=2302

  You can see that -profiles is used and its pointing to another directory. this means my BePath needs to be like

BePath = c:\Server-1\BattlEye

 

  LogDir = string
  Here it is best to use the name of your server, but can be named something else. This will create a Dir with the name you specify.
  The name must be unique, No other Running servers can use this name.
  It will only cause problems writing to the files and you would only confuse your self. This will give you a directory looking something like.

c:\ServerTools\Bec\Log\xxxx


  Admins
= file.xml
  This is the file where you define your admin and the group level on your admins.
  This file does not need to be named Admins.xml. but to make it more understandeble, we call it Admins.xml for now.
  If you do not set full path to this file. it will look in the Config directory 1st.

  Valid methodes:

  Admins = Admins.xml
  Admins = C:\some\path\Admins.xml
  Admins = \some\path\Admins.xml

  Note. if last methode is used. Bec needs to be located on the same partition.
  Note. two server may use same admin file, but not same config file.

  Commands = file.xml
  This is the file where you create your commands.
  Set custom names and group level in this file.
  This file does not need to be named Commands.xml. but to make it more understandeble, we call it Commands.xml for now.
  If you do not set full path to this file. it will look in the Config directory 1st.

  Valid methodes:

  Commands = Commands.xml
  Commands = C:\some\path\Commands.xml
  Commands = \some\path\Commands.xml

  Note. if last methode is used. Bec needs to be located on the same partition.
  Note: two server may use same Commands file, but not same config file.


 [Misc]

This Block is optional with 1 exception. In cases where you have renamed your exe file and need to use ServerExeName.

  AsciiNickOnly = Bool
  If this is enabled, Bec will auto kick all players who connects with none ASCII chars in their nickname.
  Kick happens instant on connect.
  If this parameter is not defined, AsciiNickOnly will be set to False by default

   AsciiChatOnly = Bool
  A warning will be send to the player who does not use Ascii on chat.
  You will need to set parameter Warnings to 0 or higher for this option to work.
  If this parameter is not defined, AsciiChatOnly will be set to False by default.

  IgnoreChatChars = String
  This Option will only work if AsciiChatOnly is set on.
  Add in chars/symbols that is not listed in the ASCII table.
  Example you might want to have no German/Russian chars. but Norwegian,  then you can do it like.

  AsciiChatOnly = True
  IgnoreChatChars = æøå

  You might also add in some other symbols that are not in the ascii table. such as £€ or any other that comes into your mind.
  To see which symbols are in the ascii table. check the wiki about ascii table

  Note. do save the config file as UTF8  when setting none ASCII chars on this parameter,
  its reccomended that you use a proper editor like Notepad++

  NickFilterFile = Path
  Here you can define player names you do not want to allow on your server.
  If a players nick matches any lines in the file, he will be auto kicked upon connection
  If this parameter is not defined, NickFilterFile will be disabled by default.
  If you do not set full path to this file. it will look in the Config directory 1st.

  Valid methodes:

  NickFilterFile = BadNames.txt
  NickFilterFile = C:\some\path\BadNames.txt
  NickFilterFile = \some\path\BadNames.txt
  Note. if last methode is used. Bec needs to be located on the same partition.

  WordFilterFile = Path
  Here you can define words you do not allow on your chat.
  If a players chat matches any lines in the file, he will be sent a warning.
  You will need to set parameter Warnings to 0 or higher for this option to work.
  Auto Kick will happen when he|she reaches the set value.
  If this parameter is not defined, WordFilterFile will be disabled by default.

  Valid methodes:

  WordFilterFile = BadNames.txt
  WordFilterFile = C:\some\path\BadWords.txt
  WordFilterFile = \some\path\BadWords.txt
  Note. if last methode is used. Bec needs to be located on the same partition.

  WhiteListFile = Path
  In this file you define player guids, One guid per line.
  Only players listed in this file will be able to play on the server
  Players who are not listed in this file will be kicked from the server.

  WhiteListKickMsg= string
  Here you can set the kick message for players who are not whitelisted on your server

   Warnings = Int
  This is the number of warning a player should get before autokick happens.
  There are 3 functions that uses this parameter.

  1 * AsciiChatOnly
  2 * WordFilterFile
  3 * Warn "command in Commands.xml file"

  Example of reply message from Bec:
  22:21:24 : (Global) SomeDude:fucking noob.
  22:21:25 : RCon admin #0: (To SomeDude) Watch your language. Warnings left:2

  Set this to -1 to diable warnings/warnkick functions.
  1 * AsciiChatOnly
  2 * WordFilterFile
  3 * Warn "command in Commands.xml file"

  Setting the value to 0 means Instant kick without warning.
  The player will then only get a message on the kick reason why kick happened.
  Also take a note, the command "warn" in Commands.xml will only work if this value is set higher than 0.
  Since there is no point in sending a warning when the value is 0 "instant kick". We use !kpl or other names you defined.

  Note: if you do not define this parameter. it will be det to -1 by default.
  All 3 depending functions will then be disabled by default.

  ServerExeName = name.exe
  This is only used in cases where you have renamed your arma server exe files.

  ConsoleColor = Hex
  Set custom color scheme for your Bec, value are hex, range is from 00 to FF.
  You can open CMD.exe and type example: color 1a (play around with the colors to find what you like best).
  This would be the best method to find out what colors you like instead of starting Bec up 100 times.

  ConsoleHeight = int
  Set the height of Bec's console window.

  ConsoleWidth = int
  Set the width of Bec's console window.

  Timeout = Int
  If your server for some reason needs longer than 30 seconds to start up.
  You can then set custom timeout with this parameter.
  Timeout = 60
  The number is set in seconds.

  FloodControl
  There are 2 types of flood control.
  Only one can be in use.
  The 2 types are

  if you use Type 2 it also requires two more parameters to be set.


   Type 1.
 
    Type 1 is based on how many players are in the lobby.
    If the player count is greater than what FloodControl1 is set to the server will autolock.
    The server will unlock itself once the players join the mission and there is less players in the lobby than what the value of FloodControl1 is set to.
 
    FloodControl = int

    To disable this function, don't define this parameter or set it to 0.
    Note. it may have 3 sec delay.

   Type 2.

    Type 2 is based on how many players connects to the server within given time. the server will stay locked for given time aswell.

    FloodControl = int
    FloodSampleTime = int
    FloodLockTime = int

    To disable this function, don't define the parameters or set them to 0.


  KickLobbyIdlers  = Int
  Auto kick lobby idlers who take up a slot without playing. lowest timeout value is 180 sec.
  If you set this to 0 it will be disabled or if you don't define this parameter at all it will be ignored.

  KickLobbyIdlers = 300
  This will kick a player who has been idling in the lobby for 300 sec. 5min
  Value is set in seconds.

  Scheduler = file.xml
  Set the path to your schedule file.

  Valid methodes:

  Scheduler= Scheduler.xml
  Scheduler= C:\some\path\Scheduler.xml
  Scheduler= \some\path\Scheduler.xml
  Note. if last methode is used. Bec needs to be located on the same partition.

  For more info about this. read the Setting up the Scheduler page

  MaxPlayerNameLength = Int
  Set the max lenght a player name can have.
  Players connecting with a name longer than defined in this parameter will be kicked from the server.

  DisallowPlayerNameChars = String
  Limits chars a player can have in the nick

  DisallowPlayerNameChars = [](){}<>/\^¨|§!"'#¤%&@£$€
  Players connecting and have any chars set in this parameter in their player name will be kicked from the server.

  ChatChannelFiles
  if enabled. it will create additional chat files. once for each channeø.
  files will only be created if there is chat in channels.


 [Reporter]

  In the [Reporter] block we add in account data so that GameHacks & Battleye Hacks gets automatically reported to a central ban database.
  You will need an account for this to work. You can signup here for a reporter account.
  If you don't have one or don't want to create one, just remove this block since its fully optional.
 
  If its enabled it will also check Ban/status on a Guid.
  Every player that connects is checked against the database when this is enabled.

  If a guid check returns as a bad guid. "listed guid" the player will be auto kicked and the guid automatically added to your bans.txt file

  If you see a file called "Reporting_Failures.log"
  This is a a fallback file if the host is down or unavailable for some reason.
  If the file contains guid(s) and Gamehack reason, Bec will try to upload this info every 10 min.
  If the file is empty, it means that the hack report has been accepted, the file can then be deleted.

  User = string
  Add in your account name to the central ban database.

  Password = string
  Add in your password to the central ban database.


 [ChatRestriction]
 

  Here you can set max message that is allowed for each channel.
  If you want to restrict usage of example global chat.

  [ChatRestriction]
  Global = int

  Global = 10
  This will autokick a player after the 10th message in global channel.
  Setting the value to 0 means instant kick..
  Setting the value to -1 means its disabled.

  The player will receive Warning's when typing in the global chat.

  [ChatRestriction]
  Global = 10
  Side = -1
  Group = -1
  Vehicle = -1
  Command = -1
  Commander = -1
  Direct = -1

  Is the same as:

  [ChatRestriction]
  Global = 10
 
  So if you don't need any channels to be restricted. you can delete the hole block [ChatRestriction]
  Note: This is will not use the Warnings Parameter for its counter.


 [ChatSpam]


 
  Set max amount of chat lines per channel allowed within given time frame.
  Set the values to 0 to disable this function(s)

  Quick Example:
  Lobby = 5
  Lobby_Time_Lower = 10
  Lobby_Time_Upper = 15

  If the time between each new chatlines from a player is less than CHANNEL_Time_Lower the spam counter increases by + 1.
  Consider the CHANNEL (Lobby) as the spam counter.
  When a player has (CHANNEL - 1) in spam counting. a warning will be sent to whom it may consern.
  If the time between each new chatline from the player is Greater than CHANNEL_Time_Lower and Less than CHANNEL_Time_Upper the spam counter stay as it is.
  If the time since the last chatline is greater then CHANNEL_Time_Upper the spamcounter is reset to 1.
  To get optimal result play around a bit with the values on your server.


 [Heartbeat]

  In the [Heartbeat] block we add in paths to other Be ban files.
  This is only in use If you are running multiple Arma2 dedicated servers on one Server but is optional to use.
  Once you ban on example server 1, the ban will be automatically added to server 2, 3, 4 and so on. It depends on how many files you specify.
  This function is only useful if you are running multiple servers on one machine.
  If you are running a singleArma2 Dedicated server, do not use this, and just delete/remove the [Heartbeat] block.
 
  Do not confuse this with merge. it will not merge the files only add in new bans to the defined files

  One name for each file.

[Heartbeat]
BanFile0 = C:\SERVER2_CONTROL\BattlEye\bans.txt
BanFile1 = C:\SERVER3_CONTROL\BattlEye\bans.txt


Back
Define Admins