• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】
[转载][1.8——26.1.x]ViaVersion 代理端/服务端适用的跨版本支持

开源 工具 其他 [转载][1.8——26.1.x]ViaVersion 代理端/服务端适用的跨版本支持 5.11.0

完成注册/登录后下载
多个版本中针对旧问题的几个修复,以及一些 1.21.9 的修复!
  • 实现了可装备物品数据哈希,以修复拖拽物品时的不同步问题
  • 修复了自定义生物群系效果中粒子的处理
  • 修复了包含新/变更方块状态数据的调试棍
  • 修复可维修物品数据项 ID 处理
  • 修复具有复杂数据变化的锁存物品数据
  • 修复 1.21.7->1.21.9 中下界的边界缩放问题
  • 修复 1.21.7->1.21.9 中的调试样本订阅(由 RK_01 修复)
  • 修复了 1.20.5->1.21 中来自非标准服务器(如 Limbo)的缺失注册数据导致的客户端错误(由 amiralimollaei 修复)
  • 修复了 1.20.3->1.20.5 中不良团队数据包过滤问题(由 LeonTG 和 EnZaXD 修复)
  • 修复了 1.12->1.13 中 show_item 悬停中的物品 ID 问题(由 EnZaXD 修复)
如果您想提前获取较大的版本更新,请考虑通过 https://viaversion.com/donate 支持我。有关更多信息,请查看之前的更新说明。
新增内容:

  • 新增了对 1.21.9 客户端的支持
  • 新增 log-blocked-joins 配置选项,用于记录因协议版本被阻止而导致的加入失败尝试
  • 重构了 max-pps(每秒最大数据包数)配置选项(详见配置文件中的注释说明)
    • 所有相关选项已移至独立的 packet-limiter 配置区域并重命名,但功能与之前保持一致
  • 新增 packet-size-limiter 配置区域,功能与 packet-limiter 类似,但用于限制单个数据包的大小
修复内容:

  • 修复了在 velocity-servers 中手动设置的值总是在重启后被清除的问题
  • 修复了在某些情况下拖动物品时出现的数据不同步问题
  • 修复了附魔注册表(enchantment registry)中粒子效果的处理问题
  • 修复了在服务器切换时未正确发送 ViaVersion 平台信息的问题(由 criticalcynical 修复)
  • 修复了 1.21.5→1.21.6 中游戏统计(stats)映射错误的问题(由 EnZaXD 修复)
  • 修复了 1.21.4→1.21.5 中旧版 show_text 文本组件转换的问题(由 EnZaXD 修复)
  • 修复了 1.21.4→1.21.5 中旗帜(banner)自定义名称转换的问题
  • 修复了 1.21→1.21.2 中锁(lock)物品数据转换的问题
  • 修复了在 1.20.3→1.20.5 中因异常的队伍(team)数据包导致的断开连接问题,现通过过滤处理(由 EnZaXD 修复)
  • 在 1.12→1.13 版本转换中,将“紫色”潜影盒映射为外观相同的默认变体,而非真正的紫色潜影盒(由 EnZaXD 修复)
  • 修复了在旧版服务器上玩家断开连接时偶尔出现的错误,以及通用任务处理问题(由 EnZaXD 修复)
  • 修复了在配置加载阶段发送的系统消息无法在低于 1.13 的服务器上显示的问题(由 RaynLegends 修复)
如果你想提前获取更大的版本更新,请考虑通过 https://viaversion.com/donate 支持开发者。更多详情请参阅之前的更新日志。
新增内容:
  • 新增了 cancel-swing-in-inventory 选项,用于修复在 1.15.2→1.16 中打开物品栏时出现的挥手动作问题(由 EnZaXD 实现)
修复内容:
  • 修复了可装备物品(equippable)中 allowed_entities 的处理问题
  • 修复了 1.21.5→1.21.6 中属性修饰符(attribute modifiers)的异常问题
  • 修复了在较旧服务器上使用 1.21.2+ 客户端重生时导致的反作弊标志异常问题(由 RK_01 修复)
  • 修复了在旧版 Paper 服务器中拾取实体时可能出现的错误(由 EnZaXD 修复)
  • 修复了 1.17.1→1.18 中缺失的生物群系名称翻译问题(由 EnZaXD 修复)
  • 修复了在 1.9.4 服务器上投掷药水时客户端可能出现的错误,以及在 1.8 服务器中药水颜色丢失的问题
  • 修复了在 1.8 的 chunk-border-fix 中未包含角落区块的问题(由 dewgs、EnZaXD 修复)
如果你想提前获取更大的版本更新,请考虑通过 https://viaversion.com/donate 对作者进行支持。更多信息请参见之前的更新日志。
新增了 1.21.7 客户端的支持。

修复内容:

  • 修复了从 1.21.5 升级到 1.21.6 后云层缺失的问题(由 booky10 修复)
  • 修复了从 1.21.5 升级到 1.21.6 后服务器链接按钮缺失的问题(由 booky10 修复)
  • 对物品哈希计算进行了改进(用于防止 1.21.5 之后版本出现物品不同步的问题,注意部分物品数据组件仍尚未实现):
  • 实现了药水内容(potion_contents)的哈希计算
  • 修复了包含布尔值(如加粗或斜体)的文本组件的哈希计算
  • 修复了跨版本翻译映射缺失的问题(由 EnZaXD 修复)
  • 修复了在旧版修改过的服务器上无法正确拾取方块的问题(由 Packsolite 修复)
  • 修复了某些低于 1.12 版本的服务器中玩家列表(tablist)排序异常的问题(由 EnZaXD 修复)
  • 移除了 chat-nbt-fix 的配置选项,改为始终启用(由 EnZaXD 修复)
如果你想提前获取更大的版本更新,请考虑通过 https://viaversion.com/donate 对我进行支持。更多信息请参见之前的更新日志。
提醒: 在未来的版本中,ViaVersion 将使用 Java 21,请确保你的 Java 版本保持更新!如果你想更早获得重大更新,可以考虑成为支持者:https://viaversion.com/donate

更新日志:
  • 新增对 1.21.6 客户端的支持(由 KennyTV 贡献)
  • 部分修复了从 1.21.4 升级到 1.21.5 时出现的物品不同步问题
  • 修复了在 1.21.4 到 1.21.5 升级中命令点击事件中的非法字符导致的客户端错误(由 EnZaXD 贡献)
  • 修复了在旧版服务器上使用 1.21.2+ 客户端时无限重生的问题(由 RK_01 贡献)
  • 修复了在 Fabric 服务器上从 1.21 升级到 1.21.2 时船舵控制的问题(由 EnZaXD 贡献)
  • 修复了在 1.20.3 到 1.20.5 升级中负数伤害和修理费用值导致的错误(由 EnZaXD 贡献)
  • 忽略 1.20.3 到 1.20.5 升级中仅服务器使用的创造模式槽位锁定和地图后期处理数据(由 EnZaXD 贡献)
  • 忽略 1.20.3 到 1.20.5 升级中方块谓词中的未知标签(由 EnZaXD 贡献)
  • 修复了 1.15 至 1.17 版本之间重生时的部分实体移除检查问题(由 dewgs 贡献)
  • 修复了从 1.8 升级到 1.9 时容器点击错误的一个回归问题(由 EnZaXD 贡献)
  • 修复了非空值但使用 0 位时无法读取非标准区块调色板数据的问题(由 EnZaXD 贡献)
  • 对跨版本文本组件转换进行了多项修复(由 kennytv、EnZaXD、ImGxrke 贡献)
  • 新增配置项 suppress-text-component-conversion-warnings,用于单独屏蔽这些转换警告,而不影响其他转换错误
非常感谢 Kenny、EnZaXD、RK_01、dewgs 和 ImGxrke 为本次版本发布所做的贡献
更新内容:

  • 连接细节优化:现在仅当玩家与服务器版本不一致时才会发送自定义载荷数据(由 EnZaXD 贡献)
  • 文本组件修复:优化了 1.21.4→1.21.5 和 1.20.3→1.20.5 版本间的文本组件重写逻辑(由 kennytv、EnZaXD 贡献)
  • 进度界面修复:修复了 1.21.4→1.21.5 版本中成就背景贴图丢失的问题(由 booky10 贡献)
  • 物品数据修正:修复了 1.20.3→1.20.5 版本中部分实体和方块实体数据导致的踢出/工具提示缺失问题(由 kennytv、EnZaXD 贡献)
  • 反作弊兼容性:在 1.21→1.21.2 版本中,船载具状态下每 tick 发送玩家输入以避免误判(由 EnZaXD 贡献)
支持开发者
若希望提前体验大版本更新,可通过 https://viaversion.com/donate 支持开发。更多详情请参阅往期更新日志。
主要仅包含一项重要修复,其余更新与ViaBackwards相关。

修复内容

  • 修复1.20.3→1.20.5版本中伪装聊天处理的回归问题
  • 修复1.21.4→1.21.5版本中缺失的chunk_biomes数据转换(由Gerrygames贡献)
  • 部分修复旧版服务器上的"拾取方块"功能(由Pablete1234贡献)
重要提示
未来ViaVersion将要求至少Java 21环境运行。若您当前使用Java 17,升级应无显著困难。

若希望提前获取大版本更新,可通过 https://viaversion.com/donate 支持开发者。更多信息请查阅往期更新说明。

1.21.5 客户端支持

问题修复​

  • 方块实体处理:修复 1.21.2→1.21.4 版本自定义模型数据解析异常
  • 物品悬停事件:修正 1.21→1.21.2 及 1.21.2→1.21.4 版本中移除的物品数据组件显示问题
  • 潜影盒内容:解决 1.20.3→1.20.5 版本潜影盒物品不可见问题(由 EnZaXD 贡献)
  • 物品悬停事件:优化 1.20.3→1.20.5 版本处理逻辑(由 kennytv、EnZaXD 贡献)
  • 注册表条目:修复重复注册项导致的错误(由 EnZaXD 贡献)
  • 矿车方块:修正 1.8→1.9 版本矿车内方块渲染异常(由 EnZaXD 贡献)
  • 版本兼容:解决 Velocity 代理下 1.9+ 客户端加入 1.8 服务器的错误(由 EnZaXD 贡献)
  • 音效处理:移除 1.21.4 客户端在 1.8 服务器上的消耗品阻挡音效(由 lowercasebtw 贡献)

重要说明​

⚠️ 数据同步风险:若运行 1.17-1.21 之间的版本,或未在最新 Paper 服务端上使用 ViaVersion,可能出现物品数据不同步

新增功能​

  • 跨平台协议检测:通过自定义数据包(plugin messages)获取玩家客户端版本信息(由 EnZaXD 开发)
    • 适用场景
      • 反作弊系统
      • 版本依赖功能
    • 支持环境
      • 代理端(如 Velocity/ViaProxy)
      • 客户端(如 ViaFabricPlus)
    • 数据示例

      JSON:
      {
      "platformName": "Velocity",
      "platformVersion": "3.1.2",
      "version": 760,
      "versionName": "1.19.4"
      }

未来变更预告​

🔧 运行环境要求:后续版本将强制要求 Java 21+(当前 Java 17 用户可平滑升级)

支持开发​

💖 提前获取重大更新:赞助支持
📚 更多历史更新说明详见 Wiki 文档

(技术备注)
  • 所有跨版本功能需配合 ViaVersion 插件使用
  • 自定义数据包通道需监听 viaversion:version_info
Reminder: ViaVersion will use Java 21 in a future release, please keep your Java updated! If you want to get larger updates early consider becoming a supporter https://viaversion.com/donate.
提醒:ViaVersion 将在未来的版本中使用 Java 21,请保持您的 Java 更新!如果您想尽早获得更大的更新,请考虑成为 Supporter https://viaversion.com/donate

Changelog: 更新日志:
  • Various fixes to block pick handling on Paper servers in 1.21.2->1.21.4 (by riku6460 and booky10)
    在 1.21.2->1.21.4 中对 Paper 服务器上的区块选择处理进行了各种修复(由 riku6460 和 booky10 提供)
  • Fixed error when dropping custom painting on the ground in 1.21.2->1.21.4 (by kennytv)
    修复了在 1.21.2->1.21.4 中将自定义绘画掉落在地上的错误(由 kennytv 提供)
  • Fixed transfer intent in handshake in 1.20.4->1.20.5 (by RK_01)
    修复了 1.20.4->1.20.5 中握手中的转移意图(RK_01)
  • Handle legacy show_entity text component format in newer protocols (by EnZaXD)
    在较新的协议中处理旧版show_entity文本组件格式(由 EnZaXD 提供)
  • The modern shield blocking fix on 1.8 servers only applies to 1.21.4+ clients now due to inconsistencies before that; removed sword-blocking-via-consumable config option to always be enabled (by roccodev)
    由于之前的不一致,1.8 服务器上的现代盾牌阻止修复现在仅适用于 1.21.4+ 客户端;移除了 sword-blocking-via-consumable 配置选项,使其始终处于启用状态(由 roccodev 提供)
  • Send op permission level 4 for use of command blocks in 1.8->1.9 (by EnZaXD)
    发送 op 权限级别 4 以使用 1.8->1.9 中的命令方块(由 EnZaXD 提供)
  • Ignore bad entity packets below 1.14 as per Vanilla handling (by EnZaXD)
    根据 Vanilla 处理忽略低于 1.14 的不良实体数据包(由 EnZaXD 提供)
Huge thanks to Kenny, EnZaXD, riku6460, booky10, roccodev for contributing towards this release.
非常感谢 Kenny、EnZaXD、riku6460、booky10、roccodev 为这个版本做出的贡献。
Reminder: ViaVersion will use Java 21 in a future release, please keep your Java updated! If you want to get larger updates early consider becoming a supporter https://viaversion.com/donate.
提醒:ViaVersion 将在未来的版本中使用 Java 21,请保持您的 Java 更新!如果您想尽早获得更大的更新,请考虑成为 Supporter https://viaversion.com/donate

Changelog:
  • Greatly reduced netty byte buf (memory) allocation (by KennyTV)
    大大减少了 netty byte buf(内存)分配(由 KennyTV 提供)
  • The sword-blocking emulation for 1.20.5+ clients on 1.8 servers can now be disabled via sword-blocking-via-consumable (by EnZaXD)
    1.8 服务器上 1.20.5+ 客户端的 sword-blocking 模拟现在可以通过 sword-blocking-via-consumable(由 EnZaXD 提供)来禁用。
  • The fix-1_21-placement-rotation config option is now enabled by default (by Pro4D)
    现在,默认情况下会启用 fix-1_21-placement-rotation 配置选项(由 Pro4D 提供)
  • Fixed reading of equippable (by DavyCraft648)
    修复了 equippable 的读数(由 DavyCraft648 提供)
  • Fixed reading of armor trim override materials(by KennyTV)
    修复了装甲装饰覆盖材料的读取(由 KennyTV 提供)
  • Fixed regression in tag sending for 1.20.2 to 1.20.4 clients on older servers(by KennyTV)
    修复了在旧服务器上为 1.20.2 到 1.20.4 客户端发送标签的回归问题(由 KennyTV 提供)
  • Fixed recipe book recipe ingredients for newer clients on 1.12 servers and older (by valaphee)
    修复了 1.12 及更早版本服务器上新客户端的配方书配方成分(由 valaphee 提供)
  • Fixed block action block id handling across multiple protocols (by valaphee)
    修复了跨多个协议的块操作块 ID 处理(由 valaphee 提供)
  • Fixed 1.12->1.13 block connections on snowy grass, mycelium and podzol (by lowercasebtw)
    修复了雪草、菌丝体和灰化土上的 1.12->1.13 方块连接(由 lowercasebtw 提供)
  • Fixed dropped items being invisible until entity data is sent in 1.10->1.11 (by EnZaXD)
    修复了在 1.10->1.11 中发送实体数据之前掉落的物品不可见的问题(由 EnZaXD 提供)
  • Improved 1.21 client enchantment handling on legacy servers (by Pablete1234)
    改进了旧版服务器上的 1.21 客户端附魔处理(由 Pablete1234 提供)
  • Fixed fix-1_21-placement-rotation not working after changing its value and running /viaversion reload (by EnZaXD)
    修复了 fix-1_21-placement-rotation 在更改其值并运行 /viaversion reload 后不起作用的问题(由 EnZaXD 提供)
  • Fixed fix-1_21-placement-rotation causing some issues with with anti-cheats (by EnZaXD)
    修复了 fix-1_21-placement-rotation 导致反作弊出现一些问题的问题(由 EnZaXD 提供)
Huge thanks to Kenny, EnZaXD, valaphee, lowercasebtw, Pablete1234, DavyCraft648, Pro4D for contributing towards this release.
非常感谢 Kenny、EnZaXD、valaphee、lowercasebtw、Pablete1234、DavyCraft648、Pro4D 为本版本做出的贡献。
后退
顶部 底部