首先去购买一台服务器,使用终端连接到服务器,自行百度,我这里演示是我自己阿里云的
1.服务器先安装软件
lrzsz(上传下载),screen(终端切换),vim(文本编辑器),wget(下载),unzip(zip解压缩)
yum -y install lrzsz screen vim wget unzip
2.交换分区
为了不让机器卡爆,创建一下交换分区,我的是2G内存的服务器,一般大于4个G的就不用创建了
查看交换分区
free -m
我这里是没有交换分区的
新建SWAP分区
dd if=/dev/zero of=/root/swapfile bs=1M count=2048
格式化交换分区文件:
mkswap /root/swapfile
启用swap分区文件
swapon /root/swapfile
添加开机启动
vim /etc/fstab
(i键插入,保存先按esc,在英文:x 回车)
在文件底部添加内容
/root/swapfile swap swap defaults 0 0
重启服务器,看一下交换分区是否生效
reboot
像这样就没问题:
3.搭建启动服务的环境
启动tshock要mono
安装mono-complete
rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
su -c 'curl https://download.mono-project.com/repo/centos7-vs.repo | tee /etc/yum.repos.d/mono-centos7-vs.repo'
yum install mono-complete
如果中途失败,再运行一下命令会接着下载
github下载最新的tshock
https://github.com/Pryaxis/TShock/releases/tag/v4.4.0-pre12
解压缩
unzip tshock.zip -d ~/tshock
这样服务器文件就在~/tshock目录下了
先启动一次,让他生成配置文件
mono tshock/TerrariaServer.exe
然后在Ctrl+Z关闭掉
4.启动服务新建地图
新建一个窗口好让tr后台运行
screen -S tr
mono tshock/TerrariaServer.exe
新建地图,n新建,d删除
选择地图大小
选择地图模式
选择地形
输入地图名称
输入种子
开始创建中:
创建完成,1是我创建的,按1选择地图
选择最大玩家数量
选择端口号,默认是7777
是否端口转发
输入地图密码,空为不要
服务启动成功
修改配置文件
配置文件目录在~/tshock/tshock/下
vim ~/tshock/tshock/config.json
RequireLogin:true /强制注册登录
MacDam:10000 /最大伤害
vim ~/tshock/tshock/sscconfig.json
"Enabled": true /强制开荒
5.其他
我买的是阿里云的服务器,只需要在安全组添加一下服务器的端口就能开放了
如果不是,手动防火墙放一下端口
防火墙开放端口
firewall-cmd --permanent --add-port=7777/tcp
firewall-cmd --reload
注意,如果装了宝塔面板之类的,要在面板也放一下端口才行
因为窗口后台了,在登陆输入命令就回到这个窗口
screen -r
其他tshock命令可以百度下
/user group cola superadmin /将用户加入管理员组
地图的文件保存在
/root/.local/share/Terraria/Worlds/