临川 发表于 2025-12-19 14:49:49

Minecraft 26.1 快照 1


**Minecraft 26.1 快照 1**
**一个 Minecraft Java 版快照**

---

随着岁末将至,我们再次齐聚发布室,按下生成快照的按钮!在这 2025 年的最终版本中,我们(除其他事项外)将升级我们的 Java 运行时版本,对村民交易进行数据驱动化处理,并添加一个可以摆动实体手臂的新摆动命令。最后,我们未来的所有构建版本都将不再进行混淆。

我们是不是漏了什么?哦,对了!此快照标志着我们为 Java 版 Minecraft 启用的新版版本号系统的开始。我们明年将继续带来更多快照,并最终发布 Java 版 26.1!明年见!

祝挖矿愉快!

**更改**
*   村民职业解锁的交易现在由确定性随机序列(类似于战利品掉落和以物易物)决定
*   用于将方块光照和天空光照等级映射到屏幕上物体显示亮度的算法已被彻底重写
*   引入了一个新的光照图调试渲染器,可以通过 F3 + 4 快捷键启用

**光照图算法更改**
*   新算法大体上旨在提供与之前相同的结果,但:
    *   算法更简单、更直观,并修复了先前算法的多个问题,如下方“已修复的 BUG”部分所列
    *   “黑暗”效果和凋灵战斗时的世界变暗效果在所有维度中的工作方式现在相同
    *   “夜视”效果现在仅简单地增加环境光,而不是对最终颜色进行缩放
    *   这意味着完全黑暗的区域看起来不再比被方块光照或天空光照亮的区域更亮
*   该算法的更多方面,例如方块光色调、环境光颜色和夜视颜色,现在可以通过环境属性进行数据驱动定义,如下方“数据包”部分所述

**光照图调试渲染器**
*   添加了一个新的光照图调试渲染器,可通过 F3 + 4 快捷键启用
    *   与 FPS/TPS 图和网络图互斥
    *   在屏幕右下角实时显示光照图纹理
    *   纹理的垂直轴代表天空光照等级(从下到上为 0-15)
    *   纹理的水平轴代表方块光照等级(从左到右为 0-15)
    *   每个像素的颜色代表将应用于具有相应方块光照和天空光照等级的方块和实体的最终颜色

**用户界面**
*   **调试屏幕**
    *   `looking_at_block` 和 `looking_at_fluid` 调试条目不再显示标签
    *   添加了新的调试条目:
      *   `looking_at_block_tags`
      *   `looking_at_fluid_tags`
      *   `looking_at_entity_tags`
    *   重命名的调试条目:
      *   `looking_at_block` -> `looking_at_block_state`
      *   `looking_at_fluid` -> `looking_at_fluid_state`

**技术性更改**
*   数据包版本现为 95
*   如果服务器的磁盘空间不足,现在会向服务器操作员显示一个提示
*   游戏现在需要 Java 25
*   附带的 Java 发行版现为 Microsoft 构建的 OpenJDK 25

**数据包版本 95**
*   为村民交易添加了数据驱动的注册表
*   猪灵的物品栏槽位现在可以通过 `piglin.*` 来访问,类似于村民物品栏可以通过 `villager.*` 访问
*   **数据驱动的村民交易**
    *   村民和流浪商人提供的交易现在已数据驱动化,可以由数据包开发者自定义
*   **村民交易**
    *   存在于 `villager_trade` 文件夹中,代表交易的蓝图,被村民和流浪商人用来生成实际交易
    *   条目格式:
      *   `wants`:一个对象,代表交易所需的物品类型和数量
            *   `id`:物品的 ID
            *   `count`:一个可选的数字提供器,代表交易所需物品的数量
                *   默认为常量 1
            *   `components`:一个可选的组件映射,代表物品上预期的数据组件
                *   默认为空映射
      *   `additional_wants`:一个可选对象,代表商人所需的额外物品,格式与 `wants` 相同
      *   `gives`:一个物品堆,代表交易时商人给出的结果物品
            *   使用物品堆的现有格式
      *   `given_item_modifiers`:一个可选的物品修饰器列表,代表应用于 `gives` 中物品的修饰器,例如附魔或药水,用于为交易增加动态性,而非硬编码某些值
            *   使用物品修饰器的现有格式(也称为战利品修饰器、物品函数、战利品函数…)
            *   如果其中任何一个返回空物品,整个交易将被丢弃
            *   尚不支持物品修饰器引用
      *   如果最终物品的 `stored_enchantment` 组件中包含的附魔在 `#double_trade_price` 标签中,则 `wants` 的数量将加倍
      *   `max_uses`:一个可选的数字提供器,代表交易可使用的最大次数
            *   如果数字提供器返回的值较低,则设置为 1
            *   默认为 4
      *   `reputation_discount`:一个数字提供器,代表需求、折扣或惩罚等因素如何影响由 `wants` 表示的成本
            *   如果数字提供器返回的值较低,则设置为 0.0
            *   默认为 0.0
      *   `xp`:一个可选的数字提供器,代表交易完成后商人获得的经验值
            *   如果数字提供器返回的值较低,则设置为 0
            *   默认为 1
      *   `merchant_predicate`:一个谓词,代表需要满足的关于商人的条件,才能提供此交易
            *   使用谓词的现有格式(也称为战利品条件)
            *   尚不支持谓词引用
      *   `double_trade_price_enchantments`:一个可选的附魔 ID、命名空间附魔 ID 列表或以 `#` 为前缀的附魔标签,代表如果 `minecraft:enchant_randomly` 和 `minecraft:enchant_with_levels` 的 `include_additional_cost_component` 设置为 `true`,并且物品在其 `minecraft:stored_enchantments` 组件中拥有所提供值之一,则会加倍来自它们的额外成本
    *   一个由沙漠村民提供的,用绿宝石和书换取附魔书的示例交易:

```json
{
"additional_wants": {
    "id": "minecraft:book"
},
"double_trade_price_enchantments": "#minecraft:double_trade_price",
"given_item_modifiers": [
    {
      "function": "minecraft:enchant_randomly",
      "include_additional_cost_component": true,
      "only_compatible": false,
      "options": "#minecraft:trades/desert_common"
    },
    {
      "function": "minecraft:filtered",
      "item_filter": {
      "items": "minecraft:enchanted_book",
      "predicates": {
          "minecraft:stored_enchantments": [
            {}
          ]
      }
      },
      "on_fail": {
      "function": "minecraft:discard"
      }
    }
],
"gives": {
    "count": 1,
    "id": "minecraft:enchanted_book"
},
"max_uses": 12.0,
"merchant_predicate": {
    "condition": "minecraft:entity_properties",
    "entity": "this",
    "predicate": {
      "predicates": {
      "minecraft:villager/variant": "minecraft:desert"
      }
    }
},
"reputation_discount": 0.2,
"wants": {
    "id": "minecraft:emerald"
}
}
```

*   **交易集合**
    *   存在于 `trade_set` 文件夹中,是村民和流浪商人提供的交易分组
    *   目前我们只有硬编码的集合,对于村民有 `<profession>/level_<level>`,对于流浪商人有 `wandering_trader/buying`、`wandering_trader/special`、`wandering_trader/common`
    *   条目格式:
      *   `trades`:一个村民交易 ID、命名空间村民交易 ID 列表或以 `#` 为前缀的村民交易标签,代表属于此交易集合的交易
      *   `amount`:一个数字提供器,代表使用此集合时要生成的交易数量
            *   如果生成的数字大于可用交易的数量,则只会生成直到所有交易都被使用一次为止,除非 `allow_duplicates` 设置为 `true`
      *   `allow_duplicates`:一个布尔值,代表交易集合是否可以使用同一个村民交易多次来生成交易
            *   默认为 `false`
      *   `random_sequence`:一个可选的命名随机序列,决定生成哪些交易
            *   默认为非确定性随机序列
    *   一个交易集合的示例,从 `#minecraft:armorer/level_1` 标签中提供 2 个交易,允许重复:

```json
{
"amount": 2.0,
"trades": "#minecraft:armorer/level_1",
"random_sequence": "minecraft:trade_set/armorer/level_1",
"allow_duplicates": true
}
```

**命令**
*   添加了 `swing`
    *   新的命令,用于摆动实体的手臂
    *   并非所有实体都支持摆动动画。`swing` 命令会为这些实体成功执行,但客户端只会在可能的情况下显示它
    *   例如,这使得摆动衣架模特的手臂成为可能
    *   返回接收到摆动指令的实体数量
    *   语法:`/swing <实体选择器> <mainhand|offhand>`

**环境属性**
*   `minecraft:visual/block_light_tint`
    *   方块光的色调。方块光颜色在低光照等级下从深灰色开始,在中等等级下被此属性着色,在高等级下变为白色。默认情况下,它提供火把的淡黄色色调。亮色最适合此属性,至少有一个颜色分量是全亮的。此色调全局应用于屏幕上可见的所有光源。单个光源不能有不同的色调。
    *   值类型:RGB 颜色
    *   默认值:#FFD88C
    *   修饰器:RGB 颜色修饰器
    *   是否插值:是
    *   在相机位置解析
*   `minecraft:visual/ambient_light_color`
    *   定义环境光的色调和亮度。此光应用于光照等级为 0 的世界。方块光和天空光叠加在其上。
    *   值类型:RGB 颜色
    *   默认值:主世界为 #0A0A0A,下界为 #302821,末地为 #3f473f
    *   修饰器:RGB 颜色修饰器
    *   是否插值:是
    *   在相机位置解析
*   `minecraft:visual/night_vision_color`
    *   此颜色的使用方式类似于环境光颜色。当“夜视”效果激活时,会使用 `minecraft:visual/night_vision_color` 和 `minecraft:visual/ambient_light_color` 的逐分量最大值作为环境光颜色。夜视默认不着色。
    *   值类型:RGB 颜色
    *   默认值:#999999
    *   修饰器:RGB 颜色修饰器
    *   是否插值:是
    *   在相机位置解析

**数据组件**
*   添加了 `minecraft:additional_trade_cost`
    *   用于在村民交易中修改 `gives` 物品所需数量的临时组件,在交易生成后被移除
    *   格式:整数

**战利品函数**
*   添加了 `minecraft:villager_trade` 战利品表类型,它接受以下参数:
    *   `this`:提供交易的实体
    *   `origin`:实体脚部的方块位置
*   添加了 `minecraft:set_random_dyes`
    *   如果物品在 `#dyeable` 标签中,则以累加方式将染料添加到物品的 `minecraft:dyed_color` 数据组件中
    *   字段:
      *   `conditions` - 函数应用的条件
      *   `number_of_dyes` - 数字提供器,表示要应用于物品的十六种随机染料的数量
            *   同一种染料可能被重复选择
*   添加了 `minecraft:set_random_potion`
    *   随机设置物品上的 `minecraft:potion_contents` 数据组件
    *   字段:
      *   `conditions` - 函数应用的条件
      *   `options` - 可选的药水 ID、命名空间药水 ID 列表或以 `#` 为前缀的药水标签,代表可选的药水
            *   默认为药水注册表中的任何药水
*   更改了 `minecraft:enchant_with_levels`
    *   现在也接受以下字段:
      *   `include_additional_cost_component` - 可选的布尔值,表示是否应根据附魔成本向物品添加 `minecraft:additional_cost_component`
            *   默认为 `false`
    *   该值由 `levels` 数字提供器决定,并且与用于确定附魔等级的数值相同
*   更改了 `minecraft:enchant_randomly`
    *   现在也接受以下字段:
      *   `include_additional_cost_component` - 可选的布尔值,表示是否应根据附魔成本向物品添加 `minecraft:additional_cost_component`
            *   默认为 `false`
    *   该值由 `levels` 选择的数值或其默认值通过以下公式决定:2 + random(0, 5 + level * 10) + 3 * level

**谓词**
*   **实体谓词**
    *   `player` 子谓词
      *   新字段:`food` - 一个食物谓词
            *   格式:具有以下字段的对象:
                *   `level` - 可选的整数最小/最大范围,指定所需的饥饿值等级
                *   `saturation` - 可选的浮点数最小/最大范围,指定所需的饱和度等级
*   添加了 `minecraft:sum`
    *   返回一个数字提供器列表的总和
    *   字段:
      *   `summands`,一个数字提供器列表

**附魔**
*   `post_piercing_attack` 组件不再仅在玩家具有特定饥饿值等级时才对该玩家生效

**标签**
*   添加了多个代表村民交易分组的标签,村民和流浪商人从中获取他们的交易池
    *   村民有以下格式的标签代表每个职业和交易等级:`#<profession>/level_<level>`,最高到 5 级
    *   铁匠拥有 `#common_smith/level_<level>` 标签,代表盔甲匠、武器匠和工具匠的通用交易,最高到 5 级
    *   流浪商人有以下标签:`#wandering_trader/buying`、`#wandering_trader/special`、`#wandering_trader/common`
*   **附魔标签**
    *   移除了以下标签:
      *   `trades/desert_special`
      *   `trades/jungle_special`
      *   `trades/plains_special`
      *   `trades/savanna_special`
      *   `trades/snow_special`
      *   `trades/swamp_special`
      *   `trades/taiga_special`
*   **药水标签**
    *   添加了 `#tradeable` - 所有可以出现在村民交易中的药水效果

**资源包版本 76**
*   **光照图着色器更改**
    *   `lightmap.fsh` 着色器被大幅修改。
    *   `LightmapInfo` 统一变量现在有两个新字段:
      *   `BlockLightTint`
      *   `NightVisionColor`
    *   移除了 `AmbientLightFactor` 字段,其值现在已预乘到 `AmbientColor` 中
    *   `DarkenWorldFactor` 被重命名为 `BossOverlayWorldDarkeningFactor`
    *   在用户界面中渲染的文本和物品现在使用单独的 1x1 白色光照图纹理,因此光照图着色器不必总是将 15, 15 像素保持为纯白色

**在 26.1 快照 1 中修复的 BUG**
*   MC-64087 - 复仇僵尸/僵尸增援会在创造模式下试图攻击你
*   MC-179949 - 无法通过 `/item replace` 编辑猪灵的物品栏
*   MC-197497 - 从等级 1 到 0 的平滑光照过渡不平滑
*   MC-199589 - 在创造模式下攻击生物然后切换到生存模式会导致该生物以你为目标
*   MC-219981 - 僵尸类首领生物生成时生命值为 20,尽管其最大生命值已提高
*   MC-300465 - 带有最大数量标记的地图无法放入物品展示框中
*   MC-302186 - 与之前版本相比,下界中的环境光照出现变色
*   MC-302408 - 应用潮涌能量效果时水下光照不一致
*   MC-302528 - 低天空光和低方块光照在同一区域时显得完全错误
*   MC-303119 - 在生存模式下,用选中物品栏中仅有一件的食物喂养猫或狼时,恢复的生命值没有应有的那么多
*   MC-303125 - 玩家死后苦力怕仍然可能爆炸
*   MC-303389 - 末影龙在栖息的平台上时,其速度可能受到攻击影响
*   MC-303692 - 当“改进的透明度”关闭时,调试叠加层文本有缩进
*   MC-304023 - 冗余的版本数据修复器文件保存在世界的“data”文件夹中
*   MC-304217 - 突刺的饥饿值要求会应用于自定义附魔的 post_piercing_attack 效果
*   MC-304599 - 海豚不像基岩版那样跟随骑乘鹦鹉螺的玩家
*   MC-304631 - 各向异性过滤设置为 8x 时,存在奇数尺寸的方块纹理时,不透明的半透明纹理在远处会变得透明
*   MC-304725 - 使用默认生成蛋生成的僵尸村民总是平原变种
*   MC-304991 - 在旁观者模式下点击一个尚未生成战利品的箱子会发出“block.chest.locked”声音
*   MC-305012 - “Universal anger”游戏规则的描述仍在使用“Forgive dead players”游戏规则的旧ID

**获取快照**
快照适用于 Minecraft:Java 版。要安装快照,请打开 Minecraft 启动器,在“安装”标签页中启用快照。

测试版本可能会损坏您的世界,因此请务必备份和/或将它们与您的主要世界放在不同的文件夹中运行。

跨平台服务端 jar 文件:
https://launcher.mojang.com/v1/objects/cb3a8f5c4b1f6b4b2f9b6c3c8e5a4f3b7d1c2e3a4/minecraft_server.26.1.jar?ref=snapshot

在此报告 BUG:
https://bugs.mojang.com/projects/MC/issues

想要提供反馈?
请前往https://aka.ms/JavaSnapshotFeedback?ref=snapshot提供任何反馈和建议。如果您想聊聊天,欢迎加入https://discord.gg/minecraft?ref=snapshot。
页: [1]
查看完整版本: Minecraft 26.1 快照 1