简介
泰拉瑞亚 1.4 Linux 服务器搭建, tModLoader (后简称 TML) 1.4 服务器搭建(支持mod),面向需要一点 Linux 基础的小伙伴。
如果只是 TML 运行后一直在 下载 或者 5分钟没反应 这个问题(win 和 Linux 通用),可以直接看 TML 安装的最后重点问题部分。
网上泰拉服务器教程已经很多了,但是都基本都是 1.3 版本, TML 基本在 0.11.8.9 版本之前,这次本体更新到 1.4 版本,TML更新到 v2022.05.103.34 版本(本文写于2022.6.28)后整体有了较大的变化,搭建过程中我也走了很多弯路,所以写一篇文章,希望对大家有帮助。
选择开服务器,我觉得好处还是很明显的
- 可以最大支持16个人在同一地图
- 无 steam 开黑的网络延迟烦恼,也没有了局域网限制
- 可以长时间挂载游戏,不需要受限于房主
- 可以同时开多个地图
- …… 还有很多
环境说明
服务器 :腾讯云 8 核 4 G(如果要安装 TML 建议服务器 在 2核2G 以上),操作系统 :debain 11
游戏本体:steam上的 Terraria 1.4.3.6 ,TML v2022.05.103.34
泰拉的服务器端是免费的,在 官网 或者 Terraria wiki, TML 在 GitHub 获得最新版,也有封装完整的 docker 镜像供大家使用(这个方法我没有试过)
我这里推荐和使用的是利用 steamcmd 安装的方法,先说一下优点:
- 服务器与桌面端版本统一起来方便。
- 版本更新方便,steamcmd 有专门的指令更新游戏及其 mod,而别的方法需要重新下载安装。
- 1.4 版本后的 TML 支持创意工坊直接导入 mod ,这个在服务器端也生效!!!服务器下载 TML 可以自带订阅的 mod。
服务器搭建流程
安装 steamcmd
习惯看文档的请看文档,里面比较详细(支持中文), 内含 docker 安装方法,这里简单的介绍一下
- 以 root 用户身份创建 steam 用户:
useradd -m steam
# 添加密码
passwd steam
- 进入其文件夹
cd /home/steam
# 或者
su steam
bash # 切换到 bash 以保证命令行体验
cd ~
- 安装
Ubuntu/Debian
sudo apt install steamcmd
# 64 位机需要先
sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install lib32gcc1 steamcmd
- 链接 steamcmd 可执行文件:
ln -s /usr/games/steamcmd steamcmd
- 运行 Steamcmd
cd ~
steamcmd
正常情况下你会看到
输入login + 你的用户名
然后按提示登录即可(第一次登录会需要令牌)
安装 terraria
# 安装 Terraria(它在steam中的代码是 105600,不会改变)
app_update 105600
下载完成后你应该可以在 ~/Steam/steamapps/common
下面看到 Terraria 文件夹
里面的 TerrariaServer.bin.x86_64
就是服务器运行文件了
# 新建会话
screen -S Tr
./TerrariaServer.bin.x86_64
然后就可以开始的愉快游戏了,常用指令
tModLoader 服务器搭建
这个需要在本体完成的基础上进行
查找游戏在steam中的代码
steam 选中游戏后右键属性即可查看
我们可以看到 TML 的代码是 1281930 版本是 8980144, 所以执行
# app_update <应用ID> [-beta <测试名称>] [-betapassword <密码>] [validate]
app_update 1281930 8980144 validate # 如果发现安装有问题请加 validate
下载完成后,同样进入 TML 文件夹
# 新建会话
screen -S Tr
./start-tModLoaderServer.sh
重点问题
这里演示的是 windows 下的情况,Linux服务端一样,只不过服务器上可以多看到下载信息,应该是在下载 .net ,但是国内服务器应该是下载不下来的,所以会等到死。
解决方法
windows 和 Linux 解决方法一样,手动下载 .net ,非x64
的可以到这里找到对应版本的链接。
我们可以 cd
到 tModLoader 内的 dotnet/6.0.0
文件夹里面是空的或者是不完整的,所以我们要手动下载二进制文件包,丢进去,代码如下
cd ~/Steam/steamapps/common/tModLoader/dotnet/6.0.0
# 下载二进制文件
wget https://dotnet.microsoft.com/zh-cn/download/dotnet/thank-you/sdk-6.0.301-linux-x64-binaries
# 解压文件
tar -zxvf dotnet-sdk-6.0.301-linux-x64.tar.gz
windows 下操作同理,下载 x64,然后 steam 找到游戏右键 -> 管理 -> 浏览本地文件,找到 dotnet 文件夹,进入 6.0.0 文件夹,将下载好的文件解压到里面,即可解决问题。
steam 的最大优势是下载后 TML 内的 mod 自带,所带的 mod 就是登录的 steam 账号内 TML 订阅的 mod ,如果需要更新 ,请在 steamcmd 中输出一下指令(和安装一样的指令),就可以更新 mod 了。
请注意服务器 mod 与主机端开启的 mod 应当相同
app_update 1281930 validate
现已经成功和小伙伴玩上 1.4 版本的 灾厄 mod 2.0.0.001 ,刚出没几天,服务器体验不错,暂时只遇到了一个人多的时候不能捡坠落之星的 bug 。
本文主要是为了介绍 TML 1.4 运行不起来的解决方法,下面的参考链接介绍会更为详细(但正如前面提到的由于版本的原因,很多地方不再适合新版)。
如果有错误与不足之处,欢迎大家指出。
参考连接: