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/BedrockDatabdb44a4(生物群系 ID,与 1.26.51 相同)。 - 对 BDS 1.26.63.1 的实机探测(
scripts/probe/1.26.60.json)。
与 1.26.51 的差异:
| 1.26.60 | 1.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_updateadd_entity/add_player的passenger_of_block,以及set_passenger_of_blockstart_game.editor_level_migration_versiondimension_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 说明)。