Minecraft:Manifest.json: Difference between revisions
More actions
imported>Wplx23333 No edit summary |
Fix template calls: add MC/ prefix |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{DISPLAYTITLE:<samp>manifest.json</samp>}} | {{DISPLAYTITLE:<samp>manifest.json</samp>}} | ||
{{ | {{MC/Exclusive|bedrock}} | ||
<code>'''manifest.json'''</code> is a {{ | <code>'''manifest.json'''</code> is a {{MC/W|manifest file}} that contains metadata information for the ''Minecraft'' package format. It is required by resource packs, [[Minecraft:behavior pack]]s, [[Minecraft:skin pack]]s, and world templates in order to be successfully imported into the game. | ||
== JSON format == | == JSON format == | ||
=== Version 3 === | === Version 3 === | ||
<div class="treeview"> | <div class="treeview"> | ||
* {{ | * {{MC/Nbt|compound}}: The root tag. | ||
** {{ | ** {{MC/Nbt|int|format_version}}: The syntax version used in the manifest file. In this section, it is version {{MC/Cd|3}}. | ||
** {{ | ** {{MC/Nbt|compound|header}}: External information about the pack. | ||
*** {{ | *** {{MC/Nbt|bool|allow_random_seed}}: Specific to world templates. Whether a random seed should be generated on world creation. | ||
*** {{ | *** {{MC/Nbt|int-array|base_game_version}}: Specific to world templates. A vector {{MC/Cd|[A,B,C]}} representing the version of the vanilla resource and behavior packs to apply. | ||
*** {{ | *** {{MC/Nbt|string|description}}: A description of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|bool|platform_locked}}: Locks the pack from being used as a global pack, rendering it impossible to use on other player's worlds or servers. | ||
*** {{ | *** {{MC/Nbt|bool|lock_template_options}}: Specific to world templates. If enabled, the player can not modify the world options. | ||
*** {{ | *** {{MC/Nbt|int-array|min_engine_version}}: A vector {{MC/Cd|[A,B,C]}} representing the minimum version of the game the pack can run on. | ||
*** {{ | *** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|string|pack_scope}}: Specific to resource packs. Represents at which level the pack can be applied. {{MC/Cd|"world"}} packs can be applied to a world, {{MC/Cd|"global"}} in global resources and {{MC/Cd|"any"}} anywhere. Defaults to {{MC/Cd|"any"}}. | ||
*** {{ | *** {{MC/Nbt|string|uuid}}: A unique identifier for the pack. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
*** {{ | *** {{MC/Nbt|string|version}}: A string of the form {{MC/Cd|"A.B.C"}} or vector {{MC/Cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack. | ||
**** {{ | **** {{MC/Nbt|string|buildMeta}}: Name in front of preRelease. | ||
**** {{ | **** {{MC/Nbt|int|major}}: First version number, for [[Minecraft:Marketplace]] packages this value always needs to be greater than 0. | ||
**** {{ | **** {{MC/Nbt|int|minor}}: Second version number. | ||
**** {{ | **** {{MC/Nbt|int|patch}}: Third version number. | ||
**** {{ | **** {{MC/Nbt|string|preRelease}}: Name in front of version. | ||
** {{ | ** {{MC/Nbt|list|modules}}: Describes modules which are content types that the pack may contain. | ||
*** {{ | *** {{MC/Nbt|compound}}: A module object in the list. | ||
**** {{ | **** {{MC/Nbt|string|description}}: An internal description of the module. | ||
**** {{ | **** {{MC/Nbt|string|type}}: The type of the module, can be: {{MC/Cd|"resource"}} (resource pack), {{MC/Cd|"data"}} | ||
**** ),{{ | **** ),{{MC/Cd|"persona_piece"}} ([[Minecraft:Character Creator]] item or cape), {{MC/Cd|"[[Minecraft:Skin pack|skin_pack]]"}}, {{MC/Cd|"world_template"}}, or {{MC/Cd|"script"}} (scripting). | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
**** {{ | **** {{MC/Nbt|string|version}}: A string of the form {{MC/Cd|"A.B.C"}} or vector {{MC/Cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack. | ||
***** {{ | ***** {{MC/Nbt|string|buildMeta}}: Name in front of preRelease. | ||
***** {{ | ***** {{MC/Nbt|int|major}}: First version number. | ||
***** {{ | ***** {{MC/Nbt|int|minor}}: Second version number. | ||
***** {{ | ***** {{MC/Nbt|int|patch}}: Third version number. | ||
***** {{ | ***** {{MC/Nbt|string|preRelease}}: Name in front of version. | ||
**** {{ | **** {{MC/Nbt|string|language}}: Specific to script modules. The language the scripts are written in. Only supports {{MC/Cd|"javascript"}}. | ||
**** {{ | **** {{MC/Nbt|string|entry}}: Specific to script modules. Relative path to the main script file. | ||
** {{ | ** {{MC/Nbt|list|dependencies}}: Describes external dependencies that the pack requires. The dependency may be another pack, or a script module. | ||
*** {{ | *** {{MC/Nbt|compound}}: Describes a pack dependency. | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: {{MC/Cd|uuid}} of the pack dependency. | ||
**** {{ | **** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
**** {{ | **** {{MC/Nbt|int-array}}{{MC/Nbt|string|version}}: {{MC/Cd|version}} of the dependency to use. | ||
*** {{ | *** {{MC/Nbt|compound}}: Describes a script module dependency. | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: {{MC/Cd|uuid}} of the script module. ''Optional'' | ||
**** {{ | **** {{MC/Nbt|string|module_name}}: Name of the script module, used for importing the Script API. | ||
**** {{ | **** {{MC/Nbt|int-array}}{{MC/Nbt|string|version}}: {{MC/Cd|version}} of the dependency to use. | ||
** {{ | ** {{MC/Nbt|list|capabilities}}: Optional features that can be enabled. | ||
*** {{ | *** {{MC/Nbt|string}}: A capability to enable, can be: | ||
**** {{ | **** {{MC/Cd|"chemistry"}} – specific to ''[[Minecraft:Minecraft Education]]'' chemistry features. | ||
**** {{ | **** {{MC/Cd|"editorExtension"}} – used internally in the game in the vanilla [[Minecraft:Bedrock Editor]] resource pack, and for importing <code>@minecraft/server-editor</code> script module.<ref>https://wiki.bedrock.dev/scripting/api-modules</ref> | ||
**** {{ | **** {{MC/Cd|"experimental_custom_ui"}} – experimental custom UI based on HTML and JavaScript. Unsupported since 1.18.10.28.<ref>https://bedrock.dev/docs/1.18.0.0/1.18.10.28/UI</ref> | ||
**** {{ | **** {{MC/Cd|"script_eval"}} – enables dynamic code execution in scripting via <code>eval()</code> function or <code>Function()</code> constructor.<ref>https://wiki.bedrock.dev/scripting/api-environment</ref> | ||
**** {{ | **** {{MC/Cd|"raytraced"}} – enables PBR features specific to ray tracing, which only supports MER subset. Compatible with Vibrant Visuals. | ||
**** {{ | **** {{MC/Cd|"pbr"}} – enables PBR features specific to [[Minecraft:Vibrant Visuals]] with full MERS support. | ||
** {{ | ** {{MC/Nbt|compound|metadata}}: Metadata on the pack, currently mandatory in this version. | ||
*** {{ | *** {{MC/Nbt|list|authors}}: List of creators of the pack, currently mandatory in this version. | ||
**** {{ | **** {{MC/Nbt|string}}: The name of a creator of the pack. | ||
*** {{ | *** {{MC/Nbt|string|license}}: License the pack is distributed under. | ||
*** {{ | *** {{MC/Nbt|compound|generated_with}}: Tools used to generate the manifest. | ||
**** {{ | **** {{MC/Nbt|list}}: The name of the list element should be the name of a tool used to generate the manifest. It must be made of simple characters and can be up to 32 characters long. | ||
***** {{ | ***** {{MC/Nbt|string}}: A string of the form {{MC/Cd|"A.B.C"}} representing a version of the tool used to modify the manifest. | ||
*** {{ | *** {{MC/Nbt|string|product_type}}: If set to {{MC/Cd|"addon"}}, indicates the pack is meant as part of an [[Minecraft:add-on]]. This allows the add-on to not disable achievements when activated. | ||
*** {{ | *** {{MC/Nbt|string|url}}: URL to a website. | ||
**{{ | **{{MC/Nbt|list|subpacks}}: List of sub-packs used in the pack, which can be enabled and disabled individually. | ||
***{{ | ***{{MC/Nbt|compound}}: A sub-pack in the list | ||
****{{ | ****{{MC/Nbt|string|folder_name}}: Name of the folder where the sub-pack is located. | ||
****{{ | ****{{MC/Nbt|string|name}}: In-game display name of the sub-pack | ||
****{{ | ****{{MC/Nbt|int|memory_tier}}: Designates the minimum amount of RAM required to run the sub-pack (each tier represents 250 MB) | ||
****{{ | ****{{MC/Nbt|int|memory_performance_tier}}: Denotes the optimal platform for a subpack (values range 1–5). | ||
** {{ | ** {{MC/Nbt|list|settings}}: Order-dependent list of settings the player can modify in the game's UI. | ||
*** {{ | *** {{MC/Nbt|compound}}: A read-only label, used for describing or breaking up the sections of the settings area. | ||
**** {{ | **** {{MC/Nbt|string|type}}: {{MC/Cd|"label"}} | ||
**** {{ | **** {{MC/Nbt|string|text}}: Text value of the label. | ||
*** {{ | *** {{MC/Nbt|compound}}: A binary toggle. | ||
**** {{ | **** {{MC/Nbt|string|type}}: {{MC/Cd|"toggle"}} | ||
**** {{ | **** {{MC/Nbt|string|text}}: Textual, user-visible label for the toggle. | ||
**** {{ | **** {{MC/Nbt|string|name}}: Programmatic identifier for the value of this toggle. | ||
**** {{ | **** {{MC/Nbt|bool|default}}: Default value of this setting. | ||
*** {{ | *** {{MC/Nbt|compound}}: A sliding that allows for setting of a number within a range. | ||
**** {{ | **** {{MC/Nbt|string|type}}: {{MC/Cd|"slider"}} | ||
**** {{ | **** {{MC/Nbt|string|text}}: Textual, user-visible label for the slider. | ||
**** {{ | **** {{MC/Nbt|string|name}}: Programmatic identifier for the value of this slider. | ||
**** {{ | **** {{MC/Nbt|double|min}}: Minimum value for the slider. | ||
**** {{ | **** {{MC/Nbt|double|max}}: Maximum value for the slider. | ||
**** {{ | **** {{MC/Nbt|double|step}}: Incremental "notches" for the slider. | ||
**** {{ | **** {{MC/Nbt|double|default}}: Default value of the slider. | ||
</div> | </div> | ||
=== Version 2 === | === Version 2 === | ||
<div class="treeview"> | <div class="treeview"> | ||
* {{ | * {{MC/Nbt|compound}}: The root tag. | ||
** {{ | ** {{MC/Nbt|int|format_version}}: The syntax version used in the manifest file. In this section, it is version {{MC/Cd|2}}. | ||
** {{ | ** {{MC/Nbt|compound|header}}: External information about the pack. | ||
*** {{ | *** {{MC/Nbt|bool|allow_random_seed}}: Specific to world templates. Whether a random seed should be generated on world creation. | ||
*** {{ | *** {{MC/Nbt|int-array|base_game_version}}: Specific to world templates. A vector {{MC/Cd|[A,B,C]}} representing the version of the vanilla resource and behavior packs to apply. | ||
*** {{ | *** {{MC/Nbt|string|description}}: A description of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|bool|platform_locked}}: Locks the pack from being used as a global pack, rendering it impossible to use on other player's worlds or servers. | ||
*** {{ | *** {{MC/Nbt|bool|lock_template_options}}: Specific to world templates. If enabled, the player can not modify the world options. | ||
*** {{ | *** {{MC/Nbt|int-array|min_engine_version}}: A vector {{MC/Cd|[A,B,C]}} representing the minimum version of the game the pack can run on. | ||
*** {{ | *** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|string|pack_scope}}: Specific to resource packs. Represents at which level the pack can be applied. {{MC/Cd|"world"}} packs can be applied to a world, {{MC/Cd|"global"}} in global resources and {{MC/Cd|"any"}} anywhere. Defaults to {{MC/Cd|"any"}}. | ||
*** {{ | *** {{MC/Nbt|string|uuid}}: A unique identifier for the pack. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
*** {{ | *** {{MC/Nbt|int-array}}{{MC/Nbt|string|version}}: A string of the form {{MC/Cd|"A.B.C"}} or vector {{MC/Cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack. | ||
** {{ | ** {{MC/Nbt|list|modules}}: Describes modules which are content types that the pack may contain. | ||
*** {{ | *** {{MC/Nbt|compound}}: A module object in the list. | ||
**** {{ | **** {{MC/Nbt|string|description}}: An internal description of the module. | ||
**** {{ | **** {{MC/Nbt|string|type}}: The type of the module, can be: {{MC/Cd|"resource"}} (resource pack), {{MC/Cd|"data"}} ([[Minecraft:behavior pack]]), {{MC/Cd|"persona_piece"}} ([[Minecraft:Character Creator]] item or cape), {{MC/Cd|"[[Minecraft:Skin pack|skin_pack]]"}}, {{MC/Cd|"world_template"}}, or {{MC/Cd|"script"}} (scripting). | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
**** {{ | **** {{MC/Nbt|int-array}}{{MC/Nbt|string|version}}: A string of the form {{MC/Cd|"A.B.C"}} or vector {{MC/Cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack. | ||
**** {{ | **** {{MC/Nbt|string|language}}: Specific to script modules. The language the scripts are written in. Only supports {{MC/Cd|"javascript"}}. | ||
**** {{ | **** {{MC/Nbt|string|entry}}: Specific to script modules. Relative path to the main script file. | ||
** {{ | ** {{MC/Nbt|list|dependencies}}: Describes external dependencies that the pack requires. The dependency may be another pack, or a script module. | ||
*** {{ | *** {{MC/Nbt|compound}}: Describes a pack dependency. | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: {{MC/Cd|uuid}} of the pack dependency. | ||
**** {{ | **** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
**** {{ | **** {{MC/Nbt|int-array}}{{MC/Nbt|string|version}}: {{MC/Cd|version}} of the dependency to use. | ||
*** {{ | *** {{MC/Nbt|compound}}: Describes a script module dependency. | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: {{MC/Cd|uuid}} of the script module. ''Optional'' | ||
**** {{ | **** {{MC/Nbt|string|module_name}}: Name of the script module, used for importing the Script API. | ||
**** {{ | **** {{MC/Nbt|int-array}}{{MC/Nbt|string|version}}: {{MC/Cd|version}} of the dependency to use. | ||
** {{ | ** {{MC/Nbt|list|capabilities}}: Optional features that can be enabled. | ||
*** {{ | *** {{MC/Nbt|string}}: A capability to enable, can be: | ||
**** {{ | **** {{MC/Cd|"chemistry"}} – specific to ''[[Minecraft:Minecraft Education]]'' chemistry features. | ||
**** {{ | **** {{MC/Cd|"editorExtension"}} – used internally in the game in the vanilla [[Minecraft:Bedrock Editor]] resource pack, and for importing <code>@minecraft/server-editor</code> script module.<ref>https://wiki.bedrock.dev/scripting/api-modules</ref> | ||
**** {{ | **** {{MC/Cd|"experimental_custom_ui"}} – experimental custom UI based on HTML and JavaScript. Unsupported since 1.18.10.28.<ref>https://bedrock.dev/docs/1.18.0.0/1.18.10.28/UI</ref> | ||
**** {{ | **** {{MC/Cd|"script_eval"}} – enables dynamic code execution in scripting via <code>eval()</code> function or <code>Function()</code> constructor.<ref>https://wiki.bedrock.dev/scripting/api-environment</ref> | ||
**** {{ | **** {{MC/Cd|"raytraced"}} – enables PBR features specific to ray tracing, which only supports MER subset. Compatible with Vibrant Visuals. | ||
**** {{ | **** {{MC/Cd|"pbr"}} – enables PBR features specific to [[Minecraft:Vibrant Visuals]] with full MERS support. | ||
** {{ | ** {{MC/Nbt|compound|metadata}}: Metadata on the pack. | ||
*** {{ | *** {{MC/Nbt|list|authors}}: List of creators of the pack. | ||
**** {{ | **** {{MC/Nbt|string}}: The name of a creator of the pack. | ||
*** {{ | *** {{MC/Nbt|string|license}}: License the pack is distributed under. | ||
*** {{ | *** {{MC/Nbt|compound|generated_with}}: Tools used to generate the manifest. | ||
**** {{ | **** {{MC/Nbt|list}}: The name of the list element should be the name of a tool used to generate the manifest. It must be made of simple characters and can be up to 32 characters long. | ||
***** {{ | ***** {{MC/Nbt|string}}: A string of the form {{MC/Cd|"A.B.C"}} representing a version of the tool used to modify the manifest. | ||
*** {{ | *** {{MC/Nbt|string|product_type}}: If set to {{MC/Cd|"addon"}}, indicates the pack is meant as part of an [[Minecraft:add-on]], this also allows the addon to not disable achievements when activated. | ||
*** {{ | *** {{MC/Nbt|string|url}}: URL to a website. | ||
</div> | </div> | ||
| Line 145: | Line 145: | ||
The previous iteration of <code>manifest.json</code> only ever contains few basic information about the package, such as <code>header</code>, <code>modules</code>, and <code>dependencies</code>, being very similar to version 2 without the modern features. | The previous iteration of <code>manifest.json</code> only ever contains few basic information about the package, such as <code>header</code>, <code>modules</code>, and <code>dependencies</code>, being very similar to version 2 without the modern features. | ||
These manifest files are documented from multiple built-in resource packs, which are found in the | These manifest files are documented from multiple built-in resource packs, which are found in the game's directory: | ||
<div class="treeview"> | <div class="treeview"> | ||
* {{ | * {{MC/Nbt|compound}}: The root tag. | ||
** {{ | ** {{MC/Nbt|int|format_version}}: The syntax version used in the manifest file, version 1. | ||
** {{ | ** {{MC/Nbt|compound|header}}: The pack's display information. | ||
*** {{ | *** {{MC/Nbt|string|description}}: A description of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|string|uuid}}: A unique identifier for the pack. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
*** {{ | *** {{MC/Nbt|int-array|version}}: An array consist of three integer numbers representing the current version of pack. | ||
*** {{ | *** {{MC/Nbt|int-array|min_engine_version}}: An array consist of three integer numbers representing the minimum version of the game the pack can run on. | ||
** {{ | ** {{MC/Nbt|list|modules}}: Describes modules which are content types that the pack may contain. | ||
*** {{ | *** {{MC/Nbt|compound}}: A module object in the list. | ||
**** {{ | **** {{MC/Nbt|string|description}}: An internal description of the module. | ||
**** {{ | **** {{MC/Nbt|string|type}}: The type of the module, can be: {{MC/Cd|"resource"}} (resource pack), {{MC/Cd|"data"}} ([[Minecraft:behavior pack]]), and {{MC/Cd|"skin_pack"}}. | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
**** {{ | **** {{MC/Nbt|int-array|version}}: An array consist of three integer numbers representing the version of the pack. | ||
** {{ | ** {{MC/Nbt|list|dependencies}}: Describes external dependencies that the pack requires. | ||
*** {{ | *** {{MC/Nbt|compound}}: Describes a pack dependency. | ||
**** {{ | **** {{MC/Nbt|string|uuid}}: {{MC/Cd|uuid}} of the pack dependency. | ||
**** {{ | **** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
**** {{ | **** {{MC/Nbt|int-array|version}}: An array consist of three integer numbers representing the version of the pack. | ||
</div> | </div> | ||
=== Version 0 === | === Version 0 === | ||
The very first version of <code>manifest.json</code>, at the time was named <code>pack_manifest.json</code>, is used back in the | The very first version of <code>manifest.json</code>, at the time was named <code>pack_manifest.json</code>, is used back in the v0.16.0 alpha versions. Its syntax is very different from version 1, containing the <code>header</code> object with different properties that would be renamed in the next iteration. Notably, <code>modules</code> and <code>dependencies</code> are contained inside the <code>header</code> object. | ||
It is retroactively called version 0 in the [https://learn.microsoft.com/en-us/minecraft/creator/reference/content/versiondisambiguation?view=minecraft-bedrock-stable Creator Documentation]. Additionally, when the pack containing this manifest is loaded in later versions, it would get converted to version 1 with the new <code>manifest.json</code>, while the old <code>pack_manifest.json</code> would get backed up as <code>pack_manifest.json.old</code>.<ref>https://learn.microsoft.com/en-us/minecraft/creator/reference/content/versiondisambiguation?view=minecraft-bedrock-stable</ref> | It is retroactively called version 0 in the [https://learn.microsoft.com/en-us/minecraft/creator/reference/content/versiondisambiguation?view=minecraft-bedrock-stable Creator Documentation]. Additionally, when the pack containing this manifest is loaded in later versions, it would get converted to version 1 with the new <code>manifest.json</code>, while the old <code>pack_manifest.json</code> would get backed up as <code>pack_manifest.json.old</code>.<ref>https://learn.microsoft.com/en-us/minecraft/creator/reference/content/versiondisambiguation?view=minecraft-bedrock-stable</ref> | ||
| Line 175: | Line 175: | ||
Version 0 resource packs are separated into the ''client'' and ''server'' packs, both serve very similar purposes to the modern resource pack (client) and behavior pack (server). | Version 0 resource packs are separated into the ''client'' and ''server'' packs, both serve very similar purposes to the modern resource pack (client) and behavior pack (server). | ||
These manifest files are documented from multiple built-in resource packs, which are found in the | These manifest files are documented from multiple built-in resource packs, which are found in the game's directory: | ||
<div class="treeview"> | <div class="treeview"> | ||
* {{ | * {{MC/Nbt|compound}}: The root tag. | ||
** {{ | ** {{MC/Nbt|compound|header}}: The pack's display information. | ||
*** {{ | *** {{MC/Nbt|string|pack_id}}: A unique identifier for the pack. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
*** {{ | *** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|int-array|packs_version}}: An array consist of three integer numbers representing the current version of pack. | ||
*** {{ | *** {{MC/Nbt|string|description}}: A description of the pack. Can be text or a translation key. | ||
*** {{ | *** {{MC/Nbt|list|modules}}: Describes modules which are content types that the pack may contain. | ||
**** {{ | **** {{MC/Nbt|compound}}: A module object in the list. | ||
***** {{ | ***** {{MC/Nbt|string|description}}: An internal description of the module. | ||
***** {{ | ***** {{MC/Nbt|string|type}}: The type of the module, can be: {{MC/Cd|"resource"}} (client) and {{MC/Cd|"data"}} (server). | ||
***** {{ | ***** {{MC/Nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{MC/Cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f). | ||
***** {{ | ***** {{MC/Nbt|string|version}}: A string formatted like <code>X.Y.Z</code> representing the version of the pack. | ||
*** {{ | *** {{MC/Nbt|list|dependencies}}: Describes external dependencies that the pack requires. | ||
**** {{ | **** {{MC/Nbt|compound}}: Describes a pack dependency. | ||
***** {{ | ***** {{MC/Nbt|string|uuid}}: {{MC/Cd|uuid}} of the pack dependency. | ||
***** {{ | ***** {{MC/Nbt|string|name}}: The name of the pack. Can be text or a translation key. | ||
***** {{ | ***** {{MC/Nbt|string|version}}: A string formatted like <code>X.Y.Z</code> representing the version of the pack. | ||
</div> | </div> | ||
== History == | == History == | ||
{{ | {{MC/Empty Section}} | ||
== External links == | == External links == | ||
| Line 210: | Line 210: | ||
== Navigation == | == Navigation == | ||
{{Navbox Bedrock Edition}} | {{MC/Navbox Bedrock Edition}} | ||
[[Category:Development]] | [[Category:Development]] | ||
pt:Manifest.json | |||
uk:Manifest.json | |||
zh:Manifest.json | |||
Latest revision as of 20:35, 9 April 2026
Script error: No such module "Exclusive".
manifest.json is a
- REDIRECT Template:Wikipedia
Template:Redr that contains metadata information for the Minecraft package format. It is required by resource packs, Minecraft:behavior packs, Minecraft:skin packs, and world templates in order to be successfully imported into the game.
JSON format
Version 3
- Template:Nbt/sprite: The root tag.
- Template:Nbt/sprite format_version: The syntax version used in the manifest file. In this section, it is version
- REDIRECT Template:Code
- Template:Nbt/sprite header: External information about the pack.
- Template:Nbt/sprite allow_random_seed: Specific to world templates. Whether a random seed should be generated on world creation.
- Template:Nbt/sprite base_game_version: Specific to world templates. A vector
- Template:Nbt/sprite header: External information about the pack.
- REDIRECT Template:Code
Template:Redr representing the version of the vanilla resource and behavior packs to apply.
- Template:Nbt/sprite description: A description of the pack. Can be text or a translation key.
- Template:Nbt/sprite platform_locked: Locks the pack from being used as a global pack, rendering it impossible to use on other player's worlds or servers.
- Template:Nbt/sprite lock_template_options: Specific to world templates. If enabled, the player can not modify the world options.
- Template:Nbt/sprite min_engine_version: A vector
- REDIRECT Template:Code
Template:Redr representing the minimum version of the game the pack can run on.
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/sprite pack_scope: Specific to resource packs. Represents at which level the pack can be applied.
- REDIRECT Template:Code
Template:Redr packs can be applied to a world,
- REDIRECT Template:Code
Template:Redr in global resources and
- REDIRECT Template:Code
Template:Redr anywhere. Defaults to
- REDIRECT Template:Code
- Template:Nbt/sprite uuid: A unique identifier for the pack. Must be of the form
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/sprite version: A string of the form
- REDIRECT Template:Code
Template:Redr or vector
- REDIRECT Template:Code
Template:Redr representing the current version of pack. Used to handle updates to the pack.
- Template:Nbt/sprite buildMeta: Name in front of preRelease.
- Template:Nbt/sprite major: First version number, for Minecraft:Marketplace packages this value always needs to be greater than 0.
- Template:Nbt/sprite minor: Second version number.
- Template:Nbt/sprite patch: Third version number.
- Template:Nbt/sprite preRelease: Name in front of version.
- Template:Nbt/sprite modules: Describes modules which are content types that the pack may contain.
- Template:Nbt/sprite: A module object in the list.
- Template:Nbt/sprite description: An internal description of the module.
- Template:Nbt/sprite type: The type of the module, can be:
- Template:Nbt/sprite: A module object in the list.
- REDIRECT Template:Code
Template:Redr (resource pack),
- REDIRECT Template:Code
- ),
- REDIRECT Template:Code
Template:Redr (Minecraft:Character Creator item or cape),
- REDIRECT Template:Code
- REDIRECT Template:Code
Template:Redr, or
- REDIRECT Template:Code
Template:Redr (scripting).
- Template:Nbt/sprite uuid: An identifier unique to the module. Must be of the form
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/sprite version: A string of the form
- REDIRECT Template:Code
Template:Redr or vector
- REDIRECT Template:Code
Template:Redr representing the current version of pack. Used to handle updates to the pack.
- Template:Nbt/sprite buildMeta: Name in front of preRelease.
- Template:Nbt/sprite major: First version number.
- Template:Nbt/sprite minor: Second version number.
- Template:Nbt/sprite patch: Third version number.
- Template:Nbt/sprite preRelease: Name in front of version.
- Template:Nbt/sprite language: Specific to script modules. The language the scripts are written in. Only supports
- REDIRECT Template:Code
- Template:Nbt/sprite entry: Specific to script modules. Relative path to the main script file.
- Template:Nbt/sprite dependencies: Describes external dependencies that the pack requires. The dependency may be another pack, or a script module.
- Template:Nbt/sprite: Describes a pack dependency.
- Template:Nbt/sprite uuid:
- Template:Nbt/sprite: Describes a pack dependency.
- REDIRECT Template:Code
Template:Redr of the pack dependency.
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/spriteTemplate:Nbt/sprite version:
- REDIRECT Template:Code
Template:Redr of the dependency to use.
- Template:Nbt/sprite: Describes a script module dependency.
- Template:Nbt/sprite uuid:
- Template:Nbt/sprite: Describes a script module dependency.
- REDIRECT Template:Code
Template:Redr of the script module. Optional
- Template:Nbt/sprite module_name: Name of the script module, used for importing the Script API.
- Template:Nbt/spriteTemplate:Nbt/sprite version:
- REDIRECT Template:Code
Template:Redr of the dependency to use.
- Template:Nbt/sprite capabilities: Optional features that can be enabled.
- Template:Nbt/sprite: A capability to enable, can be:
- Template:Nbt/sprite: A capability to enable, can be:
- Template:Nbt/sprite capabilities: Optional features that can be enabled.
- REDIRECT Template:Code
Template:Redr – specific to Minecraft:Minecraft Education chemistry features.
- REDIRECT Template:Code
Template:Redr – used internally in the game in the vanilla Minecraft:Bedrock Editor resource pack, and for importing @minecraft/server-editor script module.<ref>https://wiki.bedrock.dev/scripting/api-modules</ref>
- REDIRECT Template:Code
Template:Redr – experimental custom UI based on HTML and JavaScript. Unsupported since 1.18.10.28.<ref>https://bedrock.dev/docs/1.18.0.0/1.18.10.28/UI</ref>
- REDIRECT Template:Code
Template:Redr – enables dynamic code execution in scripting via eval() function or Function() constructor.<ref>https://wiki.bedrock.dev/scripting/api-environment</ref>
- REDIRECT Template:Code
Template:Redr – enables PBR features specific to ray tracing, which only supports MER subset. Compatible with Vibrant Visuals.
- REDIRECT Template:Code
Template:Redr – enables PBR features specific to Minecraft:Vibrant Visuals with full MERS support.
- Template:Nbt/sprite metadata: Metadata on the pack, currently mandatory in this version.
- Template:Nbt/sprite authors: List of creators of the pack, currently mandatory in this version.
- Template:Nbt/sprite: The name of a creator of the pack.
- Template:Nbt/sprite license: License the pack is distributed under.
- Template:Nbt/sprite generated_with: Tools used to generate the manifest.
- Template:Nbt/sprite: The name of the list element should be the name of a tool used to generate the manifest. It must be made of simple characters and can be up to 32 characters long.
- Template:Nbt/sprite: A string of the form
- Template:Nbt/sprite: The name of the list element should be the name of a tool used to generate the manifest. It must be made of simple characters and can be up to 32 characters long.
- Template:Nbt/sprite authors: List of creators of the pack, currently mandatory in this version.
- Template:Nbt/sprite metadata: Metadata on the pack, currently mandatory in this version.
- REDIRECT Template:Code
Template:Redr representing a version of the tool used to modify the manifest.
- Template:Nbt/sprite product_type: If set to
- REDIRECT Template:Code
Template:Redr, indicates the pack is meant as part of an Minecraft:add-on. This allows the add-on to not disable achievements when activated.
- Template:Nbt/sprite url: URL to a website.
- Template:Nbt/sprite subpacks: List of sub-packs used in the pack, which can be enabled and disabled individually.
- Template:Nbt/sprite: A sub-pack in the list
- Template:Nbt/sprite folder_name: Name of the folder where the sub-pack is located.
- Template:Nbt/sprite name: In-game display name of the sub-pack
- Template:Nbt/sprite memory_tier: Designates the minimum amount of RAM required to run the sub-pack (each tier represents 250 MB)
- Template:Nbt/sprite memory_performance_tier: Denotes the optimal platform for a subpack (values range 1–5).
- Template:Nbt/sprite: A sub-pack in the list
- Template:Nbt/sprite settings: Order-dependent list of settings the player can modify in the game's UI.
- Template:Nbt/sprite: A read-only label, used for describing or breaking up the sections of the settings area.
- Template:Nbt/sprite type:
- Template:Nbt/sprite: A read-only label, used for describing or breaking up the sections of the settings area.
- REDIRECT Template:Code
- Template:Nbt/sprite text: Text value of the label.
- Template:Nbt/sprite: A binary toggle.
- Template:Nbt/sprite type:
- REDIRECT Template:Code
- Template:Nbt/sprite text: Textual, user-visible label for the toggle.
- Template:Nbt/sprite name: Programmatic identifier for the value of this toggle.
- Template:Nbt/sprite default: Default value of this setting.
- Template:Nbt/sprite: A sliding that allows for setting of a number within a range.
- Template:Nbt/sprite type:
- REDIRECT Template:Code
- Template:Nbt/sprite text: Textual, user-visible label for the slider.
- Template:Nbt/sprite name: Programmatic identifier for the value of this slider.
- Template:Nbt/sprite min: Minimum value for the slider.
- Template:Nbt/sprite max: Maximum value for the slider.
- Template:Nbt/sprite step: Incremental "notches" for the slider.
- Template:Nbt/sprite default: Default value of the slider.
Version 2
- Template:Nbt/sprite: The root tag.
- Template:Nbt/sprite format_version: The syntax version used in the manifest file. In this section, it is version
- REDIRECT Template:Code
- Template:Nbt/sprite header: External information about the pack.
- Template:Nbt/sprite allow_random_seed: Specific to world templates. Whether a random seed should be generated on world creation.
- Template:Nbt/sprite base_game_version: Specific to world templates. A vector
- Template:Nbt/sprite header: External information about the pack.
- REDIRECT Template:Code
Template:Redr representing the version of the vanilla resource and behavior packs to apply.
- Template:Nbt/sprite description: A description of the pack. Can be text or a translation key.
- Template:Nbt/sprite platform_locked: Locks the pack from being used as a global pack, rendering it impossible to use on other player's worlds or servers.
- Template:Nbt/sprite lock_template_options: Specific to world templates. If enabled, the player can not modify the world options.
- Template:Nbt/sprite min_engine_version: A vector
- REDIRECT Template:Code
Template:Redr representing the minimum version of the game the pack can run on.
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/sprite pack_scope: Specific to resource packs. Represents at which level the pack can be applied.
- REDIRECT Template:Code
Template:Redr packs can be applied to a world,
- REDIRECT Template:Code
Template:Redr in global resources and
- REDIRECT Template:Code
Template:Redr anywhere. Defaults to
- REDIRECT Template:Code
- Template:Nbt/sprite uuid: A unique identifier for the pack. Must be of the form
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/spriteTemplate:Nbt/sprite version: A string of the form
- REDIRECT Template:Code
Template:Redr or vector
- REDIRECT Template:Code
Template:Redr representing the current version of pack. Used to handle updates to the pack.
- Template:Nbt/sprite modules: Describes modules which are content types that the pack may contain.
- Template:Nbt/sprite: A module object in the list.
- Template:Nbt/sprite description: An internal description of the module.
- Template:Nbt/sprite type: The type of the module, can be:
- Template:Nbt/sprite: A module object in the list.
- Template:Nbt/sprite modules: Describes modules which are content types that the pack may contain.
- REDIRECT Template:Code
Template:Redr (resource pack),
- REDIRECT Template:Code
Template:Redr (Minecraft:behavior pack),
- REDIRECT Template:Code
Template:Redr (Minecraft:Character Creator item or cape),
- REDIRECT Template:Code
- REDIRECT Template:Code
Template:Redr, or
- REDIRECT Template:Code
Template:Redr (scripting).
- Template:Nbt/sprite uuid: An identifier unique to the module. Must be of the form
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/spriteTemplate:Nbt/sprite version: A string of the form
- REDIRECT Template:Code
Template:Redr or vector
- REDIRECT Template:Code
Template:Redr representing the current version of pack. Used to handle updates to the pack.
- Template:Nbt/sprite language: Specific to script modules. The language the scripts are written in. Only supports
- REDIRECT Template:Code
- Template:Nbt/sprite entry: Specific to script modules. Relative path to the main script file.
- Template:Nbt/sprite dependencies: Describes external dependencies that the pack requires. The dependency may be another pack, or a script module.
- Template:Nbt/sprite: Describes a pack dependency.
- Template:Nbt/sprite uuid:
- Template:Nbt/sprite: Describes a pack dependency.
- REDIRECT Template:Code
Template:Redr of the pack dependency.
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/spriteTemplate:Nbt/sprite version:
- REDIRECT Template:Code
Template:Redr of the dependency to use.
- Template:Nbt/sprite: Describes a script module dependency.
- Template:Nbt/sprite uuid:
- Template:Nbt/sprite: Describes a script module dependency.
- REDIRECT Template:Code
Template:Redr of the script module. Optional
- Template:Nbt/sprite module_name: Name of the script module, used for importing the Script API.
- Template:Nbt/spriteTemplate:Nbt/sprite version:
- REDIRECT Template:Code
Template:Redr of the dependency to use.
- Template:Nbt/sprite capabilities: Optional features that can be enabled.
- Template:Nbt/sprite: A capability to enable, can be:
- Template:Nbt/sprite: A capability to enable, can be:
- Template:Nbt/sprite capabilities: Optional features that can be enabled.
- REDIRECT Template:Code
Template:Redr – specific to Minecraft:Minecraft Education chemistry features.
- REDIRECT Template:Code
Template:Redr – used internally in the game in the vanilla Minecraft:Bedrock Editor resource pack, and for importing @minecraft/server-editor script module.<ref>https://wiki.bedrock.dev/scripting/api-modules</ref>
- REDIRECT Template:Code
Template:Redr – experimental custom UI based on HTML and JavaScript. Unsupported since 1.18.10.28.<ref>https://bedrock.dev/docs/1.18.0.0/1.18.10.28/UI</ref>
- REDIRECT Template:Code
Template:Redr – enables dynamic code execution in scripting via eval() function or Function() constructor.<ref>https://wiki.bedrock.dev/scripting/api-environment</ref>
- REDIRECT Template:Code
Template:Redr – enables PBR features specific to ray tracing, which only supports MER subset. Compatible with Vibrant Visuals.
- REDIRECT Template:Code
Template:Redr – enables PBR features specific to Minecraft:Vibrant Visuals with full MERS support.
- Template:Nbt/sprite metadata: Metadata on the pack.
- Template:Nbt/sprite authors: List of creators of the pack.
- Template:Nbt/sprite: The name of a creator of the pack.
- Template:Nbt/sprite license: License the pack is distributed under.
- Template:Nbt/sprite generated_with: Tools used to generate the manifest.
- Template:Nbt/sprite: The name of the list element should be the name of a tool used to generate the manifest. It must be made of simple characters and can be up to 32 characters long.
- Template:Nbt/sprite: A string of the form
- Template:Nbt/sprite: The name of the list element should be the name of a tool used to generate the manifest. It must be made of simple characters and can be up to 32 characters long.
- Template:Nbt/sprite authors: List of creators of the pack.
- Template:Nbt/sprite metadata: Metadata on the pack.
- REDIRECT Template:Code
Template:Redr representing a version of the tool used to modify the manifest.
- Template:Nbt/sprite product_type: If set to
- REDIRECT Template:Code
Template:Redr, indicates the pack is meant as part of an Minecraft:add-on, this also allows the addon to not disable achievements when activated.
- Template:Nbt/sprite url: URL to a website.
Old versions
Version 1
The previous iteration of manifest.json only ever contains few basic information about the package, such as header, modules, and dependencies, being very similar to version 2 without the modern features.
These manifest files are documented from multiple built-in resource packs, which are found in the game's directory:
- Template:Nbt/sprite: The root tag.
- Template:Nbt/sprite format_version: The syntax version used in the manifest file, version 1.
- Template:Nbt/sprite header: The pack's display information.
- Template:Nbt/sprite description: A description of the pack. Can be text or a translation key.
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/sprite uuid: A unique identifier for the pack. Must be of the form
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/sprite version: An array consist of three integer numbers representing the current version of pack.
- Template:Nbt/sprite min_engine_version: An array consist of three integer numbers representing the minimum version of the game the pack can run on.
- Template:Nbt/sprite modules: Describes modules which are content types that the pack may contain.
- Template:Nbt/sprite: A module object in the list.
- Template:Nbt/sprite description: An internal description of the module.
- Template:Nbt/sprite type: The type of the module, can be:
- Template:Nbt/sprite: A module object in the list.
- REDIRECT Template:Code
Template:Redr (resource pack),
- REDIRECT Template:Code
Template:Redr (Minecraft:behavior pack), and
- REDIRECT Template:Code
- Template:Nbt/sprite uuid: An identifier unique to the module. Must be of the form
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/sprite version: An array consist of three integer numbers representing the version of the pack.
- Template:Nbt/sprite dependencies: Describes external dependencies that the pack requires.
- Template:Nbt/sprite: Describes a pack dependency.
- Template:Nbt/sprite uuid:
- Template:Nbt/sprite: Describes a pack dependency.
- REDIRECT Template:Code
Template:Redr of the pack dependency.
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/sprite version: An array consist of three integer numbers representing the version of the pack.
Version 0
The very first version of manifest.json, at the time was named pack_manifest.json, is used back in the v0.16.0 alpha versions. Its syntax is very different from version 1, containing the header object with different properties that would be renamed in the next iteration. Notably, modules and dependencies are contained inside the header object.
It is retroactively called version 0 in the Creator Documentation. Additionally, when the pack containing this manifest is loaded in later versions, it would get converted to version 1 with the new manifest.json, while the old pack_manifest.json would get backed up as pack_manifest.json.old.<ref>https://learn.microsoft.com/en-us/minecraft/creator/reference/content/versiondisambiguation?view=minecraft-bedrock-stable</ref>
Version 0 resource packs are separated into the client and server packs, both serve very similar purposes to the modern resource pack (client) and behavior pack (server).
These manifest files are documented from multiple built-in resource packs, which are found in the game's directory:
- Template:Nbt/sprite: The root tag.
- Template:Nbt/sprite header: The pack's display information.
- Template:Nbt/sprite pack_id: A unique identifier for the pack. Must be of the form
- Template:Nbt/sprite header: The pack's display information.
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/sprite packs_version: An array consist of three integer numbers representing the current version of pack.
- Template:Nbt/sprite description: A description of the pack. Can be text or a translation key.
- Template:Nbt/sprite modules: Describes modules which are content types that the pack may contain.
- Template:Nbt/sprite: A module object in the list.
- Template:Nbt/sprite description: An internal description of the module.
- Template:Nbt/sprite type: The type of the module, can be:
- Template:Nbt/sprite: A module object in the list.
- REDIRECT Template:Code
Template:Redr (client) and
- REDIRECT Template:Code
Template:Redr (server).
- Template:Nbt/sprite uuid: An identifier unique to the module. Must be of the form
- REDIRECT Template:Code
Template:Redr, where x in a hexadecimal number (0-9 or a-f).
- Template:Nbt/sprite version: A string formatted like
X.Y.Zrepresenting the version of the pack.
- Template:Nbt/sprite version: A string formatted like
- Template:Nbt/sprite dependencies: Describes external dependencies that the pack requires.
- Template:Nbt/sprite: Describes a pack dependency.
- Template:Nbt/sprite uuid:
- Template:Nbt/sprite: Describes a pack dependency.
- REDIRECT Template:Code
Template:Redr of the pack dependency.
- Template:Nbt/sprite name: The name of the pack. Can be text or a translation key.
- Template:Nbt/sprite version: A string formatted like
X.Y.Zrepresenting the version of the pack.
History
- Redirect Template:Empty section
External links
- Template:Cite
- Manifest file examples in the
bedrock-samplesprovided by Mojang:
References
<references/>
pt:Manifest.json uk:Manifest.json zh:Manifest.json