Jump to content
Aussie Cleetus

ServerMonitor with updater (including mod updates)

Recommended Posts

ServerMonitor

ServerMonitor is a PowerShell driven DayZ Standalone Server monitor with multiple configurable options such as auto-updating of mods (including copying keys), auto-updating of server files, auto archiving of logs to keep a clean profile folder with full support for -mod and -servermod parameters. This is an alternative to the popular CFTools with one major difference, all your data is kept on your server and there is no reliance upon a web service to use this tool (as long as your server is connected to the internet, this tool will work).

Requirements:

  • Steamcmd
  • Steam account with DayZ owned (for downloading mods from the workshop)
  • Dedicated Server (will not work with Game Service Providers - sorry)

Installation:

  1. Install steamcmd
  2. Login with steamcmd - steamcmd login (This may require steamguard code. If your account is not dedicated for the server, this may need to be done on each restart depending on your account security settings)
  3. Close steamcmd by typing `quit` and pressing `enter`
  4. Copy `ServerMonitor.exe`, `ServerMonitor.cfg`, `servermodslist.txt` and `playersmodslist.txt` to the DayZServer directory (create your desired server path directory if you have not installed the server yet)
  5. Adjust settings in ServerMonitor.cfg
  6. Adjust mod list files playersmodslist.txt and servermodlist.txt (for clarification: playersmodslist.txt are mods loaded on both client and server, whereas servermodslist.txt is mods that are to be loaded on only the server, at no point should the same mod appear in both files)
  7. Run ServerMonitor.exe

Optional Installation for automated restarts:

  1. Download BEC (link below) and unpack the zip file into your DayZServer's battleye folder
  2. Configure BEC's configuration files as desired and setup Schedule.xml
  3. Download BECMonitor (link below) and unpack the zip file into the same location as step 1
  4. Adjust BECMonitor.cfg
  5. Run BECMonitor.exe

Notes:

  • If DayZServer is not installed in specified directory, it will be installed to specified directory
  • Does not copy configuration files for mods to profile as mods should be auto-creating those if they don't exist
  • Currently only supports Stable release
  • To completely shutdown the server, be sure to turn the ServerMonitor off before shutting down DayZServer
  • Do not forget to setup your server configuration files (serverDZ.cfg)
  • Can be used for multiple instances of DayZServer, to achieve this you simply create a 2nd instance of this program in another directory with adjusted configuration
  • Ensure you have SteamGuard installed on the account you use, as your account details will be stored in plain text on your server. Also note that unless the account is dedicated to the server, the Steam Guard Code may be required to be manually entered.
  • These files must be in the server root folder (not in a folder)
  • Works best when setting Server directory to the root of a drive (ie: C:\DayZServer or  D:\DayZServer etc)

License:

CC BY-ND 4.0

Download Links:

ServerMonitor.rar
BEC.zip
BECMonitor.rar

Edited by Aussie Cleetus
Update to newest version of ServerMonitor.rar
  • Like 6
  • Thanks 3
  • Beans 1

Share this post


Link to post
Share on other sites

You can write an example.
what strings to write in playersmodslist.txt

Share this post


Link to post
Share on other sites

an example:

BuildAnywhere - https://steamcommunity.com/sharedfiles/filedetails/?id=1574054508
KillFeed - https://steamcommunity.com/sharedfiles/filedetails/?id=1567872567

Basically the name is just there for our own records, so we can remember what mods we have.
The program automatically finds the entry based on the url, that's why the url must be the last part on any given line

Edited by Aussie Cleetus
  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Why do these records?
in order for the server to load the mods?
or to download mods automatically?

Share this post


Link to post
Share on other sites

both actually, it uses the lists to download the mods from steamcmd, then uses the id from the url so that it can get the path that the mod gets downloaded to (as steamcmd actually doesn't download mods via name, it stores by id).

So the order or mods in these files also determines mod load order

Edited by Aussie Cleetus

Share this post


Link to post
Share on other sites

Hello, where do I write running DZSALModServer.exe for DZSALauncher.

Thank you for answer.

Sorry for my bad english.

Share this post


Link to post
Share on other sites
On 7/30/2019 at 6:05 AM, Johny_P said:

Hello, where do I write running DZSALModServer.exe for DZSALauncher.

Thank you for answer.

Sorry for my bad english.

So the issue apparently is when he starts the program using Start-Process he doesn't set the "-WorkingDirectory" parameter to the $serverPath,

@Aussie Cleetus Can you make this change on line 409? It should be changed

From this:
      $gameProcess = Start-Process $gamePath $myList -PassThru
To this:
      $gameProcess = Start-Process $gamePath $myList -PassThru -WorkingDirectory $serverPath

This will allow DZSALModServer.exe to be used as the "serverFileName" option, without modifying the rest of the ServerMonitor script.

CC BY-ND 4.0 obviously prevents anyone from distributing or posting a version of this fixes this issue, but I do appreciate it.

Share this post


Link to post
Share on other sites
On 8/7/2019 at 1:58 PM, Fang64 said:

So the issue apparently is when he starts the program using Start-Process he doesn't set the "-WorkingDirectory" parameter to the $serverPath,

@Aussie Cleetus Can you make this change on line 409? It should be changed


From this:
      $gameProcess = Start-Process $gamePath $myList -PassThru
To this:
      $gameProcess = Start-Process $gamePath $myList -PassThru -WorkingDirectory $serverPath

This will allow DZSALModServer.exe to be used as the "serverFileName" option, without modifying the rest of the ServerMonitor script.

CC BY-ND 4.0 obviously prevents anyone from distributing or posting a version of this fixes this issue, but I do appreciate it.

though I didn't see any need for it, the requested change was made.
all that needed to happen was changing the exe filename in the servermonitor.cfg file to DZSALModServer.exe

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

What if I am running a servermod that doesn't live on the workshop?
Is it possible to use this tool??

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

×