
戈蒂所有权空守卫修复
一个微小的Forge 1.20.1补丁,修复了Goety召唤物在受到伤害时因“Ticking entity”空指针异常而崩溃的问题。
# Goety Owned Null Guard 修复
一个微小的(约 3KB)Forge 1.20.1 补丁,用于修复 Goety 召唤物反复出现的崩溃问题。
## 问题
当 Goety 召唤物(如 Inferno 或 ZombieServant)受到伤害时,游戏可能会因 "Ticking entity" 空指针异常而崩溃。此问题最常出现在下界、附近有多个同类召唤物或存在无主召唤物时。崩溃堆栈始终指向 Owned.java:186 -> Entity.java:2236。
## 根本原因
Goety 的 Owned.isAlliedTo(Entity) 将一个空实体转发给原版 Entity.isAlliedTo。伤害报复目标 AI 在向附近的同类生物传播伤害时,会传递一个已清除的 lastHurtByMob() 值,而原版 1.20.1 在未进行空检查的情况下解引用了该参数(p.getTeam())-> 导致空指针异常。
## 修复方法
一个混入(Mixin)在 Owned.isAlliedTo 的入口处注入了空值防护:对于空参数返回 false(空实体永远不可能是盟友)。不影响游戏平衡,也不改变 AI 行为——这是一个纯粹的空值安全修复。
## 兼容性
- 需要 Forge 1.20.1 (47.x) 和 Goety 2.5.56+。
- 可与 RevelationFix、Goety: Revelation 及所有 Goety 附属模组共存。
- 客户端和服务器端均需安装。对于集成服务器,主机必须安装此模组。
- 仅包含一个混入;不含任何 Goety 代码。采用 MIT 许可证。删除 jar 文件即可卸载。
感谢 Polarice3 制作的 Goety(https://github.com/Polarice3/Goety-2)。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。