Wednesday, May 22, 2024 at 2:44 PM
Minecraft Snapshot 24w21a
This week we're bringing a Snapshot you can vibe out to! This time around we're bringing data-driven jukeboxes, a new gamerule, and a bunch of fixes.
Happy vibing!
Changes#
- It seems we cooked a bit too hard with the new Piston sounds last week, which is why we're reverting back to the old sounds again
- Lowered volume of original sounds to address initial feedback of Pistons being too loud
- Pause menu now can include a list of links provided by server
- Improvements to the disconnection screen
- Any member of a Realm can now upgrade a world
- In the Realms main screen, all online players of a Realm are displayed
- When hovered, a tooltip is shown with each player's head and name
Vault#
- Added sound effect to help players understand they've already looted a vault
Trial Chambers#
- Trial Chambers are less likely to generate in the Deep Dark
Animal Panic#
- Animals now panic based on the damage caused by predefined Damage Source Types
- The panic lasts for 2 seconds after the damage is dealt. The following damage type tags are used by vanilla animals:
panic_environmental_causes
: Used by Wolves, Polar Bears (adults) and Pandaspanic_causes
: Used by all other animals and baby Polar Bears
Server links#
- Servers can now provide a list of links to clients
- If client has received any links, a new button called "Server Links..." will show up in pause game screen
- To make space for that button, "Report Bugs" and "Give Feedback" buttons might be moved into a sub-screen if necessary
Disconnection screen improvements#
- In some cases client will now store detailed information about disconnection (similar to crash reports)
- When that happens, new "Open Disconnection Report Directory" button will be added to the disconnection screen
- When server provides link for bug reporting, it will be also be added as a button to the disconnection screen
Technical Changes#
- Resource Pack version is now 34
- Data Pack version is now 45
- Server can now provide list of links to client
- Servers can add custom details to crash and disconnection reports
Gamerules#
- Added new
entitiesWithPassengersCanUsePortals
gamerule- When
true
, entities with passengers can use Nether Portals, End Portals and End Gateways - Defaults to
false
Server links#
- New clientbound packet
server_links
is available in configuration
and game
protocols - On receival, client will make links available from pause menu
- Link labels can be built-in or custom (i.e. any text)
- Some built-ins also have special fuctionality:
report_bug
:- link will be displayed on disconnection screen, if disconnection was caused by packet handling error
- link will be included as a comment in disconnection report
- Added
bug-report-link
to server.properties
to allow vanilla server to configure report_bug
links- If this field is non-empty, server will send that link to clients
- This field should contain well-formed URL
Custom server crash report details#
- New clientbound packet
custom_report_details
is available in configuration
and game
protocols - This packet contains a list of key-value text entries
- If received, contents of this packet will be added in a separate section to any crash or disconnection report generated during connection to this server
Data Pack Version 45#
- Jukebox songs are now data-driven
- Added new command syntax
Jukebox Songs#
- Added a jukebox song registry which is loaded from data packs
- Path to jukebox song definition is
data/<namespace>/jukebox_song/<id>.json
- Fields in definition:
sound_event
- sound event that is streamed when played by a Jukeboxdescription
- the name of the song that will be displayed in the hover tooltip represented as a Text Componentlength_in_seconds
- length of the song in seconds as a positive floatcomparator_output
- the redstone signal output by a comparator when played in a Jukebox, between 0 and 15
- Added
minecraft:jukebox_playable
item stack component
jukebox_playable
item component#
- If set, the item can be inserted into Jukeboxes to play a song
- Format: object with fields
song
: jukebox song id- The song that will be played by the Jukebox when this item stack is inserted
show_in_tooltip
: boolean (default: true)- If false, the name of the song will not be shown in the tooltip
- This was formerly controlled by the
hide_additional_tooltip
component on Music Discs
- e.g.
jukebox_playable={song:'minecraft:precipice'}
, jukebox_playable={song:'minecraft:precipice', show_in_tooltip:false}
Attributes#
- Attribute modifiers no longer have a UUID and name combination
- Instead, attribute modifiers are now uniquely identified by a namespaced ID, similar to other resources
- The ID of a modifier uniquely identifies it in the set of modifiers for a single attribute
- Using the same ID for different modifiers is allowed as long as the modifiers are for different attributes
- Existing built-in modifiers will be upgraded to new IDs
- Existing custom modifiers will be upgraded to the GUID as an ID in the
minecraft
namespace
attribute
command#
- The
uuid
and name
arguments have been replaced with a singular id
argument
Item Stack Attribute Modifiers#
- The
uuid
and name
fields have been removed. - Attribute Modifiers now have an
id
(namespaced ID) field- This is a unique identifier per attribute for the modifier
Entity Attributes#
- Attributes are now stored as
attributes
- Attribute format:
id
, renamed from Name
base
, renamed from Base
modifiers
, renamed from Modifiers
- Now stores modifiers in the same format as modifiers in
attribute_modifiers
item stack components:id
, replaces UUID
and Name
amount
, renamed from Amount
operation
, renamed from Operation
, now a named constant instead of an int:add_value
- previously 0
add_multiplied_base
- previously 1
add_multiplied_total
- previously 2
Enchantments#
Attribute Effects#
Fields:
name
& uuid
have been removed, replaced by id
id
: The namespaced ID of the Attribute Modifier to add- This will be postfixed with the slot name when the enchanted item is equipped in a slot
- Must be unique to avoid different Enchantments (or other systems) interfering with each others
Entity Effect Types#
damage_item
#
The damage is not applied to items held by players in creative mode.
Hit Block Parameters#
- Entities:
this
- Enchantment Level
- Origin
- Block State
Effect Components#
minecraft:hit_block
:- Condition Context: changed to take a Hit Block Parameter -
this
is the entity hitting the Block
Directory renames#
- Some registry types that used legacy datapack directory names (based on plural name of element) have been renamed to match registry name
- Affected directories:
structures
-> structure
advancements
-> advancement
recipes
-> recipe
loot_tables
-> loot_table
predicates
-> predicate
item_modifiers
-> item_modifier
functions
-> function
tags/functions
-> tags/function
- Removed
music_discs
item tag
air
: All blocks that resemble air
- Removed
breeze_immune_to
damage type tag - Added
panic_environmental_causes
: Damage types that cause panic in aggressive animals that can panic, i.e. mobs that retaliate when attacked - Added
panic_causes
: Damage types that cause panic in passive animals, i.e. mobs that run away when attacked
Predicates#
Jukebox Playable Predicate#
New item sub-predicate available as jukebox_playable
.
- Matcher for
jukebox_playable
component (like Music Discs) - Fields:
song
- optional id, list of ids or tag for jukebox song to be matched
Player Predicate#
- The
gamemode
field has been changed to accept a list of gamemodes
Commands#
- Added
@n
entity selector, selecting the nearest entity- This functions as
@e[sort=nearest,limit=1]
- Additional requirements may still be provided; for example:
@n[type=pig]
will select the closest Pig
Resource Pack Version 34#
- Added the
block.vault.reject_rewarded_player
sound event - Changes to Shaders
Shaders#
- The
blend
block in core shader definitions has been removed, as it was not used - The
position_color_tex
shader has been removed, replaced with the pre-existing position_tex_color
- The
glint_direct
shader has been removed, replaced with the pre-existing glint
shader - The
armor_glint
shader has been removed, as it was unused
Fixed bugs in 24w21a#
- MC-67 Entities with passengers cannot travel through portals
- MC-31819 Hunger saturation depletes on peaceful difficulty
- MC-116279 Non-player entities going through Nether portal do not generate portal in Nether if none exists
- MC-151648 Non-player entities cannot travel through unlinked nether portals
- MC-170103 Untamed wolves only beg for food while being angry and jumping
- MC-260346 Custom music discs cut off when vanilla disc would normally end
- MC-266290 Double doors do not automatically form between waxed and unwaxed copper doors, even of the same variant
- MC-266586 Trial chambers can spawn directly inside the deep dark biome
- MC-266626 Breeze doesn't stop attacking the player when it enters on the same team
- MC-267967 Breezes ignore the deflects_projectiles entity type tag
- MC-268438 Baby armadillos can still eat while rolled up
- MC-269034 Wolves no longer teleport while trying to pathfind out of Lava
- MC-269351 The Bolt Armor Trim cannot be duplicated with Waxed Copper Block
- MC-269370 Sharp lag spike caused by incorrect upper limit on particles created by mace smash attack
- MC-269460 Thorns enchantment doesn't work when entities are hit by wind charges
- MC-269964 Ominous item spawners are missing an NBT load for spawn_item_after_ticks
- MC-269988 New potion effects don't apply their respective behaviors when creeper explodes
- MC-270024 When drinking ominous bottles, bad omen of higher levels can be overriden by lower amplifiers
- MC-270377 Wind charges can be hit and redirected the moment they are thrown
- MC-270573 Mounted entities are immune to wind charge damage
- MC-270808 Any item in the armor.body slot protects wolves from taking damage
- MC-271458 Channeling tridents no longer summon lightning bolt every time hitting lightning rod under thunderstorm
- MC-271573 Attribute Enchantments Don't Behave Properly on Armor
- MC-271634 Custom enchantments don't appear in the creative menu
- MC-271718 Crash when randomized_int_state_provider is applied to blocks lacking the property
- MC-271753 Crash due to overflow inside cost calculation in by_cost_with_difficulty
- MC-271856 Crossbows enchanted with Quick Charge do not benefit from its effects when used in the offhand
- MC-271868 Frost walker replaces flowing water now
- MC-271901 Entity effect "play_sound" Field "pitch" value upper limit is 1.0 instead of 2.0
- MC-271911 Frost walker no longer works with void or cave air
- MC-271914 Soul speed enchantment doesn't emit particles when the entity is controlled by a player
- MC-272039 Soul Speed uses durability in creative mode
- MC-272042 If players have max health over 20 and die, when they respawn they will have 20 health instead of their max health
- MC-272043 The game crashes when entities die while having the oozing effect
- MC-272075 Attempting to step up while controlling entity and moving fast often glitches
- MC-272084 Creepers with potion effects no longer create area effect clouds upon exploding
- MC-272182 Knowledge Books no longer function properly with a stack size of 1 in survival/adventure mode