搭建 sven 服务器记录
sven 是 hl 的一个 mod,可以多人联机打怪或对战。
本文使用的服务器为阿里云的 VPS,安装的系统为 Ubuntu 16.04。
安装 steamcmd
steamcmd 可以用来下载 steam 上许多游戏的服务端软件。安装过程同官方文档,注意先安装依赖,过程略。
安装 sven
安装好 steamcmd 后,可以通过命令运行它:./steamcmd.sh
(如果按照文档的命令安装,就不要运行这条命令了)。
待出现 Steam>
字样后 steamcmd 便已启动完成,可以输入命令安装 sven 了。
安装命令在 sven 文档中也已提供:steamcmd +login anonymous +force_install_dir "C:\SvenDS" +app_update 276060 validate +exit
,这条命令好象直接在终端运行就好了,不需要打开 steamcmd,我没试过。
我个人是打开 steamcmd 后依次执行命令安装的,安装的时候没注意到 sven 已经提供了命令。我在 steamcmd 中输入的命令与文档提供的命令差不多,就是按照 +
把一条命令拆分成多个命令。每个 +
后面的命令都依次执行了一遍,也就是:login anonymous
force_install_dir [安装路径]
app_update 276060 validate
exit
。执行完最后一条 exit
命令 steamcmd 也就关闭了。注意以上命令是在 steamcmd 中输入的,不是在终端中输入。
运行 sven 服务器
安装完后,参考官方文档提供的参数,启动服务器:./svends_run -console -port 27015 +maxplayers 12 +map [地图] +log on
刚开始启动的时候报错
1 | error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory |
安装 lib32stdc++6
解决了这个问题:apt-get install lib32stdc++6
之后又有新的问题:
1 | libssl.so.1.1: cannot open shared object file: No such file or directory |
这个问题要安装 libssl1.1:i386
才能解决。我在这里折腾了很久才最终成功。先是安装了 openssl1.1 然后装了这个,最后成功运行服务器。同时要注意的是防火墙要开启三个端口:27015 UDP
27015 TCP
26900 UDP
。