tShockLoader 用于在 tModLoader 1.4.4 专服上运行 TShock 5.2.3(TSAPI 2.1)。
通过单个 tShockLoader.tmod 文件,让 tModLoader 专服支持 TShock 的账号认证、权限组、管理指令、REST API 以及大部分基于 TSAPI 2.1 编译的第三方插件。
- TShock 基础管理:内置 TShock 5.2.3,支持用户注册、权限组继承、封禁、白名单、区域保护与 REST API。
- 单文件分发:核心组件与依赖打包在
tShockLoader.tmod内,放入Mods/即可加载。 - 内容与协议适配:
- 适配 tModLoader 的动态内容注册(物品、NPC、方块、Buff、前缀等 ID 上限)。
- 自动放行 tModLoader 扩展数据包(ModPacket/ModFile 249–253),原版数据包仍受 TShock 权限与反作弊规则控制。
- 插件兼容(Relinker):内置运行时重写器,将针对原版 TShock 5.2.3 编译的第三方插件映射到 tModLoader 与 FNA 运行时。
- 目录隔离与多实例:默认将配置、数据库(
tshock/)和插件(ServerPlugins/)写入专服目录下的tShockLoader/,可用-instancepath覆盖。
flowchart TD
TML["tModLoader 1.4.4 专服"]
Host["tShockLoader (宿主 / Hook 桥接 / Relinker)"]
API["TerrariaApi.Server (TSAPI 2.1)"]
TShock["TShockAPI 5.2.3"]
Plugins["第三方插件 (ServerPlugins/)"]
TML --> Host
Host --> API
Host --> TShock
TShock --> API
Plugins -.->|运行时 Relink| Host
Plugins --> API
Plugins --> TShock
- tModLoader:游戏状态、内容注册与网络协议的实现基础。
- tShockLoader:管理生命周期、安装底层 Hook、提供程序集解析并加载插件。
- TerrariaApi.Server:提供 TSAPI 2.1 插件接口与事件定义。
- TShockAPI:负责账号、权限、命令分发、数据存储与 REST API。
- 操作系统:Windows x64 / Linux x64
- 运行时:.NET 8.0 Runtime
- 专服版本:tModLoader
1.4.4.9+2026.07.3.0(Steam 专服即可)
- 在 Releases 下载
tShockLoader.tmod。 - 放入服务端的
Mods/目录。 - 在
Mods/enabled.json中添加"tShockLoader":[ "tShockLoader" ]
Windows (PowerShell):
dotnet ./tModLoader.dll -server -config ./serverconfig.txt -tmlsavedirectory ./saveLinux (Bash):
dotnet ./tModLoader.dll -server -config ./serverconfig.txt -tmlsavedirectory ./save- 首次启动时,控制台会输出初始认证码(Setup Token)。
- 进入游戏后输入
/setup <Token>。 - 按提示使用
/user add <用户名> <密码> superadmin创建管理员账号。 - 使用
/login <用户名> <密码>登录。
Server_Root/
├── tModLoader.dll # tModLoader 专服主程序
├── Mods/
│ ├── enabled.json # 模组启用列表
│ └── tShockLoader.tmod # 发行文件
└── tShockLoader/ # 默认实例目录(可用 -instancepath 覆盖)
├── ServerPlugins/ # 第三方插件 (.dll)
└── tshock/ # TShock 数据目录
├── config.json # 配置文件
├── tshock.sqlite # 数据库
└── logs/ # 运行日志
注意:请勿将
TShockAPI.dll或TerrariaApi.Server.dll放入ServerPlugins/目录,核心程序集已内置于.tmod中。
将针对 TShock 5.2.3 编译的插件 .dll 放入 tShockLoader/ServerPlugins/ 目录,启动服务器即可自动加载。可通过 /plugins 指令查看加载状态。
部分已验证插件:ListPlugins、ConsoleSql、HelpPlus、RealTime、TimeRate、LazyAPI 及其常用组件(AutoBroadcast、Back、VeinMiner 等)。
详情参见 插件兼容矩阵。

