Understand Addons

What's an Add-on?

Here is a brief summary of how addons work and how to use them, if you need more information you can check the dedicated pages linked in the sections below.

In Minecraft: Bedrock Edition, Add-ons allow creators to customize gameplay, mobs, items, blocks, and UI elements. They are typically split into two key components:

  • Behavior Pack (BP): Controls entity mechanics, loot tables, recipes, functions, and world logic (the "brains").
  • Resource Pack (RP): Controls models, textures, animations, sounds, and user interfaces (the "looks").

.mcaddon and .zip

Add-ons are distributed in a few common formats:

  • .mcaddon: An archive that bundles both a Resource Pack and Behavior Pack together. Double-clicking/opening it installs both directly into Minecraft.
  • .mcpack: A single pack package (either just BP or just RP).
  • .zip: A standard compressed archive. If you download a .zip, you can rename the extension to .mcaddon (or extract it manually into your com.mojang/development_behavior_packs and development_resource_packs folders).

Compatibility Basics

Bedrock loads packs from top to bottom based on your world's pack list. When multiple add-ons modify the exact same file, the pack placed highest in the list overwrites the files of the packs beneath it.

Add-ons that use custom isolated files (such as unique items, blocks, or custom entities) rarely conflict. Conflicts primarily occur when packs override core vanilla player files.

tick.json

tick.json is located within the functions folder of a Behavior Pack. It tells Minecraft which commands or function files should execute every single game tick (20 times per second).

Because modern Minecraft Bedrock versions support multiple tick files cleanly, conflicts here are rare unless an add-on uses an outdated method to register functions.

player.json

player.json is a core behavior file containing player properties, components, and event hooks. Modifying this file grants add-on creators access to advanced mechanics otherwise unavailable in Bedrock.

Single File Limit

Only one player.json file can be active per world. The pack positioned highest in your world settings takes priority.

Using Tough as Bedrock with another pack using player.json:

  • Place the other add-on above Tough as Bedrock in your world's Behavior Pack list.
  • When you join the world, run the /function start command manually to initialize Tough as Bedrock.
  • Note: Without its own player.json active, the Ice Resistance effect will not grant immunity to powdered snow, but all remaining features will work normally.

player.entity.json

player.entity.json is a Resource Pack file that handles client-side player rendering, custom HUD attachments, 3D item visuals, and player animations.

Mandatory File for Custom Bars

Like player.json, only one resource player.entity.json can be loaded at a time. This file is mandatory for Tough as Bedrock to render custom stat bars (thirst, temperature, etc.).

If another add-on modifies player.entity.json (such as custom player animations, custom capes, or 3D weapon models), it will conflict with Tough as Bedrock unless the JSON files are manually merged.

Merging JSON Files

If you must use two add-ons that both require player.json or player.entity.json, you can merge their code manually:

  1. Open both JSON files in a code editor (such as VS Code or Bridge.).
  2. Copy the components, component_groups, and events from one pack into the other without overwriting existing entries.
  3. Ensure all JSON syntax (brackets, commas, and quotation marks) remains valid.

Open the JSON file merger to merge JSON files in the browser. See the dedicated player file guide for more detail.

Updating Your Add-on

When a new version of Tough as Bedrock or any other add-on is released:

  • Back up your world before applying updates.
  • Deactivate the old version in world settings and delete it from your global storage.
  • Import the updated .mcaddon and reactivate it in your world settings.