Skip to main content

Minecraft Beta & Preview - 1.21.20.21

Add-Ons and Script Engine

  • Fixed a bug where having an Add-On applied to a dedicated server would force players to download all resource packs applied to that server in order to join. Note: If you downloaded unwanted packs as a result of this issue, you may have to delete them locally from your device to avoid having them apply when joining a world (MCPE-180344)
  • Updated the "minecraft:geometry" block component to validate whether geometries fit within the 30/16 unit bounds and have at least 1/16 of their length within the unit cube on each axis. This validation occurs for all geometry components on all blocks using json version 1.21.0 or later. (MCPE-178607)

AI Goals

  • Exposed "minecraft:behavior.swim_up_for_breath" AI goal component which allows a mob to try to move to a location where it can breathe air once it is close to running out of its breathable supply. In Vanilla, this is used by the Dolphin. Any custom content built off of the Vanilla dolphin at or above version 1.21.20 will need to manually add this component to enable this AI behavior.

Script API

  • EntityLeashableComponent
    • Moved class EntityLeashableComponent from beta to 1.13.0

Blocks

  • "infested_stone" and its derivatives now have their block sound defined (MCPE-182290)

Editor

The Editor and its corresponding API are in early development, and available for keyboard/mouse on Windows PC Bedrock Preview builds. Tag us on social channels with #BedrockEditor. 

Learn how to use the Editor, join the GitHub Discussion forum to engage with the team, and get started building extensions via the starter kit and samples

Updates this week:

  • Added settings panel to modify atmospheric, global illumination, and color grading settings for deferred lighting (requires deferred lighting resource pack and settings to be enabled)
    • Known issue: shadows are cast from the UI elements. You can toggle crosshair mode via CTRL+TAB as a workaround
    • Known issue: paste preview (CTRL+SHIFT+V) does not render properly when deferred lighting is enabled.

editorPicture1.png

  • Added Input Mappings action bar item that opens a modal displaying all available key bindings and input contexts.
    • Key bindings can be reconfigured using the shortcut field, which detects key presses to set the binding. Pending changes will highlight the text until saved or cleared. Closing the modal reverts any pending changes.
    • Right-clicking on a selected shortcut field clears the binding, or clear button next to the field can be used.
    • Added a toggle for exclusive (None in API) key actions to support advanced input scenarios.
    • Modified bindings can be restored by clicking restore buttons for the binding, active context, and all modified bindings.
    • Saved bindings are accessible across different editor projects.

editorPicture2.png

  • Extended game options to include more export options as well as applying options to export level data
  • Added an optional KeyBindingInfo argument to the key binding registration API functions to assign additional information to shortcuts.
  • Added new BlockList UI element to Property Pane API.
  • Added inputContextId and inputContextLabel optional properties to ModalToolCreationParameters API to represent user defined modal tool identifiers for modal tools.
  • Added interface KeyBinding and modified key binding registration API methods to take this object.
  • Dropdown menus will attempt to open in the opposite direction when they extend beyond the window bounds.
  • Added variant: ColorPickerVariant optional property to IPropertyItemOptionsColorPicker API to support different types of color picker property items. Changed the default variant to respect the pane layout. Moved gradient selector for Default and Inline variants to a popup, accessible by clicking the selected color box.
  • Updated set of entities that appear within the Editor picker
  • Updated set of blocks that appear within the Editor picker
  • Introduced a new filter "is_navigating" that checks to see if the entity is currently pathfinding. This requires a "minecraft:navigation" component

General

  • Updated schema documentation for Filter Groups

Graphical

  • 2 Channel textures in resource packs are now properly supported. When loaded they will always use the first channel to represent all three color channels and the second channel for alpha (I.E A normal texture would be (R, G, B, A) where a 2 channel texture will always be treated as (R, R, R, A))
  • Fixed bug where culling rules for data driven blocks did not rotate with the transformation component

Technical Experimental Features

API

  • EntityBreathableComponent
    • Changed function setAirSupply(value: number): void to property airSupply: number in beta
    • Added property readonly canBreathe: boolean to beta
  • Added isHardcore to 1.14.0 beta.

Graphical

  • Custom skyboxes are now supported in Deferred Technical Preview (MCPE-174200)
  • Fixed a bug where blank white thumbnails were being generated for worlds with the Deferred Technical Preview enabled (MCPE-178373)
  • Fixed a bug where certain objects from the world would be visible through the gamma calibration menu in the Deferred Technical Preview
  • The extension EXT_texture_cube_map_array is now required to run Deferred Technical Preview on Android devices that support GLES 3.1. Some devices will lose support, however most devices should be unaffected

Blocks

  • Added "item_display_transforms" control to the block geometry file. This controls the way a block is visually represented in the UI, on the player, and floating on the ground. It exists inside minecraft:geometry, and requires format_version 1.21.20
    • Default values example:
      • "item_display_transforms": {
        "gui" : {
                        "translation": [0, 0, 0],
                        "rotation": [30, 225, 0],
                        "scale": [0.625, 0.625, 0.625]
          },
          "firstperson_righthand": {
                        "translation": [0, 0, 0],
                        "rotation": [0, 45, 0],
                        "scale": [0.4, 0.4, 0.4]
          },
          "firstperson_lefthand": {
            "translation": [0, 0, 0],
            "rotation": [0, -135, 0],
            "scale": [0.4, 0.4, 0.4]
          },
          "thirdperson_righthand": {
            "translation": [0, 2.5, 0],
            "rotation": [75, 45, 0],
            "scale": [0.375, 0.375, 0.375]
          },
          "thirdperson_lefthand": {
            "translation": [0, 2.5, 0],
            "rotation": [75, 45, 0],
            "scale": [0.375, 0.375, 0.375]
          },
          "ground": {
            "translation": [0, 3.0, 0],
            "rotation": [0, 0, 0],
            "scale": [0.25, 0.25, 0.25]
          },
          "fixed": {
            "translation": [0, 0, 0],
            "rotation": [0, 0, 0],
            "scale": [0.5, 0.5, 0.5]
          },
          "head": {
            "translation": [0, 0, 0],
            "rotation": [0, 0, 0],
            "scale": [1, 1, 1]
          }
        }