SIGN IN / UP
    opened image

    Installing a game server for Terraria - TShock on Centos 7

    Today we will consider the launch of a game server for the game Terraria with OS Centos 7.
     

    1. Adding the mono repository


    To run the game server, we need the mono application installed. We import the public key. Assign the following command:

     

     

    rpm --import "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"


    Then we will download and add the repository for installing mono. We write the following command in the console:

     

     

     

     

     

    curl https://download.mono-project.com/repo/centos7-stable.repo | tee /etc/yum.repos.d/mono-centos7-stable.repo 

     


    If the following result is observed, then this lets us know that the process of adding the repository has completed correctly. Screenshot example 1.

     

     

     

    Screenshot 1 - Adding the mono repository

     

     

     

    2. Mono installation


    Once the repository has been added, we install mono. To do this, we write the installation command:

     

    yum -y install mono-devel


    After a successful installation, we can observe the following result in the screenshot:

     
    Screenshot 2 - Successful installation of mono

     

     

    3. Installing and running the TShock game server


    For convenience, all actions with the game will be performed in a separate directory. Create a directory to unpack the directory. We create under the name, for example, "Terraria-Server" and go to this directory. We write the following command in the console:

     

     

     

     

     

    mkdir Terraria-Server
    cd Terraria-Server
    

     

     

     

     

    Screenshot 3 - creating a directory for the game server


    Also, for the server to work, you will need to open ports in the firewall. According to the standard, port 7777 is used, so we create a new firewall rule. To do this, write the following commands:

     

     

    iptables -I INPUT -p tcp -m tcp --dport 7777 -j ACCEPT
    iptables -I OUTPUT -p tcp -m tcp --dport 7777 -j ACCEPT
    

    After that, we save the rules so that we do not need to open ports again after the server is rebooted. To do this, write the command:

    iptables-save

     

     

    Screenshot 4 - creating a directory for the game server


    Since this utility, TShock, allows you to run the Terraria game server, you need to select the correct version of TShock.
    To do this, follow the link to github "https://github.com/Pryaxis/TShock/releases" to select the version of the game server we need.
    In this case, the launch will be made for Terraria version 1.4.3.2, so we write the version we need and press Enter. From the results, we have the release of TShock 4.5.10.

     

     

     

     

    Screenshot 5 - the result of searching for the desired version of TShock


    Next, in the "Assets" section, copy the link to the TShockX.X.X_TerrariaX.X.X.X.zip file. Next, download to your server using the command:

     

     

    wget https://github.com/Pryaxis/TShock/releases/download/v4.5.10/TShock4.5.10_Terraria1.4.3.2.zip


     
    Screenshot 6 - downloading the archive from TShock to your server


    We unpack the archive. Install the unzip package and extract the archive. We write commands:

    yum install unzip -y
    unzip TShock4.5.10_Terraria1.4.3.2.zip
    


     

     

    Screenshot 7 - unpacking the archive

     


    After unpacking the archive with the server, we launch it. To make the server run in the background and not shut down, install the screen utility using the command:

     

     

     

     

     

     

    yum install screen -y

     

    After successful installation, run it with the command:

     

    screen

    After that, we launch the game server. To do this, write the command:
     

    mono TerrariaServer.exe


     
    Screenshot 8 - Starting TShock Server


    In this menu, you can create a new world or run your previously created world. In this case, we create a new world.
    We make the basic setting of the world.
    After creating a world, it will be available in the list of worlds.

    Screenshot 9 - List of worlds


    We choose our world. After that, you can use all the items according to the standard. As soon as the server is started, there will be information that the server is started.

     

     

    Screenshot 10 - Working server


    If all actions are performed correctly, the server will be available for the game.

     

     

     

     

    Screenshot 11 - Connecting to the server

     
    To disconnect from our virtual server and the game server remains running, use the key combination Ctrl + A, and then press on D.
    After that, you can safely disconnect from the server. To return to the console of the TShock game server, write the command screen -r

     

     

     

     



    Where are all game worlds located?
    All game worlds are located in the directory /root/.local/share/Terraria/Worlds

     

     

     

     

     

     



    Where is the server configuration file located?
    The configuration file "config.json" is located in the directory with the TShock game server in the tshock directory. In this case, the full path to /root/Terraria-Server/tshock