VoidExpanse/Server setup: Difference between revisions

From AtomicTorchWiki
(Created page with "= Multiplayer server setup = == GUI for multiplayer server == '''Currently in development''' We are planning to create a gui for Windows, Mac and Linux to provide easy, user...")
 
 
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= Multiplayer server setup =
= Multiplayer server setup =


== GUI for multiplayer server ==
== Requirements ==
To launch a multiplayer server on any system, your system needs to meet following requirements:
* .NET or Mono, compatible with .NET Framework 4.0
Windows 7 (and newer) have .NET 4.0 already installed.
Mono is included (bundled) for Linux and Mac game installations.


'''Currently in development'''
== Installation ==
We are planning to create a gui for Windows, Mac and Linux to provide easy, user-friendly server setup and management.
However, on console-based systems, like FreeBSD, there's always available server setup and management with console commands.
 
 
== Multiplayer server setup ==
 
To launch a multiplayer server on any system, your system needs to meet following requirements:
* .Net/Mono, compatible with .net framework 4.0


=== Installation ===
==== How to host your own server: ====
1. Copy the following files from game distributive to your server machine:
* (1) The server is located in the game folder: "Server_dotNET" for Windows or "Server_Mono" for Linux/OSX.
* folder Server
* (2) Start the server executable first time with "--dedicated" flag (without quotes).
* folder Mods
* (3) Enter "check" into the server console and press Enter key. It will detect that configuration is missing and create the "SettingsServer.xml" and "ModsConfig.xml" files.
* (4) Enter "stop" and press enter. The server will stop and quit.
* (5) Now you need to modify "SettingsServer.xml" to set unique server name, make it private if needed, set other settings, etc...


Installation complete!
In ''SettingsServer.xml'', '''do not modify misc and network parts'''! It may cause malfunction if something is set in a way it is not intended to be.


=== Launch ===
You may, however, modify <server> part on your own risk. There you can setup some server configurations that would affect gameplay.


====Windows====
==== Additionally if you want to add mods to your server: ====
Launch AtomicTorch.SpaceRPG.Server.RuntimeWin.exe from ./Server/ folder.
* (6) Create a subfolder "Mods" in the server folder and place your mods there ("*.MPK" files).
* (7) Edit "ModsConfig.xml" file and add entries for the new mods. IMPORTANT! Please set any version to the mod definition here, it will be automatically fixed with the proper version from the mod header.


====Other system with Mono====
For example, if you want to add single mod "HereticMk2.mpk", your ModsConfig.xml should look like this:
Launch AtomicTorch.SpaceRPG.Server.RuntimeWin.exe from ./Server/Mono folder with mono,
<pre><?xml version="1.0" encoding="utf-8" standalone="yes"?>
like this:
<mods>
<pre>mono AtomicTorch.SpaceRPG.Server.RuntimeWin.exe</pre>
  <mod>core_1.0.0</mod>
  <mod>HereticMk2_1.0.1</mod>
</mods></pre>


If you do not wish to add mods, please disregard points 6 and 7.


Launch complete!
==== Starting the server: ====
* (8) Start the server executable with "--dedicated" flag (without quotes).
* (9) Enter "new" to the server console and press Enter key to create a new world.
* (10) Stop your server by typing "stop" and pressing Enter key any time (it will save world before stopping).
* (11) Load your saved world by typing "load" when you want to start the server next time.


=== Settings ===
==== Starting your server automatically: ====  


'''SettingsServer.xml'''
If you want to make an auto-launch script to automatically load the world, it should look like this
Most of settings are stored in SettingsServer.xml, which is located in the same folder as server .exe file.
<pre>VoidExpanse.Server.exe --dedicated load</pre>
If it's not there, launch server once with "-new" argument, and it'll be created automatically.


In SettingsServer, '''do not modfify misc and network parts'''! It may cause malifunction.
==== Extra NOTES for Linux / OSX: ====


You may, however, modify <server> part on your own risk.
You need to use "Server_Mono". If you have pre-installed Mono 4 (complete version) in your OS, you could run directly "mono VoidExpanse.ServerMono.exe" otherwise you need to execute appropriate bundle-executable:<pre>
Linux 32-bit: ".\VoidExpanse.ServerMono.Bootstrapper.Bundle.Linux32 --dedicated"
Linux 64-bit: ".\VoidExpanse.ServerMono.Bootstrapper.Bundle.Linux64 --dedicated"
OS X: ".\VoidExpanse.ServerMono.Bootstrapper.Bundle.Mac --dedicated"</pre>




'''Create a new game'''
== Whitelist, blacklist ==
When server starts, you can create a new game, or load an existing one.
To enable whitelist, you need to follow the following procedure:
To create a new game, type to create a new server^
* Be sure, that white_list_enabled in SettingsServer.xml is set to 1.
<pre>-new [seed_key]</pre>
* Create a file "whitelist.txt" next to the server executable file, and add there names of player you want to play on your server, one name on one line:
Seed_key is a word, which is used like seed value for random-based generation, like "voidexpance" or "hellyeah", which will affect world generation on server.
<pre>
For example, if you type
Portoss
<pre>-new myworld</pre>
Zegrr
random world will be created, always the same for "myworld" seed key. And if you type
Terrinaa
<pre>-new hellyeah</pre>
</pre>
random world will be created too, but different from the one you'll get with "myworld".
In other words, seed_key word defines generated world.
Feel free to experiment, type in you nickname to create your personal world =)


After this steps are done, only players listed in whitelist.txt will be able to connect to your server.


====Saving game====
To enable blacklist, just create a file "blacklist.txt" next to game executable, and add there names of player, which you don't want to play with. Rules are the same - one name per one line. Blacklists are always enabled, so there's no need to change SettingsServer.xml
In multiplayer mode, server automatically saves game every time interval, specified in SettingsServer.xml (autosave_delay parameter).
You can save server game with console command ''savegame''.
<pre>savegame</pre> - will save you game to slot 0 under the name "CurrentWorld".
<pre>savegame 5 ServerNameWord</pre> - will save you game to slot 5 under the name "ServerNameWord".


====Loading game====
== Server commands ==
When server starts, you can create a new game, or load an existing one.
You can find full list of server commands at [[VoidExpanse/Server_commands|Server commands]]
To load an existing game, use command:
<pre>-load [slot_number]</pre>
You can use the same command not only when server starts, but even during the game, just type in console:
<pre>load 0</pre>

Latest revision as of 03:54, 13 June 2017

Multiplayer server setup

Requirements

To launch a multiplayer server on any system, your system needs to meet following requirements:

  • .NET or Mono, compatible with .NET Framework 4.0

Windows 7 (and newer) have .NET 4.0 already installed. Mono is included (bundled) for Linux and Mac game installations.

Installation

How to host your own server:

  • (1) The server is located in the game folder: "Server_dotNET" for Windows or "Server_Mono" for Linux/OSX.
  • (2) Start the server executable first time with "--dedicated" flag (without quotes).
  • (3) Enter "check" into the server console and press Enter key. It will detect that configuration is missing and create the "SettingsServer.xml" and "ModsConfig.xml" files.
  • (4) Enter "stop" and press enter. The server will stop and quit.
  • (5) Now you need to modify "SettingsServer.xml" to set unique server name, make it private if needed, set other settings, etc...

In SettingsServer.xml, do not modify misc and network parts! It may cause malfunction if something is set in a way it is not intended to be.

You may, however, modify <server> part on your own risk. There you can setup some server configurations that would affect gameplay.

Additionally if you want to add mods to your server:

  • (6) Create a subfolder "Mods" in the server folder and place your mods there ("*.MPK" files).
  • (7) Edit "ModsConfig.xml" file and add entries for the new mods. IMPORTANT! Please set any version to the mod definition here, it will be automatically fixed with the proper version from the mod header.

For example, if you want to add single mod "HereticMk2.mpk", your ModsConfig.xml should look like this:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<mods>
  <mod>core_1.0.0</mod>
  <mod>HereticMk2_1.0.1</mod>
</mods>

If you do not wish to add mods, please disregard points 6 and 7.

Starting the server:

  • (8) Start the server executable with "--dedicated" flag (without quotes).
  • (9) Enter "new" to the server console and press Enter key to create a new world.
  • (10) Stop your server by typing "stop" and pressing Enter key any time (it will save world before stopping).
  • (11) Load your saved world by typing "load" when you want to start the server next time.

Starting your server automatically:

If you want to make an auto-launch script to automatically load the world, it should look like this

VoidExpanse.Server.exe --dedicated load

Extra NOTES for Linux / OSX:

You need to use "Server_Mono". If you have pre-installed Mono 4 (complete version) in your OS, you could run directly "mono VoidExpanse.ServerMono.exe" otherwise you need to execute appropriate bundle-executable:

Linux 32-bit: ".\VoidExpanse.ServerMono.Bootstrapper.Bundle.Linux32 --dedicated"
Linux 64-bit: ".\VoidExpanse.ServerMono.Bootstrapper.Bundle.Linux64 --dedicated" 
OS X: ".\VoidExpanse.ServerMono.Bootstrapper.Bundle.Mac --dedicated"


Whitelist, blacklist

To enable whitelist, you need to follow the following procedure:

  • Be sure, that white_list_enabled in SettingsServer.xml is set to 1.
  • Create a file "whitelist.txt" next to the server executable file, and add there names of player you want to play on your server, one name on one line:
Portoss
Zegrr
Terrinaa

After this steps are done, only players listed in whitelist.txt will be able to connect to your server.

To enable blacklist, just create a file "blacklist.txt" next to game executable, and add there names of player, which you don't want to play with. Rules are the same - one name per one line. Blacklists are always enabled, so there's no need to change SettingsServer.xml

Server commands

You can find full list of server commands at Server commands