Dedicated Server – ArmA: Armed Assault
Introduction
This article covers some of the aspects of the dedicated server for Armed Assault and Arma 2
Some of the information on this page covers beta versions of the software and documentation.
This software is released under end user agreement terms as the original game so you should agree with the terms of the end user agreement of ArmA: Armed Assault/Arma 2 as found in the manual before installing and using this software.
Installation
We recommend using 2 GHz machine, with 512 MB RAM and a 1 Mbps upload network bandwidth.
ArmA: You need either a Microsoft Windows 2000/XP or Linux computer to run an ArmA dedicated server.
Arma 2: You need a Microsoft Windows XP/2000/Vista/2008/Seven computer to run an Arma 2 dedicated server, yet a version of Linux server is also available.
The rest of this section covers installation on a Windows computer. For installation on a Linux computer see the Linux section.
There are two possible ways to install the dedicated server. When you have installed the ArmA game, you can use the main executable (ArmA.exe) with the command line argument –server to start a dedicated server. While this is easy, it requires the ArmA DVD to be present in the drive during server operation and also original serial number. (However with the latest patch version 1.05 the DVD is no longer needed.).If you want to run a server without the DVD and serial number, you have to use the standalone dedicated server executable.
The latest version of this executable is always available from the Downloads section.
To install a standalone server
- Install the corresponding version of the game on any machine (you will need ArmA DVD for this)
- Add the ArmA_Server.exe file to the same directory as ArmA.exe. Copy your already installed ArmA directory on to the server.
- Create a configuration file for your server. See server.cfg for further information.
Installing a patch on the dedicated server
To install a patched version on the dedicated server, you can either install the patch on some machine with the full game installed and then transfer the full patched game, or you can download the patch to the dedicated server, make sure there exists a registry entry on the server so that the patch can find the game location, verify the CD key, and apply the patch directly on the server.
The registry entry can be created by exporting a registry key HKEY_LOCAL_MACHINE\SOFTWARE\Bohemia Interactive Studio\ArmA from the machine where the game is installed. The file should look like this:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Bohemia Interactive Studio\ArmA] "KEY"=hex:xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx "MAIN"="C:\\Program files\\Bohemia Interactive\\ArmA"
To install updates on Windows Server 2003 (64bit) and all the other options have not worked please try this work around instead you will still need to edit the paths "Main"="C:\\Your\\ArmA\\Path\\ArmA"
- note: the installer might use PATH instead of default MAIN key, this is unstandard fix and might not work with latest patches
Windows server 2003 (64bit)
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Bohemia Interactive Studio] [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Bohemia Interactive Studio\ArmA] "Main"="C:\\Program files\\Bohemia Interactive\\ArmA" "PATH"="C:\\Program files\\Bohemia Interactive\\ArmA" "KEY"=hex:xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx
Startup Options
Example
"ArmA_Server.exe -config=server.cfg -netlog -port=2302 -mod=hisky"
-config= <----Specifies the config file to use. See server.cfg -mod= <----extra command to run folder mods -netlog <----command to record traffic from the game server in BI format (requires 1.02 and above) -port= <----Port for the server to listen on. -world= <----start another default world -noland <----unknown functionality (in player mode it removes all land textures and turns it grey) -ranking=<filename> <----path for game stats log (new in 1.07) -pid=<filename> <----specifies a file to write the server's PID (process ID) to. The file is removed automatically when the server is stopped
Server Crashes
In the event of a server crash, please help BI to fix the problem by sending the crash files arma.rpt and arma.bidmap files that will be created on each crash. For the location of these files and where to send them to, see Crash Files.
Server Security
There are several settings you might want to consider which improve the security and integrity of the dedicated server which are found in the server.cfg.
Server Administration
You can administer the server as a player through various Multiplayer Server Commands. It is also possible to remotely administer the server through BattlEye's RCon administration tool
Banning
To ban a user you have to know their unique online ID (called Player ID). This can be checked in the players overview screen ('P' key) during the game, or with the #userlist command. To ban a user you have to add their Player ID to file ban.txt residing in the main ARMA directory. If there is no such file there, create a new one. The format of ban.txt is a plain ASCII text list of decimal Player IDs delimited with space, tabulator or end-of-line characters.
Firewall issues
By default the Armed Assault server is reporting to Gamespy and it also uses the Gamespy server to negotiate a NAT traversal. If this does not work reliably for you (e.g. when running behind very strict firewall), you may need to open and/or forward following incoming ports:
port UDP (used for game) port+1 UDP (used for server reporting) port+3 UDP (used for VoN transmissions)
Following outgoing ports need to be open as well:
port UDP (used for game) port+3 UDP (used for VoN transmissions)
Default value of port is 2302, but you may change it by -port command line argument.
Proxy issues
You may enforce proxy server used to download xml squad page etc. Using the value "proxy" in server.cfg.
Performance Tuning Options
Moved to Server Basic Config file
Running Server as a Service
You may also consider running the ArmA server as a service, and enabling automatic restart in case of crash. In this case, you may want to disable DrWatson crash monitoring utility on your computer, as it often prevents ArmA server to shutdown properly (by displaying a message box that requires an operator to confirm application termination).
A HowTo for user-defined services can be found at http://support.microsoft.com/kb/137890/en-us.
Linux
Linux dedicated servers are also supported.
A first description of how-to setup an ArmA linuxserver has been posted on the offical BI forums. You may follow these few steps that illustrate a setup on a Debian-based machine:
1.) follow all instructions of readme 2.) edit startupfile "armaserver" and change vars, fitting for your system 3.) start server manually (command: ./server). Now the player directory should be created. 4.) stop server with ctrl+c 5.) edit player/player.armaprofile 6.) create and edit a arma.cfg (all lowercase! ) in main directory of arma 7.) run server via ./armaserver start 8.) have fun!
Please note that you can create other users than the standard player to configure different quality settings. All you need is an directory named <username> and therein a <username>.armaprofile as the configuration file. Then simply start the server with the optional parameter -name=<username>.
When you're a Linux beginner and encounter problems without adequate error messages, then your distribution is probably missing necessary packages.
For instance Unbuntu hardy 8.04 LTS amd64 (64bit) Desktop:
- package build-essential (11.3ubuntu1) and all of it's required packages for the ArmA install script to work
- package ia32-libs (2.2ubuntu11) and all of it's required packages for the ArmA 32bit server application to run on the 64bit operation system.
In case your linux distribution doesnt have a package set of libraries like the ia32-libs are, I managed to get the server running on Archlinux 64bit
by installing the following packages as 32bit versions:
- glibc
- gcc-libs
- libstdc++5
- zlib
In case you encounter "Server died, waiting to restart..." instantly after the server was created, you may have SElinux enabled. (Fedora Core)
Remarks on ArmA2
- Follow the "readme.txt"
- To execute "install" the compiler "gcc" plus it's so called "build-essentials" are needed. You can try executing "install". If there are errors like "stdio.h missing etc." then install the package "build-essentials".
- Try "./server" first and read the messages on the command line to get an idea whether the server is running or not. Check the directory for any files like "core.*" and read the "log.*.txt" file to get an idea if there's any problem.
- Edit
- "arma2.cfg", see also basic.cfg
- "server.cfg" = Config setting in "arma2server", see also server.cfg
- "player/player.arma2profile", see also server.armaprofile
Downloads
ArmA
Windows
- Official: v1.14.5256 is available from the armedassault.com update page as part of the v1.14 patch.
- Beta: v1.15.5268 is available from armedassault.com, ARMA_BETAPATCH_115.zip (49.7MB, Release: December 23rd 2008)
- Beta: v1.16.5277 is available from armedassault.com, ArmA_PublicBeta_Patch116.zip (51.6MB, Release: April 24th 2009)
- RC: v1.18.5281 Release Candidate is available from armedassault.com, ARMA_Update118RC.zip (132MB, Release: December 15th 2009)
Linux
- Official: v1.14.5257 is available from armedassault.com server-1.14.tar.bz2 (3.95MB, Release: May 22nd 2008)
- RC: v1.18 Release Candidate is available from armedassault.com arma1server-1.18.tar.bz2 (3.97MB, Release: December 15th 2009)
Arma 2
Linux
- Beta: v1.04.61018 is available from the BI Forums, The Patches Scrolls (5.0 MB, Released: Dec 9th 2000)
- Beta: v1.04.60159 is available from the BI Forums, The Patches Scrolls (5.0MB, Released: Nov 20th 2009)
- Alpha: v1.04.59822 is available from the BI Forums (4.2MB, Released: Oct 27th 2009)
CRC32: A353E31F MD5: F5515D415C5365121CE3291A2C57F856 SHA-1: E1A8BFC87CC6BD90AC2E0F9D81A90DBDF0E1D127
- Beta: v1.07.71852 is discussed here: Arma 2 Linux Server 1.07 BETA (5.2 MB, Released: June 30th, 2010)
- Official: v1.08.76257 released here: ArmA 2 Linux Standalone Server 1.08 (5.2 MB, Released: Nov 30th, 2010)
- Beta: v1.09.79146 is discussed here: Arma 2 Linux Server 1.09 BETA (Released: March 22th, 2011)
- Official: v1.10.80666 is available from Arma2.com is discussed here: ArmA 2 Linux Standalone Server 1.10.80666 (Released: June 23th, 2011)
CRC32: EFF77573 MD5: E34165ACFF4AD90E7AD76BDDF64A2C9F SHA1: 670BC4776345AE0C435843F13CA3FFCE51E6C142
Windows
- Beta: v1.02.58055 is available from the Arma2.com, ArmA2Server_1_02BETA.zip (4.2MB, Released: June 19th 2009)
- Official: v1.03.58659 is available from Arma2.com, ArmA2server_1_03.zip ,kellys-heroes.eu , The Patches Scrolls (4.35MB, Released: August 6th 2009)
- Official: v1.04.59026 is available from Arma2.com , ArmA2server_1_04.zip , kellys-heroes.eu , FileFront.com , The Patches Scrolls
- From v1.05 and beyond the window dedicated server exe is part of the client patch. Just move the arma2server.exe with the according dta folder contents to your server.
ArmA 2: Operation Arrowhead
Linux
- Official: v1.54.72898 is available from here
- Beta: v1.55.75619 is available from here
- Beta: v1.56.76188 can be downloaded here
- Official: v1.57.76894 here
- Beta: v1.57.76934: here
- Beta: v1.57.77737: here
- Beta: v1.58.78554: here
- Official: v1.59.79548 here
- Beta: v1.59.84216: here
- Beta: v1.59.84426: here
- Beta: v1.59.85663: here
Windows
- Official: 1.52.71816 is included in the 1.52 patch
- Official: v1.57.76903 (hotfixed!) here
- Beta: Newer builds are included in the ArmA II OA beta patches available here.