Jump to content
mrwolv

Install Battleye + Server Start.bat +Server Restarts +Server Crash Restarter

Recommended Posts

Ok.... as alot of people are having alot off issues getting battleye to work i have compiled a zip file of 5 functions PLEASE READ CAREFULLY OTHERWISE YOU WILL HAVE PROBLEMS!!

This still works as of 14/02/2019  if you cannot get this to work it is because you have made a mistake with your information in the cfg/txt files or folder location paths

  • Starts Dayz Server
  • Restart Your Server Automaticaly If It Crashes
  • Run Battleye On Your Server
  • Runs a 3 Hour Restart Timer For Your Server
  • Runs Server Messages Of Your Choice
  • Include Guide To Install Its Very Simple To Do

Also Includes Whitelist, BadWords, BadNames, Ban Files (Admin.Xml Not usefull Yet)

 

Just download, Extract Follow Guide & Walla Your In... Any Problems Just Let Me Know...

https://www.dropbox.com/s/mx6bnlg30eeeo9x/Battleye %26 Bat File %2B Guide To Install.rar?dl=0

 

Screenshot_3.png
As you can see from the photo the DayzSa Server Status cmd box will keep a check on your server if it

crashes it will auto restart!! This will also reboot your server on the timed restarts & as you can see BEC

is also running on the back cmd box. All you need to do is Run 1 .bat File

 

(Also If You Find Your Server wont Show In The Server List Just Open Ports 2302-2307, 27016  TCP/UDP On Your Router & Firewall Of Your Pc/Server. If You Have Problems With The Right I.P For Your Server Just Open CMD Type ipconfig & Look For Your IPv4 Address. . . . . . . . . . . : Thats The I.P You Need To Set In The Files)

 

 

Step 1. Open Start Server Battleye.bat (With Notepad++). Where it says set DAYZ-SA_SERVER_LOCATION= Set Your Server Path. (Example It Should Look Like set DAYZ-SA_SERVER_LOCATION="C:\Dayzserver"  You do not need your server folder in your steam folder but most people keep it there due to not knowing this )

Step 2. Set Your BEC Extended Controls Location Where It Says set BEC_LOCATION= (Example It Should Look Like set BEC_LOCATION="C:\Dayzserver\Battleye\Bec")    

Step 3. Check Your Start Up Line (Around Line 52) Check Your Port Is Correct & Paths (If Your Dont Have  Playerlogs Create a Folder In Your Dayz Server Folder Called PlayerLogs OR Profiles.
(Example. start DayZServer_x64.exe -config=serverDZ.cfg -port=2302 -dologs -adminlog -netlog -freezecheck -noFilePatching -BEpath=C:\DayZServer\Battleye -profiles=C:\Dayzserver\PlayerLogs    )

Step 3. Copy Battleye Folder Into Your Server Directory.

Step 4. Open BEServer_x64.cfg & Set Your I.P & RconPassword & Check Port.

Example

RConPassword PASSWORD
RestrictRCon 0
RConPort PORT
RConIP SERVERIP

Step 5. Open The Bec Folder Then Config Folder Open Config.cfg & Set Your I.P & Port Then Link Your BePath (This Should Be C:\Dayzserver\Battleye To Work Without Problems)

Example

[Bec]
Ip = SERVERIP
Port = SERVERPORT
BePath = C:\DayzserverModed\battleye
Admins = admins.xml
Commands = commands.xml
LogDir = Config
                    
Step 6. Inside The Bec Folder Look For The File Called "Scheduler.xml" This Is Set Up For 3 Hour Restarts. Go Into The Scheduler.xml & Edit The Line That Say <cmd>say -1 ADD MESSAGE HERE</cmd> For Your Own Messages

Step 7. Final Step Double Click The  "Start Server Battleye.bat" In The Main Battleye Folder If You Set Everything Correcly On Prev Steps Your DayZ Sa Server command Prompt Box Will Open, Then Your Server Will Load Then Battleye Will Load & Login To Your Server.....

This works the same way for modded servers all you need to do is change a few things in the bat file

So you will need to go to http://www.dayzsalauncher.com/#/home

Download the ServerTool DZSALModServer.exe Place this in your Server Folder then In The Bat file Change A Few Things Like Below

You Need to Change

start DayZServer_x64.exe    To   start DZSALModServer.exe    Then Add a Profile Folder If You Dont Already  Have One "-profiles=C:\Dayzserver\ProfileFolder"    & Add A Mod Line    "-mod=@MODNAME1;@MODNAME2;@MODNAME3"

 

start DZSALModServer.exe -ip=YOURIP-port=SERVERPORT -config=serverDZ.cfg  -dologs -adminlog -scrAllowFileWrite -scriptdebug=true "-profiles=C:\Dayzserver\ProfileFolder" "-mod=@MODNAME1;@MODNAME2;@MODNAME3" -BEpath=C:\Dayzserver\battleye -dayzserver=DayZServer_x64.exe

Edited by mrwolv
  • Like 1
  • Thanks 1
  • Beans 3

Share this post


Link to post
Share on other sites
6 minutes ago, Clint Baldwin said:

Now will this work with BEC?

This is BEC All in 1 just follow the guide and you should have no problems

Share this post


Link to post
Share on other sites

Awesome compilation, nice work

  • Like 1

Share this post


Link to post
Share on other sites

Quick question to the Scheduler, i've been playing around with the repeating messages:

<time>000900</time>
<delay>000000</delay>
<day>1,2,3,4,5,6,7</day>
<loop>1</loop>
<cmd>say -1 You're playing on Valhalla|DK|Modífied Loot|PVP, remember to fav. the server and join our Discord here https://discord.gg/VhP52m
<cmdtype>0</cmdtype>
</job>

 

Do i need to put the message in "" 

 

they don't appear to show up ingame.

I'll be able to tell wether the serverrestart works here in an hour or so :D

Share this post


Link to post
Share on other sites

420 ? :D

Thanks for this stuff...

But i have one another question ..

How i can run 2 servers ?

2 folder 2 different paths...this is clear. But what i have to do with the ports `?

 

@echo off
cls

set version=1.0
set wat=Dayz SA

title %wat% Watchdog

cd C:\Program Files (x86)\Steam\steamapps\common\DayZServer

:watchdog
echo (%time%) %wat% started.
start "Dayz_SA" /wait /affinity FF /high "DayZServer_x64.exe" config=serverDZ.cfg "-BEPath=C:\SteamLibrary\steamapps\common\DayZServer\battleye"
echo (%time%) %wat% closed or crashed, restarting.
goto watchdog

This is my bat,atm

 

 

 

Share this post


Link to post
Share on other sites
43 minutes ago, Jonas Kousted Hansen said:

Quick question to the Scheduler, i've been playing around with the repeating messages:

<time>000900</time>
<delay>000000</delay>
<day>1,2,3,4,5,6,7</day>
<loop>1</loop>
<cmd>say -1 You're playing on Valhalla|DK|Modífied Loot|PVP, remember to fav. the server and join our Discord here https://discord.gg/VhP52m
<cmdtype>0</cmdtype>
</job>

 

Do i need to put the message in "" 

 

they don't appear to show up ingame.

I'll be able to tell wether the serverrestart works here in an hour or so :D

your missing </cmd> of the end of your mesage line

Share this post


Link to post
Share on other sites
29 minutes ago, Clockwork88 said:

420 ? :D

Thanks for this stuff...

But i have one another question ..

How i can run 2 servers ?

2 folder 2 different paths...this is clear. But what i have to do with the ports `?

 

@echo off
cls

set version=1.0
set wat=Dayz SA

title %wat% Watchdog

cd C:\Program Files (x86)\Steam\steamapps\common\DayZServer

:watchdog
echo (%time%) %wat% started.
start "Dayz_SA" /wait /affinity FF /high "DayZServer_x64.exe" config=serverDZ.cfg "-BEPath=C:\SteamLibrary\steamapps\common\DayZServer\battleye"
echo (%time%) %wat% closed or crashed, restarting.
goto watchdog

This is my bat,atm

 

 

 

in your bat file it should look simalr to this you need to set a port on server startup and im having problems getting 2 servers to show in the list 1 will show fine but the other one only shows up when you ip search the 2nd server and no im not 420 haha

-config=serverDZ.cfg -port=2302 -dologs -adminlog -netlog -freezecheck -noFilePatching -BEpath=C:\DayZServer\Battleye -profiles=C:\Dayzserver\PlayerLogs

Share this post


Link to post
Share on other sites

I'm having an issue whereas I am running this on the same machine as I'm playing on and every time the bat file checks the server is running it minimalizes my game? Any simple way around this?

Share this post


Link to post
Share on other sites

Awesome!  now i can restart my server and not have to manually go in and do it from work  

There a way to change the Broadcast name from BEC CLIENT to maybe like Admin/Server or Something different :p

 

Thanks alot! :)

Edited by cody0520

Share this post


Link to post
Share on other sites

I think I am being completely stupid here but..... I don't think BEC is starting for me!

My Start BAT File

@echo off
TITLE DayZ SA Server - Status
COLOR 0A
:: Variables::
::DayZServer_64.exe path
set DAYZ-SA_SERVER_LOCATION="C:\Users\marti\Desktop\DAYZSERVER"
::Bec.exe path
set BEC_LOCATION="C:\Users\marti\Desktop\DAYZSERVER\battleye\Bec"
::::::::::::::

echo Agusanz
goto checksv
pause

:checksv
tasklist /FI "IMAGENAME eq DayZServer_x64.exe" 2>NUL | find /I /N "DayZServer_x64.exe">NUL
if "%ERRORLEVEL%"=="0" goto checkbec
cls
echo Server is not running, taking care of it..
goto killsv

:checkbec
tasklist /FI "IMAGENAME eq Bec.exe" 2>NUL | find /I /N "Bec.exe">NUL
if "%ERRORLEVEL%"=="0" goto loopsv
cls
echo Bec is not running, taking care of it..
goto startbec

:loopsv
FOR /L %%s IN (30,-1,0) DO (
	cls
	echo Server is running. Checking again in %%s seconds.. 
	timeout 1 >nul
)
goto checksv

:killsv
taskkill /f /im Bec.exe
taskkill /f /im DayZServer_x64.exe
goto startsv

:startsv
cls
echo Starting DayZ SA Server.
timeout 1 >nul
cls
echo Starting DayZ SA Server..
timeout 1 >nul
cls
echo Starting DayZ SA Server...
cd "%DAYZ-SA_SERVER_LOCATION%"
start DayZServer_x64.exe -config=serverDZ.cfg -port=2302 -dologs -adminlog -netlog -freezecheck -noFilePatching -BEpath=C:\Users\marti\Desktop\DAYZSERVER\Battleye -profiles=C:\Users\marti\Desktop\DAYZSERVER\PlayerLogs -cpucount=8
FOR /L %%s IN (45,-1,0) DO (
	cls
	echo Initializing server, wait %%s seconds to initialize Bec.. 
	timeout 1 >nul
)
goto startbec

:startbec
cls
echo Starting Bec.
timeout 1 >nul
cls
echo Starting Bec..
timeout 1 >nul
cls
echo Starting Bec...
timeout 1 >nul
cd "%BEC_LOCATION%"
start Bec.exe -f Config.cfg --dsc
goto checksv

My ConFig in BEC Folder

[Bec]
Ip = MYIP  #ADD YOUR IP.
Port = 2302
BePath = C:\Users\marti\Desktop\DAYZSERVER\battleye
Admins = admins.xml
Commands = commands.xml
LogDir = Config

[Misc]

# Only allow english chars.
AsciiNickOnly = True

# Kick players who has listed chars in their name
DisallowPlayerNameChars	= ё,я,ш,е,р,т,ы,у,и,о,п,ю,щ,э,а,с,д,ф,г,ч,й,к,л,ь,ж,з,х,ц,в,б,н,м,ъ,Ё,Я,Ш,Е,Р,Т,Ы,У,И,О,П,Ю,Щ,Э,А,С,Д,Ф,Г,Ч,Й,К,Л,Ь,Ж,З,Х,Ц,В,Б,Н,М,Ъ

ServerExeName = DayZServer_x64.exe
Color = 0f
ConsoleHeight = 65
ConsoleWidth = 100
Timeout = 60
Scheduler = Scheduler.xml
AsciiChatOnly = False
WordFilterFile = BadWords.txt
#WhiteListFile = WhiteList.txt
#WhileListKickMsg = You are not in the whitelist. 
NickFilterFile = BadNames.txt
ChatChannelFiles = false
MinPlayerNameLength	= 3
MaxPlayerNameLength	= 20
SlotLimit = 120
SlotLimitKickMsg = The Server has reached its player limit.
Ban = 3

BEServer_x64

RConPassword MYPASSWORD
RestrictRCon 0
RConPort 2302
RConIP MYIP

 

My Server starts fine from the BAT but it seems that BEC keeps trying to restart as it hasn't loaded in? Would anyone mind looking over the above and see if I have messed up somewhere.

Thanks

 

Share this post


Link to post
Share on other sites

i would say check all your folder path links are correct make sure your spelling corectly also your ports & password also make sure you have added the whole folder and all will work

 

 

 

 

 

Edited by mrwolv

Share this post


Link to post
Share on other sites

Figured it out - In My ConFig in BEC Folder - The #ADD YOUR IP. was causing the issue....

Question - Do you know where the server gets the times from and what timezone it uses or is it PC Time? For Restart times!

Share this post


Link to post
Share on other sites
8 minutes ago, therealunhinged said:

Figured it out - In My ConFig in BEC Folder - The #ADD YOUR IP. was causing the issue....

[SOLVED]

What you mean? you deleted those words?
Since i'm trying to figure mine out why it aint connecting

Yes it works now!  Happy here!
@mrwolv Thanks for your work
@therealunhinged Thanks for the edit!

Edited by headrox

Share this post


Link to post
Share on other sites
3 minutes ago, headrox said:

What you mean? you deleted those words?
Since i'm trying to figure mine out why it aint connecting

Yep - just remove the #ADD YOUR IP.

So it looks like 

[Bec]
Ip = 127.0.0.1
Port = 2302
BePath = C:\Users\marti\Desktop\DAYZSERVER\battleye
Admins = admins.xml
Commands = commands.xml
LogDir = Config

Obviously changing your ip address

Share this post


Link to post
Share on other sites
Just now, therealunhinged said:

Yep - just remove the #ADD YOUR IP.

So it looks like 


[Bec]
Ip = 127.0.0.1
Port = 2302
BePath = C:\Users\marti\Desktop\DAYZSERVER\battleye
Admins = admins.xml
Commands = commands.xml
LogDir = Config

Obviously changing your ip address

Thanks man! worked!

Share this post


Link to post
Share on other sites

Does anyone know how to disable the server spamming console msgs? 
 

20:25:22 Fetching [Storage] data file [313] items.
20:25:22 Fetching [Storage] data file [315] items.
20:25:22 Fetching [Storage] data file [302] items.
20:25:23 Saved [Storage] data file [1241] items.
20:25:23   save took 16 msec

It keeps going.

Thanks

Share this post


Link to post
Share on other sites

1. Can I use my own Rcon Port or do I need to use 2302?

2. I have two servers, so i need to have two different Rcon ports?

3. [Bec] Ip = 127.0.0.1 Port = 2302 BePath = C:\Users\marti\Desktop\DAYZSERVER\battleye Admins = admins.xml Commands = commands.xml LogDir = Config

This section above do I need to us my VM's Internal IP? Or do I use the 127.0.0.1?

 

Wolv you have been amazing by the way!

 

 

 

https://imgur.com/a/6YjDuZn

Share this post


Link to post
Share on other sites

[Bec]

  In the [Bec] block we define Rcon parameters such as Ip, port etc. All are needed for Bec to work.

  Ip = x.x.x.x
  if you can not use 127.0.0.1, set the ip to your game server.

  Port = int
  This is the port the game server is running on
.

  BePath = string
  Set the full path to your Battleye directory for you current profile setup.
  This means the path to where your BeServer.cfg and bans.txt is located.
  If you have used -profiles or -bepath as startup parameters on your server you need to point it to that dir.

 

The text in the red has been my problem all along.....

Sorry. It has been solved!

Share this post


Link to post
Share on other sites

This worked perfectly for me many thanks much cleaner than the bodge job I did

Share this post


Link to post
Share on other sites

i made some minor changes to my script:
Remember to change all the variables to the correct ones and modify line 70 to your correct parameters.
If you have any idea i can add to this thing, let me know... i would love to make it more functional for you guys.
 

@echo off
TITLE DayZ SA Server - Status
COLOR 0A
mode con:cols=75 lines=3
:: Variables::
::SteamCMD.exe path
set STEAM_CMD_LOCATION="C:\SteamCMD"
set STEAM_USERNAME="anonymous"
::DayZServer_64.exe path
set DAYZ-SA_SERVER_LOCATION="C:\DayZ-SA_server"
::Bec.exe path
set BEC_LOCATION="C:\DayZ-SA_server\Bec"
::IMPORTANT: Modify line 70 to your correct parameters
::::::::::::::

echo Agusanz
goto checksv
pause

:checksv
tasklist /FI "IMAGENAME eq DayZServer_x64.exe" 2>NUL | find /I /N "DayZServer_x64.exe">NUL
if "%ERRORLEVEL%"=="0" goto checkbec
cls
echo Server is not running, taking care of it..
goto killsv

:checkbec
tasklist /FI "IMAGENAME eq Bec.exe" 2>NUL | find /I /N "Bec.exe">NUL
if "%ERRORLEVEL%"=="0" goto loopsv
cls
echo Bec is not running, taking care of it..
goto startbec

:loopsv
FOR /L %%s IN (30,-1,0) DO (
	cls
	echo Server is running. Checking again in %%s seconds.. 
	timeout 1 >nul
)
goto checksv

:killsv
taskkill /f /im Bec.exe
taskkill /f /im DayZServer_x64.exe
goto updatesv

:updatesv
cls
echo Updating DayZ SA Server.
timeout 1 >nul
cls
echo Updating DayZ SA Server..
timeout 1 >nul
cls
echo Updating DayZ SA Server...
cd "%STEAM_CMD_LOCATION%"
start /wait "" steamcmd.exe +login "%STEAM_USERNAME%" +force_install_dir %~dp0 +app_update 223350 validate +quit
goto startsv

:startsv
cls
echo Starting DayZ SA Server.
timeout 1 >nul
cls
echo Starting DayZ SA Server..
timeout 1 >nul
cls
echo Starting DayZ SA Server...
cd "%DAYZ-SA_SERVER_LOCATION%"
start DayZServer_x64.exe -config=serverDZ.cfg -port=2302 -profiles=C:\Users\%USER%\Documents\DayZ -dologs -adminlog -netlog -freezecheck -noFilePatching -BEpath=C:\DayZ-SA_server\battleye
FOR /L %%s IN (30,-1,0) DO (
	cls
	echo Initializing server, wait %%s seconds to initialize Bec.. 
	timeout 1 >nul
)
goto startbec

:startbec
cls
echo Starting Bec.
timeout 1 >nul
cls
echo Starting Bec..
timeout 1 >nul
cls
echo Starting Bec...
timeout 1 >nul
cd "%BEC_LOCATION%"
start Bec.exe -f Config.cfg --dsc
goto checksv

 

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

×