Minecraft Custom Model Data Converter
Convert Minecraft resource pack item models between pre-1.21.4 format (custom_model_data overrides with threshold) and 1.21.4+ item definition format (range_dispatch on custom_model_data with threshold entries). Supports all item types including bows, crossbows, fishing rods, shields, clocks, and compasses.
Pre-1.21.4
1.21.4+
1
1
FAQ & Information
What does this tool convert?
This tool converts Minecraft resource pack item model files between two formats:
- Pre-1.21.4 format: Uses
models/item/*.jsonfiles withoverridesarray andcustom_model_datapredicates - 1.21.4+ format: Uses
items/*.jsonfiles with tree-based nodes (range_dispatch,condition,select)
Which item types are supported?
- Single-state items: Swords, tools, blocks, food, and all other regular items
- Bows: Pulling animation states with use_duration thresholds
- Crossbows: Pulling states, charged arrow, and charged rocket states
- Fishing rods: Cast and uncast states
- Shields: Blocking and non-blocking states
- Clocks: Time-based animation with 64 display states
- Compasses: Angle-based animation with 32 display states
What changed in Minecraft 1.21.4?
In Minecraft 1.21.4, Mojang replaced the old item model system with a new item definition system:
- Item models moved from
models/item/toitems/ - The
overridesarray with predicates was replaced by tree-based nodes custom_model_datapredicate became arange_dispatchproperty- State predicates (pulling, charged, cast, blocking) became
conditionandselectnodes
How to use this converter?
- Select the item type from the dropdown, or leave on Auto-detect
- Choose the conversion direction using the swap button
- Paste your JSON into the left input area
- Click Convert
- Copy or download the result from the right output area
For special items (bow, crossbow, fishing rod, shield, clock, compass), select the correct item type if auto-detection doesn't work.