Terraria¶
Public manual-acceptance release
Terraria is available in the public launch catalog. A historical Steam client join passed; the product owner is manually retesting current client-facing actions after this restoration.
Terraria runs over TCP and persists its config and world files under /opt/terraria/config. Swarm Hosts waits for the TCP listener to open before promoting the Swarm Server to Running.
The server image wraps the community-maintained PassiveLemon Terraria Docker image, which runs the Terraria dedicated server with persistent world and config storage.
Basics you should know¶
- Default protocol: TCP
- Typical port:
7777/tcp - Persistent data:
/opt/terraria/config - Worlds:
/opt/terraria/config/Worlds - Runtime: pinned vanilla Terraria (
VERSIONis reported from the image at runtime) - Minimum resources: 1 CPU and 1 GB RAM
- Recommended default: 2 CPUs and 2 GB RAM, especially while creating a new world
Launch¶
1) Open Launch.
2) Choose Terraria.
3) Leave AUTOCREATE=1 for a new server so Terraria creates the first world.
4) Set WORLDNAME, MAXPLAYERS, optional PASSWORD, and MOTD.
5) Leave SECURE=1 unless you have a specific reason to allow cheats.
6) Click Launch.
If you already uploaded a world file into /opt/terraria/config/Worlds, you can disable auto-create and set WORLDNAME to the uploaded world's name.
Common paths¶
- World files:
/opt/terraria/config/Worlds - Server config:
/opt/terraria/config/serverconfig.txt - Logs:
/opt/terraria/config/Logs
Swarm Hosts backs up /opt/terraria/config, which includes the generated server configuration, world files, and the vanilla ban-list file. The image runs these files as UID/GID 1000:1000 by default.
Server Actions¶
The Server Actions view exposes a closed, game-specific subset of the vanilla Terraria console. Swarm Hosts serializes each action, attaches a bounded temporary output capture to the pinned server's tmux pane, sends the approved command through the image's /usr/local/bin/inject bridge, and requires a fresh correlated response. There is no raw console, shell, or arbitrary command input.
Available actions are:
- Server overview: reports the pinned server version, listening port, player limit, and connected-player count.
- List online players: refreshes the short-lived verified player selector.
- Broadcast message: sends a bounded server-authored message.
- Save world now: waits for the vanilla save response before reporting success.
- Kick player: accepts only a fresh opaque player selector, rechecks that the player is still online, then verifies that the player disconnected.
- Set world time: accepts only
dawn,noon,dusk, ormidnight, then reads the world clock back.
Server Actions require the Swarm Server to be running. Player selectors expire after 30 seconds; run List online players again if a target is stale.
The first action release intentionally excludes ban-list changes, live password or MOTD changes, shutdown, and arbitrary console commands. Those mutations will remain unavailable until their persistence and recovery behavior is proven against the pinned runtime.
Mods & Content¶
This image is vanilla Terraria, so Mods & Content reports no managed content strategy. Swarm Hosts does not install tModLoader or TShock into this image and does not treat vanilla worlds as mods. A future modded Terraria offering should be a separately pinned runtime with its own compatibility and management tests.
Connect¶
Players join with the swarm host public IP and assigned TCP port:
<HOST_PUBLIC_IP>:<PORT>
After restoring a backup or replacing a world file, restart the Swarm Server and confirm Server overview and List online players both succeed before inviting players.