跳到正文
本页目录

Bedrock 1.26.60

1.26.60 协议族:协议 2225,BDS 1.26.60.6、1.26.61.1、1.26.62.1 和 1.26.63.1。四个版本使用同一协议, 因此 createBot({ version }) 既接受协议族('1.26.60'),也接受其中任一 BDS 版本;机器人报告 bot.version === '1.26.60'、bot.protocolVersion === 2225。数据在 BDS 1.26.63.1 上探测,探测和实机冒烟测试覆盖全部 四个版本。四个版本之间没有可观察到的差异:状态效果、附魔、生物群系 ID,实体尺寸和 available_commands 命令树都相同。 文档其余页面以 1.26.51 为准。

数据

@bedboo/bedrock-data 提供 data/1.26.60/,由以下来源生成:

  • minecraft-data 3.119.0 data/bedrock/1.26.60(方块、方块状态、碰撞箱、物品)。材质取自同一提交的 data/bedrock/1.26.51,这也是 minecraft-data 自己的 dataPaths 为 1.26.60 使用的目录。
  • CloudburstMC/Data 0021592("More 26.60 data")。从 26.60 起,其 blocks.json 用 geometry.collision 描述碰撞, 不再使用 collisionShape。生成器两种格式都能读取(见下文)。
  • gophertunnel d483610(协议 2225,关卡音效名称)和 pmmp/BedrockData bdb44a4(生物群系 ID,与 1.26.51 相同)。
  • 对 BDS 1.26.63.1 的实机探测(scripts/probe/1.26.60.json)。

与 1.26.51 的差异:

1.26.601.26.51
方块 / 方块状态1 480 / 23 960(新增 icicle、ice_crystal、disc_press;redstone_wire、fire、chorus_plant 的状态更多)1 477 / 22 091
物品2 080(新增上述三个方块和 frostbite_spawn_egg;部分网络 ID 有变化)2 076
实体138(新增 ice_ball,0.25 × 0.25)137
粒子81(新增 ice_ball_break)80
状态效果 ID、附魔 ID、生物群系、音效、其他实体尺寸相同

bamboo、pointed_dripstone、sulfur_spike 的碰撞箱:BDS 会按位置偏移这些方块。26.60 的 Cloudburst 导出给出的是偏移前的 模型碰撞箱(space: 'model_base'、translation: 'native_result')。生成器与 1.26.51 一样保留 minecraft-data 的碰撞箱, 并检查它们恰好是模型碰撞箱经过同一个水平偏移后的结果。其他任何不一致仍会使生成失败。

协议差异

bedboo 按 1.26.51 的格式构造所有数据包。有影响的差异按协议族通过 bot.supportFeature 处理:

  • 手部(特性 actionPacketsHaveHand):animate,以及 item_use_on_entity 和 item_release 交易,带有 hand 字节(main_hand | off_hand),1.26.51 没有这个字段。缺少它时,bedrock-protocol 根本无法写出挥手、攻击或 松开动作。bedboo 发送 main_hand;swingArm('left') 以及结束 activateItem(true) 的松开动作发送 off_hand。item_use 在所有协议族中都已带有手部字段。
  • 物品堆栈请求编号(特性 stackRequestHasCraftReserved):1.26.60 新增了动作 craft_reserved,其协议类型为 16, 旧式类型为 18。因此 non_implemented 和 results_deprecated 的旧式 ID 变为 19 / 20(1.26.51 上为 18 / 19)。 协议名称由 bedrock-protocol 映射,但旧式字节由 bedboo 自己写入。如果合成时 results_deprecated 仍发送 19, BDS 1.26.60.6 会直接断开连接,且不发送断开数据包。
  • 以下差异只涉及读取,或 bedboo 没有用到,因此无需改动:
    • level_chunk.client_biome_update
    • add_entity / add_player 的 passenger_of_block,以及 set_passenger_of_block
    • start_game.editor_level_migration_version
    • dimension_data 的云相关字段
    • player_list(play_fab_id 从皮肤移到了记录本身)
    • clientbound_update_sound_data(改为带标签的联合类型)
    • 环境属性载荷,以及 EaseType(改为 varint)
    • 四个保留的容器槽位类型
    • 新数据包:切石机配方选择、光标物品拖动、匹配、音频内容
  • 时间仍通过 sync_world_clocks 同步。

服务器行为

  • 命令: 1.26.51 用到的所有 value_type 编号在 1.26.60 上都相同。唯一新增的 86 是新的 /time … <timeMarkerName> <occurrence> 和 /time … <clockName> 重载中的 timeMarkerName,它是一个普通单词。 bot.tabComplete 使用 1.26.51 的编号表。
  • 传输: server.properties 默认 transport=nethernet(与 1.26.51 相同)。新增的 server-udp-ports=19132 是 NetherNet 客户端连接使用的 UDP 端口。在同一台主机上运行多个服务器时,要像 server-port 一样为每个服务器设置不同的值。
  • 探测说明: 召唤出的骆驼有时是坐着的(高 0.945)。数据中使用站立时的碰撞箱(1.7 × 2.375,与 1.26.51 相同)。
  • 加入流程、加载界面门控、区块请求、服务器权威物品栏、物品标签(配方使用的标签与 1.26.51 相同)、挖掘、放置、合成、 行走和聊天均与 1.26.51 相同(BDS 说明)。