25w37a.md 5.7 KB


version-image-link: https://tc-new.z.wiki/autoupload/f/XTxqEIEXt3ek2iMfNVy0xHr9SBDGMOz2CzLFKIoBJwSyl5f0KlZfm6UsKj-HyTuv/20250910/OLMN/1170X500/image.png/webp server-jar: https://piston-data.mojang.com/v1/objects/9675164bd7a8ec5a876a05ac96637c77e9d82a24/server.jar translator: 最亮的信标

cats: ['1.21','1.21.9']

更改

  • 现在游玩游戏依赖从 OpenGL 3.2 升至 3.3。这并不会改变我们之前发布的最低配置需求。

[!DEVNOTE] 我们预计更新 OpenGL 不会使得很多人受影响。我们发布的最低配置要求自从 2017 年就是 OpenGL 4.0 了,并且 OpenGL 3.3 已经发布了 15 年了。

对方块、物品与实体的微调

  • 修复了一个漏洞:当另一个玩家在交互的时候破坏展示架会导致玩家的物品栏出现显示问题
  • 铜傀儡的碰撞箱微调 (译者:调调乐,都调几次了)
    • 碰撞箱现在宽度为 0.49 格以允许其寻路时能通过狭窄路段
  • 铜傀儡现在可以开门
  • 测试实例方块现在保留错误标记,直到世界重载
  • 调整了实体上的环境光照,使其更视觉上与方块以及尤其其它部分更一致
    • 现在平面的下方同方向会发光,而不再为相反方向
    • 这主要影响了使用扁平或“空心”立方体的模型,如:
      • 穿戴盔甲
      • 穿戴鞘翅
      • 玩家皮肤的外层
      • 骷髅和骷髅马的胸廓
      • 鸡和青蛙的脚
      • 幻翼和末影龙的翅膀
      • 鱼鳍
      • 还有更多!

游戏模式切换

  • 从旁观者模式切换到创造模式不再会导致玩家停止飞行
    • 现在仅当玩家靠近地面时切换游戏模式才会关闭飞行状态
      • 靠近地面标准为玩家在可以碰撞的平面(如:快乐恶魂、船)上方 1 格内
    • 当玩家在方块或可碰撞实体内飞行状态不会关闭
      • 这防止了玩家突然掉至地面

[!DEVNOTE] 这项更改是对之前快照的漏洞修复的部分回退,尽管之前的修复行为是无意的,我们修复飞行的方式并未按照我们的意图落地。为了回应社区的反馈,我们正尝试这种新的破坏性较小的替代方案。

Minecraft 服务端管理协议(MSMP)

  • 客户端必须通过认证才能访问 API
    • 客户端应该提供一个有着服务器密钥的 Authorization Bearer Token 头
    • 密钥配置在服务器的 properties 文件里
      • management-server-secret=
      • 密钥应当为 40 位字母或数字字符(A-Z,a-z,0-9)
      • 如果该属性为空密钥会自动生成
      • 未认证的请求会以 401 Unauthorized 拒绝
  • 默认启用 TLS
    • 可以使用服务器 properties 文件禁用
      • management-server-tls-enabled=false
    • 需要在服务器 properties 文件中设置一个 keystore 文件
      • management-server-tls-keystore=path/to/keystore.p12
    • keystore 文件必须为 PKCS12 格式
    • keystore 密码可以以下列(以优先级排序)方式设置
      • 环境变量:MINECRAFT_MANAGEMENT_TLS_KEYSTORE_PASSWORD
      • JVM 参数:-Dmanagement.tls.keystore.password=
      • 服务器 property:management-server-tls-keystore-password=

服务器 Properties

  • management-server-port 的默认值从 25585 更改为 0,每次服务器启动时分配一个可用的端口
  • 增加了服务器属性 management-server-tls-enabled 控制 Minecraft 服务端管理协议是否使用 TLS
    • 默认为 true
  • 增加了服务器属性 management-server-tls-keystore 用于控制 TLS 的 keystore 文件路径
    • 默认为空字符串
    • 当 TLS 启用并且未提供 keystore 时专用服务器不会启动
  • 增加了服务器属性 management-server-tls-keystore-password 用于控制用于 TLS 的 keystore 文件的密码
    • 默认为空字符串

游戏规则

  • 增加了 spawnerBlocksEnabled 游戏规则一控制刷怪笼是否启用
    • 默认为 true

生物生成

  • 调整了生成身着装备的生物的装备类型选择逻辑以增加铜装备的可能性
    • 初始类型会在皮革、铜和金中选择
    • 提升护甲等级的概率从 9.5% 上升至 10.87%

音效

  • 在音乐与音效选项中的一些音量滑块会在世界外调整设置时播放预览音效

UI

  • 资源包和数据包选择屏幕现在有了一个搜索框

技术性更改

  • 数据包版本现在为 87.0
  • 资源包版本现在为 69.0
  • 之前隐藏的一些调试特性现在公开给玩家

调试特性

  • 之前在编译时移除的一些调试特性现在保留了下来并可以被玩家使用
  • 可以使用 JVM 属性启用单个值:
    • 首先,必须使用 -DMC_DEBUG_ENABLED 或 -DMC_DEBUG_ENABLED=true 启用全局调试标记
    • 然后,可以启用指定的特性,如 -DMC_DEBUG_BRAIN 或 -DMC_DEBUG_BRAIN=true
    • 添加 -DMC_DEBUG_PRINT_PROPERTIES 可以获取所有可用的调试属性的列表
  • 警告:这是调试代码,务必谨慎使用!
    • 这是一项用于帮助模组制作者的高级功能——不应在平时游戏中使用
    • 这些特性不被保证能正常运行
    • 它们可能会崩溃你的游戏、破坏你的存档
    • 单独的选项可能会在未经通知的情况下加入、更改或删除

数据包版本 87.0

  • 重命名了游戏规则 enableCommandBlocks 为 commandBlocksEnabled

资源包版本 69.0

纹理

  • 将 gui/container/villager.png 的输出槽向上移动了一个像素

着色器与后处理器效果

着色器
  • 添加了一个新的标记 PER_FACE_LIGHTING 到下列着色器:
    • core/entity.vsh
    • core/entity.fsh
  • 当设置时,正面和背面的基光照将会被分别计算
  • 现在需求 OpenGL 3.3,我们将所有的着色器版本从 150 bump 至 330