跳到正文

Sable Chunk Fix

作者:FrontierCraft

客户端修复 Sable / Create Aeronautics 的断开连接问题“Cannot drop chunks in plot”。靠近飞船时,玩家将不再因数据包处理错误而被踢出服务器。

收藏

介绍

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

**Sable Chunk Guard** 可解决运行 **Sable**(Create Aeronautics 飞船背后的物理前置库)的服务器上,玩家可能遇到的一种特定断开连接问题。

### 问题

Sable 会将每艘飞船的方块存放在世界中一个很远的区域,称为绘图空间。有时,服务器会让玩家的游戏卸载(“忘记”)其中一个绘图区块。Sable 不允许丢弃绘图区块,于是会报错:

“`
数据包处理错误
java.lang.UnsupportedOperationException: Cannot drop chunks in plot
“`

Minecraft 会将处理数据包时出现的任何错误视为致命错误,因此玩家会被断开连接。此问题通常发生在玩家加入飞船附近的服务器后,或乘坐飞船时;玩家每次在同一地点重新登录,都可能再次遇到断线。

### 修复方法

当游戏收到针对 Sable 绘图空间内区块的忘记数据包时,现在会跳过该数据包,不再导致连接崩溃。

– **只影响飞船区块。** 普通世界区块的忘记数据包仍按原有方式处理。
– **不会丢失内容。** Sable 本来就不会丢弃绘图区块,因此飞船状态与没有发生错误时相同。
– **保留飞船光照。** 模组会跳过整个数据包,而不只是隐藏错误。若只屏蔽错误,游戏仍会清除该区块的光照,导致飞船显示变暗。
– **兼容未来版本的 Sable。** 如果后续 Sable 更新修改了本模组使用的 API 部分,模组会记录一条错误并自动停用,而不会造成干扰。
– **安静运行。** 跳过的数据包最多每分钟记录一次:
  `Ignored 1 forget-chunk packet(s) for Sable plot chunks`

### 测试

已在真实游戏客户端中使用 Sable 2.0.5 和 Create Aeronautics 1.3.2 进行测试:

| 测试项 | 结果 |
| — | — |
| Sable 在直接丢弃飞船区块时仍会抛出“Cannot drop chunks in plot”错误(确实存在此问题) | 通过 |
| 跳过针对该飞船区块的忘记数据包,没有错误,也没有断开连接 | 通过 |
| 针对普通区块的忘记数据包仍会正常卸载区块 | 通过 |

### 需求

– Minecraft **1.21.1**、**NeoForge**、Java 21
– **Sable 2.0.5** 或更高版本(包含在 Create Aeronautics 中)
– **仅需安装在客户端。** 遇到此断线问题的玩家需在自己的游戏中安装。服务器无需安装,玩家也可以加入安装或未安装本模组的服务器。

### 温馨提示

本模组只会在玩家端隐藏这一问题的表现,并不会改变服务器发送忘记数据包的原因。如果你能重现此断线问题,仍建议向 Sable 报告。

与 Sable 或 Create Aeronautics 无关。保留所有权利。

常见问题

Sable Chunk Fix 支持哪些 Minecraft 版本?

Sable Chunk Fix 支持 Minecraft Java 版 1.21.1,可用的加载器:NeoForge。下载时注意选择和你游戏版本一致的文件。

Sable Chunk Fix 怎么安装?

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

评论

登录后评论和评分

FrontierCraft 的其他作品

查看全部 →