1.21.5是春意盎然的正式版,也是Java版的一次次要更新,发布于2025年3月25日。[1]此次更新加入了野花簇、枯叶、灌木丛、枯草丛、仙人掌花等大量的新方块和少量新物品,丰富了猪、牛、鸡、绵羊和狼的变种生成机制,正式加入了实验性内容“村民交易的平衡性调整”中对流浪商人和制图师的更改以及游戏测试系统,同步了基岩版中的倒下的树木,并修复了一些漏洞。此版本不兼容1.21到1.21.4的服务端。
新内容
方块
- 野花簇
- 一种花,自然生成于桦木森林、原始桦木森林和草甸。
- 类似于粉红色花簇,同一格空间内最多可以容纳4株野花簇。
- 对野花簇使用骨粉会生成更多野花簇。
- 有4种方向。
- 可以放入堆肥桶中堆肥。
- 可以用于合成黄色染料。
- 能用于引诱、喂食蜜蜂。
- 枯叶
- 一种装饰性方块,自然生成于森林、黑森林和疏林恶地。
- 类似于粉红色花簇,同一格空间内最多可以容纳4个枯叶。
- 有4种方向。
- 有独特方块音效。
- 可由烧炼树叶获得,也可以作为燃料用于烧炼。
- 作为燃料用于烧炼时,每个枯叶可烧炼0.5个物品。
- 会随所处的生物群系着色。
- 可以被方块直接替换。
- 只能放置到顶面支撑形状完整的方块上。
- 萤火虫灌木丛
- 会在沼泽、红树林沼泽和大多数主世界生物群系的水源附近自然生成。
- 在内部天空光照≤13时,每刻发光的萤火虫粒子有70%的概率会在萤火虫灌木丛附近生成。
- 满足以下条件时,每刻有1⁄30概率会发出特殊的环境音效:
- 在主世界中。
- 在一天的第12600至23400刻间。
- 上方没有除树叶外的阻止运动方块。
- 对其使用骨粉会生成另一个萤火虫灌木丛物品。
- 发出等级为2的光照。
- 可用于堆肥,有30%的概率使堆肥层数增加一层。
- 能放置于具有
#dirt
标签的方块或耕地上。
- 灌木丛
- 一种装饰性方块。会在以下生物群系以斑块形式生成:
平原
风袭丘陵
风袭沙砾丘陵 风袭森林 河流 冻河 森林 桦木森林 原始桦木森林
- 可用于堆肥,有30%的概率使堆肥层数增加一层。
- 对其使用骨粉会在附近可生成位置生成新灌木丛。
- 能放置于具有
#dirt
标签的方块或耕地上。
- 矮枯草丛和高枯草丛
- 自然生成于沙漠和恶地及其变种生物群系。
- 都只有一格高。
- 与枯萎的灌木一样能放置于沙子、陶瓦和泥土类方块上。
- 与草丛一样,在方块范围内具有随机偏移。
- 对其使用骨粉:
- 矮枯草丛会生长为高枯草丛。
- 高枯草丛在其周围的有效位置生成矮枯草丛。
- 可用于堆肥,有30%的概率使堆肥层数增加一层。
- 可用作燃料。
- 绵羊可以食用它们以长出羊毛。
- 仅在被剪刀或附有精准采集魔咒的工具破坏时掉落。
- 仙人掌花
- 一种花,有概率在沙漠和恶地及其变种生物群系的仙人掌柱上生成。
- 可放置于仙人掌、耕地或任何顶部可支撑其中心的方块上。
- 有概率由仙人掌长出:
- 1 – 2格高的仙人掌柱有10%概率长出仙人掌花且不再长高。
- 3格及更高的仙人掌柱有25%概率长出仙人掌花。
- 只有生成位置四面均无固体方块时,仙人掌花才会生成。
- 可用于堆肥,有30%的概率使堆肥层数增加一层。
- 可用于引诱、喂食蜜蜂。
- 可用于合成1个粉红色染料。
- 结构方块
load
模式下的结构方块现在具有新选项Strict Placement
。- 新选项为
true
时,被放置的结构中的方块将不会触发方块更新、方块实体副效果或形状更新。
- 新选项为
- 测试方块
- 用于实现基于方块的测试的技术性方块。
- 物品稀有度为“史诗”。
- 有4种模式:
- 启动模式(
mode
为start
):在测试启动时产生一次红石脉冲。 - 日志输出模式(
mode
为log
):接收到红石信号时,将消息输出到日志文件。 - 失败模式(
mode
为fail
):接收到红石信号时,使测试失败。 - 接受模式(
mode
为accept
):接收到红石信号时,成功完成这条路径的测试。
- 启动模式(
- 运行基于方块的测试需要结构中至少存在一个启动模式和一个接受模式的方块。
- 测试实例方块
- 用于运行、控制世界中的测试的技术性方块。
- 物品稀有度为“史诗”。
- 此方块表示世界中的测试实例。
- 可以用于与所对应的测试交互,以保存测试结构、重置测试或运行测试。
- 测试启动后,每个测试位置都会发出一条信标光柱以表示测试状态。
- 灰色 = 运行中
- 红色 = 失败(必要测试)
- 橙色 = 失败(可选测试)
- 绿色 = 成功
- 如果测试失败,错误会显示在一本讲台的书和一个遮罩上。
- 使用
/test
运行或创建了一个测试也将放置一个测试实例方块来控制此测试。
物品
- 蓝色鸡蛋
- 由寒带鸡产下的鸡蛋。
- 能生成幼年寒带鸡。
- 合成用途与普通鸡蛋相同。
- 棕色鸡蛋
- 由热带鸡产下的鸡蛋。
- 能生成幼年热带鸡。
- 合成用途与普通鸡蛋相同。
生物
- 猪、牛和鸡
- 加入了寒热带变种,即其变种由生成所处的生物群系决定。
- 繁殖出的幼年猪、牛或鸡的变种从其双亲的变种中随机选择。
- 原本的猪、牛或鸡即为温带变种。
- 三种鸡会生产对应的鸡蛋,以生成对应变种的幼年鸡。
-
变种 寒带猪
寒带牛
寒带鸡 热带猪
热带牛
热带鸡 温带猪
温带牛
温带鸡生物群系 雪原
冰刺之地
冰封山峰
尖峭山峰
积雪山坡
雪林
裸岩山峰
冷水海洋
冷水深海
冻洋
冰冻深海
深暗之域
冻河
原始松木针叶林
原始云杉针叶林
针叶林及其变种
风袭丘陵及其变种
末地及其变种 沙漠
暖水海洋
红树林沼泽
温水海洋
温水深海
热带草原及其变种
丛林及其变种
恶地及其变种
下界及其变种其他生物群系
- 狼
- 加入了6种音效变种,每种都有独特的空闲、受伤、死亡、嚎叫、呜咽和喘息音效。
- 新的6种变种包括大型犬(big)、可爱(cute)、小巴哥犬(puglin)、愤怒(angry)、不爽(grumpy)和悲伤(sad),而原来的音效现在称为普通(classic)变种。
- 每只狼都会从上述7种音效变种中随机选取一种使用,而与其纹理变种无关。
世界生成
- 地物
- 加入了
birch_bees_0002_leaf_litter
、birch_leaf_litter
、dark_oak_leaf_litter
、fancy_oak_bees_0002_leaf_litter
、fancy_oak_leaf_litter
、oak_bees_0002_leaf_litter
、oak_leaf_litter
、trees_birch_and_oak_leaf_litter
、wildflowers_birch_forest
和wildflowers_meadow
地物。
- 随机斑块
- 加入了
patch_grass_meadow
、patch_dry_grass
、patch_leaf_litter
、patch_bush
和patch_firefly_bush
斑块。
- 地物数据格式
- 加入了地物类型
fallen_tree
。- 配置格式如下:
-
-
- 根标签
- *type:
fallen_tree
。 - *config:此已配置的地物的配置。
- *trunk_provider:作为树干和树桩的方块。
- *log_length:(0≤值≤16)倒下的树干的长度。
- *stump_decorators:在树桩上生成的装饰。
- *log_decorators:在倒下的树干上生成的装饰。
- *type:
- 根标签
-
- 加入了
place_on_ground
树木装饰器。附加参数如下:
-
-
- tries:(默认为128,值>0)尝试生成的次数。
- radius:(默认为2,值≥0)尝试生成位置与树的根部的最大水平距离。
- height:(默认为1,值≥0)尝试生成位置与树的根部的最大垂直距离。
- block_state_provider:作为装饰物的方块。如果生成位置为空气或下方与完全固体渲染方块相接的藤蔓,这个方块就能被放置。
-
- 加入了
attached_to_logs
树木装饰器。附加参数如下:
-
-
- *probability:(0≤值≤1)放置装饰物的概率。
- *block_provider:一个方块状态提供器,表示装饰器在原木上生成的方块。
- *directions:(不能为空)生成装饰物的方向。
-
- 生物群系数据格式
- 在生物群系的环境效果中加入了新字段dry_foliage_color,以定义为枯叶着色时所使用的颜色。
- 结构
- 加入了空结构
empty.nbt
。
- 树木
- 加入了倒下的树木,以同步基岩版。
- 倒下的树木共有5种,分别是:橡树、白桦、高白桦、丛林和云杉树。
- 有些倒下的树木附有蘑菇和藤蔓。
- 除了草甸、竹林、河流和雪林外,所有会生成对应立式树木的生物群系中均会生成倒下的树木。
- 例外是,繁花森林中会生成倒下的白桦,但不会生成倒下的橡树。
游戏内容
- 游戏规则
- 加入了新规则
allowFireTicksAwayFromPlayer
,默认值为false
。- 为
true
时,距离玩家128格外的区块中的火和熔岩仍可执行游戏刻。
- 为
- 加入了
tntExplodes
游戏规则,以同步基岩版。- 为
false
时,TNT将不能爆炸,也不可被激活。 - 默认为
true
。
- 为
- 粒子
- 加入了
tinted_leaves
粒子。- 具有参数
color
,可以为一个整数或一个4浮点数列表。
- 具有参数
- 加入了
firefly
粒子。
- 槽位
- 加入了
saddle
生物通用槽位。- 可装备于此槽位的物品由
equippable
物品堆叠组件控制。 - 只有自然支持此槽位的生物能在装备对应物品时被骑乘并在实体模型上渲染鞍。
- 可装备于此槽位的物品由
命令格式
/test
- 用于创建和运行测试的命令。
- 注意:游戏测试的设计为运行于标准超平坦世界。每次测试运行时,其周围的区域都会被石头代替,且测试会被屏障盒包裹。
- 语法如下:
test clear*
:清除与所选的测试关联的结构和方块。test clearall [<radius>]
test clearthat
test clearthese
test create
:在当前位置创建一个指定测试的测试设置,为指定大小的测试结构做准备。test create <test> [<width>] [<height> <depth>]
test locate
:在已加载区块中寻找测试的位置。test locate <selector>
test reset*
:为所选的测试重置测试结构,移除周围的所有屏障并重新放置结构。test resetclosest
test reseetthese
test resetthat
test pos
:显示测试中指向方块的局部坐标。如果指定了变量名,则在由单击此命令返回消息中的坐标获得的代码片段中使用该变量名。test pos [<variable>]
test run*
:运行一个或多个测试。先加载每个测试的给定结构,再运行相关测试。如果一次运行多个测试,则它们会被放置于网格中并行运行,但有一定限制。如果超出限制,则测试按轮依次运行。test run <selector> [<numberOfTimes>] [<untilFailed>] [<rotationSteps>] [<testsPerRow>]
test runclosest [<numberOfTimes>] [<untilFailed>]
test runfailed [<numberOfTimes>] [<untilFailed>] [<rotationSteps>] [<testsPerRow>]
test runmultiple <selector> [<amount>]
test runthat [<numberOfTimes>] [<untilFailed>]
test runthese [<numberOfTimes>] [<untilFailed>]
test stop
:停止所有测试。由测试触发的游戏事件可能仍会继续。test verify <tests>
:通过运行同一测试的多个实例来验证一个或多个测试。
- 参数:
radius
:需要清除的测试的范围。test
:测试的命名空间ID。selector
:支持通配符(*
和?
)的测试ID选择器。未提供命名空间时,默认使用minecraft:
。- 示例:
*:*
– 匹配所有ID。*
– 匹配minecraft
命名空间下的全部ID。custom:folder/*_test_?
– 匹配custom
命名空间下folder
文件夹中为<任意前缀>_test_<单字符后缀>
的ID。
- 示例:
width
:(默认为5
)测试结构的宽度。height
:(默认使用width
的值)测试结构的高度。depth
:(默认使用width
的值)测试结构的深度。variable
:复制代码段中使用的变量名。numberOfTimes
:(默认为1
)重复每个测试的次数。untilFailed
:(布尔值,默认为false
)测试是否应该在一次迭代失败后立即停止。rotationSteps
:(默认为0
)测试的额外90度旋转步数。testsPerRow
:(默认为8
)网格布局中每行放置的测试数量。
常规
- 语言
- 加入了对吉尔吉斯语的支持。
- 数据包
- 加入了
pig_variant
、test_environment
、test_instance
、cat_variant
、frog_variant
、cow_variant
、chicken_variant
和wolf_sound_variant
子文件夹。 - 数据包现在可以用于配置测试实例与测试环境定义。
- 猫、青蛙、猪、牛和鸡变种,以及狼的音效变种现在可由数据包定义。
- 实体谓词
- 在实体谓词中加入了新字段components。
- 存在时,谓词会匹配实体组件的内容(类似于匹配物品堆叠的物品谓词的字段
components
)。 - 格式:组件类型键与组件匹配值的映射。
- 存在时,谓词会匹配实体组件的内容(类似于匹配物品堆叠的物品谓词的字段
- 加入了新可选字段
predicates
。- 除了操作对象是实体组件外,其功能和格式与物品谓词
predicates
相同。 - 存在时,将匹配实体组件的部分内容。
- 除了操作对象是实体组件外,其功能和格式与物品谓词
- 实体数据格式
- 向所有实体(除固有此字段的标记)加入了data字段。
- 由于以
custom_data
数据组件形式公开,故可由生成类物品设置,也可由谓词匹配。 - 当前自定义实体数据存储于
data
中,未来引入更合适的实体组件存储方式后,此字段名称将会更改。 - 仅在非空时存储。
- 由于以
- 方块谓词
- 加入了新可选字段
components
和predicates
。- 除了操作对象是方块实体组件(若有)外,其功能和格式与同名的物品谓词相同。
components
存在时,其将匹配方块实体组件的精确内容。predicates
存在时,其将匹配方块实体组件的部分内容。
- 物品堆叠组件
- 加入了新组件weapon。
- 存在时,物品使用次数统计信息会在用此物品攻击时增加。
- 附加字段如下:
-
-
- weapon 物品堆叠组件
- item_damage_per_attack:(默认为1,值≥0)每次攻击对此物品造成的损伤值,即损耗的耐久度。
- disable_blocking_for_seconds:(值>0,默认为
0
)非零时,用此武器进行的成功攻击将会禁用盾牌指定秒数。
- weapon 物品堆叠组件
-
-
- 示例:
weapon={item_damage_per_attack:2}
- 示例:
- 加入了新组件potion_duration_scale,值≥0。
- 存在时,具有
potion_contents
组件的物品所储存效果的持续时长将随此组件所提供的倍率缩放。 - 未指定此组件时,持续时长倍率默认为
1.0
。 - 示例:
potion_duration_scale=0.25
- 存在时,具有
- 向tool组件中加入了可选字段can_destroy_blocks_in_creative,表示创造模式玩家能否使用此物品破坏方块,默认为
true
。 - 加入了一系列用于配置实体的变种、外观或其他方面的组件。
- 当刷怪蛋、生物桶、画和物品展示框等物品具有这些组件时,组件将对其生成的实体生效。
- 对实体使用选取键获取刷怪蛋时,获取的刷怪蛋不会储存这些组件。
- 新组件如下:
- axolotl/variant:可以为
lucy
、wild
、gold
、cyan
或blue
之一。 - fox/variant:可以为
red
或snow
之一。 - horse/variant:可以为
white
、creamy
、chestnut
、brown
、black
、gray
或dark_brown
之一。 - llama/variant:可以为
creamy
、white
、brown
或gray
之一。 - mooshroom/variant:可以为
red
或brown
之一。 - parrot/variant:可以为
red_blue
、blue
、green
、yellow_blue
或gray
之一。 - rabbit/variant:可以为
brown
、white
、black
、white_splotched
、gold
、salt
或evil
之一。 - villager/variant:可以为
desert
、jungle
、plains
、savanna
、snow
、swamp
或taiga
之一。 - salmon/size:可以为
small
、medium
或large
之一。 - tropical_fish/pattern:可以为
kob
、sunstreak
、snooper
、dasher
、brinely
、spotty
、flopper
、stripey
、glitter
、blockfish
、betty
或clayfish
之一。 - tropical_fish/base_color:16种染料颜色之一。
- tropical_fish/pattern_color:16种染料颜色之一。
- cat/collar:16种染料颜色之一。
- wolf/collar:16种染料颜色之一。
- sheep/color:16种染料颜色之一。
- shulker/color:16种染料颜色之一。
- cat/variant:需为取自
cat_variant
注册表的命名空间ID。 - frog/variant:需为取自
frog_variant
注册表的命名空间ID。 - painting/variant:需为取自
painting_variant
注册表的命名空间ID。 - pig/variant:需为取自
pig_variant
注册表的命名空间ID。 - wolf/variant:需为取自
wolf_variant
注册表的命名空间ID。 - cow/variant:需为取自
cow_variant
注册表的命名空间ID。 - chicken/variant:需为取自
chicken_variant
注册表的命名空间ID。 - wolf/sound_variant:需为取自
wolf_sound_variant
注册表的命名空间ID。
- axolotl/variant:可以为
- 创造模式物品栏中的生物桶和画现在使用新变种组件而非
minecraft:entity_data
组件。 - 热带鱼桶和画物品的自定义提示框文本现在基于新组件而非
minecraft:bucket_entity_data
和minecraft:entity_data
。
- 加入了blocks_attacks组件。
- 玩家持拥有此组件的物品能像盾牌一样阻挡攻击。
- 格式如下:
-
-
- blocks_attacks 物品堆叠组件
- block_delay_seconds:(值≥0,默认为
0
)成功阻挡攻击前需要按住右键的秒数。 - disable_cooldown_scale:(值≥0,默认为
1
)被可禁用阻挡的攻击击中时,物品冷却时长的乘数。为0
时,此物品不能被攻击禁用。 - bypassed_by:(伤害类型标签)指定标签的伤害类型可以无视此物品的阻挡而造成实际伤害。
- damage_reductions:控制可阻挡多少伤害。未指定时,可阻挡一切伤害。
- :控制可挡下的伤害量和伤害类型。阻挡成功时,伤害减少
clamp(base + factor * 所受攻击伤害, 0, 所受攻击伤害)
。- *base:固定阻挡的伤害。
- factor:应被阻挡的伤害比例。
- type:可阻挡的伤害类型。允许单个ID、列表或标签。未指定则表示对所有伤害有效。
- horizontal_blocking_angle:(值>0,角度制,默认为90)在水平方向上,以当前玩家视角的水平分量向量为基准,如果受伤害方向与基准方向夹角小于此角度则伤害可被阻挡,否则不能阻挡。
- :控制可挡下的伤害量和伤害类型。阻挡成功时,伤害减少
- item_damage:控制攻击对物品造成的耐久损耗。未指定时,每次攻击损耗物品1点耐久。物品耐久最终损耗
floor(threshold, base + factor * 所受攻击伤害)
。最终值可以为负数以使物品修复。- threshold:(值≥0)攻击对此物品造成的最低耐久度损耗。
- *base:损耗物品固定耐久度。
- *factor:所受攻击伤害的乘数。
- block_sound:成功阻挡攻击时播放的声音事件。
- disabled_sound:此物品被攻击禁用时播放的声音事件。
- block_delay_seconds:(值≥0,默认为
- blocks_attacks 物品堆叠组件
-
- 加入了break_sound组件。
- 存在时,物品因耐久耗尽而损坏时播放此声音事件。
- 不存在时,物品损坏时不会播放任何音效。
- 此组件是每个物品类型的默认组件之一。
- 示例:
break_sound='item.wolf_armor.break'
- 加入了provides_banner_patterns组件,需为一个旗帜图案标签。
- 存在时,物品可被放入织布机的图案槽位。
- 示例:
provides_banner_patterns='#minecraft:pattern_item/globe'
- 加入了provides_trim_material组件,需为一个盔甲纹饰材料。
- 存在时,物品将向盔甲纹饰配方提供指定的纹饰材料。
- 在内置锻造配方中使用时,此物品必须在
#trim_material
标签中。 - 因此,盔甲纹饰材料注册表定义不再指定物品ID。
- 示例:
provides_trim_material='minecraft:iron'
- 加入了tooltip_display组件,以隐藏由任何组件提供的提示框文本。
- 因此,show_in_tooltip字段、hide_additional_tooltip和hide_tooltip组件被取代。
- 此组件是每个物品类型的默认组件之一。
- 格式如下:
-
-
- tooltip_display 物品堆叠组件
- hide_tooltip:(默认为
false
)物品提示框是否总是隐藏。 - hidden_components:(默认为
[]
)一个物品组件ID列表,列表内的所有组件提供的提示框文本都会被隐藏。如果组件不提供提示框文本,则对其没有效果。- :一个物品堆叠组件ID。
- hide_tooltip:(默认为
- tooltip_display 物品堆叠组件
-
- 注册表
- 加入了
TEST_ENVIRONMENT_DEFINITION_TYPE
、TEST_INSTANCE_TYPE
、TEST_FUNCTION
、TICKET_TYPE
、SPAWN_CONDITION_TYPE
和DATA_COMPONENT_PREDICATE_TYPE
固有注册表。 - 加入了
PIG_VARIANT
、TEST_ENVIRONMENT
、TEST_INSTANCE
、COW_VARIANT
、CHICKEN_VARIANT
和WOLF_SOUND_VARIANT
可写注册表。
- 标签
- 加入了下列方块标签:
#replaceable_by_mushrooms
:#leaves
、#small_flowers
、pale_moss_carpet
、short_grass
、fern
、dead_bush
、vine
、glow_lichen
、sunflower
、lilac
、rose_bush
、peony
、tall_grass
、large_fern
、hanging_roots
、pitcher_plant
、water
、seagrass
、tall_seagrass
、brown_mushroom
、red_mushroom
、brown_mushroom_block
、red_mushroom_block
、warped_roots
、nether_sprouts
、crimson_roots
、leaf_litter
、short_dry_grass
、tall_dry_grass
、bush
和firefly_bush
。- 蘑菇被放置或生长时可替换的方块。
#sword_instantly_mines
:bamboo
和bamboo_sapling
。- 能被剑瞬间破坏的可破坏方块。
#plays_ambient_desert_block_sounds
:#terracotta
、sand
和red_sand
。- 会播放沙漠方块环境音效的方块。
#edible_for_sheep
:short_grass
、short_dry_grass
、tall_dry_grass
和fern
。- 可被绵羊食用而使其羊毛生长的方块。
#camels_spawnable_on
:#sand
。- 上方可以生成骆驼的方块。
- 加入了下列物品标签:
#book_cloning_target
:writable_book
。- 可通过与成书合成来复制的物品。
#eggs
:egg
、blue_egg
和brown_egg
。- 不会被鸡骑士捡起的物品。还用于合成蛋糕和南瓜派的配方。
#flowers
:#small_flowers
、sunflower
、lilac
、peony
、rose_bush
、pitcher_plant
、flowering_azalea_leaves
、flowering_azalea
、mangrove_propagule
、cherry_leaves
、pink_petals
、wildflowers
、chorus_flower
、spore_blossom
和cactus_flower
。- 现有的方块标签
#flowers
的对应物品标签。
- 现有的方块标签
- 加入了下列生物群系标签:
#spawns_cold_variant_farm_animals
:snowy_plains
、ice_spikes
、frozen_peaks
、jagged_peaks
、snowy_slopes
、frozen_ocean
、deep_frozen_ocean
、grove
、deep_dark
、frozen_river
、snowy_taiga
、snowy_beach
、#is_end
、cold_ocean
、deep_cold_ocean
、old_growth_pine_taiga
、old_growth_spruce_taiga
、taiga
、windswept_forest
、windswept_gravelly_hills
、windswept_hills
和stony_peaks
。- 可生成寒带变种的绵羊、猪、鸡、牛(统称为家畜)的生物群系。
#spawns_warm_variant_farm_animals
:desert
、warm_ocean
、#is_jungle
、#is_savanna
、#is_nether
、#is_badlands
、mangrove_swamp
、deep_lukewarm_ocean
和lukewarm_ocean
。- 可生成热带变种的绵羊、猪、鸡、牛的生物群系。
- 加入了下列实体标签:
#can_equip_saddle
:horse
、skeleton_horse
、zombie_horse
、donkey
、mule
、pig
、strider
和camel
。- 可以装备鞍的实体。该标签仅用于鞍的物品默认组件,不控制其实际功能。
#can_wear_horse_armor
:horse
。- 表示会在其马类实体物品栏中显示马铠槽位的实体。
- 装备模型
- 加入了预设模型层
pig_saddle
、strider_saddle
、camel_saddle
、horse_saddle
、donkey_saddle
、mule_saddle
、skeleton_horse_saddle
和zombie_horse_saddle
。
- 物品模型映射
- 加入了枚举属性
component
,用于返回物品的组件值(如有)。- 附加字段如下:
- component:物品堆叠组件类型的命名空间ID。
- 可能的值取决于物品堆叠组件类型。例如类型设置为
minecraft:wolf/collar
时,枚举值列表会接受染料颜色(如lime
)。 - 如果可能的值来自注册表但当前数据包未提供此值,则此表项将被静默忽略。
- 附加字段如下:
- 加入了布尔属性
component
:- 使用物品组件谓词来匹配物品组件。
- 类似于物品子谓词,但是,不是将它们编码为
<谓词类型>:<谓词值>
的映射,而是将单个谓词编码为两个字段:
- 类似于物品子谓词,但是,不是将它们编码为
- 使用物品组件谓词来匹配物品组件。
-
-
-
-
- *predicate:组件谓词类型。可以为
damage
、enchantments
、stored_enchantments
、potion_contents
、custom_data
、container
、bundle_contents
、firework_explosion
、fireworks
、writable_book_content
、written_book_content
、attribute_modifiers
、trim
和jukebox_playable
中之一。 - *value:谓词指定的值。
- *predicate:组件谓词类型。可以为
-
-
-
- 颜色图
- 加入了
dry_foliage.png
,用于枯叶类可着色方块的着色。
- 资源包
- 为绵羊羊毛加入了底层纹理
sheep_wool_undercoat
,以在游戏中动态着色。
- 客户端核心文件
- 加入了新命令行传入参数
--renderDebugLabels
。- 为相关OpenGL对象添加调试标签,使开发者更容易调试渲染。
- 服务端核心文件
- 在
server.jar
中加入了net.minecraft.gametest.Main
入口点,用于自动启动运行全部可用测试项目的服务端。- 选项如下:
--help
:显示用法信息。--packs <路径>
:设置世界中启用的数据包路径(可以为包含pack.mcmeta
文件的文件夹或.zip
格式的压缩包)。--report <路径>
:将类似于JUnit的XML报告导出到给定路径。--tests <选择>
:指定根据选择表达式(与命名空间测试实例ID匹配的通配符表达式)运行的测试内容。如果此项省略或指定空ID,则运行所有测试项。--universe <路径>
:(默认为gametestserver
)设置服务端世界存放路径。会替换已有的文件夹。--verify <布尔值>
:(默认为false
)启用测试验证。启用时,对每个90度旋转步骤运行以test
或testNamespace
指定的测试100次。
- 用法示例:
java -DbundlerMainClass="net.minecraft.gametest.Main" -jar server.jar --packs mytestpacks
- 选项如下:
- 测试实例定义格式
- 游戏测试实例是定义运行测试的小型资产,可以在数据包注册表
test_instance
中定义。 - 测试类型分为2种:内置函数测试和基于方块的测试。
- 内置函数测试依赖内置函数来运行测试并指示成功或失败。
- 基于方块的测试使用测试结构中的测试方块来运行测试并指示成功或失败。
- 游戏内置一个永远成功的测试实例
minecraft:always_pass
。 - 格式如下:
-
- 父标签
- *environment:作为测试一部分的测试环境的命名空间ID。
- *structure:用于测试的结构的命名空间ID。
- *type:测试的类型。需为
block_based
或function
之一。 - *max_ticks:(值>0)允许测试通过而不超时的最大刻数。
- setup_ticks:(默认为
0
,值≥0)放置测试结构后、测试启动前需要等待的刻数。 - max_attempts:(默认为
1
,值>0)尝试运行此测试的次数。 - required_successes:(默认为
1
,值≥0)此测试必须成功的次数。 - required:(默认为
true
)对要通过的完整测试套件而言,这个测试是否必须通过。 - manual_only:(默认为
false
)此测试是否不包含于自动测试运行组中。 - sky_access:(默认为
false
)此测试是否需要天空。为false
时,测试结构被屏障完全包裹;为true
时,屏障盒顶部敞开。 - rotation:(默认为
none
)对测试结构应用的旋转角度。可以为none
、clockwise_90
、180
或counterclockwise_90
之一。- type为
function
时,附加以下字段:
- type为
- *function:要运行的测试函数的命名空间ID。目前内置的测试函数只有
minecraft:always_pass
。
- 父标签
- 测试环境定义格式
- 游戏测试环境是对测试进行分组并为其提供正确的运行前提条件的一种方法,可以在数据包注册表
test_environment
中定义。 - 游戏内置一个空测试环境
minecraft:default
。 - 格式如下:
-
- 父标签
- *type:测试环境的类型。需为
all_of
、function
、game_rules
、weather
或time_of_day
之一。- type为
all_of
时,附加以下字段:
- type为
- *definitions:子定义设置列表,其中的定义均会应用。
- type为
function
时,附加以下字段:
- type为
- setup:用于安装的mcfunction文件的命名空间ID。
- teardown:用于卸载的mcfunction文件的命名空间ID。
- type为
game_rules
时,附加以下字段:
- type为
- *bool_rules:布尔型游戏规则的设置列表。
- :一个游戏规则与一个设置值。
- *rule:要设置的规则的精确ID。测试环境完成后,此规则会被重置为默认值。
- *value:规则的设置值。
- :一个游戏规则与一个设置值。
- *int_rules:整型游戏规则的设置列表。
- :一个游戏规则与一个设置值。
- *rule:要设置的规则的精确ID。测试环境完成后,此规则会被重置为默认值。
- *value:规则的设置值。
- type为
weather
时,附加以下字段:
- :一个游戏规则与一个设置值。
- *weather:要设置的天气。需为
clear
、rain
和thunder
之一。- type为
time_of_day
时,附加以下字段:
- type为
- *time:(值≥0)要设置的当日时间,单位为刻。
- *type:测试环境的类型。需为
- 父标签
- 游戏测试框架
- 现在可以通过修改游戏代码的方式在
TEST_FUNCTION
注册表中添加测试函数,以使用比基于方块的测试方式更通用的游戏测试框架。
- 通用变种选择器
- 具有生成规则的变种现在使用统一方法选择,过程如下:
- 每个变种字段spawn_conditions的每一表项包含一个条件和一个整数优先级
- 给定实体类型的所有变种的条件将根据生成实体的位置进行评估,然后游戏从剩余优先级最大的表项中随机选取一项
- 如果不存在任何条件,则变种保持默认值
- 格式如下:
-
- spawn_conditions:通用变种选择器。
-
- *priority:选中此条件的优先级。
- *condition:一项生成条件。
- type:生成条件类型。如果此字段不存在,则条件始终为真。
- 如果type为
biome
,则匹配生成位置的生物群系,附加下列字段:
- 如果type为
- *biomes:单个生物群系ID、列表或生物群系标签。
- 如果type为
moon_brightness
,则匹配生成位置的月亮亮度,附加下列字段:
- 如果type为
- *range:单个浮点数或如
{"min": 1, "max": 2}
一样的对象。- *min:最小亮度值。
- *max:最大亮度值。
- 如果type为
structures
,则匹配生成位置是否在结构中,附加下列字段:
- *structures:单个结构ID、列表或结构标签。
- type:生成条件类型。如果此字段不存在,则条件始终为真。
-
- spawn_conditions:通用变种选择器。
- 猫变种定义格式和青蛙变种定义格式
- 猫的变种可通过
data/<命名空间>/cat_variant/<id>.json
来添加。 - 青蛙的变种可通过
data/<命名空间>/frog_variant/<id>.json
来添加。 - 文件格式如下:
-
- 父标签
- *asset_id:此变种纹理资产的命名空间ID,会被解析为
assets/<命名空间>/textures/<路径>.png
。 - spawn_conditions:通用变种选择器。
- *asset_id:此变种纹理资产的命名空间ID,会被解析为
- 父标签
- 这两项特性均属于实验性功能。
- 猪变种定义格式、牛变种定义格式和鸡变种定义格式
- 猪的变种可通过
data/<命名空间>/pig_variant/<id>.json
来添加。 - 牛的变种可通过
data/<命名空间>/cow_variant/<id>.json
来添加。 - 鸡的变种可通过
data/<命名空间>/chicken_variant/<id>.json
来添加。 - 文件格式如下:
-
- 父标签
- *asset_id:此变种纹理资产的命名空间ID,会被解析为
assets/<命名空间>/textures/<路径>.png
。 - model:此变种使用的模型。
- spawn_conditions:通用变种选择器。
- *asset_id:此变种纹理资产的命名空间ID,会被解析为
- 父标签
- 这三项特性均属于实验性功能。
- 狼音效变种定义格式
- 狼的音效变种可通过
data/<命名空间>/wolf_sound_variant/<id>.json
来添加。 - 格式:
-
- 父标签
- ambient_sound:狼空闲音效的命名空间ID,或直接定义一个声音事件。
- death_sound:狼死亡音效的命名空间ID,或直接定义一个声音事件。
- growl_sound:狼嚎叫音效的命名空间ID,或直接定义一个声音事件。
- hurt_sound:狼受伤音效的命名空间ID,或直接定义一个声音事件。
- pant_sound:狼喘息音效的命名空间ID,或直接定义一个声音事件。
- whine_sound:狼呜咽音效的命名空间ID,或直接定义一个声音事件。
- 父标签
- 纹理图集
- 向
paletted_permutations
纹理图集源中加入了新字段:- separator:(默认为
_
)连接原始纹理和置换调色板以生成精灵图名称时使用的分隔符。
- separator:(默认为
更改
方块
- 大型垂滴叶
- 不再能放置于苍白苔藓块上。
- 气泡柱
- 现在不受其影响的实体,在里面产生的粒子和音效更少。
- 嘎枝之心
- 为在合理结构中但由于白天而处于休眠状态的嘎枝之心加入了新纹理。
- 休眠状态的嘎枝之心不能生成嘎枝,也不能生成树脂团。
- 现在激活与休眠状态的转换取决于固定的时间,而不再受天气和维度亮度影响。
- 方块状态
active
现在被creaking_heart_state
取代。- 可能的值为
uprooted
、dormant
或awake
。
- 可能的值为
- 眼眸花
- 现在状态的转换取决于固定的时间,而不再受天气和维度亮度影响。
- 火
- 默认情况下,周围8个区块内不含玩家时,火不再燃烧或蔓延。
- 铁块、铁栏杆、铁活板门、铁门和重质测重压力板
- 加入了新的破坏、放置、在上方移动、摔落和打击音效。
- 橡树树叶、丛林树叶、金合欢树叶、深色橡树树叶、云杉树叶、红树树叶、白桦树叶、杜鹃树叶和盛开的杜鹃树叶
- 现在有概率产生对应颜色的落叶粒子。
- 苍白橡树树苗和苍白橡树树叶
- 地图基色由
#FFFCF5更改为
#A7A7A7。
- 磁石
- 更改了配方,现在需要1个铁锭和8个雕纹石砖合成。
- 此配方现在会在玩家获得铁锭或磁石时解锁。
- 现在可以在主世界和下界的废弃传送门的战利品箱子中找到1 – 2个磁石。
- 树脂砖台阶
type
状态为double
的树脂砖台阶现在会正常掉落2个树脂砖台阶而非1个。
- 信标
- 信标及其光柱的渲染距离现在可以超过16个区块,直到客户端设置的渲染距离。
- 相机离光柱越远,光柱将渲染得越厚,以使在远处也能发现光柱。
- 信标光柱的最大渲染高度也从1024格提升到了2048格。
- 沙子、红沙和所有陶瓦
- 现在当任意3个方向上8格外也存在上述方块时会发出环境音效。
block.sand.idle
会在所有生物群系中播放;在沙漠和恶地中,还可能播放block.sand.wind
。
- 枯萎的灌木
- 现在当下方两格均为沙子、红沙或陶瓦时会发出环境音效。
- 现在可在耕地上放置。
- 细雪
- 穿着皮革靴子摔落到其上的实体,如果摔落高度大于2.5格,则会穿过细雪而不被其接住。
- 草丛
- 降低了其音效文件(挖掘)的音量。
- 眼眸花和苍白垂须
- 产生的闲置音效分类现在由“方块”改为“环境”。
- 熔岩和水
- 产生的环境音效分类现在由“方块”改为“环境”。
- 活塞
- 现在所破坏的方块会播放对应的破坏音效。
- 移动的活塞
- 方块实体数据中存储的blockState不再允许指定为空对象。
- 末地折跃门方块
- 方块实体数据中的exit_portal不再在被移除时保留。
- 熔炉、烟熏炉和高炉
- 方块实体数据中的RecipesUsed不再在被移除时保留。
- 头颅
- 方块实体数据中的note_block_sound不再在被移除时保留。
- 营火
- CookingTimes和CookingTotalTimes字段不再在被移除时保留。
- 雕纹书架
- last_interacted_slot字段现在具有默认值
-1
。
- 漏斗
- TransferCooldown字段现在具有默认值
-1
。
- 拼图方块
- name、target和pool字段现在具有默认值
minecraft:empty
。 - final_state现在具有默认值
minecraft:air
。
- 幽匿尖啸体
- warning_level字段现在具有默认值
0
。
- 结构方块
- ignoreEntities和showboundingbox字段现在具有默认值
true
。 - posY字段现在具有默认值
1
。
物品
- 蜂巢和蜂箱
- 现在其方块物品默认具有
block_state
组件。
- 弩
- 现在其物品提示框中会显示装填的所有物品,而非只有首个物品。
- 其中装填的所有物品也会将它们的完整提示框以分段形式加入。
- 相同弹射物的提示框文本会合并。
- 容器
- 所有容器方块物品现在会像潜影盒一样在提示框中显示其中的前5个物品(若有)。
- 烟花火箭
- 现在会合并提示框中的多个相同烟火之星的提示框文本。
- 地图
- 没有
map_id
组件的地图不再在其提示框中显示“未知地图”。- 无效ID仍会产生此提示。
- 收纳袋
- 现在可以在村庄的战利品箱子中找到。具体位于:
- 各生物群系村庄房屋
- 村庄皮匠小屋
- 村庄制图师小屋
- 村庄武器匠小屋
- 刷怪蛋
- 更新了纹理。
- 现在刷怪蛋的大小与所生成生物的大小相匹配。
- 现在刷怪蛋的外观会凸显出所生成生物的外观。
生物
- 骆驼
- 现在会在沙漠中自然生成。
- 牛和哞菇
- 更新了模型。
- 现在会渲染其鼻子。
- 现在腿部模型是镜像的。
- stew_effects字段不再在被移除时保留。
- 嘎枝
- 现在与嘎枝之心绑定的嘎枝也能被命名牌命名。
- 被命名的嘎枝不会因为白天而消失。
- 僵尸猪灵
- 现在只会在被玩家杀死时掉落玩家独有战利品。
- 绵羊
- 绵羊的羊毛颜色现在取决于其生成所处的生物群系。
-
生物群系 寒冷生物群系[显示]温暖生物群系[显示]其他生物群系 绵羊毛色 常见(81.836%) 黑色 棕色 白色少见(各占5%) 灰色
淡灰色
白色 黑色
灰色
淡灰色少见(3%) 棕色 黑色 棕色稀有(0.164%) 粉红色
- 现在绵羊身上的毛斑块会保留剪毛前染的颜色,以匹配基岩版。
- 现在可以食用蕨,以匹配基岩版。
- 调整了羊毛纹理,以消除背部的明显线条。
- 可骑乘生物
- 现在装备于其身上的鞍在掉落时能保留诸如自定义名称之类的物品属性。
- 玩家
- 存档崩溃报告中,现在还可能包含玩家的UUID、坐标、游戏模式和权限等级。
- 村民
- 实体数据中的Gossips不再在移除时保留。
- FoodLevel、Xp、LastRestock、LastGossipDecay和RestocksToday字段现在具有默认值
0
。
- 流浪商人
- 实体数据中的wander_target不再在移除时保留。
- DespawnDelay字段现在具有默认值
0
。
- 狼
- 实体数据中的CollarColor字段现在默认为
14
(红色)而非0
(白色)。
- 悦灵
- 移除了实体数据中冗余的CanDuplicate字段。
- 猫
- 实体数据中的CollarColor字段现在默认为
14
(红色)而非0
(白色)。
- 苦力怕
- Fuse字段现在具有默认值
30
。 - ExplosionRadius字段现在具有默认值
3
。
- 海豚
- 移除了实体数据中的TreasurePosX、TreasurePosY和TreasurePosZ字段。
- Moistness字段现在具有默认值
2400
。
- 末影龙
- DragonDeathTime字段现在具有默认值
0
。
- 末影人
- carriedBlockState不再允许指定为空对象。
- 恶魂
- ExplosionPower字段现在具有默认值
1
。
- 山羊
- HasLeftHorn和HasRightHorn字段现在具有默认值
true
。
- 狐狸
- Trusted字段现在具有默认值
[]
。 - 用
/data
修改Trusted字段时,不再会将其与旧状态合并。
- 幻翼
- 将Size字段重命名为size。
- AX、AY和AZ字段现已合并为anchor_pos字段。
- 潜影贝
- Color字段现在具有默认值
16
(未染色)。
- 骷髅
- StrayConversionTime字段不再在被移除时保留。
- 雪傀儡
- Pumpkin字段现在具有默认值
true
。
- 行商羊驼
- DespawnDelay字段现在具有默认值
47999
。
- 海龟
- HomePosX、HomePosY和HomePosZ字段现已合并为home_pos字段。
- 移除了TravelPosX、TravelPosY和TravelPosZ字段。
- 将HasEgg字段重命名为has_egg。
- 恼鬼
- 将LifeTicks字段重命名为life_ticks。
- BoundX、BoundY和BoundZ字段现已合并为bound_pos字段。
- 僵尸类生物
- DrownedConversionTime字段不再在被移除时保留。
- 僵尸村民
- Gossips字段不再在移除时保留。
- Xp字段现在具有默认值
0
。 - ConversionTime字段不再在被移除时保留。
- 灾厄村民和劫掠兽
- patrol_target字段不再在移除时保留。
- 非玩家生物数据
ArmorItems
、HandItems
和body_armor_item
字段现已合并为equipment字段。- 格式为每个盔甲槽位与物品堆叠的映射。
- 有效的盔甲槽位包括:
head
、chest
、legs
、feet
、mainhand
、offhand
、body
和saddle
。 - 此字段不存在时,实体将无盔甲。
- 可驯服的生物
Owner
字段不再必须调用玩家。
- 实体数据
ArmorDropChances
、HandDropChances
和body_armor_drop_chance
字段现在已合并为drop_chances字段。- 格式为装备槽位类型与概率值的映射,有效的装备槽位包括
head
、chest
、legs
、feet
、mainhand
、offhand
、body
和saddle
。 - 如果此字段未指定或被移除,则掉落概率为默认值
0.085f
。 - 值默认的掉落概率字段不再被存储;如果drop_chances内所有字段均为默认值,则此字段会被移除。
- 示例:
drop_chances:{chest:0.1,feet:1.0}
- 格式为装备槽位类型与概率值的映射,有效的装备槽位包括
- FallDistance现在改为fall_distance。
非生物实体
- 区域效果云
- 为区域效果云实体数据加入了新字段potion_duration_scale,默认为
1.0
。- 表示其中药水效果持续时间的缩放系数。
- 滞留药水生成的区域效果云的缩放系数为
0.25
。
- Duration字段现在具有默认值
-1
。 - 现在当Duration字段为
-1
时,区域效果云将永不自然消失。- 这代表未指定持续时间而生成的区域效果云不再立刻消失。
- 下落的方块
- 实体数据中的BlockState字段现在可以为
air
,并会导致其立刻消失。 - 现在BlockState在未指定或无效时默认为
sand
。 - BlockState不再允许指定为空对象。
- HurtEntities字段现在具有默认值
false
。但当BlockState为铁砧时,此值默认为true
。 - FallHurtAmount字段现在具有默认值
0
。 - FallHurtMax字段现在具有默认值
40
。 - DropItem字段现在具有默认值
true
。 - TileEntityData字段不再在被移除时保留。
- 物品实体
- 在地面上时,模型大小现在会影响悬停运动。
- 因此,模型大小不会使其卡进下方的方块中。
- 物品堆叠在地面上悬停的位置现在取决于模型大小和模型类型。
- 模型深度(Z轴)小于方块的1⁄16时,物品显示为平面堆叠。
- 否则,模型将渲染为一组从中心全方向偏移的物品。
- 之前,平面堆叠只在使用
builtin/generated
父级模型时渲染。
- 实体数据Owner和Thrower字段不再在被移除时保留。
- Health字段现在具有默认值
5
。 - PickupDelay字段现在具有默认值
0
。 - Age字段现在具有默认值
0
。
- 被激活的TNT
- 现在block_state在未指定或无效时默认为
tnt
。 - block_state不再允许指定为空对象。
- fuse字段现在具有默认值
80
。 - explosion_power字段现在具有默认值
4
。
- 潜影弹
- Dir和Target不再在移除时保留。
- 唤魔者尖牙、区域效果云和所有弹射物
- 实体数据Owner字段不再在被移除时保留。
- 物品展示框和荧光物品展示框
- TileX、TileY和TileZ字段现已合并为block_pos字段。
- ItemDropChance字段现在具有默认值
1.0
。
- 画和拴绳结
- TileX、TileY和TileZ字段现已合并为block_pos字段。
- 箭类弹射物
- inBlockState和SoundEvent字段不再在被移除时保留。
- inBlockState不再允许指定为空对象。
- 矿车及其变种
- 移除了冗余的CustomDisplayTile字段。
- 已指定的DisplayState现在会覆盖默认展示的方块状态。
- DisplayState不再允许指定为空对象。
- 现在即使没有自定义展示方块状态设置,也可以指定DisplayOffset来覆盖默认偏移量。
- 展示实体
- glow_color_override字段不再在被移除时保留。
- 方块展示实体的block_state不再允许指定为空对象。
- 现在
firstperson_lefthand
和thirdperson_lefthand
变换规则的渲染效果与手持时相同。 - interpolation_duration、teleport_duration和start_interpolation字段现在具有默认值
0
。 - view_range字段现在具有默认值
1
。 - shadow_radius字段现在具有默认值
0
。 - shadow_strength字段现在具有默认值
1
。 - width和height字段现在具有默认值
0
。
- 喷溅药水和滞留药水
- 移除了
potion
实体类型。现在代表喷溅药水和滞留药水的实体被拆分为splash_potion
和lingering_potion
。
- 烟花火箭
- ShotAtAngle字段现在具有默认值
false
。
- 交互实体
- width和height字段现在具有默认值
1
。
- 光灵箭
- Duration字段现在具有默认值
200
。
- TNT矿车
- fuse字段现在具有默认值
80
。 - explosion_power字段现在具有默认值
4
。 - explosion_speed_factor字段现在具有默认值
1
。
- 箭类弹射物
- damage字段现在具有默认值
2
。
- 火球类弹射物
- acceleration_power字段现在具有默认值
0.1
。
- 火球
- ExplosionPower字段现在具有默认值
1
。
世界生成
- 恶地
- 现在绵羊、猪、鸡和牛会在恶地及其生物群系变种自然生成。
- 返回传送门
- 如果(0,0)处没有方块,现在返回传送门会在比维度最低位置高1格处生成,而非在最低点生成。
- 尝试放置返回传送门方块时,现在会使被替换的方块掉落。
- 甘蔗斑块
- 不再生成于深暗之域、溶洞、雪林和积雪山坡。
- 巨型蘑菇
- 放置蘑菇方块时,现在只能取代空气及
#replaceable_by_mushrooms
方块标签内的方块。
- 草甸
- 现在矮草丛的生成更加稀疏。
- 苍白之园
- 更改了生成,现在会更多地取代黑森林的生成空间。
- 林地府邸
- 现在能在苍白之园中生成。
游戏内容
- 交易
- 对制图师和流浪商人交易项的平衡性调整不再属于实验性内容。
- 更改了流浪商人的交易项:
- 流浪商人的交易项现在由以下顺序和数量组成:
- 2个收购选项
- 2个特殊售货选项
- 5个普通售货选项
- 新增了收购选项,加入并更改了一些售货选项,详见下表:
- 流浪商人的交易项现在由以下顺序和数量组成:
- 更改了流浪商人的交易项:
-
-
-
流浪商人的新增交易项 收购选项 购买的物品 数量 出售的物品 数量 可交易次数 烤马铃薯4 绿宝石1 2 发酵蛛眼1 绿宝石3 2 干草捆1 绿宝石1 2 奶桶1 绿宝石2 2 水瓶1 绿宝石1 2 水桶1 绿宝石2 2 特殊售货选项 购买的物品 数量 出售的物品 数量 可交易次数 绿宝石1 金合欢原木8 4 绿宝石1 白桦原木8 4 绿宝石1 樱花原木8 4 绿宝石1 深色橡木原木8 4 绿宝石1 红树原木8 4 绿宝石1 苍白橡木原木8 4 绿宝石6-20 附魔铁镐[注 1]1 1 绿宝石1 丛林原木8 4 绿宝石1 橡木原木8 4 绿宝石5 隐身药水(延长版)1 1 绿宝石1 云杉原木8 4 普通售货选项 购买的物品 数量 出售的物品 数量 可交易次数 绿宝石1 野花簇1 12 绿宝石1 高枯草丛1 12 绿宝石3 萤火虫灌木丛1 12
-
-
-
-
-
流浪商人的交易项更改 类别 购买的物品 数量 出售的物品 数量 可交易次数 普通售货选项 绿宝石1 棕色蘑菇1→3 12→4 特殊售货选项→普通售货选项 绿宝石5→3 河豚桶1 4 特殊售货选项→普通售货选项 绿宝石5→3 热带鱼桶1 4 普通售货选项 绿宝石1 火药1→4 8→2 普通售货选项 绿宝石1 睡莲2→5 5→2 普通售货选项 绿宝石3→1 浮冰1 6 普通售货选项 绿宝石1 红色蘑菇1→3 12→4 普通售货选项 绿宝石1 藤蔓1→3 12→4
-
-
-
- 学徒制图师现在会根据生物群系着装出售7种新的地图。
- 各村庄地图指向对应生物群系的村庄,丛林探险家地图指向丛林神庙,沼泽探险家地图指向沼泽小屋。
- 学徒制图师现在会根据生物群系着装出售7种新的地图。
-
-
-
不同着装的制图师可能出售的地图 沙漠 丛林 平原 热带草原 雪原 沼泽 针叶林 第1组 热带草原村庄地图 热带草原村庄地图 热带草原村庄地图 沙漠村庄地图 平原村庄地图 雪原村庄地图 平原村庄地图 第2组 平原村庄地图 沙漠村庄地图 针叶林村庄地图 平原村庄地图 针叶林村庄地图 针叶林村庄地图 雪原村庄地图 第3组 丛林探险家地图 沼泽探险家地图 – 丛林探险家地图 沼泽探险家地图 丛林探险家地图 沼泽探险家地图
-
-
-
- 专家制图师现在会根据生物群系着装出售不同颜色的旗帜。
-
-
-
不同着装的制图师可能出售的旗帜对应颜色 着装样式 沙漠 平原 热带草原 雪原 针叶林 丛林 沼泽 颜色 绿色
黄绿色
青色
橙色
灰色白色
黄色
棕色
粉红色红色
绿色
橙色
品红色蓝色
白色
红色
青色
淡蓝色蓝色
黄绿色
紫色
粉红色绿色
黄色
棕色紫色
淡蓝色
黑色
-
-
-
-
- 沼泽和丛林着装的村民一般不会自然生成,需要玩家在对应生物群系繁殖村民或者治愈对应生物群系生成的僵尸村民。
-
-
-
-
现在制图师的交易项 等级 购买的物品 默认数量 价格乘数 出售的物品 数量 失效前可交易次数 村民获得的经验值 新手 纸24 0.05 绿宝石1 12 2 绿宝石7 0.05 空地图1 12 1 学徒 玻璃板11 0.05 绿宝石1 12 10 绿宝石
指南针8
10.2 前述各探险家地图[注 2] 1 12 5 老手 指南针1 0.05 绿宝石1 12 20 绿宝石
指南针13
10.2 海洋探险家地图1 12 10 绿宝石
指南针12
10.2 试炼探险家地图1 12 10 专家 绿宝石7 0.05 物品展示框1 12 15 绿宝石2 0.05 前述各旗帜1 12 15 大师 绿宝石8 0.05 旗帜图案(地球)1 12 30 绿宝石
指南针14
10.2 林地探险家地图1 12 30
-
-
- ↑ 物品进行了5 – 19级附魔,不能提供宝藏型魔咒。
- ↑ 分为3组,每一组独立抽取。
- 目前对图书管理员和盔甲匠交易项的平衡性调整仍然属于实验性内容。
- 进度
- 进度“天涯共此石”现在移动到冒险根进度后。
- 魔咒
- 现在荆棘造成伤害时会正常播放
player_hurt
音效事件。
- 槽位
- 移除了
horse.saddle
鞍槽位。
- 摔落
- 存储时和部分计算中的摔落高度现在使用双精度浮点数而非单精度浮点数。
- 移动
- 由于考虑到MC-152728的修复对跑酷、速搭和移动造成了太多副作用,因此回退了这项修复。
- 创造模式物品栏
- 刷怪蛋一栏的图标现在由猪刷怪蛋改为苦力怕刷怪蛋。
- 现在涡流纹样陶片位于探险纹样陶片之后。
命令格式
/place template
- 现在接受新选项
strict
,以在放置方块时不触发方块更新和形状更新。- 新语法:
place template <template> [<pos> [<rotation> [<mirror> [<integrity> [<seed> [strict]?]?]?]?]?]?
- 新语法:
/clone
- 现在接受新选项
strict
,以在放置方块时不触发方块更新和形状更新。- 新语法:
clone [from <sourceDimension>]? <begin> <end> [to <targetDimension>]? <destination> [strict]? [[replace|masked|filtered <filter>] [force|move|normal]?]?
- 新语法:
/data
- 现在可以透明地创建和修改异构列表。
- 不再支持用空键遍历路径,如
/data get ... foo.''.bar
不再受支持。
/fill
- 处理方块实体数据的方式发生了如下更改:
- 如果未指定方块实体数据且当前目标方块有数据,则方块实体数据会被保留。
- 如果指定了方块实体数据,则将目标方块实体数据设置为指定值。
- 若要清除方块实体数据,现在必须指定
{}
。
- 若要清除方块实体数据,现在必须指定
- 如果方块状态或方块实体数据发生了改变,则操作视为成功。
- 现在接受新选项
strict
,以在放置方块时不触发方块更新和形状更新。 /fill
命令中的replace
选项现在可以在后面附加额外选项。- 新语法:
fill <from> <to> <block> keep
fill <from> <to> <block> [replace <filter>]? [strict|destroy|hollow|outline]?
/setblock
- 处理方块实体数据的方式发生了如下更改:
- 如果未指定方块实体数据且当前目标方块有数据,则方块实体数据会被保留。
- 如果指定了方块实体数据,则将目标方块实体数据设置为指定值。
- 若要清除方块实体数据,现在必须指定
{}
。
- 若要清除方块实体数据,现在必须指定
- 如果方块状态或方块实体数据发生了改变,则操作视为成功。
- 现在接受新选项
strict
,以在放置方块时不触发方块更新和形状更新。 - 新语法:
setblock <pos> <block> [destroy|keep|replace|strict]?
/scoreboard
- 指定
styled
数字格式时的文本格式现在也需为SNBT而非JSON格式。
- 文本组件
- 现在
/bossbar
、/scoreboard
和/team
中的文本组件会以@s
为执行者解析。
- SNBT格式
- SNBT现在接受异构列表,即接受不同类型元素的列表。
- 为保持兼容性,NBT格式未变化。
- 从SNBT转换到NBT时(如作为
/data
或/summon
的参数),会将异构列表转换为可被NBT格式接受的形式。- 例如,
['a', {'b':3}]
会存储为[{'': 'a'},{'b':3}]
。 - 从NBT转换到SNBT时(如使用
/data
显示),上述转换不会逆向进行。
- 例如,
- 扩展了命令(如NBT、文本组件、谓词等)中描述类对象数据的文本格式。
-
- 数字格式
- 浮点数的整数或小数部分现在可以省略。
- 例如,
.1
和1.
现在是有效的。
- 例如,
- 浮点数现在可以使用E计数法。
- 例如,现在
1.2e3
、1.2E3
、1.2E+3
和12000e-1
都可以用于表示1200.0
。
- 例如,现在
- 整数现在可以添加
0x
前缀来表示16进制数,也可以添加0b
前缀来表示2进制数。- 例如,
0xbad
(等于2989)、0xCAFE
(等于51966)以及0b101
(等于5)。
- 例如,
- 整数现在不能以
0
为开头。- 通常这表示8进制数,但现在将其限制以避免意外使用。
- 数字现在可以在数字序列之间(但不能在序列的开头或结尾)包含
_
字符。- 例如,
0b10_01
、0xAB_CD
、1_2.3_4__5f
、1_2e3_4
- 例如,
NaN
、Inf
或16进制浮点数不受支持。- 扩展了类型后缀:
- 整型后缀(代表字节的
b
或B
、代表短整数的s
或S
、代表整数的i
或I
、代表长整数的l
或L
等)现在可以加上s
(有符号)或u
(无符号)。 - 新后缀仅在解析时影响有效范围:值仍然以带符号的形式存储。
- 例如,
240ub
等同于-16sb
,而240sb
不会被解析。
- 例如,
- 没有
s
或u
符号时,默认十进制数有符号,而二进制数和十六进制数无符号。 - 注:由于
b
也是一个有效的十六进制数,单位字节的十六进制值只能随符号后缀写入,如0x11ub
或0x11sb
。
- 整型后缀(代表字节的
- 字符串
- 引号字符串现在可以使用
'
、"
和\
以外的转义序列:- Unicode转义:
\x
:2位数转义,如\x42
。\u
:4位数转义,如\u2603
。\U
:8位数转义,如\U00002603
。\N{<名称>}
:按名称转义Unicode字符,如\N{Snowman}
。
- 内置转义序列:
\b
:退格,对应Unicode转义为\x08
。\s
:空格,对应Unicode转义为\x20
。\t
:水平制表符,对应Unicode转义为\x09
。\n
:换行,对应Unicode转义为\u0a
。\f
:换页,对应Unicode转义为\u0c
。\r
:回车,对应Unicode转义为\u0d
。
- Unicode转义:
- 未加引号的字符串现在不能以
0-9
、.
、+
和-
开头,以避免与数字的意外冲突。
- 数组
- 现在没有后缀的数组(
[B;]
、[I;]
、[L;]
)中的值会假定其具有与数组类型相匹配的后缀。- 例如,
[B;1,2]
等价于[B; 1b, 2b]
。
- 例如,
- 数组现在可以接受比数组类型更小的值类型。
- 例如,
[I;1b,2s,3]
现在有效等价于[I;1i,2i,3i]
。
- 例如,
- 列表
- 现在接受末尾的唯一逗号。
- 例如,
[1,2,]
现在有效等价于[1,2]
。
- 例如,
- 出现在开头和中间的逗号都不被允许,例如
[,]
和[1,,]
均无效。
- 复合标签
- 复合标签(映射)现在接受末尾的唯一逗号。
- 例如,
{a:b,}
现在有效等价于{a:b}
。
- 例如,
- 出现在开头和中间的逗号都不被允许,例如
{,}
和{a:b,,}
均无效。
-
- 为简化数据输入和宏使用,SNBT现在接受以下操作:
bool(<参数>)
:将参数转换为布尔值。- 参数为布尔值时,直接返回值。
- 参数为数字时,在非0时返回
true
,否则返回false
。
uuid(<字符串>)
:将UUID的字符串表示转换为整型数组。
- 将溢出至无穷的浮点值(如
1e1000
)现在会被拒绝。
- NBT格式
- 游戏中任何带有NBT数据的接口(SNBT表示,
/data
)现在都支持异构列表,即元素不属于同一类型的列表。/data
插入或替换不同类型的列表不再报错。- 数组(如
[I;1,2,3]
)仍被严格限制。 - 这意味着用于表示异构列表的“包装器”对象不再可通过游戏内现象观测。
- NBT文件的存储格式仍未改变。
- 异构列表会在存储之前进行转换,以绕过NBT约束。
常规
- 进度定义格式
background
字段不再需要textures/
前缀和.png
后缀。
- 区块加载
- 由传送门加载的区块现在会在重新打开世界时重新加载。
- 区块刻
- 现在更改了部分区块刻的执行条件。
- 雨雪相关逻辑、子区块内的随机刻不再只在玩家128格内的区块中执行。
- 雷暴相关逻辑、周期生成仍需在玩家128格内的区块执行。
- 区块刻的执行现在需要实体计算等级(计算等级≤31)而非方块计算等级(计算等级≤32),即游戏不再使弱加载区块执行区块刻。
- 全景图
- 更新了主菜单全景图以匹配春意盎然。
- 数据包
- 将数据包版本号更改为
71
。
- 文本组件
- 文本组件现在不再存储为JSON字符串。
- 现在文本组件数据格式可以直接内联到外部结构中。
- 示例:
minecraft:custom_name="{\"text\":\"Renamed item\"}"
会变为minecraft:custom_name={text:'Renamed item'}
。
- 示例:
- 诸如
/tellraw
和/title
这些命令的参数也随之变化,如:/tellraw @s {"text":"Hello world"}
会变为/tellraw @s {text:'Hello world'}
。 - 注:文本组件嵌入NBT时,布尔值会被视为数字。若要将布尔值参数传递到翻译,则需要使用字符串形式。
nbt
类型和interpret
设置为true
的文本组件,将直接按给定的nbt解析文本组件,而非先转换为字符串再解析为JSON。
- 现在文本组件数据格式可以直接内联到外部结构中。
- 更新了悬停事件格式:
hoverEvent
字段现在重命名为hover_event
。- (曾由已渲染的文本组件解析而来的)遗留的
value
字段不再受支持。 - action为
show_text
时:contents
字段已被重命名为value
。- 示例:
{action:'show_text',contents:'Hello world'}
变为了{action:'show_text',value:'Hello world'}
。
- 示例:
- action为
show_item
时:- 移除了
contents
字段。其中字段现在已内联。- 示例:
{action:'show_item',contents:{id:'minecraft:stick',count:2}}
变为了{action:'show_item',id:'minecraft:stick',count:2}
。
- 示例:
- 如果
contents
仅指定了物品ID,则现在会被内联替换为完整格式。- 示例:
{action:'show_item',contents:'minecraft:stick'}
变为了{action:'show_item',id:'minecraft:stick'}
。
- 示例:
- 移除了
- action为
show_entity
时:- 移除了
contents
字段。其中字段现在已内联。 id
字段已被重命名为uuid
。type
字段已被重命名为id
。- 示例:
{action:'show_entity',contents:{id:[I;0,0,0,0],type:'minecraft:pig'}}
变为了{action:'show_entity',uuid:[I;0,0,0,0],id:'minecraft:pig'}
。
- 示例:
- 移除了
- 更新了点击事件格式:
clickEvent
字段现在重命名为click_event
。- action为
open_url
时:- 现在
value
字段已被重命名为url
。- 如果URL值并非带有
https://
或http://
方案的有效URI,则点击事件将不再解析而非仅失效。
- 如果URL值并非带有
- 示例:
{action:'open_url',value:'https://minecraft.net'}
变为了{action:'open_url',url:'https://minecraft.net'}
。
- 现在
- action为
run_command
时:- 现在
value
字段已被重命名为command
。- 如果命令中包含被禁止的字符,则点击事件将不再解析而非仅失效。
- 命令不再总是需要
/
前缀。
- 示例:
{action:'run_command',value:'/say Hi'}
变为了{action:'run_command',command:'/say Hi'}
。
- 现在
- action为
suggest_command
时:- 现在
value
字段已被重命名为command
。- 如果命令中包含被禁止的字符,则点击事件将不再解析而非仅失效。
- 示例:
{action:'suggest_command',value:'/help'}
变为了{action:'suggest_command',command:'/help'}
。
- 现在
- action为
change_page
时:- 现在
value
字段已被重命名为page
。page
字段现在需要正整数而非字符串。
- 示例:
{action:'change_page',value:'1'}
变为了{action:'change_page',page:1}
。
- 现在
- 实体谓词
- stepping_on现在在目标实体不在地面上时恒返回False。
- 实体子谓词
- 移除了变种实体子谓词
axolotl
、fox
、mooshroom
、rabbit
、horse
、llama
、villager
、parrot
、salmon
、tropical_fish
、painting
、cat
、frog
和wolf
。- 其效果已被
components
谓词与变种实体组件的组合取代。
- 其效果已被
- 字段color已从实体子谓词
sheep
中移除。
- 配方
- 对
crafting_transmute
配方类型作出如下更改:result
现在支持指定数量和附加组件以修改结果物品。result
的新格式如下:
-
-
-
- *result:物品的命名空间ID或一组结果物品对象。
- *id:物品的命名空间ID。
- count:(默认为
1
,值>0)物品数量。 - components:(默认为空)附加组件。
- *result:物品的命名空间ID或一组结果物品对象。
-
-
-
-
- 示例:
"result": {"id": "minecraft:stick", "count": 3, "components": {"!minecraft:damage": {}, "minecraft:enchantment_glint_override": {}}}
- 示例:
-
smithing_transform
配方中的base
字段现在是必选的。smithing_trim
配方:base
、template
和addition
字段现在是必选的。- 加入了pattern字段,控制配方中应用哪个纹饰图案。
- 示例:
"pattern": "minecraft:bolt"
。
- 示例:
- 类型转化配方现在不再在输入与输出物品具有相同ID但不完全相同时不生效。
- 物品堆叠组件
- equippable组件现有以下更改:
- slot字段现可设置为
saddle
,表示鞍槽位。 - 现在,拥有该组件的物品可以被穿戴在任何满足allowed_entities的生物的
body
槽位中。 - 加入了可选字段equip_on_interaction,默认为
false
,控制玩家是否可给生物穿戴该物品。- 如为
true
,对该组件允许的生物使用该物品时,如相应槽位没有其他物品,即可为生物穿戴该物品。
- 如为
- slot字段现可设置为
- 移除了
hide_additional_tooltip
组件。- 世界升级时,此组件将被tooltip_display组件取代,由此组件隐藏的组件提示框将加入hidden_components列表中,这些组件包括:
banner_patterns
bees
block_entity_data
block_state
bundle_contents
charged_projectiles
container
container_loot
firework_explosion
fireworks
instrument
map_id
pot_decorations
potion_contents
written_book_content
- 世界升级时,此组件将被tooltip_display组件取代,由此组件隐藏的组件提示框将加入hidden_components列表中,这些组件包括:
attribute_modifiers
、dyed_color
、can_place_on
、can_break
、enchantments
和stored_enchantments
组件中的show_in_tooltip字段已被移除,现在它们总是使用简化形式。- 移除了
jukebox_playable
、trim
和unbreakable
组件中的show_in_tooltip字段。 - 移除了
hide_tooltip
组件。 - 对实体应用的组件现在会从物品转移到所生成的实体上:
custom_name
→任何实体potion_contents
→滞留药水→区域效果云potion_duration_scale
→滞留药水→区域效果云
- 战利品表函数
toggle_tooltips
的toggles
映射表中现在支持任意组件ID。- 现在会在
tooltip_display
组件中切换所指定的组件。
- 现在会在
- 盔甲纹饰定义格式
- 不再包含
template_item
和ingredient
字段。
- 复述功能
- 音量现在受“音乐和声音选项”分类下“声音/语音”选项的影响。
- 注册表
CAT_VARIANT
和FROG_VARIANT
注册表现在变为可写注册表。- 移除了
ITEM_SUB_PREDICATE_TYPE
注册表。
- 实体数据格式
- 项数不正确的Pos、Motion和Rotation(分别需要3、3、2项组件)现在会被完全弃用,而不再只选择已指定的组件。
- 被移除的Tags字段不再保留。
- 实体的Air若未被指定,则默认为最大值。
- 生物数据格式
- FallFlying不再在被移除时保留。
- Health若未被指定,则默认为最大值。
- SleepingX、SleepingY和SleepingZ字段现已合并为sleeping_pos字段。
- 示例:
sleeping_pos: [I;1,2,3]
。
- 示例:
- 玩家数据格式
- 装备于盔甲槽位(包括副手)的物品现在也会在equipment中储存。
- 这些物品在Inventory中的Slot字段会被移除,并转换为equipment中槽位名称的对应字段(包括
feet
、legs
、chest
、head
和offhand
)。
- 这些物品在Inventory中的Slot字段会被移除,并转换为equipment中槽位名称的对应字段(包括
- SpawnX、SpawnY、SpawnZ、SpawnAngle、SpawnDimension和SpawnForced字段现已合并为respawn字段。
- 格式:
-
-
- respawn:玩家重生数据。
- pos:玩家重生点所处的方块位置。
- angle:(默认为
0.0
)玩家重生时的角度。 - dimension:(命名空间ID)玩家重生点所处的维度。
- forced:(默认为
false
)由命令设置重生点时为true
。
- respawn:玩家重生数据。
-
- 将enteredNetherPosition更改为entered_nether_pos,为一个双精度浮点数列表。
- 示例:
entered_nether_pos: [1.0, 2.0, 3.0]
。
- 示例:
- 标签
- 移除了猫变种标签
#default_spawns
和#full_moon_spawns
。 - 将方块标签
#dead_bush_may_place_on
重命名为了#dry_vegetation_may_place_on
,并加入了farmland
。 - 结构标签
#on_desert_village_maps
、#on_jungle_explorer_maps
、#on_plains_village_maps
、#on_savanna_village_maps
、#on_snowy_village_maps
、#on_swamp_explorer_maps
和#on_taiga_village_maps
不再属于实验性内容“村民交易的平衡性调整”。 - 向
#bypasses_shield
伤害类型标签中加入了cactus
、campfire
、dry_out
、hot_floor
、in_fire
、lava
、lightning_bolt
和sweet_berry_bush
。 - 向方块标签
#replaceable
中加入了leaf_litter
。 - 向方块标签
#wall_post_override
中加入了cactus_flower
。 - 向方块标签
#enderman_holdable
中加入了cactus_flower
。 - 从方块标签
#sword_efficient
、#mineable/axe
和#mineable/hoe
中移除了可被瞬间破坏的方块。
- 袭击存储格式
- 重命名以下字段:
Raids
→raids
Tick
→tick
NextAvailableID
→next_id
Id
→id
Started
→started
Active
→active
TicksActive
→ticks_active
BadOmenLevel
→raid_omen_level
GroupsSpawned
→groups_spawned
PreRaidTicks
→cooldown_ticks
PostRaidTicks
→post_raid_ticks
HeroesOfTheVillage
→heroes_of_the_village
TotalHealth
→total_health
NumGroups
→group_count
Status
→status
- 将袭击中心坐标CX、CY、CZ合并为center。
- 方块实体数据格式
- CustomName字段不再在被移除时保留。
- LootTable字段不再在被移除时保留。
- 资源包
- 将资源包版本号更改为
55
。 - 更改了
pig_saddle
纹理的尺寸。 - 与鞍相关的纹理现在被移动或拆分到了
textures/entity/equipment/<实体>-saddle/saddle.png
,以便装备模型调用。- 这些纹理路径中的
horse_skeleton
和horse_zombie
现在已分别改为skeleton_horse
和zombie_horse
。
- 这些纹理路径中的
- 将温带猪纹理
pig
重命名为temperate_pig
,并更改了纹理尺寸。 - 将温带牛纹理
cow
重命名为temperate_cow
,并更改了纹理尺寸。 - 更改了红色和棕色哞菇的纹理尺寸。
- 将温带鸡纹理
chicken
重命名为temperate_chicken
,并从entity/chicken.png
移动到entity/chicken/temperate_chicken.png
。 sheep_fur
现在被重命名为sheep_wool
。- 移除了
spawn_egg.png
和spawn_egg_overlay.png
。 - 狼原来的音效文件现在移入
classic
文件夹。 - 移除了狼未使用的
howl
音效。 - 向Programmer Art中加入了25w08a更新前刷怪蛋的纹理。
- 装备模型
- 配置了dyeable的装备模型层的显示不再要求物品处于
#dyeable
物品标签中。
- 着色器和后处理管线
- 移除了核心着色器的着色器程序定义文件和后处理效果的JSON文件。
- 着色器程序本身仍可用且可被覆写。
- 后处理效果仍可用JSON文件配置。
- 后处理渲染过程JSON格式中的program现被vertex_shader和fragment_shader取代。
<命名空间>:<路径>
会被解析为assets/<命名空间>/shaders/<路径>.<vsh|fsh>
。
- 每个Uniform定义的type字段现在是必选项。
- 现在可选值包括
int
、ivec3
、float
、vec2
、vec3
、vec4
和matrix4
。
- 现在可选值包括
- 每个Uniform定义的values字段现在是可选项,但不建议不设置此项。
- 不设置此项用于模糊效果的运行库配置。
- 着色器将使用的每个Uniform都需要指定,否则会导致未定义的行为。
- “全局”Uniform现在可以在任何着色器中定义,游戏将尝试填充这类变量。
- 目前,包含这些Uniform:
ModelViewMat
、ProjMat
、TextureMat
、ScreenSize
、ColorModulator
、Light0_Direction
、Light1_Direction
、GlintAlpha
、FogStart
、FogEnd
、FogColor
、FogShape
、LineWidth
、GameTime
和ModelOffset
。 - Uniform的类型必须与其通常应有的类型匹配,否则将导致未定义的行为。
- 目前,包含这些Uniform:
- Realms
- 将世界上传到Realms现在会默认启用命令方块。
- 现在能将极限模式单人游戏世界上传到Realms。
- 截图
- 移除了未使用的巨型屏幕截图功能。
- 网络协议
- 客户端绑定
player_chat
数据包现在包含一个随着信息发送到客户端递增的索引。- 每次登录或在配置阶段由登录数据包重置时索引从0开始。
- 对于每条消息,服务端会将此值增加1。
- 如果此值以未预定的方式更新,客户端会断开连接。
- 由于该协议需要每个聊天数据包按生成顺序到达客户端,此功能目的是自定义服务器开发人员能更快地检查丢失或被重新排序的聊天信息。
- 服务端绑定
chat
和chat_command_signed
数据包现在包含一个校验和字节和last seen
更新。- 这是
last seen
签名的简单哈希值,应由服务端重建,以允许快速检查不同步状态。 - 可以传递0以禁用检查,和协议转换相兼容。
- 这是
- 常规
- 如果游戏检测到上次启动未正常完成,则会重置全屏选项。
修复
- 修复了132个漏洞
- 1.21前正式版的漏洞
- MC-7697 — 射过熔岩的三叉戟或箭有时不会引火。
- MC-13738 — 对马、驴或骡使用隐形药水后,鞍也被隐形。
- MC-55800 — 成功的
/fill air destory
命令产生错误信息且在获取结果或是否成功时返回0。 - MC-56653 — 处于发怒状态的僵尸猪灵被任何因素杀死都会掉落经验和稀有掉落物。
- MC-80243 — 鞍不对装备其的实体应用属性修饰符。
- MC-90212 — 用鞘翅滑行时不能悬挂到可攀爬方块上。
- MC-93185 — 末地返回传送门在(0,0)的最高方块处生成,导致其可能生成得不完整。
- MC-97244 —
minecraft:enchant.thorns.hit
声音事件不在非玩家实体被荆棘魔咒伤害时播放。 - MC-98271 — 持盾牌格挡的音效只能被其他玩家(不包含格挡的人)听到。
- MC-101556 — 下界传送门的传送范围过大(相当于一个完整的方块)。
- MC-108495 — 非生物实体可同处一队(显示颜色)但不能用
team=
选择。 - MC-113878 — 应用于胸甲槽位的属性修饰符描述存在误导:“When on body”而非“When on chest”。
- MC-117574 — 使用
/setblock
和/fill
替换方块实体且未指定NBT时,旧NBT会被保留;即使命令执行失败,容器物品栏也会被清空。 - MC-118092 — 仅解锁一个配方时,合成配方解锁弹窗也称“New Recipes Unlocked!”。
- MC-118470 — 音量为“关”时,复述以满音量播放。
- MC-122840 — “
/data remove
”无法移除末地水晶的beam_target
标签。 - MC-128079 — 使用剪刀的统计信息不会在挖掘特定方块时增加。
- MC-135192 — 如果水面上存在一根线,船就会立刻下沉。
- MC-141297 — 不能用
/setblock
、调试棒和BlockStateTag
将红石火把的lit
状态设置为相反值。 - MC-152382 — 末地折跃门和末地传送门不会随渲染距离雾淡出。
- MC-153392 —
/data remove
无法移除村民言论。 - MC-157196 — 已驯服的动物不能加入队伍。
- MC-160304 — 冰上潜行能使移动方向与X/Z轴平行。
- MC-165421 — 气泡柱的效果对风弹相反。
- MC-165461 — 装载后,即使仍按住右键,弩的装载动画也会停止。
- MC-165711 — 末影之眼碰撞箱总延迟到动画后。
- MC-167125 — 摔落伤害被错误地取整。
- MC-168262 — 枯萎的灌木不能放置于耕地。
- MC-170134 — Minecraft在探索一段时间地形后使用超出所需量数倍的VRAM。
- MC-176233 — 装载后,弩不再播放过渡动画。
- MC-177522 — 狼的嚎叫声与哀鸣声均配以字幕“狼:喘息”。
- MC-183329 — 玩家带有反胃状态效果时,下界传送门传送遮罩不会出现。
- MC-183623 — 选择世界菜单中的极限模式世界的红色感叹号后存在逗号。
- MC-184530 — 玩家低速移动时的移动方向会偏向基本方向。
- MC-184681 — 20w21a后,自定义的世界仍称作“自定义自选世界”。
- MC-186241 — “极佳!”画质下世界边界面渲染异常。
- MC-189525 — 自1.9之前的版本升级的世界中的穿装备的实体双持盔甲。
- MC-190000 — 装备于马的鞍不能被其他鞍直接替换。
- MC-193404 — 用调试棒或
/setblock
不能修改动力或激活铁轨的充能状态。 - MC-200311 — 进度背景纹理引用与模型不一致。
- MC-202226 —
/recipe [give|take]
单个配方也称作“recipes”。 - MC-203550 — 被活塞破坏的方块不会播放破坏音效。
- MC-220091 — 召唤
falling_block
实体时,设为任意空气方块(air
、cave_air
和void_air
)的BlockState
NBT会被改为默认值sand
。 - MC-220672 — 自定义世界预设标题源字符串存在不一致的单复数拼写。
- MC-222876 — “Buffet world customization”存在错误的大小写。
- MC-226772 — 潜影盒的开启/关闭字幕显示“Shulker”。
- MC-227097 — 末地传送门删除了传送门中的方块。
- MC-230445 — 末地传送门和末地折跃门未在失明或黑暗效果下合适地渲染。
- MC-231331 — 进度被撤销后,其获取弹窗仍继续出现。
- MC-236100 — 末地水晶光柱似乎是黑色的。
- MC-239705 — 面向特定角度时向前疾跑会使玩家向左或向右偏转。
- MC-241951 — 玩家在X和Z轴上的动量分别在其数值较低时被取消。
- MC-248099 — 行走的生物意外落水后,其寻路损坏了。
- MC-253721 — 执行
/op @a
时出现错误日志。 - MC-255756 — 玩家导致盾牌损坏时,攻击者听不到盾牌损坏音效。
- MC-256469 — 隐形的骆驼不显示其鞍。
- MC-257133 — 在小空间中放置带有NBT的大型画时失去同步。
- MC-258253 — 传入刷怪蛋的粒子使用未着色的纹理。
- MC-260440 — 正在用鞘翅飞行的玩家不再能在水中激活游泳模式。
- MC-261385 — 气泡柱表面的行为受非空气方块影响而存在差异。
- MC-262928 —
minecraft:entity.player.hurt
不再在玩家受到来自守卫者或远古守卫者的荆棘伤害时播放。 - MC-262939 — 在反胃状态效果生效期间切换维度或重生会显示下界传送门遮罩。
- MC-265514 — 在1.20.2更新中,头相关转移函数仍在定向音频被设为“关”时启用。
- MC-266912 — 将鞍装备到刚生成的马、驴、骡或骆驼时,装备鞍的音效不会播放。
- MC-267221 —
change_page
点击事件Json中的value
需要一个字符串而非整数。 - MC-267323 — 物品的旧JSON文本式的布尔型字段会在世界更新时被清除。
- MC-268942 — 在用鞘翅滑翔的同时游泳时,游泳动画不再显示。
- MC-269386 — 创造模式物品栏中的涡流纹样陶片未处于合适的位置。
- MC-269637 — 马能穿戴多个鞍,但不能装备多个马铠。
- MC-270043 — 减少盔甲的光效时,也减少了三叉戟的光效。
- MC-270192 — 某些实体的鞍在其死亡动画中一直可见。
- MC-270197 — 猪和炽足兽身上的鞍在其死亡动画中一直可见。
- MC-270220 — 赋予所有进度产生持续很久的嘈乱音频。
- MC-272100 — 马的纹理(
horse_[brown/chestnut/creamy/white].png
)中存在未使用的调色像素。 - MC-272790 — 末地返回传送门中的潜影盒和其他方块未在传送门改变状态时作为物品掉落。
- MC-279646 — 用F11切换全屏不会更新视频设置菜单中的全屏选项。
- 1.21的漏洞
- MC-273338 — 用线和上升气泡柱能产生飞行船故障。
- MC-274187 — 禁用PVP时,来自附有火焰附加的剑的横扫攻击能使其他玩家着火。
- MC-274258 — 所有马的纹理都包含一个未使用的箱包纹理。
- MC-278249 — 经验球的位置严重不同步,然后突然自我修正。
- 1.21.1的漏洞
- MC-276061 — 用无陶片饰纹陶罐替换其他饰纹陶罐时,只要不重进,陶片类型就不会更新。
- 1.21.2的漏洞
- MC-275994 — 在窗口不聚焦时开着饼图会频繁产生日志。
- MC-276861 — 玩家高速移动时偶尔能传送过被堵住的末地传送门。
- MC-277403 — 燃烧的箭和三叉戟仍不会因放置于同处的水而灭火。
- MC-277537 — 苍白覆地苔藓偶尔生成得脱节。
- MC-277780 — 即使上次打过补丁,Minecraft也会在每次自动保存时重新保存所有地图。
- MC-278417 — 插在地上的箭和三叉戟上的火不能被雨熄灭。
- MC-279340 — 幼年北极熊太小了。
- MC-279390 — 幼年僵尸猪灵的头盔穿模。
- MC-280170 — 除非游戏规则mobGriefing被设为
false
,山羊不再能冲撞盔甲架。
- 1.21.3的漏洞
- MC-277807 — 传送玩家的坐骑会导致不同步,但之前不会这样。
- MC-277865 —
level.dat
中的Time
大于某特定值时,气泡柱中的船的动画损坏。 - MC-277922 — 在一格高下行气泡柱中的船会继续来回摆动。
- MC-278096 — “极佳!”画质和被禁用的云导致所有粒子在帧缓冲区中停留一帧。
- MC-278375 — 给羊驼或行商羊驼疯狂喂食小麦或干草捆导致物品堆叠失去同步。
- MC-278376 — 箭和三叉戟在一格深的气泡柱中出现怪异行为。
- MC-278400 — 箭和三叉戟击中在流动的熔岩中的方块后继续移动。
- MC-278455 — 旁观模式下,向非接近45°的倍数的角度侧向移动错误。
- MC-278493 — 已驯服的狼对嘎枝的敌对状态在这个嘎枝消失后仍然维持。
- MC-278502 — 垂泪藤或缠怨藤出现断开问题。
- MC-278615 — 即使一击杀死了召唤支持的僵尸猪灵,其支持者仍与你敌对。
- 1.21.4的漏洞
- MC-278040 — 沉底的嘎枝的游泳寻路损坏了。
- MC-278140 —
/fill
在放置相邻的有方向性状态的方块时运行不正常。 - MC-278164 — 点击设置按钮且接下来的屏幕中的鼠标处存在滚动条时,点击音效播放两次。
- MC-278204 — 烈焰人火球现在会导致TNT矿车立刻爆炸。
- MC-278422 — 在用
/data remove
移除一只坐着且已驯服的狼的Owner
标签后重载世界会导致这只狼坐着移动。 - MC-278552 — 从高处下落时,
minecraft:entity.player.big_fall
不再播放音效。 - MC-278585 — 摔落到细雪边缘的玩家会卡住。
- MC-278591 — 对末影龙实体使用选取方块时不再给予末影龙刷怪蛋。
- MC-278621 — 落地前放置细雪导致客户端/服务端不同步。
- MC-278627 — 穿着皮革靴子摔落到细雪边缘的玩家会受到摔落伤害。
- MC-278634 — 尝试对发光地衣、树脂团、幽匿脉络等方块
/setblock
“waterlogged=true
”状态会报错。 - MC-278639 — 绊线钩不会被潜影弹触发。
- MC-278659 — 攻击被玩家观察的嘎枝不会触发幽匿感测体。
- MC-278673 —
/teleport
的相对于实体原始角度的X轴旋转角度限制于±90。 - MC-278683 — 由刷怪笼或
/summon
生成的生物永不掉落其装备。 - MC-278708 — 在骑乘状态中投掷末影珍珠只会脱离坐骑,而不会传送。
- MC-278728 —
smithing_transform
配方不能把物品的组件改回默认值。 - MC-278733 — 破坏一个树脂砖双层台阶方块只会返回一个台阶。
- MC-278734 — 绵羊向上/下看时,其头部动作卡顿。
- MC-278755 — 骑乘实体时远程传送会导致游戏软锁。
- MC-278801 — 闭合的眼眸花合成为灰色染料的配方未与其他灰色染料配方共组。
- MC-278841 — 细雪不再减速从高处下落的玩家。
- MC-279145 — 潜影弹不再受气泡柱影响。
- MC-279152 — 潜影弹不能通过下界/末地传送门和末地折跃门传送。
- MC-279196 — 无法用
/data remove
移除方块战利品表。 - MC-279364 — 方块实体的
CustomName
无法移除。 - MC-279472 — 虚空看起来比之前更低、更淡了。
- MC-279572 — 末地传送门和末地折跃门不受水、熔岩或细雪雾影响。
- MC-279653 — 执行
/setblock
命令后,方块实体数据失去同步。 - MC-279857 —
/summon
召唤的猪灵不会拾取金质物品。 - MC-280211 —
glDebugVerbosity
设为3时,末地水晶光柱会导致OpenGL报错。