(中文)命令行参数 - Pryaxis/TShock GitHub Wiki
可通过添加以下参数修改服务器初始化方式。命令行选项优先级高于配置文件中的对应设置,适用于个人使用或游戏服务器提供商(GSP)环境,简化部署流程:
-ip- 启动时绑定指定的 IPv4 地址。例如:-ip 0.0.0.0会绑定所有网络接口,而-ip 127.0.0.1仅绑定本地回环地址。若接口分配了其他 IP 地址,也可绑定该地址。-port- 启动时绑定指定端口。例如:-port 7777使用 Terraria 默认端口,-port 25565使用 Minecraft 默认端口。多数系统中,1000 以下端口需管理员root权限绑定,且需在防火墙中放行并设置端口转发。-maxplayers或-players- 设置最大玩家数。例如:-maxplayers 5将最大玩家数设为 5,理论最大值为 255(可通过-maxplayers 255设置)。-world- 启动时立即加载指定世界文件(需绝对路径)(但是我测试了相对路径也可以)。例如:-world C:\Terraria\MyWorld.wld或-world /root/MyWorld.wld。-worldselectpath- 修改世界文件搜索路径。例如:-worldselectpath /root或-worldselectpath C:\Terraria,服务器将从该路径加载世界。-worldname- 从worldselectpath中指定世界名称加载。例如:若MyWorld.wld位于C:\Terraria\且设置-worldselectpath C:\Terraria\,则-worldname MyWorld可加载该世界。-autocreate- 若未找到世界文件,自动创建指定大小的新世界(1-3,1 为小型)。例如:-autocreate 3创建大型世界。-config- 使用指定配置文件启动。例如:-config C:\Terraria\config.json。-ignoreversion- 忽略插件的 API 版本检查,允许运行旧版插件。-forceupdate- 强制服务器持续运行,无玩家时不进入休眠(时间流逝、草生长、CPU 持续占用)。-pass或-password- 设置服务器密码。例如:-pass mypassword将密码设为mypassword。-motd- 设置游戏基础服务器消息(MOTD)。例如:-motd "Welcome to my server!"将 MOTD 设为Welcome to my server!。-autoshutdown- 启用游戏基础的“自动关机”功能。-secure- 启用游戏基础的“反垃圾信息”功能。-configpath- 指定 TShock 解析配置文件、日志和 SQLite 数据库的路径。例如:-configpath C:\Terraria\将配置路径设为该目录。-logpath- 覆盖默认日志路径。例如:-logpath C:\Terraria\将日志保存至该目录。-logformat- 修改日志文件名格式(遵循 C# 日期格式规范)。例如:-logformat "yyyy-MM-dd"按天生成日志,默认格式为yyyy-MM-dd_HH-mm-ss。-logclear- 若旧日志存在则覆盖(适用于 Docker 环境)。例如:-logclear。-dump- 导出权限和配置文件说明(用于文档生成)。-worldevil- 设置世界邪恶类型(random/腐化/猩红,仅影响新生成世界)。例如:-worldevil random随机生成邪恶类型。-heaptile- 使用 HeapTile 地图读写接口(实验性,可能导致问题,比默认方案更省内存)。例如:-heaptile。-constileation或-c- 使用 Constileation 地图读写接口(实验性,省内存但可能有问题)。例如:-constileation。-difficulty- 设置世界难度(0=普通,1=专家,2=大师,3=旅程,仅影响新世界)。-loadlib- 指示游戏加载指定路径的库文件。例如:-loadlib C:\Terraria\MyLibrary.dll加载该路径下的库。-crashdir- 指示游戏将崩溃信息转储保存至指定路径。例如:-crashdir C:\Terraria\CrashDumps。-additionalplugins- 除ServerPlugins文件夹外,额外从指定目录加载插件。例如:-additionalplugins C:\Terraria\MyPlugins(适用于多服务器共享插件场景)。
以上命令行参数为 Terraria 服务器原生参数的扩展(例如 -lang 仍为原生参数,可正常使用)。
TShock 自动启动配置
若需通过脚本自动启动 TShock 并跳过启动提示,需指定 -world 路径和 -autocreate 参数。
示例:TShock.Server.exe -world C:\Terraria\worlds\MyWorld.wld -autocreate 1