原版方块的数据驱动
今天是 2026 年 6 月 24 日。在基岩版最新测试版 `26.40.27` 中,加入了第一批 2026 年第三次小更新的内容,而其中的羊毛台阶、羊毛楼梯、红灌木和 Shelf Mushroom 是数据驱动的。原版方块,终于出现了数据驱动的先例。一个原版方块,如果是数据驱动的,那么我们就可以直接修改它的属性。比如无框玻璃,再也不需要创建新方块了,只需要修改原版方块。另外,值得一提的是,数据驱动的方块是可以修改模型的。
当然,这次数据驱动的原版方块也不是完全的数据驱动,与自定义方块相比,它们的模型可以由一个特殊字段提供,而且它们带有一些自定义方块没有的功能,这些功能也由上述特殊字段启用。
所谓的特殊字段,就是与 `identifier` 同级的无文档字段,`internal_vanilla_data`。它主要包含三个字段:
* `block_id` 是方块的数字 ID。
* `material` 是方块的材料,用于一些内部逻辑。目前发现的可用值:
* `solid`:固体方块。注意,即使方块不完整,例如楼梯与台阶,也会使用此材料。
* `plant`:植物方块。例如红灌木和 Shelf Mushroom。
* `block_archetype` 包含方块使用的原型,表示方块的功能。
除此之外,还有一些字段与以上字段同级,但它们不是必需字段:
* `can_dampen_vibrations` 布尔值,方块是否可以阻断振动的传播。
* `can_occlude_vibrations` 布尔值,方块是否可以阻止振动的发生。
* `translucency` 浮点数,方块的“透明度”,推测可能与逻辑光照计算(决定草方块的退化与传播等逻辑)有关。见于楼梯与台阶方块,值为 0.8。
方块原型的可用值如下:
### `bush_block` 原型
* 灌木丛。
* 未发现任何可用字段。
### `slab_block` 原型
* 台阶。
* 可用字段如下:
* `is_double` 布尔值,决定此方块是否为双层台阶。
* `double_slab_block` 字符串,表示单层台阶与双层台阶的映射关系。此方块为单层台阶时,填写双层台阶的 ID;此方块为双层台阶时,填写单层台阶的 ID。
### `stair_block` 原型
* 楼梯。
* 可用字段如下:
* `base_block` 字符串,此楼梯的基础方块 ID。例如,白色羊毛楼梯的基础方块是白色羊毛。
### `wall_foliage_block` 原型
* 墙面植物。
* 可用字段如下:
* `size_count` 整数,此方块包括的大小类型的数量。例如,Shelf Mushroom 有大型与小型两种,则此字段值为 2。
* `is_bonemealable` 布尔值,此方块是否可以被骨粉催熟。
* `bounciness` 浮点数,此方块的弹性系数。推测值为 1 时,弹跳不会损失动能。
* `fall_damage_multiplier` 浮点数,摔落在此方块上造成伤害时,对伤害应用的因数。例如填写 0.5 会导致减免一半的摔落伤害。
以上就是原版方块数据驱动的早期研究结果。
页: [1]