BattlEye
Introduction
BattlEye website
Abbreviation: BE
BattlEye is an anti-cheat tool created by BattlEye Innovations. It is currently included in Bohemia Interactive's ArmA and ArmA 2 series as an optional installation and server configuration option. It works by scanning connected clients for various cheat an exploit methods and upon detection, disconnecting (kicking) the offending clients. You can find more details about the BE cheat scanning engine on the info page.
Privacy
BattlEye will never violate your privacy in any way. The EULA clearly states this when installing BattlEye. Any other statements found anywhere else are superseded by the EULA.
BattlEye always has and will secure the user's privacy and protect against any sort of software exploitation from outside.
Setup
Latest version
You can find out what the latest version is by visiting the news section.
Installation
Installation of the BattlEye client is an option during the initial game installation process.
BE updates itself automatically during a running MP session with internet access. However in the case of troubles use the following options:
Manual BEClient.dll download
a) Download the latest BEClient.dll from the download section. Make sure to download the BEClient.dll for the your series of ArmA:
- ArmA
- ArmA II
- Operation Arrowhead
Now you need to put BEClient.dll to the right location:
- Windows 7
C:\Users\%USERNAME%\AppData\Local\ArmA 2 OA\BattlEye\
- Windows XP
C:\Documents and Settings\%USERNAME%\Local Settings\Application Data\ARMA 2 OA\BattlEye\
- STEAM
c:\Program Files (x86)\Steam\SteamApps\common\ARMA 2 Operation Arrowhead\Expansion\BattlEye\
Automated BEClient.dll installer
b) Download the installer for your series of ArmA.
Next run it and use run as Administrator (select file by left mouse click, right mouse click, select the "run as" option).
It is a very fast silent-installer. This means normally you wil not notice anything - no application widow, no progress bar, no completion info. Only if there are issues, it will speak up.
The automated installer looks for the BEClient.dll on your computer:
- If your BEClient.dll is same or newer, then installer does nothing,
- If your BEClient.dll is older, it updates the BEClient.dll version,
- If the BEClient.dll is not found, it will install the latest BEClient.dll.
You can verify if it was installed by checking the software uninstall list. You find it under "BattlEye for OA uninstall".
Installation on Linux servers
First of all, set up a working ArmA II or ArmA II:OA server. When your Linux A2 server works as it should, you can follow these instructions to install and enable BattlEye.
- Log on to your Linux server with SSH or open a new terminal emulator window.
- Change directory to where you have the ArmA II server files installed. In this example we'll use /home/arma2/arma2server as the server's installation directory:
cd /home/arma2/arma2server
- Next, create a directory for the BattlEye server. For an ArmA II server, the path should be ./battleye and for an ArmA II: Operation Arrowhead server it's ./expansion/battleye:
mkdir battleye
ormkdir expansion/battleye
- Download the correct BE server from the BattlEye website - there's one file for ArmA II and another for ArmA II:OA. You can use a command-line download tool such as "wget" or "curl" aswell. For ArmA II, use
wget http://www.battleye.com/downloads/arma2/beserver.so -O battleye/beserver.so
and for ArmA II:OA it'swget http://www.battleye.com/downloads/arma2oa/beserver.so -O expansion/battleye/beserver.so
- You now have the BE server component installed. Enable it in your game server's config with
BattlEye=1;
- Start the server again and watch the log file (usually "log.2302.txt"). With BattlEye enabled, you'll see an extra line of output when the server is started. For example:
14:20:22 BattlEye Server: Initialized (v1.122)
- (Optional) In order to administrate your BE server remotely, you'll need to create a configuration file for the BE server. It should be named beserver.cfg and placed in the BE directory you just created. We'll create one and set the admin password to "mypassword". (You should change the password used in this example to something better). For an ArmA II server, run
echo "RConPassword mypassword" > ./battleye/beserver.cfg
For an ArmA II:OA server, do this:echo "RConPassword mypassword" > ./expansion/battleye/beserver.cfg
For more details, see the section below on "RCon".
Configuration
Client
Apart from installation there is no additional configuration required for game clients.
Server
Refer to the server.cfg section on how to enable BattlEye on a game server.
BE commands
GUID banning
BE can permanently or temporarily ban players from your server. The advantage over ArmA 2's PID banning is that the BE GUID cannot be hacked/changed client-side, therefore the only way for a player to get unbanned is to buy a new game/cd-key.
The following commands are available to manage GUID bans:
loadBans | (Re)load the BE ban list from bans.txt. |
bans | Show a list of all BE server bans. |
ban [player #] [time in minutes] [reason] | Ban a player's BE GUID from the server. If time is not specified or 0, the ban will be permanent; if reason is not specified the player will be kicked with "Banned". |
addBan [GUID] [time in minutes] [reason] | Same as "ban", but allows to ban a player that is not currently on the server. |
removeBan [ban #] | Remove ban (get the ban # from the bans command). |
writeBans | removes expired bans from bans file |
You can either enter them via BE RCon or in-game using "#beserver [command]" (if logged in as admin). For example
#beserver ban 11
Keep in mind that the player # used here is the one listed by BE's "players" command.
BattlEye GUID and IP bans will now both be loaded from and saved to bans.txt (no longer guidbans.txt and ipbans.txt) in your server's BE working directory.
RCon
Latest version: b0.91.
Since BattlEye server version 1.102 you can control your ArmA game server remotely (without having to be in-game) the BattlEye RCon tool.
- Download the BattlEye RCon tool (BERCon.exe).
- Create a file called beserver.cfg in BattlEye working directory on the server.
- Set your private RCon password in the beserver.cfg.
- Start the RCon tool on your computer.
- Connect to your server with its IP, port and RCon password.
BattlEye working directory
The BattlEye working directory is a folder in one of three places:
- A folder named BattlEye within the ArmA II application data folder
- A folder named BattlEye in the path given by the -profiles startup parameter
- In a folder given by the -bepath startup parameter
NOTE Even if using custom locations you will still need the .dll's or .so's ALSO in the default location ("<arma2>\BattlEye" for A2 or "<arma2>\Expansion\BattlEye" for OA/CO) for BattlEye to start!!!
The ArmA II application data folder
In Windows Vista, 7 and 2008, that's the path given by %LOCALAPPDATA%\ArmA 2 for ArmA II and %LOCALAPPDATA%\ArmA 2 OA for the Arrowhead dedi. A typical value is:
C:\Users\username\AppData\Local\ArmA 2
In Windows XP and 2003, the application data folder is %USERPROFILE%\Local Settings\Application Data\ArmA 2. A typical example is:
C:\Documents and Settings\username\Local Settings\Application data\ArmA 2
These locations are the default and are used, if you launch the dedicated server without using either the -profiles or -bepath launch parameters.
The -profiles location
The path given as the -profiles=... startup parameter used when launching the ArmA II dedi. If, for example, you would launch the ArmA II OA dedicated server using:
arma2oaserver.exe -profiles=D:\Games\ArmA2
then the BattlEye working directory would be:
D:\Games\ArmA2\BattlEye
NOTE Even if using custom locations you will still need the .dll's or .so's ALSO in the default location ("<arma2>\BattlEye" for A2 or "<arma2>\Expansion\BattlEye" for OA/CO) for BattlEye to start!!!
The -bepath location
You can also specify the BattlEye working directory directly using the startup parameter -bepath. Example:
arma2oaserver.exe -bepath=D:\MyBattlEye
In this case, the BattlEye working directory will be:
D:\MyBattlEye
NOTE Even if using custom locations you will still need the .dll's or .so's ALSO in the default location ("<arma2>\BattlEye" for A2 or "<arma2>\Expansion\BattlEye" for OA/CO) for BattlEye to start!!!
Full examples
Here are examples of the full paths to the beserver.cfg file for a few different cases. The examples assume that the username of the user that will run the servers is "jimbob". "ArmA II" means running the arma2server.exe whereas "Arma II OA" means you're launching arma2oaserver.exe
ArmA II, Windows 7/Vista/2008, default: | C:\Users\jimbob\AppData\Local\ArmA 2\BattlEye\beserver.cfg |
ArmA II OA, Windows 7/Vista/2008, default: | C:\Users\jimbob\AppData\Local\ArmA 2 OA\BattlEye\beserver.cfg |
ArmA II, Windows XP, default: | C:\Documents and Settings\jimbob\Local Settings\Application data\ArmA 2\BattlEye\beserver.cfg |
ArmA II OA, Windows XP, default: | C:\Documents and Settings\jimbob\Local Settings\Application data\ArmA 2 OA\BattlEye\beserver.cfg |
Any ArmA II, any Windows, -profile=D:\profiles: | D:\profiles\BattlEye\beserver.cfg |
Linux
For Linux dedicated servers, the default locations are:
- For the ArmA II dedi, it's ./battleye
- For the ArmA II OA dedi, it's ./expansion/battleye
Sample beserver.cfg
RConPassword xyzxyz MaxPing 200
RCon commands
missions | Returns a list of the available missions on the server. |
players | Displays a list of the players on the server including BE GUIDs and pings. |
kick [player#] | Kicks a player. His # can be found in the player list using the 'players' command. |
RConPassword [password] | Changes the RCon password. |
MaxPing [ping]" | Changes the MaxPing value. If a player has a higher ping, he will be kicked from the server. |
Exit | Closes the connection. |
- server commands are passed directly to server:
#mission [missionName] - Loads the given mission on the server.
Support
- BE Support page with contact details
- Frequently Asked Questions:
- I am getting kicked for the following violation(s). I don't use hacks, so what can I do to resolve this?
- How do I enable BattlEye in-game to be able to play on BE-enabled servers?
- Are administrator rights required when playing with BattlEye enabled?
- I am using a 64-bit operating system but can't seem to find the right files in the download section. Is 64-bit unsupported?
- I am running multiple dedicated servers from one installation. Is there anything I have to keep in mind regarding BattlEye?
- BI forum sticky threads