环境
阿里云服务器,CentOS 7.7 64位, 2核CPU,4G内存,4G交换空间
交换空间配置
开服准备
创建用户并设置密码
1 | adduser arkserver |
开放以下端口
1 | 7777/udp |
PS:云服务器一般是在安全组规则中设置放行
同时关闭系统自带的防火墙(root用户执行service firewalld stop
)
(可选)使用原始套接字连接
安装完成后,开放端口:7778/udp
(游戏端口号+1)
并在arkserver.cfg
中添加启动参数?bRawSockets
,例如:
1 | fn_parms(){ |
修改文件描述符限制
1 | echo "fs.file-max=100000" >> /etc/sysctl.conf |
1 | echo "* soft nofile 1000000" >> /etc/security/limits.conf |
切换用户
1 | su - arkserver |
下载并运行一键安装脚本
1 | wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh arkserver |
PS:如果访问raw.githubusercontent.com
经常出错,可修改hosts文件(/etc/hosts
),添加以下内容(root用户)
1 | 199.232.4.133 raw.githubusercontent.com |
运行安装文件
1 | ./arkserver install |
一路回车即可。
安装过程中可能出现的问题
出现 ERROR、FAIL
一般是网络问题导致的下载失败,删除报错的脚本后重新执行./dstserver install
依赖程序包缺失
表现为check_deps.sh执行时,出现红字
使用yum命令安装缺失程序包即可
如:
1 | yum install python3 jq -y |
之后再次执行./arkserver install
建立SteamCMD软链接失败
如ln: failed to create symbolic link '~/serverfiles/Engine/Binaries/ThirdParty/SteamCMD/Linux': No such file or directory
建议再次执行./arkserver install
尝试
也可手动安装SteamCMD,见文章最末尾
开服相关
编辑配置文件
可通过编辑Game.ini
和GameUserSettings.ini
文件(位于/home/arkserver/serverfiles/ShooterGame/Saved/Config/LinuxServer
)修改服务器配置
笔者直接复制PC端...\steamapps\common\ARK\ShooterGame\Saved\Config\WindowsNoEditor
文件夹下的这两个文件到服务器上
设置加入服务器密码和管理员密码
在GameUserSettings.ini
文件[ServerSettings]
下添加:
1 | ServerPassword=123456 |
在游戏内按Tab调出控制台,输入enablecheats 管理员密码
启动作弊模式
之后输入指令即可(如cheat fly
)
修改服务器名称:
GameUserSettings.ini
文件中添加:
1 | [SessionSettings] |
更多配置参数可查看官方wiki: Server Configuration
更换地图
lgsm/config-lgsm/arkserver/arkserver.cfg
文件添加一行:
1 | defaultmap="MAP_NAME_HERE" |
MAP_NAME_HERE
替换成地图名
地图名:
1 | TheIsland |
设置人数
lgsm/config-lgsm/arkserver/arkserver.cfg
文件添加一行:
1 | maxplayers=10 |
其他配置
修改端口号(以1234为例):
添加
1 | port=1234 |
设置启动时自动更新
添加
1 | updateonstart="on" |
关闭反作弊(BattleEye)
在arkserver.cfg
中增加启动参数-NoBattlEye
:
1 | fn_parms(){ |
更多配置可参考/home/arkserver/lgsm/config-lgsm/arkserver/_default.cfg
文件,将需要修改的内容添加进arkserver.cfg
即可
启动服务器
1 | ./arkserver start |
PS:启动服务器需要时间,耐心等待。
停止服务器
1 | ./arkserver stop |
更新服务器版本
1 | ./arkserver update |
加入服务器
手动收藏
打开steam主窗口,左上角视图
-服务器
(如图所示)
在收藏夹
中点击添加服务器
,输入地址后点击在此地址上寻找游戏
,将选定的游戏添加到收藏夹
,然后连接
即可。
之后可直接在游戏内通过收藏夹连接。
通过steam快捷方式连接
建立.bat文件(1.2.3.4
替换为ip地址或域名,多个地图需要指定端口):
1 | start steam://connect/1.2.3.4 |
mod安装
1.自动从创意工坊下载并安装
编辑Game.ini
文件,增加ModInstaller
属性(从而自动下载并安装mod):
1 | [ModInstaller] |
编辑GameUserSettings.ini
文件,[ServerSettings]
下,ActiveMods
字段:
1 | ActiveMods=[workshopID],[workshopID],[workshopID],[workshopID] |
最后重启服务器:
1 | ./arkserver restart |
2. 手动安装(可能会安装失败,建议使用方法1)
把PC上steamapps\common\ARK\ShooterGame\Content\Mods
下对应的modID文件夹和.mod文件
复制到/home/arkserver/serverfiles/ShooterGame/Content/Mods
下,再编辑GameUserSettings.ini
文件,[ServerSettings]
下,ActiveMods
字段,重启服务器即可
PS:mod安装也需要时间,耐心等待
其他内容
手动安装SteamCMD
未正常安装SteamCMD,会导致无法自动下载并安装MOD,且无法更新服务器版本。
检查/home/arkserver/serverfiles/Engine/Binaries/ThirdParty/SteamCMD
下是否有Linux文件,如果没有,则
先依次建立对应文件夹,再执行以下命令进行下载,并建立软链接:
1 | cd ~ |
查看端口占用
1 | netstat -atunp | grep ShooterGame |
查询开服情况脚本
注:需根据开服端口替换port变量
1 | #!/usr/bin/python3 |
参考
Ark Survival Evolved - LinuxGSM_
Dedicated_Server_Setup#Linux
Server_Configuration