- 致编者:请牢记我们的域名wiki.mcbe-dev.net!
- 致编者:欢迎加入本Wiki的官方交流QQ群或Discord服务器!
- 基岩版1.19.31现已发布!(了解更多)
- Inner Core现已支持Xbox模组联机!(了解更多)
- 如果您是第一次来到本Wiki,欢迎注册一个账户
- 点击顶部的“编辑”或“编辑源代码”按钮即可编辑当前页面
- 请知悉:在不登录时也可以编辑和新建页面,但是您当前的IP地址会记录在编辑历史中
手册:数据驱动
数据驱动接口通常以JSON的形式使用,它们根据功能可以分为不同类型,且都需要遵循一定的格式。
类型[edit]
大多数文件的基本结构相同,都是如下框架:
{
"format_version": "<version>", //格式版本
"minecraft:<domain>": { //模式类型(有些文件中不含“minecraft”命名空间)
"description": {
//描述
},
//其他内容
}
}
而大框架下还包含了很多其他内容,这些内容可以分为以下这些种类。
描述[edit]
描述用于对这个JSON文件所定义的内容进行大致定义,它是一个名为description的对象。在描述对象中有一个名为identifier的参数,它用于定义赋命名空间标识符(有些文件中不含命名空间,仅为标识符);有些文件中还有其他参数,例如实体行为定义文件中有is_spawnable、is_summonable和is_experimental三个参数。
组件[edit]
组件被包含在与描述同级且名为components的对象中,它们用于赋予所编写内容一些基本功能和特性。
组件可以分为以下几种类型:
条件[edit]
条件被包含在与描述同级且名为conditions的数组中,它们用于判断是否能在特定条件下执行所编写内容。
事件响应[edit]
一个事件可以包含多个事件响应。事件响应用于在特定条件下(被触发器触发时)执行其中所包含的事件响应。事件被包含在与描述同级且名为events的对象中,其基本格式如下:
"events": {
"<name>": { //事件名称
//事件响应
},
//……
}
过滤器[edit]
部分组件中可填写过滤器,其本质上是一个对象,里面包含了test、subject、operator和value四个参数。过滤器用于根据条件筛选目标。
模式[edit]
游戏使用模式来校验JSON文本。所有JSON文本都应该按照模式所指定的格式来编写,这样才能将描述、组件、事件等内容组合起来,使游戏正常读取并达到预期效果。部分文件的模式比较特殊,它们不采用上述基本框架,而是直接对一些属性进行参数设置,例如配方、模型、战利品表等。
下面列出了这些文件的模式:
接口[edit]
下方列出了国际版数据驱动接口:
以上均为最新测试版的内容,欲查看当前最新测试版或预览版(1.19.70.20)中已被移除或被禁用的组件,请前往过时内容页面查看。