在Linux上搭建tModLoader服务器
Lormoveate
2023年09月21日 07:30
收录于文集
共3篇

事前声明

  1. 本教程是在Ubuntu 22.04.2 LTS环境下演示的,对于其他版本的Ubuntu,可能有所出入,对于其他的Linux操作系统,如CentOS,本文不保证完全适用,但核心相同,可以本文为参考进行搭建。

  2. 本文只是在本机Ubuntu 22.04.2 LTS环境下完成测试,并没有在其他版本上跑过测试(原因是懒),并不保证全版本适应性,故如有错漏与不足,还请各位指出。

  3. 本文于2023.8.11写成,并不保证在较长时间后仍然有效,届时会根据情况进行更新,如有不适配之处,也请各位在评论区指出,本人会尽力进行对本文的修改,使其尽量不落后于时代。

  4. 本文只是提出一条在linux上搭建泰拉瑞亚服务器的可行方案,对于其他方案,也许其可行,但本人并未对此进行深入探究,故不在此介绍。

  5. 本文只介绍tModLoader的服务器搭建。对于纯原版服&TShock服,可以参阅本人之前的文章

步骤

基本环境准备

首先你需要一个可正常运行的Linux操作系统,本文以Ubuntu为演示,版本为Ubuntu 22.04.2 LTS,在对应Linux官网下载镜像文件,然后在虚拟机或者实体机上进行安装,具体安装流程这里不再赘述,可自行搜索安装教程;或在选择云服务器操作系统时选择Linux,本人建议Ubuntu或CentOS。

获取tModLoader

网址:https://github.com/tModLoader/tModLoader/releases

进入上方网站,选择你需要的版本,该版本最好与客户端版本统一,否则可能会出现各种各样奇怪的bug(其实统一了也有奇奇怪怪各种各样的bug

下载完成后应该会得到一个如下图所示的.zip文件

tmodloader

将它上传到linux服务器。

并使用unzip命令解压

代码块
Shell
自动换行
复制代码
sudo unzip tModLoader.zip
复制成功

解压后的目录结构

获取模组

首先,在客户端的tmodloader的steam创意工坊上订阅模组

老生常谈的问题:

 1. 创意工坊登不上去

    由于某些众所周知的原因,steam的community就上不去,这时候可能就需要一些魔法。

    本人在这里推荐steam++(现在好像改名叫Watt Toolkit了)和网易uu。

 2. 创意工坊没有模组

    注意需要打开的是tmodloader的创意工坊,而不是泰拉瑞亚本体的。

是这个!

sir, this way!!!!

什么200小时的萌新中的萌新

然后,启动你的tModLoader

tml开始页面

第一次启动可能需要选择语言。

然后,点击创意工坊->管理模组进入模组管理页面

模组管理页面

像平时一样,启用你所需要的模组,我们这里以Recipe Browser为例

启用之后点击返回重新加载即可。

然后顺次点击创意工坊->模组整合包,进入模组整合包管理页面

模组整合包管理页面

点击右下角的 “将已启用的模组生成为新的整合包”

"将已启用的模组生成为新的整合包&#​34; 按钮

模组整合包名称可以随意填(不能含`~!@#$%^&*()[]{}<>,/?;:&#​39;"+=以及空格和中文汉字,像是.-_就可以),自己能认清楚就行

整合包名称

然后我们便可以找到整合包的信息

我们这里需要的是 “导出完整整合包” 

导出完整整合包

点它。稍等片刻就会自动打开一个与整合包名同名的文件夹

文件夹名为example

我们需要的是SaveData文件夹中的Mods文件夹(/SaveData/ModConfigs是模组配置文件夹,需要可以自行取用,避免重复配置)

Mods文件夹

Mod文件夹当中的.tmod文件就是模组文件,enabled.json用于存放模组的启用/禁用状态,install.txt没用大概是与steam相关的?,tmlversion.txt用以存放tml的版本信息

可以将Mods文件打个包然后上传至linux服务器的模组文件随后解压

需要注意的是,打包时不要将Mods文件夹打包入压缩文件,这样在linux端的模组文件夹下可以直接unzip,而不需要mv。

安装模组并启动tModLoader

1. 启动tModLoader

代码块
Shell
自动换行
复制代码
sudo ./start-tModLoaderServer.sh
复制成功

使用上述命令来启动服务器。

第一次启动可能会在下载安装dotnet上花费时间,如果需要离线安装,可以参考cv24543066的步骤12,其文件应该是通用的(大概吧)。

服务器的开始页面(这里我下载的是Preview版本)

输入m并回车

这里便是默认的mod存放位置,当然你也可以通过命令行参数或者配置文件方式来手动设置mod存放位置

代码块
Shell
自动换行
复制代码
sudo ./start-tModLoaderServer.sh -modpath ./mods
复制成功

例如这就是通过命令行参数的方式来调整mod存放位置到./mods目录

2. 安装模组

我们将.tmod模组文件上传到mod文件夹

需要注意的是:如果是由tmodloader自动创建的目录,需要赋予权限

代码块
Shell
自动换行
复制代码
sudo chmod +666 mods
复制成功

我在这里就使用RecipeBrowser作为演示

上传的文件

3. 启用模组

将模组上传至模组文件夹后,再次启动服务器输入m进入模组选择页面即可看见我们刚才添加的RecipeBrowser模组

输入模组序号并回车将其启用

输入1并回车后

输入e启用全部、d禁用全部

然后输入r重新加载并返回到选择世界页面

如果在复制mod文件时同时把enabled.json给复制到mods文件夹了,那么tmodloader就可以自动识别enabled.json中的内容并启用模组

4. 启动服务器

加载完成模组后的操作便与原版没有什么区别了

需要注意的是,在添加某些模组后在服务器端输入n创建世界可能会发生错误,可以选择在客户端创建后拷贝至tmodloader的文件目录(默认~/.local/share/Terraria/tModLoader/Worlds)

后台运行

可参阅   cv24543066   的步骤10

其步骤大致相同,不过启动变成了(中括号 " [ ] &#​34; 内为可选内容)

代码块
Shell
自动换行
复制代码
sudo ./start-tModLoaderServer.sh [-modpath ./mods]
复制成功

而已

防火墙问题

可参阅   cv24543066   的步骤 11

尾声

至此,你已经完成了泰拉瑞亚tModLoader服务器在linux的安装。祝你玩的愉快。如果有任何问题,也可以在评论区给本人回复,我会尽力回答。介于本人技术、精力有限,不可能做到尽善尽美,如果本文存在任何疏漏,也欢迎各位指出,我会及时改正。