跳到主要内容

Minecraft - 1.21.30 (Bedrock)

AI Goals

  • Removed the minecraft:behavior.peek AI goal component that was never used 

Add-Ons and Script Engine

  • Removed deprecated behavior pack download related code from packets in the world join flow 
  • Fixed a bug where all custom blocks were rotated 180 degrees in the UI
  • The default for the "gui" "item_display_transforms" "rotation" field is [30, 45, 0] instead of [30, 225, 0]
    • "item_display_transforms": {
      "gui" : {
      "translation": [0, 0, 0],
      "rotation": [30, 45, 0],
      "scale": [0.625, 0.625, 0.625],
      "rotation_pivot" : [0, 0, 0],
      "scale_pivot" : [0, 0, 0],
      "fit_to_frame" : true
      }
      }

Script API

  • Fixed the isEmoting method on Player (MCPE-180083)
  • Released class BlockRecordPlayerComponent from beta to 1.14.0
    • Released UIManager class from Beta to 1.3.0
    • Released closeAllForms method on UIManager from Beta to 1.3.0
  • @minecraft/server
    • Released playerEmote World after event from Beta to 1.14.0 
  • Released EntityQueryPropertyOptions from beta to 1.14.0
  • Moved EntityStrengthComponent from beta to 1.13.0 
  • Fixed an issue where @minecraft/server-ui version 1.3.0 was not accessible
  • Changes to iterators to make them properly store their own state, be simplified and better handle common usages
  • Fixed the next method for iterable objects
  • Moved Target Selector for Actor Properties APIs from beta to 1.14.0

Blocks

  • Fixed minecraft:repeating_command_block to not execute when changing to needs redstone from automatic 

  • The "item_display_transforms" field in block geometries no longer requires the "Upcoming Creator Features" toggle

  • "tnt" block is now split into unique instances: "tnt" and "underwater_tnt" 

  • Parsing blocks.json now produces a Content Error if its format_version is greater or equal than the block names it overrides

  • The following block names are now considered outdated in "blocks.json" from format_version 1.21.30 onward (MCPE-100267)

    • minecraft:carpet
    • minecraft:colored_torch_bp
    • minecraft:colored_torch_rg
    • minecraft:concrete
    • minecraft:concrete_powder
    • minecraft:coral
    • minecraft:coral_block
    • minecraft:coral_fan
    • minecraft:coral_fan_dead
    • minecraft:coral_fan_hang
    • minecraft:coral_fan_hang2
    • minecraft:coral_fan_hang3
    • minecraft:double_plant
    • minecraft:double_stone_block_slab
    • minecraft:double_stone_block_slab2
    • minecraft:double_stone_block_slab3
    • minecraft:double_stone_block_slab4
    • minecraft:double_wooden_slab
    • minecraft:fence
    • minecraft:hard_stained_glass
    • minecraft:hard_stained_glass_pane
    • minecraft:leaves
    • minecraft:leaves2
    • minecraft:light_block
    • minecraft:log
    • minecraft:log2
    • minecraft:monster_egg
    • minecraft:planks
    • minecraft:red_flower
    • minecraft:sapling
    • minecraft:shulker_box
    • minecraft:stained_glass
    • minecraft:stained_glass_pane
    • minecraft:stone_block_slab
    • minecraft:stone_block_slab2
    • minecraft:stone_block_slab3
    • minecraft:stone_block_slab4
    • minecraft:stonebrick
    • minecraft:tallgrass
    • minecraft:terracotta
    • minecraft:wood
    • minecraft:wooden_slab
    • minecraft:wool
  • "chemistry_table" has been split into 4 unique instances: "compound_creator", "material_reducer", "element_constructor", and "lab_table"

    • Requires the Education Edition toggle
  • Added new experimental field "item_specific_speeds" to "minecraft:destructible_by_mining" block componentCommands

  • The /locate structure command output now displays the identifier of the found structure instead of its name

  • Added all parameter to /reload command. This causes players to quit the world and rejoin, as well as reloading all behavior and resource packs

Entity Components

  • "behavior.fire_at_target" is no longer restricted to Vanilla content 
    • This goal allows an entity to attack by firing a shot with a delay
  • "behavior.jump_around_target" is no longer restricted to Vanilla content
    • This goal allows an entity to jump over and around a target
  • "behavior.move_around_target" is no longer restricted to Vanilla content
    • This goal allows an entity to move around a target

General

  • Updated Feature Rules auto-generated documentation

Graphical

  • Fixed a bug that caused moon to appear darker (MCPE-172971
  • Fixed a bug where culling rules for data driven blocks did not rotate with the transformation component 

Items

  • Added a content error for if an icon can't be found with icon_name from minecraft:icon in 1.10 data
  • Fixed an issue where item components would not initialize on remote clients 
  • Added "minecraft:rarity" item component which allows specifying the rarity of an item 
    • It has a single field "value" which accepts the following values:
      • "common"
      • "uncommon"
      • "rare"
      • "epic"
    • Can also be written as an inlined value like so: "minecraft:rarity": "uncommon"
    • The rarity of the item will determine which color it uses for its name
      • If the item has a "minecraft:hover_text_color" component specified, that hover text color will take priority and be used instead of the rarity color
  • Item data versioned 1.16.100+ can now be overridden by item data versioned 1.16.100+ higher in the pack stack 
  • Enables Creators to override 1.16.100+ data driven Vanilla items with 1.16.100+ data
  • Added "minecraft:storage_item" item component to allow an item to store data of the dynamic container associated with it
    • This component requires that the Bundles toggle is enabled
    • A dynamic container is a container for storing items that is linked to an item instead of a block or an entity
    • To use this component the item must have "minecraft:max_stack_size" set to 1
    • The "max_slots" field (1 to 64) defines the number of slots of the dynamic container
    • The "max_weight_limit" field defines the maximum allowed sum of the weight of the items in all slots of the dynamic container
      • Items that stack to 64 weigh 1 each, those that stack to 16 weigh 4 each and unstackable items weigh 64
    • The "allow_nested_storage_items" field allows for other items with a "minecraft:storage_item" component to be put inside it
    • The "weight_in_storage_item" (0 to 64) defines the additional weight the item adds when inside another storage item
      • A value of 0 means that this item is not allowed inside another storage item
    • The "banned_items" field defines the items that are not allowed in the item's dynamic container
    • The "allowed_items" field defines the items that are exclusively allowed in the item's dynamic container
      • If empty all items are allowed in the item's dynamic container
  • Added "minecraft:bundle_interaction" item component to enable bundle-specific interaction scheme and tooltip
    • This component requires that the Bundles toggle is enabled
    • To use this component the item must have a "minecraft:storage_item" component defined
    • The "minecraft:bundle_interaction" component interacts with the container created by the "minecraft:storage_item" component
    • The "num_viewable_slots" field (1 to 64) defines the maximum number of item stacks accessible from the top of the bundle, while other slots are hidden
    • Textures named [item_name]_open_front and [item_name]_open_back must be added to textures/textures_list.json
  • The minecraft:dyeable component is now exposed to creators

Trade Tables

  • The Trade Table files are now versioned
    • TradeTier's "total_exp_required" is a required member from version 1.21.30
    • TradeTier's "groups" is a required member from version 1.21.30
    • TradeItem's quantity "min" cannot be lower than "max" from version 1.21.30

Loot Tables

  • Added "set_potion" item function for loot tables which can set the potion type of compatible items with a potion id
    • It has a single field "id" which accepts the following potion id values:
      • "water"
      • "mundane"
      • "long_mundane"
      • "thick"
      • "awkward"
      • "nightvision"
      • "long_nightvision"
      • "invisibility"
      • "long_invisibility"
      • "leaping"
      • "long_leaping"
      • "strong_leaping"
      • "fire_resistance"
      • "long_fire_resistance"
      • "swiftness"
      • "long_swiftness"
      • "strong_swiftness"
      • "slowness"
      • "long_slowness"
      • "strong_slowness"
      • "water_breathing"
      • "long_water_breathing"
      • "healing"
      • "strong_healing"
      • "harming"
      • "strong_harming"
      • "poison"
      • "long_poison"
      • "strong_poison"
      • "regeneration"
      • "long_regeneration"
      • "strong_regeneration"
      • "strength"
      • "long_strength"
      • "strong_strength"
      • "weakness"
      • "long_weakness"
      • "wither"
      • "turtle_master"
      • "long_turtle_master"
      • "strong_turtle_master"
      • "slow_falling"
      • "long_slow_falling"
      • "wind_charged"
      • "weaving"
      • "oozing"
      • "infested"
    • The following types of items are compatible with the "set_potion" function:
      • Potion
      • Lingering Potion
      • Splash Potion
      • Arrow

Resource and Behavior Packs

  • The player's "helmet_layer_visible" variable is now based on the result of the has_head_gear Molang query and the player and persona render controller's part visibility for the helmet layer no longer checks for the existence of head gear. This fixes attachable scripts setting the "helmet_layer_visible" to 1.0 to now properly work and maintains a fix that prevents persona hair and head gear from clipping outside of mob and Pumpkin heads (MCPE-183058

Sounds

  • Specifying an invalid sound event in a sounds.json file will now trigger a content error 

Structures

  • Fixed minecraft:structure_block debug bounding box rendering when clients initially load server worlds containing one 

实验性特性

Add-Ons and Script Engine

  • 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 the minecraft:geometry json object and requires geometry format_version 1.21.0 and the "Upcoming Creator Features" toggle
    • Default values example:
      • "item_display_transforms": {
        "gui" : {
        "translation": [0, 0, 0],
        "rotation": [30, 225, 0],
        "scale": [0.625, 0.625, 0.625],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0],
        "fit_to_frame" : true
        },
        "firstperson_righthand": {
        "translation": [0, 0, 0],
        "rotation": [0, 45, 0],
        "scale": [0.4, 0.4, 0.4],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0]
        },
        "firstperson_lefthand": {
        "translation": [0, 0, 0],
        "rotation": [0, -135, 0],
        "scale": [0.4, 0.4, 0.4],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0]
        },
        "thirdperson_righthand": {
        "translation": [0, 2.5, 0],
        "rotation": [75, 45, 0],
        "scale": [0.375, 0.375, 0.375],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0]
        },
        "thirdperson_lefthand": {
        "translation": [0, 2.5, 0],
        "rotation": [75, 45, 0],
        "scale": [0.375, 0.375, 0.375],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0]
        },
        "ground": {
        "translation": [0, 3.0, 0],
        "rotation": [0, 0, 0],
        "scale": [0.25, 0.25, 0.25],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0]
        },
        "fixed": {
        "translation": [0, 0, 0],
        "rotation": [0, 0, 0],
        "scale": [0.5, 0.5, 0.5],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0]
        },
        "head": {
        "translation": [0, 0, 0],
        "rotation": [0, 0, 0],
        "scale": [1, 1, 1],
        "rotation_pivot" : [0, 0, 0],
        "scale_pivot" : [0, 0, 0]
        }
        }

Script API

  • PlayerInteractWithBlockBeforeEvent
    • Added property readonly isFirstEvent: boolean to beta. This value will be true if the event was triggered on players initial interaction button press and false if triggered on holding the interaction button
  • PlayerInteractWithBlockAfterEvent
    • Added property readonly beforeItemStack?: ItemStack to beta. This is the item the player was selecting before the interaction succeeded
    • Added property readonly isFirstEvent: boolean to beta. This value will be true if the event was triggered on players initial interaction button press and false if triggered on holding the interaction button
    • This after event will no longer always trigger on an empty hand. The interaction with the block needs to be successful for it to trigger the after event.
  • PlayerInteractWithEntityAfterEvent
    • Added property readonly beforeItemStack?: ItemStack to beta. This is the item the player was selecting before the interaction succeeded
    • Cancelling the before event will now no longer trigger the after event
    • This event will now only be triggered on a successful interaction
  • ItemUseOnBeforeEvent
    • Added property readonly isFirstEvent: boolean to beta. This value will be true if the event was triggered on players initial interaction button press and false on events triggered from holding the interaction button
  • ItemUseOnAfterEvent
    • Added property readonly isFirstEvent: boolean to beta. This value will be true if the event was triggered on players initial interaction button press and false on events triggered from holding the interaction button
  • Moved class PlayerCursorInventoryComponent from beta to 1.14.0

Blocks

  • Fixed an issue with 'minecraft:redstone_conductivity' support for custom blocks (MCPE-178339

Camera

  • Exposed the entity offset so the user can change the camera's pivot point from the entity's center for third person boom cameras 
  • Focus Target Camera: Added rotation_speed in the free camera preset JSON to control the speed of rotation for targeting an entity. This value will be a float that represents degrees turned per second 
  • Focus Target Camera: Added snap_to_target bool in the free camera preset JSON to enable snapping to the target entity on the first tick