Jump to content
hellstorm77

Arma 3 Headless Client

Recommended Posts

Awesome thanks! Ill start messing around with trying to get it to work, I was wondering what does your 

hc1_perf.cfg

 

look like?

Share this post


Link to post
Share on other sites

Also Im having some troubles with it, I keep getting /home/desktop/Desktop/SteamCMD/steamcmd_linux/Arma3/logs/hc1/hc1con_1497752665.log: No such file or directory

Share this post


Link to post
Share on other sites

Hi all, I'm struggling with the "Steam authentication failed" error on my HC. I've tried every single thing I could find on the web but have not been able to resolve the issue.

 

Do I need to have 2 seperate copies of the game on 2 seperate steam accounts for the HC to work properly? I was trying to run off of the server.exe but no matter how many times I check my IP addresses and make sure battleyeLicence=1. I can't get the HC to stay connected. 

 

I'm running the HC on a virtual machine on the same box as the server is being run on. I'm using the IP given to me when using ipconfig inside of the VM, as well as the local IP of the server.

 

I've been using TADST, but using a seperate config and batch file hasn't rendered any results either. I'm at a complete loss unless I need to have 2 copies of the game for this to work.

 

Thanks in advance.

Share this post


Link to post
Share on other sites

Are the official missions like MP_GroundSupport01.Altis configured to use headless client?  If so, what would the HC be named (i.e. HC1, HC2)?

 

Thanks

Share this post


Link to post
Share on other sites

Hi I hope someone can help me with this issue as I've just spent ~8hrs banging my head against the wall trying to get this to work lol.
I have a server running on a dedicated machine and another machine set up as a headless client I've gone through every tutorial/guide I could find and as far as I can see it's all set up correctly BUT when I run the HC the window just says "dedicated client created" and then nothing happens. It doesn't connect or do anything. 
Here is the bat file I use to run the HC:
 

start /min "" "C:\SteamCMD\steamapps\common\Arma 3 Server\arma3server_x64.exe" -client 
-connect=192.168.1.7 -port=2302 
-password=***** 
-profile="C:\Users\damie\Documents\Arma 3 - Other Profiles\headlessclient\headlessclient.Arma3Profile" 
-mod=@CBA_A3;@RHSUSAF;@RHSAFRF;@ace;@ACE_Compat_-_RHS_Armed_Forces_of_the_Russian_Federation;@ACE_Compat_-_RHS_United_States_Armed_Forces;@Advanced_Rappelling;@Advanced_Towing;@Advanced_Urban_Rappelling;@3CB_BAF_Equipment;@3CB_BAF_Units;@3CB_BAF_Units_(ACE_compatibility);@3CB_BAF_Units_(RHS_compatibility);@3CB_BAF_Vehicles;@3CB_BAF_Vehicles_(Servicing_extension);@3CB_BAF_Weapons;@3CB_BAF_Weapons_(ACE_compatibility);@ACE_Compat_-_RHS-_GREF;@ALiVE;@ACEX;@CUP_ACE3_Compatibility_Addon_-_Terrains;@CUP_Terrains_-_Core;@CUP_Terrains_-_CWA;@CUP_Terrains_-_Maps;@FA-18_Super_Hornet;@G.O.S_Leskovets;@Project_OPFOR;@RHSGREF;@RHSSAF;@TAC_VESTS;@TF_Snow_Storm_Menu;@TRYK_[TRYK's_Multi-play_Uniforms];@VSM_All-In-One_Collection;@Winter_2035;@ZEC_-_Zeus_and_Eden_Templates_-_Building_Compositions;@ZECCUP_-_Zeus_and_Eden_Templates_for_CUP_Terrains;@Spyder_Addons

I'm using TADST to run the server and I have the HC check box ticked with the IP for the HC machine listed. I checked the rpt file and there's no errors of any kind.
Any help would be appreciated and let me know if you can help but need more info, thanks!

Share this post


Link to post
Share on other sites

I also have serious trouble getting HC to work on Ubuntu. It just doesn't seem to work no matter what config parameters I try, and I have tried all possible permutations I can think of. HC-side and server side. With BattleEye enabled, without BattleEye, with battleEye license and without, all client IPs in whitelist, different ports used, different steam accounts used, windows dedicated client to dedicated linux server, dedicated linux client to dedicated linux server - nothing seems to make any difference.

 

The server always kicks the HC client with: 

Client: headlessclient - Kicked off because of invalid ticket: Invalid ticket - Ticket invalid

Which is  odd, because apparently Steam shouldn't even be involved with HCs or DCs. The only combination that seems to work is dedicated windows client to dedicated windows server. But that's not what I want. I want it to work against linux DS, preferably from a dedicated linux client.  

 

Im starting to wonder if anyone actually got this working. If you have, could you please advice on how you have set things up?

Share this post


Link to post
Share on other sites
17 hours ago, Gibbo_ said:

I also have serious trouble getting HC to work on Ubuntu. It just doesn't seem to work no matter what config parameters I try, and I have tried all possible permutations I can think of. HC-side and server side. With BattleEye enabled, without BattleEye, with battleEye license and without, all client IPs in whitelist, different ports used, different steam accounts used, windows dedicated client to dedicated linux server, dedicated linux client to dedicated linux server - nothing seems to make any difference.

 

The server always kicks the HC client with: 


Client: headlessclient - Kicked off because of invalid ticket: Invalid ticket - Ticket invalid

Which is  odd, because apparently Steam shouldn't even be involved with HCs or DCs. The only combination that seems to work is dedicated windows client to dedicated windows server. But that's not what I want. I want it to work against linux DS, preferably from a dedicated linux client.  

 

Im starting to wonder if anyone actually got this working. If you have, could you please advice on how you have set things up?

Hi would you be able to share the bat file you use to run the headless client? If you got it working from dedicated windows to dedicated windows that's what I am trying to do :)

Share this post


Link to post
Share on other sites

Certainly, here goes:

 

Dedicated server:

@echo off
setlocal

set A3serverPath=D:\Apps\A3Master
set mods=@ace;@cba_a3

start %A3serverPath%\arma3server_x64.exe -profiles=%A3serverPath% -port=2302 -config=config_server.cfg -world=empty -mod=%mods%

echo Arma 3 Dedicated Server started
timeout /T 15

config_server.cfg:

.. omitted standard/defaults  ..

BattlEye             = 0;    // If set to 1, BattlEye Anti-Cheat will be enabled on the server (default: 1, recommended: 1)
verifySignatures     = 0;    // If set to 2, players with unknown or unsigned mods won't be allowed join (default: 0, recommended: 2)
headlessClients[]    = {"127.0.0.1"};    // list of IP addresses allowed to connect using headless clients; example: {"127.0.0.1", "192.168.1.100"};
localClient[]        = {"127.0.0.1"};    // list of IP addresses to which are granted unlimited bandwidth; example: {"127.0.0.1", "192.168.1.100"};

BattelEye and battleyeLicense makes no difference whatsoever as far I can tell.

 

Dedicated client:

@echo off
setlocal

set A3serverPath=D:\Apps\A3Master
set A3host=localhost:2302
set mods=@ace;@cba_a3

start %A3serverPath%\arma3server_x64.exe -profiles=%A3serverPath% -port=2314 -client -noSound -connect=%A3host% -name=hc1 -password=XXXXX -mod=%mods%

echo Arma3 Dedicated Client started
timeout /T 15

Server and client on same machine in this example but it also works with HC on a different host. Just change headlessClients and localClient, as in:

headlessClients[] = {"192.168.1.119","127.0.0.1"}; 
localClient[] = {"192.168.1.119","127.0.0.1"};

I think in your script you have to change the connect param to:

-connect=192.168.1.7:2302

 

Share this post


Link to post
Share on other sites

So I found the best way to do headless clients for Windows and Linux (remotely)

For both setups, you need to ensure that headlessClients, and or localClients in server CFG have the remote or local HC you want to add to it, otherwise, you will get steam authentication errors:

headlessClients[] = {"my.home.address.ip","admin2.address.ip","127.0.0.1"}; 
localClient[] = {"my.home.address.ip","admin2.address.ip","127.0.0.1"};

 

 

For Windows:

*Make a folder called "hckit" inside your arma3 server main directory

*inside this directory make a file called "headless.par"

Here is an example of my .par file edit it to your liking. Note, mods are also relative, so in my case, I store all my @mods in my root server directory. If you want to let's say use mods from another hard drive, you would have to individually add full paths.

class Arg
{
	client="-client";
	connect="-connect=ip.address.here";
	localhost="-localhost=ip.address.here";
	name="-name=HC";
	port="-port=1337";
	password="-password=password";
	maxmem="-maxMem=8196";
	malloc="-malloc=tbb4malloc_bi_x64";
	exthreads="-Exthreads=7";
	mod="-mod=Argo;Curator;Heli;Jets;Kart;Mark;Tank;@CBA_A3";
	nosound="-nosound";
};

Afterward, find where "arma3server_x64.exe" is located, right click and create a shortcut. Now right-click that shortcut and:

"C:\Program Files (x86)\Steam\steamapps\common\Arma 3\arma3server_x64.exe" "-par=hckit\headless.par"

Now execute the shortcut which should now load the parameter file. This is my method for connecting to a battle enabled, mod signatures disabled liberation server I run.


For Linux

Working on Xubuntu 18.04 Kernel 4.15

Pretty much follow the installing a dedicated server on linux guide.

create a "headless.sh" file in your arma3 server root directory and put the following in it:

./arma3server -client -connect=ip.address.here -port=1337 -name=HC -password=notapassword -cpuCount=8 -exThreads=7 -maxMem=2048 -nologs -nopause -hugepages -mod="tank;tacops;orange;argo;jets;mark;heli;kart;curator;@CBA_A3"

Note: as of currently A3 Linux servers executable do no come with a 64bit executable, thus why -maxMem is set to 2048, any value higher than 4095 will result in crashes and failures.
To make things easier I use "screen" to create and manage multiple HCs in the background.

 

 

  • Like 1

Share this post


Link to post
Share on other sites

Having created a Headless Client using TADST for the first time, I just want to check that this isn't an error when the window reads as follows:

 

19:49:27 Client Connected 127.0.0.1:2302
19:49:29 > Player headlessclient connecting
19:49:29 > Welcome to the server!
19:49:29 Loading Profile "HC1"

Should the message at some point change from loading profile or is it meant to remain at "loading Profile 'HC1'"?

2 years later:
Yeah, it was working as intended!

Edited by Rawshark

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×