Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Minecraft:Manifest.json: Difference between revisions

From SAS Gaming Wiki
SyncBot (talk | contribs)
Remove broken links to missing pages
SyncBot (talk | contribs)
Sync: updated from Minecraft
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{DISPLAYTITLE:<samp>manifest.json</samp>}}
{{DISPLAYTITLE:<samp>manifest.json</samp>}}
{{exclusive|bedrock}}
{{exclusive|bedrock}}
<code>'''manifest.json'''</code> is a {{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.
<code>'''manifest.json'''</code> is a {{w|manifest file}} that contains metadata information for the ''Minecraft'' package format. It is required by [[Minecraft:resource pack]]s, [[Minecraft:behavior pack]]s, [[Minecraft:skin pack]]s, and [[Minecraft:world template]]s in order to be successfully imported into the game.


== JSON format ==
== JSON format ==
Line 10: Line 10:
** {{nbt|compound|header}}: External information about the pack.
** {{nbt|compound|header}}: External information about the pack.
*** {{nbt|bool|allow_random_seed}}: Specific to world templates. Whether a random seed should be generated on world creation.
*** {{nbt|bool|allow_random_seed}}: Specific to world templates. Whether a random seed should be generated on world creation.
*** {{nbt|int-array|base_game_version}}: Specific to world templates. A vector {{cd|[A,B,C]}} representing the version of the vanilla resource and behavior packs to apply.
*** {{nbt|string|base_game_version}}: Specific to world templates. A string {{cd|"A.B.C"}} representing the version of the vanilla resource and behavior packs to apply.
*** {{nbt|string|description}}: A description of the pack. Can be text or a translation key.
*** {{nbt|string|description}}: A description of the pack. Can be text or a translation key.
*** {{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.
*** {{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.
*** {{nbt|bool|lock_template_options}}: Specific to world templates. If enabled, the player can not modify the world options.
*** {{nbt|bool|lock_template_options}}: Specific to world templates. If enabled, the player can not modify the world options.
*** {{nbt|int-array|min_engine_version}}: A vector {{cd|[A,B,C]}} representing the minimum version of the game the pack can run on.
*** {{nbt|string|min_engine_version}}: A string {{cd|"A.B.C"}} representing the minimum version of the game the pack can run on.
*** {{nbt|string|name}}: The name of the pack. Can be text or a translation key.
*** {{nbt|string|name}}: The name of the pack. Can be text or a translation key.
*** {{nbt|string|pack_scope}}: Specific to resource packs. Represents at which level the pack can be applied. {{cd|"world"}} packs can be applied to a world, {{cd|"global"}} in global resources and {{cd|"any"}} anywhere. Defaults to {{cd|"any"}}.
*** {{nbt|string|pack_scope}}: Specific to resource packs. Represents at which level the pack can be applied. {{cd|"world"}} packs can be applied to a world, {{cd|"global"}} in global resources and {{cd|"any"}} anywhere. Defaults to {{cd|"any"}}.
Line 28: Line 28:
**** {{nbt|string|description}}: An internal description of the module.
**** {{nbt|string|description}}: An internal description of the module.
**** {{nbt|string|type}}: The type of the module, can be: {{cd|"resource"}} (resource pack), {{cd|"data"}}
**** {{nbt|string|type}}: The type of the module, can be: {{cd|"resource"}} (resource pack), {{cd|"data"}}
**** ),{{cd|"persona_piece"}} ([[Minecraft:Character Creator]] item or cape), {{cd|"[[Minecraft:Skin pack|skin_pack]]"}}, {{cd|"world_template"}}, or {{cd|"script"}} (scripting).
**** ),{{cd|"persona_piece"}} ([[Minecraft:Character Creator]] item or [[Minecraft:cape]]), {{cd|"[[Minecraft:Skin pack|skin_pack]]"}}, {{cd|"[[Minecraft:World template|world_template]]"}}, or {{cd|"script"}} ([[Minecraft:scripting]]).
**** {{nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f).  
**** {{nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f).  
**** {{nbt|string|version}}: A string of the form {{cd|"A.B.C"}} or vector {{cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack.
**** {{nbt|string|version}}: A string of the form {{cd|"A.B.C"}} or vector {{cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack.
Line 45: Line 45:
*** {{nbt|compound}}: Describes a script module dependency.
*** {{nbt|compound}}: Describes a script module dependency.
**** {{nbt|string|uuid}}: {{cd|uuid}} of the script module. ''Optional''
**** {{nbt|string|uuid}}: {{cd|uuid}} of the script module. ''Optional''
**** {{nbt|string|module_name}}: Name of the script module, used for importing the Script API.
**** {{nbt|string|module_name}}: Name of the script module, used for importing the [[Minecraft:Script API]].
**** {{nbt|int-array}}{{nbt|string|version}}: {{cd|version}} of the dependency to use.
**** {{nbt|int-array}}{{nbt|string|version}}: {{cd|version}} of the dependency to use.
** {{nbt|list|capabilities}}: Optional features that can be enabled.
** {{nbt|list|capabilities}}: Optional features that can be enabled.
*** {{nbt|string}}: A capability to enable, can be:
*** {{nbt|string}}: A capability to enable, can be:
**** {{cd|"chemistry"}} &ndash; specific to ''[[Minecraft:Minecraft Education]]'' chemistry features.
**** {{cd|"chemistry"}} &ndash; specific to ''[[Minecraft:Minecraft Education]]'' [[Minecraft:chemistry]] features.
**** {{cd|"editorExtension"}} &ndash; 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>
**** {{cd|"editorExtension"}} &ndash; 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>
**** {{cd|"experimental_custom_ui"}} &ndash; 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>
**** {{cd|"experimental_custom_ui"}} &ndash; experimental custom UI based on HTML and JavaScript. Unsupported since [[Minecraft:1.18.10.28]].<ref>https://bedrock.dev/docs/1.18.0.0/1.18.10.28/UI</ref>
**** {{cd|"script_eval"}} &ndash; 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>
**** {{cd|"script_eval"}} &ndash; enables dynamic code execution in [[Minecraft:scripting]] via <code>eval()</code> function or <code>Function()</code> constructor.<ref>https://wiki.bedrock.dev/scripting/api-environment</ref>
**** {{cd|"raytraced"}} &ndash; enables PBR features specific to ray tracing, which only supports MER subset. Compatible with Vibrant Visuals.
**** {{cd|"raytraced"}} &ndash; enables PBR features specific to [[Minecraft:ray tracing]], which only supports MER subset. Compatible with Vibrant Visuals.
**** {{cd|"pbr"}} &ndash; enables PBR features specific to [[Minecraft:Vibrant Visuals]] with full MERS support.
**** {{cd|"pbr"}} &ndash; enables PBR features specific to [[Minecraft:Vibrant Visuals]] with full MERS support.
** {{nbt|compound|metadata}}: Metadata on the pack, currently mandatory in this version.
** {{nbt|compound|metadata}}: Metadata on the pack, currently mandatory in this version.
Line 107: Line 107:
*** {{nbt|compound}}: A module object in the list.
*** {{nbt|compound}}: A module object in the list.
**** {{nbt|string|description}}: An internal description of the module.
**** {{nbt|string|description}}: An internal description of the module.
**** {{nbt|string|type}}: The type of the module, can be: {{cd|"resource"}} (resource pack), {{cd|"data"}} ([[Minecraft:behavior pack]]), {{cd|"persona_piece"}} ([[Minecraft:Character Creator]] item or cape), {{cd|"[[Minecraft:Skin pack|skin_pack]]"}}, {{cd|"world_template"}}, or {{cd|"script"}} (scripting).
**** {{nbt|string|type}}: The type of the module, can be: {{cd|"resource"}} ([[Minecraft:resource pack]]), {{cd|"data"}} ([[Minecraft:behavior pack]]), {{cd|"persona_piece"}} ([[Minecraft:Character Creator]] item or [[Minecraft:cape]]), {{cd|"[[Minecraft:Skin pack|skin_pack]]"}}, {{cd|"[[Minecraft:World template|world_template]]"}}, or {{cd|"script"}} ([[Minecraft:scripting]]).
**** {{nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f).  
**** {{nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f).  
**** {{nbt|int-array}}{{nbt|string|version}}: A string of the form {{cd|"A.B.C"}} or vector {{cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack.
**** {{nbt|int-array}}{{nbt|string|version}}: A string of the form {{cd|"A.B.C"}} or vector {{cd|[A,B,C]}} representing the current version of pack. Used to handle updates to the pack.
Line 119: Line 119:
*** {{nbt|compound}}: Describes a script module dependency.
*** {{nbt|compound}}: Describes a script module dependency.
**** {{nbt|string|uuid}}: {{cd|uuid}} of the script module. ''Optional''
**** {{nbt|string|uuid}}: {{cd|uuid}} of the script module. ''Optional''
**** {{nbt|string|module_name}}: Name of the script module, used for importing the Script API.
**** {{nbt|string|module_name}}: Name of the script module, used for importing the [[Minecraft:Script API]].
**** {{nbt|int-array}}{{nbt|string|version}}: {{cd|version}} of the dependency to use.
**** {{nbt|int-array}}{{nbt|string|version}}: {{cd|version}} of the dependency to use.
** {{nbt|list|capabilities}}: Optional features that can be enabled.
** {{nbt|list|capabilities}}: Optional features that can be enabled.
*** {{nbt|string}}: A capability to enable, can be:
*** {{nbt|string}}: A capability to enable, can be:
**** {{cd|"chemistry"}} &ndash; specific to ''[[Minecraft:Minecraft Education]]'' chemistry features.
**** {{cd|"chemistry"}} &ndash; specific to ''[[Minecraft:Minecraft Education]]'' [[Minecraft:chemistry]] features.
**** {{cd|"editorExtension"}} &ndash; 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>
**** {{cd|"editorExtension"}} &ndash; 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>
**** {{cd|"experimental_custom_ui"}} &ndash; 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>
**** {{cd|"experimental_custom_ui"}} &ndash; experimental custom UI based on HTML and JavaScript. Unsupported since [[Minecraft:1.18.10.28]].<ref>https://bedrock.dev/docs/1.18.0.0/1.18.10.28/UI</ref>
**** {{cd|"script_eval"}} &ndash; 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>
**** {{cd|"script_eval"}} &ndash; enables dynamic code execution in [[Minecraft:scripting]] via <code>eval()</code> function or <code>Function()</code> constructor.<ref>https://wiki.bedrock.dev/scripting/api-environment</ref>
**** {{cd|"raytraced"}} &ndash; enables PBR features specific to ray tracing, which only supports MER subset. Compatible with Vibrant Visuals.
**** {{cd|"raytraced"}} &ndash; enables PBR features specific to [[Minecraft:ray tracing]], which only supports MER subset. Compatible with Vibrant Visuals.
**** {{cd|"pbr"}} &ndash; enables PBR features specific to [[Minecraft:Vibrant Visuals]] with full MERS support.
**** {{cd|"pbr"}} &ndash; enables PBR features specific to [[Minecraft:Vibrant Visuals]] with full MERS support.
** {{nbt|compound|metadata}}: Metadata on the pack.
** {{nbt|compound|metadata}}: Metadata on the pack.
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 game's directory:
These manifest files are documented from multiple built-in resource packs, which are found in the [[Minecraft:Microsoft.MinecraftUWP|game's directory]]:
<div class="treeview">
<div class="treeview">
* {{nbt|compound}}: The root tag.
* {{nbt|compound}}: The root tag.
Line 158: Line 158:
*** {{nbt|compound}}: A module object in the list.
*** {{nbt|compound}}: A module object in the list.
**** {{nbt|string|description}}: An internal description of the module.
**** {{nbt|string|description}}: An internal description of the module.
**** {{nbt|string|type}}: The type of the module, can be: {{cd|"resource"}} (resource pack), {{cd|"data"}} ([[Minecraft:behavior pack]]), and {{cd|"skin_pack"}}.
**** {{nbt|string|type}}: The type of the module, can be: {{cd|"resource"}} ([[Minecraft:resource pack]]), {{cd|"data"}} ([[Minecraft:behavior pack]]), and {{cd|"skin_pack"}}.
**** {{nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f).  
**** {{nbt|string|uuid}}: An identifier unique to the module. Must be of the form {{cd|"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}, where x in a hexadecimal number (0-9 or a-f).  
**** {{nbt|int-array|version}}: An array consist of three integer numbers representing the version of the pack.
**** {{nbt|int-array|version}}: An array consist of three integer numbers representing the version of the pack.
Line 169: Line 169:


=== 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 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.
The very first version of <code>manifest.json</code>, at the time was named <code>pack_manifest.json</code>, is used back in the [[Minecraft: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 game's directory:
These manifest files are documented from multiple built-in resource packs, which are found in the [[Minecraft:Microsoft.MinecraftUWP|game's directory]]:
<div class="treeview">
<div class="treeview">
* {{nbt|compound}}: The root tag.
* {{nbt|compound}}: The root tag.
Line 213: Line 213:
[[Category:Development]]
[[Category:Development]]


pt:Manifest.json
[[Minecraft:pt:Manifest.json]]
uk:Manifest.json
[[Minecraft:uk:Manifest.json]]
zh:Manifest.json
[[Minecraft:zh:Manifest.json]]
[[Minecraft:es:Manifest.json]]

Latest revision as of 11:07, 8 June 2026

Template:Exclusive manifest.json is a Template:W that contains metadata information for the Minecraft package format. It is required by Minecraft:resource packs, Minecraft:behavior packs, Minecraft:skin packs, and Minecraft:world templates in order to be successfully imported into the game.

JSON format

Version 3

Version 2

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:

Version 0

The very first version of manifest.json, at the time was named pack_manifest.json, is used back in the Minecraft: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:

History

Template:Empty section

External links


References

<references/>

Navigation

Template:Navbox Bedrock Edition

Minecraft:pt:Manifest.json Minecraft:uk:Manifest.json Minecraft:zh:Manifest.json Minecraft:es:Manifest.json