manifest.json Builder
Pack Info
Modules & Capabilities
@minecraft/server
Core scripting API (entities, world, blocks)
@minecraft/server-ui
ActionForm, ModalForm, MessageForm
@minecraft/server-net
HTTP requests (Education Edition / beta)
@minecraft/server-admin
Server secrets and admin utilities
GameTest Framework
Automated testing (GameTest API)
Holiday Creator Features
Experimental items, blocks, and entities
Custom Biomes
Custom biome generation support
Upcoming Creator Features
Experimental upcoming features
Include in Export
Only checked sections will be bundled when you click Export .mcaddon.
Entities
BP/entities/custom_mob.json
Items
BP/items/magic_wand.json
Blocks
BP/blocks/magic_ore.json
Recipes
BP/recipes/magic_wand.json
Loot Tables
BP/loot_tables/entities/custom_mob.json
Spawn Rules
BP/spawn_rules/custom_mob.json
Scripts
BP/scripts/main.ts
Resource Pack
Textures
RP/textures/ + item_texture.json + terrain_texture.json
Sounds
RP/sound_definitions.json + .ogg files
Animations
RP/animations/custom_mob.animation.json
Particles
RP/particles/magic_burst.json
Languages
RP/texts/en_US.lang
JSON · manifest.json
Addon File Structure
Standard Layout Behavior Pack (BP/)
Resource Pack (RP/)
Naming Conventions
Identifiers
namespace:namee.g. myaddon:magic_sword
Files
snake_case.jsone.g. magic_sword.json
Textures
snake_case.png16×16 or 32×32 px PNG
Entity Builder
Basic Settings
Components
AI Goals
JSON Output
Item Builder
Properties
Components
minecraft:food
Edible with hunger restore
minecraft:weapon
Melee weapon properties
minecraft:armor
Wearable armor slot
minecraft:throwable
Can be thrown by player
minecraft:glint
Enchantment visual glint
minecraft:digger
Destroys specific blocks faster
JSON · BP/items/magic_wand.json
Block Builder
Properties
Block States
JSON · BP/blocks/magic_ore.json
Recipe Builder
Recipe Type
Crafting Grid (3x3 Shaped)
Click a slot and type an item ID (e.g.
minecraft:iron_ingot)JSON · BP/recipes/magic_wand.json
Loot Table Builder
Loot Pool
Entries
JSON · BP/loot_tables/entities/custom_mob.json
Spawn Rules Builder
Spawn Settings
JSON · BP/spawn_rules/custom_mob.json
Script API / GameTest
TypeScript / JavaScript
Event Listener
Subscribe to world events
Chat Command
Custom !command handler
Tick Loop
Per-tick game logic
ActionForm UI
Show modal dialog
GameTest Suite
Automated unit tests
HTTP Request
Fetch external API data
Dynamic Properties
Persistent custom data
Scoreboard
Custom score tracking
Scheduler
Delayed / repeating jobs
TypeScript · BP/scripts/main.ts
Texture Registry & Uploader
Upload PNG Files
Drop PNG files here or click to browse
item textures, block textures, entity skins...
Registered Textures
Add entries below to auto-generate item_texture.json and terrain_texture.json.
item_texture.json
terrain_texture.json
Size Guide
| Type | Size | Path |
|---|---|---|
| Item | 16x16 / 32x32 | textures/items/ |
| Block | 16x16 | textures/blocks/ |
| Entity | 64x32+ | textures/entity/ |
| Particle | 8x8 / 16x16 | textures/particle/ |
PNG with alpha channel only. Key names must match your identifiers.
Sound Registry & Uploader
Bedrock requires .ogg (OGG Vorbis) audio. Convert at cloudconvert.com.
Upload .ogg Files
Drop .ogg files here or click to browse
Files are stored in memory and bundled into the .mcaddon on export
Sound Definitions
Each entry maps an event key to a .ogg file path.
Generated sound_definitions.json
Sound Categories
| Category | Usage |
|---|---|
| ambient | Background atmosphere |
| block | Block interactions |
| hostile | Hostile mob sounds |
| neutral | Neutral mob sounds |
| player | Player actions |
| music | Background music |
| ui | Interface sounds |
| weather | Rain, thunder, etc. |
Use pitch arrays like [0.9, 1.1] for natural variety.
Animation Builder
Animation Settings
Bone Keyframes
Bones defined in your .geo.json model can be keyframed. Common bones: root, body, head, arm_right, arm_left, leg_right, leg_left.
| Bone | Rotation Formula (Molang) |
|---|---|
| left_leg | math.sin(query.anim_time * 360) * 30 |
| right_leg | -math.sin(query.anim_time * 360) * 30 |
| head | query.target_x_rotation |
| arm_right | -math.sin(query.anim_time * 360) * 60 |
JSON · RP/animations/custom_mob.animation.json
Language Strings
Locales
en_US (default)
zh_CN
es_ES
fr_FR
de_DE
ja_JP
pt_BR
ru_RU
ko_KR
LANG · RP/texts/en_US.lang
Particle Effect Builder
Particle Settings
JSON · RP/particles/magic_burst.json
Code Generator
Quick Templates
Select a template above to generate code
Script API Event Browser
Molang Reference
Query Functions
| Expression | Returns / Notes |
|---|---|
| query.health | Current HP (float) |
| query.max_health | Max HP (float) |
| query.time_of_day | 0.0–1.0 (day cycle) |
| query.moon_phase | 0–7 (moon cycle) |
| query.anim_time | Animation elapsed seconds |
| query.distance_from_camera | Meters (float) |
| query.is_in_water | 0 or 1 |
| query.is_on_ground | 0 or 1 |
| query.is_moving | 0 or 1 |
| query.walk_speed | Movement speed |
| query.body_x_rotation | Pitch (°) |
| query.body_y_rotation | Yaw (°) |
| query.target_x_rotation | Target pitch (°) |
| query.target_y_rotation | Target yaw (°) |
| query.life_time | Time since entity spawn |
| query.is_powered | 0 or 1 (redstone) |
Math Functions
| Function | Description |
|---|---|
| math.sin(x) | Sine (degrees) |
| math.cos(x) | Cosine (degrees) |
| math.abs(x) | Absolute value |
| math.floor(x) | Round down |
| math.ceil(x) | Round up |
| math.clamp(x,min,max) | Clamp value |
| math.lerp(a,b,t) | Linear interpolation |
| math.lerprotate(a,b,t) | Lerp for angles |
| math.mod(a,b) | Modulo (remainder) |
| math.pow(a,b) | Power function |
| math.sqrt(x) | Square root |
| math.random(a,b) | Random in range |
| math.pi | π ≈ 3.14159 |
Variables & Scope
| Prefix | Usage |
|---|---|
| variable.foo | Read/write, persists this entity |
| temp.bar | Read/write, this evaluation only |
| context.x | Read-only, caller context |
| query.x | Read-only, engine-provided |
JSON Validator
Paste your JSON on the left and click Validate.
Common Mistakes
• Missing
format_version at root• Identifier missing
namespace:name format• Trailing comma before closing
} or ]• Missing quotes around string values
• Wrong
min_engine_version for feature• Component path typos
• Missing
description.identifier inside root key Schema Viewer
API Versions & Releases
Bedrock Release History
1.21 – Tricky TrialsLatest
1.20 – Trails & TalesStable
1.19 – Wild UpdateLegacy
1.18 – Caves & Cliffs IIOld
1.17 – Caves & Cliffs IEOL
Script API Module Versions
| Module | Version | Status |
|---|---|---|
| @minecraft/server | 1.13.0 | Stable |
| @minecraft/server-ui | 1.3.0 | Stable |
| @minecraft/server-net | 1.0.0-beta | Beta |
| @minecraft/server-admin | 1.0.0-beta | Beta |
| @minecraft/debug-utilities | 1.0.0-beta | Beta |
Experimental Feature Flags
| Flag | Since | Status |
|---|---|---|
| Holiday Creator Features | 1.16 | Exp. |
| Custom Biomes | 1.17 | Exp. |
| Upcoming Creator Features | 1.19 | Exp. |
| Beta APIs (Scripting) | 1.19 | Exp. |
| Molang Features | 1.17 | Exp. |
| Data-Driven Items | 1.16 | Exp. |
Quick Reference & Checklist
Addon Dev Checklist
1
Create manifest.json (both packs)
Set name, description, unique UUID v4, min_engine_version, and modules.
2
Set up folder structure
BP/entities, BP/items, BP/scripts, RP/textures, RP/texts, RP/models/entity.
3
Define content JSON
Entity, item, or block JSON files with format_version and identifier.
4
Register textures & models
item_texture.json, terrain_texture.json, and entity geometry .geo.json.
5
Add language strings
RP/texts/en_US.lang (and languages.json listing all locales).
6
Write scripts (optional)
BP/scripts/main.ts — compiled to JS. Reference @minecraft/server.
7
Package and test
Zip BP and RP → rename .zip → .mcpack (or both together → .mcaddon).
Official Resources
Pack Packaging Cheat Sheet
| Extension | Contents |
|---|---|
| .mcpack | Single pack (BP or RP only) |
| .mcaddon | BP + RP combined in zip |
| .mcworld | World + embedded packs |
| .mctemplate | World template for marketplace |