跳转至

物品定义

本页列出行为包items/目录中物品定义文件的主要结构、常用物品组件、使用优先级和原版物品标签。物品定义用于声明一个可被命令、配方、战利品表、实体装备、容器和脚本等系统引用的物品。

根对象

字段 类型 默认值 描述
format_version 版本 未设置 物品定义文件的格式版本。官方示例使用1.20.20;较新的组件或字段可能要求更高版本。
minecraft:item 对象 未设置 物品定义对象,包含description和components。

description

字段 类型 默认值 描述
identifier 字符串 未设置 物品的赋命名空间标识符。自定义物品应使用自己的命名空间,不应使用minecraft命名空间。
menu_category 对象 未设置 控制物品在创造模式物品栏中的分类、组和命令可见性。
字段 类型 默认值 描述
category 字符串 items 物品所在的创造模式分类。官方参考将默认值列为items。
group 字符串 未设置 物品所在的创造模式物品组。组名最长为256个字符。
is_hidden_in_commands 布尔值 false 是否在命令中隐藏该物品。未设置时,命令默认可以使用该物品。

components

components是物品组件集合。每个组件以组件标识符为键,值为布尔值、数值、字符串、对象或数组,具体形态由组件决定。

组件字段、依赖关系和已弃用项详见物品组件。

组件 用途
minecraft:allow_off_hand 控制物品是否可放入副手槽位。
minecraft:block_placer 使物品可在使用时放置方块。
minecraft:bundle_interaction 启用收纳袋式交互和工具提示。
minecraft:can_destroy_in_creative 控制物品是否可在创造模式中破坏方块。
minecraft:compostable 使物品可用于堆肥桶,并定义增加堆肥层的概率。
minecraft:cooldown 为物品使用添加冷却。
minecraft:damage 定义物品攻击时的额外伤害。
minecraft:damage_absorption 使穿戴的物品吸收原本会作用于穿戴者的伤害。
minecraft:digger 将物品配置为工具,使其更快破坏特定方块。
minecraft:display_name 设置物品显示名。
minecraft:durability 设置物品耐久,并允许在铁砧、砂轮或工作台中合并。
minecraft:durability_sensor 使物品在受到耐久损耗时触发效果。
minecraft:dyeable 使物品可像皮革盔甲一样被染色。
minecraft:enchantable 定义可应用于该物品的魔咒类型。
minecraft:entity_placer 使物品可在世界中放置实体。
minecraft:fire_resistant 控制掉落物是否免疫火和熔岩燃烧。
minecraft:food 使物品可被玩家食用。
minecraft:fuel 使物品可作为熔炉燃料。
minecraft:glint 控制物品是否显示附魔光效。
minecraft:hand_equipped 控制物品在玩家手中是否按工具方式渲染。
minecraft:hover_text_color 设置鼠标悬停时物品名的颜色。
minecraft:icon 设置物品在界面等位置使用的图标。
minecraft:interact_button 控制触摸控制中的交互按钮是否显示及显示文本。
minecraft:kinetic_weapon 使物品造成动能伤害及相关效果。
minecraft:liquid_clipped 控制物品使用时是否与液体方块交互。
minecraft:max_stack_size 设置物品最大堆叠数量。
minecraft:piercing_weapon 使物品沿使用者视线方向对直线上的实体造成伤害。
minecraft:projectile 将物品定义为可由发射器射出或可被minecraft:shooter使用的弹射物。
minecraft:rarity 设置基础稀有度,并影响鼠标悬停时物品名的颜色。
minecraft:record 使物品可作为唱片播放音乐。
minecraft:repairable 定义可用于修复该物品的物品及修复量。
minecraft:seed 使物品可作为种子种植。
minecraft:shooter 使物品可发射弹射物,行为类似弓或弩。
minecraft:should_despawn 控制物品实体是否会自然消失。
minecraft:stacked_by_data 控制附加值不同的同类物品是否可以堆叠。
minecraft:storage_item 使物品可保存关联动态容器的数据。
minecraft:storage_weight_limit 设置存储物品可容纳的最大重量。
minecraft:storage_weight_modifier 修改存储物品的重量计算。
minecraft:swing_duration 设置开采或攻击时播放挥动动画的持续时间。
minecraft:swing_sounds 覆盖使用者挥动时发出的声音。
minecraft:tags 为物品附加标签。
minecraft:throwable 使物品可像雪球或末影珍珠一样被玩家投掷。
minecraft:use_animation 指定玩家使用物品时播放的动画。
minecraft:use_modifiers 设置与发射、投掷、食物等组件配合使用时的使用时长。
minecraft:wearable 使物品可被玩家穿戴到指定装备槽位。

Microsoft Learn还列出minecraft:chargeable、minecraft:custom_components、minecraft:render_offsets、minecraft:use_duration和minecraft:weapon等内部或已弃用项,并说明它们不适合作为自定义内容中的普通物品组件使用。

使用优先级

当一个物品同时具有多种使用行为时,游戏按固定顺序尝试触发行为:

  1. “对方块使用”行为优先执行,minecraft:entity_placer先尝试放置实体,随后minecraft:block_placer尝试放置方块。
  2. 普通“使用”行为随后执行,例如minecraft:food、minecraft:wearable、minecraft:shooter和minecraft:throwable。
  3. 当物品具有发射器行为时,minecraft:projectile先尝试从发射器射出,随后minecraft:entity_placer尝试生成实体。

多重行为

同一物品若同时尝试触发多个组件行为,可能出现非预期结果。设计物品时应避免在一个物品上叠加彼此竞争的使用行为。

原版物品标签

minecraft:tags可以为物品添加标签。创作者可以定义自己的标签,但只有原版物品标签可以使用minecraft:命名空间。

类别 标签
盔甲 minecraft:is_armor、minecraft:horse_armor、minecraft:nautilus_armor、minecraft:harness
食物 minecraft:is_meat、minecraft:is_cooked、minecraft:is_food
猪灵交易 minecraft:piglin_loved、minecraft:piglin_repellents
锻造台 minecraft:transformable_items、minecraft:transform_materials、minecraft:transform_templates
硫磺立方体原型 minecraft:sulfur_cube_archetype_bouncy、minecraft:sulfur_cube_archetype_regular、minecraft:sulfur_cube_archetype_slow_flat、minecraft:sulfur_cube_archetype_fast_flat、minecraft:sulfur_cube_archetype_light、minecraft:sulfur_cube_archetype_fast_sliding、minecraft:sulfur_cube_archetype_slow_sliding、minecraft:sulfur_cube_archetype_sticky、minecraft:sulfur_cube_archetype_high_resistance、minecraft:sulfur_cube_archetype_explosive
品质 minecraft:chainmail_tier、minecraft:copper_tier、minecraft:diamond_tier、minecraft:golden_tier、minecraft:iron_tier、minecraft:leather_tier、minecraft:netherite_tier、minecraft:stone_tier、minecraft:wooden_tier
工具 minecraft:digger、minecraft:is_axe、minecraft:is_hoe、minecraft:is_pickaxe、minecraft:is_shears、minecraft:is_shovel、minecraft:is_spear、minecraft:is_sword、minecraft:is_tool、minecraft:is_trident
盔甲纹饰 minecraft:trimmable_armors、minecraft:trim_materials、minecraft:trim_templates
木质集合 minecraft:boat、minecraft:boats、minecraft:chest_boat、minecraft:crimson_stems、minecraft:door、minecraft:hanging_actor、minecraft:hanging_sign、minecraft:logs、minecraft:logs_that_burn、minecraft:mangrove_logs、minecraft:planks、minecraft:sign、minecraft:warped_stems、minecraft:wooden_slabs
杂项 minecraft:arrow、minecraft:banner、minecraft:coals、minecraft:egg、minecraft:is_fish、minecraft:lectern_books、minecraft:is_minecart、minecraft:music_disc、minecraft:sand、minecraft:soul_fire_base_blocks、minecraft:spawn_egg、minecraft:stone_bricks、minecraft:stone_crafting_materials、minecraft:stone_tool_materials、minecraft:vibration_damper、minecraft:wool、minecraft:bookshelf_books、minecraft:decorated_pot_sherds、minecraft:metal_nuggets

示例

items/example_item.json
{
  "format_version": "1.20.20",
  "minecraft:item": {
    "description": {
      "identifier": "example:example_item",
      "menu_category": {
        "category": "items",
        "group": "itemGroup.name.misc"
      }
    },
    "components": {
      "minecraft:max_stack_size": 64,
      "minecraft:icon": {
        "texture": "example_item"
      },
      "minecraft:display_name": {
        "value": "item.example:example_item"
      }
    }
  }
}

原版示例清单

Microsoft Learn的物品清单页面列出了一组可查看JSON片段的原版物品示例,主要包括苹果、熟食、种子、鱼类、炖菜等食物与材料。该清单适合作为组件组合的参考示例,不应视为完整的物品注册表。