tModLoader: installing mods and Calamity
tModLoader is Terraria's modding platform: Calamity, Thorium and thousands of Steam Workshop mods. It is a separate application, free on Steam for Terraria owners. On a tModLoader server, every player must launch tModLoader (not Terraria) with the same mods as the server.
Which plan for a modded server?
RAM is what matters most: every loaded mod uses some.
| Content | Recommended plan |
|---|---|
| A few light mods (quality of life, items) | Hellstone (4 GB) |
| Calamity, Thorium or one big content mod | Hallowed (6 GB) |
| Large modpack (several content mods together) | Zenith (8 GB) |
See the plan details in Getting started.
How mods work on the server
A tModLoader mod is a .tmod file. The server loads the mods found in its Mods folder that are enabled in the enabled.json file of that same folder:
Mods/
├── enabled.json
├── CalamityMod.tmod
└── OtherMod.tmod
enabled.json lists the internal names of the mods to enable, which usually match the .tmod file name without the extension:
[
"CalamityMod",
"OtherMod"
]
Depending on the installation, the Mods folder is at the root of the server or in tModLoader's data folder (for example .local/share/Terraria/tModLoader/Mods/). The .local folder is hidden: enable hidden files in the file manager. Look for the folder that already contains enabled.json, or check the parameters in the Startup tab.
Installing a mod
1. Get the .tmod files on your PC
The easiest way is to prepare your mod list in tModLoader on your PC:
- Launch tModLoader, open Workshop → Download Mods and subscribe to the mods you want
- Enable them in Workshop → Manage Mods, then reload mods and check everything works in single player
- Grab the
.tmodfiles: Workshop mods are downloaded to Steam's Workshop folder, understeamapps/workshop/content/1281930/<mod ID>/(sometimes in a subfolder per tModLoader version).1281930is tModLoader's Steam ID. - Also grab your
enabled.json, in tModLoader'sModsfolder on your PC (on Windows:Documents\My Games\Terraria\tModLoader\Mods\)
2. Upload them to the server
- Stop the server from the panel Console
- Drop the
.tmodfiles into the server'sModsfolder, using the Files tab or SFTP (credentials in Settings → SFTP Details) - Add each mod's name to the server's
enabled.json(or replace it with the one from your PC) - Start the server and watch the console: each loaded mod shows up there, along with any errors
If your server's Startup tab offers a setting to install Workshop mods by ID, you can use it instead of uploading manually. Otherwise, or if in doubt, use the method above or ask our support team.
Some mods need other mods (libraries) to work. If one is missing, the server refuses to load the mod and the console shows the name of the missing dependency: install and enable it the same way.
Disabling or removing a mod
Stop the server, remove the mod's name from enabled.json (and delete its .tmod if you no longer want to keep it), then restart. Removing a content mod from an existing world can make its items, blocks and NPCs disappear: back up first.
Installing Calamity
Calamity is one of the most popular content mods: new bosses, biomes, items and difficulty modes.
- Make sure your plan has enough RAM: Hallowed (6 GB) is recommended
- Get
CalamityMod.tmodas explained above and addCalamityModtoenabled.json - Calamity's music mods (for example Calamity Mod Music) are optional: they add the mod's soundtrack but are large
- If Calamity asks for other mods, install them too (the console will tell you)
Part of Calamity's content (biomes, structures) is added during world generation. To enjoy the whole mod, start on a fresh world created with Calamity enabled: change the file name in the world line of serverconfig.txt (see Configure serverconfig.txt).
Keeping mods in sync with players
To join a tModLoader server, every player needs:
- tModLoader installed, in a version compatible with the server's (same branch: the stable Steam release, unless the server uses a beta version)
- the same mods, in the same versions as the server, for every mod that runs on both sides
In practice:
- Each player launches tModLoader, then Multiplayer → Join via IP, with the IP and port shown in the panel
- If mods are missing, tModLoader usually offers to download them when joining, then reload mods
- If that fails, the player subscribes to the same mods on the Workshop, enables them and joins again
On the players' side, Steam updates Workshop mods automatically. On the server, the .tmod files stay at the version you uploaded. After a mod update (especially Calamity), update the server's .tmod as well, otherwise players are refused for a version mismatch. Back up the world first.
Client-side only mods (UI, maps, textures, music…) do not need to be installed on the server: each player can add them freely. The mod's Workshop page usually says so.
tModLoader worlds
A tModLoader world is made of two files: the .wld (the world) and the .twld (the mods' data). Always keep them together, for backups as well as imports: see Importing a world and backups.