Bugfix Mixin
[!INFO] 注册真源:
MixinConfigPlugin.getMixins()的Phase.DEFAULT分支 源码目录:src/main/java/makamys/coretweaks/mixin/bugfix/
12 个 Bugfix Mixin
全部在 DEFAULT 阶段注册。fixEntityTracking 是唯一一次注入 3 个类的开关。
| # | Mixin | 目标类 | 门控配置 | 需客户端 |
|---|---|---|---|---|
| 1 | chatlinkcrash.MixinForgeHooks |
ForgeHooks |
fixForgeChatLinkCrash |
否 |
| 2 | displaylistdelete.MixinRenderGlobal |
RenderGlobal |
fixDisplayListDelete |
是 |
| 3 | forge5160.MixinChunk |
Chunk |
fixEntityTracking |
否 |
| 4 | forge5160.MixinEntity |
Entity |
fixEntityTracking |
否 |
| 5 | forge5160.MixinWorld |
World |
fixEntityTracking |
否 |
| 6 | guiclicksound.MixinGuiListExtended |
GuiListExtended |
guiClickSound |
是 |
| 7 | heightmaprange.MixinChunk |
Chunk |
fixHeightmapRange |
否 |
| 8 | intelcolor.MixinTessellator |
Tessellator |
fixIntelRendering + !useAlternateIntelRenderingFix |
是 |
| 9 | intelcolor.MixinOpenGlHelper |
OpenGlHelper |
fixIntelRendering + useAlternateIntelRenderingFix |
是 |
| 10 | mobcap.MixinEntity |
Entity |
useSpawnTypeForMobCap |
否 |
| 11 | restoretravelsound.MixinNetHandlerPlayClient |
NetHandlerPlayClient |
restoreTravelSound |
是 |
| 12 | smallentityswim.MixinEntity |
Entity |
fixSmallEntitySwim |
否 |
互斥的一对:intelcolor
fixIntelRendering 的两个变体由 useAlternateIntelRenderingFix(普通 boolean,
默认 false)二选一,用三元表达式选出要注入的类名:
if (Config.fixIntelRendering.isActive() && isClient) {
mixins.add(!Config.useAlternateIntelRenderingFix
? "bugfix.intelcolor.MixinTessellator"
: "bugfix.intelcolor.MixinOpenGlHelper");
}
配置注释说明:默认走 MixinTessellator(侵入性小的修法),
若问题仍出现则开启 useAlternateIntelRenderingFix 改用
MixinOpenGlHelper —— 即「按原处方的更侵入修法」。
⚠️ 任何时刻至多注入其中一个,两者永不共存。
bugfix.mobcap.MixinEntity 的冲突目标
mixin/bugfix/mobcap/MixinEntity.java 与
mixin/optimization/、mixin/tweak/ 下的 MixinEntity 不冲突,
但 useSpawnTypeForMobCap 是全 CoreTweaks 唯一默认关闭(def = FALSE)
的 Bugfix 类开关,因为改错会导致刷怪上限判定异常。
1.7.10 → 新版本回移
多个修复在配置注释中明确标注了上游修复版本,是判断行为来源的依据:
| 修复 | 上游来源 |
|---|---|
extendSprintTimeLimit(见 Tweak Mixin) |
MC-4839,1.9 修复 |
restoreTravelSound |
MC-233,1.9 修复 |
fixHeightmapRange |
MC-7508 |
fixDoubleEat |
MC-849 |
fixDisplayListDelete |
1.12 |
fixEntityTracking |
MinecraftForge PR #5160 |
jarDiscovererCache |
Forge 1.12(1.9 加入) |
forgeModDiscovererSkipKnownLibraries |
Forge 1.12 |
tcpNoDelay |
Minecraft 1.12(1.8.1 加入) |
会被其它 mod 自动禁用的修复
Config.shouldDisable 在配置加载期对 4 个 bugfix 做冲突检测
(详见 功能兼容矩阵):
| 修复 | 被禁用于 |
|---|---|
fixForgeChatLinkCrash |
Hodgepodge ≥ 1.6.14 且其 fixes.fixUrlDetection 开启 |
fixEntityTracking |
存在 backport5160 |
fixHeightmapRange |
存在 LUMINA 或 Supernova |
crashHandler(见 Tweak Mixin) |
存在 BetterCrashes 或 CrashGuard |
禁用时只打一条 INFO 日志,不改配置文件;
若用户在配置里写 force 则绕过检测(FeatureSetting.isActive 的 FORCE 分支)。
相关条目
- 动态 Mixin 注册 - 本页 12 个的注册入口
- 功能兼容矩阵 - 冲突禁用规则
- Optimization Mixin - 同一 DEFAULT 阶段
- Tweak Mixin - 同一 DEFAULT 阶段