Behavior pack

For the similar system in Java Edition, see Data pack.
This feature is exclusive to Bedrock Edition.
 

The behavior pack system is a data-driven framework used to define behaviors, characteristics, and logic of various things in the game world. It 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 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. A similar feature in Java Edition would be entity attributes, but are very limited in terms of features compared to components. The component-based system is also used to define custom items, blocks, and biomes.[8][9][6]

Usage

The behavior packs tab in the Create New World screen.

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.

Settings

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.

Marketplace behavior packs

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.

Contents

This section needs expansion.
 
You can help by expanding it.

Directory structure

  • File directory.png: Sprite image for directory in Minecraft name or File archive.png: Sprite image for archive in Minecraft name.zip
    • File file.png: Sprite image for file in Minecraft manifest.json
    • File file.png: Sprite image for file in Minecraft pack_icon.png: The picture to display next to the behavior pack in-game.
    • File directory.png: Sprite image for directory in Minecraft sub-pack: A behavior pack with the same directory structure inside the behavior pack. Multiple sub-packs can be used, and need to be specified in File file.png: Sprite image for file in Minecraft manifest.json.
    • File directory.png: Sprite image for directory in Minecraft animation_controllers
      • File directory.png: Sprite image for directory in Minecraft entity
        • File file.png: Sprite image for file in Minecraft entity_animation_controller.json
      • File file.png: Sprite image for file in Minecraft entity_controller.json
    • File directory.png: Sprite image for directory in Minecraft animations
      • File file.png: Sprite image for file in Minecraft entity_animations.json[a]
    • File directory.png: Sprite image for directory in Minecraft blocks
      • File file.png: Sprite image for file in Minecraft block.json
    • File directory.png: Sprite image for directory in Minecraft cameras
      • File directory.png: Sprite image for directory in Minecraft presets
        • File file.png: Sprite image for file in Minecraft identifier.json
    • File directory.png: Sprite image for directory in Minecraft entities
      • File directory.png: Sprite image for directory in Minecraft entity
        • File file.png: Sprite image for file in Minecraft entity_animation_controller.json
      • File file.png: Sprite image for file in Minecraft entity.json
    • File directory.png: Sprite image for directory in Minecraft features
      • File file.png: Sprite image for file in Minecraft feature.json
    • File directory.png: Sprite image for directory in Minecraft feature_rules
      • File file.png: Sprite image for file in Minecraft feature_rules.json
    • File directory.png: Sprite image for directory in Minecraft dialogue
    • File directory.png: Sprite image for directory in Minecraft functions
      • File directory.png: Sprite image for directory in Minecraft entity
        • File file.png: Sprite image for file in Minecraft entity_function.mcfunction
      • File file.png: Sprite image for file in Minecraft tick.json
    • File directory.png: Sprite image for directory in Minecraft item_catalog
      • File file.png: Sprite image for file in Minecraft crafting_item_catalog.json
    • File directory.png: Sprite image for directory in Minecraft items
      • File file.png: Sprite image for file in Minecraft item.json
    • File directory.png: Sprite image for directory in Minecraft loot_tables
      • File directory.png: Sprite image for directory in Minecraft entities
        • File file.png: Sprite image for file in Minecraft entity.json
    • File directory.png: Sprite image for directory in Minecraft recipes
      • File file.png: Sprite image for file in Minecraft entity_recipe.json
    • File directory.png: Sprite image for directory in Minecraft spawn_rules
      • File file.png: Sprite image for file in Minecraft entity_spawn_rules.json
    • File directory.png: Sprite image for directory in Minecraft structures
      • File file.png: Sprite image for file in Minecraft structure.mcstructure
    • File directory.png: Sprite image for directory in Minecraft texts
      • File file.png: Sprite image for file in Minecraft languages.json
      • File file.png: Sprite image for file in Minecraft en_US.lang
      • File file.png: Sprite image for file in Minecraft languagecode_COUNTRYCODE.lang
    • File directory.png: Sprite image for directory in Minecraft trading
      • File file.png: Sprite image for file in Minecraft villager_trades.json
  1. File may be inside a directory.

Internal behavior packs

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_jigsaw_structures This pack was used before 1.21.120 for the "Data-Driven Jigsaw Structures" experiment, containing the trail ruins jigsaw structures. It only exists in Minecraft Preview now and all folders are empty.
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.
server_editor_library Server Editor Library

Library for building server driven Editor UI

Contains scripts for the Editor when used on Bedrock Dedicated Server.
server_library @minecraft/server TS Library

A BP containing all the @minecraft/server typescript code.

Contains typescript code for the Editor. Only available in Minecraft Preview.
server_ui_library @minecraft/server-ui TS 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.

Videos

Tutorials from the official Minecraft Creator Channel

History

This section needs expansion.
 
You can help by expanding it.

Add-on 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.

Extra loading tips that appear when a world has add-ons applied have been added since Bedrock Edition Preview 1.20.70.21. By Bedrock Edition Preview 1.21.0.23, eight more of them were introduced which replaced the one from 1.20.70.21.

Previously, standalone add-ons from the Marketplace were not available, and needed to be packaged with a world to be sold on the Marketplace. However, as of February 2024, individual add-ons can now be sold separately on the Marketplace.[14]

See also

External links

Official documentation

Official tutorials

Tools and libraries

Unofficial resources

Templates

References

  1. "Entity Behavior Introduction" – Microsoft Learn, September 19, 2023.
  2. "Introduction to Loot Tables" – Microsoft Learn, March 6, 2025.
  3. "Data-Driven Spawn Rules" – Microsoft Learn, November 8, 2023.
  4. "Custom Items" – Microsoft Learn, September 18, 2024.
  5. "Recipe Introduction" – Microsoft Learn, April 19, 2024.
  6. a b "Biome JSON and Overview" – Microsoft Learn, April 10, 2025.
  7. "Intro to Entities BP" (§ Components) – Bedrock Wiki, June 8, 2025.
  8. "Item Documentation - Item Components" – Microsoft Learn, October 10, 2024.
  9. "Block Documentation - Block Components" – Microsoft Learn, November 22, 2024.
  10. "Creating a Pack with Custom Settings" – Microsoft Learn, August 1, 2025.
  11. "Building Sub-Packs" – Microsoft Learn, August 28, 2025.
  12. "There will be news about the API at Minecon. I'll talk about the things I'm working on and what our plans are. But no more details for now."@SeargeDP (Michael Stoyke) on X (formerly Twitter), August 12, 2016
  13. "the MCPE on, would be nice to say that too."@_grum (Erik Broes) on X (formerly Twitter), August 13, 2016
  14. "Introducing add-ons" by Linn Viberg – Minecraft.net, February 20, 2024.

Navigation