Terraria Admin Guide

This guide is for server administrators managing the GameDirector mod on Terraria.

Admin Commands

These commands are used for system diagnostics and management.

Command Description
/gd status Shows the current status of the database connection, socket server, and active bounties.
/gd dump npc Dumps all NPC IDs and names to a file in the server's SavePath.
/gd dump item Dumps all Item IDs and names to a file in the server's SavePath.
/gd debuguuid Dumps player identity information to the server log for troubleshooting integration issues.
/gd test Sends a test packet to the Ignition server to verify connectivity.

Configuration

GameDirector Terraria is configured via the GameDirector.json file located in the ModConfigs directory of your Terraria SavePath.

Configuration Options

  • DbHost: The hostname of your MySQL database.
  • DbPort: The port of your MySQL database (default: 3306).
  • DbUser: The database username.
  • DbPassword: The database password.
  • DbName: The name of the Miralis database.
  • IgnitionHost: The IP address of the Ignition server.
  • IgnitionPort: The port of the Ignition server (default: 6943).
  • VerboseLogging: Enables detailed logging in the server console.
  • AllowIpFallback: Allows identifying players by IP if UUID sniffing fails.
  • WelcomePanelEnabled: Toggles the informational panel shown to players on join.
  • ServerPort: The fallback port for the GameDirector SocketServer.

Troubleshooting

Database Connection

If the database connection fails, check the GameDirector.json config and ensure the MySQL server is reachable. Look for "Database connection established successfully" in the server logs.

Player Integration Issues

If a player's level or balance is not showing correctly:

  1. Use /gd debuguuid while the player is online to see if their unique identifier is being captured.
  2. Ensure the player has linked their account using /gd claim and the Discord !claim command.
  3. Check the miralis.discorduser table to see if the terraria_uuid field is populated for that user.

Bounty Tracking

If bounties are not progressing:

  1. Ensure the bounty is set to AUTO validation mode in the database.
  2. Check that the Target field in the bounty matches the internal name or ID of the NPC/Item/Tile.
  3. Use /gd status to verify that the bounty is active on the current server port.
An error has occurred. Reload 🗙