跳到正文

Be Quiet Negotiator

作者:samuelh2005

Be Quiet Negotiator 是一款客户端 NeoForge 模组,可通过静默跳过 NeoForge 握手协商,让你连接原版或非 NeoForge 服务器,避免常见的握手错误,让连接更加顺畅。

收藏

介绍

介绍由机器翻译自 Modrinth 原页面,仅供参考。

Be Quiet Negotiator

Be Quiet Negotiator 是一个轻量级、仅客户端使用的 NeoForge 模组,它让装有模组的客户端能够连接到原版或
仅安装少量模组的服务器(例如仅安装服务端模组的 Fabric 服务器),而不会触发 NeoForge 的
严格网络协商流程。

工作原理

通常情况下,NeoForge 会强制执行握手协议,以确保客户端和服务器在模组数据载荷和
能力上达成一致。此模组会在连接到不支持 NeoForge 的服务器时静默抑制该协商,
使连接能够顺利通过,而不会出现断开连接或错误——因此,它通过保持沉默来“协商”。

此外,连接过程中可能出现的其他错误,例如数据包解码错误
或意外的数据包大小,也会被忽略,使客户端能够无问题地连接。

具体来说,Be Quiet Negotiator 使用 Mixins 来修补 NeoForge 客户端代码,专门针对那些在连接到不支持 NeoForge 的服务器时
产生错误或断开连接的烦人方法。

此外,所有补丁均可配置,允许用户根据需要启用或禁用特定补丁。

使用场景

此模组非常适合:

  1. 使用 NeoForge 客户端并希望加入原版服务器的玩家,可防止因缺少网络协商响应而导致的断开连接。
  2. 通过混合或代理网络连接的玩家,其入口是原版或非 NeoForge 服务器,可避免客户端期望 NeoForge 时握手失败。
  3. 在客户端使用全套 NeoForge 模组的整合包开发者或测试者,他们希望连接到未安装模组或安装不同模组的服务器,而无需每次都禁用模组。
  4. 尝试加入没有 NeoForge 的服务器,同时仍安装了期望模组服务端的模组(例如带有网络功能的世界生成、物品或 GUI 模组)的玩家。
  5. 局域网或休闲多人游戏环境,其中只有客户端运行带有完整功能模组的 NeoForge,而服务器未安装模组或运行不同的模组加载器。

要构建生产就绪的代理网络?

不要使用此模组!你很可能会遇到模组兼容性问题,因为 Be Quiet Negotiator 只是抑制错误,
并不能神奇地让不兼容的模组正常工作。

与其使用传统代理将连接路由到后端服务器,我建议为每个 NeoForge 服务器
分配其自己的公网 IP 地址 / 域名。

如果你没有足够的 IP 地址,可以使用反向代理,例如
Gate Lite Mode 或我自己的 mc-router
来根据 Handshake 数据包的 Server Address 字段路由连接。

要在服务器之间转移玩家,请使用 Minecraft 1.20.5 中引入的原版 /transfer 命令,或安装
Server Redirect mod。

包含的补丁(自 v1.0.1 起)

  • bypassNegotiationErrors – 通过忽略协商错误,允许客户端连接到不支持 NeoForge 的服务器。
  • bypassCustomFeatureFlags – 在连接到服务器时忽略自定义功能标志,使客户端能够无问题地连接。
  • ignorePacketDecodingErrors – 在连接到服务器时忽略数据包解码错误,使客户端能够无问题地连接。
  • ignorePacketHandlerErrors – 在连接到服务器时忽略客户端数据包处理错误,使客户端能够无问题地连接。

重要说明

连接安全性

Be Quiet Negotiator 的设计确保了安全性:只有在服务器被识别为非 NeoForge 时才会启用,
完全不会影响普通的模组客户端之间的连接。配置简单且可切换,让用户能够精细控制是否允许静默协商。

模组兼容性

某些模组可能依赖成功的协商过程,或要求服务器端支持特定功能。在这些情况下,功能可能会悄无声息地失效,或导致令人困惑的行为。

请谨慎操作,避免在未运行 NeoForge 的服务器上放置或交互模组方块、物品或 GUI。此模组可让连接兼容,但无法让不兼容的模组凭空正常运行。

已知不兼容模组列表见 docs/incompatibility.md。

常见问题

Be Quiet Negotiator 支持哪些 Minecraft 版本?

Be Quiet Negotiator 支持 Minecraft Java 版 1.21.1–1.21.11,共 4 个版本,可用的加载器:NeoForge。下载时注意选择和你游戏版本一致的文件。

Be Quiet Negotiator 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅客户端。

评论

登录后评论和评分

samuelh2005 的其他作品

查看全部 →