物品堆叠组件

来自Minecraft Wiki
跳转到导航 跳转到搜索
  关于Java版1.20.5前物品存储数据的格式,请见“物品格式”;关于基岩版中的物品组件,请见“基岩版物品组件”。
  组件”重定向至此。关于其他用法,请见“组件(消歧义)”。
本文章所述内容仅适用于Java版
Wiki上有与该主题相关的教程!
Wiki上有与该主题相关的教程!教程:物品堆叠组件
在物品提示框中会显示当前物品堆叠的组件数

物品堆叠组件(Item Stack Component),又称物品组件(Item Component)数据组件(Data Component),是物品数据的保存方式,各种不同的物品堆叠组件共同影响了一个物品的具体行为。

物品存储格式[编辑 | 编辑源代码]

物品数据可以用于玩家的物品栏和末影箱物品栏、箱子中的物品、物品实体熔炉方块实体、酿造台方块实体和村民交易内容中。

物品存储有两种方式:

  • 带槽位存储:带有字节型Slot标签指定物品所在的槽位,比如在箱子中。
  • 不带槽位存储:物品不在槽位中,而是作为某个属性类的数据或配置项,例如物品实体。

物品不仅会存储它的命名空间ID和数量,也会存储物品内部的附加信息,即NBT复合标签/JSON对象components,即物品堆叠组件。许多物品并没有这些信息,所以这项为空或不存在。所有物品组件均为可选,但失去部分物品堆叠组件可能使得对应的物品行为产生异常。

物品存储格式如下:

  • NBT复合标签/JSON对象 根标签
    • 字符串*
      *
      id
      :(命名空间ID)表示某种类的物品堆叠。若未指定,游戏会在加载区块或者生成物品时将其变更为空气。
    • NBT复合标签/JSON对象components:关于当前物品的额外信息,详细内容请见物品堆叠组件。此标签对于多数物品来说都是非必需项。
      • 任意类型<物品堆叠组件>:一个物品堆叠组件,标签名称为物品组件的命名空间ID,类型则与对应的物品组件有关。通过命令设置此数据时可以不写命名空间,但在导出时命名空间ID会自行加上minecraft:前缀。
      • NBT复合标签/JSON对象!<物品堆叠组件>:存在时,使一个原有的物品堆叠组件失效。此复合标签的内容不影响行为。通过命令设置此数据时可以不写命名空间,但在导出时命名空间ID会自行加上minecraft:前缀。
    • 整型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 NBT列表/JSON数组列表 所有物品 物品所带有的属性修饰符,可以修改持有者的属性值
axolotl/variant 字符串字符串 刷怪蛋、美西螈桶 生成的美西螈的变种
banner_patterns NBT列表/JSON数组列表 旗帜盾牌 旗帜图案和盾牌上的旗帜图案
base_color 字符串字符串染料颜色 盾牌 盾牌的基础颜色,控制盾牌的名称
bees NBT列表/JSON数组列表 蜂巢、蜂箱 保存蜂巢内蜜蜂的部分数据
block_entity_data 字符串字符串NBT复合标签/JSON对象复合标签 方块物品 方块物品放置方块时附加到对应方块实体上的数据
block_state NBT复合标签/JSON对象复合标签 方块物品 放置方块时设置方块的方块状态
blocks_attacks NBT复合标签/JSON对象复合标签 所有物品 控制格挡行为
break_sound 字符串字符串NBT复合标签/JSON对象复合标签 所有物品 物品耐久度耗尽后播放的声音
bucket_entity_data 字符串字符串NBT复合标签/JSON对象复合标签 生物桶 保存生物桶生成生物时,生物附加的标签数据。
bundle_contents NBT列表/JSON数组列表 所有物品 物品的收纳袋空间里存储的物品,影响物品在其他收纳袋中所占的容量
can_break NBT复合标签/JSON对象复合标签 所有物品 冒险模式玩家可以使用此物品与指定方块进行挖掘,并可以触发红石矿石龙蛋音符盒的挖掘开始时效果
can_place_on NBT复合标签/JSON对象复合标签NBT列表/JSON数组列表 所有物品 冒险模式的玩家可以使用此物品与指定方块进行交互,例如放置方块
cat/collar 字符串字符串 刷怪蛋 生成的猫的项圈颜色
cat/variant 字符串字符串 刷怪蛋 生成的猫的变种
charged_projectiles NBT列表/JSON数组列表 弩内装载的物品
chicken/variant 字符串字符串 刷怪蛋和鸡蛋 生成的鸡的变种
consumable NBT复合标签/JSON对象复合标签 所有物品 设置物品消耗使用的行为
container NBT列表/JSON数组列表,最多256个元素 容器方块物品 保存容器方块物品中存储的物品栏数据
container_loot NBT复合标签/JSON对象复合标签 战利品容器方块物品 保存战利品容器方块的战利品表信息
cow/variant 字符串字符串 刷怪蛋 生成的牛的变种
creative_slot_lock 不可以导出和加载,仅网络同步 所有物品 在创造模式保存的物品栏中拥有此组件的物品将无法交互,但仍可通过快捷键存储或加载到快捷栏,除此之外与正常物品没有区别
默认附加到“已保存的快捷栏”中代表没有快捷栏信息的
custom_data 字符串字符串NBT复合标签/JSON对象复合标签 所有物品 物品的自定义数据,可用于物品谓词等的判断
custom_model_data NBT复合标签/JSON对象复合标签 所有物品 用于设置物品模型数据使其能展现不同的模型
custom_name 字符串字符串NBT复合标签/JSON对象复合标签NBT列表/JSON数组列表文本组件 所有物品 自定义物品的名称
damage 整型整数,不小于0 带有耐久的物品 物品的损坏值,此组件不存在代表物品不可损坏
damage_resistant NBT复合标签/JSON对象复合标签 所有物品 具有此组件的物品对应的物品实体不会被指定伤害类型的伤害摧毁
death_protection NBT复合标签/JSON对象复合标签 所有物品 持有此组件的物品的生物在受到致死伤害后将不会死亡并消耗此物品
debug_stick_state NBT复合标签/JSON对象复合标签 调试棒 调试棒中存储的当前修改的方块属性
dyed_color 整型整数NBT列表/JSON数组列表 可染色的物品 可染色物品的颜色
enchantable NBT复合标签/JSON对象复合标签 所有物品 设置物品的附魔能力
enchantment_glint_override 布尔型布尔值 所有物品 物品是否会显示光效,此组件的优先级高于其他任何影响光效的组件和物品自身属性
enchantments NBT复合标签/JSON对象复合标签 所有物品 影响物品特征的魔咒信息
entity_data 字符串字符串NBT复合标签/JSON对象复合标签 盔甲架刷怪蛋
物品展示框
各种、各种矿车
保存物品生成实体时实体附加的标签数据
equippable NBT复合标签/JSON对象复合标签 所有物品 设置物品可以被穿戴在什么部位
firework_explosion NBT复合标签/JSON对象复合标签 烟火之星 烟火之星中存储的各种爆裂信息
fireworks NBT复合标签/JSON对象复合标签 烟花火箭 烟花火箭中存储的各种爆裂信息和飞行时间信息
food NBT复合标签/JSON对象复合标签 所有物品 设置物品的食物属性
fox/variant 字符串字符串 刷怪蛋 生成的狐狸的变种
frog/variant 字符串字符串 刷怪蛋 生成的青蛙的变种
glider NBT复合标签/JSON对象复合标签,空标签 所有物品 物品被穿戴后玩家可以进行滑翔
horse/variant 字符串字符串 刷怪蛋 生成的马的变种
instrument 字符串字符串NBT复合标签/JSON对象复合标签 山羊角 保存山羊角的种类
intangible_projectile NBT复合标签/JSON对象复合标签,空标签 弩内部存储的 如果此组件存在,箭被射出后只能由创造模式玩家捡起
item_model 字符串字符串命名空间ID 所有物品 指定物品的模型映射
item_name 字符串字符串NBT复合标签/JSON对象复合标签NBT列表/JSON数组列表文本组件 所有物品 不可以被铁砧修改,当custom_name不存在时控制物品的名称
不能控制物品名称在物品展示框的渲染或修改旗帜的渲染名称
jukebox_playable 字符串字符串 所有物品 设置物品被插入唱片机后播放的音乐,无此组件的物品无法插入唱片机
llama/variant 字符串字符串 刷怪蛋 生成的羊驼的变种
lock NBT复合标签/JSON对象复合标签 容器方块物品、信标物品 保存容器方块或信标需要使用符合什么物品谓词的物品才可以打开此容器或信标
lodestone_tracker NBT复合标签/JSON对象复合标签 指南针 磁石指针指向的位置信息和是否追踪信息
lore NBT列表/JSON数组列表,最多256个元素 所有物品 自定义物品的提示框信息
map_color 整型整数,默认为0x46402E 地图 物品栏内地图纹理上的颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储
map_decorations NBT复合标签/JSON对象复合标签 地图 地图上显示的图标,当设置此标签时,全局地图保存数据也会立刻同步图标数据
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 字符串字符串NBT复合标签/JSON对象复合标签 刷怪蛋、画 放置的画的变种
parrot/variant 字符串字符串 刷怪蛋 生成的鹦鹉的变种
pig/variant 字符串字符串 刷怪蛋 生成的猪的变种
pot_decorations NBT列表/JSON数组列表 饰纹陶罐 饰纹陶罐各方向的陶片装饰
potion_contents 字符串字符串NBT复合标签/JSON对象复合标签 药水药箭 药水与状态效果信息
potion_duration_scale 单精度浮点数浮点数 药水与药箭 状态效果时长缩放信息
profile 字符串字符串NBT复合标签/JSON对象复合标签 玩家的头 玩家游戏档案信息,用于渲染
provides_banner_patterns 字符串字符串 所有物品 控制旗帜图案属性,是否可放进织布机的旗帜图案槽位
provides_trim_material 字符串字符串NBT复合标签/JSON对象复合标签 所有物品 控制盔甲纹饰配方提供的纹饰材料
rabbit/variant 字符串字符串 刷怪蛋 生成的兔子的变种
rarity 字符串字符串枚举 所有物品 修改物品的稀有度,可以为common(常见)、uncommon(少见)、rare(稀有)、epic(史诗)
recipes NBT列表/JSON数组列表 知识之书 知识之书中存储的配方信息
repair_cost 整型整数,不小于0 所有物品 当在铁砧上修理、合并或重命名当前物品时,表示在基础经验等级消耗之上额外增加的累积惩罚
repairable NBT复合标签/JSON对象复合标签 不可堆叠且会损坏的物品 设置修复物品时使用的物品
salmon/size 字符串字符串 刷怪蛋 生成的鲑鱼的尺寸
sheep/color 字符串字符串 刷怪蛋 生成的绵羊的颜色
shulker/color 字符串字符串 刷怪蛋 生成的潜影贝的颜色
stored_enchantments NBT复合标签/JSON对象复合标签 附魔书 附魔书中存储的魔咒,不会对物品的行为产生影响,不产生对应的魔咒效果
suspicious_stew_effects NBT列表/JSON数组列表 谜之炖菜 谜之炖菜内的状态效果信息
tool NBT复合标签/JSON对象复合标签 所有物品 设置物品为某些方块的挖掘工具
tooltip_display NBT复合标签/JSON对象复合标签 所有物品 隐藏物品的提示框及附加信息
tooltip_style 字符串字符串,命名空间ID 所有物品 指定物品提示框的背景和边框
trim NBT复合标签/JSON对象复合标签 盔甲 附加到盔甲上的盔甲纹饰
tropical_fish/base_color 字符串字符串 刷怪蛋、热带鱼桶 生成的热带鱼的体色
tropical_fish/pattern 字符串字符串 刷怪蛋、热带鱼桶 生成的热带鱼的花纹
tropical_fish/pattern_color 字符串字符串 刷怪蛋、热带鱼桶 生成的热带鱼的花纹颜色
unbreakable NBT复合标签/JSON对象复合标签 带有耐久的物品 表示可损坏的物品是否无法破坏
use_cooldown NBT复合标签/JSON对象复合标签 所有物品 设置物品消耗使用后的冷却时间
use_remainder NBT复合标签/JSON对象复合标签 所有物品 设置物品消耗使用后返还的物品
villager/variant 字符串字符串 刷怪蛋 生成的村民或僵尸村民的生物群系装束的变种
weapon NBT复合标签/JSON对象复合标签 所有物品 设置物品攻击时的某些行为
wolf/collar 字符串字符串 刷怪蛋 生成的狼的项圈颜色
wolf/sound_variant 字符串字符串 刷怪蛋 生成的狼使用的音效
wolf/variant 字符串字符串 刷怪蛋 生成的狼的变种
writable_book_content NBT复合标签/JSON对象复合标签 所有物品 书与笔存储的文本
written_book_content NBT复合标签/JSON对象复合标签 所有物品 成书存储的文本、作者等信息

物品默认组件[编辑 | 编辑源代码]

未经游戏外部途径修改而获取的物品均拥有默认组件。

物品默认组件可定义为:使用/give命令且不指定物品堆叠组件时所获取物品的组件。这些组件没有被序列化为物品数据,因此不可用/data读取,但可通过F3 + H显示高级提示框来查看物品拥有组件的数量。

物品默认组件可由命令物品修饰器覆盖。当物品现有组件与默认组件完全一致时,该物品:

  • 所设定的组件不可用/data读取。
  • 如果物品堆叠上限大于1,则可以与默认物品堆叠。

创造模式物品栏中,物品可能还有其他组件。当物品现有组件与创造模式物品栏给定组件完全一致时,该物品:

  • 创造模式下,在物品提示框中以蓝色字显示其分类。
  • 如果物品堆叠上限大于1,则可与创造模式物品栏给定物品堆叠。

物品默认组件与物品种类具有强关联性,物品的默认组件不会被其他物品继承。发生物品替换时,如果替换行为会保留原物品的物品堆叠组件,则只有被序列化为物品数据的组件会被结果物品继承。

物品至少拥有10个默认组件,不同物品的默认组件可能不同,详见下表:

注册名称 标签类型 默认拥有此组件的物品 默认值
attribute_modifiers NBT列表/JSON数组列表 所有物品 通常为空列表,取决于物品ID
enchantments NBT复合标签/JSON对象复合标签 所有物品 空标签
item_model 字符串字符串 所有物品 物品的命名空间ID
item_name NBT复合标签/JSON对象复合标签 所有物品 {"translate":"<物品名称翻译键>"}
lore NBT列表/JSON数组列表 所有物品 空列表
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 NBT复合标签/JSON对象复合标签 所有物品 空标签
damage 整型整数 所有可损伤且不可堆叠的物品 0
max_damage 整型整数 所有可损伤且不可堆叠的物品 取决于物品ID
banner_patterns NBT列表/JSON数组列表 所有旗帜盾牌 空列表
bees NBT列表/JSON数组列表 蜂巢蜂箱 空列表
block_state NBT复合标签/JSON对象复合标签 光源方块测试方块、蜂巢和蜂箱 光源方块:{light:"15"}
测试方块{mode:"start"}
蜂巢和蜂箱:{honey_level:"0"}
blocks_attacks NBT复合标签/JSON对象复合标签 盾牌 盾牌 § 用途
bucket_entity_data NBT复合标签/JSON对象复合标签 各种生物桶 空标签
charged_projectiles NBT列表/JSON数组列表 空列表
chicken/variant 字符串字符串 鸡蛋及其变种 鸡蛋:minecraft:temperate
蓝色鸡蛋:minecraft:cold
棕色鸡蛋:minecraft:warm
consumable NBT复合标签/JSON对象复合标签 食物奶桶、药水和不祥之瓶 通常为空标签,消耗后给予或移除状态效果的物品、紫颂果和干海带具有特殊值
container NBT列表/JSON数组列表 容器方块的方块物品(除末影箱 空列表
damage_resistant NBT复合标签/JSON对象复合标签 远古残骸、所有下界合金质物品和下界之星 下界之星为#is_explosion伤害类型标签
其他为#is_fire伤害类型标签
death_protection NBT复合标签/JSON对象复合标签 不死图腾 不死图腾 § 用途
debug_stick_state NBT复合标签/JSON对象复合标签 调试棒 空标签
enchantable NBT复合标签/JSON对象复合标签 使用工具材料盔甲材料(除生物盔甲)的物品、弓、弩、三叉戟、重锤、书和钓鱼竿 附魔能力
enchantment_glint_override 布尔型布尔值 下界之星末地水晶附魔之瓶附魔金苹果附魔书成书调试棒 true
equippable NBT复合标签/JSON对象复合标签 使用盔甲材料的物品、地毯、鞘翅、盾牌、生物头颅雕刻南瓜 取决于物品ID
fireworks NBT复合标签/JSON对象复合标签 烟花火箭 {flight_duration:1}
food NBT复合标签/JSON对象复合标签 所有以物品形式食用的食物 取决于物品ID
glider NBT复合标签/JSON对象复合标签 鞘翅 空标签
jukebox_playable 字符串字符串 音乐唱片 取决于物品ID
map_color 整型整数 地图 4603950(0x46402E)
map_decorations NBT复合标签/JSON对象复合标签 地图 空标签
ominous_bottle_amplifier 整型整数 不祥之瓶 0
potion_contents NBT复合标签/JSON对象复合标签 药水、喷溅药水、滞留药水及药箭 空标签
potion_duration_scale 单精度浮点数浮点数 滞留药水及药箭 滞留药水:0.25
药箭:0.125
recipes NBT列表/JSON数组列表 知识之书 空列表
stored_enchantments NBT复合标签/JSON对象复合标签 附魔书 空标签
suspicious_stew_effects NBT列表/JSON数组列表 谜之炖菜 空列表
tool NBT复合标签/JSON对象复合标签 三叉戟重锤剪刀 取决于物品ID
weapon NBT复合标签/JSON对象复合标签 剑、三叉戟、重锤、锹、镐、斧和锄 取决于物品ID
bundle_contents NBT列表/JSON数组列表 收纳袋 空列表
pot_decorations NBT列表/JSON数组列表 饰纹陶罐 ["minecraft:brick", "minecraft:brick", "minecraft:brick", "minecraft:brick"]
provides_banner_patterns 字符串字符串 旗帜图案 对应可制作的旗帜图案的标签
provides_trim_material 字符串字符串 锻造原材料物品 对应的纹饰材料ID
repairable NBT复合标签/JSON对象复合标签 除马铠外使用工具材料盔甲材料的物品、盾牌、重锤和鞘翅 取决于物品的工具材料、盔甲材料或
盾牌:{items:"#minecraft:wooden_tool_materials"}
重锤:{items:"minecraft:breeze_rod"}
鞘翅:{items:"minecraft:phantom_membrane"}
use_cooldown NBT复合标签/JSON对象复合标签 紫颂果末影珍珠风弹 风弹:{seconds:0.5f}
其他:{seconds:1.0f}
use_remainder NBT复合标签/JSON对象复合标签 药水、蜂蜜瓶蘑菇煲兔肉煲甜菜汤、谜之炖菜和奶桶 瓶装:{count:1,id:"minecraft:glass_bottle"}
碗装:{count:1,id:"minecraft:bowl"}
桶装:{count:1,id:"minecraft:bucket"}
writable_book_content NBT复合标签/JSON对象复合标签 书与笔 空标签

命令格式[编辑 | 编辑源代码]

物品堆叠组件可以在命令的item_stackitem_predicate参数类型中使用。

item_stack参数类型可以加载物品组件,也可通过在组件名前添加!来移除该物品的默认组件。当给予物品时,所提供的组件都会被设置,而未提供的组件会被设为默认值。

item_predicate参数类型可以检测物品组件,在/clear等命令中使用。另外,该参数类型还可以使用物品子谓词检测物品堆叠组件。

数据格式[编辑 | 编辑源代码]

attribute_modifiers[编辑 | 编辑源代码]

带有此组件的物品可以修改佩戴者或持有者的属性。如果物品不在指定的槽位上(字符串slot)则不起效果。如果物品本身具有这些属性,则此列表会覆盖原物品的修饰属性。物品属性修饰符信息会显示在提示框中。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组attribute_modifiers 物品堆叠组件
      • NBT复合标签/JSON对象:单个属性修饰符。
        • 字符串*
          *
          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指定),表示属性修饰符所要修饰的属性。

命令格式示例:/give @s stick[attribute_modifiers=[{type:"scale",slot:"hand",id:"example:grow",amount:4,operation:"add_multiplied_base"}]]

  • 给予一个木棍,玩家手持该木棍时尺寸会增加4倍(即原来的5倍大小)。

axolotl/variant[编辑 | 编辑源代码]

控制刷怪蛋美西螈桶生成的美西螈的变种

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:axolotl/variant:生成的美西螈的变种。取值可以为lucywildgoldcyanblue,分别对应“粉红色”、“棕色”、“金色”、“青色”和“蓝色”。

命令格式示例:/give @s axolotl_spawn_egg[axolotl/variant="blue"]

  • 给予当前实体一个美西螈刷怪蛋,当使用此刷怪蛋时,生成一只蓝色变种美西螈。

[编辑 | 编辑源代码]

此组件保存旗帜上的图案和盾牌内的旗帜图案。列表内的旗帜图案按顺序进行渲染,调换顺序会使得最终图案不同。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组banner_patterns 物品堆叠组件
      • NBT复合标签/JSON对象:一个单独的旗帜图案。
        • 字符串*
          *
          color
          :旗帜图案的染料颜色。
        • 字符串NBT复合标签/JSON对象*
          *
          pattern
          :旗帜图案类型的命名空间ID或旗帜图案类型的详细信息。
          • 字符串*
            *
            asset_id
            :旗帜图案类型的纹理位置。
          • 字符串*
            *
            translation_key
            :旗帜图案类型名称的翻译键。

命令格式示例:/give @s black_banner[banner_patterns=[{pattern:"triangle_top",color:"red"},{pattern:"cross",color:"white"}]]

  • 给予一个黑色旗帜,其上有红色三角形和白色十字图案。

base_color[编辑 | 编辑源代码]

盾牌的基础颜色,控制盾牌的名称。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:base_color染料颜色,表示盾牌的基础颜色,控制盾牌的名称。

命令格式示例:/give @s shield[base_color="lime"]

  • 给予一个黄绿色盾牌。

bees[编辑 | 编辑源代码]

蜂巢和蜂箱使用此组件以保存内部的蜜蜂数据。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组bees 物品堆叠组件
      • NBT复合标签/JSON对象:一只蜜蜂的数据。
        • NBT复合标签/JSON对象*
          *
          entity_data
          :蜜蜂的部分实体数据。如果保存的实体数据不是带有#beehive_inhabitors的实体(默认为蜜蜂),则尝试放出此实体时实体不会被生成,其数据会被删除。
          • 实体数据格式。下列标签不会被保存,也不会被加载:短整型AirNBT列表/JSON数组drop_chancesNBT复合标签/JSON对象Brain整型CannotEnterHiveTicks布尔型CanPickUpLoot整型CropsGrownSincePollination短整型DeathTimeNBT复合标签/JSON对象equipment单精度浮点数fall_distance布尔型FallFlying短整型Fire整型数组hive_pos整型HurtByTimestamp短整型HurtTime整型数组NBT复合标签/JSON对象leash布尔型LeftHandedNBT列表/JSON数组Motion布尔型NoGravity布尔型OnGroundNBT列表/JSON数组Passengers整型PortalCooldownNBT列表/JSON数组PosNBT列表/JSON数组Rotation整型TicksSincePollination整型数组UUID
        • 整型*
          *
          min_ticks_in_hive
          :蜜蜂会在巢内滞留的最短时间。
        • 整型*
          *
          ticks_in_hive
          :蜜蜂在巢内已滞留的时间。

命令格式示例:/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加载。

  • NBT复合标签/JSON对象components:父标签。
    • 字符串NBT复合标签/JSON对象block_entity_data 物品堆叠组件
      • 字符串*
        *
        id
        :方块实体的命名空间ID。
      • 若干与该方块对应的方块实体数据标签,见方块实体数据格式

命令格式示例:/give @s spawner[block_entity_data={id:"mob_spawner",SpawnData:{entity:{id:"spider"}}}]

  • 给予一个蜘蛛刷怪笼。要放置该刷怪笼,玩家必须要有管理员权限

block_state[编辑 | 编辑源代码]

各种方块物品都可以拥有此组件,用于指定此方块物品被放置时的方块状态。如果没有指定方块状态中的某些方块属性,则使用对应方块的默认方块属性值。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象block_state 物品堆叠组件
      • 字符串<方块属性>:设置一项方块属性为指定的值。如果方块属性不存在或对应的方块属性值无效,则这项设置不起任何作用。

命令格式示例:/give @s bamboo_slab[block_state={type:"top"}]

  • 给予一个竹台阶,其被放置时总位于方块网格的上半部分。

blocks_attacks[编辑 | 编辑源代码]

控制物品是否具有类似于盾牌的格挡行为。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象minecraft:blocks_attacks
      • 单精度浮点数block_delay_seconds:(值≥0,默认为0)成功阻挡攻击前需要按住右键的秒数。
      • 字符串NBT复合标签/JSON对象block_sound:成功阻挡攻击时播放的声音事件。
      • 字符串bypassed_by:(伤害类型标签)设置指定标签的伤害类型可以无视此物品的阻挡而造成实际伤害。
      • NBT列表/JSON数组damage_reductions:控制可阻挡多少伤害。未指定时,可阻挡一切伤害。
        • NBT复合标签/JSON对象:控制可挡下的伤害量和伤害类型。阻挡成功时,伤害减少clamp(base + factor * 所受攻击伤害, 0, 所受攻击伤害)
          • 单精度浮点数*
            *
            base
            :固定阻挡的伤害。
          • 单精度浮点数*
            *
            factor
            :应被阻挡的伤害比例。
          • 单精度浮点数horizontal_blocking_angle:(值>0,角度制,默认为90)在水平方向上,以当前玩家视角的水平分量向量为基准,如果受伤害方向与基准方向夹角小于此角度则伤害可被阻挡,否则不能阻挡。任何无来源伤害均被视为需要180度才能阻挡。
          • 字符串NBT列表/JSON数组type:可阻挡的伤害类型。允许单个ID、列表或标签。未指定则表示对所有伤害有效。
      • 单精度浮点数disable_cooldown_scale:(值≥0,默认为1)被可禁用阻挡的攻击击中时,物品冷却时长的乘数。为0时,此物品不能被攻击禁用。
      • 字符串NBT复合标签/JSON对象disabled_sound:此物品被攻击禁用时播放的声音事件。
      • NBT复合标签/JSON对象item_damage:控制攻击对物品造成的耐久损耗。未指定时,每次攻击损耗物品1点耐久。物品耐久最终损耗floor(threshold, base + factor * 所受攻击伤害)。最终值可以为负数以使物品修复。
        • 单精度浮点数*
          *
          base
          :损耗物品固定耐久度。
        • 单精度浮点数*
          *
          factor
          :所受攻击伤害的乘数。
        • 单精度浮点数*
          *
          threshold
          :(值≥0)攻击对此物品造成的最低耐久度损耗。

命令格式示例:/give @s bow[blocks_attacks={disable_cooldown_scale:0}]

  • 给予一个,玩家使用此弓的同时会格挡前方所有类型所有伤害的攻击(因为使用物品和格挡的按键均为鼠标右键),且不会被可禁用阻挡的攻击禁用。

break_sound[编辑 | 编辑源代码]

控制物品耐久度耗尽后播放的声音事件。此组件不存在时则不播放声音事件。

命令格式示例:/give @s golden_sword[break_sound={sound_id:"entity.player.levelup",range:24.0f}]

  • 给予当前实体一个金剑,在其耐久度耗尽时播放声音事件“玩家:升级”,播放范围基值为24。

bucket_entity_data[编辑 | 编辑源代码]

在将实体从桶中放出(或生成)时应用于实体的数据。应用时采取合并的方式。作为字符串时游戏将字符串视为SNBT加载。

  • NBT复合标签/JSON对象components:父标签。
    • 字符串NBT复合标签/JSON对象bucket_entity_data 物品堆叠组件
      • 布尔型*Glowing:表示桶中生物是否有发光的轮廓线。
      • 单精度浮点数*Health:桶中生物的生命值。
      • 布尔型*Invulnerable:表示桶中生物是否能抵抗绝大多数伤害。
      • 布尔型*NoAI:表示桶中生物的AI是否被禁用。
      • 布尔型*NoGravity:表示桶中生物是否不受重力影响。
      • 布尔型*Silent:表示桶中生物是否不会发出任何声音。
        如果桶中生物是鱼类,则不存在额外标签。
        如果桶中生物是蝌蚪,则有下列1个额外标签:
      • 整型*Age:桶中蝌蚪的年龄。大于等于24000时,蝌蚪会长大成青蛙。
        如果桶中生物是美西螈,则有下列2个额外标签:
      • 整型*Age:桶中美西螈的年龄。生物为幼体时为负值;生物为成体时为正值或0,如果为正值则表示距离生物能再次繁衍的时间。
      • 长整型*HuntingCooldown:桶中美西螈生物记忆has_hunting_cooldown的过期倒计时。

bundle_contents[编辑 | 编辑源代码]

收纳袋使用此组件保存内部包含的物品。如果此组件不存在则代表收纳袋内没有物品。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组bundle_contents 物品堆叠组件

命令格式示例:/give @s bundle[bundle_contents=[{id:"diamond",count:2}]]

  • 给予一个包含2颗钻石的收纳袋。

can_place_on和can_break[编辑 | 编辑源代码]

此类型组件检查交互的方块,用于控制是否放置方块或破坏方块。如果存在此组件但方块谓词未指定或不满足条件,则显示于提示框的方块为“未知”,且此物品可放置在任意方块上或破坏任意方块。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象NBT列表/JSON数组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[编辑 | 编辑源代码]

控制刷怪蛋生成的猫在驯服后显示的项圈颜色。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:cat/collar:生成的猫的项圈颜色。取值为染料颜色

命令格式示例:/give @s cat_spawn_egg[cat/collar="orange"]

  • 给予当前实体一个猫刷怪蛋,在使用此刷怪蛋生成且驯服猫后,猫的项圈会显示为橙色。

cat/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的猫的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:cat/variant:生成的猫的变种。取值需为cat_variant注册表下的命名空间ID。

命令格式示例:/give @s cat_spawn_egg[cat/variant="white"]

  • 给予当前实体一个猫刷怪蛋,使用此刷怪蛋会固定生成白猫变种。

charged_projectiles[编辑 | 编辑源代码]

弩使用此组件保存当前装载在弩内的物品信息。此组件的所有物品将在提示框中显示,相同的内容物会尝试合并显示,若物品列表存在烟花火箭则使用“装填烟花火箭的弩”。若弩没有可用且对应的弹射物纹理,则默认使用“装填箭的弩”。此组件不存在时代表弩没有装载任何物品。

  • NBT复合标签/JSON对象components:父标签。

命令格式示例:/give @s crossbow[charged_projectiles=[{id:"spectral_arrow"}]]

  • 给予一把已经装载了一支光灵箭的弩。

chicken/variant[编辑 | 编辑源代码]

控制刷怪蛋或鸡蛋生成的鸡的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:chicken/variant:生成的鸡的变种。取值需为chicken_variant注册表下的命名空间ID。

命令格式示例:/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_contentssuspicious_stew_effects等组件,则这些组件的效果也会一并应用。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象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)物品在使用时是否产生物品破碎粒子。
      • NBT列表/JSON数组on_consume_effects:当物品被使用后,物品产生的效果。
        • NBT复合标签/JSON对象:一项物品效果。
          • 字符串*
            *
            type
            :物品效果类型。
            如果字符串typeapply_effects,则对使用此物品的生物添加状态效果:
          • NBT列表/JSON数组*
            *
            effects
            :物品使用后添加的状态效果。
          • 单精度浮点数probability:(0≤值≤1,默认为1)食用后施加此状态效果的概率。
            如果字符串typeclear_all_effects,则对使用此物品的生物移除所有状态效果。
            如果字符串typeplay_sound,则播放指定的声音:
          • 字符串NBT复合标签/JSON对象*
            *
            sound
            :一个声音事件(可以用 字符串字符串指定一个声音事件的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的声音事件)要播放的声音。
            如果字符串typeremove_effects,则对使用此物品的生物移除指定状态效果:
          • 字符串NBT列表/JSON数组*
            *
            effects
            :一个或多个状态效果(可以用 字符串字符串指定一个状态效果的命名空间ID;若要指定多个状态效果,可以用 字符串字符串指定一个带有#前缀的标签,或指定一个 NBT列表/JSON数组数组,数组中的元素应为 字符串 命名空间ID字符串)物品使用后要移除的状态效果。
            如果字符串typeteleport_randomly,则对使用此物品的生物进行随机传送:
          • 单精度浮点数diameter:(值>0,默认为16)随机传送的半径,以传送前的位置作为原点。
      • 字符串NBT复合标签/JSON对象sound:(默认为entity.generic.eat)一个声音事件(可以用 字符串字符串指定一个声音事件的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的声音事件)使用物品时产生的声音。

命令格式示例:/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"}]

  • 给予当前实体一个铁镐,按下右键会花费1.6秒(32游戏刻)食用此铁镐,食用时播放声音事件“铁砧:着陆”,食用后获得6000游戏刻(5分)的不显示效果粒子的16级急迫效果。

container[编辑 | 编辑源代码]

容器方块物品使用此组件保存内部的物品栏。拥有此组件的物品还会在提示框中显示至多五项内容物信息。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组container 物品堆叠组件
      • NBT复合标签/JSON对象:一个物品槽位上的物品堆叠数据。

命令格式示例:/give @s barrel[container=[{slot:0,item:{id:apple}}]]

  • 给予一个木桶,其中的第一个槽位放了一个苹果。

container_loot[编辑 | 编辑源代码]

各种战利品容器方块物品使用此组件存储放置方块时附加到战利品容器方块实体上的战利品表数据。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象container_loot 物品堆叠组件
      • 字符串*
        *
        loot_table
        :(命名空间ID)生成战利品使用的战利品表。
      • 长整型seed:(可选,默认为0)生成战利品使用的种子,0或不输入将使用随机序列

命令格式示例:/give @s chest[container_loot={loot_table:"chests/desert_pyramid"}]

  • 给予一个箱子,当该箱被打开时会按照minecraft:chests/desert_pyramid战利品表来生成物品。

cow/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的牛的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:cow/variant:生成的牛的变种。取值需为cow_variant注册表下的命名空间ID。原版内置warmtemperatecold,分别对应“热带牛”、“温带牛”和“寒带牛”。

命令格式示例:/give @s cow_spawn_egg[cow/variant="warm"]

  • 给予当前实体一个只生成热带牛变种的牛刷怪蛋

custom_data[编辑 | 编辑源代码]

玩家所自定义的数据。可以为一个复合标签,也可以为字符串。如果此组件是字符串,则将此字符串视为SNBT,游戏将在解析时自动将字符串转换为对应的NBT数据。

  • NBT复合标签/JSON对象components:父标签。
    • 字符串NBT复合标签/JSON对象custom_data 物品堆叠组件
      • 任意类型<一个自定义标签名>:一个可能为任意类型的自定义标签。

命令格式示例:/give @s iron_sword[custom_data={foo:1}]

  • 给予一把带有自定义数据{foo:1}的铁剑。

custom_model_data[编辑 | 编辑源代码]

用于设置物品模型数据使其能展现不同的模型。

  • NBT复合标签/JSON对象components:父标签
    • NBT复合标签/JSON对象minecraft:custom_model_data:设置物品模型映射的参数。
      • NBT列表/JSON数组colors:定义物品模型映射中的着色。
        • 整型:直接使用整数代表颜色。
        • NBT列表/JSON数组:定义RGB三个分量确定颜色。
          • 单精度浮点数:R(红)颜色分量。
          • 单精度浮点数:G(绿)颜色分量。
          • 单精度浮点数:B(蓝)颜色分量。
      • NBT列表/JSON数组flags:定义condition物品模型映射类型的布尔值。
        • 布尔型:一个布尔值。
      • NBT列表/JSON数组floats:定义range_dispatch物品模型映射类型的浮点数。
        • 单精度浮点数:一个浮点数。
      • NBT列表/JSON数组strings:定义select物品模型映射类型的字符串。
        • 字符串:一个字符串。

命令格式示例:/give @s bone[custom_model_data={floats:[167264f]}]

  • 给予一个带有自定义模型数据的骨头。

custom_name[编辑 | 编辑源代码]

自定义物品名称,默认为斜体。

  • NBT复合标签/JSON对象components:父标签
    • 字符串NBT复合标签/JSON对象NBT列表/JSON数组minecraft:custom_name:(文本组件)物品的自定义名称。

命令格式示例:/give @s stick[custom_name={"text":"Magic Wand","color":"light_purple","italic":false}]

  • 给予一个名为“Magic Wand”的木棍。(名称为浅紫色、非斜体字形)

damage[编辑 | 编辑源代码]

物品的损坏值,此组件不存在代表物品处于最大耐久值。只有拥有此组件的物品才能被诸如tool等能降低耐久度的组件损坏物品耐久度。[10]

  • NBT复合标签/JSON对象components:父标签
    • 整型minecraft:damage:(值≥0)物品的损坏值。

命令格式示例:/give @s diamond_axe[damage=500]

  • 给予一把损耗了500点耐久的钻石斧。

damage_resistant[编辑 | 编辑源代码]

使得物品实体不受指定伤害类型的伤害而被摧毁,且此物品被装备时不会因为受到此类伤害而消耗耐久度。

  • NBT复合标签/JSON对象components:父标签
    • NBT复合标签/JSON对象minecraft:damage_resistant 物品堆叠组件
      • 字符串*
        *
        types
        伤害类型标签,物品受到指定伤害类型标签的伤害时不会被摧毁。

命令格式示例:/give @s diamond_axe[damage_resistant={types:"#is_explosion"}]

  • 给予当前实体的此钻石斧不因受爆炸伤害而被摧毁,且此物品被装备时不会因为受到爆炸伤害而消耗耐久度。

death_protection[编辑 | 编辑源代码]

物品在手上时,如果生物受到伤害类型不为#bypasses_invulnerability的致死伤害,游戏会阻止生物死亡、将生命值设置为1,并消耗一个对应的物品。

  • NBT复合标签/JSON对象components:父标签
    • NBT复合标签/JSON对象minecraft:death_protection 物品堆叠组件
      • NBT列表/JSON数组death_effects:(默认为空列表)触发此物品后产生的效果。
        • NBT复合标签/JSON对象:一项物品效果。
          • 字符串*
            *
            type
            :物品效果类型。
            如果字符串typeapply_effects,则对使用此物品的生物添加状态效果:
          • NBT列表/JSON数组*
            *
            effects
            :物品使用后添加的状态效果。
          • 单精度浮点数probability:(0≤值≤1,默认为1)食用后施加此状态效果的概率。
            如果字符串typeclear_all_effects,则对使用此物品的生物移除所有状态效果。
            如果字符串typeplay_sound,则播放指定的声音:
          • 字符串NBT复合标签/JSON对象*
            *
            sound
            :一个声音事件(可以用 字符串字符串指定一个声音事件的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的声音事件)要播放的声音。
            如果字符串typeremove_effects,则对使用此物品的生物移除指定状态效果:
          • 字符串NBT列表/JSON数组*
            *
            effects
            :一个或多个状态效果(可以用 字符串字符串指定一个状态效果的命名空间ID;若要指定多个状态效果,可以用 字符串字符串指定一个带有#前缀的标签,或指定一个 NBT列表/JSON数组数组,数组中的元素应为 字符串 命名空间ID字符串)物品使用后要移除的状态效果。
            如果字符串typeteleport_randomly,则对使用此物品的生物进行随机传送:
          • 单精度浮点数diameter:(值>0,默认为16)随机传送的半径,以传送前的位置作为原点。

命令格式示例:/give @s dragon_head[death_protection={death_effects:[]}]

  • 给予当前实体一个龙首,手持此物品时在受到除#bypasses_invulnerability伤害类型外的致命伤害时阻止生物死亡、将生命值设为1并消耗一个此物品。

debug_stick_state[编辑 | 编辑源代码]

调试棒使用此组件保存方块与当前修改的方块属性的映射。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象debug_stick_state 物品堆叠组件
      • 字符串<方块的命名空间ID>:方块和此方块将要修改的方块属性的键值对。

命令格式示例:/give @s debug_stick[debug_stick_state={"oak_leaves":"waterlogged"}]

dyed_color[编辑 | 编辑源代码]

当物品带有此组件时,物品会被渲染为对应的颜色,并将颜色值显示在提示框中。

如果设置此组件为列表,则列表的三个分量依次表示R、G、B值。游戏在保存时只会保存为整数形式。

  • NBT复合标签/JSON对象components:父标签。
    • 整型NBT列表/JSON数组dyed_color 物品堆叠组件:物品的颜色。只使用后24位,每个颜色通道占用8位,按RGB依次存储。
      • 单精度浮点数:R(红)颜色分量。
      • 单精度浮点数:G(绿)颜色分量。
      • 单精度浮点数:B(蓝)颜色分量。

命令格式示例:/give @s leather_helmet[dyed_color=16747238,tooltip_display={hidden_components:[dyed_color]}]

  • 给予一个粉红色的皮革帽子,在物品提示框中不显示“已染色”。

enchantable[编辑 | 编辑源代码]

设置物品的附魔能力

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象minecraft:enchantable 物品堆叠组件
      • 整型*
        *
        value
        :(值≥1)物品的附魔能力。

命令格式示例:/give @s diamond_sword[enchantable={value:64}]

  • 给予当前实体一把附魔能力为64的钻石剑。

enchantment_glint_override[编辑 | 编辑源代码]

物品是否会显示光效,此组件的优先级高于其他任何影响光效的组件和物品自身属性。

  • NBT复合标签/JSON对象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]

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象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加载。

  • NBT复合标签/JSON对象components:父标签。
    • 字符串NBT复合标签/JSON对象entity_data 物品堆叠组件
      • 字符串*
        *
        id
        :实体的命名空间ID。
      • 若干与该物品所生成实体对应的实体数据标签,见实体数据格式

命令格式示例1:/give @s armor_stand[entity_data={id:"armor_stand",Small:1b}]

  • 给予一个在放置时成为小型盔甲架的盔甲架。

命令格式示例2:/give @s pig_spawn_egg[entity_data={id:"sheep"}]

  • 给予一个使用时生成绵羊的猪刷怪蛋。

equippable[编辑 | 编辑源代码]

让生物可以穿戴物品,并可以指定生物穿戴此物品时的装备模型

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象minecraft:equippable 物品堆叠组件
      • 字符串NBT列表/JSON数组allowed_entities:(默认为全部生物)一个或多个实体类型(可以用 字符串字符串指定一个实体类型的命名空间ID;若要指定多个实体类型,可以用 字符串字符串指定一个带有#前缀的标签,或指定一个 NBT列表/JSON数组数组,数组中的元素应为 字符串 命名空间ID字符串)可以穿戴此物品的生物。
      • 字符串asset_id:(命名空间ID)物品被穿戴时的装备模型。如果此值不存在,游戏将不渲染此物品穿戴在生物上的模型。
      • 字符串camera_overlay:(命名空间ID)当此项存在且物品被玩家穿戴时,玩家第一人称视角将渲染指定的纹理遮罩。此遮罩可以使用多个设置此标签的物品互相叠加,每个物品指定的遮罩都会被渲染,且渲染顺序按照主手、副手、头盔、胸甲、护腿、靴子、身体、鞍的顺序依次叠加渲染。当遮罩纹理渲染时,遮罩纹理被视为独立纹理,即无法作为动态纹理或GUI纹理渲染,但可以指定纹理过滤方式。
      • 布尔型damage_on_hurt:(默认为true)生物在受到会影响损害盔甲的伤害时此物品是否会受损而减少耐久。
      • 布尔型equip_on_interact:(默认为false)使用此物品时,是否可以让被交互的生物在允许的空槽位上穿戴此物品。
      • 字符串NBT复合标签/JSON对象equip_sound:(默认为item.armor.equip_generic)一个声音事件(可以用 字符串字符串指定一个声音事件的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的声音事件)物品被穿戴时的声音。
      • 布尔型dispensable:(默认为true)是否可以使用发射器使生物穿戴此物品。如果物品本身有特殊的发射器行为则此项无效。
      • 字符串*
        *
        slot
        :物品可被穿戴的装备槽位。可以为mainhand(主手)、offhand(副手)、head(头盔)、chest(胸甲)、legs(护腿)、feet(靴子)、saddle(鞍)和body(身体)。
      • 布尔型swappable:(默认为true)物品是否可以直接使用穿戴。

命令格式示例:/give @s bedrock[equippable={slot:"head"}]

  • 给予当前实体一个可戴在头上的基岩

firework_explosion[编辑 | 编辑源代码]

烟火之星使用此组件保存所有爆裂的信息。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象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(喷发状)。

命令格式示例:/give @s firework_star[firework_explosion={colors:[I;11743532],shape:"creeper"}]

  • 给予当前实体一个红色苦力怕状烟火之星。

fireworks[编辑 | 编辑源代码]

烟花火箭使用此组件保存所有爆裂的信息,并保存飞行时间信息。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象fireworks 物品堆叠组件
      • 字节型flight_duration:(无符号8位整数,默认为0)烟花火箭的飞行的时间,单位为“火药”(即表现为和在工作台上合成烟花火箭时所用的火药数相等)。
      • NBT列表/JSON数组explosions:(最多256个元素)烟花火箭对应的烟火之星的数据,控制烟花火箭飞行结束时产生的爆裂烟花渲染。
        • NBT复合标签/JSON对象:一个烟火之星的数据。
          • 整型数组colors:(默认为空数组)表示爆裂时的粒子颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储。如果颜色没有对应的染料颜色,游戏将在提示框中显示为“自定义”,但爆裂时会产生正确的颜色。当存在多个值时,每个爆裂粒子在渲染时会随机选择一种颜色用于渲染。不存在或数组为空时被视为黑色。
          • 整型数组fade_colors:(默认为空数组)表示爆裂后的淡化粒子颜色,只使用后24位,每个颜色通道占用8位,按RGB依次存储。当存在多个值时,每个爆裂粒子在渲染时会随机选择一种颜色用于渲染。
          • 布尔型has_trail:(默认为false)表示烟火是否有拖曳痕迹(使用钻石合成时)。
          • 布尔型has_twinkle:(默认为false)表示烟火是否出现闪烁效果(使用荧石粉合成时)。
          • 字符串*
            *
            shape
            :爆裂时的形态。可以为small_ball(小型球状)、large_ball(大型球状)、star(星形)、creeper(苦力怕状)、burst(喷发状)。

命令格式示例:/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组件才能被食用。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象food 物品堆叠组件
      • 布尔型can_always_eat:(默认为false)表示物品是否可以无视当前饥饿值食用。
      • 整型*
        *
        nutrition
        :(值≥0)食用物品时增加的饥饿值。
      • 单精度浮点数*
        *
        saturation
        :食用物品时增加的饱和度。

命令格式示例1: /give @s sponge[food={can_always_eat:true,nutrition:3,saturation:1},consumable={}]

  • 给予一个海绵,该海绵可无视饥饿值食用,玩家食用后恢复玩家3点饥饿值和1点饱和度。

fox/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的狐狸的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:fox/variant:生成的狐狸的变种。取值可以为redsnow

命令格式示例:/give @s fox_spawn_egg[fox/variant="snow"]

frog/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的青蛙的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:frog/variant:生成的青蛙的变种。取值需为frog_variant注册表下的命名空间ID。原版内置cold(绿色)、temperate(橙色)和warm(白色)。

命令格式示例:/give @s frog_spawn_egg[frog/variant="cold"]

glider[编辑 | 编辑源代码]

此物品被穿戴后,玩家可以滑翔。玩家滑翔时此物品每1秒消耗1耐久度。

  • NBT复合标签/JSON对象components:父标签
    • NBT复合标签/JSON对象minecraft:glider{}

命令格式示例:/give @s netherite_chestplate[glider={}]

horse/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的马的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:horse/variant:生成的马的变种。取值可以为whitecreamychestnutbrownblackgraydark_brown

命令格式示例:/give @s horse_spawn_egg[horse/variant="white"]

  • 给予当前实体一个只生成白色变种马的马刷怪蛋

instrument[编辑 | 编辑源代码]

山羊角使用此组件保存其被吹奏时发出的声音。可以使用命名空间ID直接指定,也可以使用详细数据指定。

  • NBT复合标签/JSON对象components:父标签。
    • 字符串NBT复合标签/JSON对象instrument 物品堆叠组件,一个乐器(可以用 字符串字符串指定一个乐器的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的乐器)
      • 字符串NBT复合标签/JSON对象NBT列表/JSON数组*
        *
        description
        :(文本组件)乐器的名称。
      • 字符串NBT复合标签/JSON对象*
        *
        sound_event
        :一个声音事件(可以用 字符串字符串指定一个声音事件的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的声音事件)
      • 单精度浮点数*
        *
        range
        :(值>0)吹奏声音能传播的最远距离。
      • 整型*
        *
        use_duration
        :(值>0)吹奏时间,影响物品冷却速度。

命令格式示例:/give @s goat_horn[instrument="seek_goat_horn"]

  • 给予当前实体一个寻觅类型的山羊角。

intangible_projectile[编辑 | 编辑源代码]

若某箭挂载有此组件,该箭被弓或弩射出后只能由创造模式玩家捡起。

  • NBT复合标签/JSON对象components:父标签
    • NBT复合标签/JSON对象minecraft:intangible_projectile{}

命令格式示例:/give @s arrow[intangible_projectile={}]

  • 给予一支箭,该箭由弓射出后不能被除创造模式外的玩家捡起。

item_model[编辑 | 编辑源代码]

设置物品的物品模型映射。物品模型映射会根据命名空间ID解析为assets/<命名空间>/items/<路径>.json。若对应的模型映射无法解析,则使用无效模型。物品不存在这个组件时什么也不会渲染。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:item_model:(命名空间ID)物品的模型映射。

命令格式示例:/give @s diamond_chestplate[item_model="elytra"]

item_name[编辑 | 编辑源代码]

物品的默认名称。当custom_name组件不存在时充当物品的名称。不像custom_name,该名称无法通过铁砧修改,也不能在物品展示框中显示名称。对于带有该组件的旗帜,在充当地图标记时也不会显示名称。

  • NBT复合标签/JSON对象components:父标签
    • 字符串NBT复合标签/JSON对象NBT列表/JSON数组minecraft:item_name:(文本组件)物品的默认名称。

命令格式示例:/give @s stone_sword[item_name="铁剑"]

  • 给予当前实体一个默认名称为“铁剑”的石剑

jukebox_playable[编辑 | 编辑源代码]

设置物品所含有的音乐唱片音乐信息。

  • NBT复合标签/JSON对象components:父标签。

命令格式示例:/give @s diamond[jukebox_playable="pigstep"]

  • 给予一颗钻石,其可以被插入到唱片机中播放音乐《Pigstep》。

llama/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的羊驼的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:llama/variant:生成的羊驼的变种。取值可以为creamywhitebrowngray

命令格式示例:/give @s llama_spawn_egg[llama/variant="white"]

lock[编辑 | 编辑源代码]

为容器方块或信标上锁,仅当使用符合相应谓词的物品才可以打开此容器或信标。

  • NBT复合标签/JSON对象components:父标签

命令格式示例:/give @s chest[lock={components:{custom_name:"密码"}}]

  • 给予一个被上锁的箱子,玩家仅能手持名为“密码”的物品来打开它。

lodestone_tracker[编辑 | 编辑源代码]

如果一个指南针含有此组件,那么它就会成为磁石指针。此组件内保存了磁石指针需要的位置信息和是否追踪信息。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象lodestone_tracker 物品堆叠组件
      • NBT复合标签/JSON对象target:磁石指针指向的位置。
        • 字符串*
          *
          dimension
          :磁石指针指向位置的所在维度。
        • 整型数组*
          *
          pos
          :磁石指针指向的坐标。内部的三个整数分别代表了位置的XYZ坐标值。
      • 布尔型tracked:(默认为true)表示磁石指针是否追踪绑定的磁石。为false时,当磁石被破坏后此组件不会被移除,磁石指针仍然指向对应位置。

命令格式示例:/give @s compass[lodestone_tracker={target:{pos:[I;1,2,3],dimension:"overworld"}}]

  • 给予一个指南针,其指针指向主世界X=1、Y=2、Z=3处的磁石。若该坐标不存在磁石则无效。

lore[编辑 | 编辑源代码]

控制物品提示框中所显示的描述信息。其中的每个元素代表一行描述信息,共计不允许超过64行。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组lore 物品堆叠组件

命令格式示例:/give @s stick[minecraft:lore=[{"text":"Hello","color":"gold","italic":false},{"text":"Minecraft","color":"gold","italic":false}]]

  • 给予一根木棍,描述信息为第一行“Hello”,第二行“Minecraft”的木棍。(描述信息金黄色、非斜体字形)

map_color[编辑 | 编辑源代码]

  • NBT复合标签/JSON对象components:父标签
    • 整型minecraft:map_color:(默认为0x46402E)物品栏内地图纹理上的颜色,在二进制形式下,只使用后24位,每个颜色通道占用8位,按RGB依次存储。在输入时应为一个0到16777215的十进制整数。

命令格式示例:/give @s filled_map[map_color=11546150]

  • 给予当前实体一个空内容但已被绘制地图,其在物品栏内显示为红色纹理。值得注意的是,如果将物品ID换为“map”,得到的空地图绘制后的纹理依然是默认色。

map_decorations[编辑 | 编辑源代码]

地图带有此组件用于保存地图内图标的信息。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象map_decorations 物品堆叠组件
      • NBT复合标签/JSON对象<图标名称>:一个图标的信息。
        • 单精度浮点数*
          *
          rotation
          :图标的旋转角度,按顺时针角度计。游戏并不能真正显示所有角度,每经过22.5°,在地图上才会有区别。与图标纹理中的外观相比,旋转角度为0所显示的图标上下颠倒。
        • 字符串*
          *
          type
          :要显示的地图图标类型的命名空间ID。
        • 双精度浮点数*
          *
          x
          :图标在世界上所在的X坐标。如果超出地图所展示的范围且图标类型不是玩家,则图标无法添加到地图中。如果图标类型是玩家,位置超出显示范围但地图可以无限追踪玩家,那么图标类型会被修改为player_off_limits,且位置会显示在对应边;如果距离显示范围较近,则图标类型会被修改为player_off_map,且位置会显示在对应边;如果距离显示范围很远,则移除此图标。
        • 双精度浮点数*
          *
          z
          :图标在世界上所在的Z坐标。如果超出地图所展示的范围且图标类型不是玩家,则图标无法添加到地图中。如果图标类型是玩家,位置超出显示范围但地图可以无限追踪玩家,那么图标类型会被修改为player_off_limits,且位置会显示在对应边;如果距离显示范围较近,则图标类型会被修改为player_off_map,且位置会显示在对应边;如果距离显示范围很远,则移除此图标。

命令格式示例:/give @s filled_map[map_decorations={player:{rotation:0,type:"player",x:0,z:0}}]

  • 给予当前实体一个地图,但并不能查看此地图。其内保存了在x=0,z=0坐标上的一个旋转角为0度的玩家类型图标。

map_id[编辑 | 编辑源代码]

具有此组件的物品会读取相应编号的地图内容,且能被玩家展开,在物品展示框上铺开,作为地图被复制、锁定或扩展。

  • NBT复合标签/JSON对象components:父标签
    • 整型minecraft:map_id:地图编号。其他地图可以共享该编号的地图内容。

命令格式示例:/give @s filled_map[map_id=1]

  • 给予当前实体一个编号为1的地图

max_damage[编辑 | 编辑源代码]

  • NBT复合标签/JSON对象components:父标签
    • 整型minecraft:max_damage:(值>0)修改物品的最大耐久度。

命令格式示例:/give @s diamond_pickaxe[max_damage=4]

  • 给予一把最大耐久度为4的钻石镐。

max_stack_size[编辑 | 编辑源代码]

修改物品的最大堆叠数量。如果物品存在整型max_damage组件,则此组件只能为1。

  • NBT复合标签/JSON对象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[编辑 | 编辑源代码]

控制刷怪蛋生成的哞菇的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:mooshroom/variant:生成的哞菇的变种。取值可以为redbrown

命令格式示例:/give @s mooshroom_spawn_egg[mooshroom/variant="red"]

note_block_sound[编辑 | 编辑源代码]

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:note_block_sound:(命名空间ID)一个声音事件引用,表示当此玩家的头被放置在音符盒上时播放的声音。

命令格式示例:/give @s player_head[note_block_sound="entity.player.levelup"]

  • 给予当前实体一个被放在音符盒上时播放声音事件“玩家:升级”的玩家的头。

ominous_bottle_amplifier[编辑 | 编辑源代码]

  • NBT复合标签/JSON对象components:父标签
    • 整型minecraft:ominous_bottle_amplifier:(0≤值≤4)不祥之瓶被饮用后使玩家获得的不祥之兆状态效果倍率。

命令格式示例:/give @s ominous_bottle[ominous_bottle_amplifier=4]

  • 给予一个使用后获得5级不祥之兆效果的不祥之瓶。

painting/variant[编辑 | 编辑源代码]

控制刷怪蛋和画放置的画的变种。复合标签形式可接受但其数据目前不会被放置的画实体保存。[12]

  • NBT复合标签/JSON对象components:父标签
    • 字符串NBT复合标签/JSON对象minecraft:painting/variant:一个画变种(可以用 字符串字符串指定一个画变种的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的画变种)。放置的画的变种。

命令格式示例:/give @s painting[painting/variant="aztec"]

  • 给予当前实体一个只生成“阿兹特克”画变种的

parrot/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的鹦鹉的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:parrot/variant:生成的鹦鹉的变种。取值可以为red_bluebluegreenyellow_bluegray

命令格式示例:/give @s parrot_spawn_egg[parrot/variant="blue"]

pig/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的猪的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:pig/variant:生成的猪的变种。取值需为pig_variant注册表下的命名空间ID。原版内置temperatecoldwarm,分别对应温带、寒带和热带。

命令格式示例:/give @s pig_spawn_egg[pig/variant="cold"]

  • 给予当前实体一个只生成寒带猪变种的猪刷怪蛋

pot_decorations[编辑 | 编辑源代码]

饰纹陶罐使用此组件保存各个面的陶片信息,用于在物品栏内的渲染和放置方块时设置方块实体数据。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组pot_decorations 物品堆叠组件
      • 字符串:(命名空间ID)饰纹陶罐背面的陶片物品。
      • 字符串:(命名空间ID)饰纹陶罐左面的陶片物品。
      • 字符串:(命名空间ID)饰纹陶罐右面的陶片物品。
      • 字符串:(命名空间ID)饰纹陶罐前面的陶片物品。

命令格式示例:/give @s decorated_pot[pot_decorations=["angler_pottery_sherd","angler_pottery_sherd","angler_pottery_sherd","angler_pottery_sherd"]]

potion_contents[编辑 | 编辑源代码]

此组件保存物品的药水信息和状态效果信息。

如果设置此组件为字符串,则等价于只设置复合标签形式中的字符串potion,影响物品的名称和状态效果。游戏在保存时只会保存为复合标签形式。

  • NBT复合标签/JSON对象components:父标签。
    • 字符串NBT复合标签/JSON对象potion_contents 物品堆叠组件
      • 整型custom_color:物品渲染中,药水部分使用的颜色。只使用后24位,每个颜色通道占用8位,按RGB依次存储。
      • NBT列表/JSON数组custom_effects:当前物品所含有的自定义状态效果
      • 字符串custom_name:设置药水的名称,游戏将以item.minecraft.<药水物品类型>.effect.<此值>翻译键作为物品的名称。此值优先于item_name组件但低于custom_name组件。
      • 字符串potion药水效果,影响物品的名称,在NBT列表/JSON数组custom_effects不存在时决定状态效果。

命令格式示例:/give @s potion[potion_contents={custom_color:8388863,custom_effects:[{amplifier:122,duration:1102,id:"glowing"}]}]

  • 给予一瓶药水,药水颜色为紫色,药水的状态效果为持续1102游戏刻(55.1秒)的122级的发光效果。

potion_duration_scale[编辑 | 编辑源代码]

此组件保存物品的状态效果时长缩放信息,只影响字符串NBT复合标签/JSON对象potion_contents组件存储的状态效果时长。

  • NBT复合标签/JSON对象components:父标签。
    • 单精度浮点数minecraft:potion_duration_scale:(值≥0)状态效果时长缩放的倍率。当此组件不存在时,缩放倍率为1。

命令格式示例:/give @s potion[potion_duration_scale=2,potion_contents=...]

  • 给予当前实体一个药水,其效果时长会被放大2倍。

profile[编辑 | 编辑源代码]

玩家的头使用此组件,保存对应玩家的游戏档案数据。游戏在加载此组件时会自动进行解析,根据玩家的名称获取游戏档案数据,在存储时会将游戏档案数据一起存储。

如果设置此组件为字符串,则等价于只设置复合标签形式中的字符串name,游戏将根据玩家名称自动解析其他数据。游戏在保存时只会保存为复合标签形式。

  • NBT复合标签/JSON对象components:父标签。
    • 字符串NBT复合标签/JSON对象profile 物品堆叠组件
      • 整型数组id:玩家的UUID。
      • 字符串name:(长度不超过16,不能有空格和特殊字符[13])玩家名称。如果此项不存在则使用整型数组id加载玩家数据。
      • NBT列表/JSON数组NBT复合标签/JSON对象properties:玩家游戏档案属性。
        • 如果使用NBT列表/JSON数组列表形式,则游戏档案属性数据可以具有签名,且内部标签如下:
        • NBT复合标签/JSON对象:一项游戏档案属性。
          • 字符串*
            *
            name
            :游戏档案属性的名称。仅在值为textures时,由value设置的数据才会被加载为皮肤。
          • 字符串*
            *
            value
            :游戏档案属性的数据,是使用Base64编码的JSON数据。
          • 字符串signature:游戏档案属性的签名。
          如果使用NBT复合标签/JSON对象复合标签形式,则游戏档案属性数据不具有签名,且内部标签如下:
        • NBT列表/JSON数组<游戏档案属性名称>:游戏档案属性,可以保存多个不同数据但具有相同属性名称的游戏档案属性。
          • 字符串:游戏档案属性的数据,是使用Base64编码的JSON数据。

命令格式示例:/give @s player_head[profile={"name":"dream"}]

  • 给予一个ID名为dream的玩家的头。

游戏档案属性通常包括textures用于保存玩家的皮肤数据。在此属性的数据被Base64解码后具有如下结构:

  • NBT复合标签/JSON对象 JSON数据根元素
    • 字符串*
      *
      profileId
      :游戏档案的UUID,不带连字符。
    • 字符串*
      *
      profileName
      :游戏档案名称。
    • 布尔型signatureRequired:代表此纹理属性是否已被签名。如果字符串signature存在,则此项也存在并为true
    • NBT复合标签/JSON对象*
      *
      textures
      :纹理数据。
      • NBT复合标签/JSON对象CAPE披风纹理。如果此游戏档案不包含披风,此项不存在。
        • 字符串*
          *
          url
          :披风纹理的URL链接。
      • NBT复合标签/JSON对象SKIN皮肤纹理。如果此游戏档案不包含自定义皮肤,此项不存在。
        • NBT复合标签/JSON对象metadata:皮肤的元数据。
          • 字符串model:固定值slim。当皮肤模型手臂为3像素时存在,否则不存在。
        • 字符串*
          *
          url
          :皮肤纹理的URL链接。
    • 整型*
      *
      timestamp
      Unix时间戳,以毫秒为单位,时间为请求玩家游戏档案数据的时间。

provides_banner_patterns[编辑 | 编辑源代码]

控制物品能否放进织布机的旗帜图案槽位,以及可以制作的图案。

  • NBT复合标签/JSON对象components:父标签

命令格式示例:/give @s diamond[provides_banner_patterns="#pattern_item/creeper"]

  • 给予当前实体一个能在织布机中制作苦力怕旗帜图案的钻石。

provides_trim_material[编辑 | 编辑源代码]

控制物品在锻造台上使用盔甲纹饰配方时提供的纹饰材料。

  • NBT复合标签/JSON对象components:父标签
    • 字符串NBT复合标签/JSON对象minecraft:provides_trim_material:一个纹饰材料(可以用 字符串字符串指定一个纹饰材料的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的纹饰材料)提供的纹饰材料。作为字符串时取值需为trim_material注册表下的命名空间ID。
      • 字符串NBT复合标签/JSON对象NBT列表/JSON数组*
        *
        description
        :(文本组件)物品提示框内纹饰材料的名称。
      • 字符串*
        *
        asset_name
        :一个字符串,实际纹饰纹理的后缀。
      • NBT复合标签/JSON对象override_armor_assets:对于指定的装备模型,使用指定纹理覆盖而不使用字符串asset_name
        • 字符串<装备模型命名空间ID>:一个字符串,实际纹饰纹理的后缀。

rabbit/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的兔子的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:rabbit/variant:生成的兔子的变种。取值可以为brownwhiteblackwhite_splotchedgoldsaltevil

命令格式示例:/give @s rabbit_spawn_egg[rabbit/variant="white"]

rarity[编辑 | 编辑源代码]

  • NBT复合标签/JSON对象components 父标签
    • 字符串minecraft:rarity:设置物品的稀有度。可以为common(常见)、uncommon(少见)、rare(稀有)、epic(史诗)。

命令格式示例:/give @s stick[rarity=epic]

  • 给予一根稀有度为史诗的木棍。

recipes[编辑 | 编辑源代码]

知识之书使用此组件保存配方信息。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组recipes 物品堆叠组件
      • 字符串:配方的命名空间ID。

命令格式示例:/give @s knowledge_book[recipes=["cake", "piston","end_crystal"]]

repair_cost[编辑 | 编辑源代码]

当在铁砧上修理、合并或重命名当前物品时,表示在基础经验等级消耗之上额外增加的累积惩罚。

  • NBT复合标签/JSON对象components:父标签
    • 整型minecraft:repair_cost:(值≥0)累计惩罚值。

命令格式示例:/give @s diamond_sword[repair_cost=10]

  • 给予一把累积惩罚为10的钻石剑。

repairable[编辑 | 编辑源代码]

设置物品损坏时,在铁砧上用于修复此物品所需的物品。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象minecraft:repairable 物品堆叠组件
      • 字符串NBT列表/JSON数组*
        *
        items
        :一个或多个物品(可以用 字符串字符串指定一个物品的命名空间ID;若要指定多个物品,可以用 字符串字符串指定一个带有#前缀的标签,或指定一个 NBT列表/JSON数组数组,数组中的元素应为 字符串 命名空间ID字符串)设置修复物品。

命令格式示例:/give @s netherite_sword[repairable={items:"oak_planks"}]

salmon/size[编辑 | 编辑源代码]

控制刷怪蛋生成的鲑鱼的尺寸。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:salmon/size:生成的鲑鱼的尺寸。取值可以为smallmediumlarge,分别为“小”、“中”和“大”。

命令格式示例:/give @s salmon_spawn_egg[salmon/size="large"]

sheep/color[编辑 | 编辑源代码]

控制刷怪蛋生成的绵羊的颜色。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:sheep/color:生成的绵羊的颜色。取值为染料颜色

命令格式示例:/give @s sheep_spawn_egg[sheep/color="red"]

  • 给予当前实体一个只生成红色羊的羊刷怪蛋

shulker/color[编辑 | 编辑源代码]

控制刷怪蛋生成的潜影贝的颜色。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:shulker/color:生成的潜影贝的颜色。取值为染料颜色

命令格式示例:/give @s shulker_spawn_egg[shulker/color="red"]

suspicious_stew_effects[编辑 | 编辑源代码]

谜之炖菜使用此组件保存状态效果数据。

  • NBT复合标签/JSON对象components:父标签。
    • NBT列表/JSON数组suspicious_stew_effects 物品堆叠组件
      • NBT复合标签/JSON对象:一项状态效果信息。
        • 整型duration:状态效果的持续数,默认为160。
        • 字符串*
          *
          id
          :状态效果的命名空间ID。

命令格式示例:/give @s suspicious_stew[suspicious_stew_effects=[{id:"glowing",duration:200},{id:"speed",duration:200}]]

  • 给予一碗谜之炖菜,食用后将获得200游戏刻(10秒)的发光与迅捷状态效果。

tool[编辑 | 编辑源代码]

此组件可以使物品成为某些方块的挖掘工具。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象tool 物品堆叠组件
      • 布尔型can_destroy_blocks_in_creative:(默认为true创造模式玩家能否使用此物品破坏方块。
      • 整型damage_per_block:(值≥0,默认为1)破坏硬度非0的方块时物品损失的耐久度。
      • 单精度浮点数default_mining_speed:(值≥0,默认为1)挖掘方块时的速度。
      • NBT列表/JSON数组*
        *
        rules
        :物品与对应可以挖掘的方块的映射列表。
        • NBT复合标签/JSON对象:一项物品与方块列表的挖掘配置数据。
          • 字符串NBT列表/JSON数组*
            *
            blocks
            :当为字符串时,表示包含指定方块(即检查是否为同一个命名空间ID)或具有指定的方块标签的方块(需要在标签名前方写明#)。当为列表时,则包含下列指定方块列表内的所有方块。
            • 字符串:一个方块的命名空间ID。
          • 布尔型correct_for_drops:设置此物品是所有上方指定方块的合适挖掘工具,并在该方块的战利品表需要匹配正确工具时掉落物品。
          • 单精度浮点数speed:覆盖所有上方指定方块的使用此物品挖掘时的挖掘速度。

命令格式示例:/give @s wooden_shovel[tool={rules:[{blocks:["stone"],correct_for_drops:True}]}]

  • 给予一把可以挖掘石头的木锹。

tooltip_display[编辑 | 编辑源代码]

控制由组件产生的提示框文本可见性和提示框可见性。不能隐藏由block_entity_dataentity_data组件产生的安全警告。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象minecraft:tooltip_display 物品堆叠组件
      • 布尔型hide_tooltip:(默认为false)物品提示框是否总是隐藏。
      • NBT列表/JSON数组hidden_components:(默认为空列表)一个物品组件ID列表,列表内的所有组件提供的提示框文本都会被隐藏。如果组件不提供提示框文本,则对其没有效果。
        • 字符串:一个物品堆叠组件ID。

命令格式示例:/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

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:tooltip_style:(命名空间ID)物品提示框外观。

trim[编辑 | 编辑源代码]

各种盔甲可以使用此组件添加盔甲纹饰。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象trim 物品堆叠组件
      • 字符串NBT复合标签/JSON对象*
        *
        material
        :一个盔甲纹饰材料(可以用 字符串字符串指定一个盔甲纹饰材料的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的盔甲纹饰材料)。
        • 字符串*
          *
          asset_name
          :决定盔甲纹饰材料覆盖纹理的位置后缀。
        • 字符串NBT列表/JSON数组NBT复合标签/JSON对象*
          *
          description
          :锻造原材料的名称。
        • NBT复合标签/JSON对象override_armor_assets:对于指定的装备模型,使用指定纹理替换覆盖纹理字符串asset_name
          • 字符串<装备模型命名空间ID>:覆盖纹理的位置后缀。
      • 字符串NBT复合标签/JSON对象*
        *
        pattern
        :一个盔甲纹饰图案(可以用 字符串字符串指定一个盔甲纹饰图案的命名空间ID,或直接在此处以 NBT复合标签/JSON对象 类型定义一个新的盔甲纹饰图案)。
        • 字符串*
          *
          asset_id
          :盔甲纹饰的命名空间ID,同时也用于推断盔甲纹饰纹理的位置。
        • 布尔型decal:(默认为false)在渲染盔甲纹饰时是否只在原盔甲纹理的位置上渲染,而不是全部渲染而不考虑盔甲本身纹理。
        • 字符串NBT列表/JSON数组NBT复合标签/JSON对象*
          *
          description
          :盔甲纹饰的名称。

命令格式示例:/give @s iron_chestplate[trim={material:"diamond",pattern:"eye"}]

  • 给予一件拥有钻石质眼眸盔甲纹饰的铁胸甲。

tropical_fish/base_color[编辑 | 编辑源代码]

控制刷怪蛋和热带鱼桶生成的热带鱼的体色。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:tropical_fish/base_color:生成的热带鱼的体色。取值为染料颜色

命令格式示例:/give @s tropical_fish_spawn_egg[tropical_fish/base_color="red"]

tropical_fish/pattern[编辑 | 编辑源代码]

控制刷怪蛋和热带鱼桶生成的热带鱼的花纹。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:tropical_fish/pattern:生成的热带鱼的花纹。取值可以为kobsunstreaksnooperdasherbrinelyspottyflopperstripeyglitterblockfishbettyclayfish

命令格式示例:/give @s tropical_fish_spawn_egg[tropical_fish/pattern="stripey"]

tropical_fish/pattern_color[编辑 | 编辑源代码]

控制刷怪蛋和热带鱼桶生成的热带鱼的花纹颜色。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:tropical_fish/pattern_color:生成的热带鱼的花纹颜色。取值为染料颜色

命令格式示例:/give @s tropical_fish_spawn_egg[tropical_fish/pattern_color="red"]

unbreakable[编辑 | 编辑源代码]

当物品带有此组件时,物品将不会损失耐久,无法被破坏。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象unbreakable 物品堆叠组件

命令格式示例:/give @s diamond_pickaxe[unbreakable={}]

  • 给予一把无法破坏的钻石镐。

use_cooldown[编辑 | 编辑源代码]

设置物品在消耗使用后,物品不能再度使用的冷却时间。消耗使用指物品数量在使用后会减少的使用操作,但不包含方块物品的放置等对方块进行的有效操作。

此冷却时间会作用在一个“冷却组”上,如果物品没有此组件,或没有定义字符串cooldown_group,游戏将直接使用物品的ID作为冷却组ID;否则,使用字符串cooldown_group的值。同冷却组的物品会同时进行冷却而不能使用,并在冷却结束后同时再度可以被使用。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象minecraft:use_cooldown 物品堆叠组件
      • 字符串cooldown_group:(命名空间ID)设置物品冷却组。同冷却组的物品会同时受到同一个物品冷却影响,在冷却时间内所有同冷却组的物品都无法使用。如果此值不存在,游戏将以物品的命名空间ID作为冷却组ID使用。
      • 单精度浮点数*
        *
        seconds
        :(值>0)物品使用后的冷却时间,单位为秒。

命令格式示例:/give @s snowball[use_cooldown={seconds:1}] 16

  • 给予当前实体16个每使用一次冷却一秒的雪球

use_remainder[编辑 | 编辑源代码]

设置物品在使用且物品数量减少后,游戏返还的物品。消耗使用指物品数量在使用后会减少的使用操作,但不包含方块物品的放置等对方块进行的有效操作。如果玩家物品栏在欲返还物品时已满,则掉落成为物品实体。

命令格式示例:/give @s snowball[use_remainder={id:"snowball"}] 16

  • 给予当前实体16个能在使用后返回1个普通雪球的雪球。

villager/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的村民和僵尸村民的生物群系装束的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:villager/variant:生成的生物群系装束的变种。取值可以为desertjungleplainssavannasnowswamptaiga

命令格式示例:/give @s zombie_villager_spawn_egg[villager/variant="desert"]

weapon[编辑 | 编辑源代码]

存在时,物品使用次数统计信息会在用此物品攻击时增加。若物品能被降低耐久度则会对物品造成指定的损伤值。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象minecraft:weapon
      • 单精度浮点数disable_blocking_for_seconds:(值≥0,默认为0)攻击成功禁用目标盾牌的秒数。
      • 整型item_damage_per_attack:(值≥0,默认为1)每次攻击对此物品造成的损伤值,即损耗的耐久度

命令格式示例:/give @s netherite_sword[weapon={disable_blocking_for_seconds:60,item_damage_per_attack:0}]

  • 给予一个下界合金剑,当攻击成功时禁用目标盾牌60秒,且每次攻击损耗0耐久度

wolf/collar[编辑 | 编辑源代码]

控制刷怪蛋生成的狼在驯服后显示的项圈颜色。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:wolf/collar:生成的狼在驯服后显示的项圈颜色。取值为染料颜色

命令格式示例:/give @s wolf_spawn_egg[wolf/collar="orange"]

  • 给予当前实体一个狼刷怪蛋,在使用此刷怪蛋生成且驯服狼为狗后,狗的项圈会显示为橙色。

wolf/sound_variant[编辑 | 编辑源代码]

控制刷怪蛋生成的狼使用的音效。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:wolf/sound_variant :生成的狼使用的音效。取值需为wolf_sound_variant注册表下的命名空间ID。

wolf/variant[编辑 | 编辑源代码]

控制刷怪蛋生成的狼的变种。

  • NBT复合标签/JSON对象components:父标签
    • 字符串minecraft:wolf/variant:生成的狼的变种。取值需为wolf_variant注册表下的命名空间ID。原版内置rustyspottedstripedsnowychestnutblackashenwoodspale,分别对应“赭红狼”、“斑点狼”、“条纹狼”、“雪狼”、“栗色狼”、“黑狼”、“灰狼”、“森林狼”、“苍狼”。

命令格式示例:/give @s wolf_spawn_egg[wolf/variant="woods"]

  • 给予当前实体一个只生成森林狼变种的狼刷怪蛋

writable_book_content[编辑 | 编辑源代码]

此组件保存书与笔的数据。当玩家使用拥有此组件的书与笔或成书时会显示编辑界面,在讲台上打开拥有此组件的任意物品时游戏会显示每页的文本信息。此组件的优先级低于written_book_content组件。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象writable_book_content 物品堆叠组件
      • NBT列表/JSON数组pages:(最多100个元素)书与笔内存储的页信息,必须为以下格式之一。
        • 字符串:(长度不超过1024)书与笔内一页的文本信息。如果开启过滤,则代表文本信息与原信息一致。
        • NBT复合标签/JSON对象:书与笔内一页的信息。
          • 字符串filtered:(长度不超过1024)已过滤的文本信息。在开启过滤时,此字符串优先级高于字符串raw
          • 字符串*
            *
            raw
            :(长度不超过1024)未过滤的文本原始信息。

命令格式示例:/give @s writable_book[writable_book_content={pages:["Hello World!"]}]

  • 给予当前实体一个保存有“Hello World!”文本的书与笔。

written_book_content[编辑 | 编辑源代码]

此组件保存成书的数据。当玩家使用拥有此组件的书与笔或成书,或在讲台上打开拥有此组件的任意物品时游戏会显示每页的文本信息。此组件的title字段也被视为物品的自定义名称。

所有拥有此组件的物品可以使用成书复制配方在工作台上进行复制。

  • NBT复合标签/JSON对象components:父标签。
    • NBT复合标签/JSON对象written_book_content 物品堆叠组件
      • 字符串*
        *
        author
        :成书的作者。
      • 整型generation:(默认为0)决定成书是否为副本。可以为0(原稿),1(原稿的副本),2(副本的副本),3(破烂不堪)。
      • NBT列表/JSON数组pages:成书内存储的页信息,文本必须使用以下格式之一。
        • 字符串NBT复合标签/JSON对象NBT列表/JSON数组:成书内一页的信息,使用文本组件格式。如果开启过滤,则代表过滤后文本信息与原信息一致。
        • NBT复合标签/JSON对象:成书页内信息的另一种格式。只要定义了字符串NBT复合标签/JSON对象NBT列表/JSON数组raw字段就会忽略以NBT复合标签/JSON对象格式定义的文本组件。
          • 字符串NBT复合标签/JSON对象NBT列表/JSON数组filtered:已过滤的文本信息。在开启过滤时,此内容优先级高于字符串NBT复合标签/JSON对象NBT列表/JSON数组raw
          • 字符串NBT复合标签/JSON对象NBT列表/JSON数组*
            *
            raw
            :未过滤的原始信息。
      • 布尔型resolved:(默认为false)表示这本成书是否已经被解析,决定是否在打开成书时进行成书内文本的解析。
      • 字符串NBT复合标签/JSON对象*
        *
        title
        :(长度不超过32)成书的标题信息。为字符串时,如果开启过滤,则代表此标题过滤后与原标题一致。
        • 字符串filtered:(长度不超过32)已过滤的标题信息。在开启过滤时,此字符串优先级高于字符串raw
        • 字符串*
          *
          raw
          :(长度不超过32)未过滤的标题原始信息。

命令格式示例:/give @s written_book[written_book_content={author:"Steve",pages:["Hello World!"],title:"A Example."}]

  • 给予当前实体一本作者是“Steve”的标题为“A Example.”的原稿成书,其内写有文本内容“Hello World!”。

历史[编辑 | 编辑源代码]

Java版
1.20.524w09a加入了物品堆叠组件,取代了原有的物品格式。
24w10a配方现在可以指定物品堆叠组件。
profile、​dyed_color、​attribute_modifiers、​potion_contents、​enchantmentsstored_enchantments组件加入了简化定义。
lodestone_target组件重命名为lodestone_tracker
现在container组件适用于所有的容器而不只有潜影盒
24w12aunbreakable组件现在与耐久魔咒兼容。[14]
加入了7个新组件:food、​max_stack_size、​max_damage、​fire_resistant、​rarity、​toolhide_tooltip
/clear命令中,每个组件还可使用竖条分隔,部分组件的组件名和其组件数据之间还可使用(~)连接。
24w13a加入了2个新组件:item_nameominous_bottle_amplifier
24w14awritable_book_contentwritten_book_content组件中的未过滤的文本组件原始信息text被重命名为raw以避免歧义。[15]
现在当profile组件中不存在name而存在id时,可由UUID解析玩家档案数据。[16]
pre1移除了food组件的营养价值字段saturation_modifier,现在由新字段saturation直接指定饱和度。
1.2124w18a/give等命令中,可在组件名前添加!来移除该默认组件。
24w19acustom_data组件现在可以使用SNBT字符串定义。
food组件中加入了using_converts_to参数。
24w21a加入了jukebox_playable组件。
attribute_modifiers组件中,用id取代了nameuuid参数。
1.21.224w33a加入了enchantablerepairable组件。
enchantmentsstored_enchantments组件中的魔咒等级下限由0提升至1。
现在written_book_content组件中的title具有比custom_nameitem_name更高的优先级。
instrument内联定义加入了description字段。
24w34a加入了consumable、​use_remainderuse_cooldown组件。
现在装备和书默认具有enchantable组件。
不祥之瓶不再是食物,因而也不再默认具有food组件。
移除了food组件中NBT列表/JSON数组effects单精度浮点数eat_secondsNBT复合标签/JSON对象using_converts_to字段,现在此组件仅作为食物数据容器。
现在custom_name组件具有比written_book_contenttitle字段更高的优先级。
24w35a现在use_cooldown组件使用字符串cooldown_group字段而非字符串cooldownGroup字段。
bucket_entity_data组件加入type字段用来保存鲑鱼的尺寸。
24w36a加入了item_model、​equippable、​glidertooltip_style组件。
item_modelitem_name组件现在是所有物品的默认组件之一。
24w37a加入了damage_resistantdeath_protection组件。
由于功能被damage_resistant完全取代,移除了fire_resistant组件。
potion_contents组件加入了custom_name字段。
equippable组件加入了swappabledamage_on_hurt字段。
item_name组件的优先级现在永远最低,因此它能被potion_contents之类影响物品名称的组件覆盖。
具有map_id组件的物品现在能像地图一样被展开,在物品展示框上直角旋转,作为地图被复制、锁定或拓展,且在未启用高级提示框时的物品提示框中显示地图编号。
24w39alock组件现在是一个物品谓词。
pre1equippable组件加入了camera_overlay参数。
1.21.424w44a现在consumable组件的第一人称格挡动画可以正常显示。[17]
24w45a修改了custom_model_data的格式以适配物品模型映射的加入。
现在item_model组件不再设置物品模型,而是设置物品模型映射。
移除了trim组件material对象定义的item_model_index字段,并将override_armor_materials重命名为override_armor_assets
equippable组件的model字段重命名为asset_id
24w46aconsumable组件的字符串animation字段添加了新的可选值bundle
1.21.525w02atool组件加入新可选字段can_destroy_blocks_in_creative
加入了potion_duration_scaleweapon组件。
25w03aweapon组件的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/collarwolf/variant组件。
移除了bucket_entity_dataBucketVariantTagtype字段。
25w04aweapon组件的can_disable_blocking字段重做为disable_blocking_for_seconds
加入了blocks_attacks、​break_sound、​provides_banner_patterns、​provides_trim_materialtooltip_display组件。
移除了hide_additional_tooltiphide_tooltip组件。
移除了attribute_modifiers、​can_break、​can_place_on、​dyed_color、​enchantments、​stored_enchantments、​jukebox_playable、​unbreakabletrim组件的show_in_tooltip字段和bucket_entity_dataVariant字段。
现在具有简化定义的组件始终以简化形式存储,jukebox_playable组件直接指定命名空间ID,dyed_color组件可接受RGB数组。
现在villager/variant对生成僵尸村民的物品可用,axolotl/variant对美西螈桶可用。
25w05a加入了cow/variant组件。
blocks_attacks组件加入了bypassed_byhorizontal_blocking_angle字段。
现在provides_banner_patterns接受的旗帜图案标签需带有#前缀。
25w06a加入了chicken/variant组件。
25w08a加入了wolf/sound_variant组件。

已移除的组件[编辑 | 编辑源代码]

fire_resistant[编辑 | 编辑源代码]

此组件使得物品无法在熔岩或火中燃烧,且装备时不会因为受到火焰伤害而消耗耐久度。

此组件已被damage_resistant替代。

  • NBT复合标签/JSON对象components 父标签
    • NBT复合标签/JSON对象minecraft:fire_resistant{}

命令格式示例:/give @s diamond[fire_resistant={}]

  • 给予一颗无法被火或熔岩烧掉的钻石。

hide_additional_tooltip[编辑 | 编辑源代码]

隐藏物品的一部分附加信息。

此组件已被tooltip_display替代。

  • NBT复合标签/JSON对象components:父标签
    • NBT复合标签/JSON对象minecraft:hide_additional_tooltip{}

命令格式示例:/give @s ominous_bottle[hide_additional_tooltip={}]

  • 给予一个不祥之瓶,其物品提示框中的状态效果信息不会显示。

hide_tooltip[编辑 | 编辑源代码]

隐藏物品提示框。

此组件已被tooltip_display替代。

  • NBT复合标签/JSON对象components:父标签
    • NBT复合标签/JSON对象minecraft:hide_tooltip{}

命令格式示例:/give @s diamond[hide_tooltip={}]

  • 给予一颗不会显示物品提示框的钻石。

参考[编辑 | 编辑源代码]

  1. MC-269709 — 漏洞状态为“不予修复”。
  2. MC-269629 — 漏洞状态为“不予修复”。
  3. MC-269631 — 漏洞状态为“不予修复”。
  4. MC-269655 — 漏洞状态为“不予修复”。
  5. MC-269640 — 漏洞状态为“不予修复”。
  6. MC-269648 — 漏洞状态为“不予修复”。
  7. MC-269658 — 漏洞状态为“不予修复”。
  8. MC-269722 — 漏洞状态为“不予修复”。
  9. MC-269723 — 漏洞状态为“不予修复”。
  10. MC-269654 — 漏洞状态为“有意为之”。
  11. MC-275798 — 漏洞状态为“有意为之”。
  12. MC-279733
  13. MC-268898 — 漏洞状态为“有意为之”。
  14. MC-268510 — 漏洞状态为“已修复”。
  15. MC-269677 — 漏洞状态为“已修复”。
  16. MC-269983 — 漏洞状态为“已修复”。
  17. MC-275917 — 漏洞状态为“已修复”。

导航[编辑 | 编辑源代码]