物品堆叠组件

物品堆叠组件(Item Stack Component),又称物品组件(Item Component)或数据组件(Data Component),是物品数据的保存方式,各种不同的物品堆叠组件共同影响了一个物品的具体行为。
物品存储格式[编辑 | 编辑源代码]
物品数据可以用于玩家的物品栏和末影箱物品栏、箱子中的物品、物品实体、熔炉方块实体、酿造台方块实体和村民交易内容中。
物品存储有两种方式:
- 带槽位存储:带有Slot标签指定物品所在的槽位,比如在箱子中。
- 不带槽位存储:物品不在槽位中,而是作为某个属性类的数据或配置项,例如物品实体。
物品不仅会存储它的命名空间ID和数量,也会存储物品内部的附加信息,即components,即物品堆叠组件。许多物品并没有这些信息,所以这项为空或不存在。所有物品组件均为可选,但失去部分物品堆叠组件可能使得对应的物品行为产生异常。
物品存储格式如下:
- 根标签
- *
*id:(命名空间ID)表示某种类的物品堆叠。若未指定,游戏会在加载区块或者生成物品时将其变更为空气。 - components:关于当前物品的额外信息,详细内容请见物品堆叠组件。此标签对于多数物品来说都是非必需项。
- <物品堆叠组件>:一个物品堆叠组件,标签名称为物品组件的命名空间ID,类型则与对应的物品组件有关。通过命令设置此数据时可以不写命名空间,但在导出时命名空间ID会自行加上
minecraft:
前缀。 - !<物品堆叠组件>:存在时,使一个原有的物品堆叠组件失效。此复合标签的内容不影响行为。通过命令设置此数据时可以不写命名空间,但在导出时命名空间ID会自行加上
minecraft:
前缀。
- <物品堆叠组件>:一个物品堆叠组件,标签名称为物品组件的命名空间ID,类型则与对应的物品组件有关。通过命令设置此数据时可以不写命名空间,但在导出时命名空间ID会自行加上
- count:(0<值≤物品最大堆叠数量)物品的堆叠数。不存在时则默认为1。
- *
堆叠物品(Item Stack)的解编码格式(Codec)广泛存在于其他和物品有关的格式中,其源码定义中有许多种类,这里仅介绍几种重要变种:
- 普通解编码:堆叠物品的完整或标准解编码形式,如上文所示。
- 单一物品解编码(Single Item Codec):与普通解编码的最大不同就是其数量被限定为1,所以不存在count字段。
- 严格化的普通解编码(Strict Codec):对普通解编码添加了一个数据验证方法,若验证失败则无法正常开展解编码。验证过程详见下文严格性验证。
- 严格化的单一物品解编码(Strict Single Item Codec):对单一物品解编码添加了一个数据验证方法,若验证失败则无法正常开展解编码。验证过程详见下文严格性验证。
- 严格性验证
严格性验证分为两步,依次进行,只要其中一个条件不满足则视为验证失败:
- 对组件的验证:
- 若物品带有
max_damage
组件,则物品最大堆叠数(Max Stack Size)不能大于1,否则验证失败。 - 若物品带有
container
组件,则代表该物品可作为容器容纳其他物品。要求容器中每个堆叠物品的数量必须小于等于其自身的最大堆叠数,否则验证失败。
- 若物品带有
- 对数量的验证:
- 若堆叠物品的数量大于其最大堆叠数则判定验证失败。
以上,最大堆叠数都通过组件max_stack_size
获取,若该组件不存在则视最大堆叠数为1。
可用物品堆叠组件[编辑 | 编辑源代码]
在游戏中总共定义了下列物品堆叠组件:
注册名称 | 标签类型和约束条件 | 应用对象 | 作用 |
---|---|---|---|
attribute_modifiers | 列表 | 所有物品 | 物品所带有的属性修饰符,可以修改持有者的属性值 |
axolotl/variant | 字符串 | 刷怪蛋、美西螈桶 | 生成的美西螈的变种 |
banner_patterns | 列表 | 旗帜、盾牌 | 旗帜图案和盾牌上的旗帜图案 |
base_color | 字符串,染料颜色 | 盾牌 | 盾牌的基础颜色,控制盾牌的名称 |
bees | 列表 | 蜂巢、蜂箱 | 保存蜂巢内蜜蜂的部分数据 |
block_entity_data | 字符串或复合标签 | 方块物品 | 方块物品放置方块时附加到对应方块实体上的数据 |
block_state | 复合标签 | 方块物品 | 放置方块时设置方块的方块状态 |
blocks_attacks | 复合标签 | 所有物品 | 控制格挡行为 |
break_sound | 字符串或复合标签 | 所有物品 | 物品耐久度耗尽后播放的声音 |
bucket_entity_data | 字符串或复合标签 | 生物桶 | 保存生物桶生成生物时,生物附加的标签数据。 |
bundle_contents | 列表 | 所有物品 | 物品的收纳袋空间里存储的物品,影响物品在其他收纳袋中所占的容量 |
can_break | 复合标签 | 所有物品 | 冒险模式玩家可以使用此物品与指定方块进行挖掘,并可以触发红石矿石、龙蛋或音符盒的挖掘开始时效果 |
can_place_on | 复合标签或列表 | 所有物品 | 冒险模式的玩家可以使用此物品与指定方块进行交互,例如放置方块 |
cat/collar | 字符串 | 刷怪蛋 | 生成的猫的项圈颜色 |
cat/variant | 字符串 | 刷怪蛋 | 生成的猫的变种 |
charged_projectiles | 列表 | 弩 | 弩内装载的物品 |
chicken/variant | 字符串 | 刷怪蛋和鸡蛋 | 生成的鸡的变种 |
consumable | 复合标签 | 所有物品 | 设置物品消耗使用的行为 |
container | 列表,最多256个元素 | 容器方块物品 | 保存容器方块物品中存储的物品栏数据 |
container_loot | 复合标签 | 战利品容器方块物品 | 保存战利品容器方块的战利品表信息 |
cow/variant | 字符串 | 刷怪蛋 | 生成的牛的变种 |
creative_slot_lock | 不可以导出和加载,仅网络同步 | 所有物品 | 在创造模式保存的物品栏中拥有此组件的物品将无法交互,但仍可通过快捷键存储或加载到快捷栏,除此之外与正常物品没有区别 默认附加到“已保存的快捷栏”中代表没有快捷栏信息的纸上 |
custom_data | 字符串或复合标签 | 所有物品 | 物品的自定义数据,可用于物品谓词等的判断 |
custom_model_data | 复合标签 | 所有物品 | 用于设置物品模型数据使其能展现不同的模型 |
custom_name | 字符串、复合标签或列表(文本组件) | 所有物品 | 自定义物品的名称 |
damage | 整数,不小于0 | 带有耐久的物品 | 物品的损坏值,此组件不存在代表物品不可损坏 |
damage_resistant | 复合标签 | 所有物品 | 具有此组件的物品对应的物品实体不会被指定伤害类型的伤害摧毁 |
death_protection | 复合标签 | 所有物品 | 持有此组件的物品的生物在受到致死伤害后将不会死亡并消耗此物品 |
debug_stick_state | 复合标签 | 调试棒 | 调试棒中存储的当前修改的方块属性 |
dyed_color | 整数或列表 | 可染色的物品 | 可染色物品的颜色 |
enchantable | 复合标签 | 所有物品 | 设置物品的附魔能力 |
enchantment_glint_override | 布尔值 | 所有物品 | 物品是否会显示光效,此组件的优先级高于其他任何影响光效的组件和物品自身属性 |
enchantments | 复合标签 | 所有物品 | 影响物品特征的魔咒信息 |
entity_data | 字符串或复合标签 | 盔甲架、刷怪蛋 物品展示框、画 各种船、各种矿车 |
保存物品生成实体时实体附加的标签数据 |
equippable | 复合标签 | 所有物品 | 设置物品可以被穿戴在什么部位 |
firework_explosion | 复合标签 | 烟火之星 | 烟火之星中存储的各种爆裂信息 |
fireworks | 复合标签 | 烟花火箭 | 烟花火箭中存储的各种爆裂信息和飞行时间信息 |
food | 复合标签 | 所有物品 | 设置物品的食物属性 |
fox/variant | 字符串 | 刷怪蛋 | 生成的狐狸的变种 |
frog/variant | 字符串 | 刷怪蛋 | 生成的青蛙的变种 |
glider | 复合标签,空标签 | 所有物品 | 物品被穿戴后玩家可以进行滑翔 |
horse/variant | 字符串 | 刷怪蛋 | 生成的马的变种 |
instrument | 字符串或复合标签 | 山羊角 | 保存山羊角的种类 |
intangible_projectile | 复合标签,空标签 | 弩内部存储的箭 | 如果此组件存在,箭被射出后只能由创造模式玩家捡起 |
item_model | 字符串(命名空间ID) | 所有物品 | 指定物品的模型映射 |
item_name | 字符串、复合标签或列表(文本组件) | 所有物品 | 不可以被铁砧修改,当custom_name 不存在时控制物品的名称不能控制物品名称在物品展示框的渲染或修改旗帜的渲染名称 |
jukebox_playable | 字符串 | 所有物品 | 设置物品被插入唱片机后播放的音乐,无此组件的物品无法插入唱片机 |
llama/variant | 字符串 | 刷怪蛋 | 生成的羊驼的变种 |
lock | 复合标签 | 容器方块物品、信标物品 | 保存容器方块或信标需要使用符合什么物品谓词的物品才可以打开此容器或信标 |
lodestone_tracker | 复合标签 | 指南针 | 磁石指针指向的位置信息和是否追踪信息 |
lore | 列表,最多256个元素 | 所有物品 | 自定义物品的提示框信息 |
map_color | 整数,默认为0x46402E | 地图 | 物品栏内地图纹理上的颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储 |
map_decorations | 复合标签 | 地图 | 地图上显示的图标,当设置此标签时,全局地图保存数据也会立刻同步图标数据 |
map_id | 整数 | 所有物品 | 地图编号,影响地图的基本功能 |
map_post_processing | 不可以导出和加载,仅网络同步 | 地图 | 同步地图的缩放等级和锁定信息 |
max_damage | 整数,不小于0 | 不可堆叠且会损坏的物品 | 修改物品的最大耐久度 |
max_stack_size | 整数,大于0且小于100 | 所有物品 | 修改物品的最大堆叠数量 如果物品默认不可堆叠,则最大堆叠数量大于1时它将不能附魔[1] 如果物品存在max_damage组件,则此组件只能为1 |
mooshroom/variant | 字符串 | 刷怪蛋 | 生成的哞菇的变种 |
note_block_sound | 字符串,音效命名空间ID | 玩家的头 | 控制玩家的头放置在音符盒上方时发出的声音 |
ominous_bottle_amplifier | 整数,不小于0且不大于4 | 不祥之瓶 | 不祥之瓶被饮用后使玩家获得的不祥之兆状态效果倍率 |
painting/variant | 字符串或复合标签 | 刷怪蛋、画 | 放置的画的变种 |
parrot/variant | 字符串 | 刷怪蛋 | 生成的鹦鹉的变种 |
pig/variant | 字符串 | 刷怪蛋 | 生成的猪的变种 |
pot_decorations | 列表 | 饰纹陶罐 | 饰纹陶罐各方向的陶片装饰 |
potion_contents | 字符串或复合标签 | 药水与药箭 | 药水与状态效果信息 |
potion_duration_scale | 浮点数 | 药水与药箭 | 状态效果时长缩放信息 |
profile | 字符串或复合标签 | 玩家的头 | 玩家游戏档案信息,用于渲染 |
provides_banner_patterns | 字符串 | 所有物品 | 控制旗帜图案属性,是否可放进织布机的旗帜图案槽位 |
provides_trim_material | 字符串或复合标签 | 所有物品 | 控制盔甲纹饰配方提供的纹饰材料 |
rabbit/variant | 字符串 | 刷怪蛋 | 生成的兔子的变种 |
rarity | 字符串枚举 | 所有物品 | 修改物品的稀有度,可以为common (常见)、uncommon (少见)、rare (稀有)、epic (史诗)
|
recipes | 列表 | 知识之书 | 知识之书中存储的配方信息 |
repair_cost | 整数,不小于0 | 所有物品 | 当在铁砧上修理、合并或重命名当前物品时,表示在基础经验等级消耗之上额外增加的累积惩罚 |
repairable | 复合标签 | 不可堆叠且会损坏的物品 | 设置修复物品时使用的物品 |
salmon/size | 字符串 | 刷怪蛋 | 生成的鲑鱼的尺寸 |
sheep/color | 字符串 | 刷怪蛋 | 生成的绵羊的颜色 |
shulker/color | 字符串 | 刷怪蛋 | 生成的潜影贝的颜色 |
stored_enchantments | 复合标签 | 附魔书 | 附魔书中存储的魔咒,不会对物品的行为产生影响,不产生对应的魔咒效果 |
suspicious_stew_effects | 列表 | 谜之炖菜 | 谜之炖菜内的状态效果信息 |
tool | 复合标签 | 所有物品 | 设置物品为某些方块的挖掘工具 |
tooltip_display | 复合标签 | 所有物品 | 隐藏物品的提示框及附加信息 |
tooltip_style | 字符串,命名空间ID | 所有物品 | 指定物品提示框的背景和边框 |
trim | 复合标签 | 盔甲 | 附加到盔甲上的盔甲纹饰 |
tropical_fish/base_color | 字符串 | 刷怪蛋、热带鱼桶 | 生成的热带鱼的体色 |
tropical_fish/pattern | 字符串 | 刷怪蛋、热带鱼桶 | 生成的热带鱼的花纹 |
tropical_fish/pattern_color | 字符串 | 刷怪蛋、热带鱼桶 | 生成的热带鱼的花纹颜色 |
unbreakable | 复合标签 | 带有耐久的物品 | 表示可损坏的物品是否无法破坏 |
use_cooldown | 复合标签 | 所有物品 | 设置物品消耗使用后的冷却时间 |
use_remainder | 复合标签 | 所有物品 | 设置物品消耗使用后返还的物品 |
villager/variant | 字符串 | 刷怪蛋 | 生成的村民或僵尸村民的生物群系装束的变种 |
weapon | 复合标签 | 所有物品 | 设置物品攻击时的某些行为 |
wolf/collar | 字符串 | 刷怪蛋 | 生成的狼的项圈颜色 |
wolf/sound_variant | 字符串 | 刷怪蛋 | 生成的狼使用的音效 |
wolf/variant | 字符串 | 刷怪蛋 | 生成的狼的变种 |
writable_book_content | 复合标签 | 所有物品 | 书与笔存储的文本 |
written_book_content | 复合标签 | 所有物品 | 成书存储的文本、作者等信息 |
物品默认组件[编辑 | 编辑源代码]
未经游戏外部途径修改而获取的物品均拥有默认组件。
物品默认组件可定义为:使用/give
命令且不指定物品堆叠组件时所获取物品的组件。这些组件没有被序列化为物品数据,因此不可用/data
读取,但可通过F3 + H显示高级提示框来查看物品拥有组件的数量。
物品默认组件可由命令和物品修饰器覆盖。当物品现有组件与默认组件完全一致时,该物品:
- 所设定的组件不可用
/data
读取。 - 如果物品堆叠上限大于1,则可以与默认物品堆叠。
创造模式物品栏中,物品可能还有其他组件。当物品现有组件与创造模式物品栏给定组件完全一致时,该物品:
- 创造模式下,在物品提示框中以蓝色字显示其分类。
- 如果物品堆叠上限大于1,则可与创造模式物品栏给定物品堆叠。
物品默认组件与物品种类具有强关联性,物品的默认组件不会被其他物品继承。发生物品替换时,如果替换行为会保留原物品的物品堆叠组件,则只有被序列化为物品数据的组件会被结果物品继承。
物品至少拥有10个默认组件,不同物品的默认组件可能不同,详见下表:
注册名称 | 标签类型 | 默认拥有此组件的物品 | 默认值 |
---|---|---|---|
attribute_modifiers | 列表 | 所有物品 | 通常为空列表,取决于物品ID |
enchantments | 复合标签 | 所有物品 | 空标签 |
item_model | 字符串 | 所有物品 | 物品的命名空间ID |
item_name | 复合标签 | 所有物品 | {"translate":"<物品名称翻译键>"}
|
lore | 列表 | 所有物品 | 空列表 |
max_stack_size | 整数 | 所有物品 | 通常为64、16或1,取决于物品ID |
rarity | 字符串 | 所有物品 | 通常为common ,取决于物品ID
|
repair_cost | 整数 | 所有物品 | 0
|
break_sound | 字符串 | 所有物品 | 盾牌:minecraft:item.shield.break 狼铠: minecraft:item.wolf_armor.break 其他: minecraft:entity.item.break
|
tooltip_display | 复合标签 | 所有物品 | 空标签 |
damage | 整数 | 所有可损伤且不可堆叠的物品 | 0
|
max_damage | 整数 | 所有可损伤且不可堆叠的物品 | 取决于物品ID |
banner_patterns | 列表 | 所有旗帜和盾牌 | 空列表 |
bees | 列表 | 蜂巢和蜂箱 | 空列表 |
block_state | 复合标签 | 光源方块、测试方块、蜂巢和蜂箱 | 光源方块:{light:"15"} 测试方块: {mode:"start"} 蜂巢和蜂箱: {honey_level:"0"}
|
blocks_attacks | 复合标签 | 盾牌 | 见盾牌 § 用途 |
bucket_entity_data | 复合标签 | 各种生物桶 | 空标签 |
charged_projectiles | 列表 | 弩 | 空列表 |
chicken/variant | 字符串 | 鸡蛋及其变种 | 鸡蛋:minecraft:temperate 蓝色鸡蛋: minecraft:cold 棕色鸡蛋: minecraft:warm
|
consumable | 复合标签 | 食物、奶桶、药水和不祥之瓶 | 通常为空标签,消耗后给予或移除状态效果的物品、紫颂果和干海带具有特殊值 |
container | 列表 | 容器方块的方块物品(除末影箱) | 空列表 |
damage_resistant | 复合标签 | 远古残骸、所有下界合金质物品和下界之星 | 下界之星为#is_explosion 伤害类型标签其他为 #is_fire 伤害类型标签
|
death_protection | 复合标签 | 不死图腾 | 见不死图腾 § 用途 |
debug_stick_state | 复合标签 | 调试棒 | 空标签 |
enchantable | 复合标签 | 使用工具材料或盔甲材料(除生物盔甲)的物品、弓、弩、三叉戟、重锤、书和钓鱼竿 | 见附魔能力 |
enchantment_glint_override | 布尔值 | 下界之星、末地水晶、附魔之瓶、附魔金苹果、附魔书、成书和调试棒 | true
|
equippable | 复合标签 | 使用盔甲材料的物品、鞍、地毯、鞘翅、盾牌、生物头颅和雕刻南瓜 | 取决于物品ID |
fireworks | 复合标签 | 烟花火箭 | {flight_duration:1}
|
food | 复合标签 | 所有以物品形式食用的食物 | 取决于物品ID |
glider | 复合标签 | 鞘翅 | 空标签 |
jukebox_playable | 字符串 | 音乐唱片 | 取决于物品ID |
map_color | 整数 | 地图 | 4603950 (0x46402E)
|
map_decorations | 复合标签 | 地图 | 空标签 |
ominous_bottle_amplifier | 整数 | 不祥之瓶 | 0
|
potion_contents | 复合标签 | 药水、喷溅药水、滞留药水及药箭 | 空标签 |
potion_duration_scale | 浮点数 | 滞留药水及药箭 | 滞留药水:0.25 药箭: 0.125
|
recipes | 列表 | 知识之书 | 空列表 |
stored_enchantments | 复合标签 | 附魔书 | 空标签 |
suspicious_stew_effects | 列表 | 谜之炖菜 | 空列表 |
tool | 复合标签 | 剑、三叉戟、重锤、锹、镐、斧、锄和剪刀 | 取决于物品ID |
weapon | 复合标签 | 剑、三叉戟、重锤、锹、镐、斧和锄 | 取决于物品ID |
bundle_contents | 列表 | 收纳袋 | 空列表 |
pot_decorations | 列表 | 饰纹陶罐 | ["minecraft:brick", "minecraft:brick", "minecraft:brick", "minecraft:brick"]
|
provides_banner_patterns | 字符串 | 旗帜图案 | 对应可制作的旗帜图案的标签 |
provides_trim_material | 字符串 | 锻造原材料物品 | 对应的纹饰材料ID |
repairable | 复合标签 | 除马铠外使用工具材料或盔甲材料的物品、盾牌、重锤和鞘翅 | 取决于物品的工具材料、盔甲材料或 盾牌: {items:"#minecraft:wooden_tool_materials"} 重锤: {items:"minecraft:breeze_rod"} 鞘翅: {items:"minecraft:phantom_membrane"}
|
use_cooldown | 复合标签 | 紫颂果、末影珍珠和风弹 | 风弹:{seconds:0.5f} 其他: {seconds:1.0f}
|
use_remainder | 复合标签 | 药水、蜂蜜瓶、蘑菇煲、兔肉煲、甜菜汤、谜之炖菜和奶桶 | 瓶装:{count:1,id:"minecraft:glass_bottle"} 碗装: {count:1,id:"minecraft:bowl"} 桶装: {count:1,id:"minecraft:bucket"}
|
writable_book_content | 复合标签 | 书与笔 | 空标签 |
命令格式[编辑 | 编辑源代码]
物品堆叠组件可以在命令的item_stack和item_predicate参数类型中使用。
item_stack参数类型可以加载物品组件,也可通过在组件名前添加!
来移除该物品的默认组件。当给予物品时,所提供的组件都会被设置,而未提供的组件会被设为默认值。
item_predicate参数类型可以检测物品组件,在/clear
等命令中使用。另外,该参数类型还可以使用物品子谓词检测物品堆叠组件。
数据格式[编辑 | 编辑源代码]
attribute_modifiers[编辑 | 编辑源代码]
带有此组件的物品可以修改佩戴者或持有者的属性。如果物品不在指定的槽位上(slot)则不起效果。如果物品本身具有这些属性,则此列表会覆盖原物品的修饰属性。物品属性修饰符信息会显示在提示框中。
- components:父标签。
- attribute_modifiers 物品堆叠组件
- :单个属性修饰符。
- *
*id:(命名空间ID)属性修饰符的命名空间ID。 - *
*amount:计算中修饰符调整基础值的数值。 - *
*operation:定义修饰符对属性的基础值的运算方法。可以为add_value
(Op0)、add_multiplied_base
(Op1)、add_multiplied_total
(Op2)。如果设置值无效,则为add_value
(Op0)。 - slot:(默认为
any
)指定修饰符产生效果的槽位。可以为mainhand
(主手)、offhand
(副手)、head
(头盔)、chest
(胸甲)、legs
(护腿)、feet
(靴子)、hand
(双手)、armor
(所有护甲)、body
(身体)、saddle
(鞍)和any
(任何槽位)。 - *
*type:一个属性(使用命名空间ID指定),表示属性修饰符所要修饰的属性。
- *
- :单个属性修饰符。
- attribute_modifiers 物品堆叠组件
命令格式示例:/give @s stick[attribute_modifiers=[{type:"scale",slot:"hand",id:"example:grow",amount:4,operation:"add_multiplied_base"}]]
- 给予一个木棍,玩家手持该木棍时尺寸会增加4倍(即原来的5倍大小)。
axolotl/variant[编辑 | 编辑源代码]
- components:父标签
- minecraft:axolotl/variant:生成的美西螈的变种。取值可以为
lucy
、wild
、gold
、cyan
或blue
,分别对应“粉红色”、“棕色”、“金色”、“青色”和“蓝色”。
- minecraft:axolotl/variant:生成的美西螈的变种。取值可以为
命令格式示例:/give @s axolotl_spawn_egg[axolotl/variant="blue"]
- 给予当前实体一个美西螈刷怪蛋,当使用此刷怪蛋时,生成一只蓝色变种美西螈。
banner_patterns[编辑 | 编辑源代码]
此组件保存旗帜上的图案和盾牌内的旗帜图案。列表内的旗帜图案按顺序进行渲染,调换顺序会使得最终图案不同。
- components:父标签。
- banner_patterns 物品堆叠组件
- :一个单独的旗帜图案。
- *
*color:旗帜图案的染料颜色。 - *
*pattern:旗帜图案类型的命名空间ID或旗帜图案类型的详细信息。- *
*asset_id:旗帜图案类型的纹理位置。 - *
*translation_key:旗帜图案类型名称的翻译键。
- *
- *
- :一个单独的旗帜图案。
- banner_patterns 物品堆叠组件
命令格式示例:/give @s black_banner[banner_patterns=[{pattern:"triangle_top",color:"red"},{pattern:"cross",color:"white"}]]
- 给予一个黑色旗帜,其上有红色三角形和白色十字图案。
base_color[编辑 | 编辑源代码]
盾牌的基础颜色,控制盾牌的名称。
- components:父标签
- minecraft:base_color:染料颜色,表示盾牌的基础颜色,控制盾牌的名称。
命令格式示例:/give @s shield[base_color="lime"]
- 给予一个黄绿色盾牌。
bees[编辑 | 编辑源代码]
蜂巢和蜂箱使用此组件以保存内部的蜜蜂数据。
- components:父标签。
- bees 物品堆叠组件
- :一只蜜蜂的数据。
- *
*entity_data:蜜蜂的部分实体数据。如果保存的实体数据不是带有#beehive_inhabitors
的实体(默认为蜜蜂),则尝试放出此实体时实体不会被生成,其数据会被删除。- 见实体数据格式。下列标签不会被保存,也不会被加载:Air、drop_chances、Brain、CannotEnterHiveTicks、CanPickUpLoot、CropsGrownSincePollination、DeathTime、equipment、fall_distance、FallFlying、Fire、hive_pos、HurtByTimestamp、HurtTime、leash、LeftHanded、Motion、NoGravity、OnGround、Passengers、PortalCooldown、Pos、Rotation、TicksSincePollination、UUID。
- *
*min_ticks_in_hive:蜜蜂会在巢内滞留的最短时间。 - *
*ticks_in_hive:蜜蜂在巢内已滞留的时间。
- *
- :一只蜜蜂的数据。
- bees 物品堆叠组件
命令格式示例:/give @s bee_nest[bees=[{entity_data:{id:"bee",CustomName:"Maya"},min_ticks_in_hive:60,ticks_in_hive:0}]]
- 给予一个蜂巢,其中包含1只名为“Maya”的蜜蜂,该蜜蜂将会在3秒后离开蜂巢。
block_entity_data[编辑 | 编辑源代码]
存储应用于方块实体的方块实体数据(非结构化NBT数据),放置诸如箱子或熔炉等方块时将加载该组件的数据。方块实体数据被移动到其他专用的物品组件中时会被删除。当方块被放置时,其任何附加字段都将被合并到该组件中。作为字符串时游戏将字符串视为SNBT加载。
- components:父标签。
- block_entity_data 物品堆叠组件
- *
*id:方块实体的命名空间ID。 - 若干与该方块对应的方块实体数据标签,见方块实体数据格式。
- *
- block_entity_data 物品堆叠组件
命令格式示例:/give @s spawner[block_entity_data={id:"mob_spawner",SpawnData:{entity:{id:"spider"}}}]
- 给予一个蜘蛛刷怪笼。要放置该刷怪笼,玩家必须要有管理员权限。
block_state[编辑 | 编辑源代码]
各种方块物品都可以拥有此组件,用于指定此方块物品被放置时的方块状态。如果没有指定方块状态中的某些方块属性,则使用对应方块的默认方块属性值。
- components:父标签。
- block_state 物品堆叠组件
- <方块属性>:设置一项方块属性为指定的值。如果方块属性不存在或对应的方块属性值无效,则这项设置不起任何作用。
- block_state 物品堆叠组件
命令格式示例:/give @s bamboo_slab[block_state={type:"top"}]
- 给予一个竹台阶,其被放置时总位于方块网格的上半部分。
blocks_attacks[编辑 | 编辑源代码]
控制物品是否具有类似于盾牌的格挡行为。
- components:父标签。
- minecraft:blocks_attacks
- block_delay_seconds:(值≥0,默认为
0
)成功阻挡攻击前需要按住右键的秒数。 - block_sound:成功阻挡攻击时播放的声音事件。
- bypassed_by:(伤害类型标签)设置指定标签的伤害类型可以无视此物品的阻挡而造成实际伤害。
- damage_reductions:控制可阻挡多少伤害。未指定时,可阻挡一切伤害。
- :控制可挡下的伤害量和伤害类型。阻挡成功时,伤害减少
clamp(base + factor * 所受攻击伤害, 0, 所受攻击伤害)
。- *
*base:固定阻挡的伤害。 - *
*factor:应被阻挡的伤害比例。 - horizontal_blocking_angle:(值>0,角度制,默认为90)在水平方向上,以当前玩家视角的水平分量向量为基准,如果受伤害方向与基准方向夹角小于此角度则伤害可被阻挡,否则不能阻挡。任何无来源伤害均被视为需要180度才能阻挡。
- type:可阻挡的伤害类型。允许单个ID、列表或标签。未指定则表示对所有伤害有效。
- *
- :控制可挡下的伤害量和伤害类型。阻挡成功时,伤害减少
- disable_cooldown_scale:(值≥0,默认为
1
)被可禁用阻挡的攻击击中时,物品冷却时长的乘数。为0
时,此物品不能被攻击禁用。 - disabled_sound:此物品被攻击禁用时播放的声音事件。
- item_damage:控制攻击对物品造成的耐久损耗。未指定时,每次攻击损耗物品1点耐久。物品耐久最终损耗
floor(threshold, base + factor * 所受攻击伤害)
。最终值可以为负数以使物品修复。- *
*base:损耗物品固定耐久度。 - *
*factor:所受攻击伤害的乘数。 - *
*threshold:(值≥0)攻击对此物品造成的最低耐久度损耗。
- *
- block_delay_seconds:(值≥0,默认为
- minecraft:blocks_attacks
命令格式示例:/give @s bow[blocks_attacks={disable_cooldown_scale:0}]
break_sound[编辑 | 编辑源代码]
控制物品耐久度耗尽后播放的声音事件。此组件不存在时则不播放声音事件。
- components:父标签。
- minecraft:break_sound:一个声音事件。
命令格式示例:/give @s golden_sword[break_sound={sound_id:"entity.player.levelup",range:24.0f}]
- 给予当前实体一个金剑,在其耐久度耗尽时播放声音事件“玩家:升级”,播放范围基值为24。
bucket_entity_data[编辑 | 编辑源代码]
在将实体从桶中放出(或生成)时应用于实体的数据。应用时采取合并的方式。作为字符串时游戏将字符串视为SNBT加载。
- components:父标签。
- bucket_entity_data 物品堆叠组件
- *Glowing:表示桶中生物是否有发光的轮廓线。
- *Health:桶中生物的生命值。
- *Invulnerable:表示桶中生物是否能抵抗绝大多数伤害。
- *NoAI:表示桶中生物的AI是否被禁用。
- *NoGravity:表示桶中生物是否不受重力影响。
- *Silent:表示桶中生物是否不会发出任何声音。
- 如果桶中生物是鱼类,则不存在额外标签。
- 如果桶中生物是蝌蚪,则有下列1个额外标签:
- *Age:桶中蝌蚪的年龄。大于等于24000时,蝌蚪会长大成青蛙。
- 如果桶中生物是美西螈,则有下列2个额外标签:
- *Age:桶中美西螈的年龄。生物为幼体时为负值;生物为成体时为正值或0,如果为正值则表示距离生物能再次繁衍的时间。
- *HuntingCooldown:桶中美西螈生物记忆
has_hunting_cooldown
的过期倒计时。
- bucket_entity_data 物品堆叠组件
bundle_contents[编辑 | 编辑源代码]
收纳袋使用此组件保存内部包含的物品。如果此组件不存在则代表收纳袋内没有物品。
- components:父标签。
- bundle_contents 物品堆叠组件
- :一个物品。后加入的物品会在列表前方,而先加入的物品会在列表后方。
- bundle_contents 物品堆叠组件
命令格式示例:/give @s bundle[bundle_contents=[{id:"diamond",count:2}]]
- 给予一个包含2颗钻石的收纳袋。
can_place_on和can_break[编辑 | 编辑源代码]
此类型组件检查交互的方块,用于控制是否放置方块或破坏方块。如果存在此组件但方块谓词未指定或不满足条件,则显示于提示框的方块为“未知”,且此物品可放置在任意方块上或破坏任意方块。
- components:父标签。
- can_place_on或can_break 物品堆叠组件:检查交互的方块是否满足指定的谓词,作为列表时内部元素与此标签作为复合标签时相同。
命令格式示例:/give @s golden_pickaxe[can_break={blocks:['copper_ore','coal_ore','iron_ore','gold_ore','diamond_ore','emerald_ore']}]
- 给予一把仅能挖掘一些矿石的金镐。
命令格式示例:/give @s stone[can_place_on={blocks:'sandstone'}]
- 给予一个冒险模式下仅能放置在砂岩上的石头。
cat/collar[编辑 | 编辑源代码]
控制刷怪蛋生成的猫在驯服后显示的项圈颜色。
- components:父标签
- minecraft:cat/collar:生成的猫的项圈颜色。取值为染料颜色。
命令格式示例:/give @s cat_spawn_egg[cat/collar="orange"]
- 给予当前实体一个猫刷怪蛋,在使用此刷怪蛋生成且驯服猫后,猫的项圈会显示为橙色。
cat/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的猫的变种。
- components:父标签
- minecraft:cat/variant:生成的猫的变种。取值需为
cat_variant
注册表下的命名空间ID。
- minecraft:cat/variant:生成的猫的变种。取值需为
命令格式示例:/give @s cat_spawn_egg[cat/variant="white"]
- 给予当前实体一个猫刷怪蛋,使用此刷怪蛋会固定生成白猫变种。
charged_projectiles[编辑 | 编辑源代码]
弩使用此组件保存当前装载在弩内的物品信息。此组件的所有物品将在提示框中显示,相同的内容物会尝试合并显示,若物品列表存在烟花火箭则使用“装填烟花火箭的弩”。若弩没有可用且对应的弹射物纹理,则默认使用“装填箭的弩”。此组件不存在时代表弩没有装载任何物品。
- components:父标签。
- charged_projectiles 物品堆叠组件
- :一个物品。
- charged_projectiles 物品堆叠组件
命令格式示例:/give @s crossbow[charged_projectiles=[{id:"spectral_arrow"}]]
- 给予一把已经装载了一支光灵箭的弩。
chicken/variant[编辑 | 编辑源代码]
控制刷怪蛋或鸡蛋生成的鸡的变种。
- components:父标签
- minecraft:chicken/variant:生成的鸡的变种。取值需为
chicken_variant
注册表下的命名空间ID。
- minecraft:chicken/variant:生成的鸡的变种。取值需为
命令格式示例:/give @s chicken_spawn_egg[chicken/variant="warm"]
- 给予当前实体一个鸡刷怪蛋,使用此刷怪蛋会固定生成热带鸡变种。
consumable[编辑 | 编辑源代码]
为物品添加消耗使用行为和对应的效果。消耗使用指物品数量在使用后会减少的使用操作,但不包含方块物品的放置等对方块进行的有效操作。
这些物品即使使用此组件,也不能被消耗:船、运输船[2];满足放置条件的矿车、漏斗矿车、命令方块矿车、运输矿车、动力矿车和TNT矿车[3];三叉戟[4];刷子[5];铁桶、水桶、熔岩桶、鳕鱼桶、鲑鱼桶、河豚桶、热带鱼桶、美西螈桶、蝌蚪桶[6];弓、弩[7];烟花火箭[8]和所有刷怪蛋[9]。
当此组件与food
组件同时使用时,物品能否使用需要根据food
组件内can_always_eat和饥饿状态决定。
若物品同时具有food
、ominous_bottle_amplifier
、potion_contents
和suspicious_stew_effects
等组件,则这些组件的效果也会一并应用。
- components:父标签。
- minecraft:consumable 物品堆叠组件
- animation:(默认为
eat
)物品使用时的动画。可以为none
(无动作)、eat
(吃)、drink
(饮用)、block
(格挡)、bow
(拉弓)、brush
(清刷)、crossbow
(弩上弦)、spear
(三叉戟投掷)、spyglass
(看望远镜)、toot_horn
(吹山羊角)和bundle
(使用收纳袋)。 - consume_seconds:(值≥0,默认为1.6)物品使用的时间,单位为秒。当此值为0时,物品立刻使用,不会像拉弓等操作需要等待时间。
- has_consume_particles:(默认为
true
)物品在使用时是否产生物品破碎粒子。 - on_consume_effects:当物品被使用后,物品产生的效果。
- :一项物品效果。
- *
*type:物品效果类型。- 如果type为
apply_effects
,则对使用此物品的生物添加状态效果:
- 如果type为
- *
*effects:物品使用后添加的状态效果。- :一项状态效果。
- probability:(0≤值≤1,默认为1)食用后施加此状态效果的概率。
- 如果type为
clear_all_effects
,则对使用此物品的生物移除所有状态效果。 - 如果type为
play_sound
,则播放指定的声音:
- 如果type为
- *
*sound:一个声音事件(可以用 字符串指定一个声音事件的命名空间ID,或直接在此处以 类型定义一个新的声音事件)要播放的声音。- 如果type为
remove_effects
,则对使用此物品的生物移除指定状态效果:
- 如果type为
- *
*effects:一个或多个状态效果(可以用 字符串指定一个状态效果的命名空间ID;若要指定多个状态效果,可以用 字符串指定一个带有#
前缀的标签,或指定一个 数组,数组中的元素应为 命名空间ID字符串)物品使用后要移除的状态效果。- 如果type为
teleport_randomly
,则对使用此物品的生物进行随机传送:
- 如果type为
- diameter:(值>0,默认为16)随机传送的半径,以传送前的位置作为原点。
- *
- :一项物品效果。
- sound:(默认为
entity.generic.eat
)一个声音事件(可以用 字符串指定一个声音事件的命名空间ID,或直接在此处以 类型定义一个新的声音事件)使用物品时产生的声音。
- animation:(默认为
- minecraft:consumable 物品堆叠组件
命令格式示例:/give @s minecraft:iron_pickaxe[minecraft:consumable={animation:"eat",consume_seconds:1.6,on_consume_effects:[{type:"apply_effects",effects:[{amplifier:15,duration:6000,id:"haste",show_icon:true,show_particles:false}]}],sound:"block.anvil.land"}]
container[编辑 | 编辑源代码]
容器方块物品使用此组件保存内部的物品栏。拥有此组件的物品还会在提示框中显示至多五项内容物信息。
- components:父标签。
- container 物品堆叠组件
- :一个物品槽位上的物品堆叠数据。
- *
*item:在此位置的物品堆叠数据。 - *
*slot:(0≤值≤255)物品堆叠所在的槽位。
- *
- :一个物品槽位上的物品堆叠数据。
- container 物品堆叠组件
命令格式示例:/give @s barrel[container=[{slot:0,item:{id:apple}}]]
- 给予一个木桶,其中的第一个槽位放了一个苹果。
container_loot[编辑 | 编辑源代码]
各种战利品容器方块物品使用此组件存储放置方块时附加到战利品容器方块实体上的战利品表数据。
- components:父标签。
- container_loot 物品堆叠组件
- *
*loot_table:(命名空间ID)生成战利品使用的战利品表。 - seed:(可选,默认为0)生成战利品使用的种子,0或不输入将使用随机序列。
- *
- container_loot 物品堆叠组件
命令格式示例:/give @s chest[container_loot={loot_table:"chests/desert_pyramid"}]
- 给予一个箱子,当该箱被打开时会按照
minecraft:chests/desert_pyramid
战利品表来生成物品。
cow/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的牛的变种。
- components:父标签
- minecraft:cow/variant:生成的牛的变种。取值需为
cow_variant
注册表下的命名空间ID。原版内置warm
、temperate
和cold
,分别对应“热带牛”、“温带牛”和“寒带牛”。
- minecraft:cow/variant:生成的牛的变种。取值需为
命令格式示例:/give @s cow_spawn_egg[cow/variant="warm"]
- 给予当前实体一个只生成热带牛变种的牛刷怪蛋。
custom_data[编辑 | 编辑源代码]
玩家所自定义的数据。可以为一个复合标签,也可以为字符串。如果此组件是字符串,则将此字符串视为SNBT,游戏将在解析时自动将字符串转换为对应的NBT数据。
- components:父标签。
- custom_data 物品堆叠组件
- <一个自定义标签名>:一个可能为任意类型的自定义标签。
- custom_data 物品堆叠组件
命令格式示例:/give @s iron_sword[custom_data={foo:1}]
- 给予一把带有自定义数据
{foo:1}
的铁剑。
custom_model_data[编辑 | 编辑源代码]
用于设置物品模型数据使其能展现不同的模型。
- components:父标签
- minecraft:custom_model_data:设置物品模型映射的参数。
- colors:定义物品模型映射中的着色。
- :直接使用整数代表颜色。
- :定义RGB三个分量确定颜色。
- :R(红)颜色分量。
- :G(绿)颜色分量。
- :B(蓝)颜色分量。
- flags:定义
condition
物品模型映射类型的布尔值。- :一个布尔值。
- floats:定义
range_dispatch
物品模型映射类型的浮点数。- :一个浮点数。
- strings:定义
select
物品模型映射类型的字符串。- :一个字符串。
- colors:定义物品模型映射中的着色。
- minecraft:custom_model_data:设置物品模型映射的参数。
命令格式示例:/give @s bone[custom_model_data={floats:[167264f]}]
- 给予一个带有自定义模型数据的骨头。
custom_name[编辑 | 编辑源代码]
自定义物品名称,默认为斜体。
- components:父标签
- minecraft:custom_name:(文本组件)物品的自定义名称。
命令格式示例:/give @s stick[custom_name={"text":"Magic Wand","color":"light_purple","italic":false}]
- 给予一个名为“Magic Wand”的木棍。(名称为浅紫色、非斜体字形)
damage[编辑 | 编辑源代码]
物品的损坏值,此组件不存在代表物品处于最大耐久值。只有拥有此组件的物品才能被诸如tool
等能降低耐久度的组件损坏物品耐久度。[10]
- components:父标签
- minecraft:damage:(值≥0)物品的损坏值。
命令格式示例:/give @s diamond_axe[damage=500]
- 给予一把损耗了500点耐久的钻石斧。
damage_resistant[编辑 | 编辑源代码]
使得物品实体不受指定伤害类型的伤害而被摧毁,且此物品被装备时不会因为受到此类伤害而消耗耐久度。
- components:父标签
- minecraft:damage_resistant 物品堆叠组件
- *
*types:伤害类型标签,物品受到指定伤害类型标签的伤害时不会被摧毁。
- *
- minecraft:damage_resistant 物品堆叠组件
命令格式示例:/give @s diamond_axe[damage_resistant={types:"#is_explosion"}]
- 给予当前实体的此钻石斧不因受爆炸伤害而被摧毁,且此物品被装备时不会因为受到爆炸伤害而消耗耐久度。
death_protection[编辑 | 编辑源代码]
物品在手上时,如果生物受到伤害类型不为#bypasses_invulnerability
的致死伤害,游戏会阻止生物死亡、将生命值设置为1,并消耗一个对应的物品。
- components:父标签
- minecraft:death_protection 物品堆叠组件
- death_effects:(默认为空列表)触发此物品后产生的效果。
- :一项物品效果。
- *
*type:物品效果类型。- 如果type为
apply_effects
,则对使用此物品的生物添加状态效果:
- 如果type为
- *
*effects:物品使用后添加的状态效果。- :一项状态效果。
- probability:(0≤值≤1,默认为1)食用后施加此状态效果的概率。
- 如果type为
clear_all_effects
,则对使用此物品的生物移除所有状态效果。 - 如果type为
play_sound
,则播放指定的声音:
- 如果type为
- *
*sound:一个声音事件(可以用 字符串指定一个声音事件的命名空间ID,或直接在此处以 类型定义一个新的声音事件)要播放的声音。- 如果type为
remove_effects
,则对使用此物品的生物移除指定状态效果:
- 如果type为
- *
*effects:一个或多个状态效果(可以用 字符串指定一个状态效果的命名空间ID;若要指定多个状态效果,可以用 字符串指定一个带有#
前缀的标签,或指定一个 数组,数组中的元素应为 命名空间ID字符串)物品使用后要移除的状态效果。- 如果type为
teleport_randomly
,则对使用此物品的生物进行随机传送:
- 如果type为
- diameter:(值>0,默认为16)随机传送的半径,以传送前的位置作为原点。
- *
- :一项物品效果。
- death_effects:(默认为空列表)触发此物品后产生的效果。
- minecraft:death_protection 物品堆叠组件
命令格式示例:/give @s dragon_head[death_protection={death_effects:[]}]
- 给予当前实体一个龙首,手持此物品时在受到除
#bypasses_invulnerability
伤害类型外的致命伤害时阻止生物死亡、将生命值设为1并消耗一个此物品。
debug_stick_state[编辑 | 编辑源代码]
调试棒使用此组件保存方块与当前修改的方块属性的映射。
- components:父标签。
- debug_stick_state 物品堆叠组件
- <方块的命名空间ID>:方块和此方块将要修改的方块属性的键值对。
- debug_stick_state 物品堆叠组件
命令格式示例:/give @s debug_stick[debug_stick_state={"oak_leaves":"waterlogged"}]
dyed_color[编辑 | 编辑源代码]
当物品带有此组件时,物品会被渲染为对应的颜色,并将颜色值显示在提示框中。
如果设置此组件为列表,则列表的三个分量依次表示R、G、B值。游戏在保存时只会保存为整数形式。
- components:父标签。
- dyed_color 物品堆叠组件:物品的颜色。只使用后24位,每个颜色通道占用8位,按RGB依次存储。
- :R(红)颜色分量。
- :G(绿)颜色分量。
- :B(蓝)颜色分量。
- dyed_color 物品堆叠组件:物品的颜色。只使用后24位,每个颜色通道占用8位,按RGB依次存储。
命令格式示例:/give @s leather_helmet[dyed_color=16747238,tooltip_display={hidden_components:[dyed_color]}]
- 给予一个粉红色的皮革帽子,在物品提示框中不显示“已染色”。
enchantable[编辑 | 编辑源代码]
设置物品的附魔能力。
- components:父标签。
- minecraft:enchantable 物品堆叠组件
- *
*value:(值≥1)物品的附魔能力。
- *
- minecraft:enchantable 物品堆叠组件
命令格式示例:/give @s diamond_sword[enchantable={value:64}]
- 给予当前实体一把附魔能力为64的钻石剑。
enchantment_glint_override[编辑 | 编辑源代码]
物品是否会显示光效,此组件的优先级高于其他任何影响光效的组件和物品自身属性。
- components:父标签
- minecraft:enchantment_glint_override:是否显示附魔光效。
命令格式示例:/give @s experience_bottle[enchantment_glint_override=false]
- 给予一个不带附魔光效的附魔之瓶(默认带有附魔光效)。
enchantments和stored_enchantments[编辑 | 编辑源代码]
当物品带有此组件时,物品会获得此标签内保存的魔咒。其中stored_enchantments
为附魔书存储魔咒的组件。
同时具有stored_enchantments
组件和非空的enchantments
组件的任意物品可以作为消耗品在铁砧中为其他物品附魔,但只有enchantments
组件内的魔咒会被附魔。
具有非空的enchantments
组件的物品不能通过附魔台附魔,但具有stored_enchantments
组件的物品仍能以此方式附魔,除非它不具有附魔能力(如附魔书)。[11]
- components:父标签。
- enchantments或stored_enchantments 物品堆叠组件
- <魔咒命名空间ID>:(1≤值≤255)物品的一个魔咒和对应魔咒的等级。
- enchantments或stored_enchantments 物品堆叠组件
命令格式示例:/give @s wooden_sword[enchantments={sharpness:3,knockback:2}]
- 给予一把带有锋利III和击退II的木剑。
命令格式示例:/give @s enchanted_book[stored_enchantments={efficiency:5,unbreaking:3}]
- 给予一本带有效率V和耐久III的附魔书。
注意:enchantments
组件添加的是“带活性”的魔咒,而另一个与之名称相似的组件stored_enchantments
是用来添加“无活性”魔咒的,通常用于附魔书。比如一个带有[enchantments={knockback:2}]
的附魔书将会对任何实体造成击退II的效果,而带有[stored_enchantments={knockback:2}]
的附魔书就没有这种效果。另外,带有stored_enchantments
组件的物品能在铁砧中像附魔书一样进行为其他物品附魔的消耗行为,而enchantments
组件则不能。
entity_data[编辑 | 编辑源代码]
物品生成对应实体时(如使用刷怪蛋或放置盔甲架)应用于所生成实体的数据。应用时采取合并的方式。作为字符串时游戏将字符串视为SNBT加载。
- components:父标签。
- entity_data 物品堆叠组件
- *
*id:实体的命名空间ID。 - 若干与该物品所生成实体对应的实体数据标签,见实体数据格式。
- *
- entity_data 物品堆叠组件
命令格式示例1:/give @s armor_stand[entity_data={id:"armor_stand",Small:1b}]
- 给予一个在放置时成为小型盔甲架的盔甲架。
命令格式示例2:/give @s pig_spawn_egg[entity_data={id:"sheep"}]
- 给予一个使用时生成绵羊的猪刷怪蛋。
equippable[编辑 | 编辑源代码]
让生物可以穿戴物品,并可以指定生物穿戴此物品时的装备模型。
- components:父标签。
- minecraft:equippable 物品堆叠组件
- allowed_entities:(默认为全部生物)一个或多个实体类型(可以用 字符串指定一个实体类型的命名空间ID;若要指定多个实体类型,可以用 字符串指定一个带有
#
前缀的标签,或指定一个 数组,数组中的元素应为 命名空间ID字符串)可以穿戴此物品的生物。 - asset_id:(命名空间ID)物品被穿戴时的装备模型。如果此值不存在,游戏将不渲染此物品穿戴在生物上的模型。
- camera_overlay:(命名空间ID)当此项存在且物品被玩家穿戴时,玩家第一人称视角将渲染指定的纹理遮罩。此遮罩可以使用多个设置此标签的物品互相叠加,每个物品指定的遮罩都会被渲染,且渲染顺序按照主手、副手、头盔、胸甲、护腿、靴子、身体、鞍的顺序依次叠加渲染。当遮罩纹理渲染时,遮罩纹理被视为独立纹理,即无法作为动态纹理或GUI纹理渲染,但可以指定纹理过滤方式。
- damage_on_hurt:(默认为
true
)生物在受到会影响损害盔甲的伤害时此物品是否会受损而减少耐久。 - equip_on_interact:(默认为
false
)使用此物品时,是否可以让被交互的生物在允许的空槽位上穿戴此物品。 - equip_sound:(默认为
item.armor.equip_generic
)一个声音事件(可以用 字符串指定一个声音事件的命名空间ID,或直接在此处以 类型定义一个新的声音事件)物品被穿戴时的声音。 - dispensable:(默认为
true
)是否可以使用发射器使生物穿戴此物品。如果物品本身有特殊的发射器行为则此项无效。 - *
*slot:物品可被穿戴的装备槽位。可以为mainhand
(主手)、offhand
(副手)、head
(头盔)、chest
(胸甲)、legs
(护腿)、feet
(靴子)、saddle
(鞍)和body
(身体)。 - swappable:(默认为
true
)物品是否可以直接使用穿戴。
- allowed_entities:(默认为全部生物)一个或多个实体类型(可以用 字符串指定一个实体类型的命名空间ID;若要指定多个实体类型,可以用 字符串指定一个带有
- minecraft:equippable 物品堆叠组件
命令格式示例:/give @s bedrock[equippable={slot:"head"}]
- 给予当前实体一个可戴在头上的基岩。
firework_explosion[编辑 | 编辑源代码]
烟火之星使用此组件保存所有爆裂的信息。
- components:父标签。
- firework_explosion 物品堆叠组件
- colors:(默认为空数组)表示爆裂时的粒子颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储。如果颜色没有对应的染料颜色,游戏将在提示框中显示为“自定义”,但爆裂时会产生正确的颜色。当存在多个值时,每个爆裂粒子在渲染时会随机选择一种颜色用于渲染。不存在或数组为空时被视为黑色。
- fade_colors:(默认为空数组)表示爆裂后的淡化粒子颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储。当存在多个值时,每个爆裂粒子在渲染时会随机选择一种颜色用于渲染。
- has_trail:(默认为
false
)表示烟火是否有拖曳痕迹(使用钻石合成时)。 - has_twinkle:(默认为
false
)表示烟火是否出现闪烁效果(使用荧石粉合成时)。 - *
*shape:爆裂时的形态。可以为small_ball
(小型球状)、large_ball
(大型球状)、star
(星形)、creeper
(苦力怕状)、burst
(喷发状)。
- firework_explosion 物品堆叠组件
命令格式示例:/give @s firework_star[firework_explosion={colors:[I;11743532],shape:"creeper"}]
- 给予当前实体一个红色苦力怕状烟火之星。
fireworks[编辑 | 编辑源代码]
烟花火箭使用此组件保存所有爆裂的信息,并保存飞行时间信息。
- components:父标签。
- fireworks 物品堆叠组件
- flight_duration:(无符号8位整数,默认为0)烟花火箭的飞行的时间,单位为“火药”(即表现为和在工作台上合成烟花火箭时所用的火药数相等)。
- explosions:(最多256个元素)烟花火箭对应的烟火之星的数据,控制烟花火箭飞行结束时产生的爆裂烟花渲染。
- :一个烟火之星的数据。
- colors:(默认为空数组)表示爆裂时的粒子颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储。如果颜色没有对应的染料颜色,游戏将在提示框中显示为“自定义”,但爆裂时会产生正确的颜色。当存在多个值时,每个爆裂粒子在渲染时会随机选择一种颜色用于渲染。不存在或数组为空时被视为黑色。
- fade_colors:(默认为空数组)表示爆裂后的淡化粒子颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储。当存在多个值时,每个爆裂粒子在渲染时会随机选择一种颜色用于渲染。
- has_trail:(默认为
false
)表示烟火是否有拖曳痕迹(使用钻石合成时)。 - has_twinkle:(默认为
false
)表示烟火是否出现闪烁效果(使用荧石粉合成时)。 - *
*shape:爆裂时的形态。可以为small_ball
(小型球状)、large_ball
(大型球状)、star
(星形)、creeper
(苦力怕状)、burst
(喷发状)。
- :一个烟火之星的数据。
- fireworks 物品堆叠组件
命令格式示例:/give @s firework_rocket[fireworks={flight_duration:1b,explosions:[{colors:[16711680,16743168],fade_colors:[16776960,65515],has_trail:True,shape:"small_ball"}]}]
- 给予一个烟花火箭,该烟花火箭的飞行时间为1,爆裂时粒子的形态为小型球状,具有拖曳痕迹,颜色先为红色与橙色后淡化为蓝色与青色。
food[编辑 | 编辑源代码]
保存物品的食物属性信息。物品还需要有consumable
组件才能被食用。
- components:父标签。
- food 物品堆叠组件
- can_always_eat:(默认为
false
)表示物品是否可以无视当前饥饿值食用。 - *
*nutrition:(值≥0)食用物品时增加的饥饿值。 - *
*saturation:食用物品时增加的饱和度。
- can_always_eat:(默认为
- food 物品堆叠组件
命令格式示例1: /give @s sponge[food={can_always_eat:true,nutrition:3,saturation:1},consumable={}]
- 给予一个海绵,该海绵可无视饥饿值食用,玩家食用后恢复玩家3点饥饿值和1点饱和度。
fox/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的狐狸的变种。
- components:父标签
- minecraft:fox/variant:生成的狐狸的变种。取值可以为
red
或snow
。
- minecraft:fox/variant:生成的狐狸的变种。取值可以为
命令格式示例:/give @s fox_spawn_egg[fox/variant="snow"]
- 给予当前实体一个只生成白色狐狸变种的狐狸刷怪蛋。
frog/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的青蛙的变种。
- components:父标签
- minecraft:frog/variant:生成的青蛙的变种。取值需为
frog_variant
注册表下的命名空间ID。原版内置cold
(绿色)、temperate
(橙色)和warm
(白色)。
- minecraft:frog/variant:生成的青蛙的变种。取值需为
命令格式示例:/give @s frog_spawn_egg[frog/variant="cold"]
- 给予当前实体一个只生成绿色青蛙变种的青蛙刷怪蛋。
glider[编辑 | 编辑源代码]
此物品被穿戴后,玩家可以滑翔。玩家滑翔时此物品每1秒消耗1耐久度。
- components:父标签
- minecraft:glider:
{}
- minecraft:glider:
命令格式示例:/give @s netherite_chestplate[glider={}]
- 给予当前实体一个穿戴时可滑翔的下界合金胸甲。
horse/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的马的变种。
- components:父标签
- minecraft:horse/variant:生成的马的变种。取值可以为
white
、creamy
、chestnut
、brown
、black
、gray
或dark_brown
。
- minecraft:horse/variant:生成的马的变种。取值可以为
命令格式示例:/give @s horse_spawn_egg[horse/variant="white"]
- 给予当前实体一个只生成白色变种马的马刷怪蛋。
instrument[编辑 | 编辑源代码]
山羊角使用此组件保存其被吹奏时发出的声音。可以使用命名空间ID直接指定,也可以使用详细数据指定。
- components:父标签。
命令格式示例:/give @s goat_horn[instrument="seek_goat_horn"]
- 给予当前实体一个寻觅类型的山羊角。
intangible_projectile[编辑 | 编辑源代码]
若某箭挂载有此组件,该箭被弓或弩射出后只能由创造模式玩家捡起。
- components:父标签
- minecraft:intangible_projectile:
{}
- minecraft:intangible_projectile:
命令格式示例:/give @s arrow[intangible_projectile={}]
- 给予一支箭,该箭由弓射出后不能被除创造模式外的玩家捡起。
item_model[编辑 | 编辑源代码]
设置物品的物品模型映射。物品模型映射会根据命名空间ID解析为assets/<命名空间>/items/<路径>.json
。若对应的模型映射无法解析,则使用无效模型。物品不存在这个组件时什么也不会渲染。
- components:父标签
- minecraft:item_model:(命名空间ID)物品的模型映射。
命令格式示例:/give @s diamond_chestplate[item_model="elytra"]
item_name[编辑 | 编辑源代码]
物品的默认名称。当custom_name
组件不存在时充当物品的名称。不像custom_name
,该名称无法通过铁砧修改,也不能在物品展示框中显示名称。对于带有该组件的旗帜,在充当地图标记时也不会显示名称。
- components:父标签
- minecraft:item_name:(文本组件)物品的默认名称。
命令格式示例:/give @s stone_sword[item_name="铁剑"]
- 给予当前实体一个默认名称为“铁剑”的石剑。
jukebox_playable[编辑 | 编辑源代码]
设置物品所含有的音乐唱片音乐信息。
命令格式示例:/give @s diamond[jukebox_playable="pigstep"]
- 给予一颗钻石,其可以被插入到唱片机中播放音乐《Pigstep》。
llama/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的羊驼的变种。
- components:父标签
- minecraft:llama/variant:生成的羊驼的变种。取值可以为
creamy
、white
、brown
或gray
。
- minecraft:llama/variant:生成的羊驼的变种。取值可以为
命令格式示例:/give @s llama_spawn_egg[llama/variant="white"]
- 给予当前实体一个只生成白色羊驼变种的羊驼刷怪蛋。
lock[编辑 | 编辑源代码]
为容器方块或信标上锁,仅当使用符合相应谓词的物品才可以打开此容器或信标。
- components:父标签
- minecraft:lock:物品谓词,表示打开该容器所需的物品。仅当该物品与玩家手持物品匹配时才能打开。
命令格式示例:/give @s chest[lock={components:{custom_name:"密码"}}]
- 给予一个被上锁的箱子,玩家仅能手持名为“密码”的物品来打开它。
lodestone_tracker[编辑 | 编辑源代码]
如果一个指南针含有此组件,那么它就会成为磁石指针。此组件内保存了磁石指针需要的位置信息和是否追踪信息。
- components:父标签。
- lodestone_tracker 物品堆叠组件
- target:磁石指针指向的位置。
- *
*dimension:磁石指针指向位置的所在维度。 - *
*pos:磁石指针指向的坐标。内部的三个整数分别代表了位置的XYZ坐标值。
- *
- tracked:(默认为
true
)表示磁石指针是否追踪绑定的磁石。为false时,当磁石被破坏后此组件不会被移除,磁石指针仍然指向对应位置。
- target:磁石指针指向的位置。
- lodestone_tracker 物品堆叠组件
命令格式示例:/give @s compass[lodestone_tracker={target:{pos:[I;1,2,3],dimension:"overworld"}}]
- 给予一个指南针,其指针指向主世界X=1、Y=2、Z=3处的磁石。若该坐标不存在磁石则无效。
lore[编辑 | 编辑源代码]
控制物品提示框中所显示的描述信息。其中的每个元素代表一行描述信息,共计不允许超过64行。
- components:父标签。
- lore 物品堆叠组件
- :一行描述信息,为一个文本组件。
- lore 物品堆叠组件
命令格式示例:/give @s stick[minecraft:lore=[{"text":"Hello","color":"gold","italic":false},{"text":"Minecraft","color":"gold","italic":false}]]
- 给予一根木棍,描述信息为第一行“Hello”,第二行“Minecraft”的木棍。(描述信息金黄色、非斜体字形)
map_color[编辑 | 编辑源代码]
- components:父标签
- minecraft:map_color:(默认为0x46402E)物品栏内地图纹理上的颜色,在二进制形式下,只使用后24位,每个颜色通道占用8位,按RGB依次存储。在输入时应为一个0到16777215的十进制整数。
命令格式示例:/give @s filled_map[map_color=11546150]
- 给予当前实体一个空内容但已被绘制地图,其在物品栏内显示为红色纹理。值得注意的是,如果将物品ID换为“map”,得到的空地图绘制后的纹理依然是默认色。
map_decorations[编辑 | 编辑源代码]
地图带有此组件用于保存地图内图标的信息。
- components:父标签。
- map_decorations 物品堆叠组件
- <图标名称>:一个图标的信息。
- *
*rotation:图标的旋转角度,按顺时针角度计。游戏并不能真正显示所有角度,每经过22.5°,在地图上才会有区别。与图标纹理中的外观相比,旋转角度为0所显示的图标上下颠倒。 - *
*type:要显示的地图图标类型的命名空间ID。 - *
*x:图标在世界上所在的X坐标。如果超出地图所展示的范围且图标类型不是玩家,则图标无法添加到地图中。如果图标类型是玩家,位置超出显示范围但地图可以无限追踪玩家,那么图标类型会被修改为player_off_limits
,且位置会显示在对应边;如果距离显示范围较近,则图标类型会被修改为player_off_map
,且位置会显示在对应边;如果距离显示范围很远,则移除此图标。 - *
*z:图标在世界上所在的Z坐标。如果超出地图所展示的范围且图标类型不是玩家,则图标无法添加到地图中。如果图标类型是玩家,位置超出显示范围但地图可以无限追踪玩家,那么图标类型会被修改为player_off_limits
,且位置会显示在对应边;如果距离显示范围较近,则图标类型会被修改为player_off_map
,且位置会显示在对应边;如果距离显示范围很远,则移除此图标。
- *
- <图标名称>:一个图标的信息。
- map_decorations 物品堆叠组件
命令格式示例:/give @s filled_map[map_decorations={player:{rotation:0,type:"player",x:0,z:0}}]
- 给予当前实体一个地图,但并不能查看此地图。其内保存了在x=0,z=0坐标上的一个旋转角为0度的玩家类型图标。
map_id[编辑 | 编辑源代码]
具有此组件的物品会读取相应编号的地图内容,且能被玩家展开,在物品展示框上铺开,作为地图被复制、锁定或扩展。
- components:父标签
- minecraft:map_id:地图编号。其他地图可以共享该编号的地图内容。
命令格式示例:/give @s filled_map[map_id=1]
- 给予当前实体一个编号为1的地图。
max_damage[编辑 | 编辑源代码]
- components:父标签
- minecraft:max_damage:(值>0)修改物品的最大耐久度。
命令格式示例:/give @s diamond_pickaxe[max_damage=4]
- 给予一把最大耐久度为4的钻石镐。
max_stack_size[编辑 | 编辑源代码]
修改物品的最大堆叠数量。如果物品存在整型max_damage组件,则此组件只能为1。
- components:父标签
- minecraft:max_stack_size:修改物品的最大堆叠数。该值取值在1到99之间。
命令格式示例1:/give @s acacia_boat[max_stack_size=64] 5
- 给予一个堆叠数为5的金合欢木船物品堆叠,其最大堆叠数为64。
命令格式示例2:/give @s diamond_sword[max_stack_size=99,!max_damage] 5
- 给予一个堆叠数为5的钻石剑物品堆叠,其最大堆叠数为99。
mooshroom/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的哞菇的变种。
- components:父标签
- minecraft:mooshroom/variant:生成的哞菇的变种。取值可以为
red
或brown
。
- minecraft:mooshroom/variant:生成的哞菇的变种。取值可以为
命令格式示例:/give @s mooshroom_spawn_egg[mooshroom/variant="red"]
- 给予当前实体一个只生成红色哞菇变种的哞菇刷怪蛋。
note_block_sound[编辑 | 编辑源代码]
- components:父标签
- minecraft:note_block_sound:(命名空间ID)一个声音事件引用,表示当此玩家的头被放置在音符盒上时播放的声音。
命令格式示例:/give @s player_head[note_block_sound="entity.player.levelup"]
- 给予当前实体一个被放在音符盒上时播放声音事件“玩家:升级”的玩家的头。
ominous_bottle_amplifier[编辑 | 编辑源代码]
- components:父标签
- minecraft:ominous_bottle_amplifier:(0≤值≤4)不祥之瓶被饮用后使玩家获得的不祥之兆状态效果倍率。
命令格式示例:/give @s ominous_bottle[ominous_bottle_amplifier=4]
- 给予一个使用后获得5级不祥之兆效果的不祥之瓶。
painting/variant[编辑 | 编辑源代码]
控制刷怪蛋和画放置的画的变种。复合标签形式可接受但其数据目前不会被放置的画实体保存。[12]
命令格式示例:/give @s painting[painting/variant="aztec"]
- 给予当前实体一个只生成“阿兹特克”画变种的画。
parrot/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的鹦鹉的变种。
- components:父标签
- minecraft:parrot/variant:生成的鹦鹉的变种。取值可以为
red_blue
、blue
、green
、yellow_blue
或gray
。
- minecraft:parrot/variant:生成的鹦鹉的变种。取值可以为
命令格式示例:/give @s parrot_spawn_egg[parrot/variant="blue"]
- 给予当前实体一个只生成蓝色鹦鹉变种的鹦鹉刷怪蛋。
pig/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的猪的变种。
- components:父标签
- minecraft:pig/variant:生成的猪的变种。取值需为
pig_variant
注册表下的命名空间ID。原版内置temperate
、cold
和warm
,分别对应温带、寒带和热带。
- minecraft:pig/variant:生成的猪的变种。取值需为
命令格式示例:/give @s pig_spawn_egg[pig/variant="cold"]
- 给予当前实体一个只生成寒带猪变种的猪刷怪蛋。
pot_decorations[编辑 | 编辑源代码]
饰纹陶罐使用此组件保存各个面的陶片信息,用于在物品栏内的渲染和放置方块时设置方块实体数据。
- components:父标签。
- pot_decorations 物品堆叠组件
- :(命名空间ID)饰纹陶罐背面的陶片物品。
- :(命名空间ID)饰纹陶罐左面的陶片物品。
- :(命名空间ID)饰纹陶罐右面的陶片物品。
- :(命名空间ID)饰纹陶罐前面的陶片物品。
- pot_decorations 物品堆叠组件
命令格式示例:/give @s decorated_pot[pot_decorations=["angler_pottery_sherd","angler_pottery_sherd","angler_pottery_sherd","angler_pottery_sherd"]]
- 给予当前实体一个四面都是垂钓纹样陶片的饰纹陶罐。
potion_contents[编辑 | 编辑源代码]
此组件保存物品的药水信息和状态效果信息。
如果设置此组件为字符串,则等价于只设置复合标签形式中的potion,影响物品的名称和状态效果。游戏在保存时只会保存为复合标签形式。
- components:父标签。
命令格式示例:/give @s potion[potion_contents={custom_color:8388863,custom_effects:[{amplifier:122,duration:1102,id:"glowing"}]}]
potion_duration_scale[编辑 | 编辑源代码]
此组件保存物品的状态效果时长缩放信息,只影响potion_contents组件存储的状态效果时长。
- components:父标签。
- minecraft:potion_duration_scale:(值≥0)状态效果时长缩放的倍率。当此组件不存在时,缩放倍率为1。
命令格式示例:/give @s potion[potion_duration_scale=2,potion_contents=...]
- 给予当前实体一个药水,其效果时长会被放大2倍。
profile[编辑 | 编辑源代码]
玩家的头使用此组件,保存对应玩家的游戏档案数据。游戏在加载此组件时会自动进行解析,根据玩家的名称获取游戏档案数据,在存储时会将游戏档案数据一起存储。
如果设置此组件为字符串,则等价于只设置复合标签形式中的name,游戏将根据玩家名称自动解析其他数据。游戏在保存时只会保存为复合标签形式。
- components:父标签。
- profile 物品堆叠组件
- id:玩家的UUID。
- name:(长度不超过16,不能有空格和特殊字符[13])玩家名称。如果此项不存在则使用id加载玩家数据。
- properties:玩家游戏档案属性。
- 如果使用列表形式,则游戏档案属性数据可以具有签名,且内部标签如下:
- :一项游戏档案属性。
- *
*name:游戏档案属性的名称。仅在值为textures
时,由value
设置的数据才会被加载为皮肤。 - *
*value:游戏档案属性的数据,是使用Base64编码的JSON数据。 - signature:游戏档案属性的签名。
- 如果使用复合标签形式,则游戏档案属性数据不具有签名,且内部标签如下:
- *
- <游戏档案属性名称>:游戏档案属性,可以保存多个不同数据但具有相同属性名称的游戏档案属性。
- :游戏档案属性的数据,是使用Base64编码的JSON数据。
- profile 物品堆叠组件
命令格式示例:/give @s player_head[profile={"name":"dream"}]
- 给予一个ID名为dream的玩家的头。
游戏档案属性通常包括textures
用于保存玩家的皮肤数据。在此属性的数据被Base64解码后具有如下结构:
- JSON数据根元素
- *
*profileId:游戏档案的UUID,不带连字符。 - *
*profileName:游戏档案名称。 - signatureRequired:代表此纹理属性是否已被签名。如果signature存在,则此项也存在并为true。
- *
*textures:纹理数据。 - *
*timestamp:Unix时间戳,以毫秒为单位,时间为请求玩家游戏档案数据的时间。
- *
provides_banner_patterns[编辑 | 编辑源代码]
控制物品能否放进织布机的旗帜图案槽位,以及可以制作的图案。
- components:父标签
- minecraft:provides_banner_patterns:一个带
#
前缀的旗帜图案标签。
- minecraft:provides_banner_patterns:一个带
命令格式示例:/give @s diamond[provides_banner_patterns="#pattern_item/creeper"]
- 给予当前实体一个能在织布机中制作苦力怕旗帜图案的钻石。
provides_trim_material[编辑 | 编辑源代码]
控制物品在锻造台上使用盔甲纹饰配方时提供的纹饰材料。
rabbit/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的兔子的变种。
- components:父标签
- minecraft:rabbit/variant:生成的兔子的变种。取值可以为
brown
、white
、black
、white_splotched
、gold
、salt
或evil
。
- minecraft:rabbit/variant:生成的兔子的变种。取值可以为
命令格式示例:/give @s rabbit_spawn_egg[rabbit/variant="white"]
- 给予当前实体一个只生成白色兔子变种的兔子刷怪蛋。
rarity[编辑 | 编辑源代码]
- components 父标签
- minecraft:rarity:设置物品的稀有度。可以为
common
(常见)、uncommon
(少见)、rare
(稀有)、epic
(史诗)。
- minecraft:rarity:设置物品的稀有度。可以为
命令格式示例:/give @s stick[rarity=epic]
- 给予一根稀有度为史诗的木棍。
recipes[编辑 | 编辑源代码]
知识之书使用此组件保存配方信息。
- components:父标签。
- recipes 物品堆叠组件
- :配方的命名空间ID。
- recipes 物品堆叠组件
命令格式示例:/give @s knowledge_book[recipes=["cake", "piston","end_crystal"]]
repair_cost[编辑 | 编辑源代码]
当在铁砧上修理、合并或重命名当前物品时,表示在基础经验等级消耗之上额外增加的累积惩罚。
- components:父标签
- minecraft:repair_cost:(值≥0)累计惩罚值。
命令格式示例:/give @s diamond_sword[repair_cost=10]
- 给予一把累积惩罚为10的钻石剑。
repairable[编辑 | 编辑源代码]
设置物品损坏时,在铁砧上用于修复此物品所需的物品。
命令格式示例:/give @s netherite_sword[repairable={items:"oak_planks"}]
salmon/size[编辑 | 编辑源代码]
控制刷怪蛋生成的鲑鱼的尺寸。
- components:父标签
- minecraft:salmon/size:生成的鲑鱼的尺寸。取值可以为
small
、medium
或large
,分别为“小”、“中”和“大”。
- minecraft:salmon/size:生成的鲑鱼的尺寸。取值可以为
命令格式示例:/give @s salmon_spawn_egg[salmon/size="large"]
- 给予当前实体一个只生成大鲑鱼的鲑鱼刷怪蛋。
sheep/color[编辑 | 编辑源代码]
控制刷怪蛋生成的绵羊的颜色。
- components:父标签
- minecraft:sheep/color:生成的绵羊的颜色。取值为染料颜色。
命令格式示例:/give @s sheep_spawn_egg[sheep/color="red"]
- 给予当前实体一个只生成红色羊的羊刷怪蛋。
shulker/color[编辑 | 编辑源代码]
控制刷怪蛋生成的潜影贝的颜色。
- components:父标签
- minecraft:shulker/color:生成的潜影贝的颜色。取值为染料颜色。
命令格式示例:/give @s shulker_spawn_egg[shulker/color="red"]
- 给予当前实体一个只生成红色潜影贝的潜影贝刷怪蛋。
suspicious_stew_effects[编辑 | 编辑源代码]
谜之炖菜使用此组件保存状态效果数据。
- components:父标签。
- suspicious_stew_effects 物品堆叠组件
- :一项状态效果信息。
- duration:状态效果的持续刻数,默认为160。
- *
*id:状态效果的命名空间ID。
- :一项状态效果信息。
- suspicious_stew_effects 物品堆叠组件
命令格式示例:/give @s suspicious_stew[suspicious_stew_effects=[{id:"glowing",duration:200},{id:"speed",duration:200}]]
- 给予一碗谜之炖菜,食用后将获得200游戏刻(10秒)的发光与迅捷状态效果。
tool[编辑 | 编辑源代码]
此组件可以使物品成为某些方块的挖掘工具。
- components:父标签。
- tool 物品堆叠组件
- can_destroy_blocks_in_creative:(默认为
true
)创造模式玩家能否使用此物品破坏方块。 - damage_per_block:(值≥0,默认为1)破坏硬度非0的方块时物品损失的耐久度。
- default_mining_speed:(值≥0,默认为1)挖掘方块时的速度。
- *
*rules:物品与对应可以挖掘的方块的映射列表。
- can_destroy_blocks_in_creative:(默认为
- tool 物品堆叠组件
命令格式示例:/give @s wooden_shovel[tool={rules:[{blocks:["stone"],correct_for_drops:True}]}]
- 给予一把可以挖掘石头的木锹。
tooltip_display[编辑 | 编辑源代码]
控制由组件产生的提示框文本可见性和提示框可见性。不能隐藏由block_entity_data
和entity_data
组件产生的安全警告。
- components:父标签。
- minecraft:tooltip_display 物品堆叠组件
- hide_tooltip:(默认为
false
)物品提示框是否总是隐藏。 - hidden_components:(默认为空列表)一个物品组件ID列表,列表内的所有组件提供的提示框文本都会被隐藏。如果组件不提供提示框文本,则对其没有效果。
- :一个物品堆叠组件ID。
- hide_tooltip:(默认为
- minecraft:tooltip_display 物品堆叠组件
命令格式示例:/give @s golden_axe[tooltip_display={hide_tooltip:true}]
- 给予当前实体一个总是隐藏提示框的金斧。
tooltip_style[编辑 | 编辑源代码]
设置物品的提示框的外观。提示框外观分为两部分:背景由<命名空间>:tooltip/<路径>_background
精灵图渲染,边框由<命名空间>:tooltip/<路径>_frame
精灵图渲染。这两个精灵图都由GUI纹理图集管理,都属于GUI纹理。根据原版GUI纹理图集定义,背景会被解析为assets/<命名空间>/textures/gui/sprites/tooltip/<路径>_background.png
,边框会被解析为assets/<命名空间>/textures/gui/sprites/tooltip/<路径>_frame.png
。
- components:父标签
- minecraft:tooltip_style:(命名空间ID)物品提示框外观。
trim[编辑 | 编辑源代码]
各种盔甲可以使用此组件添加盔甲纹饰。
- components:父标签。
命令格式示例:/give @s iron_chestplate[trim={material:"diamond",pattern:"eye"}]
- 给予一件拥有钻石质眼眸盔甲纹饰的铁胸甲。
tropical_fish/base_color[编辑 | 编辑源代码]
控制刷怪蛋和热带鱼桶生成的热带鱼的体色。
- components:父标签
- minecraft:tropical_fish/base_color:生成的热带鱼的体色。取值为染料颜色。
命令格式示例:/give @s tropical_fish_spawn_egg[tropical_fish/base_color="red"]
- 给予当前实体一个只生成红色热带鱼的热带鱼刷怪蛋。
tropical_fish/pattern[编辑 | 编辑源代码]
控制刷怪蛋和热带鱼桶生成的热带鱼的花纹。
- components:父标签
- minecraft:tropical_fish/pattern:生成的热带鱼的花纹。取值可以为
kob
、sunstreak
、snooper
、dasher
、brinely
、spotty
、flopper
、stripey
、glitter
、blockfish
、betty
或clayfish
。
- minecraft:tropical_fish/pattern:生成的热带鱼的花纹。取值可以为
命令格式示例:/give @s tropical_fish_spawn_egg[tropical_fish/pattern="stripey"]
- 给予当前实体一个只生成条纹类热带鱼的热带鱼刷怪蛋。
tropical_fish/pattern_color[编辑 | 编辑源代码]
控制刷怪蛋和热带鱼桶生成的热带鱼的花纹颜色。
- components:父标签
- minecraft:tropical_fish/pattern_color:生成的热带鱼的花纹颜色。取值为染料颜色。
命令格式示例:/give @s tropical_fish_spawn_egg[tropical_fish/pattern_color="red"]
- 给予当前实体一个只生成红纹热带鱼的热带鱼刷怪蛋。
unbreakable[编辑 | 编辑源代码]
当物品带有此组件时,物品将不会损失耐久,无法被破坏。
- components:父标签。
- unbreakable 物品堆叠组件
命令格式示例:/give @s diamond_pickaxe[unbreakable={}]
- 给予一把无法破坏的钻石镐。
use_cooldown[编辑 | 编辑源代码]
设置物品在消耗使用后,物品不能再度使用的冷却时间。消耗使用指物品数量在使用后会减少的使用操作,但不包含方块物品的放置等对方块进行的有效操作。
此冷却时间会作用在一个“冷却组”上,如果物品没有此组件,或没有定义cooldown_group,游戏将直接使用物品的ID作为冷却组ID;否则,使用cooldown_group的值。同冷却组的物品会同时进行冷却而不能使用,并在冷却结束后同时再度可以被使用。
- components:父标签。
- minecraft:use_cooldown 物品堆叠组件
- cooldown_group:(命名空间ID)设置物品冷却组。同冷却组的物品会同时受到同一个物品冷却影响,在冷却时间内所有同冷却组的物品都无法使用。如果此值不存在,游戏将以物品的命名空间ID作为冷却组ID使用。
- *
*seconds:(值>0)物品使用后的冷却时间,单位为秒。
- minecraft:use_cooldown 物品堆叠组件
命令格式示例:/give @s snowball[use_cooldown={seconds:1}] 16
- 给予当前实体16个每使用一次冷却一秒的雪球。
use_remainder[编辑 | 编辑源代码]
设置物品在使用且物品数量减少后,游戏返还的物品。消耗使用指物品数量在使用后会减少的使用操作,但不包含方块物品的放置等对方块进行的有效操作。如果玩家物品栏在欲返还物品时已满,则掉落成为物品实体。
- components:父标签。
- minecraft:use_remainder:物品使用后返还的物品。
命令格式示例:/give @s snowball[use_remainder={id:"snowball"}] 16
- 给予当前实体16个能在使用后返回1个普通雪球的雪球。
villager/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的村民和僵尸村民的生物群系装束的变种。
- components:父标签
- minecraft:villager/variant:生成的生物群系装束的变种。取值可以为
desert
、jungle
、plains
、savanna
、snow
、swamp
或taiga
。
- minecraft:villager/variant:生成的生物群系装束的变种。取值可以为
命令格式示例:/give @s zombie_villager_spawn_egg[villager/variant="desert"]
- 给予当前实体一个沙漠生物群系村民变种的僵尸村民刷怪蛋。
weapon[编辑 | 编辑源代码]
存在时,物品使用次数统计信息会在用此物品攻击时增加。若物品能被降低耐久度则会对物品造成指定的损伤值。
- components:父标签。
- minecraft:weapon
- disable_blocking_for_seconds:(值≥0,默认为0)攻击成功禁用目标盾牌的秒数。
- item_damage_per_attack:(值≥0,默认为1)每次攻击对此物品造成的损伤值,即损耗的耐久度。
- minecraft:weapon
命令格式示例:/give @s netherite_sword[weapon={disable_blocking_for_seconds:60,item_damage_per_attack:0}]
- 给予一个下界合金剑,当攻击成功时禁用目标盾牌60秒,且每次攻击损耗0耐久度。
wolf/collar[编辑 | 编辑源代码]
控制刷怪蛋生成的狼在驯服后显示的项圈颜色。
- components:父标签
- minecraft:wolf/collar:生成的狼在驯服后显示的项圈颜色。取值为染料颜色。
命令格式示例:/give @s wolf_spawn_egg[wolf/collar="orange"]
- 给予当前实体一个狼刷怪蛋,在使用此刷怪蛋生成且驯服狼为狗后,狗的项圈会显示为橙色。
wolf/sound_variant[编辑 | 编辑源代码]
控制刷怪蛋生成的狼使用的音效。
- components:父标签
- minecraft:wolf/sound_variant :生成的狼使用的音效。取值需为
wolf_sound_variant
注册表下的命名空间ID。
- minecraft:wolf/sound_variant :生成的狼使用的音效。取值需为
wolf/variant[编辑 | 编辑源代码]
控制刷怪蛋生成的狼的变种。
- components:父标签
- minecraft:wolf/variant:生成的狼的变种。取值需为
wolf_variant
注册表下的命名空间ID。原版内置rusty
、spotted
、striped
、snowy
、chestnut
、black
、ashen
、woods
和pale
,分别对应“赭红狼”、“斑点狼”、“条纹狼”、“雪狼”、“栗色狼”、“黑狼”、“灰狼”、“森林狼”、“苍狼”。
- minecraft:wolf/variant:生成的狼的变种。取值需为
命令格式示例:/give @s wolf_spawn_egg[wolf/variant="woods"]
- 给予当前实体一个只生成森林狼变种的狼刷怪蛋。
writable_book_content[编辑 | 编辑源代码]
此组件保存书与笔的数据。当玩家使用拥有此组件的书与笔或成书时会显示编辑界面,在讲台上打开拥有此组件的任意物品时游戏会显示每页的文本信息。此组件的优先级低于written_book_content
组件。
- components:父标签。
- writable_book_content 物品堆叠组件
- pages:(最多100个元素)书与笔内存储的页信息,必须为以下格式之一。
- :(长度不超过1024)书与笔内一页的文本信息。如果开启过滤,则代表文本信息与原信息一致。
- :书与笔内一页的信息。
- filtered:(长度不超过1024)已过滤的文本信息。在开启过滤时,此字符串优先级高于raw。
- *
*raw:(长度不超过1024)未过滤的文本原始信息。
- pages:(最多100个元素)书与笔内存储的页信息,必须为以下格式之一。
- writable_book_content 物品堆叠组件
命令格式示例:/give @s writable_book[writable_book_content={pages:["Hello World!"]}]
- 给予当前实体一个保存有“Hello World!”文本的书与笔。
written_book_content[编辑 | 编辑源代码]
此组件保存成书的数据。当玩家使用拥有此组件的书与笔或成书,或在讲台上打开拥有此组件的任意物品时游戏会显示每页的文本信息。此组件的title
字段也被视为物品的自定义名称。
所有拥有此组件的物品可以使用成书复制配方在工作台上进行复制。
- components:父标签。
- written_book_content 物品堆叠组件
- *
*author:成书的作者。 - generation:(默认为
0
)决定成书是否为副本。可以为0
(原稿),1
(原稿的副本),2
(副本的副本),3
(破烂不堪)。 - pages:成书内存储的页信息,文本必须使用以下格式之一。
- :成书内一页的信息,使用文本组件格式。如果开启过滤,则代表过滤后文本信息与原信息一致。
- :成书页内信息的另一种格式。只要定义了raw字段就会忽略以格式定义的文本组件。
- filtered:已过滤的文本信息。在开启过滤时,此内容优先级高于raw。
- *
*raw:未过滤的原始信息。
- resolved:(默认为
false
)表示这本成书是否已经被解析,决定是否在打开成书时进行成书内文本的解析。 - *
*title:(长度不超过32)成书的标题信息。为时,如果开启过滤,则代表此标题过滤后与原标题一致。- filtered:(长度不超过32)已过滤的标题信息。在开启过滤时,此字符串优先级高于raw。
- *
*raw:(长度不超过32)未过滤的标题原始信息。
- *
- written_book_content 物品堆叠组件
命令格式示例:/give @s written_book[written_book_content={author:"Steve",pages:["Hello World!"],title:"A Example."}]
- 给予当前实体一本作者是“Steve”的标题为“A Example.”的原稿成书,其内写有文本内容“Hello World!”。
历史[编辑 | 编辑源代码]
Java版 | |||||||
---|---|---|---|---|---|---|---|
1.20.5 | 24w09a | 加入了物品堆叠组件,取代了原有的物品格式。 | |||||
24w10a | 配方现在可以指定物品堆叠组件。 | ||||||
为profile 、dyed_color 、attribute_modifiers 、potion_contents 、enchantments 和stored_enchantments 组件加入了简化定义。 | |||||||
将lodestone_target 组件重命名为lodestone_tracker 。 | |||||||
现在container 组件适用于所有的容器而不只有潜影盒。 | |||||||
24w12a | unbreakable 组件现在与耐久魔咒兼容。[14] | ||||||
加入了7个新组件:food 、max_stack_size 、max_damage 、fire_resistant 、rarity 、tool 和hide_tooltip 。 | |||||||
在/clear 命令中,每个组件还可使用竖条分隔,部分组件的组件名和其组件数据之间还可使用(~ )连接。 | |||||||
24w13a | 加入了2个新组件:item_name 和ominous_bottle_amplifier 。 | ||||||
24w14a | 将writable_book_content 和written_book_content 组件中的未过滤的文本组件原始信息text 被重命名为raw 以避免歧义。[15] | ||||||
现在当profile 组件中不存在name 而存在id 时,可由UUID解析玩家档案数据。[16] | |||||||
pre1 | 移除了food 组件的营养价值字段saturation_modifier ,现在由新字段saturation 直接指定饱和度。 | ||||||
1.21 | 24w18a | 在/give 等命令中,可在组件名前添加! 来移除该默认组件。 | |||||
24w19a | custom_data 组件现在可以使用SNBT字符串定义。 | ||||||
在food 组件中加入了using_converts_to 参数。 | |||||||
24w21a | 加入了jukebox_playable 组件。 | ||||||
在attribute_modifiers 组件中,用id 取代了name 和uuid 参数。 | |||||||
1.21.2 | 24w33a | 加入了enchantable 和repairable 组件。 | |||||
enchantments 和stored_enchantments 组件中的魔咒等级下限由0提升至1。 | |||||||
现在written_book_content 组件中的title 具有比custom_name 和item_name 更高的优先级。 | |||||||
向instrument 内联定义加入了description 字段。 | |||||||
24w34a | 加入了consumable 、use_remainder 和use_cooldown 组件。 | ||||||
现在装备和书默认具有enchantable 组件。 | |||||||
不祥之瓶不再是食物,因而也不再默认具有food 组件。 | |||||||
移除了food 组件中effects、eat_seconds和using_converts_to字段,现在此组件仅作为食物数据容器。
此前字段格式:[显示]
| |||||||
现在custom_name 组件具有比written_book_content 中title 字段更高的优先级。 | |||||||
24w35a | 现在use_cooldown 组件使用cooldown_group字段而非cooldownGroup字段。 | ||||||
向bucket_entity_data 组件加入type 字段用来保存鲑鱼的尺寸。 | |||||||
24w36a | 加入了item_model 、equippable 、glider 和tooltip_style 组件。 | ||||||
item_model 和item_name 组件现在是所有物品的默认组件之一。 | |||||||
24w37a | 加入了damage_resistant 和death_protection 组件。 | ||||||
由于功能被damage_resistant 完全取代,移除了fire_resistant 组件。 | |||||||
为potion_contents 组件加入了custom_name 字段。 | |||||||
为equippable 组件加入了swappable 和damage_on_hurt 字段。 | |||||||
item_name 组件的优先级现在永远最低,因此它能被potion_contents 之类影响物品名称的组件覆盖。 | |||||||
具有map_id 组件的物品现在能像地图一样被展开,在物品展示框上直角旋转,作为地图被复制、锁定或拓展,且在未启用高级提示框时的物品提示框中显示地图编号。 | |||||||
24w39a | lock 组件现在是一个物品谓词。 | ||||||
pre1 | 为equippable 组件加入了camera_overlay 参数。 | ||||||
1.21.4 | 24w44a | 现在consumable 组件的第一人称格挡动画可以正常显示。[17] | |||||
24w45a | 修改了custom_model_data 的格式以适配物品模型映射的加入。 | ||||||
现在item_model 组件不再设置物品模型,而是设置物品模型映射。 | |||||||
移除了trim 组件material 对象定义的item_model_index 字段,并将override_armor_materials 重命名为override_armor_assets 。 | |||||||
将equippable 组件的model 字段重命名为asset_id 。 | |||||||
24w46a | 为consumable 组件的animation字段添加了新的可选值bundle 。 | ||||||
1.21.5 | 25w02a | 向tool 组件加入新可选字段can_destroy_blocks_in_creative 。 | |||||
加入了potion_duration_scale 和weapon 组件。 | |||||||
25w03a | 将weapon 组件的damage_per_attack 字段重命名为item_damage_per_attack 。 | ||||||
向equippable 组件的slot 加入新值saddle ,并加入新字段equip_on_interaction 。 | |||||||
加入了axolotl/variant 、cat/collar 、cat/variant 、fox/variant 、frog/variant 、horse/variant 、llama/variant 、mooshroom/variant 、parrot/variant 、painting/variant 、pig/variant 、rabbit/variant 、salmon/size 、sheep/color 、shulker/color 、tropical_fish/pattern 、tropical_fish/base_color 、tropical_fish/pattern_color 、villager/variant 、wolf/collar 和wolf/variant 组件。 | |||||||
移除了bucket_entity_data 的BucketVariantTag 和type 字段。 | |||||||
25w04a | 将weapon 组件的can_disable_blocking 字段重做为disable_blocking_for_seconds 。 | ||||||
加入了blocks_attacks 、break_sound 、provides_banner_patterns 、provides_trim_material 和tooltip_display 组件。 | |||||||
移除了hide_additional_tooltip 和hide_tooltip 组件。 | |||||||
移除了attribute_modifiers 、can_break 、can_place_on 、dyed_color 、enchantments 、stored_enchantments 、jukebox_playable 、unbreakable 和trim 组件的show_in_tooltip 字段和bucket_entity_data 的Variant 字段。 | |||||||
现在具有简化定义的组件始终以简化形式存储,jukebox_playable 组件直接指定命名空间ID,dyed_color 组件可接受RGB数组。 | |||||||
现在villager/variant 对生成僵尸村民的物品可用,axolotl/variant 对美西螈桶可用。 | |||||||
25w05a | 加入了cow/variant 组件。 | ||||||
为blocks_attacks 组件加入了bypassed_by 和horizontal_blocking_angle 字段。 | |||||||
现在provides_banner_patterns 接受的旗帜图案标签需带有# 前缀。 | |||||||
25w06a | 加入了chicken/variant 组件。 | ||||||
25w08a | 加入了wolf/sound_variant 组件。 |
已移除的组件[编辑 | 编辑源代码]
fire_resistant[编辑 | 编辑源代码]
此组件使得物品无法在熔岩或火中燃烧,且装备时不会因为受到火焰伤害而消耗耐久度。
此组件已被damage_resistant
替代。
- components 父标签
- minecraft:fire_resistant:
{}
- minecraft:fire_resistant:
命令格式示例:/give @s diamond[fire_resistant={}]
- 给予一颗无法被火或熔岩烧掉的钻石。
hide_additional_tooltip[编辑 | 编辑源代码]
隐藏物品的一部分附加信息。
此组件已被tooltip_display
替代。
- components:父标签
- minecraft:hide_additional_tooltip:
{}
- minecraft:hide_additional_tooltip:
命令格式示例:/give @s ominous_bottle[hide_additional_tooltip={}]
- 给予一个不祥之瓶,其物品提示框中的状态效果信息不会显示。
hide_tooltip[编辑 | 编辑源代码]
隐藏物品提示框。
此组件已被tooltip_display
替代。
- components:父标签
- minecraft:hide_tooltip:
{}
- minecraft:hide_tooltip:
命令格式示例:/give @s diamond[hide_tooltip={}]
- 给予一颗不会显示物品提示框的钻石。
参考[编辑 | 编辑源代码]
- ↑ MC-269709 — 漏洞状态为“不予修复”。
- ↑ MC-269629 — 漏洞状态为“不予修复”。
- ↑ MC-269631 — 漏洞状态为“不予修复”。
- ↑ MC-269655 — 漏洞状态为“不予修复”。
- ↑ MC-269640 — 漏洞状态为“不予修复”。
- ↑ MC-269648 — 漏洞状态为“不予修复”。
- ↑ MC-269658 — 漏洞状态为“不予修复”。
- ↑ MC-269722 — 漏洞状态为“不予修复”。
- ↑ MC-269723 — 漏洞状态为“不予修复”。
- ↑ MC-269654 — 漏洞状态为“有意为之”。
- ↑ MC-275798 — 漏洞状态为“有意为之”。
- ↑ MC-279733
- ↑ MC-268898 — 漏洞状态为“有意为之”。
- ↑ MC-268510 — 漏洞状态为“已修复”。
- ↑ MC-269677 — 漏洞状态为“已修复”。
- ↑ MC-269983 — 漏洞状态为“已修复”。
- ↑ MC-275917 — 漏洞状态为“已修复”。
导航[编辑 | 编辑源代码]
[隐藏] | |||||||||
---|---|---|---|---|---|---|---|---|---|
基本概念 | |||||||||
数据包 |
| ||||||||
资源包 | |||||||||
相关条目 | |||||||||
相关教程 | |||||||||
参考实例 |
|
[隐藏] | |||||
---|---|---|---|---|---|
通用文件 | |||||
客户端文件 | |||||
服务端文件 | |||||
存档文件 |
| ||||
启动器文件 | |||||
已过时文件 |