您现在的位置是:首页 >技术教程 >Barotrauma潜渊症私人服务器架设教程网站首页技术教程
Barotrauma潜渊症私人服务器架设教程
准备工具:
服务器一台(Ubuntu系统)
家用电脑一台(有网就行)
准备阶段
通过SSH登入服务器。
服务端需要下载三个软件。
窗口管理工具 Screen 。用于将服务器挂在后台中运行。
SteamCMD 。用于下载潜渊症服务器。
潜渊症专用服务器。
你的电脑只需要下载一个软件。
WinSCP 。用于传输文件。
WinSCP 直接搜 WinSCP 即可找到官网,无需赘言。
下载窗口管理工具Screen
sudo apt-get install tmux screen
完成。
下载SteamCMD
出于安全考虑,应当新建一个无 ROOT 权限的账户用于开服。
useradd -m steam
创建一个账户 steam,此处 steam 可以起别的名字,本文以 steam 为例。
账户创建之后不要忘了设置密码。
passwd steam 要设置的密码
准备安装 SteamCMD ,开始前检查你的服务器是否是64位,如果是,在 ROOT 账户上输入下述命令
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install lib32gcc1
sudo apt install lib32stdc++6
不是的话直接跳过。
随后切换你的账户为指定的开服用账户
su steam
输入相应的密码,完成账户切换后进入到用户目录下
cd ~
创建一个文件夹用于单独存放 SteamCMD 文件。
mkdir steamcmd
cd steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvf steamcmd_linux.tar.gz
然后输入下列命令,运行 SteamCMD
./steamcmd.sh
如果你出现 xxx/steamcmd: NO such file or directory 的提示,请在确保上述命令(尤其是64位所需要额外执行的命令)都已经正确执行的情况下,执行下述命令
sudo apt-get -y install libcurl4-gnutls-dev:i386
完成之后,再次执行下列命令
./steamcmd.sh
下载潜渊症专用服务器
潜渊症专用服务器比较特殊,它是与游戏绑在一起的,普通用户无法在Steam上直接下载下来,需要使用匿名登录才能下载。
login anonymous
接下来,下载潜渊症专用服务器并进行验证完整性。
app_update 1026340 validate
1026340就是潜渊症专用服务器的Steam应用ID,去SteamDB上你可以找到各个Steam上的应用对应的Steam应用ID是多少。
一经安装完毕,你就可以输入 quit 来退出 SteamCMD ,执行下列命令返回当前帐户的根目录,并查看文件列表,强调,必须带 -a !不带 -a 的 ls 命令无法看到以 . 开头的隐藏文件夹!。
cd ~
ls -a
执行后应当能看到两个新文件夹,一个是 Steam ,另一个是 .steam ,先打开 .steam 文件夹。
cd .steam
然后创建链接到 steamclient.so 。注意下列操作取决于你的机子是否是 64 位服务器,如果是 64 位服务器,请按下面命令做
mkdir -p ~/.steam/sdk64
ln -s ~/steamcmd/linux64/steamclient.so ~/.steam/sdk64/steamclient.so
如果你的机子不是 64 位服务器,请按下面命令做(把 64 换成 32 即可)
mkdir -p ~/.steam/sdk32
ln -s ~/steamcmd/linux32/steamclient.so ~/.steam/sdk32/steamclient.so
这一段命令非常重要,是确保服务器能够正常运行的重要部分,绝对不可以忽略,如果找不到 steamclient.so ,潜渊症服务器就无法正常运行。
steamclient.so 一般位于 SteamCMD 目录下的 linux64 和 linux32 文件夹里面,如果你和本文一样采用的是手动安装 SteamCMD 的方式,那么这个文件夹应当与 steamcmd.sh 位于同一目录。
需要指出的是,文件夹 .steam 所在的位置,取决于你是以何种用户运行的 SteamCMD ,如果你在当前用户文件夹下找不到 .steam 文件夹,就查看准备阶段 SteamCMD 安装步骤第 3 节和第 4 节的红字部分,检查你是否照做了。
运行阶段
创建链接后,输入下列命令,。
cd ~/Steam/steamapps/common/'Barotrauma Dedicated Server'
编辑 serversettings.xml 。
vi serversettings.xml
按i进入编辑模式,找到几行修改。
name="服务器名字"
port="27015"
queryport="27016"
IsPublic="True"
name 一行为服务器名字。
IsPublic 一行为服务器是否可以直接搜到,为false时只能通过搜IP找到。
port 一行为服务器端口,在防火墙规则中设置该端口打开,注意是UDP端口,必须打开。
queryport 一行为服务器查询端口,同 port 一样是UDP端口,如果服务器只能通过搜 IP 加入,则此端口不需要打开。
不需要在意 True 和 False 是否遵循大小写,不会影响的。
按 ESC 退出编辑模式,输入 :wq 保存文件并且退出。
开一个新的进程,用于将服务器挂在后台运行
screen -R server
server可以更改为其他名字。创建进程后,再执行开服命令
./DedicatedServer
注意,此处执行的程序不是 DedicatedServer.exe ,红字部分为差异部分,请勿搞混。
开好服务器后,按下 Ctrl + A + D 即可将服务器挂在后台,并返回主进程,不需要担心执行其他操作的时候,会需要中断开服程序,也不需要担心断开连接后,服务器程序也随之中断的情况发生,这样就可以挂后台并退出服务器的终端了。
如果需要返回服务器后台。
screen -r 相应进程名字(或者进程的 ID )
如果只开了一个新进程,你可以不输入名字,直接切换
screen -r
如果不记得了你的进程叫什么,就用这个指令,可以列出当前进程的 ID 、名字、运行状态
screen -ls
删除进程
kill 进程的 ID
改进程名字
screen -S 要改的进程的原名字 -X 新的名字
模组安装
运行WinSCP,配置。
主机名输入 IP,端口号为 Linux 的 SSH 登录端口。
上传模组,并把模组文件夹全部移动到潜渊症服务器目录下的 LocalMods 文件夹里面。
在 config_player.xml 里做如下修改(该文件需要在运行服务器程序后才会生成)。
然后找到以下片段。
<contentpackages>
<!--Vanilla-->
<corepackage
path="Content/ContentPackages/Vanilla.xml" />
<regularpackages />
</contentpackages>
整段改成下列内容(只需注意格式,内容仅供参考)
<contentpackages>
<!--Vanilla-->
<corepackage
path="Content/ContentPackages/Vanilla.xml" />
<regularpackages>
<!--MOD名1-->
<package
path="LocalMods/MOD名1/filelist.xml" />
<!--MOD名2-->
<package
path="LocalMods/MOD名2/filelist.xml" />
<!--MOD名3-->
<package
path="LocalMods/MOD名3/filelist.xml" />
</regularpackages>
</contentpackages>
如果不确定 MOD 名字,可以先将 MOD 安装在本地游戏客户端,运行游戏并启用 MOD ,再打开本地游戏的 config_player.xml 文件夹,找相关部分的内容即可。
另附:在 config_player.xml 开头有一段 language 设定,修改它为 Simplified Chinese ,游戏中的 NPC 对话才会是中文对话,如果没有设置或者没有相应的语言包,则 NPC 的对话是英文。