Out of Reach dedicated server can be started as Steam Tool (more details here) or as a stand-alone application which can be downloaded and updated with use of SteamCMD.
SteamCMD
SteamCMD is used for download and installation of Out of Reach dedicated server. Please refer to SteamCMD page for detailed instruction on its installation and usage.
Linux
Server installation
1. Create server folder (referred as <install_dir>)
2. Launch SteamCMD and download server
Steam> login anonymous Steam> force_install_dir <install_dir> Steam> app_update 406800 validate Steam> exit
3. Install required .so libraries
sudo cp <install_dir>/steamclient.so /usr/lib/ echo "<install_dir_absolute_path>/SFS2X/lib/linux64" | sudo tee /etc/ld.so.conf.d/oor.conf sudo ldconfig
Launching server
To launch Out of Reach dedicated server use the following command:
<install_dir>/SFS2X/sfs2x-service start
To stop a server use the following command:
<install_dir>/SFS2X/sfs2x-service stop
Consider adding <install_dir>/SFS2X/ path to you PATH environment variable
Windows
Server installation
1. Create server folder, i.e. C:\oor-server from now on referred as <install_dir>
2. Launch SteamCMD and download server
Steam> login anonymous Steam> force_install_dir <install_dir> Steam> app_update 406800 validate Steam> exit
3. Make sure you have installed Microsoft Visual C++ 2015 Redistributable (x64). You can download from here.
Launching server
To launch Out of Reach dedicated server use:
<install_dir>/SFS/sfs2x-standalone.exe
Web console
By default web console is available at http://[host]:19933/web-console URL (port number can be changed, please check Network section for more details). Web console user is: admin and password is: pass
Remember to change the password after first login!
At the first start, server does not have a name and region selected and thus will not be able to connect to Steam Master Server and will not be visible in the game on servers list. To set a name and region go to Server parameters menu.
Network
By default Out of Reach server binds to 0.0.0.0 network interface which in most cases is fine and there is no need to change it
But if you you would like to change it to different address, two steps are required:
- Set IP address as oor.server.ip.address server launch parameter (or environment variable)
- Change Smartfox Server configuration in <install_dir>/SFS2X/config/server.xml file. Change addresses in socketAddress section:
<socketAddresses> <socket address="0.0.0.0" port="27016" type="TCP"/> <socket address="0.0.0.0" port="27016" type="UDP"/> </socketAddresses>
Out of Reach dedicated server listens for incoming connections on the ports listed below. Ensure your network configuration allows incoming connections to these ports and directs them to the host that will be running your dedicated server.
Protocol | Port number | Launch parameter* | |
---|---|---|---|
Server port | TCP/UDP | 27016 | oor.server.port |
Steam's Server browser query port | TCP/UDP | 27010 | oor.steam.master.server.updater.port |
Web console port | TCP | 19933 | oor.server.console.port |
*Those are default port numbers, they can be overwritten in server launch parameters (or environment variables). Please refer to Server launch parameters section.
Server update
To update server launch SteamCMD and use following commands
Steam> login anonymous Steam> app_update 406800 validate Steam> exit
To automate server update please refer to SteamCMD wiki.
Database
Out of Reach Dedicated Server requires SQL databases to operate, by default it uses PostgreSQL 9.3.
There is an option to use less efficient, but embedded (no additional installation required) H2 database. To do so you need to add -Dspring.profiles.active=h2 server launch parameter. Please refer to Server launch parameters section.
If you still want to go with stand-alone PostgreSQL, please checkout following steps
Installation on Linux
1. Installation of PostgreSQL with use of apt-get
sudo apt-get install postgresql
2. Creation of some_user database user with some_password password and oor_server database. Password is encrypted for some_user database user! Please refer to this page for PostgreSQL password encryption details.
echo "CREATE ROLE some_user LOGIN ENCRYPTED PASSWORD 'md59e2e8a8fce0afe2d60bd8207455192cd' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION; CREATE DATABASE oor_server WITH ENCODING='UTF8' OWNER=some_user CONNECTION LIMIT=-1; ALTER ROLE some_user SET search_path = oor_server;" | sudo -u postgres psql
Installation on Windows
1. Download PostgreSQL 9.3 Windows installer, i.e. from here
2. Start installer to install database
3. When installation is done, start Windows console and paste there following command:
echo CREATE ROLE some_user LOGIN ENCRYPTED PASSWORD 'md59e2e8a8fce0afe2d60bd8207455192cd' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION; CREATE DATABASE oor_server WITH ENCODING='UTF8' OWNER=some_user CONNECTION LIMIT=-1; ALTER ROLE some_user SET search_path = oor_server; | "C:\Program Files\PostgreSQL\9.3\bin\psql.exe" -U postgres
Those are default values (user, password and database name) used by the server. You can change them (as well as database host), to do so please refer to Server launch parameters section.
Database is also by default installed at C:\Program Files\PostgreSQL\9.3 directory. If you have installed it in some other location, please change it accordingly.
Password is encrypted for some_user database user! If you would like to use different user and password please refer to this page for PostgreSQL password encryption details.
No additional SQLs are needed, database migration is executed each time (if needed) at server startup.
Time zone
UTC (Universal Time Coordinated) time zone is preferred as it's 'immune' to DST (Daylight Saving Time) change. After each change of server's system time, Out of Reach dedicated server needs to be restarted.
Parameters
Server launch parameters can be specified in <install_dir>/SFS2X/sfs2x-service.vmoptions file in Java Virtual Machine style:
-D[parameter.name]=[parameter.value]
i.e.
-Door.database.name=oor_server
Here you can find the list of all supported parameters:
Parameter name | Example value | Description |
---|---|---|
oor.server.ip.address | 192.168.0.54 | IP address of network interface which will be used by the server |
oor.server.port | 27016 | Game server port |
oor.server.console.port | 19933 | Web console port |
oor.steam.master.server.updater.port | 27010 | Steam master server query port |
oor.database.host | localhost:5432 | Database host (address) with port number |
oor.database.user | some_user | Name of user used to connect to database |
oor.database.password | some_password | Password used to connect to database |
oor.database.name | oor_server | Name of database OOR server will be using |
spring.profiles.active | h2 | Type of database to be used, possible values are h2 (for embedded database) or postgres (for stand-alone database) |