[转载][1.8——latest]ViaVersion 代理端/服务端适用的跨版本支持

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

完成注册/登录后下载
  • Fixed entity movement interpolation in 26.2->26.3 - note that the client itself has its own interpolation issues (by roccodev)
  • Fixed brewing stand slots not accepting items on Vanilla servers in 26.2->26.3 (by EnZaXD)
  • Fixed a few unhandled custom registry data handling in 26.2->26.3 and other protocols (by kennytv & EnZaXD)
  • Fixed splash potion sounds not playing in 26.2->26.3 (by EnZaXD)
  • Fixed missing empty swing animations in 26.2->26.3 (by EnZaXD)
  • Fixed a bunch of partial item hashing issues for 1.21.5+ clients, including consumable animations, default-count item templates and sulfur cube content (by EnZaXD)
  • Fixed inventory desyncs from attribute modifier conversion using random ids in 1.20.5->1.21 (by EnZaXD)
  • Fixed end credits being shown again every time 1.21+ clients use the exit portal on older servers (by Dainsleif)
  • Fixed a few client-side interactions and events from missing tags across protocols
  • The vv:proxy_details Velocity payload now reports the original client version instead of the intermediate one (by chico ferreira)
Minor/creative mode backup/legacy fixes:

  • Axes no longer strip logs on <1.13 servers and shovels no longer create dirt paths on 1.8 servers for 26.3 clients (by EnZaXD)
  • Fixed hide_additional_tooltip matching of removed data components in 1.21.4->1.21.5 (by EnZaXD)
  • Fixed shield bypassed_by tag key creative mode backup in 1.21.11->26.1 (by EnZaXD)
  • Fixed bees not spawning from bee nests placed after creative mode in 1.21.7->1.21.9 (by EnZaXD)
  • Fixed handling of removal markers in villager trades in 1.20.3->1.20.5 (by Polang)
  • Fixed nested item markers leaking into custom data in 1.20.3->1.20.5 (by EnZaXD)
  • Fixed handling of written books with invalid filtered pages in 1.20.2->1.20.3 (by EnZaXD)
  • Fixed ender dragons flapping their wings way too fast due to the wrong dragon phase in 1.8->1.9 (by LeonTG)
If you want to get larger version updates early, consider supporting me via https://viaversion.com/donate. See the previous update notes for more info.
大量性能改进,外加一批针对旧问题的修复!
  • 除了许多较小的内存和性能优化外,区块读写性能优化幅度最高可达 90%(这部分占据了 Via 数据包处理的大部分开销)。
  • 在 26.1→26.2 中发送挥动手臂数据包,以允许旁观者检测左键点击空气(感谢 LeonTG)
  • 修复了 26.1+ 中 damage_resistant 的物品哈希,以及 26.1→1.21.11 中伤害抵抗 ID 列表的处理
  • 修复了 1.21.11→26.1 中放置甘蔗时缺少挥臂动画的问题
  • 修复了 1.21.11→26.1 中自定义维度环境光照的问题
  • 修复了 1.21→1.21.2 中包含字面量字符串 "null" 的锁数据组件的处理问题(感谢 EsMokyGame)
  • 修复了 1.19.1→1.19.3 中等级事件(如红石)缺失门声音的问题
  • 修复了 1.18.2→1.19 中织布机无法工作的问题
  • 修复了 1.17.1→1.18 中 Pigstep 音乐唱片播放错误音效的问题
  • 修复了 26.2 客户端在 <1.14 服务端接收到 ID 为 0 的实体时客户端崩溃的问题(感谢 EnZaXD)
  • 添加了选项 multi-reddust-color-fix,用于修复 1.12→1.13 中非零计数的红石粉尘颜色转换问题(感谢 itslilscorp)
  • 该选项默认关闭,因为对于大批量粒子可能会导致粒子数据包泛滥
若想提前获取较大版本更新,欢迎通过 https://viaversion.com/donate 支持我。更多信息请参阅上一则更新说明
26.2 客户端支持。

已知问题:26.2 客户端在接收到 ID 为 0 的实体时将会断开连接——如果可能的话,请将你的服务端代码中 Entity.ENTITY_COUNTER 原子整数的起始值修改为 1。此问题的修复即将推出。
  • 修复了配置阶段数据包限制的问题
  • 修复了服务端完全未发送的注册表条目缺失的问题
  • 修复了 blocks_attacks 绕过物品哈希的问题(感谢 EnZaXD)
  • 修复了 1.21.11→26.1 中 ponder_goat_horn 乐器的键值
  • 添加了 1.21.11→26.1 中缺失的末地时钟(感谢 trassert)
  • 在 1.21.4→1.21.5 中为反胃效果添加了渐变混合(感谢 itslilscorp)
  • 修复了 1.18→1.19.4 中无限药水效果的显示问题(感谢 LeonTG)
  • 在 1.16→1.17 中添加了缺失的 locate 和 locatebiome 命令翻译(感谢 EnZaXD 和 xpple)
  • 修复了 1.12→1.13 中头颅旋转值大于 15 时的旋转处理问题(感谢 itslilscorp)
  • 修复了 1.12→1.13 中粉尘粒子错误使用染色玻璃板方块的问题(感谢 itslilscorp)
若想提前获取较大版本更新,欢迎通过 https://viaversion.com/donate 支持我。更多信息请参阅上一则更新说明。
本次更新主要为 ViaVersion 需要处理的最耗时任务带来了实质性的性能提升!

  • 修复了 1.20.3 -> 1.20.5 版本中冒险模式谓词标签处理的一个回归问题
  • 性能提升
    • 提升了区块读取、处理与写入的性能
    • 物品堆的哈希计算现在每个处理流水线只执行一次,而非每个协议转换阶段都计算一次
    • 改进了特定区块所持有数据的缓存机制(感谢 Pablete1234)
    • 对 NBT 标签的读写进行了小幅优化
如果你想提前获得大版本更新,可以考虑通过 https://viaversion.com/donate 支持我。更多信息请参见之前的更新日志。
更新日志

本次更新对重写器的内部注册方式做了一些较大的改动,因此,那些额外注册了协议的自定义平台实现可能会受到影响。详情请参阅 SharedRegistrations。

  • 修复了 1.21.11 -> 26.1 版本中水体物理表现偶尔失效的问题
  • 修复了 1.21.11 -> 26.1 版本中打开游戏规则编辑界面时被踢出的问题(感谢 EnZaXD)
  • 修复了 1.21.11 -> 26.1 版本中小狼的纹理问题
  • 修复了 1.21.11 -> 26.1 版本中 jukebox_playable 唱片数据的处理问题
  • 修复了 1.21.11 -> 26.1 版本中 /time 命令的消息显示问题(感谢 EnZaXD)
  • 修复了 1.21.11 -> 26.1 版本中交互时潜行状态追踪的问题(感谢 EnZaXD)
  • 修复了 1.21.11 -> 26.1 版本中放置植物以及某些容器相关交互时的挥臂动画问题(感谢 EnZaXD)
  • 处理了嵌套的附魔词条(感谢 DrexHD)
  • 处理了嵌套的对话框及对话框点击事件(感谢 EnZaXD)
  • 修复了带有覆盖文本的 attribute_modifiers 的哈希计算问题
  • 修复了 1.20.5 -> 1.20.3 版本中瞬态 map_post_processing 数据组件引发错误的问题
  • 修复了 1.20.4 -> 1.20.5 版本中冒险模式谓词错误的问题
如果你想提前获得大版本更新,可以考虑通过 https://viaversion.com/donate 支持我。更多信息请参见之前的更新日志。
这是一个小更新,主要面向使用 ViaBackwards 的用户!

  • 修复了在 1.21.1 -> 26.1 版本中,仅包含海带/海草/气泡柱水体的区块在客户端物理表现不正确的问题(感谢 RK_01)
  • 修复了在 1.21.11 -> 26.1 版本中,部分旧版自定义服务器缺失必要标签的问题(感谢 EnZaXD)
  • 修复了对话中物品数据组件变更处理缺失的问题
  • 修复了 attack_range 和 provides_banner_pattern 物品的哈希计算问题
如果你想提前获得大版本更新,可以考虑通过 https://viaversion.com/donate 支持我。更多信息请参见之前的更新日志。
26.1 客户端支持。请注意,在接下来的几周内,我们可能会再次使用 Hangar/Modrinth 上的 alpha 构建频道(使用独立的 dev 分支)——通常也是安全可用的,但务必注意不要混用 ViaVersion 和 ViaBackwards 的 alpha 与 beta 版本。

  • 修复了 1.21.9→1.21.11 版本中主世界与末地环境背景音轨错位的问题
  • 修复了 1.20.3→1.20.5 版本中空自定义效果药水的转换问题(感谢 EnZaXD)
  • 在 1.8→1.9 告示牌更新中生成内联字符串,以缓解可能存在的反作弊问题(感谢 EnZaXD)
若想提前获取较大版本更新,欢迎通过 https://viaversion.com/donate 支持我。更多信息请参阅上一则更新说明。
  • 启用后,玩家详情自定义数据现在将始终发送,即使服务器版本与客户端版本匹配(由 EnZaXD 提供)
  • 修复了配置有时按字母顺序排列而非保持默认顺序的问题
  • 修复了在物品悬停事件中缺少对 item_name 和 custom_name 的处理(由 EnZaXD 提供)
  • 修复了缺少对 set_score 数字格式类型的处理
  • 修复了 1.21.9 到 1.21.11 版本间生物群系的声音和粒子效果问题
  • 处理了 1.21.9 到 1.21.11 版本间告示牌中精灵路径的变更(由 EnZaXD 提供)
  • 修复了在 1.21 到 1.21.2 版本间,将食物物品数据组件拆分为可消耗部分和使用剩余部分时,对空数据组件的处理问题(由 RK_01 提供)
  • 修复了 1.17 到 1.17.1 版本间负数或大于 255 等级的附魔显示问题(由 valaphee 和 EnZaXD 提供)
  • 修复了 1.8 到 1.9 版本间,登录时若已设置则重复设置游戏状态压缩的问题(由 EnZaXD 提供)
  • 修复了对大型客户端文本组件的读取问题
  • 提升了在禁用压缩的旧版服务器上的性能
如果您希望提前获得更大版本的更新,请考虑通过 https://viaversion.com/donate 支持我。查看更多更新说明请参阅之前的更新日志。
  • 修复了持续性数据包限速器过于激进、导致玩家被误踢的问题
  • 修复了方块实体(Block Entity)ID 映射可能不正确的问题
  • 修复了自定义或重复注册表项(registry entries)可能导致的错误
  • 修复了在 1.21.4 → 1.21.5 版本转换中,桶类物品变种(bucket variant)的物品描述显示错误的问题(由 EnZaXD 贡献)
此外,本次更新还对平台/内部 API 做出了以下改进:
  • 扩展了服务器/玩家详情协议(Server/Player Details Protocol),新增了 vv:server_details 自定义载荷通道。
    更多信息请参阅:https://github.com/ViaVersion/ViaVersion/wiki/Server-and-Player-Details-Protocol(由 EnZaXD 贡献)
    • 新增两个配置选项:send-server-details 和 send-player-details,用于控制是否启用该协议功能。
  • 现在你可以通过 ViaChannelHandler 接口,直接从 Netty 管道处理器中获取 UserConnection 实例及其版本信息(例如,在客户端尚未完成登录认证、还未收到 login_success 包时,就能获取其协议版本),无需使用反射。
  • 平台实现变得更加简单,新增了更多基础实现类以减少重复代码。
    详情请参阅开发文档:https://github.com/ViaVersion/ViaVersion/wiki/Creating-a-new-ViaVersion-platform(由 kennytv 与 EnZaXD 贡献)

如果你想更早获得重大版本更新,请考虑通过 https://viaversion.com/donate 支持开发者。更多信息请参考之前的更新日志。
一堆配置更改和一些修复!
  • 已将日志相关配置选项移动并重命名至新的日志记录章节下
    • 新增了max-error-length以减少或增加ViaVersion错误信息量
    • 包括log-blocked-joins、log-entity-data-errors、log-text-component-conversion-errors、log-other-conversion-warnings和max-error-length
    • log-text-component-conversion-errors和log-other-conversion-warnings默认已禁用,且不会从先前值迁移
  • 若您仍使用旧版本较低的默认值,packet-limiter配置选项将自动迁移至更高值
  • 新增migrate-default-config-changes配置选项以允许禁用此类默认值迁移(但我们强烈建议保持启用,除非您逐一阅读每个更新日志并手动调整配置)
  • 修复了当数据包大小追踪被禁用时数据包限制器的追踪问题(由EnZaXD提交)
  • 修复了加载因自动换行符位置不当而格式异常的配置文件时产生的错误
  • 修复了1.21.5+版本中交易界面偶尔出现的物品不同步问题
  • 修复了1.21.9->1.21.11版本中的世界边界插值问题(由MrKinau提交)
  • 修复了1.21.9->1.21.11版本中的精灵图路径问题
  • 修复了1.21.9->1.21.11版本中的滴石岩浆粒子效果(由riku6460提交)
  • 修复了当创造模式客户端在1.21.9->1.21.11版本中尝试与长矛幽灵物品交互时出现的错误(由booky10提交)
  • 修复了自定义附魔中block_state_property附魔条件的处理问题
  • 修复了1.12->1.13版本中苔藓墙的方块连接问题(由lowercasebtw提交)
  • 新增use-1_8-hitbox-margin配置选项以使用1.21.11版本的新物品组件实现武器命中框调整(默认启用,由roccodev提交)
  • 为1.8服务器上的1.20.5+客户端新增了台阶高度和互动距离实体属性(由RK_01提交)
  • 修复了1.8->1.9版本中lit_furnace物品的显示问题(由EnZaXD提交)
若希望提前获取大版本更新,请考虑通过 https://viaversion.com/donate 支持我。更多信息请参阅往期更新说明。
后退
顶部 底部