Minecraft 1.21.2 Snapshot 24w36a introduces new support for custom equipment models via data pack and resource packs. It has also tweaked the Bundle so that you can empty a group of items when it’s used in the hotbar. And as usual, it has included a bunch of bug fixes.

Features:

Bundles

  • When a Bundle is used in the hotbar, one group of items is emptied at a time instead of everything being emptied at once

Changes

  • Squid Spawn Eggs now only spawn adult Squids
  • There is a 5% chance of Squids spawned in groups in the wild to be a baby
  • When a mob converts from one type to another (ex: Piglin to Zombified Piglin), the health of the converted mob is set to the same percentage of max health as the original mob had before conversion

Technical Changes

  • The Data Pack version is now 52
  • Resource Pack version is now 37

Tags

Block Tags

  • bats_spawnable_on: Blocks that bats can spawn on

Item Tags

  • Added new tags to control which items can be used to repair various armor sets:
    • repairs_leather_armor
    • repairs_iron_armor
    • repairs_chain_armor
    • repairs_gold_armor
    • repairs_diamond_armor
    • repairs_netherite_armor
    • repairs_turtle_helmet
    • repairs_wolf_armor
  • piglin_safe_armor: Items that, when worn by a player, will cause Piglins to not get angry

Changed Item Components

minecraft:item_name:

  • This component is now always present on every item

New Item Components

minecraft:item_model

  • Controls item model
  • Present on every item
  • Format: namespaced id
    • namespace:id will reference model /assets/<namespace>/models/item/<id>

minecraft:equippable

  • If present, this item can be equipped by players in the selected slot
  • When right-clicking with an item with this component, it will be swapped into the appropriate slot
  • Format: object with fields
    • slot: one of head, chest, legs, feet, body, mainhand, or offhand
    • equip_sound (optional): Sound event to play when the item is equipped
      • If not specified, the default armor equip sound will be played
    • model (optional): namespaced ID of the equipment model to use when equipped
      • These model definitions are loaded from Resource Packs
      • If not specified, will fall back to rendering as the item itself when in the head slot (or no rendering if not applicable)
    • allowed_entities (optional): Entity ID, Entity Tag, or list of Entity IDs to limit which entities can equip this item
      • If not specified, any entity (that can wear this kind of equipment) is allowed to equip this item
    • dispensable: boolean (default: true), whether the item can be equipped by using a Dispenser
      • If the item type has special dispenser behavior, this will have no effect
    • e.g. equippable={slot:’chest’,equip_sound:’item.armor.equip_chain’}

minecraft:glider

  • If present, this item will allow players to glide (as with Elytra) when equipped
  • Format: empty object
    • e.g. glider={}

minecraft:tooltip_style

  • If present, this item can use custom sprites for its tooltip background and frame
  • Format: namespaced ID for a tooltip style
    • A tooltip style of namespace:path will use sprites with IDs:
      • <namespace>:tooltip/<path>_background and <namespace>:tooltip/<path>_frame
    • e.g. tooltip_style=’minecraft:special_sword’

Predicates

  • Added a new field in the Player sub-predicate, input, that can be used to detect which movement keys the player is pressing
  • If specified the predicate matches with the corresponding keybind that the player is pressing; it supports detecting the following input:
    • forward : boolean (optional)
    • backward : boolean (optional)
    • left : boolean (optional)
    • right : boolean (optional)
    • jump : boolean (optional)
    • sneak : boolean (optional)
    • sprint : boolean (optional)

Resource Pack Version 37

  • Introduced equipment models
  • Textures for entity equipment have been moved and renamed
  • The tooltip background and frame may now be customized by replacing sprites:
    • tooltip/background: The background of the tooltip
    • tooltip/frame: The frame appearing around the tooltip
    • Items with a custom tooltip_style component will use sprites with IDs:
      • <namespace>:tooltip/<path>_background and <namespace>:tooltip/<path>_frame
  • The nine_slice GUI sprite scaling mode has a new optional boolean property: stretch_inner
    • If true, the inner parts of the texture (i.e. not the corners) will be stretched instead of tiled
    • If not specified, defaults to false as before

Item Models

  • All item models can now use the broken property in model overrides that was previously limited to just Elytra
    • This will have a value of 1 if the item has 1 durability left, or 0 otherwise

Custom Equipment Models

The appearance of equipment when equipped by players or certain mobs can now be customized by defining ‘equipment models’ in the Resource Pack.

  • Equipment model definitions are loaded from assets/<namespace>/models/equipment/<path>.json
    • These can then be referenced by the equippable component with a model id of namespace:path
  • The model definition is an object with fields: wolf_body, horse_body, llama_body, humanoid, humanoid_leggings, wings
    • All fields are optional, and can be used to specify a list of layers for the given model layer type
    • Each field contains list of layer objects:
      • texture: namespaced texture location for this layer
        • namespace:path will resolve to assets/<namespace>/textures/entity/equipment/<layer_type>/<path>.png
      • dyeable: object with fields (optional), specifying how this layer behaves when dyed (in the dyeable item tag, and has dyed_color component)
        • color_when_undyed: rgb color int (optional)
        • If specified, this layer will be tinted by the color contained in the dyed_color component
          • If the item is not dyeable or not dyed, it will be tinted based on the color specified by color_when_undyed
          • If color_when_undyed is not specified and the item is not dyed, the layer will be hidden
      • use_player_texture: boolean (default: false), true if this layer texture should be overridden by a texture given by the player
        • Only used for wings layers, which will override with the player’s custom Elytra texture

A model definition specifying both player and horse armor layers might look like:

{
  "layers": {
    "horse_body": [
      { "texture": "minecraft:iron" }
    ],
    "humanoid": [
      { "texture": "minecraft:iron" }
    ],
    "humanoid_leggings": [
      { "texture": "minecraft:iron" }
    ]
  }
}

Trims

  • All equippable items with an equipment model defined support rendering trims, based on the trim component
  • Trim textures will be loaded from the appropriate folder in the textures/trims/entity directory
    • For example, armor with wolf_body layers will fetch trims from textures/trims/entity/wolf_body

Moved Textures

  • All equipment-related textures have been moved to subfolders of the textures/entity/equipment directory
    • Player armor textures have been moved to textures/entity/equipment/humanoid and textures/entity/equipment/humanoid_leggings
      • <material>_layer_1 textures have been renamed to <material>, and moved into the humanoid subdirectory
      • <material>_layer_2 textures have been renamed to <material>, and moved into the humanoid_leggings subdirectory
      • leather_layer_1_overlay and leather_layer_2_overlay textures have been renamed to leather_overlay in their respective subdirectories
    • wolf_armor and wolf_armor_overlay textures have moved to textures/entity/equipment/wolf_body/ and have been renamed to armadillo_scute and armadillo_scute_overlay respectively
    • turtle_layer_1 has been renamed to turtle_scute
    • Llama decor textures have been moved to textures/entity/equipment/llama_body
    • Horse armor textures have been moved to textures/entity/equipment/horse_body
    • The Elytra texture has been moved to textures/entity/equipment/wings/elytra
  • Armor trim textures have also been moved to match the folder structure of the regular equipment textures
    • Textures in textures/trims/models/armor have been divided between textures/trims/entity/humanoid and textures/trims/entity/humanoid_leggings
    • For leggings textures, the _leggings suffix is dropped

Screenshots:

Requires:

Java

Java Runtime Environment

How to install:

Minecraft 1.21.2 Snapshot 24w36a Download Links

Client: Download from Server 1

Server: Download from Server 1

Click to rate this post!
[Total: 3 Average: 4.3]