本站文本内容除另有声明外,转载时均必须注明出处,并遵守CC BY-NC-SA 3.0协议。(转载须知)
本站是中文Minecraft Wiki的镜像站,与Mojang Studios、Weird Gloop没有从属关系。(免责声明)
猪变种定义格式
阅读
2026-08-26更新
最新编辑:中文mcwiki机器人
阅读:
更新日期:2026-08-26
最新编辑:中文mcwiki机器人
猪变种定义文件是用于定义猪变种及其生成规则的数据驱动定义文件。
定义格式
猪变种在游戏内使用PIG_VARIANT注册表,数据包路径为pig_variant,即所有猪变种自定义文件都需要在data/<命名空间>/pig_variant目录中定义。
猪变种定义文件使用JSON格式,并具有下列结构:
- JSON文件根对象
- *asset_id:(命名空间ID)猪的纹理。游戏在渲染时将此值解析为
assets/<命名空间>/textures/<路径>.png。 - *baby_asset_id:(命名空间ID)幼年猪的纹理。游戏在渲染时将此值解析为
assets/<命名空间>/textures/<路径>.png。 - model:(默认为
normal)猪的模型。取值可以为normal和cold,在原版游戏中前者用于温带猪与热带猪的模型,后者用于寒带猪的模型。 - *spawn_conditions:变种生成选择器,控制变种的生成条件与优先级。
- :一个变种生成选择器。
- condition:此生成选择器可以生效的条件。不指定时默认为任何条件下都可以选择此生成选择器。
- *type:生成选择器条件类型。
- 如果*type为
biome,则检查当前生成点的生物群系。 - *biomes:检查生成点是否为给定的生物群系,是则选择器有效。可以为以
#开头的生物群系标签、一个生物群系ID的字符串、或以多个生物群系ID组成的字符串列表。 - 如果*type为
moon_brightness,则检查当前月亮亮度。 - *range:月亮亮度的范围,当前亮度在给定范围内时选择器有效。满月时为1而新月时为0,具体值见月亮 § 月亮亮度。
- 如果*type为
structure,则检查当前生成点是否在指定的结构片段内。 - *structures:检查生成点是否在指定结构的结构片段内,是则选择器有效。可以为以
#开头的结构标签、一个结构ID的字符串、或以多个结构ID组成的字符串列表。
- *priority:选择此生成选择器的优先级。游戏会挑选所有变种中所有有效的生成选择器,在优先级并列最高的选择器中随机挑选其一并使用对应的变种进行生成。
- condition:此生成选择器可以生效的条件。不指定时默认为任何条件下都可以选择此生成选择器。
- :一个变种生成选择器。
- *asset_id:(命名空间ID)猪的纹理。游戏在渲染时将此值解析为
定义行为
猪变种定义数据仅在服务端启动时被加载一次,使用/reload命令不可以使猪变种定义被重新加载,而必须重启服务端。
PIG_VARIANT注册表中必须至少有一个元素,否则游戏会在同步时报错并阻止世界加载。
变种生成
生成猪时,游戏根据spawn_conditions指定的通用变种选择器选择生成何种变种。
通用变种选择器包含了生成变种的各种条件,以及条件满足时的生成优先级。尝试生成时,游戏会在所有变种的选择器中找出条件成立且优先级最大的选择器,并生成拥有该选择器的变种;如有多个选择器的优先级同为最大,则会随机选取一个选择器,并生成其对应的变种。
历史
| Java版 | |||||||
|---|---|---|---|---|---|---|---|
| 1.21.5 | 25w02a | 加入了猪变种定义格式,以及相应的PIG_VARIANT可写注册表。
| |||||
| 25w04a | 修改了猪变种定义格式,以统一不同生物变种的格式。 | ||||||
| 26.1 | snapshot-2 | 加入了baby_asset_id以单独指定幼年猪的纹理。 | |||||
导航
| 基本概念 | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 数据包 |
| ||||||||||||
| 资源包 | |||||||||||||
| 相关条目 | |||||||||||||
| 官方工具 | |||||||||||||
| 相关教程 | |||||||||||||
| 参考实例 |
| ||||||||||||

沪公网安备 31011002002714 号