Java Edition 23w31a

23w31a is the first snapshot for Java Edition 1.20.2, released on August 2, 2023, which adds the Villager Trade Rebalance experimental toggle and fixes bugs.

Command format

 * Syntax:  or
 * A new command for randomizing values and controlling random sequences. The  and   forms can be used to draw a random value. In the case of , the resulting value is also shown in chat for all players.
 * A new command for randomizing values and controlling random sequences. The  and   forms can be used to draw a random value. In the case of , the resulting value is also shown in chat for all players.

General

 * Attributes
 * Added the  attribute.
 * Acts similar to, but instead of being the upper bound for  , it is the upper bound for.
 * The mob effect  increases   as well as fills the   to the max when applied.


 * Experiments
 * Added "Villager Trade Rebalance" experimental toggle.


 * Tag
 * Added the  block tag.
 * Contains every concrete powder.
 * Added the  block tag.
 * Contains  and.
 * Added the  entity type tag.
 * Contains entities that don't override their vehicles movement control.
 * Added the  damage type tag.
 * Causes knockback to not be caused by the damage itself.
 * Used for damage that is caused by events, such as explosions, which apply knockback separately.

Blocks

 * Barrier
 * No longer produce fall particles when entities fall on them.
 * No longer create particles when a player brushes them.
 * Can now be waterlogged.


 * Chorus Flower
 * No longer provides support for hanging or standing blocks.


 * Decorated Pots
 * Now have Creative mode tooltips.


 * Diamond Ore
 * Now generated more frequently in the Deepslate layers of the Overworld.


 * Fences and Fence Gates
 * Bamboo fences and fence gates are now grouped with the other ones in the Recipe book menu.


 * Pink Petals
 * The size of the hitbox now increases with the number of petals.


 * Sculk Sensor and Calibrated Sculk Sensor
 * Can now detect following events:
 * Turtles clearing away sand
 * Camels standing up, sitting down, or dashing
 * Witch drinking a potion
 * Totem of Undying activating
 * Added the  game event.
 * It replaces  and


 * Smithing Table
 * Now in the custom recipes, the upgrade material can be sent to the GUI instantly with the shift+left click shortcut.

Items

 * Music Discs
 * The Pigstep disc is now in the right location in the Creative inventory.

Mobs

 * Camels, Frogs, Goats and Sniffers
 * Now panic when damaged while attached to leads.


 * Villagers
 * The discount for curing a villager is no longer multiplied if the villager is reinfected and cured again.

Command Format

 * Can now replace items in jukeboxes.
 * Can now remove items in chiseled bookshelves.
 * Can now remove items in chiseled bookshelves.


 * Added  subcommand
 * Added  subcommand

Gameplay

 * Advancements
 * The "Smithing with Style" advancement now grants 150 experience upon completion.

General

 * Data pack
 * The version is now.


 * Pack Metadata
 * New features have been added to datapacks and resource packs to allow creation of packs that are compatible with multiple versions of the game.
 * Pack metadata now includes an optional field  which describes a range for pack formats that this pack supports.
 * Examples:,  ,
 * field is still required and its format remains unchanged, to allow older game versions to read pack data.
 * If  is present, it must contain the value declared in
 * Since this new information is ignored by older versions of the game, they will always see a "normal", single-version pack, without any extended compatibility.
 * Packs can now contain overlay directories ("overlays").
 * Overlays are sub-packs applied over the "normal" contents of a pack.
 * These directories have the same layout as the top-level pack, including the  and   directories.
 * Overlays can be applied if they support the client's pack format.
 * Overlays can add and replace files, but not remove them.
 * For example, if the overlay  is applied, the file   will replace contents of assets/minecraft/textures/bar.png
 * and  are ignored in overlay directories
 * New section called  have been added to pack metadata.
 * It contains an  field, containing a list of overlays.
 * Every overlay entry has two fields:
 * - range of supported formats
 * - overlay directory (allowed characters: a-z, 0-9, _ and -)
 * Order of application: overlays are stacked from the bottom to top of the list.
 * For example, if a pack has two overlays:, the game will first look in B, then A and then in the top pack directory.


 * Resource pack
 * The version is now.
 * The process of upgrading a pack can be assisted by using an automated Slicer tool.
 * All textures containing multiple sprites in a sheet for GUI have been split into individual sprites under  (automated by Slicer tool).
 * All textures in the  namespace have been moved into the   namespace (automated by Slicer tool).
 * has been renamed to  (automated by Slicer tool).
 * and  GUI sprites are animated with   declarations instead of individual sprites (automated by Slicer tool).
 * The bundle tooltip background is now drawn as a nine-sliced sprite.
 * The icons for the Accessibility, Language, Realms News buttons have been split from their underlying button texture.
 * The Realms Invite button is now drawn as an overlay on the normal button texture.
 * The highlighted texture state for this button has been removed.
 * The highlighted states for Realms invitation number icons have been removed.
 * The exclamation marks on the  have been removed.


 * server.properties
 * Added new  option (defaults to  ).
 * When set to, will prevent player IPs from being included in the log when players join the game.


 * Telemetry
 * Added a button to the Telemetry Data Collection Screen that links to the Microsoft Privacy Statement.


 * Other
 * History of used commands is now saved and accessible across worlds.
 * The last 50 commands that are sent in chat will be remembered across game sessions.
 * The command and chat history can be accessed by pressing up or down arrows in the chat.
 * Regular chat is only persisted within the same game session (leaving a server or world clears them).
 * Recent commands are stored in  in the game folder.
 * Optimized the way chunks are sent to clients to allow players with low-bandwidth internet connections to play on multiplayer servers.
 * Chunks are no longer sent over the network to the client in one big continuous batch.
 * They are instead sent in smaller batches depending on the available bandwidth. This means that:
 * Clients with extremely low-bandwidth connections will not time out while loading the world.
 * Clients with low-bandwidth connections can interact with the world while some chunks are still loading.
 * Only chunks within the client's render distance are now sent.
 * Changed network protocol to allow for more data-driven content in the future.
 * Configuration phase automatically starts after login phase (i.e. after client account has been verified) and lasts until the player joins the world (play phase).
 * Clients can stay in configuration phase indefinitely - it's up to server to release it to the world.
 * Servers can also request clients to re-enter the configuration phase after it has entered the play phase.
 * Other players will see such clients as disconnected.
 * Users in configuration phase will not be visible on the player list.
 * Actions allowed in configuration phase (moved from play phase).
 * Configuration of data-driven registries.
 * Configuration of enabled features.
 * Actions shared between configuration and play phases:
 * Application of server resource packs.
 * Update of tags.
 * Exchange of custom packets.
 * Ping and keep-alive packets.
 * The server will now negotiate resource pack in the configuration phase.
 * This means that the player will no longer be in world when answering prompts and reloading resources.
 * Added validation for symbolic links in datapacks and resource packs, to improve safety.
 * This feature expands on symbolic link validation in worlds added in the previous release.
 * The game will now warn users if a pack added via drag and drop contains disallowed symbolic links.
 * Packs containing disallowed symbolic links will not be visible in UI and commands.
 * Additionally, directories and files that are not recognized as packs will no longer be copied via drag and drop.
 * When hitboxes are displayed through F3+B, entities that have a passenger will display the passenger's attachment point.

Experimental changes
These changes are accessible by enabling the "Villager Trade Rebalance" experimental toggle.

Mobs

 * Villager
 * Librarians from different biomes now sell different enchanted books.
 * Each village biome has one special enchantment that is only available from master librarians with full XP, and players must visit all seven village biomes to get the full set of villager enchantments.
 * Jungle and swamp villages do not generate naturally. Players must breed these two secret biome villagers that do not spawn naturally to access their trades.
 * Some enchantments have been removed from village trading and must be found in other ways.


 * Wandering Trader
 * Wandering traders now have lower prices and have a higher amount of each item in stock.
 * Wandering traders now sell the following items: 8 logs (any type), iron pickaxe (enchanted), potion of Invisibility.
 * They will always have one of the new offers as a special trade.
 * Wandering traders can now buy many items, instead of only selling: water bottle, water bucket, milk bucket, fermented spider eye, baked potato, hay bale.
 * They will always have two of these buying offers.

Video
Videos made by slicedlime: