An obfuscation tool for partly protecting your Minecraft Bedrock Edition resource packs
- Animations - Animation definitions and timelines
- Animation Controllers - State machine logic
- Attachables - Wearable items and accessories
- Entities - Entity behavior and properties
- Geometries - 3D model structures
- Particles - Particle effect definitions
- Render Controllers - Rendering logic and conditions
- Sounds - Audio file references
- Fogs
- Materials
- UI Files
- Fonts
- Node.js installed on your system
- A valid Minecraft Bedrock resource pack
Create a .env file in the root folder (e.g., MirageObfuscator/) with the following variables:
APP_ENV=DEV
GLOBAL_PATH=http://localhost:3000/
OBFUSCATION_KEY=your_secret_key_hereImportant:
- Change the port number if
3000is already in use (e.g.,3069) - Keep your
OBFUSCATION_KEYprivate! Anyone with this key can de-obfuscate your pack
Add a mirage_config.json file to the root of your resource pack:
{
"keyword": "cheesecake"
}The keyword acts as an obfuscation marker. Any file or identifier containing this keyword will be obfuscated.
Your resource pack must follow this structure:
Resourcepack.zip
├── sounds/
├── models/
├── entities/
├── animations/
├── pack_icon.png
├── mirage_config.json
├── manifest.json
└── [other folders you want to obfuscate]
Requirements:
- Must be a valid resource pack with correct syntax
- The ZIP file must contain all folders at the root level
- Must include
mirage_config.json
Manually rename all files and identifiers you want obfuscated to include your keyword:
Examples:
animation.cheesecake_player.first_person.slide_holdsounds/cheesecake_misc/cheesecake_player_eat.oggentity.cheesecake_custom_mob
MirageObfuscator supports obfuscating variables within your JSON files:
"cheesecake_start": {
"animations": ["cheesecake_first_person_run_start"],
"transitions": [
{
"cheesecake_hold": "q.all_animations_finished && q.modified_move_speed > 0.99 && q.is_on_ground && !q.is_sneaking && !v.cheesecake_is_wall_running && !q.is_jumping"
},
{
"cheesecake_stop": "q.modified_move_speed < 0.99 || !q.is_on_ground || q.is_jumping || q.is_sneaking || v.cheesecake_is_wall_running"
}
],
"blend_transition": 0.2
}All instances of identifiers containing your keyword will be obfuscated throughout the pack.
- Start the web interface
- Upload your prepared resource pack (ZIP format)
- The obfuscated pack will be generated and ready for download
- Never share your
OBFUSCATION_KEY- this is the key to de-obfuscating your pack - Use a strong, unique key for each project
- Keep your
.envfile out of version control (add to.gitignore) - Store backups of your original, unobfuscated resource pack
- Test your obfuscated pack thoroughly before distribution
This project is licensed under the MIT License - see the LICENSE file for details.