How to Setup an Arma 3 Server on Windows Server

Updated on November 21, 2023
How to Setup an Arma 3 Server on Windows Server header image

Introduction

In this guide you will learn how to launch and run a base Arma 3 server with some extra tools, on Windows Server. ARMA 3 is a popular open world, military style FPS.

Prerequisites

Before installing the Arma 3 server, you will need to install some dependencies.

Installing SteamCMD and root server files

First, download SteamCMD from the official Valve wiki.

Step 1. Extract SteamCMD to a folder of your choice.

Step 2. Launch SteamCMD.exe and wait while it performs first time updates and setups.

Step 3. Login in with the Steam account that has Arma 3 in its library, by typing:

login <username>

Remember to replace <username> with your Steam login. If you have Steam Guard enabled than you may be asked for a authentication code, just do what you would when logging into the Steam client.

Step 4. Set the installation directory by typing: force_install_dir <path>

Replace <path> with your preferred server location. For example: force_install_dir E:/arma3ds/.

Step 5. Install the server files by typing:

app_update 233780 validate

Step 5 (Extra). If you want to update your server files automatically when an update is released, type the following instead:

app_update 233780

Step 6. Exit SteamCMD by typing:

exit

Note that Arma 3 server files are quite large and may take extended periods of time to download.

Extracting and installing TADST

Step 1. Extract TADST from the downloaded zip.

Step 2. Copy/Move TADST.exe to your server root files you downloaded earlier.

Step 3 (Optional). Make a shortcut of TADST.exe in the root folder and copy it to your desktop for ease of access.

Step 4. Run TADST.exe to create setup folders.

Step 5. Click "Server File" and choose arma3server.exe which you installed earlier.

Step 6. Set up your server however you like, leave the ports default for the sake of following this guide, turn on BattlEye for cheat protection, choose your mission file, etc. Remember to save the profile by clicking "Save" down at the bottom.

Installing BattlEye Extended Controls

Step 1. Extract BEC.zip to a temporary folder for configuration.

Step 2. Open the Config folder and edit the files to your liking, most settings can be left default.

Step 3. Critical: Copy the directory path of the battleye folder in your server files and paste them into the BePath = D:\Server_1\BattlEye, of course replacing the D:\Server_1\BattlEye part.

Step 4. Give the server a test run to do initial setups and such. Do this by running TADST.exe and clicking LAUNCH.

Configuring BattlEye and Server

Step 1. After completing a test run, the server is now ready for configuration. Find BEServer.cfg located in:

Arma3ds/TADST/default/battleye

Step 2. Make any personal configuration changes.

Running the server (simplified version)

Step 1. After installing server root files, create a shortcut of the arma3server.exe and place it on your desktop.

Step 2. Right click the shortcut and edit the launch parameters like so: "D:\example\example\arma3example\arma3server.exe" "-profiles=D:\example\example\arma3example\A3Master" -port=2302 -config=arma_server.cfg -world=empty

Step 3. Now create a arma_server.cfg file by creating a text document, this will contain all your configuration. Example configuration on this pastebin.

Step 4. To run your server, double click the shortcut you've created!

Required ports

Remember to open the ports required by Arma 3's dedicated server.

Incoming:

  • UDP 2302 (Arma3 game port) + (voice over net)

  • UDP 2303 (Steam query port)

  • UDP 2304 (Steam port)

Outgoing:

  • TCP/UDP 2344 (BattlEye 1)

  • TCP 2345 (BattlEye 2)

  • UDP 2302-2305 (Client traffic)

  • UDP 2303 (Steam query port)

  • UDP 2304 (Steam master traffic)

Useful Information

File Locations:

  • \Users\Administrator\Administrator.Arma3Profile (Difficulty settings)

  • \Users\Administrator\Administrator.vars.Arma3Profile (Binary)

  • \Users\Administrator\Arma3.cfg (Bandwidth/server settings)

  • \MPMissions\ (This is where custom made mission PBO's need to be placed)

  • \arma3.rpt (Debug log, automatically created every time the server is started)

  • \arma_server.cfg (Manually created)

Conclusion

Overall, Arma 3 servers are very complex and customisable. Thank you for reading and enjoy your server!