本指南介绍如何在 Legion Hosting 上设置 Foundry 专用服务器、配置启动变量、编辑服务器设置文件、设置世界生成、连接服务器以及管理存档和备份。Foundry 是一款基于体素的工厂建造游戏,玩家可以采集资源、建造自动化生产线,并在程序生成的世界中扩展大型工厂。有关管理员控制、玩家管理和故障排除,请参阅 Foundry 管理员与服务器管理。
1. 首次启动
- 登录 GPanel 并选择您的 Foundry 服务器。
- 转到 Startup 选项卡,查看可配置的变量(参见第 2 节中的表格)。
- 将 SERVER_NAME 设置为您的服务器名称。该名称将显示在 Steam 服务器浏览器中。
- 如果要限制访问,请设置 SRV_PW。留空则为公开服务器。
- 可选择设置 MAP_SEED 来控制世界生成。留空则使用随机种子。
- 返回 Console 选项卡并点击 Start。
- 等待控制台确认服务器已启动。首次启动可能需要几分钟,因为服务器需要生成世界并创建初始配置文件。
App.cfg 或其他配置文件,请先启动服务器一次,等待加载完成后再停止并编辑。这些文件在首次运行前不会存在。
2. GPanel 启动变量
以下变量可在 GPanel Startup 选项卡中设置。这些变量会在每次启动时传递给服务器。
| 变量 | 必填 | 描述 |
|---|---|---|
SERVER_NAME |
是 | 显示在 Steam 服务器浏览器中的名称。 |
SRV_PW |
否 | 玩家加入时需要输入的可选密码。留空则为公开服务器。 |
MAX_PLAYERS |
否 | 最大同时在线玩家数。默认为 32。 |
MAP_SEED |
否 | 世界生成种子编号。使用相同的种子可重新创建相同的地形。留空则生成随机世界。 |
WORLD_NAME |
否 | 世界/存档文件夹的名称。默认为 MyFoundry。更改此值会创建新世界。 |
PUBLIC_SERVER |
否 | 服务器是否显示在 Steam 服务器浏览器中。设置为 true 或 false。默认为 true。 |
3. 服务器配置文件
对于启动变量之外的高级设置,您可以直接编辑服务器配置文件。在修改之前请先停止服务器。
文件位置
App.cfg
使用 GPanel 中的 Files 选项卡或通过 SFTP 连接来打开此文件。该文件使用简单的 key=value 格式,每行一个设置。如果文件不存在,请启动并停止服务器一次以生成该文件。
App.cfg。在服务器运行期间所做的更改要到下次重启后才会生效。
App.cfg 中的关键设置
| 设置 | 默认值 | 描述 |
|---|---|---|
server_name |
My Server |
显示在 Steam 服务器浏览器中的服务器名称。 |
server_password |
(空) | 加入服务器所需的密码。为空表示公开。 |
server_world_name |
MyFoundry |
世界/存档文件夹名称。每个唯一名称会创建一个单独的世界,拥有独立的存档数据。 |
server_max_players |
32 |
服务器允许的最大同时在线玩家数。 |
server_is_public |
true |
控制服务器是否在 Steam 服务器浏览器中列出。 |
server_port |
3724 |
游戏端口。由 GPanel 管理——除非支持人员指示,否则请勿更改。 |
server_query_port |
27015 |
用于服务器浏览器列表的 Steam 查询端口。由 GPanel 管理。 |
map_seed |
(随机) | 程序化世界生成的种子编号。使用任意整数值。相同的种子始终生成相同的地形布局。 |
autosave_interval |
300 |
自动保存间隔(秒)。默认为 300(5 分钟)。设置为 0 可禁用自动保存。 |
pause_server_when_empty |
true |
当没有玩家连接时暂停游戏世界。设置为 false 可让工厂全天候运行。 |
配置示例
server_name=My Legion Factory
server_password=
server_world_name=MyFoundry
server_max_players=16
server_is_public=true
server_port=3724
server_query_port=27015
map_seed=48293175
autosave_interval=300
pause_server_when_empty=true
server_port 和 server_query_port 由 GPanel 分配,必须与您分配的端口匹配。更改它们将导致玩家无法连接,服务器也无法在浏览器中显示。
4. 世界生成
Foundry 使用程序化世界生成来创建其体素地形。世界通过种子编号生成,该种子决定了地形、矿物沉积和生物群落的布局。
地图种子
- 在
App.cfg中设置map_seed值,或在启动变量中设置MAP_SEED为任意整数。 - 使用相同的种子始终会生成相同的世界布局,如果您想与他人分享特定世界或在重置后重新创建世界,这非常有用。
- 将种子留空或完全省略,让服务器生成随机世界。
- 种子仅影响初始世界生成。在现有世界上更改种子不会产生任何效果——您必须创建新世界(更改
server_world_name)才能使新种子生效。
世界名称与多世界管理
server_world_name 设置决定服务器使用哪个存档文件夹。您可以通过切换不同的世界名称来维护多个世界:
- 每个唯一的
server_world_name会创建一个单独的世界,拥有独立的存档数据、工厂状态和玩家进度。 - 要切换世界,请停止服务器,在
App.cfg中更改server_world_name,然后重新启动。 - 之前的世界会被保留,可以通过切换回其名称再次加载。
空服时暂停
pause_server_when_empty 选项控制当没有玩家在线时您的工厂是否继续运行:
- true(默认) ——当所有玩家断开连接时世界暂停。工厂停止生产,资源停止消耗。有助于节省服务器资源并保持游戏状态可预测。
- false ——工厂全天候运行。生产线继续运作,资源持续积累,即使没有人在玩,世界也会继续推进。可能会增加服务器资源使用量。
5. 如何连接
方式 A —— Steam 服务器浏览器
- 启动 Foundry。
- 在主菜单中选择 Multiplayer。
- 点击 Join Game 打开服务器浏览器。
- 使用搜索栏按名称查找您的服务器。
- 选择您的服务器并点击 Join。如果设置了密码,请输入服务器密码。
方式 B —— 直接连接
- 启动 Foundry。
- 在主菜单中选择 Multiplayer。
- 选择 Direct Connect 选项。
- 输入 GPanel Network 选项卡中显示的服务器 IP 地址和端口:
<your-server-ip>:<port> - 如果提示输入密码,请输入服务器密码并点击 Connect。
6. 存档管理
自动保存
服务器按照 App.cfg 中 autosave_interval 指定的间隔自动保存(默认:每 300 秒/5 分钟)。Foundry 的自动保存是无感的,对大多数工厂规模不会造成明显的延迟。
存档文件位置
存档文件存储在服务器上 App.cfg 中 server_persistent_data_override_folder 指定的路径。默认路径为:
serverfiles/
此目录包含完整的世界状态,包括地形修改、放置的建筑物、工厂机器、传送带和玩家库存。
通过 SFTP 手动备份
- 从 GPanel 停止服务器以确保所有数据已写入磁盘。
- 通过 SFTP 连接到您的服务器。请参阅 如何通过 SFTP 上传文件 获取说明。
- 下载您世界的整个存档目录(例如
serverfiles/)。 - 将备份存储在您计算机上的安全位置。
恢复存档
- 从 GPanel 停止服务器。
- 通过 SFTP 连接并导航到
serverfiles/目录。 - 上传您备份的世界目录,替换现有目录。
- 确保文件夹名称与
App.cfg中的server_world_name匹配。 - 从 GPanel 启动服务器。服务器将加载恢复的存档。
7. 性能优化建议
Foundry 是一款工厂建造游戏,服务器性能直接受工厂复杂度影响。随着工厂的增长,请牢记以下建议:
- 工厂复杂度: 大量的机器、传送带和物流网络会增加服务器 tick 负载。如果您注意到延迟,请考虑整合或优化生产链。
- 区块加载: 服务器会处理所有已加载的区块。分布在地图各处的更多活跃工厂区域意味着需要模拟更多区块。保持工厂紧凑可减少服务器需要跟踪的区块数量。
- 玩家数量: 更多的在线玩家意味着每个玩家周围需要加载更多区块。如果性能在多人时下降,请考虑减少
server_max_players。 - 自动保存频率: 在大型世界上非常频繁的自动保存(低于 60 秒)可能会导致周期性卡顿。默认的 300 秒通常足够,但如果需要可以增加。
- 空服时暂停: 启用
pause_server_when_empty=true可以在没有人游玩时防止不必要的模拟,这有助于在活跃游戏期间保持一致的性能。
相关文章
需要帮助?
如果您遇到本指南未涵盖的 Foundry 服务器问题,提交支持工单,并附上您的服务器 IP、问题描述以及 GPanel 控制台中的相关错误消息。