Bedrock Edition beta 1.20.10.20

Beta 1.20.10.20 (Android) or Preview 1.20.10.20 (Windows, iOS, iPadOS, Xbox) is the first beta/Preview version for Bedrock Edition 1.20.10, released on May 25, 2023. Which brings more parity from Java Edition and fixes bugs.

Blocks

 * Barrel
 * Recipe has been modified to use planks instead of Sticks to match Java Edition


 * Chiseled Bookshelf
 * Players without permission to open/close containers can no longer interact with them


 * Chiseled Deepslate
 * Can no longer be replaced by Sculk during world generation


 * Note Block
 * Note Block on top of Soul Soil now produces the Harp sound instead of the Snare sound


 * Polished Basalt
 * Can no longer be replaced by Sculk during world generation


 * Sculk Sensor
 * Can now detect scraping or applying wax to blocks of the copper block set
 * Can now detect switching a daylight detector to an inverted daylight detector, or vice-versa
 * Can now detect adding food to a campfire
 * Can now detect adding or removing a music disc to a jukebox
 * Can now detect mud turning into clay
 * Can now detect harvesting sweet berries
 * Can now detect placing a door
 * Can now detect planting seeds in farmland

Items

 * Boats
 * Recipe has been modified to remove the shovel to match Java Edition
 * Except bamboo raft probably in the next beta


 * Cobwebs
 * Now can't craft into strings to match Java Edition

Experimental
These additions and changes are accessible by enabling the "Short Sneaking and Crawling" and "Beta APIs" experimental toggles.

Gameplay

 * Crawling
 * Added the ability to crawl
 * Created new player crawling animation
 * Players will now begin crawling when in a 1 block gap, similar to sneaking
 * Crawling is the same speed as sneaking
 * Players will automatically stand up or begin sneaking if they leave the 1 block gap

Gameplay

 * Sneaking, Swimming and Gliding
 * Players will now spawn particle effects when eating in the correct position if they are sneaking, swimming, or gliding

Technical

 * API
 * Dynamic properties can now optionally have default values
 * Increased Dynamic Property registration limits:
 * Actors: ~1KB -> 128KB
 * World: ~10KB -> 1MB
 * ScreenDisplay
 * Removed clearTitle- Use setTitle with an empty string to clear the title
 * Updated fadeInSeconds, staySeconds, fadeOutSecondsto fadeInDuration, stayDuration, fadeOutDuration on TitleDisplayOptions (seconds to ticks)
 * Updated setTitle to reset the times per each new title
 * Added RawMessage support for setTitle, updateSubtitle, and setActionBar
 * Entity additions
 * Added read-only property isGliding- Returns whether the player is gliding with Elytra
 * Added read-only property isJumping- Returns whether the player is using the jump action
 * Added read-only property isFlying- Returns whether the player is flying (e.g. Creative or Spectator mode)
 * Added read-only property isSprinting- Returns whether the entity is sprinting
 * Added read-only property isSwimming- Returns whether the entity is swimming
 * Added read-only property isClimbing- Returns whether the entity is climbing (e.g. Player on a ladder or Spider on a wall)
 * Added read-only property isOnGround- Returns whether the entity is on the ground
 * Added read-only property isInWater- Returns whether the entity is in water
 * Added read-only property isFalling- Returns whether the entity is falling
 * Added read-only property fallDistance- Returns the current fall distance (Used for calculating fall damage)
 * Added function fly- Makes the player fly (e.g. Creative or Spectator mode)
 * Added function stopFlying- Makes the player stop flying (e.g. Creative or Spectator mode)
 * Added function glide- Makes the player glide with Elytra
 * Added function stopGliding- Makes the player stop gliding with Elytra
 * Added function swim- Makes the player swim
 * Added function stopSwimming- Makes the player stop swimming
 * Entity additions (effects)
 * Updated function addEffect(effectType: EffectType | string, duration: number, options?: EntityEffectOptions): voidto return void and to throw if the effect does not exist or the parameters are out of bounds
 * Updated function getEffect(effectType: EffectType | string): Effect | undefinedto throw if the effect does not exist
 * Updated function removeEffect(effectType: EffectType | string): booleanto throw if the effect does not exist
 * BlockEvents
 * Added events 'PressurePlatePushEvent', 'PressurePlatePopEvent', 'TargetBlockHitEvent', and 'TripWireTripEvent'
 * ContainerSlot
 * Removed function clone- Please use function getItem instead
 * EntityHealableComponent
 * Removed filters: FilterGroupproperty
 * EntityAttributeComponent
 * Added effectiveMin: number Returns the minimum possible value for the component
 * Added effectiveMax: number Return the maximum possible value for the component
 * Renamed valueproperty to defaultValue
 * Renamed currentproperty to currentValue
 * Renamed setCurrentmethod to setCurrentValue
 * Added EntityHealthChangedAfterEvent. It is triggered when any health change happens for an Entity