服务器的搭建以 Ubuntu 系统为例,其他系统的搭建方法类似,只是包管理工具不同。
开一个地图大概需要4G左右的内存,游戏占用硬盘空间大约10G。
教程需要用到steamcmd,这是一个通过命令行操作steam的工具,注意arm架构cpu无法使用steamcmd,所以树莓派无法使用。
更新/安装必须环境:
1 | sudp apt update -y |
安装方舟服务器文件
修改进程最大文件读取设置(需要有一定的vim知识,也可以使用更简单的nano):
1 | echo "fs.file-max=100000" >> /etc/sysctl.conf |
创建一个文件夹,下载安装SteamCMD安装包:
1 | mkdir ~/steamcmd |
这时候Steam文件夹内应该会有Linux32文件夹和steamcmd.sh脚本了,这个脚本就是steamcmd工具
开始安装服务器文件:
1 | 创建Ark文件夹用于安装服务器文件 |
编辑安装与运行脚本 install_ark_servers.sh
1 | vim ~/install_ark_servers.sh |
以下是写入 install_ark_servers.sh 的内容
1 | #!/bin/bash |
给脚本增加可执行权限
1 | chmod u+x ~/install_ark_servers.sh |
执行文件,就可以自动安装、更新服务器了。
1 | ~/install_ark_servers.sh |
安装完方舟服务器后,进入游戏目录,创建启动脚本
1 | cd ~/Ark/ShooterGame/Binaries/Linux |
在 server_start.sh 文件中输入以下内容
1 | ! /bin/bash |
其中 ark是screen后台进程名,TheIsland是地图名,Save1是存档名。
执行 server_start.sh 脚本即可运行方舟服务器。
1 | sh ~/Ark/ShooterGame/Binaries/Linux/server_start.sh |
大概五分钟后,等服务器内存占用稳定了就可以在steam搜到了
- 停止服务器命令
1
screen -S ark -X quit
后续升级服务器版本只需要把 install_ark_servers.sh 脚本运行一遍就行了,
Steamcmd会自动进行更新而不是重装。
server_start.sh 命令行语法
server_start.sh 的语法规则如下:
1 | <启动器路径> <地图名>?listen[?<选项>=<数值>][?<选项>=<数值>]...[?<选项>=<数值>] -UseBattleye [<其他参数>] |
在地图名后以”?”分隔选项,大多数选项都需要一个值参数。有关更多详细信息,请参阅下面的选项参考。
如果未指定选项,则会自动使用其默认值。
例如,要启动一个服务器,该服务器:
- 向每个玩家显示十字准心
- 在地图上显示每个玩家的位置
- 允许玩家以第三人称视角观看自己
- 强制由不同玩家和部落建立的玩家结构之间的最小距离
- 启用BattlEye
在Linux主机上的 server_start.sh 内容为:
1 | ./ShooterGameServer TheIsland?Server?Crosshair=True?MapPlayerLocation=True?AllowThirdPersonPlayer=True?MaxStructuresInRange=100 -UseBattlEye |
详细选项见Linux 搭建方舟 生存进化服务器教程(2)中提到。
注意
- 方舟开服比较吃内存,不太吃cpu,内存小于4G就不要尝试了。
- 需要有公网ip,没有公网ip的可以采用内网穿透,将端口映射到公网ip上。
此外,具体的服务器设置我会在Linux 搭建方舟 生存进化服务器教程(2)中提到。
但是方舟游戏很大,配置也无穷无尽,我只做官方文档的翻译工作,不会每一条配置都进行说明。