Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
/VM/station wiki
Search
Search
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Downloading the source code
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
This page contains the information and steps needed to download the latest version of the code, compile it and host your own server. == Licensing == The /tg/station 13 source code is under [http://www.gnu.org/licenses/agpl-3.0.html GNU AGPL v3 license] and the assets are [http://freedomdefined.org/Licenses/CC-BY-SA CC-BY-SA]. == Downloading == We use GitHub to host our project. A zip download is available here: [https://github.com/tgstation/-tg-station] If you don't want to download 30MB of data every time an update is made, you can [[Setting up git|follow this guide]] to set up TortoiseGit. == "I did not change anything, but the code does not work anymore!" == This is likely due to corrupted files. To fix this, you need to: *Re-download everything *Copy over your config folder and the data folder *Clean compile If you're using git reset hard against the tgstation upstream master branch and then recompile == Hosting a server == To get a simple server running first * Download the source code as explained [[Downloading_the_source_code#Downloading|above]] * Open tgstation.dme in dream maker (double click it) * Once it opens select Build > Compile * Wait until it compiles. Once it does a new file "tgstation.dmb" will be created in the same folder where "tgstation.dme" is. The dmb file has an orange icon. Compile time usually takes between 1 and 10 minutes, depending on your computer. Dream maker will show as 'not responding' during this time, but it is compiling. * Open dream daemon (Win7: start menu > all programs > BYOND > Dream Daemon; Win8: start > type Dream Daemon > Dream Daemon) * Select the "..." in the lower right corner and select the file "tgstation.dmb". * Click the "GO" button and wait until it changes to a red "stop" button. Starting the server usually takes between 1 and 5 minutes. It is fully started once you can normally interact with Dream Daemon and a byond://xxx.xxx.xxx.xxx:xxxxx link is present at the bottom. * Click the yellow button (former "...") to auto-join * Left click the link (byond://xxx.xxx.xxx.xxx:xxxxx) to copy it to clipboard * Paste the link (ctrl+v) to your friends so they can join. == Making your server visible on byond.com == You '''DO NOT NEED''' to pay for membership to make your server visible on byond.com! To make your server show up, edit the hub config option https://github.com/tgstation/tgstation/blob/master/config/config.txt#L7 == Setting up the database == Also see [[Working with the database]]. * Download and install [https://mariadb.com/downloads/mariadb-tx MariaDB] for your operating system. ** (Defaults should work, you need tcp enabled and to set a root password. if it offers do not set it up to use windows authentication) * Open HeidiSQL (comes with mariadb) and connect it to the database ** Click on new to create a new session, check prompt for credentials and leave the rest as default. ** Click save, then click open and enter in root for the username and the password you setup during the installation. * Right click on the server entry in the left side plane (the area with information_schema, mysql, etc) (the server entry will be the first one) and go to create new -> database ** You can name it anything at this step, tg13, tgstation13, ss13. *** (Don't name it 'test' unless you like security issues) * Select the database you just created and then go to file -> open sql file and Open the file tgstation_schema.sql file in the SQL directory of the game. You can also find it [https://raw.githubusercontent.com/tgstation/tgstation/master/SQL/tgstation_schema.sql here], but it may be newer than the version you are using. * Press the blue play icon in the topic bar of icon hieroglyphs and pray. If the schema imported correctly you should have no errors in the message box on the bottom. * Create a new user account for the server by going to tools -> user manager ** hostname should be 127.0.0.1, not localhost if hosted locally, other wise use the ip of the game server. ** For permissions, do not give it any global permissions, instead click add object, and then select the database you created for the server, hit ok, then give it select, update, insert, and delete permissions on that database. ** You can click the arrow on the password field to get a randomly generated password of certain lengths, copy the password before saving as it will be cleared the moment you hit save. * Open the file: [https://github.com/tgstation/-tg-station/blob/master/config/dbconfig.txt config/dbconfig.txt] in notepad * Make sure to set it so that ** SQL_ENABLED does not have a # in front of it ** ADDRESS 127.0.0.1 (Replace with the database server's ip if not hosted locally) ** PORT 3306 ** FEEDBACK_DATABASE tgs3 (replace with the database you created) ** FEEDBACK_LOGIN myuser (replace with the user you created) ** FEEDBACK_PASSWORD mypass (replace with the user you created) * The database is now set up for death logging, population logging, polls ([[Working with the database#Adding a new poll|Tutorial]]), library, privacy poll, connection logging and player logging. There are two more features which you should consider. And it's best to do so now, since adopting them later can be a pain. === Database based banning === Offers temporary jobbans, admin bans, cross-server bans, keeps bans logged even after they've expired or were unbanned, and allows for the use of the off-server ban log. To enable database based banning: * Open config/config.txt * Add a # in front of BAN_LEGACY_SYSTEM, so the line looks like "#BAN_LEGACY_SYSTEM" * Done. Note that any legacy bans are no longer enforced once this is done! So it's a good idea to do it when you're starting up. === Database based administration === Offers a changelog for changes done to admins, which increases accountability (adding/removing admins, adding/removing permissions, changing ranks); allows admins with +PERMISSIONS to edit other admins' permissions ingame, meaning they don't need remote desktop access to edit admins; Allows for custom ranks, with permissions not being tied to ranks, offering a better ability for the removal or addition of permissions to certain admins, if they need to be punished, or need extra permissions. Enabling this can be done any time, it's just a bit tedious the first time you do it, if you don't have direct access to the database. To enable database based administration: * Open config/config.txt * Add a # in front of ADMIN_LEGACY_SYSTEM, so the line looks like "#ADMIN_LEGACY_SYSTEM" * Do the steps described in [[Working with the database#Adding your first admin|Adding your first admin]]. * Done. Note that anyone in admins.txt lost admin status, including you! So do the step above! You can repeat it for everyone, as it's a lot easier to do that and just correct permissions with the ingame panel called 'permissions panel'. * If your database ever dies, your server will revert to the old admin system, so it is a good idea to have admins.txt and admin_ranks.txt set up with some admins too, just so the loss of the database doesn't completely destroy everything. If you need more help contact [[Community|#coderbus]]. For additional database-related tutorials, see [[Working with the database]]. {{Contribution guides}} [[Category:Guides]] [[Category:Game Resources]]
Summary:
Please note that all contributions to /VM/station wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
/VM/station wiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Template used on this page:
Template:Contribution guides
(
edit
)
Toggle limited content width