
The behavior pack system is a data-driven framework used to define behaviors, characteristics, and logic of various things in a Minecraft world.
Behavior pack serves as the foundational layer for many aspects of the game, dictating entity behaviors,[1] loot tables,[2] spawn rules,[3] item behaviors,[4] item recipes,[5] biome characteristics,[6] world generation, and much more. These definitions are written in JSON files, which are organized in multiple folders by their features. This system allows users to override and modify certain features in the base game, or add unique features with their own behavior pack. Behavior packs are often used in conjunction with resource packs as part of an add-on, which enable them to use custom resources, such as models, animations, textures, sounds, and more.
Behavior pack provides a component-based system that makes up most entities (and other game objects) in the game by describing their unique properties and behaviors — like health, collision box, movement, mob behaviors, and physics — through multiple components.[7] These components are hard coded in the game, but are commonly shared among entities, and can be used extensively to create or modify existing entities in a behavior pack. Molang can be used to quickly determine dynamic values from other objects or calculations. A similar feature in Java Edition would be entity attributes, but they only store numeric properties of entities compared to components, which may store other multi value properties.
The component-based system is also used to define custom items, blocks, and biomes.[8][9][6] There are four sets of components that define behaviors for different game objects: entity components, item components, block components, and biome components.

Similar to resource packs, behavior packs can be created and imported in Bedrock Edition. Users can download external behavior packs with the .mcpack file extension, if the game's platform allows file import feature. When these files are opened, they are automatically imported into the behavior_packs folder in com.mojang without accessing the file system. Behavior packs can also be placed manually in the development_behavior_packs folder. Each behavior pack must either be a sub-folder or a .zip file.
One or more behavior packs can be applied to a world from the Create New World and Edit World screens. These behavior packs will be imported into the world files, and are kept when exporting the world. Players joining a multiplayer world with behavior packs get an option to download only the required assets from the behavior pack, or all assets. The game loads behavior packs based on the order of the packs on the list. The bottom-most pack loads first, then each pack placed above are loaded sequentially.
Custom behavior packs permanently disable achievement unlocking for the world. Custom behavior packs cannot be applied to worlds on Realms, but worlds uploaded to Realms or Bedrock Dedicated Server keep the behavior packs applied to the world.
In Bedrock Dedicated Server, behavior packs also can be stored outside of worlds. Packs need to be enabled in the world_behavior_packs.json file in a world file.
Behavior packs cannot be edited while the game is active, except for the packs in the development_behavior_packs folder. They will update themselves when joining a world or changing active behavior packs.
Behavior packs and resource packs can contain custom settings that affect features in the pack.[10] Settings need to be specified in manifest.json, with the options to create an on/off toggle, or a slider with specific values. The settings menu for custom and Marketplace behavior packs can be opened with a button next to the pack button in the edit world screen, and all settings affect the whole world. Custom labels for each setting can be applied, which support text formatting.
How each setting affects the behavior pack can be modified with scripting.
The settings menu can also be used to change the memory tier, which affects the sub-packs being used.[11] The memory tier can be set to any specified value from the device's memory tier and lower. Sub-packs are behavior packs within the root of the behavior pack, with the same directory structure. They can be added to the pack in manifest.json.
Add-ons and worlds from the Marketplace often contain or consist entirely of a behavior pack. These packs are stored internally and can't be accessed from com.mojang. Players can only access Marketplace behavior packs or play on worlds with behavior packs applied when they own the pack, by purchasing it in the Marketplace or by owning the Marketplace Pass. Which packs a player owns is stored in the online player profile, so behavior packs can only be accessed when signed in. Marketplace packs can be applied the same way as custom resource packs, and also to Realms, but not to worlds in external servers.
When a player joins a multiplayer world or Realm with Marketplace packs, the player is offered to download these packs to apply them, even when the player does not own the pack.
Marketplace behavior packs update automatically depending on the "Auto Update Unlocked Packs" settings, or can be updated manually from the purchase screen.
Most entities, biomes, loot tables, and various things from the base game are defined by the vanilla behavior pack, which is built inside the game itself and can be found at game directory\data\behavior_packs. Mojang Studios releases the Bedrock Add-On Sample Files with every new update of Bedrock Edition, which provide the latest vanilla behavior and resource packs from the game.
Multiple internal behavior packs exist for different situations. Each experiment has its own behavior pack, in addition to Minecraft Education features and Minecraft Preview. Each behavior pack contains the same structure and assets as custom behavior packs, defined for the whole game. Some packs also have an icon or description, which is not visible in-game.
Bedrock Editon supports backward compatibility for add-ons and old worlds. This is done for the vanilla and chemistry behavior packs since 1.14 and 1.20.50 respectively, with the regular behavior pack supporting the latest version before. Each update with changes to features defined in behavior packs has its own behavior pack, with all the features that changed. Some Marketplace add-ons can lock a world in an older version by disabling internal behavior packs from higher versions.
| File name | Pack icon, name, and description | Description |
|---|---|---|
| chemistry | Resources for the "Minecraft Education features" cheat setting. Includes several features from the Chemistry Update in Minecraft Education. Multiple versions of this pack are available to support backwards-compatibility. | |
| editor | Resources for Bedrock Editor, applied when the Editor is enabled upon launch. Contains five unique entities exclusive to the Editor, some textures for the GUI, and the main script file which can be customized. | |
| experimental_creator_cameras | Experimental Creator Cameras | Contains a camera preset for the "Experimental Creator Cameras" experiment. |
| experimental_vanilla_shapes | Vanilla Voxel Shapes
Experimental behavior pack for vanilla voxel shapes |
Contains vanilla voxel shapes for the experiment, at this point nothing. |
| experimental_villager_trade | Villager Trade Rebalancing | Contains trade tables for the Villager Trade Rebalancing experiment, as well as different loot tables for mineshafts, ancient cities, desert pyramids, jungle pyramids, and pillager outposts. |
| experimental_y_2026_drop_1 | Drop 1 of 2026 Experimental behavior pack for Drop 1 of 2026 content |
Adds features for the Tiny Takeover, including a name tag recipe and some changes to baby mobs. |
| experimental_y_2026_drop_2 | Drop 2 of 2026 Experimental behavior pack for Drop 2 of 2026 content |
Adds features for Chaos Cubed, including the sulfur caves, sulfur cube, cinnabar, and sulfur. |
| server_editor_library | Library for building server driven Editor UI |
Contains scripts for the Editor when used on Bedrock Dedicated Server. |
| server_library | A BP containing all the @minecraft/server typescript code. |
Contains typescript code for the Editor. Only available in Minecraft Preview. |
| server_ui_library | A BP containing all the @minecraft/server-ui typescript code. |
Contains scripts for the UI in the Editor. Only available in Minecraft Preview. |
| vanilla | All resources for the default Minecraft game. Multiple versions of this pack are available to support backwards-compatibility. |
Tutorials from the official Minecraft Creator Channel
| August 12, 2016 | The concept of add-ons was hinted at in a post by Searge on August 12, 2016, stating "There will be news about the API at Minecon."[12] The next day it was confirmed by Grum to be a modding API for Bedrock Edition (formerly called Pocket Edition, or MCPE),[13] and at MINECON 2016, the plan and roadmap for the development of add-ons were outlined. | ||||||
|---|---|---|---|---|---|---|---|
| Pocket Edition Alpha | |||||||
| v0.16.0 | Added user-created behavior packs. These allow the player to change files coded in JSON to change how the game works. | ||||||
| Pocket Edition | |||||||
| 1.0.4 | alpha 1.0.4.0 | Introduced a new add-on format; older add-ons would automatically update | |||||
| The models for the shulker and ender dragon became editable using add-ons. | |||||||
| alpha 1.0.4.1 | Added the Storage screen in Settings to manage worlds, resource packs, and behavior packs. | ||||||
| Custom texts in add-ons no longer required restarting the game to work. | |||||||
| 1.0.6 | Fixed several add-on issues, including snow golem pumpkin head scaling and dependent add-ons being properly applied when replacing a Realms world. | ||||||
| 1.1.1 | Updated resource and behavior packs on https://minecraft.net/addons, and updated documentation | ||||||
| Fixed several mobs and entities loading properly with behavior packs. | |||||||
| 1.1.3 | Updated resource and behavior packs; all behavior components and AI goal parameters were added to the documentation. | ||||||
| Bedrock Edition | |||||||
| 1.7.0 | Fixed several behavior-pack issues, including projectile shooting offsets, movement behavior when all movement components were removed, and floating navigation behavior on flying mobs. | ||||||
| 1.8.0 | beta 1.8.0.8 | Added /function and /reload for behavior packs | |||||
Added minecraft: prefix for /summon to separate vanilla and add-on entities | |||||||
| Allowed creators to add their own custom mobs, particles, and more without replacing vanilla content.[verify] | |||||||
| 1.10.0 | beta 1.10.0.3 | Added JSON-based mob events and behavior scheduler. | |||||
| Fixed several resource-pack and scripting issues affecting custom names, custom UI loading, particles, spawn events, filters, and entity validation. | |||||||
| 1.12.0 | beta 1.12.0.2 | Added several new commands related to add-ons and mapmaking. | |||||
Added minecraft: prefix for /give to separate vanilla items and add-on items. | |||||||
| Added custom particles and animations without being linked to entities. | |||||||
| Added several preset data-driven particles and animations. | |||||||
| Added custom blocks through Scripting and additional JSON scripting (and only placed by commands). | |||||||
| Added custom items with add-ons.[verify] | |||||||
| Added custom biome generation via behavior packs. | |||||||
| Added a screen to view content log errors. | |||||||
| Enabled content logging on Bedrock Dedicated Servers. | |||||||
| Updated demo pack. | |||||||
| 1.13.0 | beta 1.13.0.9 | Added data-driven items for turtle lightning interactions, pufferfish puffed states, and brewing stand potion recipes. | |||||
| 1.14.1 | beta 1.14.0.51 | Added the /gamerule showtags command to hide item tags in the UI. | |||||
| 1.16.0 | beta 1.15.0.51 | Made most attack, slime, and swim goals data-driven. | |||||
| Made tree generation, wither skull attacks, item sprites, and drowned data-driven. | |||||||
| beta 1.16.0.57 | Fixed an issue with custom brewing recipes. | ||||||
| Editions |
| ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Development |
| ||||||||
| Technical |
| ||||||||
| Multiplayer | |||||||||
| Exclusive features |
| ||||||||
| Removed | |||||||||
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||