附加包
玩法系统 Java 不适用;Java 版通常对应资源包、数据包或模组 基岩版 支持

附加包

Add-on

附加包是基岩版官方支持的内容扩展方式,用于通过资源包、行为包、脚本和组件数据向世界加入新内容,或修改既有纹理、实体行为、掉落物、生成规则、配方与交易表。

资源包主要影响视觉、声音和界面资源,行为包主要影响实体、方块、物品、配方、掉落和生成逻辑;Java 版没有同名系统,通常拆分为资源包、数据包或模组实现类似目标。

机制说明

附加包服务于 Minecraft 基岩版的数据驱动内容系统。它可以把纹理、模型、声音、实体行为、方块、物品、配方、掉落物、生成规则、交易表和脚本组合到一个世界或全局配置中。

行为包用于改变世界运行规则和内容定义。它可以修改既有实体的行为、掉落物、生成规则、物品合成配方和村民交易表,也可以创建新的实体、方块和物品。

资源包属于附加包的一部分,和行为包并列。资源包更偏向客户端表现,常用于替换或新增纹理、模型、声音、字体、UI、语言文本和渲染相关资源。

基岩版市场中的地图也经常随附附加包。购买或下载这类地图时,地图依赖的资源包、行为包或其他内容会随世界一起分发;是否能在其他世界复用取决于内容作者的设置。

附加包根目录需要有效的 manifest.json。这个文件声明包的名称、描述、UUID、版本、模块、依赖和功能范围,是游戏识别资源包、行为包、脚本模块和依赖关系的关键入口。

脚本 API 可以放在附加包的 scripts 目录中,并通过 manifest.json 依赖声明接入 @minecraft/server 等模块。需要注意的是,部分 API 或组件在当前版本仍可能需要实验性开关。

完整内容

使用方式

附加包可以作为全局资源启用,也可以绑定到某个世界、地图模板或服务器世界中。资源包加载时会按列表顺序叠加,列表上层拥有更高优先级。

世界附加包会随世界一起加载,常用于地图作者固定玩法、视觉和行为体验。开启共享包后,进入世界的玩家也需要下载世界资源包,并可能禁用自己的全局资源包。

全局资源包

  • 放在 com.mojang/resource_packs 或 development_resource_packs 中。
  • 每个包通常是一个子文件夹或压缩包。
  • 可在设置中的全局资源入口启用、禁用或调整顺序。

世界附加包

  • 附加包可以和世界文件夹绑定。
  • 进入世界时会作为世界资源包或世界行为包加载。
  • 世界资源包通常具有较高优先级,玩家无法在该世界中自由排序。

服务器指定资源包

  • 服务器世界可以要求玩家下载指定资源。
  • texturepack-required 为 true 时,玩家需要使用服务器资源包。
  • 适合服务器统一材质、音效、语言或地图视觉表现。

默认附加包

  • Minecraft 材质包是默认资源包。
  • 默认行为包承载基础行为内容。
  • 这类默认包固定加载,不能像普通自定义包一样移除。

结构层次

附加包可以由资源包、行为包、皮肤包、世界模板和脚本模块组合而成。资源包一般放在 resource_packs,行为包一般放在 behavior_packs,开发目录则常用于本地测试。

多个附加包可以组合到同一世界中;资源层按优先级覆盖,行为层则通过世界配置、模块和依赖关系共同决定最终内容。

  • 资源包根目录常见 manifest.json、pack_icon.png、textures、models、sounds、texts、ui 等资源。
  • 行为包根目录常见 manifest.json、entities、blocks、items、recipes、loot_tables、functions、scripts、spawn_rules、trading 和 worldgen 等数据。
  • manifest.json 是游戏识别包类型、模块、版本、依赖和脚本能力的关键文件。
  • pack_icon.png 是包列表图标;缺失时游戏会使用默认图标。

组件与脚本 API

组件是基岩版附加包中定义对象属性的重要方式。物品、方块和实体可以通过 JSON 组件组合出不同能力,例如可放置、可堆肥、可挖掘、发光、碰撞箱、掉落表和红石交互。

实体组件可以被打包进组件组,并在运行时通过事件添加或移除。这样实体能根据状态切换行为,相关定义也会作为实体数据的一部分保存。

脚本 API 允许附加包编写 JavaScript,在事件发生或指定时间执行逻辑,并通过 manifest.json 依赖接入相关模块。

物品组件

  • Wiki 当前列出约 57 个物品组件行。
  • 常见组件包括 minecraft:icon、minecraft:display_name、minecraft:durability、minecraft:food、minecraft:fuel、minecraft:enchantable、minecraft:block_placer 和 minecraft:entity_placer。
  • 部分组件已弃用或已移除,制作时应以目标基岩版文档为准。

方块组件

  • Wiki 当前列出约 50 个方块组件行。
  • 常见组件包括 minecraft:geometry、minecraft:material_instances、minecraft:collision_box、minecraft:selection_box、minecraft:loot、minecraft:light_emission、minecraft:redstone_conductivity 和 minecraft:placement_filter。
  • 组件会影响方块外观、交互、碰撞、掉落、光照、红石和放置规则。

实体组件

  • 实体组件通常随实体实例保存。
  • 组件组可以在运行时被添加或移除,用来表达实体状态变化。
  • 实体定义、组件组和事件共同决定自定义实体的行为。

脚本模块

  • @minecraft/server 提供实体、方块、物品和世界接口。
  • @minecraft/server-ui 提供简单 UI 接口。
  • @minecraft/server-net 提供 HTTP 相关接口,仅 BDS 可用。
  • @minecraft/server-gametest 提供 GameTest 相关测试接口。

基础数据

分类
玩法系统
适用版本
基岩版;Java 版通常对应资源包、数据包或模组
核心文件
manifest.json
包类型
资源包、行为包、脚本模块、皮肤包、世界模板
常见目录
resource_packs、behavior_packs、development_resource_packs、development_behavior_packs
资源包范围
纹理、模型、声音、UI、语言、字体、粒子和渲染资源
行为包范围
实体、方块、物品、配方、掉落、生成、交易、函数和脚本
示例项目
Mojang/bedrock-samples

机制表与对照数据

附加包类型与用途

类型 主要作用 常见目录 说明
资源包 修改纹理、模型、声音、UI、语言、字体和渲染资源 resource_packs、development_resource_packs 偏客户端表现,可全局启用或绑定到世界
行为包 修改实体、方块、物品、配方、掉落、生成、交易和函数 behavior_packs、development_behavior_packs 偏世界逻辑,通常绑定到世界或地图模板
脚本模块 用 JavaScript 响应事件、控制实体、方块、物品和世界 scripts 需要在 manifest.json 的模块与依赖中声明
皮肤包 分发角色皮肤与皮肤元数据 skin_packs 属于基岩版内容包体系的一部分
世界模板 把世界、资源包、行为包和元数据打包成模板 world_templates 常用于市场地图、玩法地图和可复用世界模板

启用位置与加载特点

场景 位置或配置 玩家控制 加载特点
全局资源包 com.mojang/resource_packs 或 development_resource_packs 可启用、禁用和排序 资源按列表顺序叠加,上层优先
世界附加包 世界文件夹内绑定的资源包与行为包 进入世界时随世界加载 用于固定地图玩法、视觉和行为
共享包 世界设置中的共享包选项 进入世界的玩家需要下载 可让多人使用同一套世界资源
服务器资源 server.properties 中的 texturepack-required 等配置 可由服务器要求使用 用于服务器统一材质与声音体验
默认包 游戏内置 Minecraft 材质包与默认行为包 不可禁用 固定参与加载,提供基础资源和行为

根目录关键文件

文件或目录 适用包 作用 备注
manifest.json 资源包、行为包、脚本模块 声明包元数据、UUID、版本、模块和依赖 有效附加包的关键入口
pack_icon.png 资源包、行为包 包列表图标 可选但常用
contents.json 资源包、行为包 描述包内容结构 用于部分分发和校验场景
manifest_publish.json 资源包、行为包 发布相关 manifest 常见于发布或市场内容
signatures.json 资源包、行为包 签名数据 常见于受保护或发布内容
texts/languages.json 资源包、行为包 语言列表 配合语言文本使用
scripts 行为包 脚本 API 文件目录 需要 manifest 依赖声明
pack_icon.png 缺失 资源包、行为包 使用默认包图标 不影响包本体识别

资源包目录数据

目录或文件 作用范围 常见用途 备注
animation_controllers / animations 动画资源 控制动画状态与关键帧 常与实体、附着物或模型配合
attachables 附着物资源 定义装备、手持物等附着渲染 偏视觉表现
biomes / biomes_client.json 生物群系客户端资源 设置群系视觉相关资源 与世界生成逻辑区分
cameras 相机资源 自定义相机表现 面向新版基岩版功能
entity 实体客户端定义 绑定模型、纹理、动画和渲染控制器 常与行为包 entities 对应
fogs 雾效 定义环境雾效 偏视觉表现
font 字体 替换或新增字体资源 影响文本渲染
items / blocks.json 物品与方块客户端资源 定义客户端图标、纹理或方块资源 与行为数据区分
materials / models 材质与模型 定义渲染材质、几何模型和显示形态 常配合 textures
particles 粒子 定义粒子贴图与客户端表现 不等同于行为逻辑
render_controllers 渲染控制器 控制实体渲染、纹理和材质选择 常用于自定义实体
sounds / sounds.json 声音 声音文件与声音事件定义 sound_definitions.json、music_definitions.json 常见于 sounds 下
texts 语言与文本 language_names.json、languages.json、本地化文本 用于翻译和 UI 文案
textures 纹理 方块、物品、实体、UI 与图集纹理 包含 item_texture.json、terrain_texture.json、textures_list.json 等
ui 界面 自定义 UI 资源 偏客户端界面表现

行为包目录数据

目录或文件 作用范围 常见用途 备注
entities 实体行为 定义实体组件、组件组和事件 自定义实体的核心目录
blocks 方块行为 定义自定义方块组件与行为 与资源包方块外观配合
items / item_catalog 物品行为 定义自定义物品和目录数据 常与资源包图标配合
recipes 配方 新增或修改合成、熔炼等配方 影响玩法逻辑
loot_tables 战利品表 控制掉落和战利品 常用于实体、方块和结构
spawn_rules 生成规则 控制实体自然生成条件 常与实体定义配合
functions 函数 命令函数文件 适合批量命令逻辑
scripts 脚本 Script API JavaScript 文件 需要 manifest 模块与依赖声明
trading 交易 村民或其他交易表 可修改交易内容
structures 结构 结构文件 可被特征、命令或玩法调用
features / feature_rules 地物与规则 世界生成相关特征 常用于自定义地物
dimensions 维度 自定义维度相关数据 依赖目标版本能力
worldgen/processors 世界生成处理器 结构或生成处理 新版目录结构之一
worldgen/structure_sets 结构集合 控制结构集合与生成 与结构生成相关
worldgen/structures 世界生成结构 新版结构目录 1.21.100.22 起替代 jigsaw_structures
worldgen/template_pools 模板池 结构拼接模板池 常用于大型结构生成

组件与脚本模块

类别 Wiki 数据量 代表条目 用途
物品组件 约 57 行 minecraft:icon、minecraft:food、minecraft:durability、minecraft:fuel、minecraft:enchantable 定义物品显示、耐久、食物、燃料、附魔和交互
方块组件 约 50 行 minecraft:geometry、minecraft:collision_box、minecraft:loot、minecraft:light_emission、minecraft:redstone_conductivity 定义方块模型、碰撞、掉落、光照、红石和放置规则
实体组件 以实体定义和组件组组织 组件组、事件、定义 通过运行时添加或移除组件组改变实体状态
@minecraft/common 脚本模块 通用类、接口和枚举 提供基础类型和错误类
@minecraft/server 脚本模块 实体、方块、物品和世界接口 控制游戏内容和世界特征
@minecraft/server-ui 脚本模块 表单和简单 UI 实现玩家交互界面
@minecraft/server-net 脚本模块 HTTP 相关接口 仅 BDS 可用
@minecraft/server-gametest 脚本模块 GameTest 测试接口 用于测试脚本和玩法逻辑

关键版本历史

版本 变化 影响
携带版 Alpha 0.15.0 加入资源包,并带有市场资源包 基岩版资源包体系开始进入游戏
携带版 1.0.3 加入糖果资源包 市场与内置资源包继续扩展
基岩版 1.10.0.3 资源包和世界模板分离,并可在现存世界中独立更新 附加内容分发和维护更灵活
基岩版 1.21.100.22 行为包目录 worldgen/jigsaw_structures 重命名为 worldgen/structures 世界生成结构目录需要按新版本调整

站内关联词条

下列词条与当前机制直接相关,已优先关联到站内本地百科页面。

返回列表

同分类条目

下面这些条目和当前主题属于同一分类,方便继续浏览。

返回列表