Ready to add new mechanics, mobs, or rules to your Bedrock server? Let’s install a behavior pack cleanly, no guesswork. Need stability? Check our optimized Minecraft hosting.
Prerequisites
- Oxygenserv panel access (your login and password)
- The behavior pack as
.mcpack
,.mcaddon
, or.zip
- Archive tool (7-Zip/WinRAR) to extract/zip files
- Text editor (Notepad++ or VS Code) to edit
manifest.json
- SFTP client (FileZilla) for large uploads
- Minecraft Bedrock installed (for the “export world” method)
Detailed steps
-
Download and prepare the behavior pack
Grab the pack from a trusted source. If it’s.mcpack
or.mcaddon
, rename it to.zip
to inspect (e.g.,MyPack.mcpack
→MyPack.zip
). Extract it and ensure the folder containsmanifest.json
directly (not nested one level deeper). If needed, fix the structure toMyPack/manifest.json
. Zip the folder back toMyPack.zip
for upload. -
Grab UUID and version from the manifest
Openmanifest.json
. In the"header"
section, note"uuid"
(e.g.,"123e4567-e89b-12d3-a456-426614174000"
) and the"version"
array (e.g.,[1,0,0]
). Do not use the UUID frommodules
; you need theheader.uuid
. Keep these values handy, we’ll paste them into the world config. -
Upload the pack to the server (direct method)
Log into the Oxygenserv panel and open the “Files” tab. Go tobehavior_packs
(create it if missing). Click “Upload” to sendMyPack.zip
, then “Unarchive” to extract it. You should seeMyPack/manifest.json
; if you seeMyPack/MyPack/manifest.json
, fix the nesting. -
Declare the pack in the world
Go to/home/container/worlds/[WorldName]
. Createworld_behavior_packs.json
if it doesn’t exist. Paste a JSON array entry like:[{"pack_id":"123e4567-e89b-12d3-a456-426614174000","version":[1,0,0]}]
. Replacepack_id
andversion
with your exact values; a single typo will break loading. -
Restart and check the console
Open “Console” and click “Restart”. Wait for the startup message (e.g., “Server started”). If it says the pack is missing, verify the path:behavior_packs/MyPack/manifest.json
. If you get dependency errors, the pack likely also needs a Resource Pack — we’ll add it next. -
Alternative method: enable the pack via an exported world
Launch Minecraft Bedrock on your PC. Double-click the.mcpack
/.mcaddon
to import, then “Play” → “Create New World”. In “Behavior Packs”, enable the pack (and in “Resource Packs” if required by the creator). Create the world, load it once, then go back to the main menu. -
Export the world as .mcworld
From “Play”, click “Edit” on that world. At the bottom of the “General” tab, click “Export World”. Save theWorld.mcworld
file and keep it ready for upload. -
Upload the .mcworld and extract it on the server
In Oxygenserv’s “Files”, open/home/container/worlds/
. Create a folder with your world name (e.g.,BedrockWorld
) and uploadWorld.mcworld
there. Rename it toWorld.zip
and click “Unarchive”. Ensure the folder contains the expected Bedrock world files (e.g.,db
, pack references, etc.). -
Point the server to that world
Openserver.properties
from the “Files” or “Config” tab. Setlevel-name=
to the exact folder name (e.g.,level-name=BedrockWorld
). Save the file, go to “Console”, and click “Restart”. The server will now load that exported world with your activated packs. -
Add Resource Packs if required
Some behavior packs require matching content inresource_packs
. Upload the resource pack toresource_packs
and declare it in/home/container/worlds/[WorldName]/world_resource_packs.json
like:[{"pack_id":"RESOURCE_UUID","version":[1,0,0]}]
. Use theheader.uuid
andheader.version
from the resource pack’smanifest.json
. Missing this often causes invisible items or dependency errors. -
Test in-game and troubleshoot
Join the server from Bedrock (default port19132
) and verify the new mechanics. If the pack doesn’t apply, re-check JSON syntax, the exact UUID, and version array. If you see “pack with id does not exist”, fix folder nesting or incorrect names. As a last step, remove the pack folder and JSON entry, restart, and reinstall carefully.
Tips & optimization
Back up world_behavior_packs.json
before changes. Test in small batches (1–3 packs) to catch conflicts early. Track versions: update [major,minor,patch]
when packs change. Use SFTP for files >100 MB to avoid timeouts. For complex packs, enable all required experiments in a local world, then export — it’s the most reliable path.
FAQ
Where do I find the correct UUID and version?
Open manifest.json
and use header.uuid
and header.version
. Example: "uuid":"123e4567-e89b-12d3-a456-426614174000"
, "version":[1,0,0]
. Don’t use modules
UUIDs.
The pack isn’t detected. What should I check?
Ensure structure is behavior_packs/PackName/manifest.json
(no double nesting). Validate JSON (brackets, commas, quotes). Match the exact UUID and version, restart the server, and check console logs for dependency hints.
How do I add multiple behavior packs?
Add multiple objects in the array inside world_behavior_packs.json
, separated by commas. Example: [{"pack_id":"UUID1","version":[1,0,0]},{"pack_id":"UUID2","version":[2,3,1]}]
. Restart to apply.
You’ve got this. Go step by step, test after each change, and your Bedrock server will run custom mechanics like a champ.