🔧 方块设置
概览
这些设置定义了方块的基础属性,你可以同时启用它们全部。以下是包含所有可用设置类型的示例:
示例
blocks:
custom:all_settings_block:
settings:
hardness: 0.5
resistance: 0.5
is-randomly-ticking: true
push-reaction: NORMAL
map-color: 36
burnable: false
fire-spread-chance: 0
burn-chance: 0
item: custom:all_settings_item
replaceable: false
is-redstone-conductor: true
is-suffocating: true
is-view-blocking: true
sounds:
break: minecraft:block.deepslate.break
step: minecraft:block.deepslate.step
place: minecraft:block.deepslate.place
hit: minecraft:block.deepslate.hit
fall: minecraft:block.deepslate.fall
land: minecraft:block.anvil.land
destroy: minecraft:block.anvil.destroy
require-correct-tools: true
respect-tool-component: false
correct-tools:
- minecraft:wooden_pickaxe
incorrect-tool-dig-speed: 0.3
tags:
- minecraft:mineable/pickaxe
instrument: BASEDRUM
fluid-state: water
support-shape: minecraft:stone
luminance: 15
can-occlude: false
block-light: 0
propagate-skylight: false
稳定设置
硬度
决定了挖掘这个方块需要的挖掘时间。(默认值:2.0)
hardness: 0.5
爆炸抗性
决定了方块在爆炸中吸收和阻止爆炸破坏方块传播的强度。(默认值:2.0)
resistance: 0.5
随机刻
决定方块状态是否接受随机刻,这与某些方块行为有关,例如树叶。(默认值:false)
is-randomly-ticking: true
活塞推动行为
决定方块在受到活塞推动时的反应。请注意,由于客户端视觉同步问题,某些反应可能与某些方块类型不兼容。这个问题将在未来版本中得到修复。(默认值:NORMAL)
- NORMAL 可推动,可拉动
- DESTROY 被推动破坏,不可拉动
- BLOCK 不可推动,不可拉动
- IGNORE 似乎像 PUSH_ONLY 一样工作,但可以粘附在粘性方块上
- PUSH_ONLY 可推动,不可拉动
push-reaction: NORMAL
地图颜色
决定了地图在表示此方块时会使用的颜色的基色。可用颜色可以在 https://zh.minecraft.wiki/w/地图存储格式#地图基色 查找。(默认值:0)
map-color: 36
熔岩可燃性
决定了熔岩是否可以在该方块上生成火。(默认值:false)
burnable: true
烧毁几率
影响火与其相邻时破坏该方块的几率和速率。方块烧毁几率为正数时,其所有表面均可燃烧,否则只有其完整的上表面可以燃烧。(默认值:0)
fire-spread-chance: 100 # 0-100
引燃几率
影响火在其附近时传播到该方块表面上的几率和速率。引燃几率为正数的方块被称为可燃方块。(默认值:0)
burn-chance: 30 # 0-100
物品
决定方块对于的物品是什么。通常在创造模式使用鼠标中键点击来获取方块。(默认值:null)
item: default:xxx_block_item
可替代
决定了方块是否可以被其他方块通过放置被直接替代掉,影响方块物品放置出方块的方式。(默认值:false)
replaceable: false
红石导体
决定了方块在红石信号传播中的影响。具有红石导体属性的方块被称为红石导体。(默认值:未定义)
is-redstone-conductor: true
窒息生物
决定了生物视平线处于其中时会发生窒息的方块。(默认值:未定义)
is-suffocating: true
视野阻挡
会使视平线处于其中的非旁观模式玩家渲染阻挡视线的效果。绝大多数窒息方块都是视野阻挡方块。但是,此选项对玩家毫无用处,但是它将影响服务器上的某些实体机制。(默认值:未定义)
is-view-blocking: true
音效
决定方块在各种情况下的音效。(默认值:null)
- fall 当玩家带有坠落伤害时坠落在方块上时
- hit 当玩家挖掘方块时
- break 当玩家破坏方块时
- step 当玩家在方块上行走时
- place 当玩家放置方块时
- land 当下落的方块落地且变为方块
- destroy 当下落的方块落地且未能变为方块
sounds:
break: minecraft:block.deepslate.break
step: minecraft:block.deepslate.step
place: minecraft:block.deepslate.place
hit: minecraft:block.deepslate.hit
fall: minecraft:block.deepslate.fall
land: minecraft:block.anvil.land
destroy: minecraft:block.anvil.destroy
您可以像这样配置以精确控制音量和音高
sounds:
break:
id: minecraft:block.deepslate.break
pitch: 0.5
volume: 0.25~0.3 # 范围值也支持
step: minecraft:block.deepslate.step
需要合适挖掘工具
决定了是否需要合适挖掘工具才能有效的挖掘这个方块(默认值:false)
require-correct-tools: false
尊重 tool 组件
决定 minecraft:tool
组件的 correct_for_drops
选项是否应像下面的 correct-tools
一样工作。(默认值:false)
respect-tool-component: false
合适挖掘工具
决定了什么物品可以有效地挖掘这个方块。(默认值:null)
correct-tools:
- minecraft:wooden_pickaxe
- minecraft:stone_pickaxe
- minecraft:iron_pickaxe
- minecraft:golden_pickaxe
- minecraft:diamond_pickaxe
- minecraft:netherite_pickaxe
如果设置了 correct-tools
,那么 require-correct-tools
默认为 true
。
挖掘惩罚
决定了如果不使用合适挖掘工具的挖掘速度是正常的多少倍(默认值:0.3)
incorrect-tool-dig-speed: 0.3 # 0~1
标签
标签决定了许多方块的属性。例如,使用 minecraft:mineable/axe
会让你的方块用斧挖掘时更快。(默认值:null)🏷️ 方块标签
tags:
- minecraft:mineable/axe
- minecraft:logs_that_burn
- minecraft:logs
- minecraft:completes_find_tree_tutorial
客户端侧标签
这只适用于原版方块
client-bound-tags:
- minecraft:beacon_base_blocks
乐器
决定了方块被放在音符盒下时,音符盒使用的乐器类型。(默认值:harp)
instrument: BASEDRUM
流体状态
决定了方块状态的包含的流体状态。(默认值:empty)
fluid-state: water # empty/water
支撑形状
决定了方块提供的支撑形状。默认情况下,自定义方块会使用其对应视觉状态的支撑形状。但是,你可以在这里手动指定一个原版方块的支撑形状来代替。
support-shape: minecraft:stone
不稳定设置
剩余的方块设置都与光照系统有关。CraftEngine 已尽可能在不影响服务器性能的情况下实现了部分光照效果。客户端光照系统的视觉问题属于正常现象,在大多数情况下我也无法修复。
方块对天空光照的遮挡完全由客户端决定,无法通过服务器发送数据包来修复。因此,block-light
和 can-occlude
设置仅影响方块自身发出的光,不影响天空光照。
亮度
决定方块的光照等级。(默认值:0)
luminance: 15
阻挡光线
决定方块是否能阻挡光线。这也会决定该方块是否能将下方的方块转换为另一种类型(例如,草方块变为泥土)。(默认值:未定义)
can-occlude: false

occlude: true

occlude: false

occlude: false

occlude: true
散射光照
决定光线穿过此方块后降低的光照等级。(默认值:未定义)
block-light: 0

block-light: 15

block-light: 7

block-light: 0
传播天空光照
决定天空光照能否穿过该方块。
propagate-skylight: true