Difference between revisions of "Creating your own paracode server"

From Paradise Station Wiki
Jump to navigation Jump to search
(Added pictures, made configuration section, added Github sidebar, removed mention of external IP URL use, and updated the recommended method of updating.)
m (Corrected the links. Removed rewrite status.)
Line 1: Line 1:
{|align=right
  |}
{{Rewrite|reason=Needs more pictures and more information}}
{{Template:SidebarGithub}}
{{Template:SidebarGithub}}
==Download and Compiling==
==Download and Compiling==
Line 57: Line 54:
'''OR (Recommended)'''
'''OR (Recommended)'''
# Create a GitHub account.
# Create a GitHub account.
# Clone the Paradise repository with a Git client like [[#Setting up Visual Studio Code|VSC]] or [[#Setting up & Using Github Desktop|Github Desktop]].
# Clone the Paradise repository with a Git client like [[Guide to Contributing#Setting up Visual Studio Code|VSC]] or [[Guide to Contributing#Setting up & Using Github Desktop|Github Desktop]].
# Compile a new server to use.
# Compile a new server to use.
# Update it periodically.
# Update it periodically.

Revision as of 22:10, 10 September 2023

Github

Download and Compiling

  1. Install BYOND and create an account at http://www.byond.com/
  2. Checkout the source using Git or download it directly from the ZIP button on Github and extract it into a folder of your choosing.
  3. Open paradise.dme.
  4. In the menu at the top, select Build > Compile.
    Compiling Paradise.png
    • Compile time depends on your computer specs. Expect to wait between 2–10 minutes. When it finishes you will see the following message:
      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.

Configuration

You will spawn as a !LOCALHOST! at this point. However, you can change your status as well.

  1. Navigate the config folder and copy all files from /config/example into the parent /config directory.
    Admin Config pathway.png
  2. Navigate to the [admin_configuration] section of /config/config.toml and add yourself under admin_assignments. Some available levels (from highest to lowest) are: Hosting Provider (recommended), Maintainers, Game Admin, Mentor.
    • The format is:
      {ckey = "Your Name Here", rank = "Admin Rank"}
    • Additional levels and specific commands accessible by each level can be seen in /code/modules/admin/admin_verbs.dm and, and permissions can be edited in the admin_ranks config section.

Starting the Server

DreamDaemon.png
  1. To start the server, run the BYOND client, log in, and select File > "Start Dream Daemon..." from the menu. (May be better to run it separately as admin, as people have reported crashes)
  2. At the bottom of Dream Daemon, enter the path to your compiled paradise.dmb file.
  3. Set Port to whatever port you like, in the range of 1-99999, making sure no other program is using that port.
    • Note: If you are running it locally for testing, the port can be empty and one will be selected for you. However, choosing a port will prevent needing to edit your bookmark (below). A port number that works for almost all purposes is 53970.
  4. Security: (Trusted is recommended. You can use Safe mode if you prefer, but you'll be clicking alert windows when the server needs to edit the info.json every time it boots up.)
    • Trusted mode allows the game to access files, run system commands, and perform other actions without asking for permission. This is usually not a good idea except for games that you have created yourself.
    • Safe mode is the default. File access is allowed within the same directory as the world's .dmb file, and any directories underneath that one. Most actions such as running a system command require your approval.
    • Ultrasafe mode means that nothing that could affect your system in any way will be allowed without your permission. For games that use savefiles, this is usually not desirable.
  5. Visibility: (Invisible is recommended)
    • Public mode is the default. The game will be seen by everyone on the hub.
    • Private mode means your friends on the pager will see your game. However if they are logged in, it will also be visible on their pager.
    • Invisible mode prevents the game from appearing on the hub or pager.
  6. Press the green GO button in the bottom-right. This step may take up to 10 minutes to complete as the world loads. If your Dream Daemon stops responding, simply wait longer.

Logging In

Bookmarks Paracode Server.png
  1. In the BYOND client's menu (upper right cog), select Open Location... > Add...
  2. URL: 127.0.0.1:12345
    • ...where 12345 is the port you chose in the section above. Plug in other ports into 127.0.0.1:XXXXX to work as the URL.
  3. Name: Test Server (or whatever you want to call it)
  4. Click OK
  5. Find your new Test Server bookmark in the Bookmarks menu and select it to start playing.
    • Note: You can also click the yellow 'route' sign in Dream Daemon to connect to your server instantly.

Updating

Github Desktop Updating.png
  1. Download a new .ZIP from the Paradise Github repo (as explained in the first section above).
  2. Backup your /config folder. This folder stores your server configuration.
  3. Extract the new files (preferably into a clean directory, but replacing existing files should work fine).
  4. Copy your /config folder back into the new install, overwriting when prompted except if we've specified otherwise
  5. Re-compile the game.

OR (Recommended)

  1. Create a GitHub account.
  2. Clone the Paradise repository with a Git client like VSC or Github Desktop.
  3. Compile a new server to use.
  4. Update it periodically.

MySQL Setup

The SQL backend for the library and stats tracking requires a MySQL server. Your server details go in /config/config.toml under the database_configuration section, and the SQL schema is in /SQL/paradise_schema.sql. For further instructions, head on over to Setting up the Database.

Contribution Guides
General Guide to Contributing, Game Resources category, Github Glossary
Setting up a server Setting up the Database, Creating your own paracode server
Coding Understanding SS13 Code, SS13 for experienced programmers, Text Formatting
Mapping Guide to Mapping,
Spriting Guide to Spriting,
Wiki Guide to Editing the Wiki