Java Edition 24w45a

Minecraft 24w45a
24w45a.jpg: Infobox image for Minecraft 24w45a the version in Minecraft
Java Edition 24w45a.png: Infobox image for Minecraft 24w45a the version in Minecraft
Edition

Java Edition

Release date

November 6, 2024

Type

Snapshot

Snapshot for

1.21.4

Downloads

Client (.json)
Server

Obfuscation maps

Client
Server

Protocol version

 dec1073742045
 hex400000DD

Data version

4177

Resource pack format

44

Data pack format

59

Minimum Java version

Java SE 21

24w45a is the second snapshot for Java Edition 1.21.4, released on November 6, 2024,[1] which revamps the item model system, changes various items and mobs, and fixes bugs and crashes from 24w44a.

Additions

General

Items model definitions

  • minecraft:model item model type.
    • Renders a plain model from models directory.
    • Fields:
      • model: namespaced ID of model in models (like minecraft:block/yellow_glazed_terracotta)
      • tints: a list of tint sources to apply to elements of rendered model (first entry applies to tintindex 0, second one - 1, etc.)
    • Format:
      • type: type of tint source (see below)
      • <type-specific> - additional fields depending on tint source type.
  • minecraft:constant tint source type.
    • Returns a constant RGB color.
    • Fields:
      • value - A packed integer RGB value (e.g. -1) or an array of RGB values (e.g. [ 1, 1, 1 ]).
  • minecraft:dye tint source type.
    • Returns value from minecraft:dyed_color component or default if not present.
    • Fields:
      • default - RGB value.
  • minecraft:grass tint source type.
    • Returns grass color at specific climate parameters, based on textures/colormap/grass.png.
    • Same colors as ones selected by downfall and temperature in biome configuration.
    • Fields:
      • temperature - float in 0..1 (inclusive) range.
      • downfall - float in 0..1 (inclusive) range.
  • minecraft:firework tint source type.
    • Returns average of colors from minecraft:firework_explosion component or default color if there are none.
    • Fields:
      • default: RGB value.
  • minecraft:potion tint source type.
    • Returns color from minecraft:potion_contents component:
      • If component is present:
        • custom color, if there is one present in component.
        • default color, if effect list is empty.
        • average of effect colors, otherwise.
      • Default color, otherwise.
    • Fields:
      • default: RGB value.
  • minecraft:map_color tint source type.
    • Return value from minecraft:map_color component or default color if component is not present.
    • Fields:
      • default: RGB value.
  • minecraft:custom_model_data tint source type.
    • Returns value from colors list in minecraft:custom_model_data component.
    • Fields:
      • index - index for field in colors.
        • Default: 0
  • minecraft:special item model type.
    • Renders a special (not data-driven) model.
    • Fields:
      • model: special model instance.
        • Format:
          • type - type of special model.
          • <type-specific> - additional fields depending on tint source type.
      • base: namespaced ID of model in models, providing transformations, particle texture and GUI light.
  • minecraft:bed special model type.
    • Renders a whole bed.
    • Fields:
      • texture - namespaced ID for texture, without textures/entity/bed/ prefix and .png suffix.
  • minecraft:banner special model type.
    • Renders a banner with patterns from minecraft:banner_patterns component.
    • Fields:
      • color - color of banner base, one of 16 predefined colors.
  • minecraft:conduit special model type.
    • Renders a conduit.
    • No fields.
  • minecraft:chest special model type.
    • Renders a single chest.
    • Fields:
      • texture - namespaced ID for texture, without textures/entity/chest/ prefix and .png suffix.
      • openness - float, 0.0 (default) - fully closed, 1.0 - fully open.
  • minecraft:head special model type.
    • Renders a head.
    • Uses profile from minecraft:profile component when applicable.
    • Fields:
      • kind - one of skeleton, wither_skeleton, player, zombie, creeper, piglin, dragon
  • minecraft:shulker_box special model type.
    • Renders a shulker box.
    • Fields:
      • texture - namespaced ID for texture, without textures/entity/shulker/ prefix and .png suffix
      • openness - float, 0.0 (default) - fully closed, 1.0 - fully open
      • orientation - orientation for rendering.
        • Default: up
  • minecraft:shield special model type.
    • Renders a shield.
    • Uses patterns from minecraft:banner_patterns component and color from minecraft:base_color component.
    • No fields.
  • minecraft:trident special model type.
    • Renders a trident.
    • No fields.
  • minecraft:decorated_pot special model type.
    • Renders a decorated pot.
    • Uses values from minecraft:pot_decorations component.
    • No fields.
  • minecraft:composite item model type.
    • Renders multiple sub-models.
    • All models are rendered in the same space.
    • Fields:
      • models: a list of item models to render.
  • minecraft:condition item model type.
    • Renders an item model depending on boolean property.
    • Fields:
      • property: type of property.
      • <property-specific> - additional fields depending on property type, added inline.
      • on_true - item model to render when property is true.
      • on_false - item model to render when property is false.
  • minecraft:using_item boolean property.
    • Returns true if player is currently using this item.
    • No fields.
  • minecraft:broken boolean property.
    • Returns true if the item is damageable and has only one use remaining before breaking.
    • No fields.
  • minecraft:damaged boolean property.
    • Returns true if the item is damageable and has been used at least once.
    • No fields.
  • minecraft:has_component boolean property.
    • Returns true if the given component is present on the item.
    • Fields:
      • component - component type.
  • minecraft:fishing_rod/cast boolean property.
    • Returns true if there is a fishing bobber attached to currently used fishing rod.
    • No fields.
  • minecraft:bundle/has_selected_item boolean property.
    • Returns true if bundle is "open", i.e. it has selected item visible in GUI.
    • No fields.
  • minecraft:xmas boolean property.
    • Returns true if current date is between December 24th and December 26th (inclusive).
    • No fields.
  • minecraft:selected boolean property
    • Returns true if item is selected on a hotbar.
    • No fields.
  • minecraft:carried boolean property.
    • Returns true if item is carried between slots in GUI.
    • No fields.
  • minecraft:shift_down boolean property.
    • Returns true if player currently holding shift key down.
    • No fields.
  • minecraft:custom_model_data boolean property.
    • Returns value from flags list in minecraft:custom_model_data component.
    • Fields:
      • index - index for field in flags.
        • Default: 0
  • minecraft:select item model type.
    • Renders an item model based on discrete property.
    • Fields:
      • property: type of property.
      • <property-specific> - additional fields depending on property type, added inline.
      • cases - list of cases to match in format:
        • when - value to match against property, type depends on property.
          • Could be a single value or a list of values.
        • model - item model to render when case is selected.
      • fallback - item model to render if none of the cases matched the value.
        • If not present, placeholder "missing" model is rendered instead.
  • minecraft:main_hand property.
    • Returns main hand of holding player.
    • No fields.
    • Values: left, right
  • minecraft:charge_type property.
    • Returns charge type stored in minecraft:charged_projectiles component.
    • No fields.
    • Values:
      • none - if there are no projectiles or component is not present.
      • rocket - if there is at least one firework rocket.
      • arrow - any other case.
  • minecraft:trim_material property.
    • Returns value of material field from minecraft:trim component, if present.
    • No fields.
    • Values: namespaced ID.
  • minecraft:block_state property.
    • Returns value for some property from minecraft:block_state component.
    • Fields:
      • block_state_property - string key to select from component.
    • Values: any string.
  • minecraft:display_context property.
    • Returns context this item is rendered in.
    • No fields.
    • Values:
      • none
      • thirdperson_lefthand
      • thirdperson_righthand
      • firstperson_lefthand
      • firstperson_righthand
      • head
      • gui
      • ground
      • fixed
  • minecraft:custom_model_data property.
    • Returns value from strings list in minecraft:custom_model_data component.
    • Fields:
      • index - index for field in strings.
        • Default: 0
    • Values: any string.
  • minecraft:range_dispatch item model type.
    • Renders an item model based on numeric property.
    • Replacement for old overrides section from block models.
    • Selects last entry with threshold less or equal to property value.
    • Fields:
      • property: type of property.
      • <property-specific> - additional fields depending on property type.
      • scale - factor to multiply property value with.
        • Default: 1.0
      • entries - list of entries in format:
        • threshold - float value.
        • model - item model to render when entry is selected.
        • Note: order of fields does not matter, list is sorted by threshold in ascending order before use.
      • fallback - item model to render if no entries were less or equal to property value.
        • If not present, placeholder "missing" model is rendered instead.
  • minecraft:custom_model_data numeric property
    • Returns value from floats list in minecraft:custom_model_data component.
    • Fields:
      • index - index for field in floats
        • Default: 0
  • minecraft:bundle/fullness numeric property.
    • Returns weight of bundle_contents component or 0 if not present.
    • No fields.
  • minecraft:damage numeric property.
    • Returns value for damage component.
    • Fields:
      • normalize: boolean
        • Default: true
        • If true, returns value of damage divided by max_damage component, clamped to 0..1.
        • If false, returns value of damage, clamped to 0..max_damage.
  • minecraft:count numeric property.
    • Returns stack size.
    • Fields:
      • normalize: boolean.
        • Default: true
        • If true, returns count divided by max_stack_size component, clamped to 0..1.
        • If false, returns count clamped to 0..max_stack_size.
  • minecraft:cooldown numeric property
    • Returns remaining cooldown for item, scaled to 0..1.
    • No fields.
  • minecraft:time numeric property
    • Returns value of day time (used for clock), scaled to 0..1.
    • Fields:
      • wobble - if true, value oscillates for some time around target before settling.
        • Default: true
      • natural_only - if true, value is random in dimensions with natural=false.
        • Default: true
  • minecraft:compass numeric property
    • Returns angle, scaled to 0..1 in x-z plane between holder position and target.
    • If target is not valid (not present, in other dimension or to close to holder position) random value is returned.
    • Fields:
      • target - one of:
        • spawn - points at world spawn.
        • lodestone - points at location stored in lodestone_tracker component.
        • recovery - points at last player death location.
      • wobble - if true, value oscillates for some time around target before settling.
        • Default: true
  • crossbow/pull numeric property.
    • Returns crossbow-specific use time.
    • No fields.
  • use_duration numeric property
    • Returns item use ticks.
    • Fields:
      • remaining - if true, returned value is remaining use ticks, if false - ticks so far.
        • Default: false
  • use_cycle numeric property.
    • Returns remaining use ticks modulo period.
    • Fields:
      • period - positive float.
        • Default: 1.0
  • minecraft:bundle/selected_item item model type.
    • Renders selected stack in minecraft:bundle_contents component, if present, otherwise does nothing.

Tags

  • Added the #bee_attractive block tag.
    • Denotes all blocks that bees may pollinate.
  • Added #skeleton_preferred_weapon, #piglin_preferred_weapon, #pillager_preferred_weapon and #drowned_preferred_weapon item tags.
    • For specifying preferred weapons types for these mobs when picking up items.

Changes

Blocks

Creaking heart

  • A naturally spawned creaking heart no longer drops experience when broken in Creative mode.
  • Its hurt subtitle has been changed.

Sculk sensors

  • Are now activated from resin clumps being placed by a creaking heart, with a frequency of 13.

Items

Eyeblossoms

  • Are now found at the end of the flowers in the Creative inventory.

Resin brick

Suspicious stew

Mobs

General

  • The way mobs decide to replace their equipped items with items on the ground was changed.
    • If the item belongs in an armor slot, replace the item if any of the following conditions apply.
      • The new item has a higher base armor value.
      • The new item has a higher base armor toughness value.
      • The new item has more enchantments.
      • The new item is less damaged.
      • The new item has a custom name while the old one doesn't.
    • If the item belongs in the main hand slot, replace the item if any of the following conditions apply.
      • The new item is a preferred weapon while the old one isn't.
        • If the old item is a preferred weapon while the new item isn't, do not replace the item.
      • The new item has a higher base damage value.
      • The new item has more enchantments.
      • The new item is less damaged.
      • The new item has a custom name while the old one doesn't.

Bees

  • Are no longer attracted to closed eyeblossoms.
  • Can no longer interact with closed eyeblossoms.

Baby cats and wolves

  • Now get a collar with the color that is a mix between the parents collar color if possible.

Creaking

  • An activated creaking doesn't move if a player in Survival or Adventure mode is looking at it.
    • Creakings also have full knockback resistance in that state.
  • Their eyes are now visible when they have the Invisibility effect.
  • Its activate, deactivate, death, spawn & sway subtitles have been changed.

Drowned

  • Prefer to pick tridents from the ground as opposed to other items.

Pillagers and piglins

  • Prefer to pick crossbows from the ground as opposed to other items.

Skeletons, wither skeletons, strays and bogged

  • Prefer to pick bows from the ground as opposed to other items.

Non-mob entities

Experience orb

  • Physics were changed. They are now bouncy when falling from a height.[4]

World generation

Woodland mansions

  • Loot chests can now contain resin clumps, not resin bricks.

Gameplay

Damage

  • Players no longer receive 3 seconds of damage immunity when spawning, respawning, or joining a world or server.

General

Client.jar

  • New entry point net.minecraft.client.data.Main is present in client jar, with similar command line structure as data generator in server jar.
    • Available options: --client - generates assets directory.

Data component format

  • minecraft:custom_model_data
    • Now has more fields to accommodate new uses by various model property getters.
    • Fields:
      • floats - list of floats.
      • flags - list of booleans.
      • strings - list of strings.
      • colors - list of RGB color values.

Data pack

  • The pack format version is now 59.
  • The tooltip warning on item blocks with the minecraft:block_entity_data component can no longer be hidden by any other component.
  • Field model in minecraft:equippable component has been renamed to asset_id.
  • Field item_model_index in trim_material registry has been removed (no longer needed for model rendering).

Item models

  • New format has been introduced for describing item models. See Items model definition.
  • Item models are selected based on minecraft:item_model component.
    • Model for item with item_model=foo:bar is stored in /assets/foo/items/bar.json.
  • Format of file is
    { 
      "model": {
        "type": <item model type>,
        <item model type specific fields>
      } 
    }
    
  • overrides section has been removed from existing block models.
  • There are no longer any hardcoded paths in models directory - models are now only used if referenced by definitions in items or blockstates directories.
  • Models in models/item that only redirect to a block model have been removed.
    • In such cases, the item model refers to the models/block model directly.

Item modifiers

  • minecraft:set_custom_model_data
    • Now has more fields to accommodate more complex component structure.
    • Fields:
      • floats - optional list operation of number providers.
      • flags - optional list operation of boolean values.
      • strings - optional list operation of string values.
      • colors - optional list operation of RGB values or number providers.
    • List operation uses same format as explosions field in set_fireworks modifier.
    • For example
      {
        "function": "set_custom_model_data",
        "floats": {
          "values": [2],
          "mode": "replace_all"
        }
      }
      
      sets replaces floats with value 2.

Missing textures and models

  • If a model which the game uses directly (as opposed to template models) fails to specify a texture to use for particles, an error is now printed to the game log[5].
  • If a model does not attempt to route a texture reference to an actual texture file, an error is logged once again[6].

Protocol

  • Client now sends the minecraft:player_loaded packet once the loading terrain screen has closed after initially loading into the world, and after closing the loading screen when respawning.

Resource pack

  • The pack format version is now 44.
  • Invalid minecraft:filled_map items in an Item Frame (map item without the map_id component) no longer change the size of the frame.
  • The equipment directory has been moved one level up, i.e. models/equipment/ becomes equipment/.
  • broken_elytra model and texture has been renamed to elytra_broken.

Server.jar

  • Data generator in server jar (net.minecraft.data.Main) no longer generates assets directory.
    • --client option has been removed from command line for this entry point.

Tags

  • Removed the #tall_flowers block and item tags.
  • Removed the #flowers item tag.
  • Put the contents of the removed #tall_flowers block tag into the #flowers block tag.
  • Put the contents of the removed #flowers item tag, except closed_eyeblossom into the #bee_food item tag.
  • Added resin_clump to the #replaceable block tag.
  • Added resin_brick_slab, and resin_brick_stairs into the #slabs, and #stairs block and item tags respectively.
  • Removed the #small_flowers block tag from the #sword_efficient block tag.

Fixes

78 issues fixed

From released versions before 1.21

  • MC-212 – Fall damage is ignored for a couple of seconds when reloading into LAN or singleplayer worlds.
  • MC-21650 – Player is immune to damage for a few seconds after saving the world and returning.
  • MC-99848 – Sprinting isn't canceled upon receiving the blindness effect.
  • MC-158872 – Models use model of last matched predicate, not closest match.
  • MC-159508Ctrl + Pick block on beehives and nests does not copy their honey levels.
  • MC-160051 – Players can prevent fire damage by reloading world/re-joining server.
  • MC-166072 – Custom Trident model ignores "layer0" and "elements" section.
  • MC-186341 – Command autocomplete doesn't consider parts after a slash.
  • MC-193176 – Most mobs with CanPickUpLoot prefer swords over axes and will downgrade their weapon.
  • MC-193313 – Mob item pick up behavior is not distinct resulting in mobs constantly dropping and picking up items.
  • MC-193336 – Heads/skulls don't render when held by an enderman or as block display entities.
  • MC-201940 – After dying, Ender Dragon body part hitboxes do not move upwards with the main hitbox.
  • MC-202250 – Sprinting particles appear when sprinting inside of boats in shallow water.
  • MC-206684 – Spyglass particles have no associated texture.
  • MC-229142 – Spyglass texture doesn't allow override through resource pack.
  • MC-236295 – The game does not report absent particle texture references in models to the output log.
  • MC-249079 – Sculk veins are not mirrored correctly from behind.
  • MC-260216 – Decorated pots aren't rendered when held by endermen or as block display entities.
  • MC-267343 – Sprinting isn't canceled upon riding entities.
  • MC-269616 – Telemetry Data scroll bar does not have a background.
  • MC-269749 – Report Player scroll bar does not have a background.
  • MC-270136 – Thrown projectiles with custom_model_data do not maintain proper particles when breaking.
  • MC-270529 – Air's model does not define a particle texture, causing issues.
  • MC-271786 – Empty block states in noise_provider does not cause validation to fail, causing crash.

From 1.21

  • MC-272994 – Allays assigned to a player can be set on fire with sweeping and fire aspect.
  • MC-273407 – Block entity items with custom block states keep them as components when placed.
  • MC-273450 – Mobs with CanPickUpLoot:1b behave inconsistently with the mace / trident.
  • MC-273522 – Mobs with CanPickUpLoot no longer pick up enchanted items after picking up an unenchanted item.
  • MC-273635 – Trial spawners forget their designated mob when placed by player out of creative mode, assigned by spawn eggs.
  • MC-274268 – Trial Spawner keeps flashing after cooldown ends.
  • MC-275011 – Instant mine does not work when standing inside of cobwebs.

From 1.21.1

  • MC-275338 – Sprint particles can be seen if you mount a minecart (with no rail below it) while running.

From 1.21.2

  • MC-275215 – Experiments warning goes off the screen if viewed at low window size.
  • MC-276110honey_level model predicate range is 1 for level 5 and 0 for levels 1-4.
  • MC-276115 – New Bee Nest and Beehive item models don't use the block parent.
  • MC-276412 – Custom item models set to a shield and various other items all create invisible items.
  • MC-276654item_model item component breaks on trident.
  • MC-276728 – Tridents and spyglasses appear dark in the inventory if given a custom item model for a block.
  • MC-276730 – Bundles appear dark in the inventory if given a custom item model for a block and then scrolled through.
  • MC-276731 – Items which use entity models will not render another entity model if specified via item model component.
  • MC-276732 – Colors will carry over from item ID to target model.
  • MC-276764 – Eggs with custom models use the particles from that model, but snowballs do not.
  • MC-276769 – Missing texture when throwing eggs with certain template models.
  • MC-276771 – Missing texture when a damageable item with one of several template models is destroyed.
  • MC-276828 – Minecraft no longer prints an error to the game log when a model fails to define a texture.
  • MC-276847 – Bundles given the model of a different bundle will not preserve their color when scrolled through.
  • MC-277082 – Creakings take knockback from wind charges.
  • MC-277092 – The eyes of creakings aren't visible when creakings have the invisibility effect.
  • MC-277149 – Creakings are affected by knockback from mace smash attacks.
  • MC-277243 – Creakings take knockback from Punch bows.
  • MC-277264 – The Creaking can be knocked back by zoglins.
  • MC-277916 – Containers are locked when upgrading a world from certain versions.

From 1.21.3

  • MC-277961 – Experience orbs incorrectly bounce up.
  • MC-278071 – "minecraft.used:minecraft.trident" doesn't increase when throwing a trident.

From the previous development version

  • MC-277925 – Resin Brick Stairs are not part of the #stairs block and item tags.
  • MC-277926 – Resin Brick Slab is not part of the #slab block and item tags.
  • MC-277929 – The game crashes when attempting to use the void preset.
  • MC-277930 – Eyeblossom subtitles are inverted.
  • MC-277931 – Incorrect display on the map of the flower Closed and Open Eyeblossom.
  • MC-277932 – Resin Clump is not part of the #replaceable block tag.
  • MC-277933 – Smithing Table doesn't show a Clump icon for ingredient slot.
  • MC-277939 – Programmer Art's empty slot icons may not have been correctly updated for 24w44a.
  • MC-277941 – resin_clump is not mirrored correctly from behind.
  • MC-277945 – Incorrect verb form in "Elytra swooshes" subtitle.
  • MC-277950 – Open potted eyeblossom is shaded (flower_pot_cross_emissive).
  • MC-277951 – Eyeblossom is placed in an unexpected position in the Creative inventory.
  • MC-277952 – Sprinting isn't canceled upon flying with elytra.
  • MC-277954 – Creaking Heart underwater plays spawning sounds in a loop.
  • MC-277955 – Using a loom crashes the game.
  • MC-277964 – Resin is not generated when a creaking is attacked by a wolf owned by a player.
  • MC-277966 – Creaking does not generate resin from player-caused explosions.
  • MC-277967 – The game crashes when certain explosions occur near a creaking in its death animation.
  • MC-277970 – Hanging signs don't display chains when attached to the side of a block.
  • MC-277972 – You can no longer swim when crouched under a slab.
  • MC-277983 – Naturally-spawned creaking hearts drop experience when broken in Creative mode.
  • MC-277994 – Picking a decorated pot or a shulker box always keeps its container data.
  • MC-278002 – Sculk sensors are not activated upon resin clumps spawning from creaking hearts.
  • MC-278004 – Hitting a creaking heart with a wind charge kills the creaking.

Videos

Videos made by Slicedlime:

References

  1. "Minecraft Snapshot 24w45a"Minecraft.net, November 6, 2024.
  2. MC-278130 — Known Issue: Resin bricks cannot be placed or used inside smithing tables
  3. MC-278131 — Known Issue: Resin clumps can be placed inside smithing tables
  4. This was added alongside a fix for a bug which unintentionally made them bouncy several versions earlier. MC-277961
  5. MC-236295
  6. MC-276828

Navigation