Skip to content

Latest commit

 

History

History
105 lines (74 loc) · 4.69 KB

DOWNLOADING.md

File metadata and controls

105 lines (74 loc) · 4.69 KB

Info

This document contains all the relevant information for downloading and running your own ParaCode server.

GETTING THE CODE

The simplest way to obtain the code is using the github .zip feature.

Click here to get the latest code as a .zip file, then unzip it to wherever you want.

The more complicated and easier to update method is using git. You'll need to download git or some client from here. When that's installed, right click in any folder and click on "Git Bash". When that opens, type in:

    git clone https://github.com/ParadiseSS13/Paradise.git --depth 1

(hint: hold down ctrl and press insert to paste into git bash)

This will take a while to download (it is the entire repo + history, not just a snapshot), but it provides an easier method for updating.

INSTALLATION

First-time installation should be fairly straightforward. First, you'll need BYOND installed. We're going to assume you already did this

This is a sourcecode-only release, so the next step is to compile the server files. Open paradise.dme by double-clicking it, open the Build menu, and click compile. This'll take a little while, and if everything's done right, you'll get a message like this:

    saving paradise.dmb (DEBUG mode)
    paradise.dmb - 0 errors, 0 warnings

If you see any errors or warnings, something has gone wrong - possibly a corrupt download or the files extracted wrong, or a code issue on the main repo. Feel free to ask on Discord.

Once that's done, open up the config folder. Firstly, you will want to copy config.toml from the example folder into the regular config folder. You'll want to edit the url_configuration section of config.toml to set reboot_url to your server location, so that all your players don't get disconnected at the end of each round. It's recommended you don't turn on the gamemodes with probability 0, as they have various issues and aren't currently being tested, so they may have unknown and bizarre bugs.

You'll also want to edit the admin_configuration section of config.toml to remove the default admins and add your own. If you are connecting from localhost to your own test server, you should automatically be admin. "Head of Staff" is the highest level of access, and the other recommended admin levels for now are "Game Admin". The format is:

# Note that your ranks must be cased properly, usernames can be normal keys or ckey
admin_assignments = [
	{ckey = "Admin1", rank = "Hosting Provider"},
	{ckey = "Admin2", rank = "Game Admin"},
]

You can define your own ranks in the admin section of config.toml.

If you want to run a production scale server, we highly recommend using database administrators.

Finally, to start the server, run Dream Daemon and enter the path to your compiled paradise.dmb file. Make sure to set the port to the one you specified in the config.txt, and set the Security box to 'Trusted'. Then press GO and the server should start up and be ready to join.

Installation (Linux)

The code is fully able to run on linux, however windows is still the recommended platform. The libraries we use for external functions (RUSTG and MILLA) require some extra dependencies.

For debian, please download the latest RUSTG release from https://github.com/ParadiseSS13/rust-g, run the following: apt-get install libssl-dev:i386 pkg-config:i386 zlib1g-dev:i386.

After installing these packages, RUSTG should be able to build and function as intended. Build instructions are on the RUSTG page. We assume that if you are hosting on linux, you know what you are doing.

Once you've built RUSTG, you can build MILLA similarly, just go into the milla/ directory and run cargo build --release --target=i686-unknown-linux-gnu.

UPDATING

If you used the zip method, you'll need to download the zip file again and unzip it somewhere else, and then copy the config and data folders over.

If you used the git method, you simply need to type this in to git bash:

    git pull --depth 1

When you have done this, you'll need to recompile the code, but then it should work fine and be up to date with the live server.

SQL Setup

The SQL backend is required for storing character saves, preferences, administrative data, and many other things. We recommend running a database if your server is going to be used as more than just a local test server. Your SQL server details go in the database_configuration section of config.toml, and the SQL schema can be found in SQL/paradise_schema.sql. More detailed setup instructions are located on our wiki: https://www.paradisestation.org/wiki/index.php/Setting_up_the_Database