---
title: "How to install TShock plugins for Terraria"
description: "Drop plugin DLLs into ServerPlugins, check the .NET target before you install, and pick from a short list of plugins verified to run on TShock 6.1."
url: "https://www.gameserverkings.com/knowledge-base/terraria/tshock-plugins/"
category: "Terraria"
category_url: "https://www.gameserverkings.com/knowledge-base/terraria/"
published: "2026-07-24T02:44:16.436Z"
updated: "2026-08-19T05:10:28.431Z"
source_format: "markdown"
site: "GameServerKings"
---

# How to install TShock plugins for Terraria

> [!WARNING] Check your TShock version before installing a plugin
> TShock has changed runtime twice. TShock 5.0.0 (1 November 2022) moved the server to .NET 6, and its release notes state that "All plugins need updates to support .NET 6"; TShock 6.0.0 (8 March 2026) then moved to .NET 9 with OTAPI static hook changes. The current stable release is **TShock v6.1.0** (11 March 2026, for Terraria 1.4.5.6), and an unmodified plugin build from before those changes will not load on it. Confirm the `.dll` you have targets your own TShock version, or pin the **Server Version** variable to a TShock release the plugin supports (see [Maintaining your Terraria server](/knowledge-base/terraria/maintaining-your-server/)), before you install it. Checked 19 August 2026.

TShock supports `.dll` plugins. Drop them in the `ServerPlugins/` folder at the server root, then restart and check the console for the load message.

## Installing a Plugin

1. Download the plugin's `.dll` (and any config it ships).

2. Upload it to `ServerPlugins/` via SFTP. That folder already holds `TShockAPI.dll`, so if you cannot find it, you are not at the server root.

3. Upload the plugin's dependencies to the same folder. A plugin that lists a library and does not get it usually fails silently at startup rather than reporting a missing file.

4. Restart the server.

5. Confirm the load line in the console; configure the plugin's generated config file if it has one. Configs land in the `tshock/` folder alongside `config.json` and `tshock.sqlite` — not next to the DLL — and most plugins only write theirs after a successful first load. No config file usually means the plugin never loaded.

## Check a Plugin Before You Upload It

TShock has changed runtime twice, and a plugin built for the wrong one does not warn you — it simply never appears in the console. You can settle this before you install anything by opening the plugin's source repository and reading its `.csproj`:

| What the `.csproj` says | What it means |
|---|---|
| `<TargetFramework>net9.0</TargetFramework>` | Built for .NET 9 — **TShock 6.x** |
| `<TargetFramework>net6.0</TargetFramework>` | TShock 5.x only. Will not load on 6.x |
| `net472` or `netstandard2.0` | TShock 4.x era — three runtimes out of date |

A pinned package reference is stronger still, because it names the exact API the plugin compiled against:

```xml
<PackageReference Include="TShock" Version="6.1.0" />
```

Two things look like evidence of maintenance but are not:

- **A recent commit date.** GitHub shows activity on any branch, so a repository can look busy while its default branch has not moved in months. And a commit from January or February 2026 still predates TShock 6.0.0 entirely, which shipped on 8 March 2026.
- **A README badge.** Several genuinely maintained projects still display ".NET 6" or "TShock 5.2" badges that were never updated after the move to .NET 9. Read the build files, not the badges.

## Where to Find Plugins

- The **[official community list](https://github.com/Pryaxis/TShock/wiki/Plugins)** on the TShock wiki. It is short, and it is self-serve: TShock states plainly that it "does not evaluate the safety or security of individual plugins or maintainers at this time". Checked on 19 August 2026, three of its seven entries were still .NET 6 builds pinned to TShock 5.x and will not load on 6.x.
- The **[`tshock-plugin` topic](https://github.com/topics/tshock-plugin)** on GitHub, which is where most active development is now visible.
- The **[TShock Discord](https://discord.gg/Cav9nYX)**, which the wiki points at for plugins that never got listed.
- The old `Pryaxis/Plugins` repository is **archived**, and its own README says it is no longer regularly updated. Most of its entries declare compatibility with TShock 4.4.0. Treat it as history.

> [!IMPORTANT] Plugins are tied to a TShock version
> Match the plugin's TShock version to yours.

## Plugins That Run on TShock 6.1

Every entry below was checked on 19 August 2026 by reading the project's build configuration, not its description.

### The community collection

**[UnrealMultiple/TShockPlugin](https://github.com/UnrealMultiple/TShockPlugin)** is the first entry on TShock's own wiki list and by a wide margin the largest body of current plugins — 137 of them, all built from one shared configuration that targets .NET 9 and pins TShock 6.1.0. Its release archive was rebuilt on 17 August 2026. It is a Chinese-language project; many plugins ship English translations, but not all of them do, so expect some Chinese in configs and console output.

Ones worth knowing about:

| Plugin | Version | What it does |
|---|---|---|
| `BetterWhitelist` | 2.6.5 | Whitelist by player name |
| `HouseRegion` | 1.0.5 | House and region protection |
| `PersonalPermission` | 1.1.0.6 | Per-player permissions on top of TShock's groups |
| `SmartRegions` | 1.4.8 | Run a command when a player enters a region |
| `Economics.Core` | 3.0.0.0 | The economy API the nine `Economics.*` modules build on |
| `PvPer` | 1.1.7 | PvP rules |
| `AutoClear` | 1.2.0 | Sweeps dropped items off the ground |
| `AutoPluginManager` | 2.1.0.3 | Browse, install and update the collection from in-game |

Several of these depend on `LazyAPI`, which in turn depends on `linq2db`. Install those first, or let `AutoPluginManager` handle it. Its commands sit behind the `AutoUpdatePlugin` permission: `/apm l` lists the repository, `/apm s <keyword>` searches it, and `/apm i <list number>` installs by the number shown in the list. Every install needs a server restart to take effect.

### Standalone plugins

- **[SmartRegions](https://github.com/ZakFahey/SmartRegions)** — runs an arbitrary command when a player enters a region, so you can set a team, heal, or hand out items on entry. Its 15 March 2026 release is titled "Compatible with TShock 6.1".
- **[BackTP](https://github.com/Ramiro-9/BackTP)** — saves a player's position before a teleport and returns them with `/back`. Released 25 April 2026, and the TShock wiki records it as tested on 6.1.0.

> [!WARNING] Plugin names that circulate but do not exist
> Several names passed around in older guides have no TShock project behind them at all. `WhitelistPlus` is a Minecraft plugin. `InvisibleHand` is a RimWorld mod. `CTRL` and `Permissions++` return nothing. `PvPController` is real, but its last release was in 2018. And `EconomicsAPI` is a namespace other plugins reference in their docs, not something you can download — the plugin itself is `Economics.Core`. If a name turns up no source repository, there is nothing to install, and a DLL offered under that name from elsewhere is not something to put on a live server.

## Common Issues

- **The plugin never appears in the console at startup.** Almost always the wrong runtime. Check the `.csproj` target as above — a TShock 5.x build will not load on 6.x, and it fails quietly.
- **It loads, but writes no config.** Look in `tshock/`, not next to the DLL. If nothing is there after a clean restart, the plugin did not finish loading.
- **It worked, then stopped after a TShock update.** Expect this at every major version. Pin the **Server Version** variable to the TShock release the plugin supports until an updated build appears, and see [Maintaining your Terraria server](/knowledge-base/terraria/maintaining-your-server/).
- **A dependency is missing.** Libraries such as `LazyAPI` go in `ServerPlugins/` alongside the plugin that needs them, not in a subfolder.

## What to Read Next

- [TShock Setup](/knowledge-base/terraria/tshock/) for the groups and permissions these plugins hook into
- [Maintaining your Terraria server](/knowledge-base/terraria/maintaining-your-server/) to back up before adding plugins
- [Terraria server commands](/knowledge-base/terraria/terraria-server-commands/) for the console and chat commands plugins extend
- [AutoBroadcast in-depth guide](/knowledge-base/terraria/terraria-plugin-guide-autobroadcast/) and [PermaBuffs in-depth guide](/knowledge-base/terraria/permabuffs-tshock-guide/) for two plugins covered end to end

---

Made with 💜 by GameServerKings
