Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
注册
Advertisement
Information icon
此特性为Java版独有。

数据包(Data Pack)系统为玩家进一步定制其Minecraft体验提供了一种新方式。数据包可用于覆盖或添加新的进度维度函数战利品表谓词配方结构标签伤害类型自定义世界生成生物群系,而不进行任何代码修改。

行为[]

数据包可以放在世界的.minecraft/saves/<世界名称>/datapacks文件夹中。数据包可以是datapacks文件夹中的子文件夹或者.zip文件。将其放入文件夹后,将在加载或重新加载世界时为该世界启用数据包。

数据包将根据加载顺序加载其数据。此顺序储存在level.dat中,可以通过/datapack命令查看或修改。

在创建新的世界界面中,玩家也可以通过点击数据包按钮并将数据包文件夹或压缩包拖入来选择数据包。与资源包界面类似,玩家可以在世界生成之前启用数据包并轻松自定义加载顺序。

内容[]

文件夹结构[]

  • (数据包名字)
    • pack.mcmeta
    • pack.png
    • data
      • (命名空间)
        • advancements
          • (进度名称).json
        • chat_type
          • (聊天类型).json
        • datapacks
          • (内置数据包名字)
            • ...
        • functions
          • (函数名称).mcfunction
        • loot_tables
          • (战利品表名称).json
        • predicates
          • (战利品表谓词名称).json
        • structures
          • (结构名称).nbt
        • recipes
          • (配方名称).json
        • item_modifiers
          • (物品修饰器名称).json
        • tags
          • blocks
            • (标签名称).json
          • entity_types
            • (标签名称).json
          • items
            • (标签名称).json
          • fluids
            • (标签名称).json
          • functions
            • (标签名称).json
          • game_events
            • (标签名称).json
          • (注册名)
            • (标签名称).json
        • dimension
          • (维度名称).json
        • dimension_type
          • (维度类型名称).json
        • worldgen
          • biome
            • (生物群系).json
          • configured_carver
            • (雕刻器).json
          • configured_feature
            • (地物).json
          • density_function
            • (密度函数).json
          • flat_level_generator_preset
            • (超平坦预设).json
          • noise
            • (噪声).json
          • noise_settings
            • (噪声设置).json
          • placed_feature
            • (可放置地物).json
          • processor_list
            • (方块处理器).json
          • structure
            • (结构).json
          • structure_set
            • (结构集).json
          • template_pool
            • (拼图池).json
          • world_preset
            • (世界预设).json

data目录下也可以有多个不同的(命名空间)目录。

pack.mcmeta[]

Clock
此段落需要更新。

理由:需要补充23w31a的更改(多版本支持)。

当根目录中存在一个包含JSON格式数据的pack.mcmeta文件时才能被Minecraft识别为一个数据包。

  • :根对象。
    •  pack:存放数据包信息。
      •  description:一段原始JSON文本。在数据包列表下,光标移动到对应的数据包时会显示此处填写的描述。
      •  pack_format:数据包版本。如果此数值不匹配当前游戏版本需要的数值,玩家会收到警告,且在加载时需要额外确认。有关数据包版本编号的完整列表,请参阅#数据包版本
      •  supported_formats: 可選的欄位,描述了資源包和資料包所支援格式的範圍。可用的格式有:16、​[16,17]{"min_inclusive": 16, "max_inclusive": 17}pack_format字段仍是必需的,且格式保持不变,以允许旧版游戏读取包数据。如果supported_formats存在,则必须包含pack_format中声明的值。supported_formats23w31a加入,對於在此之前的旧版游戏,由于这个新信息会被忽略,因此在旧版中仍会被视为普通的、单版本的包,而没有扩展的兼容性。
        •  min_inclusive:資料包支援的範圍下限,即最舊版本號。
        •  max_inclusive:資料包支援的範圍上限,即最新版本號。
    •  filter:包过滤器。
      •  block:指定要忽略的内容。低优先级数据包的内容若匹配其中指定的内容,则对应内容会被游戏忽略。
        • :一段指定内容。可以使用正则表达式。
          •  namespace:要匹配的命名空间。若省略则匹配所有命名空间。
          •  path:要匹配的路径。若省略则匹配所有路径。

1.19原版数据包里的pack.mcmeta文件:

{
    "pack": {
        "pack_format": 10,
        "description": "The default data for Minecraft"
    }
}

data[]

此目录内存放一个或多个命名空间目录。命名空间目录内可包含对应的数据包内容文件夹。 这个文件夹可以是advancementschat_typedatapacksdamage_typedimensiondimension_typefunctionsloot_tablespredicatesrecipesstructurestags和/或worldgen。其中worldgen文件夹可以包含biome、​configured_carver、​configured_feature、​density_function、​flat_level_generator_preset、​noise、​noise_settings、​structure、​structure_set、​world_preset、​placed_feature、​configured_structure_feature、​configured_surface_builder、​processor_listtemplate_pool文件夹。 命名空间用于区分数据,且命名时名称只能使用小写英文字母、数字、-_。为了防止数据包之间发生冲突,建议在制作数据包时,尽量不要使用同样的命名空间。同时,仅当你要覆盖原版数据时,才使用minecraft为数据包的命名空间。

dimension、​dimension_typeworldgen文件夹目前是实验性功能。

每个进度函数战利品表谓词配方结构标签伤害类型可以直接放入到对应的文件夹内,也可以放入到对应的文件夹下的子文件夹内。

数据包版本[]

下表描述了每个数据包版本编号的适用版本范围:

编号 版本
3 1.13快照17w43a - 17w47b
4 1.1317w48a)- 1.14.419w46b
5 1.151.15-pre1)- 1.16.11.16.2-pre3
6 1.16.21.16.2-rc1)- 1.16.520w45a
7 1.1720w46a)- 1.17.11.18-exp7
8 1.1821w37a)- 1.18.122w07a
9 1.18.21.18.2-pre1 - 正式版)
10 1.1922w11a)- 1.19.3
11 1.19.4快照23w03a - 23w05a
12 1.19.423w06a - 正式版)
13 1.20快照23w12a - 23w14a
14 1.20快照23w16a - 23w17a
15 1.2023w18a)- 1.20.1
16 1.20.2快照23w31a
17 1.20.2快照23w32a - 23w35a
18 1.20.21.20.2-pre1 - 正式版)
19 1.20.3快照23w40a
20 1.20.3快照23w41a
21 1.20.3快照23w42a
22 1.20.3快照23w43a
23 1.20.323w44a)及以上

数据包模板[]

原版数据包的文件结构:

历史[]

Java版
1.1317w43a加入了数据包。
17w46a加入了/datapack命令,用于控制加载的数据包。
17w48a数据包可读取自定义配方。
18w01a在战利品表中加入了set_name函数。
(重新)加载后的minecraft:load里的函数现在会运行一次。
崩溃报告中现在会列出启用的数据包。
1.1418w43a加入了实体种类标签。
1.1519w38a加入了predicates文件夹,可以在此处定义战利品表谓词。
1.1620w22a稍微修改了数据包的加载机制,防止数据包带来的崩溃。
游戏将会检测严重的数据包问题,比如关键标签的缺失,将会阻止世界的加载。
如果数据包加载失败,那么修改将不会被应用,游戏将会使用旧的数据包。
数据包列表仅在数据包成功加载后才会更改。
服务器添加了--safeMode选项让游戏只加载原版数据包。
pre1现在可以在创建世界之前加载数据包。
数据包现在可以添加和修改维度
1.1720w45apack_version被拆分,数据包和资源包现在使用相互独立的版本数字。
20w46a由于MC-204861,数据包版本号更改为7
1.18.2pre1现在可在实验性数据包中添加自定义结构,即游戏现在可生成并存储由数据驱动的配置的结构。
现在可通过数据包对一些洞穴生成机制进行配置。
由于对数据包加入了以上新功能,数据包版本号更改为9
1.1922w11apack.mcmeta中加入了filter字段,用于按命名空间和正则表达式忽略低优先级数据包中的匹配内容。
由于对数据包加入了以上新功能,数据包版本号更改为10
1.19.322w42a加入了chat_type子文件夹。
加入了datapacks子文件夹,包含用于启用特定功能的原版数据包(功能数据包)。
原版世界生成数据包现在在游戏的jar文件中可见。故诸如dimension_typeworldgen之类的内容都可见。
1.19.423w03a数据包版本号更改为11
23w06a加入了damage_type子文件夹。
数据包版本号更改为12
1.2023w12a数据包版本号更改为13
23w16a数据包版本号更改为14
23w18a数据包版本号更改为15
1.20.223w31a数据包版本号更改为16
数据包现在可以与多个游戏版本兼容。
23w32a数据包版本号更改为17
pre1数据包版本号更改为18
Java版(即将到来)
1.20.323w40a数据包版本号更改为19
23w41a数据包版本号更改为20
23w42a数据包版本号更改为21
23w43a数据包版本号更改为22
23w44a数据包版本号更改为23

参见[]

语言

Advertisement