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 私服需求,开启你的专属海盗冒险世界。

相关推荐
SelectDB4 小时前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
两个人的幸福1 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php
zzzzzz3102 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220702 天前
如何搭建本地yum源(上)
运维
BingoGo4 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack4 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户3074596982074 天前
PHP 扩展——从入门到理解
php
鹏仔先生5 天前
拷贝漫画APP下载页PHP程序,后台带免费AI写作
php
大树885 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai