iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Godlike.Host offers hosted Minecraft Bedrock servers with its own game panel, SFTP access and free DDoS protection, if you would rather not host it yourself.
To add custom content to a Minecraft Bedrock Dedicated Server, install Bedrock add-ons rather than Java-style mods. Extract each .mcpack or .mcaddon, upload its behavior-pack and resource-pack folders, register those packs in the world’s JSON files with the UUID and version from each manifest.json, then restart the server. Uploading files without registering them will not attach them to the world.
What “mods” mean on a Bedrock server
Bedrock Dedicated Server (BDS) uses add-ons. An add-on is normally made from one or both of these pack types:
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problems| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
Minecraft | Java & Bedrock Deluxe Collection | Windows Digital Code | $39.99 | Buy on Amazon |
| 2 |
|
Minecraft - Bedrock Edition PS4 | $42.98 | Buy on Amazon |
| 3 |
|
Minecraft - Nintendo Switch | $29.83 | Buy on Amazon |
| 4 |
|
Minecraft | $6.99 | Buy on Amazon |
| 5 |
|
Minecraft: Switch Edition | $32.65 | Buy on Amazon |
- Behavior pack: changes gameplay logic, such as entities, recipes, loot, abilities, spawning rules or other mechanics.
- Resource pack: changes client-facing assets, such as textures, models, sounds, menus and other visuals.
A behavior pack does not provide its own visual changes. When an add-on includes both types, install and register both. Java Edition mod files and Java mod loaders are not the installation format described here; Bedrock expects packs with Bedrock manifests.
The procedure below reflects common community practice for BDS. Folder names, validation behavior and pack-format requirements can vary with the server build and hosting environment, so test on a copy of the world before changing a live server.
#1 Best Overall
- DELUXE COLLECTION — Includes Minecraft: Java & Bedrock Edition, three Bedrock add-ons, three exclusive Character Creator items, and 700 Minecoins.
- CREATE YOUR WORLD — Build whatever you imagine in an infinite world that’s unique in every playthrough.
- EXPLORE AND CRAFT — Discover biomes, resources, and mobs, then craft your way through a sandbox world filled with surprises.
- SURVIVE THE ADVENTURE — Face mysterious foes, travel across exciting landscapes, and venture into perilous dimensions.
- PLAY TOGETHER — Play cross-platform with friends in Bedrock Edition on console, mobile, and PC, or join community servers in Java Edition on PC, Mac, and Linux. Online console multiplayer requires a platform-specific subscription (sold separately).
Before you install anything
Back up the world and server files
Stop the server and make a complete copy of the world directory before adding or replacing packs. Include the existing behavior-pack and resource-pack folders and the world JSON files. A backup lets you remove a broken pack without losing the world’s current state.
Confirm that you can edit the server
You need access to the server directory through your host’s file manager or through an FTP/SFTP-style connection. You also need permission to restart the BDS process. A control panel that only provides console commands is usually insufficient for the file-copy and JSON-registration steps.
Free tools Windows power users keep installed
One-click scans. No signup required.
Check the pack contents on your computer
Keep the original download until the server is working. You will need to inspect every pack’s manifest.json, and that is easier on a local computer than through a small web file manager.
Two ways to get packs into a world
| Method | How it works | When to use it | Important limitation |
|---|---|---|---|
| Direct server-folder installation | Extract the pack, upload its folders to behavior_packs/ and/or resource_packs/, then register the packs in the world JSON files. |
Use this for a specific BDS world or when you want to manage packs independently of a local game installation. | Every uploaded pack still has to be attached to the world through the correct JSON file. |
| Single-player world export | Load the add-on in a local Bedrock world, save or export that world, and upload the resulting world to the server. | Useful when a pack is easiest to configure through the Bedrock client’s world settings. | The export method is handled differently by different hosts and can carry over unwanted world settings. It is not as consistent as direct folder installation. |
The direct method is the more consistent approach for a dedicated server. The world-export method is an alternative, not a requirement.
Install an add-on by uploading its folders
1. Obtain the add-on and identify its file type
Bedrock add-ons commonly arrive as .mcpack or .mcaddon files. These are archive containers. BDS reads extracted pack folders, not those archive files sitting in the server directory.
Do not upload the archive as the final installation step. Save it locally, make a copy if necessary, and open it with an archive utility. A file ending in .mcaddon can contain more than one pack, while a .mcpack commonly contains one behavior or resource pack.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
2. Extract the archive
Extract the archive into a temporary folder on your computer. Look for a folder whose top level contains manifest.json. That folder is the pack folder you will upload.
Rank #2
- Play and share with friends on console, mobile and Windows 10
- discover community creations in the new in-game store
- access new mini games and game modes through servers
A frequent mistake is double nesting. For example, an extraction may produce MyAddon/MyAddon/manifest.json. The folder you upload must be the inner MyAddon, so that manifest.json is directly inside it. If the uploaded path becomes behavior_packs/MyAddon/MyAddon/manifest.json, BDS may not recognize the pack.
3. Determine whether the folder is a behavior pack or resource pack
Use the manifest and the pack’s contents to identify its role. A behavior pack belongs in behavior_packs/; a resource pack belongs in resource_packs/. An add-on that contains both needs two correctly extracted folders, one for each type. Do not place a resource pack in the behavior directory or combine two pack folders into one.
4. Inspect the manifest before uploading
Open the manifest.json in each pack folder with a text editor that can save plain UTF-8. Find the header object and record:
header.uuid, which identifies the pack.header.version, which is normally an array of three numbers such as a major, minor and patch version.
Use the UUID and version from the header. Do not copy a module UUID from another part of the manifest. The registration files use the pack identity represented by the header.
5. Upload the pack folders
In the BDS server directory, open or create the standard pack directories:
behavior_packs/for behavior-pack folders.resource_packs/for resource-pack folders.
Upload the complete folder, not just its manifest and not the original archive. Keep the folder name simple and avoid an extra parent directory. After uploading, verify that the path looks like behavior_packs/PackFolder/manifest.json or resource_packs/PackFolder/manifest.json.
6. Locate the world directory
Open the server’s worlds/ directory and enter the folder for the world that should use the add-on. A commonly seen default name is worlds/Bedrock level/, but your world may have another name configured in the server settings.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Rank #3
- Minecraft is a game about placing blocks and going on adventures
- Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles
- Play in creative mode with unlimited resources or mine deep into the world in survival mode, crafting weapons and armor to fend off the dangerous mobs
- Play on the go in handheld or tabletop modes
- Includes Super Mario Mash-Up, Natural Texture Pack, Biome Settlers Skin Pack, Battle & Beasts Skin Pack, Campfire Tales Skin Pack; Compatible with Nintendo Switch only
Do not edit the JSON files for a different world and expect the running world to change. The registrations must be inside the directory of the world the server actually loads.
7. Register the behavior pack
If the add-on has a behavior pack, open world_behavior_packs.json in that world directory. Add an object to the JSON array using the behavior pack’s header.uuid as pack_id and its header.version as version.
Preserve the file’s valid JSON structure. Entries are objects inside an array; separate multiple objects with commas. The version in this registration must match the version array in that pack’s manifest. A mismatch is a common reason for a pack being ignored.
8. Register the resource pack
If the add-on has a resource pack, perform the same operation in world_resource_packs.json. Use the resource pack’s own header UUID and header version, not the behavior pack’s values. If an add-on includes both packs, each pack gets its own entry in its corresponding file.
Recommended Free Tools
Copying folders alone is not enough. The JSON registration is what attaches the packs to that particular world.
9. Save the files as plain UTF-8 JSON
JSON files cannot contain comments. Remove editor-added comments before saving. A byte-order mark at the beginning of a file can also cause a parse failure; save the file as plain UTF-8 without a byte-order mark when your editor provides that option.
Check punctuation carefully: property names and string values require double quotation marks, entries in an array need commas between them, and there must be no trailing comma after the final entry.
Rank #4
- Skins! We have biome settlers, city folk, town folk, and more!
- The Nether and all its inhabitants. Fight Ghasts and make friends with Pigmen
- Cross platform play for up to five players between Pocket Edition and Windows 10
- Revamped touch controls, controller support, and a controller mapping screen
- Enhanced Weather effects! Accumulating snow and more
10. Restart the server
Stop and start the BDS process after changing either world pack file. A restart is the dependable way to make the server reread the registrations. Some setups appear to support /reload, but it may not apply pack changes when entered through a dedicated-server console, so do not treat it as a replacement for a restart.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minute11. Test with a client
Join the target world after the restart and test the content that the pack is supposed to change. For a behavior pack, test its gameplay feature or entity. For a resource pack, check a texture, model, sound or interface element that it supplies.
If the client reports a missing pack, disconnect and inspect the server logs and both registration files. A successful upload with an incorrect UUID, version or world path still results in an apparently unmodified world.
How the world JSON registrations work
The two registration files have separate jobs:
| File | References | Folder that must exist |
|---|---|---|
world_behavior_packs.json |
Behavior-pack header UUID and header version | A matching folder under behavior_packs/ |
world_resource_packs.json |
Resource-pack header UUID and header version | A matching folder under resource_packs/ |
Think of each registration as a link between three things: the world file, the pack identity in the manifest, and the uploaded folder. All three must agree. If a registration remains after its folder is deleted, remove that entry. Every pack_id should correspond to a pack that is actually present in the matching directory.
When updating a pack, replace the folder and update the registered version to the new header.version. Leaving an old version in the world file can prevent the new files from loading correctly.
Pack order and conflicts
Two packs can change the same texture, entity definition or other piece of content. In that situation, one pack takes precedence. Community installation guides do not agree on whether the first or last entry wins in every list and pack type. Treat the direction as build- and content-dependent rather than a settled rule.
Use a staging world to determine the result:
- Back up the world and record the current order in the relevant JSON file.
- Install only the two packs that conflict.
- Place one order in the registration list and restart the server.
- Test the exact asset or behavior that overlaps.
- Reverse the order, restart again and compare the result.
- Keep the order that produces the intended result, and document it for future updates.
Do not assume that changing the order in world_resource_packs.json also changes behavior-pack precedence. Test each list independently when both types overlap.
Best Value
- Explore randomly-generated worlds and build amazing things from the simplest of homes to the grandest of castles
- Play in Creative Mode with unlimited resources or mine deep into the world in survival mode, crafting weapons and armour to fend off the dangerous mobs
Using a single-player world as an alternative
Some Bedrock workflows install the add-on in a local single-player world first, save that world, and then upload the world directory to the server. This can be convenient when the client exposes pack-selection controls that are easier to use than manual JSON editing.
Before uploading such a world, verify that the exported world contains the expected pack folders and registrations. If you subsequently change packs on the server, use the world’s own world_behavior_packs.json and world_resource_packs.json; do not assume that copying a new archive into the server will update the exported world automatically.
Keep a backup of the server’s existing world. Replacing a world with an export can overwrite progress, settings and other world-specific data. Because hosts package and import worlds differently, follow the host’s upload rules for this route and test the result before making it the production world.
Troubleshooting a Bedrock pack that will not load
| Symptom | Likely cause | What to check |
|---|---|---|
| The pack does not appear after upload | The archive was uploaded instead of an extracted folder, or the folder is nested twice. | Open the uploaded path and confirm that manifest.json is directly inside the pack folder. |
| The world starts with no visible changes | The pack files exist but are not registered for the loaded world. | Check both world JSON files in the active world directory and add the correct registration. |
| A behavior pack loads but visuals do not change | Only the behavior pack was installed. | Install and register the matching resource pack if the add-on includes one. |
| A resource pack loads but gameplay does not change | Only the resource pack was installed, or the behavior registration is wrong. | Check world_behavior_packs.json, the behavior folder and the behavior manifest. |
| The server ignores an entry | The registered version does not match the manifest’s header version. | Copy the complete header.version array again from the current pack. |
| The entry looks correct but parsing fails | Comments, invalid commas, incorrect quotation marks or a byte-order mark corrupted the JSON. | Validate the file with a JSON-aware editor, remove comments and save as plain UTF-8. |
| The server loads but the pack is missing | The registration points to a pack that was moved or deleted. | Confirm that the corresponding folder exists and remove stale entries. |
| Changes appear only after some clients reconnect | The server was not fully restarted after editing the registrations, or a client retained cached assets. | Restart BDS, reconnect the client and test again on a clean staging world. |
| One of two packs wins unexpectedly | The packs overlap and precedence depends on their order. | Test both orders on a staging world instead of relying on a presumed first- or last-entry rule. |
| A pack worked previously but fails after a server update | Pack compatibility can depend on the BDS version. | Check that the server software and the pack release are intended to work together, then retest from a backup. |
Safe update and removal practices
Update one pack at a time
Stop the server, back up the world, replace the pack folder, inspect the new manifest, update the matching JSON version and restart. Changing several packs at once makes it difficult to identify which update introduced a failure.
Remove a pack cleanly
Stop the server, remove its entry from the appropriate world JSON file, and then remove the unused folder from behavior_packs/ or resource_packs/. Keep the backup until players have confirmed that the world behaves as expected. Removing only the folder leaves a stale registration; removing only the registration leaves unnecessary files.
Keep a change record
Record the pack folder name, header UUID, header version, installation date and the order used in each JSON file. This turns a future troubleshooting session into a comparison rather than guesswork, especially when several packs modify similar content.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Practical installation checklist
- The server is stopped and the world is backed up.
- Every
.mcpackor.mcaddonhas been extracted locally. - Each uploaded pack folder contains
manifest.jsonat its top level. - Behavior folders are under
behavior_packs/; resource folders are underresource_packs/. - The active world directory, not another world, contains the registration files.
- Each registration uses the pack’s
header.uuid, not a module UUID. - Each registration uses the exact
header.versionarray from the same manifest. - The JSON contains no comments, malformed commas or byte-order mark.
- No registration remains for a pack that is not uploaded.
- The server has been restarted after the changes.
- Overlapping packs have been tested in more than one order on a staging world.
What to expect from a reliable installation
A successful installation has matching evidence in three places: the extracted folder contains a readable manifest, the pack is in the correct top-level directory, and the active world’s JSON file identifies that pack with the exact header UUID and version. If any one of those links is missing, BDS can start normally while silently leaving the add-on inactive.
For that reason, begin with the direct folder method, test on a copied world, restart after every registration change and treat pack-order behavior as something to verify rather than assume.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

