Data pack

The data pack system provides a way for players to further customize their Minecraft experience. Data packs can be used to override or add new advancements, functions, loot tables, and structures without any code modification.

Behavior
Data packs can be placed in the  folder of a world. Each data pack is either a sub-folder or a  file within the   folder. After it is in the folder, a data pack will be enabled for that world.

Data packs will load their data based on the load order. This order can not yet be seen or modified.

A data pack is identified by Minecraft based on the presence of the  file in the root directory of the data pack, which contains data in JSON format.


 * : Holds the data pack information.
 * : Pack version. Can be any number.
 * : A description. This string must exist but can be empty.
 * : A description. This string must exist but can be empty.

This folder contains all the data under one or multiple "namespaces". It can contain,  ,  , and/or   folders. A namespace is used to identify the data and should only contain lowercase alphanumerical characters,, and. It is advised to use a unique namespace to prevent clashes between multiple datapacks. The  namespace should only be used when overwriting default data.

Each advancement, function, loot table and structure can be placed directly in their respective folder but sub-folders are also allowed.