索引
概述
Minecraft 生物群系可以具有不同的地形特征。通过编写自定义生物群系数据,您可以:1) 更改地形的一般形状。2) 更改生物群系类型的频率比例。3) 更改构成生物群系的方块,包括地表和下方的方块。4) 改变树木、草和花等装饰地物的分布。5) 更改生成的生物。6) 改变气候。7) ......以及更多!返回顶部JSON 格式
所有生物群系都应该通过 “format_version” 字段指定它们的目标版本。其余的生物群系数据被划分为独立的 JSON 子对象或组件。通常,组件定义生物群系参与的游戏行为,而组件字段定义其参与方式。基本上有两类组件:1) 命名空间组件,例如带有 'name:' 前缀的组件,映射到游戏中的特定行为。它们可能具有参数化该行为的成员字段。仅支持具有有效映射的名称2) 'tags' 在 "minecraft:tags" 组件下定义。标签由字母数字字符以及 '.' 和 '_' 组成。将标签附加到生物群系,以便代码或数据可以检查其是否存在。 下面是一个示例 biome 架构,其中包含其他详细信息和命名空间组件的完整列表。添加生物群系
生物群系是从行为包的 biomes 子文件夹中的 JSON 文件中读取的。加载强制每个文件一个生物群系;并且文件名和实际的生物群系名称必须匹配。将具有新名称的文件添加到生物群系数据位置将使其可供游戏使用,而现有生物群系可以使用与其现有名称匹配的文件覆盖。请注意,如果您添加了一个新的生物群系,则需要编写允许它参与世界生成的组件数据(如下面的完整架构所示),否则它不会显示在您的世界中!返回顶部模式
生物群系组件
此生物群系使用的任何组件名称 | 类型 | 必填? | 描述 |
---|---|---|---|
minecraft:capped_surface | 对象 | 自选 | 在上方或下方有非固体方块的方块上生成表面。 |
minecraft:climate | 对象 | 自选 | 描述温度、湿度、降水等类似因素。缺少此组件的生物群系将采用默认值。 |
minecraft:frozen_ocean_surface | 对象 | 自选 | 类似于 overworld_surface。添加冰山。 |
minecraft:mesa_surface | 对象 | 自选 | 类似于 overworld_surface。增加了彩色岩层和可选的柱子。 |
minecraft:mountain_parameters | 对象 | 自选 | 用于在主世界中驱动山地地形生成的噪声参数。 |
minecraft:multinoise_generation_rules | 对象 | 自选 | 控制此生物群系在下界世界生成期间如何实例化(然后可能被修改)。 |
minecraft:overworld_generation_rules | 对象 | 自选 | 控制此生物群系在主世界生成期间如何实例化(然后可能被修改)。 |
minecraft:overworld_height | 对象 | 自选 | 用于驱动主世界中地形高度的噪声参数。 |
minecraft:surface_material_adjustments | 对象 | 自选 | 指定基于噪声函数的地形生成中使用的方块的细节变化。 |
minecraft:surface_parameters | 对象 | 自选 | 控制用于默认 Minecraft 主世界地形生成的方块。 |
minecraft:swamp_surface | 对象 | 自选 | 类似于 overworld_surface。添加沼泽表面细节。 |
minecraft:tags | 对象 | 自选 | 将任意字符串标签附加到此生物群系。 |
minecraft:the_end_surface | 对象 | 自选 | 使用默认的 Minecraft 末地地形生成。 |
生物群系定义
包含用于定义生物群系的描述和组件。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
components | 生物群系组件类型的对象 | 必填 | 此生物群系的组件。 |
description | 生物群系描述类型的对象 | 必填 | 非组件设置,包括生物群系名称。 |
生物群系描述
包含生物群系的非组件设置。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
identifier | 字符串 | 必填 | 生物群系的名称,由其他功能(如 '/locate biome' 命令)使用。 |
生物群系 JSON 文件
包含格式版本和生物群系定义名称 | 类型 | 必填? | 描述 |
---|---|---|---|
format_version | 字符串 | 必填 | 此文件使用的 JSON 架构的版本 |
minecraft:biome | 生物群系定义类型的对象 | 必填 | 单一生物群系定义 |
方块说明符
指定特定方块。可以是字符串方块名称或 JSON 对象名称 | 类型 | 必填? | 描述 |
---|---|---|---|
name | 字符串 | 必填 | 方块的名称 |
states | 对象 | 自选 | 包含以每个状态命名的成员,具有布尔值、整数值或字符串值。 |
Molang 表达式
一个指定 Molang 表达式的 JSON 字段。可以是整数、浮点数、布尔值或字符串。返回顶部minecraft:capped_surface
在上方或下方有非固体方块的方块上生成表面。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
beach_material | 类型为方块指定器的对象 | 自选 | 用于装饰海平面附近的表面的材料。 |
ceiling_materials | 类型为方块指定器的对象的数组 | 必填 | 用于表面天花板的材料。 |
floor_materials | 类型为方块指定器的对象的数组 | 必填 | 用于表面地面的材料。 |
foundation_material | 类型为方块指定器的对象 | 必填 | 用于替换非表面实心方块的材料。 |
sea_material | 类型为方块指定器的对象 | 必填 | 用于替换海平面以下的空气方块的材料。 |
minecraft:climate
描述温度、湿度、降水等类似因素。缺少此组件的生物群系将采用默认值。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
ash | 浮点数 | 自选 | 灰烬沉淀视觉效果的密度 |
blue_spores | 浮点数 | 自选 | 蓝色孢子沉淀视觉效果的密度 |
downfall | 浮点数 | 自选 | 降水对颜色和方块变化的影响程度 |
red_spores | 浮点数 | 自选 | 蓝色孢子沉淀视觉效果的密度(应该是红色,原文不知道为什么是写的蓝色) |
snow_accumulation | 2 个浮点数的数组 | 自选 | 最小和最大积雪层,每增加0.125即为另一层积雪 |
temperature | 浮点数 | 自选 | 温度会影响许多视觉和行为方面,包括积雪和冰的生成、海绵的干燥以及天空颜色。 |
white_ash | 浮点数 | 自选 | 白色灰烬沉淀视觉效果的密度 |
minecraft:frozen_ocean_surface
类似于 overworld_surface。添加冰山。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
foundation_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中深层地下使用的方块类型 |
mid_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中地表下一层使用的方块类型 |
sea_floor_depth | 整数 | 必填 | 控制地面出现的深度,相对于世界水面水平线 |
sea_floor_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体的地板方块类型 |
sea_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体使用的方块类型 |
top_material | 类型为方块指定器的对象 | 必填 | 控制用于此生物群系表面的方块类型 |
minecraft:mesa_surface
类似于 overworld_surface。增加了彩色岩层和可选的柱子。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
bryce_pillars | 布尔值 | 必填 | 台地是否生成带有柱子 |
clay_material | 类型为方块指定器的对象 | 必填 | 要使用的粘土块 |
foundation_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中深层地下使用的方块类型 |
hard_clay_material | 类型为方块指定器的对象 | 必填 | 使用硬化粘土块 |
has_forest | 布尔值 | 必填 | 在高海拔地区放置粗糙的泥土和草 |
mid_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中地表下一层使用的方块类型 |
sea_floor_depth | 整数 | 必填 | 控制地面出现的深度,相对于世界水面水平线 |
sea_floor_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体的地板方块类型 |
sea_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体使用的方块类型 |
top_material | 类型为方块指定器的对象 | 必填 | 控制用于此生物群系表面的方块类型 |
minecraft:mountain_parameters
用于在主世界中驱动山地地形生成的噪声参数。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
peaks_factor | 浮点数 | 自选 | 不执行任何作 |
steep_material_adjustment | minecraft:mountain_parameters 类型的对象 - steep_material_adjustment 设置 | 自选 | 定义陡坡的表面材料 |
top_slide | minecraft:mountain_parameters 类型的对象 - top_slide 设置 | 自选 | 控制世界顶部发生的密度渐变,以防止地形过高 |
minecraft:mountain_parameters - steep_material_adjustment 设置
定义陡坡的表面材料名称 | 类型 | 必填? | 描述 |
---|---|---|---|
east_slopes | 布尔值 | 自选 | 启用朝东的斜坡 |
material | 类型为方块指定器的对象 | 自选 | 作为陡坡材料的方块类型 |
north_slopes | 布尔值 | 自选 | 启用朝北的斜坡 |
south_slopes | 布尔值 | 自选 | 启用朝南的斜坡 |
west_slopes | 布尔值 | 自选 | 启用朝西的斜坡 |
minecraft:mountain_parameters - top_slide 设置
控制世界顶部发生的密度渐变,以防止地形过高名称 | 类型 | 必填? | 描述 |
---|---|---|---|
enabled | 布尔值 | 必填 | 如果为 false,则 top slide 将被禁用。如果为 true,则将考虑其他参数。 |
minecraft:multinoise_generation_rules
控制此生物群系在下界世界生成期间如何实例化(然后可能被修改)。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
target_altitude | 浮点数 | 自选 | 相对于其他生物群系,此生物群系应生成的高度。 |
target_humidity | 浮点数 | 自选 | 相对于其他生物群系,此生物群系生成的湿度。 |
target_temperature | 浮点数 | 自选 | 相对于其他生物群系,此生物群系应以此温度生成。 |
target_weirdness | 浮点数 | 自选 | 此生物群系相对于其他生物群系的生成奇异性。 |
weight | 浮点数 | 自选 | 相对于其他生物群系,此生物群系的生成权重。 |
minecraft:overworld_generation_rules
控制此生物群系在主世界生成期间如何实例化(然后可能被修改)。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
generate_for_climates | minecraft:overworld_generation_rules 类型的对象的数组 - 加权气候类别设置 | 自选 | 控制此生物群系可以生成的世界生成气候类别。一个生物群系可以与多个类别相关联,并且每个类别可以有不同的权重。 |
hills_transformation | minecraft:overworld_generation_rules 类型的对象 - 加权生物群系名称设置 | 自选 | 在转换为丘陵生物群系时要切换到的生物群系 |
mutate_transformation | minecraft:overworld_generation_rules 类型的对象 - 加权生物群系名称设置 | 自选 | 在转换为变异生物群系时要切换到的生物群系 |
river_transformation | minecraft:overworld_generation_rules 类型的对象 - 加权生物群系名称设置 | 自选 | 在转换为河流生物群系时要切换到的生物群系(如果不是原版的“河流”生物群系) |
shore_transformation | minecraft:overworld_generation_rules 类型的对象 - 加权生物群系名称设置 | 自选 | 当与海洋生物群系相邻时要切换到的生物群系 |
minecraft:overworld_generation_rules - 加权生物群系名称设置
可以是生物群系的字符串名称,也可以是任意大小的数组。如果是数组,每个条目可以是生物群系名称字符串,或者是一个大小为2的数组,其中第一个条目是生物群系名称,第二个条目是一个正整数,表示该生物群系相对于其他条目的权重。如果没有提供权重,则使用权重1。返回顶部minecraft:overworld_generation_rules - 加权气候类别设置
一个任意大小的数组,其中包含的每个数组都恰好有两个元素。对于每个包含的数组,第一个元素是一个气候类别字符串(“medium”、“warm”、“lukewarm”、“cold”或“frozen”),第二个元素是一个正整数,表示该条目相对于其他条目的权重。返回顶部minecraft:overworld_height
用于驱动主世界中地形高度的噪声参数。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
noise_params | 2 个浮点数的数组 | 自选 | 第一个值是深度 - 负值越多表示水下越深,而越正表示越高。第二个值是比例,它影响噪声在从表面移动时的变化程度。 |
noise_type | "default", "default_mutated", "river", "ocean", "deep_ocean", "lowlands", "taiga", "mountains", "highlands", "extreme", "less_extreme", "beach", "stone_beach", "mushroom", "swamp" | 自选 | 指定一个基于内置设置的预设,而不是手动使用噪声参数(noise_params)。 |
minecraft:surface_material_adjustments
指定基于噪声函数的地形生成中使用的方块的细节变化。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
adjustments | minecraft:surface_material_adjustments 类型的对象的数组 - 表面调整设置 | 自选 | 所有匹配该列噪声值的调整将按列出的顺序应用。 |
minecraft:surface_material_adjustments - 表面调整材料设置
用于此表面调整的具体方块名称 | 类型 | 必填? | 描述 |
---|---|---|---|
foundation_material | 类型为方块指定器的对象 | 自选 | 当此调整生效时,控制此生物群系中深层地下使用的方块类型。 |
mid_material | 类型为方块指定器的对象 | 自选 | 当此调整生效时,控制此生物群系中地表下一层使用的方块类型。 |
sea_floor_material | 类型为方块指定器的对象 | 自选 | 当此调整生效时,控制此生物群系中水体的地板方块类型 |
sea_material | 类型为方块指定器的对象 | 自选 | 当此调整生效时,控制此生物群系中水体的方块类型。 |
top_material | 类型为方块指定器的对象 | 自选 | 当此调整生效时,控制用于此生物群系表面的方块类型 |
minecraft:surface_material_adjustments - 表面调整设置
对生成的地形进行调整,根据指定的设置替换方块。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
height_range | 2 个 Molang 表达式的数组 | 自选 | 定义一个噪声值范围 [min, max],在此范围内应用此调整。 |
materials | minecraft:surface_material_adjustments 类型的对象 - 表面调整材质设置 | 必填 | |
noise_frequency_scale | 浮点数 | 自选 | 在访问材料调整的噪声值时,乘以位置的缩放比例。 |
noise_range | 2 个浮点数的数组 | 自选 | 定义一个噪声值范围 [min, max],在此范围内应用此调整。 |
minecraft:surface_parameters
控制用于默认 Minecraft 主世界地形生成的方块。名称 | 类型 | 必填? | 描述 |
---|---|---|---|
foundation_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中深层地下使用的方块类型。 |
mid_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中地表下一层使用的方块类型。 |
sea_floor_depth | 整数 | 必填 | 控制地面出现的深度,相对于世界水面水平线. |
sea_floor_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体的地板方块类型. |
sea_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体使用的方块类型. |
top_material | 类型为方块指定器的对象 | 必填 | 控制用于此生物群系表面的方块类型. |
minecraft:swamp_surface
Similar to overworld_surface. Adds swamp surface details.名称 | 类型 | 必填? | 描述 |
---|---|---|---|
foundation_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中深层地下使用的方块类型。 |
mid_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中地表下一层使用的方块类型。 |
sea_floor_depth | 整数 | 必填 | 控制地面出现的深度,相对于世界水面水平线. |
sea_floor_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体的地板方块类型. |
sea_material | 类型为方块指定器的对象 | 必填 | 控制此生物群系中水体使用的方块类型. |
top_material | 类型为方块指定器的对象 | 必填 | 控制用于此生物群系表面的方块类型. |
名称 | 类型 | 必填? | 描述 |
---|---|---|---|
tags | 字符串的数组 | 必填 | 由其他系统(如实体生成)使用的字符串标签数组 |
minecraft:the_end_surface
使用默认的 Minecraft 末地地形生成。返回顶部