切换语言: Deutsch English 日本語 Українська

地图结构

From Official Factorio Wiki
Jump to navigation Jump to search

地图结构描述了划分游戏世界的标准:格(tile)和区块(chunk)。格是游戏地图的基本构成单元,是测量距离和面积的单位。区块则是一个32×32格的区域,用于各种基于面积的计算。

游戏中的网格视图,区块(32×32格)以粗边框表示。(点击放大图像)

关于可放置的地格实体,请参见地格

是一个正方形区域,定义了游戏世界中的最小面积,游戏地图就是基于格所组成的网格建立的。格是游戏中所有面积和长度测量的基准。实体的大小以格为单位定义,例如:火箭发射井 - 游戏中最大的实体 - 宽9格,高9格,通常记为9×9。因此,实体可能的最小尺寸是1格,即1×1,例如基础传送带箱子都是这个尺寸。

将格视为长度单位时,面积的单位实际上是"平方格"(格²)。但在玩家社区中通常将面积也简称为"格",或者略有区别的"地格"。

地图的最大尺寸为每边长2千万格的正方形,其中包含40万亿格。在实际游戏中,地图一般包含数十万到数百万格。

对齐网格

几乎所有可放置实体在游戏中都是自动对齐网格放置的。少数例外包括地雷汽车坦克内燃机车车厢等载具。不与网格自动对齐的非可放置实体包括敌人树木和地面装饰。

一些不会自动对齐网格的可放置实体,图中显示了汽车、坦克和地雷。

距离示例

  • 雷达探测的区域:约200格长(每个方向100格,其边界与区块对齐)。
  • 在没有速度加成(例如装备外骨骼模块)的情况下,玩家跑过1000格的距离需要大约1分52秒。

与现实世界类比

通常认为游戏中的1格(面积)约等于1平方米。这个测量已在技术上被证明是正确的,可以在游戏中验证。通过汽车进行的测试显示,以208.0千米/小时(57.777米/秒)的速度通过250格的距离需要260刻(4.333秒)。根据这些数据,可以证明57.777 米/秒 ÷ (250 格 / 4.333 秒) ≈ 1 米/格

区块

雷达扫描区块的动画

区块是一个用于划分地图的单位。每个区块由32×32格(合计1024格)组成,通常也被简称为"块"。

一些游戏机制基于区块运作:

  • 在游戏过程中,地图会按区块逐个生成。每位玩家周围20个区块范围内的地图会随时间推移缓慢生成,如果区块被直接探测到且尚未生成,则该区块内的地图会立即生成。
  • 玩家雷达机器人指令平台蜘蛛机甲以及远程发射的重炮炮弹会以区块为单位探测地图,并在远程视图中实时更新
  • 污染孢子是以区块为单位进行计算和扩散的(这可能导致未探测的区块提前生成)。
  • 敌人的扩张以区块为单位计算。
  • 撼地虫的领地以区块为单位进行对齐。
  • 敌人的路径规划分为多个阶段,其中第一阶段是基于区块进行运算的。[1]一个意外的效果是,敌人倾向于沿着区块的边界行进。此外,撕咬虫和喷吐虫有时会攻击它们本应绕行的区块边界上的障碍物。
  • 为减少计算量,当区块内没有重要事件发生时,整个区块会被设置为非活动状态。例如:只有鲜鱼或闲置敌人活动的区块可能会被标记为非活动区块,这会暂停它们的闲置运动。

可视化网格

可以使用网格视图查看地图结构:

  • 网格可以在玩家暂停游戏时显示(默认快捷键SHIFT + 空格)。
    • 在 设置->界面 菜单勾选 游戏暂停时显示网格 选项启用此功能。
  • 如果需要在游戏运行时显示网格,可以在调试模式中进行设置:
    • F4键调出"Debug settings"窗口。
    • 勾选"always"选项卡中的"show-tile-grid"选项将在游戏中始终显示网格,如果勾选了"debug"选项卡中的相同选项,则只会在调试模式中显示网格。
    • "debug"选项卡中勾选"show-tile-grid"选项,将在按下F5键启动调试模式时显示网格。这种设置实际上是将F5键作为开启网格视图的快捷键。这在进行规范化的工厂设计(需要整齐对称地放置工厂中的设施)时会非常有用。