数据包(data pack)系统为玩家进一步定制其Minecraft体验提供了一种新方式。数据包可用于覆盖或添加新的进度、函数、战利品表和结构,而不进行任何代码修改。
行为
数据包可以放在世界的.minecraft/saves/(世界名称)/datapacks
文件夹中。数据包可以是datapacks
文件夹中的子文件夹或者.zip
文件。
数据包将根据加载顺序加载其数据。此顺序储存在level.dat中,可以通过/datapack
命令查看或修改。
内容
文件夹结构
|
data
目录下也可以有多个不同的(命名空间)
目录。
pack.mcmeta
当根目录中存在一个包含JSON格式数据的pack.mcmeta
文件时才能被Minecraft识别为一个数据包。
-
- pack:存放数据包信息。
- pack_format:数据包版本,可以是任何数字。
- description:一段描述,此字段必须存在但是可以为空。在数据包列表下,光标移动到对应的数据包时会显示描述。
- description:包含原始JSON文本。与上方字符串格式的
description
标签功能相同,两者不能同时存在。
- pack:存放数据包信息。
data
此目录内存放一个或多个“命名空间”目录。“命名空间”目录内可包含以下文件夹:advancements
、functions
、loot_tables
、predicates
structures
、recipes
和tags
。命名空间用于区分数据,且命名时名称只识别小写英文字母、数字、-
和_
。为了防止数据包之间发生冲突,建议在制作数据包时,尽量不要使用同样的命名空间。同时,仅当你要覆盖原版数据时,才使用minecraft
为数据包的命名空间。
进度、函数、战利品表、断言
历史
Java版 | |||||
---|---|---|---|---|---|
1.13 | 17w43a | 加入了数据包。 | |||
17w46a | 加入了/datapack 命令,用于控制加载的数据包。 | ||||
17w48a | 数据包可读取自定义配方。 | ||||
18w01a | 在战利品表中加入了set_name 函数。
| ||||
(重新)加载后的minecraft:load 里的函数现在会运行一次。 | |||||
崩溃报告中现在会列出启用的数据包。 | |||||
1.14 | 18w43a | 加入了实体种类标签。 | |||
Java版(即将到来) | |||||
1.15 | 19w38a | 加入了predicates 文件夹,可以在此处定义断言。 |
另见
组件 |
| ||
---|---|---|---|
数据包 | |||
教程 |
版本 | |||||||
---|---|---|---|---|---|---|---|
开发周期 |
| ||||||
技术 |
| ||||||
多人游戏 | |||||||
游戏订制 |