【方舟:生存进化】ARK服务器搭建

历届世界杯主题曲 6888

引言最近和朋友一块玩方舟有点上头,用的 非专用主机 联机的,但是有很多问题。再加上官服停服,也没找到自己满意的私服,所以还是打算开个服。正好看到之前搭MC服务器用的 MCSM面板 也可以用来开Steam游戏,就打算用这个来试一试。

环境介绍: Linux系统:Debian 12.7.0

本教程参考于: SteamCMD官方Wiki:https://developer.valvesoftware.com/wiki/SteamCMD ARK专用服务器搭建官方Wiki:https://ark.wiki.gg/wiki/Dedicated_server_setup

游戏服务端安装因为服务器是Debian系统,所以接下来的命令操作都是基于Debian的,虽然各个Linux系统的操作大差不差,但还是有细微差别的。可以跟着我的步骤,再对照着官方文档对于你所使用的系统的命令是否不同,一步一步走。

1.安装依赖123456sudo apt update && sudo apt upgrade -y #更新系统sudo apt install software-properties-common #安装管理软件源和仓库配置的工具包sudo apt-add-repository non-free #添加non-free仓库sudo dpkg --add-architecture i386 #添加32位架构支持sudo apt update #更新软件源sudo apt install lib32gcc-s1 #安装依赖项lib32gcc-s1软件包

2.创建新用户创建新用户的目的是为了系统安全考虑,以下是官方原话

Warning: Do not run steamcmd while operating as the root user. Doing so is a security risk.

1234sudo adduser steam #创建一个名叫steam的用户,跟着提示完成创建sudo mkdir -p /opt/steam/steamcmd #创建存放steamcmd软件的目录(我喜欢把软件放在`opt`里面,根据自己喜欢选择路径)sudo chown -R steam:steam /opt/steam #给steam用户提权,让它可以对该路径文件操作su - steam #切换到新用户

3.安装steamcmd下载steamcmd(点击下载)压缩包,上传到steam用户目录下

1tar -zxvf steamcmd_linux.tar.gz -C /opt/steam/steamcmd #解压文件到steamcmd目录

4.安装ARK游戏

tips:如果在steamcmd中输错了,发现退格键没用,变成了^H,此时按住ctrl再按退格就能删除了

1234567mkdir /opt/steam/ark #创建文件夹,用于存放ARK服务端文件cd /opt/steam/steamcmd #切换到steamcmd的目录./steamcmd.sh #启动SteamCMDforce_install_dir /opt/steam/ark #指定ARK服务端安装路径login anonymous #匿名登录app_update 376030 validate #安装ARK,"376030"是ARK专用服务器的AppID,"validate"选项用于确保文件完整性exit #退出

以上就是游戏服务端的安装了,接下来就是要使用MCSM面板对游戏进行很方便的配置管理工作

面板安装及使用首先先来回答一个问题,为什么要用这个面板。换句话来说用它有什么好处,我来说一下好处。配置好了之后每次只需要访问web页面就能对游戏进行方便的管理,不用每次都用ssh连接,对着命令行敲指令。无论是上传文件还是编辑文件都会很方便直观。

1.MCSM面板安装十分简单,一键安装 悄悄话

要是安装都能像这样这么简单多好🤯

推荐切换成root用户安装,普通用户的话容易出现权限问题。由于上面还是steam用户,而steam用户不具备sudo权限,所以需要先切回之前的用户,再执行下面的命令才能成功。

12sudo su - #切换成root用户(可选)sudo su -c "wget -qO- https://script.mcsmanager.com/setup_cn.sh | bash"

如果服务器上有防火墙,需要开放 23333 和 24444 这两个端口。如果是云服务器,去云服务器的管理页面把这两个端口打开就行了。如果是家用服务器,不仅开服的这个主机的防火墙的端口要打开,路由器上的防火墙的端口也要打开。

2.面板配置在浏览器地址栏输入:服务器ip地址:23333 回车,就能进入MCSM的欢迎页面了,创建一个用户,接下来就可以使用了。

进入面板之后,按照图片提示,点击应用实例,然后新建应用

选择Steam游戏服务器

选择localhost主机

选择现有目录

实例名称自己发挥,服务端文件目录跟着图片填写

点击进入创建好的应用实例

页面往下翻,找到文件管理

如果出现和下图一样的文件列表,那就说明配置完成了

3.启动文件此时万事俱备,只欠东风。就差一个启动文件,来启动服务器就行了

我们只需要在Windows桌面上新建一个文本文档,将其文件名改为start.sh,再在其中写入如下启动参数(示例)

12#! /bin/bash./ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?SessionName=ARK?Port=7777?QueryPort=27015?MaxPlayers=50?ServerPassword=123456789?ServerAdminPassword=123456789?ServerCrosshair=true?AllowThirdPersonPlayer=true?ShowMapPlayerLocation=true -log -crossplay

启动参数详情

TheIsland:孤岛地图。

SessionName=ARK:设置游戏会话的名称为”ARK”。

Port=7777:设置游戏服务器的端口为7777。

QueryPort=27015:设置查询端口为27015,用于获取服务器信息。

MaxPlayers=50:设置最大玩家数为50。

ServerPassword=123456789:设置玩家加入服务器时需要的密码。

ServerAdminPassword=123456789:设置管理员密码,用于管理服务器。

ServerCrosshair=true:启用屏幕上的准星。

AllowThirdPersonPlayer=true:允许玩家使用第三人称视角。

ShowMapPlayerLocation=true:在地图上显示玩家的位置。

-server:启动为服务器模式。(已弃用)

-log:启用服务器日志记录。

-crossplay:允许跨平台游戏,支持与其他版本(例如主机版)联机。

地图及内存占用

Map

Level name

Memory usage on an empty map

The Island

TheIsland

3.5-4.5 GiB

The Center

TheCenter

3-4 GiB

Scorched Earth

ScorchedEarth_P

3-4 GiB

Ragnarok

Ragnarok

4-5 GiB

Aberration

Aberration_P

3-4 GiB

Extinction

Extinction

3-4 GiB

Valguero

Valguero_P

3-4 GiB

Genesis: Part 1

Genesis

5-6 GiB

Crystal Isles

CrystalIsles

5.5-6.5 GiB

Genesis: Part 2

Gen2

10-12.5 GiB

Lost Island

LostIsland

5.5-7 GiB

Fjordur

Fjordur

4-5 GiB

然后根据图片提示,将其上传到实例的/目录下,上传完成后,可以在这个界面找到这个文件,此时的文件可能是没有执行权限的,右侧有更改文件权限的设置,将执行权限勾上即可

回到实例界面,点击应用实例设置

再将sudo -u steam ./start.sh填入启动命令(下图仅供参考,根据本行填写)

最后回到实例界面,点击开启,即会启动服务器

之后对于服务器的开关操作都可以通过这个面板来操作,甚至修改一些采集、孵化倍率也可以通过面板的文件管理,找到对应文件之后在线编辑直接修改,多摸索摸索就会慢慢熟练了。

联机记得服务器的启动文件里有这两个参数Port=7777、QueryPort=27015吗,这是我们需要开启的两个端口,最好再加上一个7778端口。这几个端口都是udp协议,开启之后才能联机,记得在防火墙中打开。

实现联机的方式有很多种,具体教程我就不做详细介绍了。因为每个人的网络环境、所拥有的条件都不同,有的人有动态公网ipv4,有的有动态ipv6,有的两个都没有,总之会遇到各种各样的问题。网上也有很多关于这个的教程,可以根据我的提示,来看看自己是属于哪种情况,可以去找相应的教程。

村长(指作者本人)实现联机的方法是wireguard + 公网ipv6。

有公网ip

购买云服务器的用户可以直接通过服务商给的公网ip:端口号的方式联机

如果家里能申请到动态公网ipv4,只需要路由器做个DDNS解析,通过域名:端口号来联机

只要是办理了宽带一般都是会有动态公网ipv6的,但是这个不知道是steam还是ark这个游戏对这个支持不太好,不能直接联机,可以通过wireguard、zerotier等来组建虚拟局域网来实现联机

无公网ip

可以通过一些提供frp服务的服务商来做内网穿透实现联机。

至此,本篇ARK服务器搭建教程就结束了。接下来,希望开好服务器的大家,可以好好享受游戏带来的快乐。(*^︹^*)