Bedrock Edition beta 1.18.0.20

**Beta 1.18.0.20** is the first beta version for Bedrock Edition 1.18.0, released on October 6, 2021, which moved all Caves & Cliffs features out from experimental gameplay, and fixes bugs.

## Changes

### World generation

Caves
* Old caves can now reach all the way to the surface.
* Old cave carver placement is now on parity with *Java Edition*.

Mountains
* Tweaked peaks to make small mountains look more like proper jagged mountain peaks instead of flat hilly mounds

### Gameplay

Patrols
* Vindicators can no longer spawn in patrols.

Raids
* Changed raid boss bar colour from pink to red.
* Raid mobs now despawn after a raid ends if the players move too far away

Status effects
* Hero of the Village effect now applies to all players who helped kill a raider once a raid is defeated, and the effect remains on the players, even if they travel outside the village.

### General

Chunks
* Improved blending between old and new chunks

Experiments
* Removed “Caves and Cliffs” experimental toggle.
	+ All features previously behind this toggle locked behind this toggle are now available through normal gameplay.

### Technical

Item Scripting
* Implemented first past of Item Script Components:
	+ ItemStack
		- Exposed interfaces for accessing script-enabled ItemComponents on ItemStack
		- hasComponent(componentId: string) - returns true if the ItemStack has the component [componentId] attached to it
		- getComponent(componentId: string) - returns a handle to the component attached to this ItemStack. Returns an undefined handle if the component does not exist or if the component is yet to be exposed to script
		- getComponents() - returns an array of all attached script-enabled components on this ItemStack
	+ NumberRange
		- A class to describe a random value between a min and max number
		- Property min - the minimum value in the range
		- Property max - the maximum value in the range
		- next() - returns a random number between min and max
	+ Items Registry
		- Added Items registry class to get all Items by name
		- get(itemId: string) - returns a handle to an ItemType if a type by the given name exists
	+ Script enabled Item components
		- minecraft:food
			* Read-only property nutrition - number that describes how much nutrition this food item gives the player when eaten
			* Read-only property saturationModifier - number that is the saturation modifier used to apply the saturation buff when eaten
			* Read-only property canAlwaysEat - if true the player can always eat this item (even when not hungry)
			* Read-only property usingConvertsTo - string name of the Item this will be converted to when eaten. If empty, the item will not convert to anything else
		- minecraft:durability
			* Read-only property maxDurability - the number amount of damage this item can take before breaking
			* Read-only property damageRange - a NumberRange describing the chance of the item losing durability
			* Property damage - gets or sets the current damage on the ItemStack
			* getDamageChance(unbreaking: number = 0) - gets the maximum chance that this item would be damaged using the damageRange property if given an unbreaking level. Incoming unbreaking parameter must be greater than 0

## Fixes

Caves & Cliffs
* Floating water no longer generates in caves (MCPE-141424)
* Meadow Flowers no longer replace blocks in villages or other structures (MCPE-141378)
* Tuff blob features now generate below y=0 (MCPE-141452)
* Deepslate patches no longer generate above y=0 (MCPE-141330)
* Amethyst Geodes now get placed in the correct y-range during world generation (MCPE-141326)
* Mineshaft tunnels can't replace Bedrock anymore (MCPE-141123)
* Fixed an issue that prevented large trees from growing below y=0 (MCPE-126254)
* Small Dripleaf now properly generates as part of Lush Caves biome (MCPE-125799)

Stability and Performance
* Players are no longer disconnected if server and client have different Runtime Block IDs
* Optimized the time it takes to place vines in the Overworld

Accessibility
* Added missing screen reader on the "Controller lost connection" prompt

Commands
* Order of function calls triggered by '/execute' inside a function are now consistent (MCPE-111849)

Gameplay
* Corrected Portal locations when the Portal was moved but the location was not updated (MCPE-28765)
* Breaking a block below fire no longer creates an invisible fire block when the 'doFireTick' gamerule is disabled (MCPE-101371)

General
* Players with higher than recommended render distance settings are now prompted to change it to the recommended value
* Render distance default and max settings have been updated for better performance
* A prompt now warns players that they will be taken back to the main menu if they sign-in while in-game
* Added caching support for subchunk requests and fixed issues with holes in the terrain
* Fixed a rendering error that could occur when attempting to render a Vanilla mob in a base game version prior to the version that mob was introduced through JSON files
* Most content errors and warnings will now only display once per world (MCPE-135153)

Graphical
* The Carved Pumpkin enchantment glint now only covers the item instead of the entire slot (MCPE-68219)
* Fixed a bug that could occur on older worlds where looking up in a Minecart would display the inside of the Minecart, blocking the player's view
* Updated item rendering so enchanted items are no longer be invisible in the Nether (MCPE-116880)

Marketplace
* Store update prompt no longer appears for no internet connection or session start failure

Mobs
* Mobs can now path over Trapdoors
* Mobs no longer walk through Campfires (MCPE-142054)
* Axolotls now animate correctly when airborne (MCPE-131322)
* Sweet Berry Bushes now damage mobs (MCPE-56142, MCPE-140012)
* Mobs no longer try to path through Sweet Berry Bushes

User Interface
* Structure Block can now be saved and loaded within current dimension height limits (MCPE-122643)
* Fixed an issue where searching for non-existent content brought up the incorrect "1 result" message
* Fixed overlapping text on offerings occurring in 4:3 resolution screens
* Fixed Java Edition parity while lying in bed in multiplayer game. A message will show how many players are lying in bed while waiting for all players to fall asleep
* Provide better visual feedback and hints for different render distance settings

Vanilla Parity
* Raid mobs now despawn after a raid ends if the player moves too far away
* Raid boss bar color changed to red from purple (MCPE-46047)
* Vindicators no longer naturally spawn in Illager Patrols

Villages
* Hero of the Village effect now applies to all players who helped kill a raider once a raid is defeated, and the effect remains on the players, even if they travel outside the village (MCPE-53384)

## References

1. ↑ "Minecraft Beta - 1.18.0.20 (Xbox One/Windows 10/Android)" – feedback.minecraft.net, October 6, 2021.