EDEN STAR Guide

Creating & Managing a Server With Game Server Manager for Eden Star

Creating & Managing a Server With Game Server Manager

Overview

Takes you through the process of setting up an Eden Star server with Game Server Manager – which automates things & provides a host of useful tools & features to make setting up & running your server easier.

Summary

This guide differs from others you may have read because of one important factor: the Game Server Manager program. This program automates things for you as a server owner and provides a host of useful tools and features to make setting up and running your server so much easier.

It is worth noting that if you are unsure as to anything in this guide, that you first consult the official one for additional information.

Game Server Manager features – an overview
Automatic update checking and applying via SteamCMD (with configurable delay and server warning message)
Players online graph
Built-in Telnet and RCON client, which can be used manually or set to automatically send messages and commands (such as shutdown and shutdown notices) to the server
Auto-restart if server goes down
Message/command broadcast system
Discord message broadcasting for server state and player changes.
Player list showing everyone online, including ping, score, team and time online.
INI File Parser, which displays a list of all ini file settings (across multiple files) in a list that you can sort, filter, edit, import and export as you wish.
CPU and RAM usage display, with graph
Network bandwidth monitor, with graph
– Ability to output status, players online and server name to a file – formatted however you want
– Single-click access to configuration.
Detailed server information
– Internal and external IP address display
– Server up-time display
– Optional timed daily server restart.
Timed incremental backups. Perform a daily backup of game data to a zip file.
Automatically update game – Ability to run a maintenance / update program between restarts. e.g. SteamCMD to perform daily updates automatically. The server will start back up again when this program finished / ends so you minimise downtime.
– Option to delay timed restarts. i.e. The server will be turned off and the program will wait X seconds before attempting to restart it.
– Telnet to server
1 click backup and maintenance
Remote commands to start, stop, backup, update and send commands to your server.
Game Profiles – Multiple instances of the program can be run with multiple configurations.
– Designed to be “universal” and work with a multitude of games.

Getting Started

Getting Started

It probably goes without saying that you first need to download the dedicated server files. These are kept under a different “appid” to the main game client (419790). You can download that via SteamCMD, using command-line parameters like shown below:

+login anonymous +force_install_dir <install_dir> +app_update 419790 validate +quit

I should also add that you will need to forward the following ports (usually performed from your router’s admin page):
27015 – “UDP” OR “Both” – Query port for Steam’s server browser and allows Game Server manager to retreive server details such as players online etc.
7777 – “UDP” OR “Both” – Game client port
These are the default ports. If you alter them then don’t forget to alter the port forwarding rules as well.

Important Note: If you host on the same machine that you play, you will need to alter the default ports, since the Steam client and/or game causes conflicts with the server.

Download The Game Server Manager

Head to this [www.jimbobslimbob.com]website to download my Game Server Manager[www.jimbobslimbob.com] program.

Extract the zip file to a location of your choosing and run the program.

Setting It Up

Upon opening the program you will be asked the location of your server executable file. In this case, it is “EdenGameServer.exe“. This is normally found in “C:Program Files (x86)SteamsteamappscommonEdenGameBinariesWin64“. if you installed the game to a different location, simply locate the required file from there.

Head to the “Tools/Settings” tab and click on “Program Settings“. Put the desired command line details in the relevant field to set up the various options for your server.

The table below was taken from the official Guide, found here.

-Port ####
The servers game port that the clients will connect to.
-QueryPort ####
The servers query port that will manage steams server browser duties and info.
-ServerSaveKey”<Your Server Key Here>”
A key that is appended to the save game file, necessary if you are running more than one instance of a server on one box.
-ServerName”<Your Server Name Here>”
The name of the game server that will appear in the search listings.
-ServerAutoSaveInterval ####
The interval in seconds of when the server will save, default is 3600 seconds (1 hour). Minimum save interval is 300 seconds (5 mins)
-ServerSaveSlotRange ##
The number of slots the server will save, e.g. 48. The server will iterate through this range per save.
-ServerLoadSlot ##
The slot the server will attempt to restore from
-ServerLoadFromLastSave
Tells the server to restore from the last save slot.
-ServerMaxPlayers ##
Sets the max players for the server, default is 8, max is 32.
-ServerPassword”<Your_Server_Password_Here>”
Password needed for users to log in
-RCONPassword”<Your_RCON_Password_Here>”
Password needed to connect an RCON client too.
-RCONPort ####
Port number that RCON will listen from a connection.
-BlockDamageReductionFromPlayer #
For reducing damage of structures from players, use a value from 0 to 1, i.e. 0 = 0%, 1 = 100%
-PlayerDamageReductionFromPlayer #
For reducing damage of players from Players, use a value from 0 to 1, i.e. 0 = 0%, 1 = 100%
-ApplyPvPReductionOnlyWhenPlayerNotOnline
If set will only apply PlayerDamageReductionFromPlayer if the player is offline.
-BlockDamageReductionFromAI #
For reducing damage from AI, use a value from 0 to 1, i.e. 0 = 0%, 1 = 100%
-EdenKitShieldDeteriorationModifier #
For modifying block deterioration under an Eden Kit Shield, use a value from 0 to 1, i.e. 0 = 0%, 1 = 100%
-WorldDeteriorationModifier #
For modifying block deterioration outside of an Eden Kit Shield, use a value from 0 to 1, i.e. 0 = 0%, 1 = 100%

So, an example command-line would be something like this:

-ServerName”TestServer” -ServerPassword”noway”-RCONPort 8890 -RCONPassword”myrconpassword”

To get the program to correctly query it, enter the IP address of the server and the query port in the relevant field. If you are running your own server this would normally be “127.0.0.1:27015“. If you have altered the default ports, you may need to do so here as well. The query port is 27015 by default.

Tick “Detect via query” in the “Monitoring” tab if you want the status of the server to be detected by a server query, rather than seeing if the program is running (recommended with Eden Star).

Tick “Check server status, every” in the “Monitoring” tab to have the program regularly query your server. Many automated features of the program require this regular check to function correctly.

You should then be good to go.

General Use

To start the server simply click on “Start Server” on the “Main” tab. To stop the server, use the button next to start.

You can access various common tasks by clicking on “Quick Tasks” on the “Main” tab. Here you can quickly restart, backup, perform maintenance and even switch between two sets of command-line parameters. More details on setting some of these features follows later in the guide.

Most of the tabs on the main screen are self explanatory – and contain various information about your server.

Monitoring and restarting


As mentioned earlier, it is recommended that you tick “Check server status, every” in the “Monitoring” tab under settings. You may want to increase the interval at which the check is performed if your server takes longer than the default time to be “ready”. This actively monitors the server and updates the “Main” and “Players Online” tabs and gives you access to the following:

  • Automatically restarting the server if it goes down/crashes
  • Players online graph
  • Performance (RAM and CPU) graph
  • Network bandwidth graph
  • Ability to output the status to a file (to share or embed, for example)

Setting Up The Built-in RCON Capabilities [Optional]

Eden Star can make use of the built-in RCON features of this program in several ways:

– It can use the command “triggershutdown” to shutdown the server
– It can send messages to players on the server before a timed restart (10, 5 and 1 minute before) with “messageall”
– It can be used to quickly send RCON commands to the server within the program

To set this up you must ensure the relevant command-line options are entered in the command-line parameters for the server executable, namely:

-RCONPort 8890
-RCONPassword”<MyRCONPassword>”

Change the password to something unique to avoid anyone logging in and messing with your server.

So, head to the “Telnet” tab on the settings screen and set it up to look like the screenshot shown, obviously replacing the password and port to whatever your server uses and entering whatever messages you would like to send when a shutdown occurs. The most important things here is select “RCON” as the “Mode” and to tick the box that says “Use a Telnet command to shutdown the server” and enter “triggershutdown” in the textbox below it. You can also add some useful messages to be sent to the connected clients before the update by adding something like “say ’10 minutes until restart'” in the boxes to the right. This will give your users a heads-up before a timed restart is performed.

Once it is all setup, you should be able to connect to the server via the “Telnet” tab on the main screen. You can alternatively set the program to automatically connect when it sees the server is online.

RCON Commands
Taken from the official guide here.

exec <your exec command>
Allows you to execute exec commands on the server
message <player name or UIDStr> <message>
Allows you to admin message and individual player
messageall <message>
Allows you to admin message all players on the server
listplayers
Lists all players
triggersave
Triggers a server save
kick <player name or UIDStr> <reason> <ban>
Kicks player, bans them if you supply ‘ban’
triggershutdown <save>
Triggers shut down, saves if ‘save’ is supplied
listclans
Lists all clans on server
listplayersofclan <clanid>
Lists players in clan
stats
Lists server stats

Backing Up Game Data [Optional]

The program has a built in incremental backup system for game files. To use this you must set up the locations first.

Go to “Settings/Tools” and click “Program Settings“. Navigate to the “Backup” tab. Click the button to the right of “Folder to backup” (“…”) to browse for the Eden Star gamedata folder.

The default folder for Eden Star game data is “C:Program Files (x86)SteamSteamAppscommonEdenGameSaved“.

Next set the location that you want the backups to be saved to in the box below.

Optional: if you want the program to automatically backup game data daily, you can set the relevant option in this screen. Simply tick “Backup data, at” and enter a time (24-hour clock).

You can then manually perform a backup by clicking “Backup Game Data” under the “Settings/Tools” tab.

Updating and timed restarts [Optional]

The program has a built in feature to restart a server at a specific time of day. This can be found in the “Timed Restart” tab under the program settings.


Set up the time you want this to be performed and tick the “Timed restart, at” tickbox if you want to do this.

Even if you do not wish to set a timed restart, you can still make use of this screen. By selecting a program and entering any optional command line parameters in the “Run a program before starting server” section, you can enable updating the server – either manually or automatically.

For example, if you use SteamCMD to update your game, select the SteamCMD executable here and enter any command line details in the relevant box. More information on SteamCMD in the next section

Once this is set, you now have the option to perform this action on timed restarts. It will do it all for you!

You can then also use “Run Maintenance Program” under the “Settings/Tools” tab to run this program manually at any time.

Additional tip: if you have also set a backup location you can use “Perform Maintenance Now” under the “Settings/Tools” tab to perform the following sequence:
1. Back up game data
2. Stop Server
3. Run the “maintenance” program
4. Start the server back up again.

Automatic Updates using SteamCMD [Optional]

Regardless of whether you installed the game via the Steam client or some other method, you can still use SteamCMD to update Eden Star. As long as you point SteamCMD to the location of your Eden Star installation, it will update it from there.

Download SteamCMD from here.

Head to the “Program Settings” and navigate to “Timed Restart” tab. Select the SteamCMD executable under “Program Location”. Next, you need to tell SteamCMD what game we are updating – and where it is. To do this, we can add a number of commands in the command-line parameters field. Here are some of the ones you may need to use (put spaces between seperate commands – and omit any < and > shown in the commands):

+login <username> <password>
This will log you into Steam and allow the game to be downloaded.
Please note: The first time it is performed on the machine, you may need to enter a “Steam Guard Code” before being allowed access. This is Steam’s additional security layer where it will send you an e-mail with a code to input. Input it when prompted by SteamCMD.

+force_install_dir “<path>”
Tells SteamCMD that the game is located here. Enter the full path of Eden Star here (e.g. “C:Program Files (x86)SteamSteamAppscommonEden Star”).

+app_update 419790
Will tell SteamCMD to go ahead and update Eden Star

validate
Validate that the game files are all present and correct. Tag this at the end of the above statement, without a “+” sign.

+quit
Tells SteamCMD to quit – this should always be the last command on your list.

So, an example command line could be:
+login MySteamUsername MySteamPassword +force_install_dir “C:MyGameLocation” +app_update 419790 validate +quit

Once this has been set up you can use both the “Run Maintenance Program” (simply runs the program) and “Perform Maintenance” (will Back up game data, stop server, run the “maintenance” program, and finally start the server back up again) buttons under the “Settings/Tools” tab to update the game. Moreover, if you have set a timed restart, it will update the game before starting the server back up!

Automatic Updating

Once you have the above set, you can also tell the program to check for game updates at a regular interval. When an update is found it will automatically stop the server, update it and restart it again.

To do this, head to the “SteamCMD Auto-Updates” tab under “Program Settings” and fill out the details on this screen. You will need to enter your Steam username and password here, along with an “appid” (419790) and “branch” (public).

Once entered, select a time frame for how often the program should check for updates and tick the “Check for game updates, every” box. You are now good to go!

You can even make the program delay an update once found, for a configurable time period, in order to broadcast a message to players on your server, warning them of the impending update.

Remote Commands [Optional]

Pseudo Remote Commands Via FTP/VPN (or other similar means)

This will allow you to start, stop, backup and run maintenance (update) your server remotely (regardless of any built in features a game has).

To do this you will need to have access to the folder that the program is running in via VPN, FTP or some other means. I will not cover how to do that here, since that is really another topic altogether. I will assume that for this guide, you already have access to the folder.

How to do it

The program periodically looks to see if any of the files listed below are sitting in the folder with it. If it sees any of them it will perform the corresponding actions (and remove the file). So, to perform any of the actions listed below all you have to do is create/copy a file into the Game Server Manager folder with the corresponding name (contents of file makes no difference). The program will see the file and perform the action. Simple as that!

Start the server
File: start.txt

Stop the server
File: stop.txt

Perform a backup
File: backup.txt

Full maintenance cycle (backup, stop server, run maintenance program, start server)
File: update.txt

Restart the server
File: restart.txt

Restart the server with command-line parameter set #1
File: parm1.txt
The command-line parameter for this is set in the “Telnet Commands” tab. You can also access this feature via the “Quick Tasks” dropdown button on the “Main” tab.

Restart the server with command-line parameter set #2
File: parm2.txt
The command-line parameter for this is set in the “Telnet Commands” tab. You can also access this feature via the “Quick Tasks” dropdown button on the “Main” tab.

Send command(s) to the local RCON client
File: telnetsend.txt
The program will read all text in this file and send it via the built-in Telnet client

Basic Port Forwarding Guide [Reference]

Basic (Generic) Guide

NOTE:You only need to perform port forwarding if your server is going to be accessed over the internet. If you are hosting a LAN game then it is not required.

1. Find your hosting machine’s LAN (internal) – displayed on the “Main” tab of GSM.

2. Log into your router’s admin page in a web browser. This is variable – but most router’s by standard, have the details written on the device itself somewhere (a sticker). It will be something like 192.168.0.1 or 192.168.0.255… or whatever. You will undoubtedly require a password, which is no doubt also on the sticker. If there is nothing on the router itself then you may have to get in contact with your ISP (if it’s an ISP’s router) or Google for the default login details of your specific router model.

3. Once you are into the router’s admin pages, search for something called “port forwarding” amongst the menus. Difficult to say exactly where it would be, since all routers are different. Again, Google may be your friend here.

4. Set up a “rule” under the port forwarding screen to direct UDP and TCP traffic from the required ports to the LAN address you found in #1.

5. Save the rules and you should be good go go.

Final Note: If your hosting machine is set up to dynamically retrieve a LAN address on your network then it is possible that subsequent boots will alter your LAN address and cause port forwards to be pointing to the wrong machine. If this happens, you can either alter the port forwards again, or, even better, change your LAN address to static (and set an address manually). Another Google[www.google.co.uk] can help you with this.

Port Forwarding Example Scenarios (Further Reading)

Friend (F) wants to connect to your server (S). To do this (since they are at another location other than your internal LAN) they have to “talk” to your server machine. Your router (R) is the first point of contact for anyone outside your LAN. So the router needs to know where the request from (F) is meant to go to. That’s where port forwarding comes in. It’s a rule, set on your router that tells it to route/forward all communication (on the specified ports) from (F) to (S). Without it, the router does not know where to send it and the data is “lost” – hence – no connection.

With port forwarding:
(F) Requests to join your server —-> (R) Tells it to forward data to (S) [Connection established]

Without port forwarding:
(F) Requests to join your server —-> (R) Has no idea where to send the data [Connection fails]

With port forwarding pointing to the wrong place:
(F) Requests to join your server —-> (R) Sends data to the wrong computer (not your server) [Connection fails]

Connecting via LAN (no port forwarding required):
Y = You (over LAN)
(Y) Requests to join your server with a LOCAL (LAN) IP address —-> (R) Knows where it should go straight away (you provided info) [Connection established]

Legend
(Y) = You
(F) = Friend
(S) = Your server
(R) = Your router

Final Words

I hope this guide and the Game Server Manager was useful to you.

It may interest you to know that the program has been tried and tested not only with Eden Star – it works with Empyrion, 7 Days to Die, GRAV and Space Engineers too. Infact, any game that uses the standard querying language should work with it. Hopefully now you have read the guide, you will have a good understanding as to how it works if you want to try it out on other games.

The Game Server Manager program is being updated regularly by myself. It has all been done in my spare time, to aid server hosters.

I hope you enjoy your Eden Star server!

SteamSolo.com