Arma 3

Resources

Headless Client

Headless Client Overview

  • Headless Client is used to offload AI calculations from the server.
  • Headless Client is integrated into game client and dedicated server executable (Windows and Linux, use -client parameter).
  • The server does not allow arbitrary connections from headless clients if you do not define the headless clients IPs in the server.cfg.

Headless Client Setup and Usage

Starting up a headless client and having it connect to your server is easy, Creating a mission that uses the Headless Client is not.
This guide only handles the setup and connecting a headless client.
Create a new server instance using LinuxGSM ./linuxgsm.sh arma3server. This will become the headless client instance and rename the new instance to arma3server-hc.
Edit the config file lgsm/config-lgsm/arma3server-hc.cfg.
Change the port= increasing the number by a factor of 12 e.g 2303 becomes 2314.
Update startparameters= changing it to the following.
1
startparameters="-client -connect=${ip}:${port} -password=CHANGEME"
Copied!
Edit the game server config of arma3server (not the headless client) arma3server.server.cfg and add the headless client IP address to headlessClients[]=. If the headless client is on the same physical server as the ARMA 3 server then also add the IP to localClient[]=.
Do not use 127.0.0.1 as the IP address.
1
headlessClients[]={"1.2.3.4"};
2
localClient[]={"1.2.3.4"};
Copied!
Navigate to your profile directory.
1
~cd ~/.local/share/Arma\ 3\ -\ Other\ Profiles
Copied!
edit Player.Arma3Profile and add the line battleyeLicense=1;.
Start your server with ./arma3server start
Start your headless client with ./arma3server-hc start.
Only an admin can see the headless clients in the player menu on the server. The headless client will connect and automatically assume the first available headless client slot.
A3_hc_tutorial.pdf
708KB
PDF
In depth guide to headless clients

Mod Support

Arma 3 mods are managed using the Steam Workshop or manual downloads.

Adding Mods

Firstly, you need to select the mods you want to use from the steam workshop.
Mods can cause your server to become unstable or may not be compatible with each other. It is a good idea to read the mods docs and/or speak with other experienced Arma3 admins.
Here is a popular mod to get started:
Download the Mod using https://steamworkshopdownloader.io/ the workshop id is 450814997
Create a directory called @cba_a3 in serverfiles/mods
1
serverfiles/mods/@cba_a3
Copied!
Copy the contents of the mod archive to the @cba_a3 directory.
Remember to check you have the correct user permissions once uploaded
Copy the contents of the @cba_a3/keys directory to the server keys directory.
1
cp serverfiles/mods/@cba_a3/keys/* serverfiles/keys
Copied!
Add @cba_a3 to the mods="" setting in the LinuxGSM config.
1
mods="mods/@cba_a3"
Copied!
If you are adding multiple mods make sure you put a semicolon in between each mod.
1
mods="mods/@mod1;mods/@mod2"
Copied!

Lower Case File Names

Arma 3 server requires that mods have lowercase names. Some mods do not do this and will need to have there file names converted to lowercase.
This can be done by using the following script.
Run the script from the serverfiles/mods directory.
1
#!/bin/bash
2
depth=0
3
for x in $(find . -type d | sed "s/[^/]//g")
4
do
5
if [ ${depth} -lt ${#x} ]
6
then
7
let depth=${#x}
8
fi
9
done
10
echo "the depth is ${depth}"
11
for ((i=1;i<=${depth};i++))
12
do
13
for x in $(find . -maxdepth $i | grep [A-Z])
14
do
15
mv $x $(echo $x | tr 'A-Z' 'a-z')
16
done
17
done
Copied!
Start the server and check that your mods all have valid hashes. You should see the "Community Base Addons" mod appear in your console logfile.
1
15:27:37 ============================================================================================= List of mods ===============================================================================================
2
15:27:37 modsReadOnly = true
3
15:27:37 safeModsActivated = false
4
15:27:37 customMods = true
5
15:27:37 hash = 'B44C8332DD951EC30619282DAC7A59519AA0BCB6'
6
15:27:37 hashShort = '185e1b29'
7
15:27:37 name | modDir | default | official | origin | hash | hashShort | fullPath
8
15:27:37 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
9
15:27:37 Community Base Addons v3.15.3 | @cba_a3 | false | false | GAME DIR | fa100065ad10a6ab7a5e16d53efc2b26f3df3b58 | 7f1d8e45 | /home/lgsm/arma3server/serverfiles/@cba_a3
10
15:27:37 Arma 3 Art of War | aow | true | true | GAME DIR | 93cf5270ce855921dcfd261c583983d4e0bb6899 | 2930da71 | /home/lgsm/arma3server/serverfiles/aow
11
15:27:37 Arma 3 Contact (Platform) | enoch | true | true | GAME DIR | 61e8060b8dce2727f235695e59de01089546d9ad | 2dd9b92b | /home/lgsm/arma3server/serverfiles/enoch
12
15:27:37 Arma 3 Tanks | tank | true | true | GAME DIR | 37296b3dd900117d055e6c13e1ce21e54cd8067b | dfc0778f | /home/lgsm/arma3server/serverfiles/tank
13
15:27:37 Arma 3 Tac-Ops | tacops | true | true | GAME DIR | dec763aedfdc28eab838361370a48f2411535e5a | 70a109b7 | /home/lgsm/arma3server/serverfiles/tacops
14
15:27:37 Arma 3 Laws of War | orange | true | true | GAME DIR | a786e1c2e7b3aec524cc1ce932039dc18da0351d | 128b066b | /home/lgsm/arma3server/serverfiles/orange
15
15:27:37 Arma 3 Malden | argo | true | true | GAME DIR | b9edefa0cd211d0961282ce9b69eabeb59bda780 | 1954e272 | /home/lgsm/arma3server/serverfiles/argo
16
15:27:37 Arma 3 Jets | jets | true | true | GAME DIR | cd6561bc9148fec23b136de7fa02bfbd71e12221 | 1f2e3b6f | /home/lgsm/arma3server/serverfiles/jets
17
15:27:37 Arma 3 Apex | expansion | true | true | GAME DIR | 2d573cab31befb9729503ed00c211628c73622cc | e5ad6f6c | /home/lgsm/arma3server/serverfiles/expansion
18
15:27:37 Arma 3 Marksmen | mark | true | true | GAME DIR | f0784723164eb212a22fa2d49e589bead97a9735 | 2d4eada7 | /home/lgsm/arma3server/serverfiles/mark
19
15:27:37 Arma 3 Helicopters | heli | true | true | GAME DIR | 1af5847f6b557b98763dfdad7be3c32491cee65e | 873ada67 | /home/lgsm/arma3server/serverfiles/heli
20
15:27:37 Arma 3 Karts | kart | true | true | GAME DIR | 5ebe4af2ae6777d560a14cf9e39d4ee3f852a75c | 3a3f5ff9 | /home/lgsm/arma3server/serverfiles/kart
21
15:27:37 Arma 3 Zeus | curator | true | true | GAME DIR | 351bd6e8b13a4e8f514a173bf78dd949c899e107 | b6d4451 | /home/lgsm/arma3server/serverfiles/curator
22
15:27:37 Arma 3 | A3 | true | true | NOT FOUND | | |
23
15:27:37 ==========================================================================================================================================================================================================
Copied!