{{about|the system to customize assets|other uses|Texture Pack (disambiguation)}} {{relevant tutorial|Creating a resource pack|Loading a resource pack}} [[File:TexturesComparison.png|thumb|right|350px|The default textures on the left side, and a custom resource pack ([https://modrinth.com/resourcepack/rodrigos-pack/ Rodrigo's Pack 8x8]) on the right.]] The '''resource pack''' system provides a way for players to customize textures, [[model]]s, [[music]], [[sound]]s, [[language]]s, texts such as the [[end poem]], [[splash]]es, [[Credit sequence|credits]], and fonts without any code modification. They are often used together with [[data pack]]s to add new content to the game. == ''Java Edition'' == === Behavior === [[File:Select resource pack.png|thumb|The default resource pack settings.]] Each resource pack is either a directory or a [[wikipedia:ZIP (file format)|ZIP archive]] (with {{code|.zip}} extension). Resource packs can be added by placing them in the {{file|directory|resourcepacks|inline=1}} directory within {{file|directory|[[.minecraft]]|inline=1}}, or by dragging and dropping onto the "Select Resource Packs" screen, which copies them there automatically. Resource packs present in the directory can then be managed from the [[options]], where they can be moved between "Available" (disabled) and "Selected" (enabled), and reordered. Resource packs load their assets based on the order they appear in on the "Selected" list. The bottom-most pack loads first, then each pack above it replaces or merges loaded assets with ones it contains. ==== Built-in resource packs ==== There are currently three resource packs that are included as part of the game. {| class="wikitable" |- ! Pack name !! Pack description !! Description |- | [[File:Default pack.png|32px]] Default || The default look and feel of Minecraft (built-in) || Selected by default, can't be unselected, always at the lowest priority. |- | [[File:Programmer Art pack.png|32px]] Programmer Art || The classic look of Minecraft (built-in) || The old (pre-[[Java Edition 1.14|1.14]]) textures. They are not updated when the game receives new textures. |- | [[File:HC pack.png|32px]] High Contrast || Enhances the UI contrast of Minecraft (built-in) ||Increases the contrast of menu GUIs. |} ==== Preloaded resource packs ==== A ZIP archive resource pack can be bundled with a [[world]] by placing it in the world directory under the name {{code|resources.zip}}. When playing the world, that resource pack appears as the default right above the default resource pack. A resource pack can be set on a server by setting {{code|resource-pack}} to an HTTP(S) URL pointing to a ZIP archive resource pack in [[server.properties]]. Players then can choose if they want to download the resource pack or not when joining. Players can also be forced to accept the resource pack by setting {{code|resource-pack-required{{=}}true}}. Rejecting the resource pack disconnects the player from the server. There is no way to force the use of a resource pack in a realm.{{needs testing}} === Directory structure === Resource packs in ''Java Edition'' have the following directory structure:
tile
or nine_slice
.
**** {{nbt|int|height}}: Number of pixels for this sprite to cover on-screen across its height. Required if {{nbt|string|type}} is set to tile
or nine_slice
.
**** {{nbt|boolean|stretch_inner}}: If true, the inner parts of the texture is stretched instead of tiled. Defaults to {{code|false}}. Required if {{nbt|string|type}} is set to nine_slice
.
**** {{nbt|int|border}}: The size in pixels that the border slices should cover on-screen. Required if {{nbt|string|type}} is set to nine_slice
.
**** {{nbt|compound|border}}: The size in pixels that the border slices should cover on-screen, respectively. Required if {{nbt|string|type}} is set to nine_slice
.
***** {{nbt|int|left}}: Number of pixels of the left border.
***** {{nbt|int|top}}: Number of pixels of the top border.
***** {{nbt|int|right}}: Number of pixels of the right border.
***** {{nbt|int|bottom}}: Number of pixels of the bottom border.
en_us
language file is now sorted alphanumerically by key.}}
|{{HistoryLine|||dev=1.19.4-pre1|Added a built-in "High Contrast" resource pack that enhances the contrast of UI elements.|Changed format number to {{cd|13}}, due to the enchantment glint now being separate between entities and items.}}
|{{HistoryLine||1.20|dev=23w14a|Changed format number to {{cd|14}} due to updates to the layout of {{cd|minecraft.png}} and {{cd|invite_icon.png}}.}}
|{{HistoryLine|||dev=23w17a|Changed format number to {{cd|15}} due to updates to the font and the credits.|{{cd|uniform}} font has been updated to use Unifont 15.0.01.}}
|{{HistoryLine|||dev=Pre-release 5|{{cd|uniform}} font has been updated to use Unifont 15.0.03.}}
|{{HistoryLine||1.20.2|dev=23w31a|Changed format number to {{cd|16}}.
|The process of upgrading a pack can now be assisted by using an automated Slicer tool.https://github.com/Mojang/slicer/releases/tag/v1.1}}
|{{HistoryLine|||dev=23w32a|Changed format number to {{cd|17}}.|The text field background is now a nine-sliced sprite at widget/text_field
and widget/text_field_highlighted
.|The scroll bar in lists and text fields is now a nine-sliced sprite at widget/scroller
.}}
|{{HistoryLine|||dev=1.20.2 Pre-release 2|Changed format number to {{cd|18}}.}}
|{{HistoryLine||1.20.3|dev=23w42a|Changed format number to {{cd|19}}.|Added block model, item model and block state definitions for crafter
.|Added GUI container texture and sprites for crafter
.|Added white_smoke
particle definition.}}
|{{HistoryLine|||dev=23w43a|Changed format number to {{cd|20}}.|bat.png
has been updated for the new bat model.|Added block models, items models, block state definitions and unique sprites for new blocks.}}
|{{HistoryLine|||dev=23w45a|Changed format number to {{cd|21}}.|uniform
font has been updated to use Unifont 15.1.04 (from 15.0.06).|The only supported texture format is now .png
.|Added entity models and textures for experimental breeze mob {{cd|d=,|breeze|wind_charge}}.|Added shader breeze_wind
.}}
|{{HistoryLine|||dev=Pre-Release 1|Changed format number to {{cd|22}}.|Changes to downloaded/world resource pack handling.|UI Download screen has been replaced with a toast.|World resource pack application starts together with chunk loading.|Downloaded packs are now stored in downloads directory (with different file organization than old server-resource-packs).|Downloaded packs now have unique id (GUID/UUID) that can be used to differentiate them.}}
|{{HistoryLine||1.20.5|dev=24w03a|Changed format number to {{cd|24}}.}}
|{{HistoryLine|||dev=24w05a|Changed format number to {{cd|25}}.}}
|{{HistoryLine|||dev=24w06a|Added font variant filters to font providers.|Changed format number to {{cd|26}}.}}
|{{HistoryLine|||dev=24w09a|Changed format number to {{cd|28}} due to menu GUI changes.}}
|{{HistoryLine|||dev=24w11a|Changed format number to {{cd|29}} due to menu GUI changes.}}
|{{HistoryLine|||dev=24w12a|Changed format number to {{cd|30}} due to changes to map_icons.png
.}}
|{{HistoryLine|||dev=24w13a|Changed format number to {{cd|31}}.}}
|{{HistoryLine|||dev=1.20.5-pre4|Changed format number to {{cd|32}}.}}
|{{HistoryLine||1.21|Changed format number to {{cd|34}}.}}
|{{HistoryLine||1.21.2|dev=24w33a|Changed format number to {{cd|35}}.}}
|{{HistoryLine|||dev=24w34a|Changed format number to {{cd|36}}.}}
|{{HistoryLine|||dev=24w36a|Changed format number to {{cd|37}}.}}
|{{HistoryLine|||dev=24w37a|Changed format number to {{cd|38}}.}}
|{{HistoryLine|||dev=24w38a|Changed format number to {{cd|39}}.}}
|{{HistoryLine|||dev=24w40a|Changed format number to {{cd|40}}.}}
|{{HistoryLine|||dev=1.21.2-pre1|Changed format number to {{cd|41}}.}}
|{{HistoryLine|||dev=1.21.2-pre3|Changed format number to {{cd|42}}.}}
|{{HistoryLine||1.21.4|dev=24w44a|Changed format number to {{cd|43}}.}}
|{{HistoryLine|||dev=24w45a|Changed format number to {{cd|44}}.|Added support for [[items model definition]]s in the {{code|assets/minecraft/items}} folder.}}
|{{HistoryLine|||dev=24w46a|Changed format number to {{cd|45}}.|All blocks that previously rendered only block entity will now also render normal block model over it .}}
|{{HistoryLine|||dev=Pre-Release 1|Changed format number to {{cd|46}}.}}
|{{HistoryLine|pocket alpha}}
|{{HistoryLine||v0.15.0|dev=release|Added the first custom in-game resource packs, Plastic and City.}}
|
{{HistoryLine|bedrock}}|{{HistoryLine||1.10.0|dev=beta 1.10.0.3|Resource packs are now separate from world templates and can be updated independently in existing worlds.}}
}}
== Trivia ==
[[File:Alpha v1.2.2 pack.png|thumb|The world that the {{mono|pack.png}} screenshot was taken in, loaded in Alpha v1.2.2.]]
*The {{file|file|pack.png|inline=1}} file used for the default resource pack before [[Java Edition 1.14|1.14]] is a screenshot taken in [[Java Edition Alpha v1.2.2|Alpha v1.2.2]], in a world generated with the [[Seed (world generation)|seed]] {{cd|3257840388504953787}}.{{ytl|ea6py9q46QU|Pack.PNG has been FOUND! - Here's how they did it.|SalC1|September 7, 2020}}
**The screenshot was taken approximately at X=49.16, Z=0.72, facing RX=-119.23, RY=-8.297.
**The seed can be used in versions Alpha 1.2.0 through Beta 1.7.3, with minor population differences between versions.
**It's possible to generate an identical world and take an identical screenshot, a guide on how to do that can be found here: https://pastebin.com/CmsEKDev.https://www.reddit.com/r/MinecraftAtHome/comments/iocx6f/packpng_seed_was_found_explanation_tutorial_and
**It's referenced in the video "[https://web.archive.org/web/20211215041724/https://www.youtube.com/watch?v=YXY74kWderc One Trillion Minecraft Views on YouTube and Counting]"
**The image is referenced by the ''Unpacked'' [[painting]].
**The seed is displayed as a placeholder when no seed is entered in the Bedrock "Advanced" world creation screen.
== Gallery ==