Ore Gen Configuration - HeartyYF/TerraFirmaCraft-Wiki-CN GitHub Wiki

目前,群峦传说的矿石生成由一基于 JSON 配置的系统完成。无论是拓展作者还是整合包作者,他们都可以提供他们的矿石生成文件来自定义。它主要用于群峦传说或其拓展添加的矿石,但也(在一定意义上)可被其他模组使用。(在 1.15+ 版本中将被修改,会朝 Realistic Ore Veins 模组发展,与其更像、更可自定义)

文件

TFC将递归地在 config/tfc/ 目录中查找所有文件以生成矿石。如果未发现任何文件,则使用默认值。如果注意到矿石生成的问题,请检查日志,因为在绝大多数情况下,如果配置中存在问题,矿脉将输出各种错误。

文件必须都是有效的 .json 文件。 如果遇到 JSON 解析错误,请使用 JsonLint 之类的工具检查有效性。

每个文件可以包含任意数量的矿脉。结构必须如下:

{
    "vein_name": { "... 某一矿脉对象 ..." },
    "another_vein_name": { "... 另一矿脉对象 ..." },
    "..."
}

矿脉名称

矿脉应基于绝对文件路径命名,与矿脉名称(在每个 JSON 条目中)相连。这些矿脉名称必须唯一。例如,用于 /findveins 命令中。

矿脉参数

每一矿脉对象有一系列必须被提供的参数:

  • minimum_height:允许生成矿石的最小 Y 值。在其之下的矿脉边缘将被切除。
  • maximum_height:允许生成矿石的最大 Y 值。在其之上的矿脉边缘将被切除。严格不小于 minimum_height
  • rarity:矿脉的近似稀有度。必须是正整数。平均而言,会有 1 / rarity 个区块生成矿脉。
  • density:矿脉的密度。作为修正值作用于每个生成位置 - 不是百分比。必须是非负整数。平均而言,较高的密度意味着每条矿脉包含更多的矿石。
  • width:矿脉的近似宽度,以方块为单位。
  • height:矿脉的近似高度,以方块为单位。
  • shape:矿脉的形状。必须是字符串。目前(直到至少 1.15+ 之后才会变化),有效的形状是 sphere(球状)和 cluster(簇状)。簇状是在中心生成位置周围的球状的集合。
  • base_rocks:矿脉生成的底岩列表,矿脉只能生成在这些岩石中。可以是岩石名称(例如,granite 花岗岩),或岩石种类(例如,metamorphic 变质岩)。岩石种类表示矿脉可以在所有该种类的岩石中生成。

除了以上这些之外,矿脉必须指定要生成的矿石或方块。群峦传说或其拓展的矿石生成时将自动使用其底岩变体。矿石方块将产生相同的方块,与底岩类型无关。即,需要以下之一:

  • 指定矿石时, ore 字段必须给定。必须是一字符串,值是矿石的名称,与其在群峦传说中注册的名称相同。请查看群峦传说默认矿石生成以查阅矿石名称。矿石必须是 小写_蛇型_命名法(lower snake case)并以添加了该矿石的模组为前缀(例如,tfc:native_copper)。

  • 指定外部方块时,block 字段必须给定,meta(metadata,元数据)字段可选。block 必须是字符串,指定一确切的方块名称(例如,minecraft:iron_ore)。 如果需要,meta 字段可以是 0 - 15 之间的整数,该整数将用于获取正确的方块状态。(如果未提供,则默认为 0)。

另外,要指定零散岩石(loose rock,指示物,在地表可以和木棍和岩石一起找到),loose 字段必须给定。必须是一字符串,值是矿石的名称,与其在群峦传说中注册的名称相同,或,物品/方块的注册名(例如,minecraft:egg)。如果你需要指定一个元数据,添加一个名为 looseMeta(M是大写)的整数字段为你所需要的值(例如,"looseMeta": 30)。

岩石种类

有效的岩石种类有 tfc:sedimentary(沉积岩) tfc:metamorphic(变质岩) tfc:igneous_intrusive(侵入型岩浆岩) tfc:igneous_extrusive(喷出型岩浆岩)这四个群峦传说提供的种类,以及其他模组添加的种类(尽管这不太可能,也不鼓励这样)。必须以添加了它们的模组的 mod ID 为前缀。例见默认矿石生成文件

岩石

岩石是所有群峦传说添加的岩石种类。必须以添加了它们的模组的 mod ID 为前缀。它们一定是 小写_蛇型_命名法 (lower snake case)。例见默认矿石生成文件