数据驱动物品
适用版本:国际版 1.21.130,中国版 3.7(1.21.50)。
数据驱动物品(Data-Driven Items,简称数驱物品)是由开发者给定数据,由游戏引擎自行注册的物品。
数驱物品由行为包和资源包组成。国际版和中国版均可编写数驱物品。数驱物品分为国际版物品和中国版物品,两者的编写流程有所不同。
文件架构
- 国际版
- 国际版(旧版)
- 中国版
通用
该特性在中国版和国际版均可用。
1.20.0+该特性在格式版本1.20.0+下可用。
-
behavior_packs
文件夹-
items
文件夹(物品 ID).item.json
文件,应为.json格式:定义物品的行为和渲染表现
-
item_catalog
文件夹crafting_item_catalog.json
文件,应为.json格式:1.21.60+该特性在格式版本1.21.60+下可用。物品在创造模式物品栏和配方书中的分类信息
-
recipes
文件夹(物品 ID).recipe.json
文件,应为.json格式:定义物品的配方表,亦可用于原版物品
-
-
resource_packs
文件夹-
texts
文件夹en_US.lang
文件,应为.lang格式:定义物品的英文译名zh_CN.lang
文件,应为.lang格式:定义物品的中文译名
-
textures
文件夹-
items
文件夹(物品 ID).png
图像,应为.png或.tga格式:定义物品的贴图
item_texture.json
文件,应为.json格式:物品贴图注册
-
-
通用
该特性在中国版和国际版均可用。
已弃用:1.10-1.16.0该特性已被弃用,只能在格式版本1.10-1.16.0下使用。
-
behavior_packs
文件夹-
items
文件夹(物品 ID).item.json
文件,应为.json格式:定义物品的行为
-
recipes
文件夹(物品 ID).recipe.json
文件,应为.json格式:定义物品的配方表,亦可用于原版物品
-
-
resource_packs
文件夹-
items
文件夹(物品 ID).json
文件,应为.json格式:定义物品的渲染表现
-
texts
文件夹en_US.lang
文件,应为.lang格式:定义物品的英文译名zh_CN.lang
文件,应为.lang格式:定义物品的中文译名
-
textures
文件夹-
items
文件夹(物品 ID).png
图像,应为.png或.tga格式:定义物品的贴图
item_texture.json
文件,应为.json格式:物品贴图注册
-
-
中国版
该特性仅在中国版可用。
1.10+该特性在格式版本1.10+下可用。
-
behavior_packs
文件夹-
netease_items_beh
文件夹(物品 ID).json
文件,应为.json格式:定义物品的行为
-
netease_group
文件夹*.json
文件,应为.json格式:定义物品组,名称可任意指定(例如 crafting_item_catalog.json 或 group_config.json)
-
netease_tab
文件夹*.json
文件,应为.json格式:定义物品分类,名称可任意指定(例如 crafting_item_catalog.json 或 category_config.json)
-
netease_recipes
文件夹(物品 ID).json
文件,应为.json格式:定义物品的配方表,亦可用于原版物品
-
-
resource_packs
文件夹-
netease_items_res
文件夹(物品 ID).json
文件,应为.json格式:定义物品的渲染表现
-
texts
文件夹en_US.lang
文件,应为.lang格式:定义物品的英文译名zh_CN.lang
文件,应为.lang格式:定义物品的中文译名
-
textures
文件夹-
items
文件夹(物品 ID).png
图像,应为.png或.tga格式:定义物品的贴图
item_texture.json
文件,应为.json格式:物品贴图注册
-
-
行为包配置
行为包定义格式
以下为 behavior_packs
文件夹 - items
文件夹(或netease_items_beh
文件夹) - (物品 ID).json
文件,应为.json格式 的结构。
- 国际版(1.20.30+)
- 国际版(1.20.0~1.20.30)
- 国际版(旧版)
- 中国版
- JSON 对象:根对象。
format_version*字符串(必选):格式版本,决定物品可用的功能。应填写为1.20.30或更高的版本。minecraft:item*JSON 对象(必选):定义数驱物品。description*JSON 对象(必选):物品描述,定义物品的基本属性。identifier*字符串(必选):定义物品的命名空间和物品 ID。menu_categoryJSON 对象:定义物品的分类和组别。category字符串:定义物品在创造模式物品栏中的分类。可填为construction(建筑)、equipment(装备)、items(物品)、nature(自然)、none(空)。group字符串:定义物品在创造模式物品栏中置于何物品组中,详见物品组与物品分类。
在格式版本为1.21.50或更低时,不能添加命名空间;在格式版本为1.21.60或更高时,必须添加命名空间。is_hidden_in_commands布尔值:定义物品是否隐藏在命令中。
componentsJSON 对象:物品组件,定义物品的功能。minecraft:(component):物品组件,可用的物品组件见数据驱动物品组件。
- JSON 对象:根对象。
format_version*字符串(必选):格式版本,决定物品可用的功能。应填写为1.20.0~1.20.30的版本。minecraft:item*JSON 对象(必选):定义数驱物品。description*JSON 对象(必选):物品描述,定义物品的基本属性。identifier*字符串(必选):定义物品的命名空间和物品 ID。category字符串:定义物品在创造模式物品栏中的分类。可填为construction(建筑)、equipment(装备)、items(物品)、nature(自然)。
components*JSON 对象(必选):物品组件,定义物品的功能。minecraft:(component):物品组件,可用的物品组件见数据驱动物品组件。
- JSON 对象:根对象。
format_version*字符串(必选):格式版本,决定物品可用的功能。应填写为1.10~1.16.0的版本。minecraft:item*JSON 对象(必选):定义数驱物品。description*JSON 对象(必选):物品描述,定义物品的基本属性。identifier*字符串(必选):定义物品的命名空间和物品 ID。
components*JSON 对象(必选):物品组件,定义物品的功能。minecraft:(component):物品组件,可用的物品组件见数据驱动物品组件(弃用组件)。
- JSON 对象:根对象。
format_version*字符串(必选):格式版本,决定物品可用的功能。应填写为1.10。minecraft:item*JSON 对象(必选):定义数驱物品。description*JSON 对象(必选):物品描述,定义物品的基本属性。identifier*字符串(必选):定义物品的命名空间和物品 ID。category字符串:定义物品在创造模式物品栏中的分类。可填为construction(建筑)、equipment(装备)、items(物品)、nature(自然)、commands(只有命令和 API 可获取)、none(只有 API 可获取)。也可设置为自定义分类,详见物品组与物品分类。register_to_create_menu布尔值:是否注册到创造模式物品栏中。custom_item_type字符串:自定义物品类别,可选值有weapon、armor、egg、ranged_weapon、bucket、projectile_item、shield。
components*JSON 对象(必选):物品组件,定义物品的功能。minecraft:(component):物品组件,可用的物品组件见数据驱动物品组件(中国版)。
资源包配置
资源包定义格式
以下为 resource_packs
文件夹 - items
文件夹(或netease_items_res
文件夹) - (物品 ID).json
文件,应为.json格式 的结构。
- 国际版(旧版)
- 中国版
- JSON 对象:根对象。
format_version*字符串(必选):格式版本,决定物品可用的功能。应填写为1.10~1.16.0的版本。minecraft:item*JSON 对象(必选):定义数驱物品。description*JSON 对象(必选):物品描述,定义物品的基本属性。identifier*字符串(必选):定义物品的命名空间和物品 ID。category字符串:定义物品在创造模式物品栏中的分类。可填为construction(建筑)、equipment(装备)、items(物品)、nature(自然)。
components*JSON 对象(必选):物品组件,定义物品的功能。minecraft:(component):物品组件,可用的物品组件见数据驱动物品组件(弃用组件)。
- JSON 对象:根对象。
format_version*字符串(必选):格式版本,决定物品可用的功能。应填写为1.10。minecraft:item*JSON 对象(必选):定义数驱物品。description*JSON 对象(必选):物品描述,定义物品的基本属性。identifier*字符串(必选):定义物品的命名空间和物品 ID。
components*JSON 对象(必选):物品组件,定义物品的功能。minecraft:(component):物品组件,可用的物品组件见数据驱动物品组件(中国版)。
item_texture.json
以下为 resource_packs
文件夹 - textures
文件夹 - item_texture.json
文件,应为.json格式 的结构。
语言文件键名
- 对于国际版物品,键名一般为
item.(命名空间):(ID),除非使用minecraft:display_name组件更改。例如doc:my_item使用item.doc:my_item的键名。 - 对于国际版旧版物品或中国版物品,键名一般为
item.(命名空间):(ID).name。例如doc:my_item使用item.doc:my_item.name的键名。
参考文档
本文主要参考文档如下,读者可以在这些文档获得更多信息。