Jump to content

Headless Client AI w/Epoch [WIP]


Shizweak

Recommended Posts

It's a lot of work figuring it all out yourself. I offered several people money to help me get started/setup but no responses. I had WAI running on a HC but ditched it until I can get all the BE kicks sorted.

I'm looking into putting loot/zeds on it instead to start out :D

Link to comment
Share on other sites

Arma is designed to run on Windows, I think a HC will run under WINE but I suspect the performance drop and hassle is too much. There was a thread to get a server running on Linux, they ultimately gave up and rented a win dedicated box. On the affinity Subject, posted my HC switches and affinity options here:

Link to comment
Share on other sites

will give it a try with wine :D  thanks axeman for the hint ^^  I had already the idea about wine (was using it earlier to run dayz server before the linux port appeared) .. but hoped to avoid the work again with wine~

 

will give a reply if it works (or not)

 

edit: thanks for the post-link ^^

 

edit: ok, right now .. the problem seems to be with battleye  loaded by wine..

error: 

BattlEye Client: Initialized (v1.215)
Registration failed: SSL connect error (schannel: failed to setup sequence detection)
BattlEye Client: Server requiring client version 1.215. Up-to.date
You were kicked off the game.

log in the wine debug:

 

fixme:advapi:SetSecurityInfo stub

fixme:winsock:WSAIoctl WS_SIO_UDP_CONNRESET stub
err:winediag:WSASocketW Failed to create a socket of type SOCK_RAW, this requires special permissions.
 
tried it also as root (su), doesn't fix the SOCK_RAW permission problem..
 
ok after compiling a fresh wine 1.7.19, changing some raw_socket rights in kernel, installing few i386 packages for SSL..
I got on this point:
 

 

$ ./HCstart.sh 

fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:process:SetProcessDEPPolicy (1): stub
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:process:SetProcessShutdownParameters (00000380, 00000000): partial stub.
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:winsock:WSAIoctl WS_SIO_UDP_CONNRESET stub
fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
ALSA lib confmisc.c:768:(parse_card) cannot find card '0'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM default
ALSA lib confmisc.c:768:(parse_card) cannot find card '0'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM default
fixme:winsock:WSAIoctl WS_SIO_UDP_CONNRESET stub
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
fixme:winsock:WSAIoctl WS_SIO_UDP_CONNRESET stub
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
fixme:winsock:WSAIoctl WS_SIO_UDP_CONNRESET stub
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded

 

 
now... I'm tired, can't think anymore :D going to sleep >_<
Edited by crckdns
Link to comment
Share on other sites

  • 1 month later...

Really don't understand why you and the handful of other people working on headless clients don't all just work together? So much more work could be achieved and bug fixes wouldn't be a problem then really. Please take this into consideration and reach out to all the others working on the same project would make so much more sense and we all would probably have a seamless headless client now. Either way appreciate what you and the rest of the guys have done keep up the good work!

Link to comment
Share on other sites

  • 2 months later...

Does anyone have a good solution for the HeadlessClient connecting before the mission starts problem?

 

Right now I am using a batch file, that connects the headless client, then after x amount of time, kills the process and restarts it, essentially kicking the headless client and having him rejoin. So far this has not been the most reliable solution.

 

I think a good solution might be to kick him through RCON, but I cant find a way to do that automatically. 

 

I don't know if there is a way to script kicking him into the game? 

 

Another idea I had was have a different name join so the first one would be "GameStart" then he gets kicked and the HeadlessClient joins after, but scripts still detect "GameStart" as the headless client and then when it leaves it messes with the scripts that are supposed to be running off of the headlessclient.

Link to comment
Share on other sites

  • 3 weeks later...

Anyone here have this working with WAI? I found the github location and I'm trying to install the rev2 version he has. Looks like it's six months old and not being maintained. I'm working through the first issue which he's using "DZHC_Server_Request = [2, owner player];", The owner player was returning a 0, so I changed it to "DZHC_Server_Request = [2, [_uid, player]];", which seems to work. The headless client spawns in the game, but it's not loading WAI, I see the override in the DZHC_Server_Config.sqf, but I'm lost as to what is supposed to launch it.

Link to comment
Share on other sites

Sorry for not releasing my Headless Client, it's specific for my server and i would need time to make it more generic and write a nice release like ebay did. I believe, for bots, what ebay did is more than sufficient.

Otherwise, DZAI and DZMS are enclosured in itself, this means they don't use any specific resource of the server (public variables, event handlers), this helps a lot to port then to run ENTIRELY in a client.

--//--

I make the Headless Client safe with that code, i do not create a specific slot for it. This code runs in the Headless Client:

 

//Make Headless Client Invincible
player_zombieCheck = {};
fnc_usec_damageHandler = {};
fnc_usec_unconscious  = {};
player allowDamage false;
[] spawn {
	while {true} do { //This fix: anti-hack re-enabling handleDamage constantly
		player removeAllEventHandlers "handleDamage";
		uiSleep 0.01;
	};
};

//Make Headless Client Invisible
player setVehicleInit "hideObject this";
processInitCommands;
clearVehicleInit player;

//Move Headless Client to safe position in the midle of the map
[] spawn {
	while {true} do {
		player setPos [7000, 9000, 20];
		player setVelocity [0, 0, 0];
		sleep 0.01;
	};
};
I also added the Headless Client as a Admin in infiSTAR.

Also, from my experience, the localclient[] = {"127.0.0.1"}; line on config.cfg fix the precision problem COMPLETELY. You can place the Headless Client anywere then. Its like to make MinErrorToSend = 0 and MinErrorToSendNear = 0 in basic.cfg to local clients.

Link to comment
Share on other sites

Here is DZMS and DZAI modified to run entirelly on a client: http://s000.tinyupload.com/index.php?file_id=37875561604326766248

Estructure:

MPMissions/hc

MPMissions/hc/DZAI

MPMissions/hc/DZMS

Here the BE filters i needed to add to my currenty BE filters (goten from infiSTAR anti-hack release) to make the Headless Client not kicked from server: http://s000.tinyupload.com/index.php?file_id=08601066090236599586

BY THE WAY, i'm abandoning all of it and going to ebay aproach.

paddy :)

Link to comment
Share on other sites

My headless client keeps getting kicked for publicvariable #0 "AntiHackNotRunning" = "AntiHackNotRunning". I've tried everything I know to do. The Battleye service is running, I've copied the DLL to the root directory with the client executable. I've added "battleyeLicense=1;" to the headless client profile. I've added the headless client as an admin for infistar. I'm out of ideas and not sure what to try next.

Link to comment
Share on other sites

  • 1 month later...
  • 2 years later...
On 25.10.2014 at 2:50 AM, Donnovan said:

Here is DZMS and DZAI modified to run entirelly on a client: http://s000.tinyupload.com/index.php?file_id=37875561604326766248

 

Estructure:

MPMissions/hc

MPMissions/hc/DZAI

MPMissions/hc/DZMS

 

Here the BE filters i needed to add to my currenty BE filters (goten from infiSTAR anti-hack release) to make the Headless Client not kicked from server: http://s000.tinyupload.com/index.php?file_id=08601066090236599586

 

BY THE WAY, i'm abandoning all of it and going to ebay aproach.

 

paddy :)

Does someone has his files for me (as the Download is down..)?
Or does anyone can provide me with changed WAI files?

greets

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×
×
  • Create New...