如何在Ubuntu上搭建方舟:生存进化服务器
简介
《方舟:生存进化》(英语:Ark: Survival Evolved)是一款由Studio Wildcard制作与发行的生存类沙盒动作冒险游戏,使用虚幻4引擎打造,于2017年8月29日发行,游戏舞台设定在一座充满恐龙的神秘岛屿“方舟”,玩家必须运用技巧与智慧在危机四伏的世界中生存。游戏以第一人称或第三人称视角进行。在游戏世界中,玩家可以步行或者骑恐龙,可以使用枪械或简易武器来对抗敌对人类和生物,建立基地用以防御。玩家也可以利用从游戏中搜刮的资源打造自己的武器。游戏可以选择单人游戏或多人游戏,其中多人游戏可以允许多名玩家同时在线参与。
本教程将向您展示如何在运行Ubuntu 16.04 LTS的CVM上设置个人方舟:生存进化服务器。
PS:本文撰写前已查询相关法律,本文内容不违反《互联网文化管理暂行规定》,请勿举报。
准备
- 要连接到您的方舟:生存进化服务器,您必须拥有方舟:生存进化游戏客户端。
- 一台已经设置好可以使用
sudo
命令的非root账号的Ubuntu 服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的千寻云开发者实验室进行试验,学会安装后在购买服务器。为了满足游戏服务器要求,我建议您使用8G以上的服务器进行搭建。 - 更新您CVM服务器的软件:
apt-get update && apt-get upgrade
- 安装SteamCMD,Steam命令行界面:
apt-get install steamcmd
在安装过程中,系统将提示您同意Steam许可协议。选择我同意并点击确定接受协议条款。
- 出于安全原因,您将创建一个单独的
ark
用户来运行您的服务器应用程序。记下您指定的密码:
adduser ark
调整系统设置
运行以下命令以增加允许的打开文件数:
echo "fs.file-max=100000" >> /etc/sysctl.conf && sysctl -p
运行以下命令更新文件限制:
echo "* soft nofile 1000000" >> /etc/security/limits.conf
echo "* hard nofile 1000000" >> /etc/security/limits.conf
通过以下命令启用PAM限制:
echo "session required pam_limits.so" >> /etc/pam.d/common-session
安装方舟:生存进化服务器
将会话切换到ark
用户的会话,并创建一个包含方舟:生存进化服务器文件的server
目录:
su - ark
mkdir server
链接/usr/games/steamcmd
到steamcmd
在ark
用户的主目录:
ln -s /usr/games/steamcmd steamcmd
使用以下命令运行以安装方舟:生存进化服务器:
steamcmd +login anonymous +force_install_dir /home/ark/server +app_update 376030 +quit
这将需要几分钟才能完成。
为您的方舟:生存进化服务器创建一个systemd单元
通过为方舟:生存进化服务器创建systemd单元文件,可以将其设置为在重新引导后自动启动。
切换回root用户会话:
su -
创建一个新的systemd服务文件并向其中添加以下值。
/lib/systemd/system/ark.service
[Unit]
Description=ARK Survival Evolved
[Service]
Type=simple
Restart=on-failure
RestartSec=5
StartLimitInterval=60s
StartLimitBurst=3
User=ark
Group=ark
ExecStartPre=/home/ark/steamcmd +login anonymous +force_install_dir /home/ark/server +app_update 376030 +quit
ExecStart=/home/ark/server/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?SessionName=example -server -log
ExecStop=killall -TERM srcds_linux
[Install]
WantedBy=multi-user.target
保存并退出该文件。
更新systemd以应用您的更改:
systemctl daemon-reload
启用新的systemd设备并启动ARK服务器:
systemctl enable ark.service
systemctl start ark
配置您的方舟:生存进化服务器
启动服务器后,您可以通过编辑/home/ark/server/ShooterGame/Saved/Config/LinuxServer
下的GameUserSettings.ini
文件来添加或删除设置。在该[ServerSettings]
文件的部分中添加以下设置,将“example”密码替换为您自己的密码:
/home/ark/server/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini
ServerPassword=example
ServerAdminPassword=example
ServerPassword
确定连接到服务器时用户需要输入的密码。您可以省略此行以允许在没有密码的情况下进行访问。ServerAdminPassword
指定发出游戏命令时将使用的管理密码。
注意 如果选择使用
ServerPassword
选项,则在连接到服务器时,您需要单击“ 显示受密码保护”,或手动将服务器添加到收藏夹列表中。
可以在此文件中配置许多选项更多信息,请查看ARK wiki 的“ 服务器配置”部分。
将游戏客户端连接到您的服务器
您可以使用两种不同的方法连接到新的ARK服务器。由于游戏目前处于预发布状态且处于大量开发阶段,因此某些功能可能会发生变化。虽然从游戏内部查找服务器更容易,但它并不可靠,因此我们还将讨论如何将其添加Steam客户端中。
游戏内服务器列表
在您的本地计算机上,打开方舟:生存进化游戏客户端。点击JOIN ARK:
填充服务器列表时,可以使用“ 服务器名称过滤器”字段过滤结果。您还必须从“ 服务器过滤器”字段中选择“正常* ” 。如果您的ARK服务器已受密码保护,则还必须选中“ 显示受密码保护”框:
选择您的服务器,然后单击加入。如果您的服务器受密码保护,系统将提示您输入密码。这种方法不一定可靠,我推荐您用下面的方案。
Steam服务器收藏夹
打开本地计算机上的Steam应用程序,选择File(或OS X上的View)菜单,然后导航到Servers。
在FAVORITES下选择ADD A SERVER并指示Steam连接到您的CVM的IP地址或域名:
一旦Steam识别出您的ARK服务器,它就应该出现在SERVERS列表中。选择你的服务器并点击CONNECT:
或者,您可以从游戏服务器列表中的服务器中选择收藏夹:
如果您在GameUserSettings.ini
文件中创建了服务器密码,请在此处输入:
或者,如果您使用的是游戏内菜单,请在此处输入服务器密码:
恭喜!您现在可以在自己的持久服务器中探索方舟:生存进化的世界。
怎么样,简单吗?赶紧去搭建你的方舟:生存进化服务器吧!
参考文献:《Create an ARK: Survival Evolved Server on Ubuntu 16.04》