Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

To configure mods on a tModLoader server, make a mod pack in the tModLoader client, then copy the pack’s install.txt and enabled.json files into the server’s Mods folder. install.txt supplies Steam Workshop IDs for downloading; enabled.json tells the server which internal mod names to load. Add a serverconfig.txt file so the server can start unattended, and make sure every player and the server use the same tModLoader build.

What the two mod-pack files do

tModLoader separates obtaining a mod from enabling it. A server can have a .tmod file in its directory and still not load that mod. The files copied from a client mod pack solve these two different tasks:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
File Contents What the server uses it for
install.txt Steam Workshop IDs, one per line Feeds the installation or management process so the required Workshop items can be downloaded through SteamCMD.
enabled.json A JSON list of internal mod names Defines the mods that tModLoader should load when the server starts.

Workshop display names are not reliable identifiers. The official tModLoader documentation uses the mod-pack files because Steam Workshop does not provide a server-friendly list keyed by the names players see. Keep the files together and copy them without renaming or editing them unless you understand the identifiers they contain.

Before you begin

Match the tModLoader build

Install tModLoader on the server and on every client that will connect. The builds must match; matching the underlying Terraria version alone is not sufficient. A client on one tModLoader build can be rejected by a server on another even when both report the same Terraria version. Update or roll back all participants to one agreed build before diagnosing mod files.

#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter | 4Pack Type C Female to A Male Cable Converter for Apple Duo 17 16 15 14 Plus,iWatch Watch 12 11 10,iPad 9 8 Air,Airpods 5 4
  • Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
  • Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
  • Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
  • Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
  • 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.

Choose where the server data lives

Your server installation should have a tModLoader data directory containing at least Mods and Worlds folders. Docker images and management-script installations generally use this same arrangement. Identify the directory that the running server actually reads; copying files into an unrelated client folder has no effect.

Prepare the world and access details

Decide which world file the server should start, how many players it should permit, which port it should listen on, and whether it needs a password or message of the day. These values belong in serverconfig.txt, described below. If you are migrating an existing world, keep the world’s .wld file available. Do not point the configuration at a .twld file.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Create a mod pack in the tModLoader client

1. Open the Workshop mod-pack manager

  1. Launch the tModLoader client using the same build you intend to run on the server.
  2. Open the Workshop menu.
  3. Go to the Mod Packs section and create a new mod pack.
  4. Enable every Workshop mod that the server and its players should use. Include dependency mods required by those entries.
  5. Save the pack, then use the option to open its folder.

The pack folder is the authoritative hand-off between the client and server. It should contain install.txt and enabled.json. The first file records Workshop IDs, while the second records internal names. Do not substitute the visible title of a Workshop item for an internal name.

2. Check the generated files

  • install.txt should contain one Workshop ID per line. Leave each ID on its own line.
  • enabled.json should be valid JSON and contain a list of internal mod names.
  • A mod that exists only as a downloaded .tmod file but is absent from enabled.json will not be enabled.
  • If the pack contains a local, non-Workshop mod, its internal name must also appear in enabled.json.

If you change the enabled set later, return to the client’s Mod Packs section, save the revised pack, and copy the updated files again. This avoids hand-editing identifiers and keeps the client’s intended load list synchronized with the server.

Rank #2
Sale
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter
  • 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
  • 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
  • Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
  • 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
  • What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.

Install the files on the server

1. Copy the mod-pack files

  1. Stop the tModLoader server before changing its mod data.
  2. Open the server’s tModLoader data directory and then its Mods folder.
  3. Copy install.txt and enabled.json from the client mod-pack folder into that server Mods folder.
  4. Replace older copies when you are deliberately changing the pack. Keep a backup if you may need to restore the previous loadout.

The server must read these files from the same Mods directory used by its running installation. In a container, that normally means the directory mounted as the persistent tModLoader data volume, not a temporary path inside an image.

2. Download Workshop content

The server needs the actual mod files as well as the list of IDs. A management script can read install.txt and use SteamCMD to download the listed Workshop items. On Linux, manage-tModLoaderServer.sh is designed to install tModLoader and download the Workshop mods listed in install.txt. Follow the script’s own prompts and place its downloaded data in the server’s persistent tModLoader directory.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

With a manual setup, use the equivalent SteamCMD-based installation process supported by your server environment. The important distinction is that install.txt is an input list, not a collection of mod binaries: downloading it or copying it alone does not install the mods.

3. Keep local mods available

Local or privately built mods do not have a Workshop ID to put in install.txt. Place their .tmod files where the server can read them and add their internal names to enabled.json. If the name in the JSON does not exactly match the mod’s internal name, tModLoader will not enable it. A local file’s display title is not a safe substitute.

Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter
  • Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
  • Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
  • Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
  • Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
  • What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.

Build a serverconfig.txt for unattended startup

Without a configuration file, the server must be configured interactively every time it starts. The tModLoader documentation recommends creating serverconfig.txt so an automated service, container, or remote machine can start without waiting for console answers.

Use key=value lines

Each setting is written as a key, an equals sign, and its value. Keep one setting per line. Common keys include:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Key Purpose Important qualification
world Selects the world file to load Point to the .wld file, not a .twld file.
worldpath Sets the directory in which world files are stored or found Use the path visible to the server process, which may differ from the host path when using a container.
autocreate Controls automatic world creation when no existing world is selected Use it only when you want startup to create a world rather than load an existing one.
difficulty Sets the world difficulty Choose a value supported by the tModLoader build you are running.
maxplayers Sets the player limit The limit applies to connections accepted by this server.
port Sets the listening port Allow the port through the host firewall and any required router or container mapping.
password Protects the server with a password Give players the exact value configured on the server.
motd Sets the message of the day Use it for a short connection message or server rules.

Point to the correct world

Use an existing world’s .wld filename in world. The companion .twld data is not the world file to select. If you use autocreate, make sure your startup policy intentionally creates a new world; otherwise an unattended restart may produce a different world from the one your players expect.

Keep paths consistent across environments

A path that works on the host may fail inside Docker if the directory was not mounted there. Confirm that the configured worldpath, the selected world, and the Mods directory are all inside the server process’s visible filesystem. Preserve these folders as persistent storage so a container recreation does not erase the downloaded mods or worlds.

Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray
  • Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
  • Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
  • Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
  • Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
  • Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft

Start the server and verify the load

Read the server console first

The server console is the authoritative check of the enabled set. On startup, tModLoader reports which mods it found and enabled. Review that output before asking players to connect. It can distinguish a successful load from a directory that merely contains downloaded files.

  1. Start the server with the intended tModLoader build and serverconfig.txt.
  2. Watch for the mod discovery and enabling messages.
  3. Confirm that each expected mod appears by its internal identity.
  4. Stop the server if a required mod is missing, correct the files or download step, and start it again.
  5. Only after the expected set loads should clients join the world.

Check a client connection

Have a client using the same tModLoader build and the same enabled mod set connect. A client that has an extra content mod, lacks a required dependency, or runs a different build can fail even when the server itself started successfully. Treat the server’s enabled list and the client’s active list as a pair: both sides must agree.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshoot “no mods loaded”

The server starts with an empty mod list

  • Confirm that enabled.json exists in the server’s active Mods folder.
  • Validate that it is valid JSON and contains a list rather than an accidental text export or malformed edit.
  • Check that the entries are internal mod names, not Workshop display names or numeric Workshop IDs.
  • Verify that the server process is using the folder you copied to, particularly in Docker or scripted installations.
  • Read the startup console to see whether tModLoader found the file and which entries it enabled.

If enabled.json is missing, tModLoader enables no mods, even if .tmod files are present. Recreate the mod pack in the client and copy the file again rather than guessing names.

A Workshop mod is listed but unavailable

  • Open install.txt and confirm that the required Workshop ID is present on its own line.
  • Run the management script or equivalent SteamCMD download process again.
  • Check that the downloaded content is stored in the persistent server data directory and is readable by the account running the server.
  • Compare the server console with the expected mod list; a download failure and an enablement failure produce different symptoms.

A local mod does not load

Because a local mod has no Workshop ID, it will not be obtained from install.txt. Put its .tmod file in the server’s mod location and add the exact internal name to enabled.json. If the mod was rebuilt under a changed internal name, regenerate the client pack so the JSON reflects the new identity.

Best Value
Sale
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display | 85W Max PD, 1 Powered USB-C 5Gbps & 2 Powered USB-A 3.0 5Gbps Data Ports, for MacBook Pro, MacBook Air, Dell and More (Black)
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.

Players cannot join although mods appear loaded

Check the tModLoader build on both sides before changing the mod files. Build mismatches can block a connection even when the Terraria version matches. After aligning builds, compare the enabled lists and ensure every player has downloaded the same Workshop content and any required local files.

The server asks questions instead of starting

That behavior indicates that startup is not receiving a usable serverconfig.txt. Confirm the file name, its location, and its key=value syntax. Also check that the configured world path and world filename are valid from the server process’s point of view.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Manual setup versus a Linux management script

Approach Best fit What you manage Primary risk
Manual server setup Administrators who need direct control over files and startup tModLoader installation, SteamCMD downloads, the Mods folder, enabled.json, and serverconfig.txt It is easy to download content but forget to enable it, or to copy files into a directory the server does not use.
Linux management script Servers where repeatable installation and updates matter The script’s configuration plus the same mod-pack files The script still depends on a correct install.txt and persistent data layout; it cannot infer missing internal names in enabled.json.

The two approaches use the same configuration contract: Workshop IDs come from install.txt, enabled internal names come from enabled.json, and server startup settings come from serverconfig.txt. Changing the installer does not remove the need for either mod-pack file.

Updating a running modded server safely

Change the pack in one place

Use the client’s Mod Packs section as the source of truth. Add or remove mods there, save the pack, and copy the resulting install.txt and enabled.json to the server. This keeps the Workshop download list and enabled list aligned.

Stop before replacing files

Stop the server before changing its mod files or world. Replacing a mod while the process is running can leave an inconsistent set in memory and on disk. Keep a backup of the previous files and world before a significant mod change so you can restore the prior configuration if a dependency or world compatibility problem appears.

Update clients with the server

Players need the same tModLoader build and compatible mod set after an update. Have them refresh their Workshop content and activate the corresponding client mod pack before reconnecting. A successful server restart is not proof that every client has the required files.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A repeatable configuration checklist

  • Server and clients are on the same tModLoader build.
  • The server data directory contains the Mods and Worlds folders used by the running process.
  • The client mod pack contains both install.txt and enabled.json.
  • install.txt contains Workshop IDs, one per line.
  • enabled.json contains internal names, including names for local mods.
  • Workshop content has been downloaded through SteamCMD, a management script, or the equivalent supported installer.
  • Local .tmod files are present in the server’s mod location.
  • serverconfig.txt exists and uses key=value lines.
  • world references the intended .wld file, not .twld.
  • worldpath and all mod paths are valid inside the server environment.
  • The configured port is reachable through the host, firewall, router, or container mapping.
  • The startup console lists the expected mods as found and enabled.
  • Clients use the same build and matching enabled set before joining.

What the configuration files cannot do

install.txt does not enable a mod by itself; it only identifies Workshop content for downloading. enabled.json does not download a Workshop item; it tells tModLoader what to load after the files exist. A .tmod file alone does not opt a mod into the server’s active set. Finally, serverconfig.txt controls startup and world selection, not mod dependency resolution. Keeping those responsibilities separate makes failures easier to locate: download problems belong to the installation step, missing or wrongly named entries belong to enablement, and prompts or wrong worlds belong to server configuration.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.