专栏首页云计算教程系列如何在Ubuntu上搭建方舟:生存进化服务器
原创

如何在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/steamcmdsteamcmdark用户的主目录:

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文件中创建了服务器密码,请在此处输入:

或者,如果您使用的是游戏内菜单,请在此处输入服务器密码:

恭喜!您现在可以在自己的持久服务器中探索方舟:生存进化的世界。

怎么样,简单吗?赶紧去搭建你的方舟:生存进化服务器吧!更多Linux教程请前往腾讯云+社区学习更多知识。


参考文献:《Create an ARK: Survival Evolved Server on Ubuntu 16.04》

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何使用Node.js和Github Webhooks保持远程项目同步

    在处理具有多个开发人员的项目时,当一个人推送到存储库然后另一个人开始对过时版本的代码进行更改时,这可能会令人沮丧。像这些花费时间的错误,这使得设置脚本以保持您的...

    小翼111
  • 如何使用Nginx在Ubuntu 16.04上使用SSL保护Concourse CI

    Concourse CI是一个现代且可扩展的持续集成系统,旨在通过可组合的声明性语法自动化测试管道。基于早期CI系统的成功,Concourse旨在简化管道管理并...

    小翼111
  • 为你的CVM设置SSH密钥吧!

    认证是用于证明您有权执行某项操作的信息,例如登录到系统。认证通道是身份验证系统向用户传递因素或要求用户回复的方式。通俗的来讲,密码和安全令牌就是身份验证证明,计...

    小翼111
  • 【Nginx】实现负载均衡的几种方式 原

    当一台服务器的单位时间内的访问量越大时,服务器压力就越大,大到超过自身承受能力时,服务器就会崩溃。为了避免服务器崩溃,让用户有更好的体验,我们通过负载均衡的方式...

    拓荒者
  • 《Redis设计与实现》读书笔记(二十一) ——Redis服务器定时函数serverCron详解

    《Redis设计与实现》读书笔记(二十一) ——Redis服务器定时函数serverCron详解 (原创内容,转载请注明来源,谢谢) 一、概述 redis...

    用户1327360
  • 游戏服务器压力测试总结

    游戏服务器压力测试总结 从游戏内测开始到现在做了所有服务器压力相关的测试.现在进行总结.暂时还不方便说游戏架构,所以不上图了。 一.首先明确需要测试压力的内...

    李海彬
  • 腾讯云服务器建站教程-----详细版

    开头大家可以领取下优惠券;最高可领取2860,反正免费,万一以后用得上呢,不要白不要新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得...

  • 建站教程:云服务器使用(完整版)

    开头大家可以领取下优惠券;最高可领取2860,反正免费,万一以后用得上呢,不要白不要新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得...

  • 快速学习-Zookeeper选举机制

    1)半数机制:集群中半数以上机器存活,集群可用。所以Zookeeper适合安装奇数台服务器。 2)Zookeeper虽然在配置文件中并没有指定Master和S...

    cwl_java
  • 7 QQ游戏百万人同时在线服务器架构实现

    QQ游戏于前几日终于突破了百万人同时在线的关口,向着更为远大的目标迈进,这让其它众多传统的棋牌休闲游戏平台黯然失色,相比之下,联众似乎已经根本不是QQ的对手,因...

    范蠡

扫码关注云+社区

领取腾讯云代金券