Skip to content
TimmyChips edited this page Nov 16, 2025 · 7 revisions

Welcome to the Modefite-Model-Defintion-Backport wiki!

Differences from 1.21.4:

Root

  • Root items.json object:
    • oversized_in_gui does nothing
    • swap_animation_scale does nothing

Model

model type:

  • tints field doesn't do anything nor does tint source type

Custom Model Data property

Property minecraft:custom_model_datastill operates as an integer pre-1.21.4. Some changes include:

  • Condition version of the property will default to true if the custom_model_data component is present on an item, and you will get the warning message in the log file:

    "Unable to read 'custom_model_data' for type: 'minecraft:condition' since component is an integer in this version. Defaulting to be true if component is present on item."

  • Range Dispatch version of the property will still use the integer value and convert it into a float (i.e. a value of 3 will become 3.0). You will also get the warning message in the log file:

    Unable to read 'custom_model_data' for type: 'minecraft:range_dispatch' since component is an integer in this version. Defaulting to use integer values.

  • You will get the best result using the Select version of the property as that behaves like you would expect, picking a specific version dependent on the when case. JSON example:

Click to Reveal
{
  "model": {
    "type": "minecraft:select",
    "property": "minecraft:custom_model_data",
    "cases": [
      {
        "model": {
          "type": "minecraft:model",
          "model": "minecraft:item/yellow_dye"
        },
        "when": [
          "1"
        ]
      },
      {
        "model": {
          "type": "minecraft:model",
          "model": "minecraft:item/gray_dye"
        },
        "when": [
          "2"
        ]
      }
    ],
    "fallback": {
      "type": "minecraft:model",
      "model": "minecraft:item/shears"
    }
  }
}

Select type

All properties for this type are present apart from:

  • local_time

bundle/selected_item

Bundle doesn't function same way as it does in 1.21.4 and you can't select a specific item with the bundle in this version. Type is missing and not incorporated.


Special type

Completely missing and not incorporated into the mod as of now. Will be ignored.


Custom Additions:

modefite_items_override folder

  • New folder modefite_items_override under assets/minecraft/ or assets/<modname>/.
    • Any items definition JSON files put in here will override any matching items definition files that are in assets/minecraft/items or in assets/<modname>/items.
    • Because vanilla Minecraft will make any items definition files render as missing textures when it sees an unknown property, place any items definition JSON files that use custom, modded properties in the modefite_items_override folder. If you do use your resource pack with Modefite uninstalled, your resource pack will still work correctly.

New modded property types and changes:


Roadmap

  • Add model tints and special type. Add extra root definition fields.
  • Add light_emission field for blocks for emissive block textures.
  • Make keybind_down property sync with multiplayer.
  • Add more custom properties if need be in the future.