MCTOOLBOX
MC ToolboxMC TOOLBOX
<Back to Tools

Resource Pack Utility

Minecraft Pack Converter

Convert Java resource packs to Bedrock .mcpack files, convert Bedrock packs back to Java, or refresh Java pack metadata. Everything runs inside your browser.

No uploads. No account. JSZip only.

Direction

Output Details

What this converter can and cannot do

Minecraft Java and Bedrock packs use different metadata and texture paths. This tool handles the useful baseline conversion: pack metadata, pack icons, and common texture folders. It does not pretend to perfectly translate OptiFine CIT, CEM models, shaders, Java item models, Bedrock render controllers, or behavior-pack logic.

Use the converter when a pack is mainly made from standard block and item textures, or when you want a clean starting point for a manual port. Java Edition and Bedrock Edition are separate engines with different file names, model systems, material rules, and metadata. A converted archive should therefore be treated as a working draft that still needs an in-game test, not as proof that every feature is compatible.

Java -> Bedrock

Creates manifest.json, generates UUIDs, maps assets/minecraft/textures/block and item into Bedrock texture folders, and exports .mcpack.

Bedrock -> Java

Creates pack.mcmeta, maps textures/blocks and textures/items into Java texture folders, and exports a Java-ready .zip.

Java Update

Copies the Java pack and rewrites pack.mcmeta with your selected pack_format for newer Minecraft versions.

1. Keep the original archive

Make a backup before you begin. The converter creates a new download and does not overwrite the source file, but the original pack is the safest reference when you need to restore a model, texture, or metadata entry.

2. Choose the correct direction

Use Java to Bedrock for a Java .zip that contains pack.mcmeta. Use Bedrock to Java for a .mcpack or .zip that contains manifest.json. Java Version Update only rewrites pack.mcmeta in an existing Java pack.

3. Review the detected pack details

Check the pack name, description, and Java pack_format before converting. A pack_format value only tells Java which resource-pack format is targeted. It does not automatically rewrite models or other version-specific files.

4. Download and test in a fresh world

Install the converted archive, enable it by itself, and inspect several blocks and items. Testing without other packs makes missing textures, wrong paths, and load-order conflicts easier to identify.

What changes during conversion

The table below separates the work completed automatically from the parts you should review yourself. This makes it easier to decide whether the converter fits your pack before processing a large archive.

ConversionHandled automaticallyReview after download
Java to BedrockCreates manifest.json and UUIDs, copies the pack icon, and remaps common block and item texture paths.Java models, OptiFine features, shaders, fonts, sounds, animations, and Bedrock material or render-controller requirements.
Bedrock to JavaCreates pack.mcmeta, copies the pack icon, and remaps common blocks and items into the Java texture tree.Bedrock-only UI, entity definitions, attachables, render controllers, materials, and any behavior-pack content.
Java version updateCopies the archive and replaces pack.mcmeta with the selected pack_format and description.Renamed texture paths, changed model schemas, removed game assets, and other changes between Minecraft versions.

Testing checklist

  • Confirm that Minecraft recognizes the archive and shows the expected pack name and icon.
  • Check blocks and items from several material families instead of testing only one texture.
  • Look for the purple and black missing-texture pattern and read the game log for invalid paths.
  • Test animated textures, transparent pixels, custom sounds, fonts, models, and user interfaces separately.
  • Open CONVERSION_NOTES.txt in the download. It lists files the converter skipped because they need manual work.

Common conversion problems

Minecraft does not detect the pack: Open the archive and make sure pack.mcmeta or manifest.json is at the archive root, not inside an extra nested folder.

Some textures are missing: Compare the missing asset with the original pack and check its edition-specific path. Complex models may reference additional textures that are not part of the basic folder mapping.

The pack loads but looks wrong: Disable other resource packs, verify the target Minecraft version, and inspect transparent or animated textures. Different editions may interpret UV layouts and rendering rules differently.

Privacy and large packs

The selected archive stays in your browser. JSZip reads and rebuilds it locally, so the tool does not upload your textures to MC Toolbox. Very large packs can still use substantial memory because the browser must hold the source archive and generated archive at the same time. If a large conversion fails, close unused tabs and try the pack on a desktop browser.

Pack Converter FAQ

Can it convert every pack perfectly?

No. It handles common texture and metadata conversion. OptiFine CIT, CEM models, shaders, custom Java models, Bedrock render controllers, and behavior logic usually need manual edits.

Do my files get uploaded?

No. The converter runs locally in your browser using JSZip. It reads your archive, builds a new archive, and downloads it without sending the pack to a server.

Which formats should I upload?

Use .zip for Java packs and .mcpack or .zip for Bedrock packs. The output is .mcpack for Bedrock or .zip for Java.

Does changing pack_format update old textures and models?

No. Java Version Update changes pack.mcmeta only. Minecraft has renamed files and changed model formats across releases, so an older pack may still need manual migration work.

Can I convert a Bedrock behavior pack into a Java data pack?

No. This converter is for common resource-pack metadata and textures. Bedrock behavior packs and Java data packs use different systems and require purpose-built conversion or manual recreation.

Why does the converted pack have fewer files?

Edition-specific and unsupported paths are intentionally left out of the generated archive. Read CONVERSION_NOTES.txt to see which files were skipped, then port the features you still need by hand.