TerrariaServer.org

Certainly! Here's the tutorial divided into parts/topics:

  1. Introduction

    • Overview of setting up a Terraria server
    • System requirements
  2. Preparing Your Network

    • Static IP address configuration
    • Port forwarding
  3. Windows Setup

    • Local Area Network (LAN) Setup
    • Setting up a Server
      • Host & Play Server
      • First Launch of a Dedicated Server
      • Dedicated Server with Configuration File
    • Configuration File and Save Game Data Location
  4. Linux/macOS Setup

    • Local Area Network (LAN) Setup
    • Setting up a Server
      • Host & Play Server
      • First Launch of a Dedicated Server
      • Dedicated Server with Configuration File
    • Save Game Data Location
  5. Creating a Configuration File

    • Configuration file syntax and options
  6. Connecting to a Server

    • From the Host Computer
    • Over the Local Network
    • Over the Internet
  7. Specific Instructions for FreeBSD

  8. Publishing Your Server

    • Adding to Server Lists
  9. Troubleshooting

    • Server Starting Issues
    • Connection Issues
    • Saving and Item Disappearance Issues

This structure will help organize the information and facilitate writing about each topic in detail. Let me know if you need more details or modifications!

Introduction: Setting Up a Terraria Server

Terraria, a beloved sandbox adventure game, offers players the ability to explore, build, and conquer challenges in both single-player and multiplayer modes. For those seeking the latter experience, setting up a dedicated Terraria server allows you to host and control your multiplayer world, providing the freedom to invite friends, manage the game environment, and ensure a smooth gameplay experience.

Overview of Setting Up a Terraria Server

Creating your own Terraria multiplayer server opens up a world of opportunities, allowing you to craft tailored experiences for you and your friends. This process involves configuring your network settings, choosing the appropriate server setup method, whether it be a simple "Host & Play" for quick sessions or a more robust dedicated server for larger groups and persistent worlds.

Despite the perks of running your own server, it requires a combination of technical setup and ongoing management. With the right guidance, however, you can transform your spare PC into a bustling multiplayer hub.

System Requirements

Before embarking on your server setup journey, it's crucial to ensure that your hardware meets the necessary system requirements. These requirements vary based on the scale of the server you wish to maintain:

Armed with this foundational understanding and the right equipment, you're ready to dive into the exciting world of Terraria server management. Whether your goal is to create a personal playground or a community gathering spot, setting up your server is the first step towards countless multiplayer adventures.

Preparing Your Network for a Terraria Server

Before delving into the exciting realm of Terraria server hosting, it's important to prepare your network infrastructure. Proper network configuration ensures a seamless and stable connection for all players. This involves two key steps: configuring a static IP address and setting up port forwarding.

Static IP Address Configuration

Assigning a static IP address to the computer running your Terraria server is essential. A static IP ensures that the server's internal network address remains constant over time, preventing potential connectivity issues that might arise from dynamic IP changes.

  1. Access Router Settings: Log into your router's configuration interface. This is usually done through a web browser by entering the router's internal IP address (often something like 192.168.1.1 or 192.168.0.1).

  2. Locate DHCP Settings: Find the DHCP (Dynamic Host Configuration Protocol) settings. Here, you can assign a specific IP address to the computer running the server, ensuring it remains unchanged.

  3. Assign a Static IP: Select an IP address outside the DHCP range but within the same subnet. Assign it to the MAC address of the computer you'll use for the server. Save your changes to apply the configuration.

By setting a static IP, you ensure that your server's address won't fluctuate, leading to a more reliable gaming experience.

Port Forwarding

Port forwarding is crucial if you want players to connect to your server from outside your local network. By opening specific ports on your router, you allow incoming internet traffic to reach your server, enabling online gameplay.

  1. Identify the Required Port: Terraria, by default, uses port 7777 for server connections. If you've configured a different port for your server, remember that number for port forwarding setup.

  2. Access the Router's Port Forwarding Section: Within your router's configuration interface, locate the port forwarding or virtual server settings. This may vary depending on your router's make and model.

  3. Create a Port Forwarding Rule:

    • Enter the internal IP address of your Terraria server.
    • Specify the port number (usually 7777) for both internal and external traffic.
    • Select both TCP and UDP protocols, unless specified otherwise by Terraria's documentation.
  4. Save and Apply: Save your settings to activate the port forwarding rule. This will open the specified port to incoming traffic, allowing external players to connect to your server.

By following these steps, your network will be ready to host a Terraria server accessible to friends across the globe. With a static IP and proper port forwarding in place, you're poised to create a welcoming multiplayer environment for countless hours of cooperative or competitive adventures.

Windows Setup for Terraria Server

Setting up a Terraria server on Windows can transform your PC into a multiplayer world, either for small LAN parties or larger online gatherings. This guide outlines the steps to get your server up and running, whether you're opting for a quick "Host & Play" session or a more involved dedicated server setup.

Local Area Network (LAN) Setup

For a LAN setup, where all players are within the same network (such as your home Wi-Fi), the process is straightforward. You'll need to find your computer's internal IP address to allow others on the local network to connect:

  1. Open Command Prompt: Press Win + R, type cmd, and press Enter to open the Command Prompt.

  2. Find Your IP Address: In the Command Prompt, type ipconfig and press Enter. Look for the "IPv4 Address" under the Ethernet or Wi-Fi connection labeled as "Ethernet adapter Local Area Connection" or "Wireless LAN adapter Wireless Network Connection." This IP address will be used by LAN players to connect to your server.

Setting up a Server

Choose between a quick "Host & Play" setup or the more flexible dedicated server route depending on your needs.

Host & Play Server

  1. Launch Terraria: Open your Terraria game on Windows.

  2. Choose Multiplayer: Select "Multiplayer" from the main menu, then "Host & Play."

  3. Select or Create a World: Choose an existing world to play in or create a new one.

  4. Set a Password (Optional): You can enter a password for your session to limit access, or leave it blank for no password.

This method is ideal for casual, temporary games and small groups of players, especially within your local network.

First Launch of a Dedicated Server

  1. Locate the Server Files: Navigate to the Terraria installation folder. Common paths are:

    • Steam: C:\Program Files (x86)\Steam\steamapps\common\Terraria
    • GOG Galaxy: C:\GOG Galaxy\Games\Terraria
  2. Run the Server: Double-click TerrariaServer.exe located in the installation folder. This opens the server control interface.

  3. Select a World: Choose an existing world from the list or create a new one by following the prompts in the server interface.

This wizard-style setup helps quickly establish a dedicated server without a configuration file, perfect for initial tests and small groups.

Dedicated Server with Configuration File

For a more controlled setup, a configuration file can establish server settings.

  1. Access the Installation Folder: Go to the Terraria installation directory as described above.

  2. Create a Configuration File: Use a text editor to create a configuration file. Save it with a .txt extension.

  3. Launch with Configuration: Open Command Prompt (cmd), navigate to the Terraria directory, and use the command: TerrariaServer.exe -config <serverconfigfile> where <serverconfigfile> is your configuration file.

  4. Set Up a Shortcut for Easy Access:

    • Create a shortcut for TerrariaServer.exe.
    • Right-click the shortcut, select "Properties," and in the "Target:" field, append -config <serverconfigfile>.

This setup allows for custom parameters and automation, making it suitable for recurring use or larger groups.

Configuration File and Save Game Data Location

The configuration file contains the parameters for your server, including world settings, player limits, and more.

With these steps, your Windows PC is ready to host a Terraria server, enabling you to manage and customize your multiplayer experiences effectively. Whether hosting a simple LAN session or a complex online server, Windows offers the flexibility to accommodate various player needs.

Linux/macOS Setup for Terraria Server

Setting up a Terraria server on Linux or macOS offers a robust and stable environment for hosting multiplayer games. This guide will walk you through configuring your network for local and global access, ensuring a smooth and efficient server setup.

Local Area Network (LAN) Setup

For a LAN setup, all players should be connected to the same network. You'll need to determine your computer's local IP address to allow other network users to connect:

  1. Open Terminal: On Linux or macOS, open the Terminal application.

  2. Find Your IP Address: Enter the command ip addr on Linux or ifconfig on macOS. Look for the "inet" entry under your active network interface, such as wlan0 for wireless or eth0 for wired connections. The IP address listed is what LAN players will use to connect to your server.

Setting up a Server

Terraria offers flexible server setup options. Choose between a quick "Host & Play" session for smaller groups or a dedicated server for a more controlled environment.

Host & Play Server

  1. Launch Terraria: Open the Terraria game on your Linux or macOS system.

  2. Choose Multiplayer: In the main menu, select "Multiplayer" and then "Host & Play."

  3. Select or Create a World: Pick an existing world or create a new one for your session.

  4. Set a Password (Optional): You can add a password to secure your session or leave this field blank for no password.

The "Host & Play" option is great for quick and casual play within your local network.

First Launch of a Dedicated Server

  1. Locate the Server Files: Terraria server files are typically found in the following directory (adjust for your Steam installation path):

    • $STEAM_ROOTDIR/steam/steamapps/common/Terraria
  2. Run the Server Script: Execute the TerrariaServer script. Ensure it has execute permissions by running chmod u+x TerrariaServer*. This opens the server control interface, where you can choose a world or create a new one.

  3. Screen Sessions: To keep the server running if you close the Terminal, use screen or tmux to manage server sessions effectively.

This process sets up a direct, user-friendly server experience, perfect for newcomers to server administration.

Dedicated Server with Configuration File

For a more customized setup with specific parameters:

  1. Create a Configuration File: Use a text editor to create a configuration file in the same directory as the server files. Save it with a .txt extension.

  2. Launch with Config: Create a shell script (e.g., startserver.sh) in the server directory with the following content:

    #!/bin/sh./TerrariaServer -config <serverconfigfile>

    Make sure the script is executable by running chmod +x startserver.sh.

  3. Execute the Script: Run the script to start your server with the specified configuration.

With a configuration file, you can automate server settings, making this option preferable for recurring or large-scale games.

Save Game Data Location

Knowing where your game data is stored is crucial for backups and management:

With these instructions, your Linux or macOS machine is ready to host a Terraria server, providing both LAN and online players with reliable and customizable gaming experiences. Whether for brief gatherings or dedicated community hubs, Linux and macOS offer the tools and flexibility necessary to run efficient servers.

Creating a Configuration File for Terraria Server

Setting up a configuration file is essential for managing and tailoring your Terraria server to meet specific needs. It allows you to define server settings, player limits, and world attributes, among other options. This guide will help you understand the syntax and options available for crafting a configuration file that suits your requirements.

Configuration File Syntax and Options

A configuration file for Terraria is typically a simple text document with key-value pairs separated by equal signs. Each setting controls different aspects of the server and can be commented out using the # symbol, which tells the server to ignore those lines. Here's a breakdown of common configuration settings and their functions:

  1. Basic Server Settings

    • world: Specifies the full path of the world file to load (e.g., world=/path/to/World.wld). This setting automatically starts the server with this world.
    • autocreate: Generates a new world if none is found. Size is specified: 1 (small), 2 (medium), and 3 (large).
    • seed: Sets the world seed for world generation when using autocreate.
  2. Network and Player Management

    • maxplayers: Defines the maximum number of players allowed on the server (e.g., maxplayers=8). The value can range from 1 to 255.
    • port: Indicates the port number the server listens on, typically set to 7777 (e.g., port=7777).
    • password: Sets a password for server access for additional security.
  3. World and Gameplay Configuration

    • difficulty: Sets the world difficulty for new worlds: 0 (classNameic), 1 (expert), 2 (master), 3 (journey).
    • worldname: Determines the name of the world when using autocreate.
  4. Security and Management

    • secure: Enables additional cheat protection (e.g., secure=1).
    • banlist: Specifies the location of the banlist file, defaulting to banlist.txt.
  5. Miscellaneous Options

    • motd: Message of the day displayed to players upon logging in (e.g., motd=Welcome to the server!).
    • upnp: Automatically attempts to forward ports using uPNP (upnp=1 enables this).
    • npcstream: Reduces skipping of non-player characters (NPCs) at the expense of increased bandwidth. Set to 0 to turn off.
  6. Journey Mode Permissions

    • These settings control who can change journey mode powers, with options like:
      • journeypermission_time_setfrozen: 0 (locked for everyone), 1 (host only), 2 (all players).

Example Configuration File

Here's a simple example of how a configuration file might look:

# Terraria Server Configuration File# Basic World Settingsworld=/path/to/MyWorld.wldautocreate=2seed=AwesomeSeedworldname=TerrariaLanddifficulty=1# Network Settingsmaxplayers=10port=7777password=YourSecretPass# Security Featuressecure=1banlist=banlist.txt# Miscellaneousmotd=Welcome to our Terraria server!upnp=1npcstream=60# Journey Mode Permissionsjourneypermission_time_setfrozen=2

Commenting and Editing

Each line that starts with # is a comment and will not be executed by the server, allowing you to include explanatory notes. When you decide to activate a setting, simply remove the # to make the server recognize it.

Remember to save your configuration file with a .txt extension in a location accessible to your server script or executable. This approach ensures optimal server operation and customization, transforming your server into a truly personalized gaming space.

Connecting to a Terraria Server

Once your Terraria server is up and running, the next step is to connect to it. Whether you're accessing it from the host computer, a local network, or over the internet, here's a guide on how to establish a successful connection.

From the Host Computer

Connecting to your Terraria server from the host computer is straightforward and ideal for testing or for those moments where you want to play on the same machine hosting the server.

  1. Launch Terraria: Open the Terraria client on your host computer.

  2. Go to Multiplayer: Select "Multiplayer" from the main menu, then click "Join via IP."

  3. Select a Character: Choose the character you want to use for the session.

  4. Enter IP Address: When prompted, type localhost or 127.0.0.1 as the IP address. This points directly to the server running on the same machine.

  5. Enter Password: If your server has a password, enter it when prompted, or leave it blank if there is no password.

This method connects you directly to the server, allowing you to experience gameplay as if you were connecting from a separate machine.

Over the Local Network

For players on the same local network as the server, such as in a shared home or office setup, follow these steps:

  1. Find Host Computer IP: On the host computer, open Command Prompt (Windows) or Terminal (macOS/Linux) and type ipconfig (Windows) or ifconfig/ip addr (macOS/Linux) to find the "IPv4 Address" or "inet" under the relevant network connection. Write down this address.

  2. Launch Terraria: Each player should open their own Terraria client.

  3. Choose Multiplayer: From the main menu, select "Multiplayer," then "Join via IP."

  4. Select Character: Choose the character for the game.

  5. Enter Host IP Address: Input the IP address you found earlier for the host computer.

  6. Provide Password: Enter the server password if one is set, or leave it blank as required.

This connects you to the server across the LAN, allowing for local multiplayer experiences with low latency.

Over the Internet

Connecting to a Terraria server over the internet allows players from different locations to join the same game, ideal for friends or community members in different geographical areas.

  1. Obtain External IP Address: On the host machine or server, search "What's my IP" in a web browser to find your public IP address. Note that port forwarding must be set up on your router for players to connect externally (typically on port 7777).

  2. Open Terraria Client: Each player should start their Terraria game.

  3. Access Multiplayer: From the main menu, select "Multiplayer," then "Join via IP."

  4. Choose a Character: Select a character to use in the server.

  5. Enter External IP Address: Players will need to type the external IP address of the server when prompted.

  6. Input Password: Provide the server password if required.

By properly setting up port forwarding and sharing your external IP address, you enable smooth and reliable connections for players across the globe.

Following these steps will ensure successful connectivity, allowing you and your friends to embark on shared Terraria adventures, regardless of your location. Whether you're playing locally on a LAN or hosting a global multiplayer session, connecting to a Terraria server is straightforward with this guide.

Specific Instructions for Setting Up a Terraria Server on FreeBSD

FreeBSD is a powerful operating system known for its performance and advanced networking capabilities. If you've chosen it to host your Terraria server, follow these detailed instructions to get everything up and running smoothly.

  1. Setting up the Environment

    Before you start the server, ensure your FreeBSD environment has the necessary software components:

    • Create a Dedicated User: For security, create a new user specifically for running the server.

      sudo adduser terraria

      Follow the prompts to set up the new user, creating a home directory for it.

    • Install Required Packages: You'll need Mono, SQLite3, and Screen or Tmux (to manage server sessions).

      sudo pkg install mono sqlite3 screen
  2. Downloading Terraria Server Files

    • Obtain the Server Files: Navigate to the official Terraria website and download the dedicated server files. Ensure you download them to the home directory of the newly created user.

    • Extract the Files:

      tar -xvf terraria-server-<version>.tar
  3. Initial Server Run

    • Initialize the Server: Start the server to create a world or load an existing one. This setup will also initialize necessary files and directories.

      mono --server --gc=sgen -O=all TerrariaServer.exe
    • Create or Select a World: Follow the server prompts to either create a new world or select an existing one. Once finished, gracefully exit using CTRL + C.

  4. Configuring Server Startup

    Automate server startup with a custom service script:

    • Create Service Script: Edit or create a script file, /usr/local/etc/rc.d/terraria, for managing the server as a service. Consider using the following template:

    • Adjust Paths: Replace /home/terraria/Worlds/MyWorld.wld with the actual path to your Terraria world save.

    • Enable the Service: Add terraria_enable="YES" to /etc/rc.conf to ensure the service starts at boot and restart the jail to apply changes.

    • Start the Service Manually: Start the server manually using:

      sudo service terraria start
  5. Managing Your Server

    • Use Tmux or Screen: Since you installed Screen, you can list and attach to the server session as needed to view live server logs or issue commands.
      screen -listscreen -r terraria

    By following these steps, you're all set to run a stable and efficient Terraria server on FreeBSD, benefitting from the robust networking capabilities inherent to the platform. This setup is well-suited for both LAN and internet play, providing a reliable gaming environment for your community.

Publishing Your Server

Once your Terraria server is up and running smoothly, you may want to share your gameplay experience with a larger audience. Publishing your server to server lists helps attract players who are eager to join servers for multiplayer adventures. Here's how you can promote your Terraria server effectively:

Adding to Server Lists

Server lists are platforms where administrators can register their gaming servers, making them visible to a broader community. By adding your Terraria server to these lists, you increase its visibility, allowing players from around the world to discover and join your game. Here's a step-by-step guide to getting your server published on popular server lists:

  1. Prepare Your Server Details

    Before publishing your server, gather important details that potential players will want to know:

    • Server Name: Choose a catchy and descriptive name for your server that reflects its theme or focus.
    • Server Description: Provide a brief and engaging description that outlines what players can expect, such as server rules, unique features, and any gameplay modifications.
    • Server IP Address and Port: Include the external IP address and port number (default is 7777) that players should use to connect.
    • Player Capacity: Mention the maximum number of players your server can accommodate.
  2. Select Server List Platforms

    There are several online platforms where you can list your Terraria server. Some of the popular ones include:

    • Official Terraria Forum: The community forum allows server listings where you can reach dedicated Terraria players.
    • TServerWeb: A specialized directory for Terraria servers.
    • TopG.org: A general gaming server listing platform that includes Terraria servers.
    • Terraria-Servers.com: A comprehensive site focused on listing Terraria servers globally.
  3. Register Your Server

    Visit the chosen server list platforms and look for the "Add Server" or "Register" option:

    • Fill out the server registration form with the prepared details.
    • Ensure to accurately input your server's IP address and port.
    • Copy and paste your server description and ensure it's engaging and complete.
    • Select categories or tags that best describe your server (e.g., Survival, PVP, Roleplay).
  4. Verify and Complete the Registration

    Some platforms may require you to verify your server registration through email confirmation or a webpage authorization process.

    • Follow any provided instructions to complete and verify your listing.
    • Consider adding a banner or logo for visual appeal, if the platform supports it.
  5. Promote Your Server

    Once listed, you can further promote your server by:

    • Engaging with the community on forums or social media.
    • Hosting events or giveaways to attract new players.
    • Ensuring your server offers a consistently enjoyable experience to retain and grow its player base.

By publishing your server on these platforms, you open the door for many new players to join your Terraria world, fostering a lively and engaging community around your server. With a well-maintained and advertised server, your Terraria adventures can become a celebrated gathering place for players far and wide.

Troubleshooting Your Terraria Server

Running a Terraria server can sometimes present challenges. Whether it's startup errors, connectivity woes, or data persistence problems, troubleshooting effectively is key to maintaining a stable and enjoyable server environment. Here’s a guide to addressing common issues.

Server Starting Issues

If your server doesn't start or crashes immediately, consider these steps:

  1. Check for Typos and Errors: If using a configuration file, ensure there are no typos. A small mistake, like a misplaced character or a missing path, can prevent startup.

  2. Review Logs: Check the console output or server logs for error messages. These logs often contain hints or explicit errors that can point you toward the problem.

  3. Verify Server Files: Ensure all necessary server files are downloaded and uncorrupted. If files appear damaged or missing, re-download the server package from the official Terraria website.

  4. Check System Requirements: Verify your hardware meets the necessary system requirements for your server's planned player load and world size.

  5. Reinstall if Necessary: As a last resort, reinstall the server files. Backup any important data before proceeding to prevent loss.

Connection Issues

Connection problems could manifest in several ways, such as players not being able to join the server or frequent disconnects.

  1. Verify IP and Port: Ensure players are using the correct IP address (internal for LAN, external for internet) and port (usually 7777).

  2. Check Firewall Settings: Confirm that your firewall allows incoming and outgoing connections on the Terraria server port. On the host machine, ensure TerrariaServer.exe is permitted.

  3. Double-Check Port Forwarding: If hosting over the internet, verify your router has correctly forwarded the server port to the host machine’s IP address.

  4. Dynamic IP Addresses: If using dynamic IP addresses, check if the IP has changed and update accordingly. Consider using a Dynamic DNS service to maintain a constant hostname.

  5. Stable Internet Connection: Ensure a stable internet connection for the host machine. Wireless connections can introduce instability; a wired connection is preferable.

Saving and Item Disappearance Issues

Whether it’s unsaved work or items vanishing, data persistence issues can be frustrating.

  1. Scheduled Saves: The Terraria server saves automatically every in-game day (24 minutes). Inform players to be patient if they make changes shortly before a save.

  2. Manual Saves: Use the server console commands to manually save the world (save) periodically, especially before planned shutdowns.

  3. Proper Shutdown: Always use the exit command in the server console to shut down the server. Closing the server abruptly (e.g., using the X icon) may prevent recent changes from being saved.

  4. Check Write Permissions: Ensure that the directory where the worlds are saved has appropriate write permissions. This is crucial if you are running the server as a different user account or on a different OS.

  5. Backup Worlds Regularly: Regularly backup your world files to safeguard against data loss. Consider automating this process with scripts or third-party tools.

By addressing these common issues proactively, you can ensure your Terraria server runs smoothly and continues to provide a high-quality gaming experience for you and your players. With careful monitoring and timely interventions, most problems can be resolved efficiently.