{
"title": "Minecraft 1.20.2",
"images": [
"1.20.2 banner.jpg",
"Java Edition 1.20.2.png"
],
"rows": [
{
"field": "''(link to Java Edition article, displayed as Java Edition)''",
"label": "(link to Edition article, displayed as Edition)"
},
{
"field": "September 21, 2023",
"label": "Release date"
},
{
"field": "<div class=\"hlist\"><span style=\"white-space:nowrap;\">(link to :Category:Java Edition 1.20.2 snapshots article, displayed as '''Snapshots''') (4) </span><br/><span style=\"white-space:nowrap;\">(link to :Category:Java Edition 1.20.2 pre-releases article, displayed as '''Pre-releases''') (4) </span><br/><span style=\"white-space:nowrap;\">(link to :Category:Java Edition 1.20.2 release candidates article, displayed as '''Release candidates''') (2) </span><br/>((link to Java Edition 1.20.2/Development versions article, displayed as View all))</div>",
"label": "<span style=\"white-space: normal;\">Development versions</span>"
},
{
"field": "[https://piston-data.mojang.com/v1/objects/82d1974e75fc984c5ed4b038e764e50958ac61a0/client.jar Client] ([https://piston-meta.mojang.com/v1/packages/b994a7ad16326530c7a67e1b700fcd6fb86e1497/1.20.2.json .json])<br />[https://piston-data.mojang.com/v1/objects/5b868151bd02b41319f54c8d4061b8cae84e665c/server.jar Server]",
"label": "(link to Tutorial:Installing a version#Manual version installation article, displayed as Downloads)"
},
{
"field": "[https://piston-data.mojang.com/v1/objects/5c292ff7d3161977041116698e295083fd5ec8f5/client.txt Client]<br />[https://piston-data.mojang.com/v1/objects/dced504a9b5df367ddd3477adac084cea8024ba4/server.txt Server]",
"label": "(link to Obfuscation map article, displayed as Obfuscation maps)"
},
{
"field": "764",
"label": "(link to Protocol version article, displayed as Protocol version)"
},
{
"field": "3578",
"label": "(link to Data version article, displayed as Data version)"
},
{
"field": "18",
"label": "<span style=\"white-space: normal;\">(link to Pack format#List of pack formats article, displayed as Resource pack format)</span>"
},
{
"field": "18",
"label": "<span style=\"white-space: normal;\">(link to Pack format#List of pack formats article, displayed as Data pack format)</span>"
},
{
"field": "<span class=\"plainlinks\">[https://en.wikipedia.org/wiki/Java_version_history#Java_SE_17_.28LTS.29 Java SE 17]</span>",
"label": "<span style=\"white-space: normal;\">Minimum Java version</span>"
}
],
"invimages": [],
"footer": "<table style=\"margin: auto; word-break: break-word;\">\n<tr style=\"background: inherit;\">\n<td style=\"padding: 0.4em\" >[[Java Edition 1.20|<span style=\"margin-right:-0.35em\">β</span>β 1.20]]</td>\n<td rowspan=\"2\" style=\"padding: 0.4em\">'''1.20.2'''</td>\n<td style=\"padding: 0.4em\" rowspan=\"2\">[[Java Edition 1.20.3| 1.20.3 <span style=\"margin-right:-0.35em\">βΊ</span>βΊ]]</td>\n</tr>\n<tr style=\"background: inherit;\">\n<td style=\"padding: 0.4em\">\n[[Java Edition 1.20.1|β 1.20.1]]\n</td>\n</tr>\n</table>"
}
1.20.2 is a minor update to Java Edition, released on September 21, 2023,[1] which adds the "Villager Trade Rebalance" experiment, the /random command, function macros, changes diamond generation, and fixes bugs. It is not compatible with 1.20 β 1.20.1 servers.
#camel_sand_step_sound_blocks: contains #sand, and #concrete_powder.
#concrete_powder: contains all types of concrete powders.
Added the following damage type tags:
#always_kills_armor_stands: contains arrow, trident, mob_projectile, fireball, and wither_skull.
Damage types included in this tag should always fully kill an armor stand.
#no_knockback: contains explosion, player_explosion, and bad_respawn_point.
Causes knockback to not be caused by the damage itself. Used in Vanilla for damage that is caused by events, such as explosions, which apply knockback separately.
Added the following entity tag:
#non_controlling_rider: contains slime, and magma_cube.
Represents entities that don't override their vehicles movement control.
The discount for curing a villager is no longer multiplied if the villager is reinfected and cured again.
Now attempt to spawn an iron golem every 30 seconds instead of 35.
General
Changed mob attack reach calculation.
In horizontal directions, mobs' attack reach are now their bounding box extended in horizontal directions, instead of using horizontal width to determine.
For example, a ravager won't be able to attack through a few block thick walls.
In vertical directions, mobs' attack reach are now the exact vertical range of their bounding box. When there's no overlap between their bounding box and their target's bounding box in vertical direction, they can not attack, in specific:
Riding a medium-sized mob (e.g. horse) can get rid of attacks from short mobs (e.g. baby zombie).
Riding a tall mob (e.g. camel) can get rid of attacks from standard size mobs (e.g. zombie).
Some mob's reaching height now extended (e.g. enderman, safety height changed from 1.5 to 3).
Diamond ore is now generated more frequently in the deepslate layers of the Overworld.
Added a new ore blob placement: Uniform distributed, from height -64 to -4, with blob size 8, generation frequency 2 and a 50% chance of discarding when exposed to air.
Other existing diamond ore placements remain untouched.
Extended command usage, now supported parameters for function macro's variable substitution.
New syntax: /function <name> [<arguments>|with (block <sourcePos>|entity <source>|storage <source>) [<path>]]
New arguments:
arguments: A data compound, enclosed in {}.
Data source: A data source specification, like what could already be used for /data get.
path: An NBT path specification.
The data source and path must specify a compound data entry.
The compound must contain one entry for each variable used in the macro.
More data may be present in the compound and if so is ignored.
Calling a non-macro function with a data compound is silently ignored.
When a macro is called, the values provided are substituted in place of the variable specifications and the resulting commands are executed.
In order to improve performance when repeatedly calling with the same parameter, values in the provided compound which are referenced in macro as parameters are cached.
Any syntax errors in the lines resulting from variable substitution result in the entire function call being skipped.
Values in the SH row now show up as question marks when playing on a server, instead of wrong values.
When hitboxes are displayed through β―+β―, entities that have a passenger display the passenger's attachment point.
Renamed "Debug" row to "Debug charts", and changed its style.
"Pie" chart now called "Profiler" chart.
The charts on the debug screen can now be toggled with the key combinations β―+β― (profiler chart) and β―+β― (FPS and TPS) instead of β―+β― and β―+β―.
Press key combination β―+β― now shows charts for ping and received network traffic.
Debug screen no longer be closed while switching charts.
Multiple charts now can appears at the same time, unless it's conflict with each other.
Current chart layout is kept when debug screen re-enabled.
pack_format field is still required and its format remains unchanged, to allow older game versions to read pack data.
If supported_formats is present, it must contain the value declared in pack_format.
Since this new information is ignored by older versions of the game, they 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 assets and data 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 foo is applied, the file foo/assets/minecraft/textures/bar.png replaces contents of assets/minecraft/textures/bar.png.
pack.mcmeta and pack.png are ignored in overlay directories.
New section called overlays have been added to pack metadata.
It contains an entries field, containing a list of overlays.
Order of application: overlays are stacked from the bottom to top of the list.
For example, if a pack has two overlays: "entries": [{"directory":"A", ...}, {"directory":"B", ...}], the game first looks in B, then A, and then in the top pack directory.
In NBT format for item type potion, lingering_potion, splash_potion, and tipped_arrow:
Renamed CustomPotionEffects to custom_potion_effects.
In NBT format for item type suspicious_stew:
Renamed Effects to effects, also changed following fields in this field:
EffectId (integer) -> id (string, resource location)
EffectDuration -> duration
Protocol
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 don't 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.
Gameplay packets are now packed into bigger TCP-packets to reduce overhead from TCP-headers, significantly reducing network usage.
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 see such clients as disconnected.
Users in configuration phase aren't 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 now negotiates resource pack in the configuration phase.
This means that the player is no longer in world when answering prompts and reloading resources.
Client options are now sent during the configuration network phase when joining a server.
The process of upgrading a pack can be assisted by using an automated Slicer tool.[2]
All textures containing multiple sprites in a sheet for GUI have been split into individual sprites under textures/gui/sprites (automated by Slicer tool).
All textures in the realms namespace have been moved into the minecraft namespace (automated by Slicer tool).
villager2.png has been renamed to villager.png (automated by Slicer tool).
icon/trial_available and realm_status/expires_soon GUI sprites are animated with .mcmeta 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", and "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 notification\more.png have been removed.
The text field background is now a nine-sliced sprite at widget/text_field, and widget/text_field_highlighted.
The scroll bar in lists and text fields is now a nine-sliced sprite at widget/scroller.
Moved all types of concrete powders to newly added block tag #concrete_powder from #mineable/shovel block tag, then added #concrete_powder to #mineable/shovel.
Removed entity_roar, and entity_shake from #vibrations, and #warden_can_listen game event tags, then added entity_action, and unequip to them.
Added chorus_flower, and spore_blossom to #flowers block and item tags.
Changed the trading mechanism of librarians selling enchanted books.
Instead of offering every possible enchanted book, librarians are now offering specific enchanted books depending on which biome they come from.
Jungle and swamp villages do not generate naturally. Thus, players must breed villagers or cure zombie villagers in these biomes to access their trades.
All tradable enchanted books now split to special books and normal books.
Special books have a specific enchantment with a fixed level, and are only available from master librarians with full XP.
Normal books have a specific enchantment without a fixed level, just like before.
Added seven new maps which cartographers can sell, depending on the biome they come from.
Jungle and swamp villages do not generate naturally. Thus, players must breed villagers or cure zombie villagers in these biomes to access their trades.
Village maps points to a village in a specific biome. Jungle explorer map points to a jungle pyramid. Swamp explorer map points to a swamp hut.
MC-256482 β Sculk sensors are not activated upon camels standing up or sitting down.
MC-256485 β Camels that spawn within villages can spawn inside blocks.
MC-256549 β Baby camels that aren't moving face in the direction of their adults when pathfinding to players that are tempting them.
MC-256641 β Bamboo fence and fence gate aren't grouped with the other fences and fence gates in the crafting table.
MC-256652 β Endermen are almost unable to attack Players on a Camel.
MC-256675 β Z-fighting occurs between the legs of the camel and the texture of the saddle when it is sitting.
MC-256690 β Camels attempt to stand up when blocks are placed over them, causing them to take suffocation damage if blocks are at eye level.
MC-256696 β Player sneaks client-side while riding a camel in a three-block high space.
MC-256737 β Sniffers, frogs, goats, and camels prioritize pathfinding to their lover when fed over panicking when being damaged.
MC-256777 β The two characters used within the tab list to show players' health are untranslatable.
MC-257342 β You get slowed down when riding a camel in a 3 block tall area.
MC-257431 β Bamboo fence gates utilize the wrong textures.
MC-257628 β Sculk sensors are not activated upon camels dashing.
MC-257909 β Zoglins, hoglins, and pandas can still attack players riding camels.
MC-258379 β Parity issue: The locations of camels' ears differ across platforms.
MC-258620 β Piglins barter every 121 game ticks instead of every 120 game ticks.
MC-259152 β Player's model displayed in inventory while sneaking differs between the versions.
MC-259382 β Message Failed to get element is logged repeatedly when giving yourself armor with invalid trimming pattern or material.
MC-259401 β Lapis lazuli icons in enchanting table and smithing table are inconsistent.
MC-259452 β Baby Camel's laying down/getting up sounds are not sped up.
MC-259475 β The rotation of controlling passengers on sitting camels is sometimes restricted while adjusting your rotation slowly.
MC-259769 β Firework explosions no longer deal knockback to entities.
MC-259794 β Armor enchanted with curse of binding cannot be swapped via right-clicking in creative mode.
MC-259860 β Sitting camels that have passengers continuously look up and down for other players.
MC-259915 β Item display position interpolation not working.
MC-260054 β Pink Petals hitbox does not adjust to contents.
MC-260058 β Pick Block does not work properly for blank decorated pots.
MC-260085 β Particles are created when using a brush on a barrier.
MC-260096 β Decorated pots don't have creative mode tooltips.
MC-260485 β The /item command cannot remove items within chiseled bookshelves.
MC-260490 β Passenger's riding position is too low for non-default-sized mobs.
MC-260604 β Terrible loudness following consecutive use of /fill.
MC-260675 β Decorated pots render blank on the first frame after being placed.
MC-260819 β The death.attack.message_too_long string is missing an article before the word "stripped".
MC-260844 β Right-clicking will select/move worlds in the multiplayer and singleplayer screens.
MC-260968 β The narrator does not narrate the word "Experimental" in the world selection screen.
MC-261119 β Accessibility button in the Welcome screen needs its own string.
MC-261123 β item_display entity breaks certain mobs' AI when being used as a passenger.
MC-261182 β Sign color looks different in world and in editing screen.
MC-261261 β Sculk sensors do not detect when a chiseled bookshelf changes via hoppers and droppers.
MC-261411 β All Smithing Templates share the same translation key.
MC-261420 β Sculk sensor and calibrated sculk sensor don't detect a witch drinking a potion.
MC-261427 β Sculk sensors and calibrated sculk sensors don't detect totem of undying activating.
MC-261440 β Resizing the window makes it so you can't change names in anvils.
MC-261502 β Prompting resource pack disappears if player dies before installing or disconnecting.
MC-261926 β Cannot join a realm because of realms ad.
MC-261951 β Dragon/piglin head does not move when placed on a jukebox that is playing a record.
MC-262132 β Pigstep music disc is in wrong location in the creative menu.
MC-262295 β Warped and Crimson hanging signs uses their respective plank sounds, despite their stripped stems having unique sounds.
MC-262442 β Camels stand a bit too close to players that are tempting them.
MC-262620 β Llamas and trader llamas need to be tamed in order to be ridden by the mob which is inconsistent with other rideable mobs.
MC-262638 β When a Size:0 slime and magma cube rides on some mobs the rendering position is too low.
MC-262804 β Players' swimming animations are jittery for other players.
MC-263133 β Inconsistent word usage in Out of Memory screen.
MC-263203 β Tadpoles riding striders are rendered inside of them.
From 1.20
MC-261369 β Washed banner does not stack with blank banner.
MC-261611 β Placing blocks against a waxed sign does not play the block's placement sound.
MC-261657 β Sculk sensor range is still spherical, creating different outputs from within a given block.
MC-261739 β Bamboo raft next to visually half blocks z-fights.
MC-261965 β The "Glow and Behold!" advancement is granted when interacting with empty signs while holding glow ink sacs, despite no glow ink sacs being consumed.
MC-262108 β Smithing table GUI issue with custom recipes.
MC-262436 β Copying a pot in creative does not save NBT data.
MC-262591 β Camels emit mob interaction vibrations instead of item consumption vibrations when eating cactus.
MC-262613 β Mobs can't control some rideable mobs.
MC-262615 β Ridden camels need to be equipped with a saddle before they can be moved by mob control which is inconsistent with other rideable mobs.
MC-262636 β Mobs with passengers that are slimes or magma cubes can't move and don't function correctly.
MC-262720 β One of the pink petals' stems has an incomplete model.
MC-262751 β Blank decorated pot's NBT depends on method used to obtain it.
MC-262754 β Change in AbstractScrollWidget breaks MultiLineEditBox click-to-move-cursor behavior.
MC-262766 β NBSP is a valid invisible character that can be added into Book titles so that they have blank names.
MC-262947 β The "Smithing with Style" advancement doesn't grant experience upon completion.
MC-263011 β Sniffers can sniff out and follow players from incredibly large distances.
MC-263049 β Camels indefinitely dash while in lava.
MC-263126 β Sponges no longer make a sound when absorbing water.
MC-263200 β Entities riding baby sniffers render too high.
MC-263283 β Loading a 1.12.2 structure block with signs on 1.20 removes the text.
MC-263313 β You cannot use the key to initially create a realm.
MC-263322 β When a camel walks on suspicious sand, the sound produced is "camel steps" instead of "camel sands".
MC-263387 β The chat scroll bar no longer renders.