Java Edition 1.13

1.13, also known as Update Aquatic, is an upcoming major update to Minecraft: Java Edition set to be released in Q2 2018. It will focus mainly on ocean content and technical features. This update was originally going to be released as two separate updates with 1.13, originally named Technically Updated, having the technical changes and 1.14, originally named Update Aquatic, having all the ocean features. The update was originally revealed during the MineCon Earth livestream on November 18, 2017.

General

 * Advancements
 * Added 4 new advancements
 * Fishy Business: Catch a fish
 * Tactical fishing: Catch a fish... without a fishing rod!
 * A Throwaway Joke: Throw a trident at something.
 * Very Very Frightening: Strike a Villager with lightning
 * Added three new advancement triggers
 * minecraft:fishing_rod_hooked triggers when a player reels in an item or entity.
 * minecraft:channeled_lightning triggers when a player uses the channeling enchantment to strike a mob.
 * minecraft:filled_bucket triggers when a player fills a bucket.


 * Data packs
 * Like resource packs, but for loot tables, advancements, functions, structures, recipes and tags.
 * Used by placing them into the  folder of a world.
 * Data packs are  files or folders, with a   in the root. See: Tutorials/Creating a resource pack. The packs are located in.
 * Structures will load from  before checking data packs.
 * However, this directory should not be used to distribute structures. Instead, move these files into data packs.
 * Reloadable using.
 * Structure:,   folder containing a namespace folder determining the namespace of its contents
 * A namespace should only contain the following symbols: 01​​234​5​6​78​9abcdefghijklmnopqrstuvwxyz-_
 * Inside the namespace folder, there can be folders for,  ,  ,  ,   and.


 * Death Messages
 * Added a death message for when the player is blown up by a bed in the nether or end.
 * Clicking on "[Intentional Game Design]" opens a link to.
 * Added a death message for when a mob/player pushes someone into the void or when someone uses after being attacked by a mob/player.
 * Added a death message for when the player is killed by somebody using a trident
 * Added a death message for when the player is killed by somebody using a trident
 * Added a death message for when the player is killed by somebody using a trident


 * Debug screen
 * + will now copy your current location to clipboard
 * Now gives a warning before forcing a debug crash.


 * Loot tables
 * Added the  function to loot tables.


 * NBT tags
 * Added the,  ,  ,  ,  ,  , and   NBT tags for turtles.
 * Added the,  ,  , and   NBT tags for phantoms.


 * Options
 * FS (Fullscreen) Resolution
 * Is used to change the resolution.
 * An option in chat settings to toggle automatic command suggestions (defaults on, otherwise hit tab to bring them up).
 * Options when editing a world to make a backup and open the backups folder.
 * Added Biome Blend distance video option


 * Particles
 * Added the,  ,  , and   particles.


 * Sounds
 * Added a new sound effect of squids shooting ink.
 * Added underwater ambience sounds


 * Statistics
 * Added the  statistic.
 * Used by phantoms.
 * Reset when the player leaves their bed, and when the player dies.


 * Status effects
 * Added Conduit Power status effect
 * Gives the player unlimited water breathing
 * Gives the player underwater night vision effect
 * Gives the player a haste effect (allowing them to mine faster underwater).
 * Added Slow Falling status effect
 * Causes the player to descend at a much slower rate, and not take any damage when hitting the ground
 * This allows the player to jump further than normal
 * If the player is sprinting while under the Slow Falling status effect, they will be able to jump across a gap of over 5$1⁄2$ blocks, compared to 4 with normal sprinting
 * Crops will not get destroyed if the player lands on them with the Slow Falling status effect
 * Higher levels do not change the rate of descent


 * Tags
 * Items, blocks and functions can be "tagged" with an ID.
 * Block tags can be used when testing for blocks in the world.
 * Items tags can be used when testing for items in inventories.
 * Function tags can be used when calling functions using commands or advancements.
 * Functions tagged in  will run every tick at the beginning of the tick.
 * Functions tagged in  will run once after a (re)load.
 * Tags are created using data packs in,  , and.
 * When overriding a tag from a different data pack, you can choose to replace or append.
 * By default all tags append if another data pack created the tag.
 * Adding  to your tag definition will make the tag overwrite instead.
 * For example:
 * This will create a block tag called.
 * The json file contains a list of all blocks that should be "tagged".
 * This list can also contain other tags of the same type.
 * You can add for example  in a tag value list to reference another tag called.
 * Self referencing is not possible.
 * There are 24 vanilla tags for both items and blocks:,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  ,  , and.
 * There are 5 extra vanilla tags for blocks:,  ,  ,  , and.
 * There is 1 extra vanilla tag for items:.
 * Advancement item predicates now support item s.


 * Water physics
 * Water can now be placed in the following blocks: chests, trapped chests, stairs, slabs, fences, walls, iron bars, glass panes, ender chests, trapdoors, ladders, and signs
 * Water can flow out these blocks, but can not flow into them
 * When full of water, they will count as water blocks for all gameplay (such as swimming)
 * Water will flow out of all faces of the block except for solid faces.
 * Removed the blocks  and.
 * All of the blocks that water can be placed in now have the block state.
 * Blocks such as bubble column or kelp will always count as a water source.
 * When water spreads and would later turn into a source block, it now immediately just places a source block.


 * Other
 * valid_spawn block tag
 * There's now a distinction between scheduled "liquid ticks" and "block ticks"

Gameplay

 * Enchantments
 * Channeling
 * Only has one level.
 * Used on tridents to summon a lightning bolt on impact with a mob during storms.
 * Requires the target mob to be directly under an open sky and in a biome where it is raining.
 * Impaling
 * Goes up to level V.
 * Used on tridents to deal more damage to sea creatures.
 * Loyalty
 * Goes up to level III.
 * Used on tridents to make it return when thrown.
 * Riptide
 * Goes up to level III.
 * Not compatible with Loyalty or Channeling
 * Used on tridents to launch the player when thrown while in water or rain. Riptide will not throw the trident, but instead launch you forwards
 * If the player is not in water and it is not raining, the player is no longer able to throw tridents enchanted with Riptide, but they still deal melee damage
 * Players display a spinning animation when dashing


 * Map markers
 * Added the ability to put markers on maps.
 * Right click on a banner with a map to add it to the map.
 * Right click on the same banner again to remove it.
 * That map will show the base color of the banner at that spot.
 * Named banners will show their name on the map.
 * If a banner is destroyed, it will disappear when you get close while holding the map.
 * Uses the new  nbt for maps.


 * Movement
 * When sprinting while in water, the player will now swim on the surface.
 * Much faster than walking/running in water before.
 * Pressing shift causes the player to rapidly dive down.
 * Sprinting at the surface of water doesn't make you swim, instead you stay at the same altitude constantly.
 * The players hitbox is only as large as 0.6×0.6 blocks (same as while flying with an elytra) while swimming.
 * Vertically and horizontally, the player can fit through a one block gap like this.

Command format

 * General
 * A command UI when typing commands in the chat.
 * Different components of commands will be displayed in different colors.
 * Errors will be displayed in red without having to run the command.
 * Added command suggestions for entity selectors.
 * An  argument in target selectors.
 * A new command parsing library known as brigadier.


 * Coordinates
 * Added a new local coordinate type in commands using.
 * When specifying coordinates in a command, you can now use  to specify local coordinates instead of world coordinates.
 * The axes used for local coordinates are relative to the execution rotation, defaulting to  (south).
 * Like world coordinates, they are by default measured from the base of an entity.
 * The syntax is:
 * is the amount of blocks in the specified direction.


 * Specific commands
 * A command that allows the player to get, merge, and remove entity and block nbt data
 * Will return the NBT data from the block at . A   can be specified to only retrieve that nbt data. Numeric values will be set as the   of the command, strings will set set the length of the string as the , lists will set the number of elements in the list as the  , and compounds will set the number of tags that are directly in that compound as the  . An optional   can be provided to scale the number retrieved.
 * Will return the NBT data from one  entity. A   can be specified to only retrieve that nbt data. Numeric values will be set as the   of the command, strings will set set the length of the string as the , lists will set the number of elements in the list as the  , and compounds will set the number of tags that are directly in that compound as the  . An optional   can be provided to scale the number retrieved.
 * Will merge the block nbt data at  with the specified   data.
 * Will merge the entity nbt data from  with the specified   data. Merging player nbt data is not allowed.
 * Will remove nbt data at  from the block at.
 * Will remove nbt data at  from one   entity. Removing player nbt data is not allowed.
 * Data paths look like this:.
 * means foo's child called bar.
 * means element 0 of foo.
 * "quoted strings" may be used if a name of a key needs to be escaped.
 * Examples of old commands:
 * is now
 * is now
 * Examples of new functionalities:
 * means foo's child called bar.
 * means element 0 of foo.
 * "quoted strings" may be used if a name of a key needs to be escaped.
 * Examples of old commands:
 * is now
 * is now
 * Examples of new functionalities:


 * A command to control loaded data packs.
 * Has the following subcommands:
 * - will enable the specific pack.
 * - will disable the specific pack.
 * - will list all data packs, or only the available/enabled ones.
 * Data packs are enabled by default, but if you disable it you can re-enable it with these commands:
 * - will enable the specific pack, putting it in its default position.
 * - will enable the specific pack, putting it before any other pack (lowest priority)
 * - will enable the specific pack, putting it after any other pack (highest priority)
 * - will enable the specific pack, putting it before (lower priority) pack
 * - will enable the specific pack, putting it after (higher priority) pack
 * - will enable the specific pack, putting it after (higher priority) pack


 * will create a boss bar.
 * is used to target the boss bar and is in the form, for example:  . If no   is specified it defaults to.
 * is the display name of the boss bar and only accepts a JSON text component.
 * will change the name of the boss bar.
 * will change the color of the text (if no color was specified as part of a text component) and the boss bar, defaults to.
 * will change the style of the boss bar, defaults to.
 * Available options are:,  ,  ,  , and.
 * will set the amount of segments.
 * will set the amount of segments to 1.
 * will change the current value of the boss bar, defaults to.
 * will change the maximum value of the boss bar, defaults to.
 * will change the visibility of the boss bar, defaults to
 * will change which players can see the boss bar, defaults to none.
 * will remove the boss bar.
 * will display a list of created boss bars.
 * will return the requested setting as a  of the command.
 * will return the requested setting as a  of the command.


 * Added a clickable teleport link to the command output.
 * Added a clickable teleport link to the command output.


 * Added.
 * Will rotate an entity to face either an entity or a location.
 * Will rotate an entity to face either an entity or a location.
 * Will rotate an entity to face either an entity or a location.


 * Added  and   to.
 * Added  and   to.

Blocks

 * Air variants
 * and.
 * Both have the exact same properties as.
 * is generated in caves.
 * is used internally for blocks above (>255) and below (<0) the world, and in unloaded chunks.
 * Blue ice
 * Generates in icebergs.
 * More slippery than ice and packed ice.
 * Crafted using 9 packed ice.
 * Bubble columns
 * Created by magma blocks or soul sand in water at least 2 blocks deep.
 * Magma blocks columns pull entities down: they will stop items from floating up in water and sink boats.
 * Soul sand columns push entities up.
 * Buttons, pressure plates and trapdoors
 * Now have separate textures for all 6 types of wood.
 * Carved pumpkin
 * A new block that has the old pumpkin texture.
 * Normal pumpkin blocks no longer have a face.
 * Right-clicking a pumpkin block with shears will turn it into a carved pumpkin and make it spit out 4 pumpkin seeds.
 * Conduit
 * Crafted using 1 Heart of the Sea and 8 Nautilus Shells.
 * Can be activated by placing prismarine, prismarine bricks and/or sea lanterns in 5x5 open squares around it.
 * When active, will affect nearby players in water with the Conduit Power status effect.
 * Conduit power stops the breath meter from running out, gives underwater night vision and increases mining speed.
 * A complete structure will fully power the conduit.
 * When active at full power, the range will increase and hostile mobs within 8 blocks will take damage.
 * Emits a strong glow, at light level 15.
 * Coral
 * Comes in 5 different variants, each with a different color: tube (blue), brain (pink), bubble (purple), fire (red), horn (yellow).
 * Can only be placed underwater.
 * Naturally generates in coral reefs.
 * Coral block
 * Comes in the same 5 variants as coral: tube (blue), brain (pink), bubble (purple), fire (red), horn (yellow)
 * Must be mined with a Silk Touch tool in order to drop itself, otherwise they drop dead coral.
 * Each variant has a dead (gray) counterpart.
 * Turns into a dead coral block if none of its six sides are touching water, although not instantly.
 * Dead coral blocks cannot be revived.
 * Like coral, it naturally generates in coral reefs.
 * Coral fans
 * Can be placed underwater on the side of blocks.
 * Naturally generates on the sides of coral blocks in coral reefs.
 * Dried kelp block
 * Smelts 20 items when used as fuel in a furnace.
 * Crafted from dried kelp, and can also be crafted back into dried kelp.
 * Kelp
 * Can only be placed underwater, requiring at least one water block above it.
 * Can be placed on dry land by using the command.
 * Generate in ocean biomes, except warm oceans.
 * Can grow multiple blocks high.
 * Have animated textures.
 * Can be smelted into dry kelp.
 * Prismarine stairs and slabs
 * Both come in 3 variants: prismarine, dark prismarine, and prismarine bricks.
 * Stairs can be crafted with 6 of their respective material.
 * Slabs can be crafted with 3 of their respective material.
 * Sea grass
 * Like kelp, sea grass also comes in a tall variant.
 * Sea grass also has animated textures.
 * Sea grass generates in oceans, rivers, and swamplands.
 * Can additionally be generated when bone meal on any block underwater.
 * Drops from turtles when killed.
 * Sea pickles
 * They generate in warm oceans, especially around coral reefs.
 * Up to 4 of them can be placed on a block.
 * Each one adds 3 to the light level, but only when placed underwater.
 * Can be smelted into lime dye.
 * Shulker Boxes
 * Added a non-dyed shulker box.
 * Stripped logs
 * A smoother variant of logs.
 * Created by right-clicking with an axe on a log.
 * Act as regular logs, and can still be used to craft planks.
 * Turtle eggs
 * Created by breeding turtles.
 * Stepping on turtle eggs will break them.
 * Zombies and zombie pigmen will intentionally step on turtle eggs.
 * After a while, they will be slightly cracked and later very cracked.
 * Very cracked turtle eggs will eventually hatch into baby turtles.

Items

 * Arrow of Slow Falling
 * Gives the player the Slow Falling status effect.
 * Arrow of the Turtle Master
 * Functions the same as the potion of the Turtle Master.
 * Bark blocks
 * Now have an item form and appear in the creative inventory
 * This is true for all 6 types
 * They can now be crafted. 4 logs in a square yield 3 bark.
 * Buried treasure exploration maps
 * Found in underwater ruins chests.
 * Leads the player to buried treasure.
 * Debug stick
 * A technical item used to cycle between different block states.
 * Left clicking cycles through states; right clicking cycles through values. Shift clicking will cycle through the states or values in reverse order.
 * Dried kelp
 * Obtained from smelting kelp
 * Can be eaten, restoring hunger point.
 * Can also be crafted into dried kelp blocks
 * Fish buckets
 * Come in 4 variants: cod, salmon, puffer fish, and tropical fish buckets
 * Obtained by a water bucket on a fish mob
 * When, it will place a water source block and spawn the corresponding fish inside it.
 * Heart of the Sea
 * Used to craft conduits.
 * Not available currently in Survival.
 * Kelp
 * Kelp can be used to place a kelp plant underwater.
 * Kelp can be dried in a furnace to create dried kelp.
 * Mushroom blocks
 * Now appear in the creative inventory
 * Mushroom stems
 * Have an item form and appear in the creative inventory
 * Nautilus Shell
 * Used to craft conduits.
 * Can be obtained by fishing.
 * Drowned can spawn holding a nautilus shell.
 * Petrified oak slab
 * Now has a model
 * Is the old wood slab that acts like a stone slab.
 * Phantom membrane
 * Dropped by phantoms
 * Used to repair elytra
 * Can be brewed into potions of Slow Falling
 * Potion of Slow Falling
 * Brewed with phantom membrane
 * Gives the player the Slow Falling status effect for 1:30
 * Prevents all fall damage.
 * Makes the player fall slower.
 * Prevents the player from trampling crops (even when jumping on top of them).
 * Brewing it with redstone dust will extend the effect duration to 4 minutes.
 * Like all potions, can be turned into splash potion and lingering potion, using gunpowder and dragon's breath.
 * Potion of the Turtle Master
 * Will give Slowness IV and Resistance III for 1 minute.
 * Brewing it with redstone dust will extend the effect duration to 3 minutes.
 * Brewing it with glowstone dust will enhance the effects to Slowness VI and Resistance IV.
 * Like all potions, can be turned into splash potion and lingering potion, using gunpowder and dragon's breath.
 * Scutes
 * Dropped when baby turtles grow up.
 * Can be used to craft turtle shells.
 * Smooth quartz, smooth red sandstone, smooth sandstone, and smooth stone
 * Like bark, they now have an item form, which appears in the creative inventory
 * Spawn eggs
 * Drowned spawn egg
 * Spawns the drowned mob
 * Blue with olive dots
 * Phantom spawn egg
 * Spawns the phantom mob
 * Black with green dots.
 * Dolphin spawn egg
 * Turtle spawn egg
 * Spawns the turtle mob
 * White with cyan dots.
 * Cod spawn egg
 * Spawns the cod fish mob
 * Brown with darker brown dots
 * Salmon spawn egg
 * Spawns the salmon fish mob
 * Red with dark blue dots
 * Puffer fish spawn egg
 * Spawns the puffer fish mob
 * Orange with blue dots
 * Tropical fish spawn egg
 * Spawns the tropical fish mob
 * Orange with silver dots
 * Trident
 * A weapon
 * Can be thrown by it, or be used as a melee weapon by, dealing  damage.
 * Obtainable by killing drowned
 * Turtle shells
 * Crafted from scutes
 * Can be used as a helmet, adding 2 armor points.
 * While equipped and out of water, it will give the player the Water Breathing effect for 10 seconds, essentially giving the player 10 extra second of breath underwater.
 * Can be used to brew the potion of the Turtle Master from an awkward potion.

Mobs

 * Dolphins
 * Spawn in any ocean that isn't frozen.
 * Neutral mobs. Like wolves and zombie pigmen, dolphins will attack in groups if one is angered.
 * Can be fed using raw cod, but they don't breed.
 * Drop cod on death.
 * Play with nearby items by picking them up and dropping them after a very short moment.
 * Occasionally jumps out of water like real-life dolphins.
 * Can also jump between disconnected bodies of water.
 * Chase after boats and jump over water surfaces.
 * They suffocate after spending too much time on land, despite having lungs
 * Drowned
 * Spawn in all oceans and rivers, as well as in underwater ruins
 * Zombies will morph into drowned after a while if they are in water.
 * Drowned can spawn with tridents and nautilus shells, allowing you to get them in survival.
 * Do not float, but can swim (although they prefer to walk).
 * All drowned have a melee attack, and ones with tridents have a ranged attack
 * Like zombies, drowned will attack baby turtles and stomp on and destroy turtle eggs
 * Fish mobs
 * Cod
 * Spawn in cold, normal, and lukewarm ocean biomes.
 * Form groups of up to 9.
 * Salmon
 * Spawn in frozen ocean, cold ocean and river biomes.
 * Form groups of up to 6.
 * Puffer Fish
 * Spawn in lukewarm and warm ocean biomes.
 * Inflate themselves when a player gets near.
 * Will cause 7 seconds of Poison to nearby players.
 * Tropical Fish
 * Spawn in lukewarm and warm ocean biomes
 * Come in 14 different colors and patterns
 * They drop themselves when killed, except for tropical fish, which drop clownfish.
 * Outside of water, they flop around before suffocating.
 * They will slowly flop towards a water source.
 * They can be caught with a water bucket.


 * Phantom (Mob B)
 * Was voted in by viewers of MineCon Earth
 * Spawns at high altitudes, and swoops down in groups of around 3 or 4 to attack players that have not slept in a long time.
 * The player must be above sea level
 * Spawn in the Overworld, sometimes in groups of up to four.
 * Attack players who haven't slept in a while.
 * Are considered to be undead mobs
 * This means that they are harmed by Healing potions, healed by Harming potions, ignored by the Wither, and affected by Smite enchantment
 * Will burn when exposed to sunlight
 * Drops 0-1 phantom membrane.


 * Turtle
 * Water mobs which will make nests comprised of eggs on shorelines throughout various biomes.
 * They will have a baby variant, which will hatch from the eggs, and move into the water when born.
 * Can be bred using sea grass.
 * Spawns on warm beaches (in plains, jungles, swamps, deserts, mesas and savannahs), in groups of 1-5. This is temporary.
 * Will lay eggs in their home beach.
 * Drops 0-2 sea grass upon death.
 * Drops 0-1 bowl when killed with a trident enchanted with Channeling.
 * You can craft scutes into a bigger turtle shell.

World generation

 * Biomes
 * Added  (The End - Floating Islands),   (The End - Medium island),   (The End - High island), and   (The End - Barren island).
 * All 4 generate in different parts of the outer islands of the End, which previously just used the "The End" biome.
 * Added  (Warm Ocean),   (Lukewarm Ocean),   (Cold Ocean),   (Warm Deep Ocean),   (Deep Lukewarm Ocean),   (Deep Cold Ocean), and   (Deep Frozen Ocean), although warm deep oceans don't naturally generate
 * (Frozen Ocean) biomes now generate naturally.


 * Buffet
 * New world type
 * Readded a way to play with single biome worlds.
 * Can be created by selecting Buffet World as a world type.
 * Another way to generate chunks is available.
 * Allows choosing between overworld and end terrain generator
 * There might be more options added in later versions.


 * Buried treasure
 * Has its own  loot table.
 * Maps found in underwater ruins can lead you to them.


 * Coral reefs
 * Generate in warm ocean biomes.
 * Are composed of coral and coral plants
 * This allows coral to generate naturally


 * Icebergs
 * Generate on frozen oceans.


 * Shipwrecks
 * Can be found in oceans and beaches.
 * Contain 1–3 loot chests containing different types of loot depending on the ship.
 * Can generate upright, sideways or upside down.


 * Underwater caves
 * Can come in many variants, including ravines
 * Underwater ravines will often contain magma blocks at the bottom, which will create bubble columns


 * Underwater ruins
 * Come in many different shapes and sizes.
 * Cold ruins can be found in cold and frozen ocean biomes - regardless of depth.
 * Warm ruins can be found in warm, lukewarm, and deep lukewarm ocean biomes.
 * Can generate alone or as part of a big ruined village.
 * Can also generate out of the water. Slightly underground or slightly above sea level.

General

 * The "flattening"
 * Numeric block metadata completely phased out in favor of block states.
 * Split, merged, created, deleted, and renamed a lot of blocks, blockstates and items.
 * Blocks and items previously differing because of damage value have gotten their own id, for example  instead of
 * Damage has been moved to the  tag and is only used by tools and armor; maps use a   tag.
 * Files and commands no longer use  or.
 * Structures do not run an upgrade path for this.
 * To update your structures, load them all in 1.12, then update to 1.13 and save all structures again.


 * Controls
 * The name of keybindings now describes the actual key (e.g. 'LBUTTON' -> 'Left Button', 'BACKSLASH' -> '\')


 * Creative Inventory
 * Because of The "flattening", certain blocks and items have been moved around in their respective groups, for example the Purpur block is now after Obsidian.
 * Mushroom Blocks, farmland and grass path are added to the inventory under the Decoration Blocks group. Additionally, blank firework rockets are added to the Miscellaneous group.


 * Options
 * Removed 3D Anaglyph completely


 * Particles
 * Optimized particle rendering slightly


 * Recipes
 * Custom recipes can now be loaded from data packs in
 * Added a recipe book for the furnace
 * Furnace recipes have been moved to JSON files.
 * They use.
 * is used to determine the time it should take to smelt an item in the furnace.
 * is used to determine the amount of experience a player should get when picking the resulting item out of the furnace manually.
 * Fuel is not included and is still hardcoded.
 * "Unlocked recipe" toasts now show an icon in the top left to specify whether the unlocked recipe is a crafting or smelting recipe.


 * Resource packs
 * Updated format number to
 * The default resource pack can now be moved up and down on the resource pack selection screen.


 * Statistics
 * Statistics are being updated.
 * is now.
 * is now.


 * Other
 * Game library updated to LWJGL 3
 * Loading or creating a world shows the percentages of the loading stages.
 * now shows as a loading stage.
 * Crash reports now list what data packs are enabled.
 * Data generators are now exposed, you can get a dump of all blocks/items/commands/etc from the game without opening it up.
 * Changed translation files from  to.
 * Now supports newlines.
 * Optimized cloud rendering
 * Optimized fog rendering
 * Optimized spawn position finding code

Gameplay

 * Oxygen bar
 * The player's oxygen bar no longer regenerates instantly when they get out of water.


 * Visibility
 * Changed natural water visibility.
 * The longer a player stays underwater, the better they will be able to see.
 * Water is darker at lower depths.
 * The Water Breathing potion & Respiration enchantment no longer grant enhanced vision underwater.
 * Every ocean biome has a unique water color, and the swamp water color has been changed.
 * Visibility changes per biome.

Command format

 * General
 * Commands and functions are much faster and more efficient.
 * Most commands are now more case-sensitive. Lowercase is preferable wherever possible.
 * For example, this is no longer allowed:
 * The output signal of a command block used to be its "success count", but now is its "result".
 * Server commands (functions, console, rcon) now run from world spawn in the overworld, instead of at.
 * Errors during a command are now a nicer error message (with a tool tip for more info).
 * Added commands to the profiler (/debug).
 * Whitespaces are now allowed in entity selectors & blockstate arguments.


 * Command UI
 * A new prototype for the command UI.


 * Functions
 * Functions are now completely parsed and cached on load.
 * This means if a command is incorrect for any reason, the player will know about it on load.


 * NBT
 * and  nbt keys of item entities are no longer strings but are instead compounds with two longs named   and.
 * nbt keys of snowballs, eggs and ender pearls are no longer strings but are instead compounds with two longs named  and.
 * Changed all custom names (blocks, items, entities, block entities) from raw strings to JSON text components (which can be translated).
 * For example, is now  or


 * Specific Commands


 * Removed in favor of entity selectors.
 * Removed in favor of entity selectors.


 * Removed in favor of.
 * Removed in favor of.


 * The syntax of has changed.
 * {{cmd|clear [ ] [ ] [ (but doesn't change position).
 * {{cmd|execute at }} executes a command using the position, rotation, and dimension of the   (but doesn't change entity).
 * {{cmd|execute positioned }} executes a command using the position of.
 * {{cmd|execute positioned as }} executes a command using the position (x y z) of the   but nothing else.
 * {{cmd|execute align }} executes a command after aligning the current position to the block grid (rounding down),   is any combination of     and   (for example: , ,  and  ).
 * Examples:
 * using  will become
 * using  will become
 * {{cmd|execute facing }} executes a command as though the executor is facing.
 * {{cmd|execute facing entity (eyes{{!}}feet) }} executes a command as though the executor is facing the entity's eyes or feet.
 * {{cmd|execute rotated as }} executes a command as though the executor is rotated in the direction of the entity.
 * {{cmd|execute rotated }} will run the command as though the executor is rotated in the specified direction.
 * {{cmd|execute in (overworld{{!}}the_end{{!}}the_nether) }} executes a command as though the executor is in the specified dimension.
 * {{cmd|execute anchored (feet{{!}}eyes) }} will make the rest of this command use feet or eyes for ^ ^ ^ coordinates or facing commands.
 * Conditional sub-commands can let you prevent the command from running at all:
 * {{cmd|execute (if{{!}}unless) block  }} executes a command if (or unless)   matches.
 * {{cmd|execute (if{{!}}unless) blocks  (all{{!}}masked) }} executes a command if (or unless) the region between   and   matches.
 * {{cmd|execute (if{{!}}unless) entity }} executes a command if (or unless)   exists (returns 1 or more entities).
 * {{cmd|execute (if{{!}}unless) score  ( < {{!}} <= {{!}} = {{!}} >= {{!}} > ) 's score relates to  's score based on the chosen criterium.
 * {{cmd|execute (if{{!}}unless) score matches  }} executes a command if (or unless)  's score is in the   (ie ,  ).
 * As replacement for {{cmd|stats}}, a new sub-command  lets you store the result or success of a command somewhere:
 * is the result of a command, which replaces these old stats:,  ,  ,.
 * is how many times the command was successful. This is usually  or , but if the command split up (for example  ) then it may be more than  . This replaces.
 * The value will be stored when the full command has finished executing.
 * If a command isn't successful ( is  ),   will always be set to.
 * It will be made clear what the expected result of each command is.
 * {{cmd|execute store (result{{!}}success) score  }}
 * The value is stored into the scoreboard under  and.
 * The  must exist, but unlike with {{cmd|stats}} you don't need to set an initial value for.
 * {{cmd|execute store (result{{!}}success) block (byte{{!}}double{{!}}float{{!}}int{{!}}long{{!}}short)  }}
 * The value is stored in the nbt data at  of the block at   as a byte, double, float, int, long, or short.
 * {{cmd|execute store (result{{!}}success) entity (byte{{!}}double{{!}}float{{!}}int{{!}}long{{!}}short)  }}
 * The value is stored in the nbt data at  of one   entity as a byte, double, float, int, long, or short.
 * Like, {{cmd|execute store}} can't modify player nbt. Nbt inside the  key of items in the player's   or   is an exception and can be modified by {{cmd|execute store}}.
 * {{cmd|execute store (result{{!}}success) bossbar  (value{{!}}max) }}
 * The value is stored in the  or   setting of the boss bar with ID.
 * Data paths look like this:.
 * means foo's child called bar.
 * means element 0 of foo.
 * "quoted strings" may be used if a name of a key needs to be escaped.
 * Examples:
 * {{cmd|execute store success score @a foo run say hi}}
 * {{cmd|/execute as @e[type=pig] at @s store success entity @s Saddle byte 1 if entity @p[distance=..5] }}
 * You can chain all sub-commands together.
 * After every sub-command you need to write another sub-command.
 * When you're done with chaining sub-commands,  lets you write the actual command to be executed.
 * is no longer allowed before the command.
 * {{cmd|execute as somebody at somebody run say hi}}
 * Example of old commands:
 * {{cmd|execute @e ~ ~ ~ detect ~ ~ ~ stone 0 say Stone!}} is now {{cmd|execute as @e at @s if block ~ ~ ~ stone run say Stone!}}
 * {{cmd|execute @e ~ ~ ~ detect ~ ~ ~ grass 0 summon pig}} is now {{cmd|execute at @e if block ~ ~ ~ grass_block run summon pig}}
 * {{cmd|execute @e ~ ~ ~ say Hello!}} is now {{cmd|execute as @e run say Hello!}}
 * {{cmd|execute @e ~ ~ ~ say Hello!}} is now {{cmd|execute as @e run say Hello!}}


 * {{cmd|experience}}
 * {{cmd|xp}} is now an alias for {{cmd|experience}}.
 * Split up into 3 different subcommands:
 * {{cmd|experience add [points{{!}}levels]}}
 * Adds  of either points or levels to the target   (defaults to points).
 * Adding points can cause players to level up, as usual.
 * Negative numbers are supported, to subtract points instead.
 * Subtracting points can cause players to level down.
 * {{cmd|experience set [points{{!}}levels]}}
 * Sets  of either points or levels on the target   (defaults to points).
 * You cannot set more points than their current level allows.
 * When changing levels, the points will stay at the same percentage as the previous level.
 * {{cmd|experience query (points{{!}}levels)}}
 * Returns either the number of points or levels on the given.


 * {{cmd|fill}}
 * The syntax of {{cmd|fill}} has been changed.
 * {{cmd|fill    arguments.
 * This has been moved into {{cmd|execute}}.
 * {{cmd|function foo if @e}} is now {{cmd|execute if entity @e run function foo}}


 * {{cmd|gamerule}}
 * {{cmd|gamerule}} no longer accepts unknown rules ("custom gamerules").
 * You can use functions or scoreboards as replacements, with no loss of functionality.
 * Existing custom gamerules will just not be accessible. Only built-in rules will be available.
 * Values to {{cmd|gamerule}} are now type checked (giving a string if it wants an int is a very obvious error).
 * Removed the  gamerule in favor of functions tagged in.


 * {{cmd|give}}
 * The syntax of {{cmd|give}} has changed.
 * {{cmd|give [ ] [  is now mandatory


 * {{cmd|list}}
 * Can now be used in singleplayer.


 * {{cmd|locate}}
 * The y-coordinate is now returned as  instead of.
 * The  of the command, used by {{cmd|execute store}}, will be the absolute distance to the structure.
 * Now accepts different structure names for all structures previously grouped under : ,  ,  , and.


 * {{cmd|op}}
 * Now allows target selectors besides names.


 * {{cmd|particle}}
 * The  argument has been removed, instead the parameters for particles like   can be specified right after the   argument using the new block argument.
 * {{cmd|particle block polished_granite ~ ~ ~ 0 0 0 0 1 }}
 * {{cmd|particle dust 1 1 1 1 ~ ~ ~ 0 0 0 0 1 }}
 * are, in order, the three RGB color values (0-1) and the size of the particle.
 * {{cmd|particle }} is now a valid shortcut. ,  , and   will default to
 * Particle names have been changed.
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed
 * -> removed


 * {{cmd|playsound}}
 * Will {{key|Tab}} auto-complete custom sound events.


 * {{cmd|replaceitem}}
 * The syntax of {{cmd|replaceitem}} has changed.
 * {{cmd|replaceitem block  [ ] [  argument no longer requires.
 * For example,  now is


 * {{cmd|scoreboard}}
 * {{cmd|scoreboard}} had  removed from its commands in favor of the   argument in entity selectors.
 * {{cmd|scoreboard players tag}} and {{cmd|scoreboard teams}} removed. Replaced by {{cmd|tag}} and {{cmd|team}} respectively.
 * {{cmd|scoreboard players test}} removed in favor of {{cmd|execute (if{{!}}unless) score}}, entity selectors and {{cmd|scoreboard players get }}.


 * {{cmd|setblock}}
 * The syntax of {{cmd|setblock}} has changed.
 * {{cmd|setblock [  and , which covers all the old stat types.


 * {{cmd|stopsound}}
 * can now be used instead of  to stop all sounds with a certain name, across all sources.


 * {{cmd|tag}}
 * Replaces {{cmd|scoreboard players tag}}.
 * Keeps the same syntax.
 * {{cmd|tag add }} to add  to.
 * {{cmd|tag remove }} to remove  from.
 * {{cmd|tag list}} to list all tags on.


 * {{cmd|team}}
 * Replaces {{cmd|scoreboard teams}}.
 * Keeps the same syntax.
 * {{cmd|team add [ ]}}
 * {{cmd|team empty }}
 * {{cmd|team join [ ]}}
 * {{cmd|team leave [ ]}}
 * {{cmd|team list [ ]}}
 * {{cmd|team option  }}


 * {{cmd|testfor}}, {{cmd|testforblock}} and {{cmd|testforblocks}}
 * Removed. Now part of {{cmd|execute}}.


 * {{cmd|toggledownfall}}
 * Removed. It was always used to stop the rain, but rain usually quickly returned.
 * Use {{cmd|weather}}.


 * {{cmd|tp}} and {{cmd|teleport}}
 * {{cmd|tp}} is now an alias of {{cmd|teleport}} (much like {{cmd|w}}, {{cmd|msg}} and {{cmd|tell}}).
 * {{cmd|teleport}} has been simplified a bit, to avoid ambiguity.
 * {{cmd|teleport }} doesn't allow rotation or facing, will teleport you to the entity.
 * {{cmd|teleport }} doesn't allow rotation or facing, will teleport you to the position.
 * {{cmd|teleport }} doesn't allow rotation or facing, will teleport victim to entity.
 * {{cmd|teleport [yRot xRot]}} will teleport you to that position with optional rotation.
 * {{cmd|teleport facing [xFacing yFacing zFacing]}} will teleport you to that position facing another position.
 * {{cmd|teleport facing entity  [feet{{!}}eyes]}} will teleport you to that position facing an entity's feet or eyes (default feet).
 * Teleporting to an entity in another dimension is now allowed.


 * {{cmd|trigger}}
 * {{cmd|trigger }} is a new syntax as a shortcut for {{cmd|trigger add 1}}.


 * {{cmd|weather}}
 * If you don't specify a time, it now defaults to 5 minutes (previously random).


 * Argument Types


 * Target selectors
 * More error handling has been introduced.
 * Things like,  ,   are not allowed.
 * Arguments may now be quoted.
 * There are no longer separate "min" and "max" values; instead ranges are supported.
 * is level 10
 * is level 10, 11 or 12
 * is anything level 5 or above
 * is anything level 15 or below
 * The arcane shorthand names have been renamed.
 * or  ->
 * or  ->
 * or  ->
 * or  ->
 * ,,  ,  ,  ,   are now doubles and allow values like
 * and  are no longer center-corrected.
 * This means  no longer equates to.
 * (previously ) no longer allows numerical or shorthand IDs.
 * (was ) No longer allows negative values.
 * Use  instead.
 * The  argument now supports spaces (as long as it's quoted).
 * Multiple of the same argument in target selectors is now possible.
 * matches someone with,   and not.
 * matches something that isn't a cow and isn't a chicken.
 * isn't allowed, because something cannot both be a cow and chicken.
 * You can specify the sorting.
 * is the old default, sorting by distance (default for )
 * is the reverse of that (previously you'd use  for this)
 * for random sorting (default for )
 * is a new option to not sort the result (default for,  )
 * Specifying scores now looks like
 * You can test for advancements with
 * for "they completed the advancement",  for "they have not completed the advancement"
 * Alternatively, pass a block of specific criteria to test for (again, / )
 * for "they completed the advancement",  for "they have not completed the advancement"
 * Alternatively, pass a block of specific criteria to test for (again, / )


 * Blocks
 * Wherever a, optionally   and optionally   was required, it's now a single   argument that looks like this:
 * ID is required (though just as before, if namespace isn't set it defaults to ).
 * States are inside, comma-separated and must be properties/values supported by the blocks. They are optional.
 * is a syntax error, because  doesn't have.
 * is a syntax error, because 's   is a number between 0 and 15.
 * NBT tag is inside {}, and works just like you'd expect. It's optional.
 * In the context of "conditions"/testing for blocks, only the states you provided will be tested.
 * If you test, it only checks power but ignores other states such as.
 * In the context of setting blocks, any states you provided will be set but anything missed out will default depending on the block.
 * If you set, it will set   to 15 but   will be a default value (in this case, set to  ).
 * There is no such thing as block data value in 1.13. It's either a different blocks, or a state.
 * Items
 * Wherever an, optionally   and optionally   was required, it's now a single   argument that looks like this:
 * ID is required (though just as before, if namespace isn't set it defaults to ).
 * NBT tag is inside {}, and works just like you'd expect. It's optional.
 * There is no such thing as item data value or item damage value in 1.13.
 * Damage, where applicable, is being moved into nbt.
 * Any other information is either a separate item or a property in nbt.
 * ID is required (though just as before, if namespace isn't set it defaults to ).
 * NBT tag is inside {}, and works just like you'd expect. It's optional.
 * There is no such thing as item data value or item damage value in 1.13.
 * Damage, where applicable, is being moved into nbt.
 * Any other information is either a separate item or a property in nbt.
 * Any other information is either a separate item or a property in nbt.

Blocks

 * General
 * The upper limit of the block ID has dissappeared.
 * Blocks which used to have no bottom texture (like repeaters, comparators, torches, etc.) now have a bottom texture, not including redstone wire.
 * Blocks with a collision box now have matching bounding boxes.
 * Affected: anvils, cauldrons, hoppers, fences, iron bars, glass panes, filled ender portal frames, vines, lily pads, stairs, brewing stands, and pistons
 * Updated the collision box of anvils and hoppers.
 * Does not affect blocks with a collision box smaller than their model, such as soul sand and snow layers.


 * Bed
 * Beds now require a block below it as a support. Previously this was only required when placing the bed and the block could be destroyed afterwards without the bed being destroyed.


 * Chests and trapped chests
 * They can be put directly next to their double variants instead of requiring one block between them.
 * Shift right-clicking a chest or trapped chest next to a chest or trapped chest respectively will not make the two chests or 2 trapped chests combine into a double chest or double trapped chest.


 * Dispenser
 * Crafting no longer requires a fully repaired bow.


 * Fence gates
 * Placing them no longer requires a block below them.


 * Ice
 * Mobs can now spawn on top of ice (possible bug, ).


 * Lever
 * Flicking a lever on now displays redstone particles.


 * Magma blocks
 * Now generate at the bottom of ocean ravines, creating downward bubble columns.


 * Monster eggs
 * They will now break instantly, no matter the tool.
 * When broken with Silk Touch, the non-infested counterpart of the block will drop.


 * Pumpkins
 * Placing them no longer requires a block below them.


 * Shulker Boxes
 * Changed the purple shulker box to the new purple color
 * Dyed shulker boxes can now be undyed in a cauldron
 * a shulker box on a filled cauldron.
 * The water level in the cauldron will decrease by 1.


 * Vines
 * Multiple vines facing different directions, including on the bottom of blocks, can now be placed in the same block space.


 * Water
 * Has new colors.
 * Now only blocks 1 light per block, instead of 3.
 * This only affects newly placed water (for now).

Items

 * Carrot on a stick
 * Can now be crafted with a fishing rod that does not have full durability


 * Elytra
 * Now require phantom membrane to be repaired instead of leather


 * Fish
 * Item textures changed

Mobs

 * General
 * Zombies, skeletons, ocelots and wolves will naturally attack baby turtles, and zombies and zombie pigmen will seek out and trample turtle eggs.


 * Horse
 * The model has been changed to be more consistent with other mobs.
 * Some animations like opening its mouth when grazing have been removed from the model as well.
 * The texture of iron horse armor while on the horse has been changed


 * Squid
 * Squids now shoot ink in response to being attacked.


 * Zombies
 * Zombies now fall down underwater, and become a drowned instead of dying from drowning.
 * Baby zombies now burn in sunlight.

Non-mob entities

 * General
 * Items in water now float up.


 * Fishing bobbers
 * Bobbers created by fishing rods have been given an entity ID,.
 * This ID can only be used for testing, summoning is not possible.


 * Item frames
 * Item frames can now be put on floors and ceilings.


 * Paintings
 * Paintings now use a namespaced ID for their motive.

World generation

 * General
 * Rewrote the world generation system.
 * In the Nether, vertical air cavities — stretching from bedrock level to as far as Y=35, and filled with lava from bedrock level to Y=10 – now occur in chains across the bottom of the Nether, often forming extensive ravines.
 * In newly generated chunks, you're less likely to find frozen oceans next to warm oceans, etc.


 * Biomes


 * Biome names are now translatable
 * Updated some biome names:


 * Customized world type
 * Removed


 * Superflat customization
 * Preset strings no longer use a version number.


 * Trees
 * Large spruce trees now transform nearby grass blocks into podzol when they grow.


 * Witch Huts
 * Now generates with a mushroom in the flower pot.
 * Previously, it was completely empty.

Planned changes

 * World generation will become data-driven, using json files, allowing for custom structures.


 * Players can grab onto the fin of dolphins, and the dolphin will lead them to sunken treasures

Unconfirmed features

 * The ability to change biome dependent colors (such as foliage, water, and the sky) without needing mods.
 * Recipe book design might be changed.
 * , and  might be replaced by,  and.
 * ,, and  might be replaced by other commands.