Jump to content

Epoch Antihack / Admin Tools


BigEgg

Recommended Posts

Hello everyone,

 

Here is the public release of my Antihack / Admin tools. Both myself and Movinggun put a lot of work into this, so I hope you all can benefit. The culmination of my time spent on this game went into this, and I hope you all enjoy it just as much as I did.

Unfortunately due to time, I will not be able to actively add to this project, but I will always be around to approve pull requests. This project can easily live on through the community, and I hope you all the enjoy the complexity of everything involved with it.

 

The repository that contains install instructions can be found here:

https://github.com/BigEgg17/Epoch-Antihack-Admin-Tools

 

I will add source code for the DLL as soon as it is received from Movinggun, along with the source for the executable file.

I will also create an official release on the Github as soon as everything is successfully converted for compatibility with 1.0.7.

 

Best wishes to the community, I look forward to applying all changes desired, and to answering any questions members may have.

 

It's been a blast and I will never forget some of the memories and friends made on this game.

 

- BigEgg

Link to comment
Share on other sites

  • salival pinned and featured this topic
  • 2 weeks later...
On 4/25/2021 at 5:55 PM, looter809 said:

Hey BigEgg, love all the work you have done.

My logs don't seem to be writing to file, do I need the API for this to work or do you think I installed it wrong?

I was also wondering if you have a list of BattlEye scripts to add

Make sure the DLL is in the root of the server folder, and no you do not need the API.

Is your server hosted?

Link to comment
Share on other sites

4 hours ago, BigEgg said:

Make sure the DLL is in the root of the server folder, and no you do not need the API.

Is your server hosted?

The 2 .dll files and the .ini are in the root of the server. I've so far only tried on my local test server as I try to fix the issues I'm running into. The only instruction I haven't followed yet is doing the autoloadbans = true part because my test server isn't running BEC.

I was also getting kicked on my non-admin account for BE script restriction:

 #14 ""htmlzV4","htrukilojhkukvh","hub","HumanityVal","i","I_love_rustler_and_jet","i_t_s__m_e_o","iaimon","iammox","iBeFlying","idont"

As well as:

#127 "' addPublicVariableEventHandler {AN4v77AmbedE5k545X = nil; [toString(_this select 1), 2] call MDl7POcLw53vERA8uo8};

	FSKG2jzdQT"

I can fix the BE issues myself, but I was just curious if there was already a list of BE restrictions to allow.

Link to comment
Share on other sites

I would like some tips about BE filters too. After antihack install there are many script kicks for unique ID-s that antihack creates, I suppose and as far as I know, scripts.txt does not support regular expressions. How to deal with this kind of script exceptions, for example?

#1 "l MQ4y12mMiLq0;
		};
		if (_id == 5) exitWith {
			player addBackpack (_param select 1);
			call player_forceSave;
			[format['Y"

 

Link to comment
Share on other sites

13 hours ago, Eix said:

I would like some tips about BE filters too. After antihack install there are many script kicks for unique ID-s that antihack creates, I suppose and as far as I know, scripts.txt does not support regular expressions. How to deal with this kind of script exceptions, for example?


#1 "l MQ4y12mMiLq0;
		};
		if (_id == 5) exitWith {
			player addBackpack (_param select 1);
			call player_forceSave;
			[format['Y"

 

Firstly, I want to state that I very well could be wrong with my answer, it's been a few years since I ran an Arma server. You should make sure you have read this: guide to BE filters and after reading that, I believe the solution to your problem would be going to the addBackpack line in scripts.txt (line 3) and adding a partial statement (removing the unique ID) like so:

!"if (_id == 5) exitWith {\n	player addBackpack (_param select 1);\n	call player_forceSave;"

Again, I could be wrong here, hence why I asked about BE filters in the first place. Doing !"exception" instead of !"whole/exact exception" should be the fix...

Link to comment
Share on other sites

20 hours ago, looter809 said:

The 2 .dll files and the .ini are in the root of the server. I've so far only tried on my local test server as I try to fix the issues I'm running into. The only instruction I haven't followed yet is doing the autoloadbans = true part because my test server isn't running BEC.

I was also getting kicked on my non-admin account for BE script restriction:


 #14 ""htmlzV4","htrukilojhkukvh","hub","HumanityVal","i","I_love_rustler_and_jet","i_t_s__m_e_o","iaimon","iammox","iBeFlying","idont"

As well as:


#127 "' addPublicVariableEventHandler {AN4v77AmbedE5k545X = nil; [toString(_this select 1), 2] call MDl7POcLw53vERA8uo8};

	FSKG2jzdQT"

I can fix the BE issues myself, but I was just curious if there was already a list of BE restrictions to allow.

There is no current list of BE filters to allow.

Is the storage for your server network attached or do you know for certain if the folder structure has the correct permissions for file writing?

Link to comment
Share on other sites

18 hours ago, BigEgg said:

There is no current list of BE filters to allow.

Is the storage for your server network attached or do you know for certain if the folder structure has the correct permissions for file writing?

Server is on my local machine (windows 10). I haven't made any changes to permissions. Test server is setup on my E drive (not network attached) with the DZE_Server_Config folder outside the root of the epoch server for security (or so I'm told). This is my .ini file, but even beofre adding "antihack-logs\" before the log file locations it still didn't work. 

# Logging system (log-LogName=LogPath) - paths can be relative or exact
[Log]
# {0} = date, {1} = message
logformat={0} | {1}
filedate=dd-MM-yyyy
logdate=d/M/yyyy h:mm:ss tt

log-Admin=antihack-logs\Admin.log
log-Hack=antihack-logs\Hack.log
log-SafeZone=antihack-logs\SafeZone.log
log-Trader=antihack-logs\Trader.log
log-Lock-Unlock=antihack-logs\Lock-Unlock.log
log-Maintenance=antihack-logs\Maintenance.log
log-Player=antihack-logs\Player.log
log-Surveillance=antihack-logs\Surveillance.log
log-New-Player=antihack-logs\New Players.log
log-Death=antihack-logs\Deaths.log

# Path to your bans.txt file - all AH bans will be added here
[Ban]
file="E:\Epoch Server 1.0.7\DZE_Server_Config\BattlEye\bans.txt"
defaultreason=AH Auto-Ban ID: VOID

# Global ban API login information - see installation instructions
[API]
[email protected]
password=password

(Note: "Epoch Server 1.0.7" is not the root of my server)

I'm lost on what I could be doing wrong. Are other people not having any issues with the log system? 

 

Edit: I will add that I was previously using infistar with it's .dll log file and it worked just fine (and before you ask, I did remove the infistar .dll file and the infistar files/folder).

Link to comment
Share on other sites

I have updated my Antihack to the latest version and am getting this error in my .rpt:

8:11:25 "<Epoch-AH>: any"
 8:11:25 Error in expression < {
			diag_log format['<Epoch-AH>: %1', _log];
		} else {
			if (_opt == 1) then>
 8:11:25   Error position: <_log];
		} else {
			if (_opt == 1) then>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <s, format['%1: %2', call AH_fnc_uptime, _log]];
					'Death'
				};
			};
			'An>
 8:11:25   Error position: <_log]];
					'Death'
				};
			};
			'An>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <lExtension format['Log|%1|%2%3', _type, _log, format[' | Uptime: %1 Map: %2-%3',>
 8:11:25   Error position: <_log, format[' | Uptime: %1 Map: %2-%3',>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <= ''; local _puid = '';
		if (typeName _log == 'ARRAY') then {_log = toString _>
 8:11:25   Error position: <_log == 'ARRAY') then {_log = toString _>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <!= 'unknown'}) then {
				local _type = _param select 0;
				if (_type == 'kill>
 8:11:25   Error position: <_param select 0;
				if (_type == 'kill>
 8:11:25   Error Undefined variable in expression: _param

It doesn't seem to be breaking my server, but any ideas?

Link to comment
Share on other sites

And this error:

Quote

 8:33:12 "Loading custom server variables"
 8:33:12 "<Epoch-AH>: Initializing Epoch Antihack/Admin Tools"
 8:33:12 "<Epoch-AH>: Config loaded successfully"
 8:33:12 Error in expression <!= "ARRAY") then {_name = [_name]};
if (_noad != "") then {(_sorted select 8) se>
 8:33:12   Error position: <_noad != "") then {(_sorted select 8) se>
 8:33:12   Error Undefined variable in expression: _noad
 8:33:12 File z\addons\dayz_server\antihack\antihack.sqf, line 40
 8:33:12 Error in expression <!= "ARRAY") then {_name = [_name]};
if (_noad != "") then {(_sorted select 8) se>
 8:33:12   Error position: <_noad != "") then {(_sorted select 8) se>
 8:33:12   Error Undefined variable in expression: _noad
 8:33:12 File z\addons\dayz_server\antihack\antihack.sqf, line 40

 

 

Link to comment
Share on other sites

Thanks for this, I am really enjoying it! I really like that you including options for the safe zones, including removing zeds that spawn near. I'm wondering if it would also be possible to add an anti AI option to this script so that AI are also removed. Otherwise, another safe zone script is needed and I really like this one. Is there some other option for removing AI around the safe zones? I checked in DZAI but did not find any options.

Thanks!

Link to comment
Share on other sites

13 hours ago, Vladick said:

Thanks for this, I am really enjoying it! I really like that you including options for the safe zones, including removing zeds that spawn near. I'm wondering if it would also be possible to add an anti AI option to this script so that AI are also removed. Otherwise, another safe zone script is needed and I really like this one. Is there some other option for removing AI around the safe zones? I checked in DZAI but did not find any options.

Thanks!

 

I don't remember where I got this script from, but it removes the AI from the safe zone if you enable this option:

https://pastebin.com/aSsP1vjZ

Link to comment
Share on other sites

On 4/28/2021 at 11:47 AM, looter809 said:

Server is on my local machine (windows 10). I haven't made any changes to permissions. Test server is setup on my E drive (not network attached) with the DZE_Server_Config folder outside the root of the epoch server for security (or so I'm told). This is my .ini file, but even beofre adding "antihack-logs\" before the log file locations it still didn't work. 


# Logging system (log-LogName=LogPath) - paths can be relative or exact
[Log]
# {0} = date, {1} = message
logformat={0} | {1}
filedate=dd-MM-yyyy
logdate=d/M/yyyy h:mm:ss tt

log-Admin=antihack-logs\Admin.log
log-Hack=antihack-logs\Hack.log
log-SafeZone=antihack-logs\SafeZone.log
log-Trader=antihack-logs\Trader.log
log-Lock-Unlock=antihack-logs\Lock-Unlock.log
log-Maintenance=antihack-logs\Maintenance.log
log-Player=antihack-logs\Player.log
log-Surveillance=antihack-logs\Surveillance.log
log-New-Player=antihack-logs\New Players.log
log-Death=antihack-logs\Deaths.log

# Path to your bans.txt file - all AH bans will be added here
[Ban]
file="E:\Epoch Server 1.0.7\DZE_Server_Config\BattlEye\bans.txt"
defaultreason=AH Auto-Ban ID: VOID

# Global ban API login information - see installation instructions
[API]
[email protected]
password=password

(Note: "Epoch Server 1.0.7" is not the root of my server)

I'm lost on what I could be doing wrong. Are other people not having any issues with the log system? 

 

Edit: I will add that I was previously using infistar with it's .dll log file and it worked just fine (and before you ask, I did remove the infistar .dll file and the infistar files/folder).

Please try it without the folder path (you may not have perms to make a folder on the system)

Link to comment
Share on other sites

On 4/28/2021 at 8:48 PM, looter809 said:

I'm getting this error at line 40 too but not your _log and _param errors.

_noad is being initialized so I'm not sure why we are getting that error.

On 4/28/2021 at 5:34 PM, Voltan said:

And this error:

 

Please update your config.sqf to the latest version as I added a new admin parameter

 

 

Link to comment
Share on other sites

On 4/28/2021 at 11:47 AM, looter809 said:

Server is on my local machine (windows 10). I haven't made any changes to permissions. Test server is setup on my E drive (not network attached) with the DZE_Server_Config folder outside the root of the epoch server for security (or so I'm told). This is my .ini file, but even beofre adding "antihack-logs\" before the log file locations it still didn't work. 


# Logging system (log-LogName=LogPath) - paths can be relative or exact
[Log]
# {0} = date, {1} = message
logformat={0} | {1}
filedate=dd-MM-yyyy
logdate=d/M/yyyy h:mm:ss tt

log-Admin=antihack-logs\Admin.log
log-Hack=antihack-logs\Hack.log
log-SafeZone=antihack-logs\SafeZone.log
log-Trader=antihack-logs\Trader.log
log-Lock-Unlock=antihack-logs\Lock-Unlock.log
log-Maintenance=antihack-logs\Maintenance.log
log-Player=antihack-logs\Player.log
log-Surveillance=antihack-logs\Surveillance.log
log-New-Player=antihack-logs\New Players.log
log-Death=antihack-logs\Deaths.log

# Path to your bans.txt file - all AH bans will be added here
[Ban]
file="E:\Epoch Server 1.0.7\DZE_Server_Config\BattlEye\bans.txt"
defaultreason=AH Auto-Ban ID: VOID

# Global ban API login information - see installation instructions
[API]
[email protected]
password=password

(Note: "Epoch Server 1.0.7" is not the root of my server)

I'm lost on what I could be doing wrong. Are other people not having any issues with the log system? 

 

Edit: I will add that I was previously using infistar with it's .dll log file and it worked just fine (and before you ask, I did remove the infistar .dll file and the infistar files/folder).

Hello, I tried to reproduce and I believe you have not also installed the Newtonsoft.Json.dll file. You need both the Antihack.dll and the Newtonsoft.Json.dll in your server's root directory.

 

I will add this explicitly to the install instructions

 

EDIT: This step is already in the instructions

Edited by BigEgg
Link to comment
Share on other sites

On 4/28/2021 at 5:19 PM, Voltan said:

I have updated my Antihack to the latest version and am getting this error in my .rpt:


8:11:25 "<Epoch-AH>: any"
 8:11:25 Error in expression < {
			diag_log format['<Epoch-AH>: %1', _log];
		} else {
			if (_opt == 1) then>
 8:11:25   Error position: <_log];
		} else {
			if (_opt == 1) then>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <s, format['%1: %2', call AH_fnc_uptime, _log]];
					'Death'
				};
			};
			'An>
 8:11:25   Error position: <_log]];
					'Death'
				};
			};
			'An>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <lExtension format['Log|%1|%2%3', _type, _log, format[' | Uptime: %1 Map: %2-%3',>
 8:11:25   Error position: <_log, format[' | Uptime: %1 Map: %2-%3',>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <= ''; local _puid = '';
		if (typeName _log == 'ARRAY') then {_log = toString _>
 8:11:25   Error position: <_log == 'ARRAY') then {_log = toString _>
 8:11:25   Error Undefined variable in expression: _log
 8:11:25 Error in expression <!= 'unknown'}) then {
				local _type = _param select 0;
				if (_type == 'kill>
 8:11:25   Error position: <_param select 0;
				if (_type == 'kill>
 8:11:25   Error Undefined variable in expression: _param

It doesn't seem to be breaking my server, but any ideas?

Please update your antihack.sqf and your config.sqf to the latest one on the github repository

Link to comment
Share on other sites

On 5/4/2021 at 3:38 PM, BigEgg said:

Hello, I tried to reproduce and I believe you have not also installed the Newtonsoft.Json.dll file. You need both the Antihack.dll and the Newtonsoft.Json.dll in your server's root directory.

 

I will add this explicitly to the install instructions

 

EDIT: This step is already in the instructions

I'm sure I have both .dll files in my server root. I also have now tried on three separate systems and all of them are no luck. I have also tried not using the folder directory and still no. 

Any other ideas?

I've tried a fresh install and following the instructions word for word and still nothing. On your testing, are you using the API login or just the default?

Link to comment
Share on other sites

  • 2 weeks later...
On 5/5/2021 at 11:51 AM, looter809 said:

I'm sure I have both .dll files in my server root. I also have now tried on three separate systems and all of them are no luck. I have also tried not using the folder directory and still no. 

Any other ideas?

I've tried a fresh install and following the instructions word for word and still nothing. On your testing, are you using the API login or just the default?

I am certain this has to be an issue with you not having one of the required DLLs.

Link to comment
Share on other sites

Hi there,

Just wanted to report some weirdness happening with the vote day/night function in this mod. It seems that after a vote for day or night, when a player gets killed or disconnects when they relog it's different from what it was before but just for that player. So it's night for some players and day for others. I have confirmed this by using two accounts on two different PCs at one time. While it's day on one account, it's night on the other. BTW, I have my server set to -11 GMT if that makes any difference. I used to just have it set to 24/7 day but some players are wanting some nigh time play so I changed it.

Any idea what the problem could be here or Is there some other config I need to change to make this work as expected?

Thanks for your help!

Vlad

Link to comment
Share on other sites

9 minutes ago, Vladick said:

Hi there,

Just wanted to report some weirdness happening with the vote day/night function in this mod. It seems that after a vote for day or night, when a player gets killed or disconnects when they relog it's different from what it was before but just for that player. So it's night for some players and day for others. I have confirmed this by using two accounts on two different PCs at one time. While it's day on one account, it's night on the other. BTW, I have my server set to -11 GMT if that makes any difference. I used to just have it set to 24/7 day but some players are wanting some nigh time play so I changed it.

Any idea what the problem could be here or Is there some other config I need to change to make this work as expected?

Thanks for your help!

Vlad

Please update to the latest version of the antihack (v1.0.1)

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...