Difference between revisions of "Hosting a server"

From Space Station 13 Wiki
Jump to navigation Jump to search
m (Why is it always categories)
(Update according to Goon 2020 source, mainly by substituting mentions of irc with Discord, noting that there's only one branch now, changing the links, and, more importantly, updating the section on how to change the map)
Line 2: Line 2:


==Get a copy of a server's code==
==Get a copy of a server's code==
[https://github.com/goonstation/goonstation-2016/tree/master Here is the code for Goonstation's last release, from March 2016.] The master and "goonstation-2016-byond510" branches both work for the current BYOND versions, but the master branch is currently the one still being updated. You can click the green ''Clone'' or ''Download'' button on the right side of that page, and then ''Download ZIP'', or if you know how to use git, do that. For this guide, we will simply download it.
[https://github.com/goonstation/goonstation-2020 Here is the code for Goonstation's last release, from February 2020.] You can click the green ''Clone'' or ''Download'' button on the right side of that page, and then ''Download ZIP'', or if you know how to use git, do that. For this guide, we will simply download it.


==Compile the server==
==Compile the server==
Line 15: Line 15:
<img src="https://i.imgur.com/YCitJEL.png">
<img src="https://i.imgur.com/YCitJEL.png">


If errors HAVE occurred, please post them [https://forum.ss13.co/showthread.php?tid=8604 here] or join #imcoder on irc.synirc.net and Haine and co. will try to help resolve them.
If errors HAVE occurred, please post them [https://forum.ss13.co/showthread.php?tid=8604 here] or join #imcoder on the Goonstation Discord (https://discord.gg/0117EEzASKYV2vtek) and Haine and co. will try to help resolve them.


==Load Dream Daemon==
==Load Dream Daemon==
Line 46: Line 46:


=== Changing the map ===
=== Changing the map ===
Edit standard.dm, located in the goonstation-2016/maps/config/ folder. It should not be hard to figure out what to add/change.
Go to __build.dm, located in the goonstation/_std/ folder. There should be few lines of code that are in the format <code>//#define MAP_OVERRIDE_MAPNAMEHERE</code>. Remove the // for your map of choice. For example, <code> //#define MAP_OVERRIDE_COGMAP</code> will become <code>#define MAP_OVERRIDE_COGMAP</code>. This will uncomment the code, so that BYOND knows to run it, and this particular section code tells the game to override it to that map. Compile it again and run it.


=== Further Information ===  
=== Further Information ===  
You can ask for server help on the goonstation's dedicated gooncode channel, [irc://irc.synirc.net/imcoder #imcoder], on SynIRC or post a new thread in the [https://forum.ss13.co/forumdisplay.php?fid=7 General Discussion forum].
You can ask for server help on the goonstation's dedicated gooncode channel, #imcoder on the Goonstation Discord (https://discord.gg/0117EEzASKYV2vtek), or post a new thread in the [https://forum.ss13.co/forumdisplay.php?fid=7 General Discussion forum].


----
----
{{Community}}
{{Community}}
[[Category:Contribution Tutorials]]
[[Category:Contribution Tutorials]]

Revision as of 07:36, 19 February 2020

A simple guide for hosting your very own goonstation server, for all people of all computers, no previous admin experience, dedicated hardware, or technical know-how required. Shamelessly stolen Borrowed with permission and modified/updated from a forum post by Haine.

Get a copy of a server's code

Here is the code for Goonstation's last release, from February 2020. You can click the green Clone or Download button on the right side of that page, and then Download ZIP, or if you know how to use git, do that. For this guide, we will simply download it.

Compile the server

Unzip your chosen code somewhere or navigate to where git downloaded it. Open the .DME file (in goonstation's case this is goonstation.dme). It should load up in Dream Maker (if not, use Open With to make sure it does open with DM). Once Dream Maker loads up (it might take a couple minutes), go to Build -> Compile, seen here:

<img src="https://i.imgur.com/inWcjlr.png">

Or hit CTRL+K.

It will take a few minutes to finish compiling. Once it does, if no errors have occurred, you're ready for the next step. A successful compile should look somewhat like this (by default the server compiles with different maps):

<img src="https://i.imgur.com/YCitJEL.png">

If errors HAVE occurred, please post them here or join #imcoder on the Goonstation Discord (https://discord.gg/0117EEzASKYV2vtek) and Haine and co. will try to help resolve them.

Load Dream Daemon

You can open it through the BYOND Pager by going to the gear wheel icon in the upper right corner, or by hitting CTRL+D. This is what Dream Daemon looks like:

<img src="https://i.imgur.com/KQIe6Fa.png">

First you will want to hit the ... button next to the File: box at the bottom. Navigate to where your server code is (the folder with the .DME) and select the .DMB (in goonstation's case this is goonstation.dmb). If you don't have a .DMB file, go back and try step 2 again. Security, Visibility, and webclient settings can be set up however you feel like. (Set visibility to Public if you would like your server to appear on the BYOND Hub).

Select a port and forward it

In Dream Daemon, enter a number for the port (0 makes it random each time the server is started, we don't want that unless you feel like messing with the port forwarding each time (you probably don't)). It should be something in the 1000+ range, for example 8085. You will then need to forward your chosen port to your computer, through your router's admin settings. As this is different for every router and network setup, please consult https://portforward.com/ for instructions on how to do so for your router.

Start the server

The GO button next to the Visibility settings box should have turned green once you loaded the .DMB and if you click on it now, the server will start up. After a minute or so (the window may appear frozen, but it isn't) the window should change to look like this:

<img src="https://i.imgur.com/q2u34b5.png">

After a minute, the window should update to tell you if the server's port is accessible to outside connections. If it says "BYOND hub reports port 8085 cannot be reached by players." you will need to go back to the port forwarding step and try again. Otherwise:

You are now all set to play!

Click the yellow arrow sign to join the game through DD, and the red stop sign to shut the server down when you're done. Click on the byond://[IP]:[port] text to copy the link to the server into your clipboard. You can then share that link with others and they will be able to join your server with it!

Once you've compiled the code the first time, you'll only need to load Dream Daemon and start up the server when you want to run it - you don't need to compile each time.

Quick Useful Tibits

Setting yourself as admin

To make yourself an admin, add your ckey (lowercase byond key) to the admins.txt file, located in the goonstation-2016/config folder. For example, if your byond key/username is GokuSmokeWeed420, your ckey would be gokusmokeweed420, and if it were Awesome McCoolkey, your ckey would be awesomemccoolkey (note that the space is removed)

Changing the map

Go to __build.dm, located in the goonstation/_std/ folder. There should be few lines of code that are in the format //#define MAP_OVERRIDE_MAPNAMEHERE. Remove the // for your map of choice. For example, //#define MAP_OVERRIDE_COGMAP will become #define MAP_OVERRIDE_COGMAP. This will uncomment the code, so that BYOND knows to run it, and this particular section code tells the game to override it to that map. Compile it again and run it.

Further Information

You can ask for server help on the goonstation's dedicated gooncode channel, #imcoder on the Goonstation Discord (https://discord.gg/0117EEzASKYV2vtek), or post a new thread in the General Discussion forum.


Community
Contributing Guide to Contributing to Wikistation · Goonstation Development Guide · Goonstation Contributor Guidelines · Spriting · Goonstation Spriting Guidelines · Coding · Goonstation Code Guide · Hosting a server · Mapping · Goonstation Map Submission Guidelines · Goonstation Audio Guidelines · Contributing to Requisitions
Members Admins
Culture & Art Terminology · Storyline (Old Storyline) · Fan Videos · Fan Art
History & Happenings Changelog · Pre-2016 Changelog · History of SS13
Tales & Humor Sex and the Singularity · Maintenance Doggs · The Rapper · The Trial of Heisenbee · Albert and the Deep Blue Sea · The uWu Interrogation · HeadSurgeon · Tales of The Devil‎ · IT'S ALIVE! It died. IT'S ALIVE! It died. IT'S ALIVE!‎ · The floor is now explosions‎ · My god, it's full of butt · The Crashwich · The Doom Peel‎ · Jugglemancy‎