ATLAS MMO 专用服务器搭建教程:海盗生存 MMO 服务器开服指南

ATLAS MMO 专用服务器搭建教程:海盗生存 MMO 服务器开服指南

ATLAS 是一款基于 ARK: Survival Evolved 同款引擎打造的大型海盗题材生存 MMO 游戏,支持通过网格地图(Grid)实现超大规模世界。本文详细介绍如何通过 SteamCMD 搭建 ATLAS 单格(1×1)私服,涵盖 SteamCMD 安装、ServerGrid.json 配置、GameUserSettings.ini 调整、systemd 服务管理及管理员命令全流程。

前置要求

  • 操作系统:Ubuntu 22.04 LTS 或 Debian 12
  • 拥有 ATLAS 正版授权(Steam 账号)
  • 基本 Linux 命令行操作能力
  • 了解基本的网络端口配置

服务器配置

ATLAS 服务器内存占用较高,单格地图至少需要 4GB 内存,多格地图每增加一格需要额外 4GB 左右内存。

推荐使用 雨云服务器 rainyun-com 部署,注册填优惠码 2026off 领 5 折,8 核 16GB 机型(单格地图需要约 4GB 内存,推荐大内存)能为 ATLAS 私服提供充足资源,保证多人联机的流畅体验。

配置建议:

资源 建议规格
CPU 8 核
内存 16 GB
硬盘 50 GB SSD
带宽 20 Mbps+

安装 SteamCMD

bash 复制代码
# 安装 32 位兼容库
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 wget curl unzip

# 创建专用用户
sudo useradd -m -s /bin/bash steam
sudo su - steam

# 下载并解压 SteamCMD
mkdir ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz

# 初始化 SteamCMD
./steamcmd.sh +quit

下载 ATLAS 专用服务器

ATLAS Dedicated Server 的 SteamCMD App ID 为 1006030

bash 复制代码
# 下载 ATLAS 专用服务器(约 15--20 GB)
~/steamcmd/steamcmd.sh \
  +login YOUR_STEAM_USERNAME \
  +force_install_dir /home/steam/atlas \
  +app_update 1006030 validate \
  +quit

# 确认下载完成
ls /home/steam/atlas/

配置 ServerGrid.json(单格地图)

ATLAS 使用 ServerGrid.json 定义世界地图网格。单格(1×1)配置是私服的最简单方案:

bash 复制代码
mkdir -p /home/steam/atlas/ShooterGame/Saved/Config/LinuxServer
nano /home/steam/atlas/ShooterGame/Content/ServerGrid.json

写入单格地图配置:

json 复制代码
{
  "TotalGridsX": 1,
  "TotalGridsY": 1,
  "ServerFriendlyName": "My ATLAS Server",
  "SelectedWorldPattern": "PiratesOfTheCaribbean",
  "MapImageURL": "",
  "TileURLTemplate": "",
  "AuthServerIPAddress": "",
  "IslandSharingBroken": false,
  "SeamlessDataPort": 27015,
  "GridSize": 1400000.0,
  "OceanWaterHeight": 22.0,
  "Servers": [
    {
      "ip": "YOUR_SERVER_IP",
      "port": 5755,
      "portSteamQueryPort": 57561,
      "MachineIdTag": "MyAtlasServer",
      "ServerCustomDatas1": "",
      "ServerCustomDatas2": "",
      "islandPoints": [],
      "islandInstances": [
        {
          "islandName": "Island_WE_DesertHighlands_C",
          "location": { "x": 700000, "y": 700000 },
          "rotation": 0.0
        }
      ],
      "extraIslandCounts": {},
      "gridX": 0,
      "gridY": 0
    }
  ]
}

配置 GameUserSettings.ini

bash 复制代码
nano /home/steam/atlas/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini

写入以下配置:

ini 复制代码
[/Script/ShooterGame.ShooterGameUserSettings]
MasterAudioVolume=1.000000
MusicAudioVolume=0.800000

[ServerSettings]
ServerName=My ATLAS Private Server
ServerPassword=YourServerPassword
ServerAdminPassword=YourAdminPassword
MaxPlayers=50

# 游戏难度
DifficultyOffset=1.0
OverrideOfficialDifficulty=5.0

# 资源倍率(私服友好设置)
HarvestAmountMultiplier=3.0
ResourcesRespawnPeriodMultiplier=0.5
XPMultiplier=3.0
TamingSpeedMultiplier=5.0

# 驯养设置
AllowFlyerCarryPvE=True
PreventOfflinePvP=True

# 网络设置
Port=5755
QueryPort=57561

# 世界设置
DayTimeSpeedScale=1.0
NightTimeSpeedScale=1.0
WaterDamageIntervalMultiplier=1.0

[SessionSettings]
SessionName=My ATLAS Private Server

[/Script/Engine.GameSession]
MaxPlayers=50

配置 Game.ini

bash 复制代码
nano /home/steam/atlas/ShooterGame/Saved/Config/LinuxServer/Game.ini

写入基础配置:

ini 复制代码
[/script/shootergame.shootergamemode]
# 经验倍率
bPassiveDefenseMode=False
MaxNumberOfPlayersInTribe=50

# 航行设置
ShipDamageMultiplier=1.0
ShipTankCapacityMultiplier=1.0

# 战斗设置
PvPZoneStructureDamageMultiplier=6.0

# 食物/水分消耗
PlayerCharacterFoodDrainMultiplier=0.5
PlayerCharacterWaterDrainMultiplier=0.5
PlayerCharacterStaminaDrainMultiplier=0.7

创建启动脚本

bash 复制代码
cat > /home/steam/atlas/start_atlas.sh << 'EOF'
#!/bin/bash
cd /home/steam/atlas

./ShooterGame/Binaries/Linux/ShooterGameServer \
  "Ocean?ServerX=0?ServerY=0?AltSaveDirectoryName=MyAtlas?ServerAdminPassword=YourAdminPassword?Port=5755?QueryPort=57561?SessionName=MyAtlasServer?MaxPlayers=50" \
  -server \
  -NoTransferFromFiltering \
  -forcerespawndinos \
  -ServerGridX=0 \
  -ServerGridY=0 \
  -lowmemory \
  -nosteamclient \
  -game \
  -log
EOF

chmod +x /home/steam/atlas/start_atlas.sh

配置防火墙

bash 复制代码
# ATLAS 游戏端口
sudo ufw allow 5755/udp
sudo ufw allow 5756/udp

# Steam 查询端口
sudo ufw allow 27015/tcp
sudo ufw allow 57561/udp

# 重载防火墙
sudo ufw reload
sudo ufw status

创建 systemd 服务

bash 复制代码
sudo nano /etc/systemd/system/atlas.service

写入以下内容:

ini 复制代码
[Unit]
Description=ATLAS MMO Dedicated Server
After=network.target
Documentation=https://store.steampowered.com/app/834910/ATLAS/

[Service]
Type=simple
User=steam
WorkingDirectory=/home/steam/atlas
ExecStart=/home/steam/atlas/start_atlas.sh
Restart=on-failure
RestartSec=30
StandardOutput=journal
StandardError=journal
SyslogIdentifier=atlas
# 内存限制(防止 OOM)
MemoryMax=14G
# 给足启动时间
TimeoutStartSec=300

[Install]
WantedBy=multi-user.target

启用并启动服务:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable atlas
sudo systemctl start atlas

# 查看运行状态(启动约需 3--5 分钟)
sudo systemctl status atlas

# 实时日志
sudo journalctl -u atlas -f

通过 Steam 服务器浏览器连接

ATLAS 需要通过 Steam 服务器浏览器连接:

  1. 打开 Steam 客户端,选择「查看」→「服务器」
  2. 点击「添加服务器」,输入 YOUR_SERVER_IP:57561
  3. 右键点击服务器,选择「连接」
  4. 在 ATLAS 游戏中选择「加入游戏」或从 Steam 服务器浏览器直连

管理员命令

在游戏中按 Tab 键打开控制台,输入管理员密码后执行命令:

复制代码
enablecheats YourAdminPassword     // 激活管理员权限

// 玩家管理
kickplayer [SteamID]               // 踢出玩家
banplayer [SteamID]                // 封禁玩家
listplayers                        // 列出所有玩家

// 物品生成
giveitem "Blueprint'/Game/PrimalEarth/CoreBlueprints/Items/..." 1 1 false

// 传送
teleport                           // 传送到看向的位置
tpcoords [x] [y] [z]              // 传送到坐标

// 船只指令
summon Raft_C                      // 生成筏子
summon Sloop_C                     // 生成单桅帆船

// 环境控制
setweather clear                   // 设置天气为晴
settimeofday 12:00                 // 设置时间

// 服务器管理
saveworld                          // 立即保存
quit                               // 关闭服务器

ServerGrid Editor 工具

如需配置多格地图,可使用官方 ServerGrid Editor 工具:

bash 复制代码
# 在 Windows 客户端上使用 ServerGrid Editor
# 下载地址:https://store.steampowered.com/app/834910/
# 工具功能:
# - 可视化编辑地图网格
# - 配置岛屿位置和类型
# - 设置服务器间传送点
# - 导出 ServerGrid.json 配置文件

服务器更新脚本

bash 复制代码
cat > /home/steam/update_atlas.sh << 'EOF'
#!/bin/bash
echo "[$(date)] 停止 ATLAS 服务器..."
sudo systemctl stop atlas

echo "[$(date)] 备份存档..."
BACKUP_DIR="/home/steam/atlas_backup_$(date +%Y%m%d_%H%M%S)"
mkdir -p "$BACKUP_DIR"
cp -r /home/steam/atlas/ShooterGame/Saved "$BACKUP_DIR/"
echo "存档已备份至 $BACKUP_DIR"

echo "[$(date)] 更新服务器文件..."
/home/steam/steamcmd/steamcmd.sh \
  +login YOUR_STEAM_USERNAME \
  +force_install_dir /home/steam/atlas \
  +app_update 1006030 validate \
  +quit

echo "[$(date)] 启动 ATLAS 服务器..."
sudo systemctl start atlas
echo "[$(date)] 更新完成!"
EOF

chmod +x /home/steam/update_atlas.sh

单人友好设置

如果主要为少数玩家或单人游戏使用,可调整以下参数以降低难度:

ini 复制代码
[ServerSettings]
# 高倍率让进展更快
HarvestAmountMultiplier=5.0
XPMultiplier=5.0
TamingSpeedMultiplier=10.0
ResourcesRespawnPeriodMultiplier=0.3

# 减少食物消耗
PlayerCharacterFoodDrainMultiplier=0.3
PlayerCharacterWaterDrainMultiplier=0.3

# 关闭 PvP
ServerHardcore=False
AllowPvP=False
PreventOfflinePvP=True

常见问题排查

服务器启动耗时过长:

  • ATLAS 首次启动需要生成世界数据,约 5--10 分钟属正常
  • 通过 sudo journalctl -u atlas -f 监控启动进度

内存不足(OOM):

bash 复制代码
# 查看内存使用
free -h
# 启用 swap 作为补充
sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

玩家无法连接:

  • 确认 5755/5756 UDP 和 27015/57561 端口已开放
  • 检查 ServerGrid.json 中的 IP 地址是否正确

总结

通过本教程,你已完成 ATLAS MMO 单格私服的完整搭建,包括 SteamCMD 安装、ServerGrid.json 网格配置、GameUserSettings.ini 调整、启动脚本编写及 systemd 服务管理。ATLAS 服务器内存需求较高,推荐使用 雨云服务器 rainyun-com ,注册填优惠码 2026off 领 5 折,8 核 16GB 机型(单格地图需要约 4GB 内存,推荐大内存)完全满足 ATLAS 私服需求,开启你的专属海盗冒险世界。

相关推荐
ThinkPet1 小时前
记事-vue3项目部署Jenkins实现CICD流程
运维·nginx·jenkins·jenkinsfile·cicd流水线
j_xxx404_1 小时前
Linux 线程同步硬核解析:从条件变量、阻塞队列到信号量环形队列
linux·运维·服务器·c++·人工智能·ai·中间件
右耳朵猫AI1 小时前
PHP技术周刊 2026年第20周
开发语言·php
minji...2 小时前
Linux高级IO(五)epoll 的两种工作模式(LT/ET),多路转接之epoll版本的TCP服务器,对比 select/poll/epoll
linux·运维·服务器·epoll·epoll的工作模式·selectpollepoll·水平触发边缘触发
JP-Destiny2 小时前
docker报错-无法解析 registry-1.docker.io
运维·docker·容器
想你依然心痛2 小时前
HarmonyOS 6(API 23)智能体驱动的沉浸式AR城市地下管网运维中心
运维·ar·harmonyos·智能体
逸Y 仙X2 小时前
文章六:ElasticSearch 集群通信安全权限
java·大数据·服务器·elasticsearch·搜索引擎·全文检索
feng14562 小时前
OpenSREClaw - 一切始于风险洞察报告
运维
零壹AI实验室2 小时前
AI发现潜伏18年的NGINX高危漏洞:CVE-2026-42945完整技术分析
运维·人工智能·nginx