上一篇 下一篇 分享链接 返回 返回顶部

如何在Ubuntu上搭建方舟:生存进化服务器

发布人:千 发布时间:6 天前 阅读量:24

简介

《方舟:生存进化》(英语:Ark: Survival Evolved)是一款由Studio Wildcard制作与发行的生存类沙盒动作冒险游戏,使用虚幻4引擎打造,于2017年8月29日发行,游戏舞台设定在一座充满恐龙的神秘岛屿“方舟”,玩家必须运用技巧与智慧在危机四伏的世界中生存。游戏以第一人称第三人称视角进行。在游戏世界中,玩家可以步行或者骑恐龙,可以使用枪械简易武器来对抗敌对人类和生物,建立基地用以防御。玩家也可以利用从游戏中搜刮的资源打造自己的武器。游戏可以选择单人游戏多人游戏,其中多人游戏可以允许多名玩家同时在线参与。

本教程将向您展示如何在运行Ubuntu 16.04 LTS的CVM上设置个人方舟:生存进化服务器。

PS:本文撰写前已查询相关法律,本文内容不违反《互联网文化管理暂行规定》,请勿举报。

准备

  • 要连接到您的方舟:生存进化服务器,您必须拥有方舟:生存进化游戏客户端。
  • 一台已经设置好可以使用sudo命令的非root账号的Ubuntu 服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的千寻云开发者实验室进行试验,学会安装后在购买服务器。为了满足游戏服务器要求,我建议您使用8G以上的服务器进行搭建。
  • 更新您CVM服务器的软件:
代码语言:javascript
复制
apt-get update && apt-get upgrade
  • 安装SteamCMD,Steam命令行界面:
代码语言:javascript
复制
apt-get install steamcmd

在安装过程中,系统将提示您同意Steam许可协议。选择我同意并点击确定接受协议条款。

  • 出于安全原因,您将创建一个单独的ark用户来运行您的服务器应用程序。记下您指定的密码:
代码语言:javascript
复制
adduser ark

调整系统设置

运行以下命令以增加允许的打开文件数:

代码语言:javascript
复制
echo "fs.file-max=100000" >> /etc/sysctl.conf && sysctl -p

运行以下命令更新文件限制:

代码语言:javascript
复制
echo "* soft nofile 1000000" >> /etc/security/limits.conf
echo "* hard nofile 1000000" >> /etc/security/limits.conf

通过以下命令启用PAM限制:

代码语言:javascript
复制
echo "session required pam_limits.so" >> /etc/pam.d/common-session

安装方舟:生存进化服务器

将会话切换到ark用户的会话,并创建一个包含方舟:生存进化服务器文件的server目录:

代码语言:javascript
复制
su - ark
mkdir server

链接/usr/games/steamcmdsteamcmdark用户的主目录:

代码语言:javascript
复制
ln -s /usr/games/steamcmd steamcmd

使用以下命令运行以安装方舟:生存进化服务器:

代码语言:javascript
复制
steamcmd +login anonymous +force_install_dir /home/ark/server +app_update 376030 +quit

这将需要几分钟才能完成。

为您的方舟:生存进化服务器创建一个systemd单元

通过为方舟:生存进化服务器创建systemd单元文件,可以将其设置为在重新引导后自动启动。

切换回root用户会话:

代码语言:javascript
复制
su -

创建一个新的systemd服务文件并向其中添加以下值。

/lib/systemd/system/ark.service

代码语言:javascript
复制
[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以应用您的更改:

代码语言:javascript
复制
systemctl daemon-reload

启用新的systemd设备并启动ARK服务器:

代码语言:javascript
复制
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

代码语言:javascript
复制
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》

目录结构
全文