These docs are old!
We've migrated our documentation to another location!
Please read the new docs!
All information below this point is no longer valid for the latest version of TShock!
Let's install TShock, quickly.
- Microsoft .NET Framework 4.5 (on Windows)
- Mono 4+ (on Linux/BSD/UNIX derivatives)
- 2GB of RAM (dedicated to Terraria, free, not total system RAM)
Be sure to extract the archive!
If you just run TShock from inside the archive (like when you double click on it in Windows), you aren't actually creating a TShock server, and all of your settings will be lost when you shutdown the server!
To upgrade TShock, backup your server by copying it to a separate location. Then follow the upgrade process.
- Replace the TerrariaServer.exe file in the existing installation folder with the one from the archive.
- Replace all dll files from the archive with all of the files in the archive.
- Upgrade plugins as needed. The latest plugins can be found in the plugins list on github.
Want to start fast?
Sometimes the server will offer defaults in parenthesis, like (so). If you want to take the suggestion in parenthesis, simply hit enter when you see a prompt that ends in them, rather than retyping the suggestion. It saves time!
TShock requires the mono-complete package. We recommend the absolute latest versions of Mono, following the instructions from the official Xamarin/Microsoft website, not the packages shipped with your linux distribution. On macOS, we highly suggest installing Mono with Homebrew (brew install mono).
Some users have experienced issues with these instructions too. If your server won't let players join, install mono-devel.
Finally, consider trying to increase the Mono thread per CPU count.
MONO_THREADS_PER_CPU=50 mono TerrariaServer.exe
If you're not upgrading your server, you need to make yourself an owner to use TShock.
- Start TShock by running TerrariaServer.exe. This can be done by double clicking on the server in Windows, or running mono TerrariaServer.exe in Linux.
- Select a world you want to start the server with. You can select a new world each time you start the server, or generate one if you want.
- Select your desired server port. The default Terraria server port is 7777.
- When the server starts, you'll see a message that says "To setup the server, join the game and type /setup [setupcode]." Take note of the code displayed in your server console.
- Start the game, and join your server. Your local IP address is 127.0.0.1 or localhost. If you're renting a server from a service provider, your IP address is listed in your control panel. Make sure to use the port you selected in step 3.
- Once inside the game, type /setup code, where code is your setup code from step 4.
- Immediately after, type /user add [username] [password] owner. Replace username and password with your desired username and password, without brackets.
- Login using /login [username] [password]. If you login successfully, great! If not, repeat step 7 or post on the github discussions to get more help.
- Type /setup to finish setup.
Protect your Owner Account
The Owner account contains all privileges on your server. It's important that you make your password strong, long, and hard to guess.
If you need to start fresh, you can always do so by deleting the TShock database file and the setupcode lock file.
- Delete tshock.sqlite in the tshock folder.
- Delete setup.lock in the same folder as TerrariaServer.exe.
This will remove all users and restore TShock to a pre-installation state. If this isn't what you want to do, ask the on the github discussions.
Updated about 1 year ago