ChromaticTooltipsCompat
[!INFO] Git Commit:
a40339f| Updated: 2026-10-01
Chromatic Tooltips 的兼容补丁合集。它本身不渲染任何 tooltip, 而是通过 60 个 Mixin + 11 个事件处理器,让 30+ 个第三方 mod 自己画的 tooltip 改走 Chromatic Tooltips 的统一样式与排版。
身份
| 属性 | 实测值 |
|---|---|
| modid | chromatictooltipscompat(全小写,ChromaticTooltipsCompat.java:21) |
| 主包 | com.slprime.chromatictooltipscompat |
| Java 文件 | 85 |
| 注册内容 | 0 方块 / 0 物品 / 0 实体 / 0 网络包 |
| Mixin 类 | 60(1 个 EARLY + 59 个 LATE) |
| Mixin 组 | 35 |
| 目标 mod 判定 | 32 |
| 配置项 | 52 个 boolean(全在 general 分类) |
| 事件处理器 | 11 |
| 硬依赖 | chromatictooltips@[1.0.7,);NEI 为软依赖 after: |
| Minecraft | 1.7.10(gradle.properties,Forge 10.13.4.1614) |
| Access Transformer | META-INF/mixins.chromatictooltipscompat_at.cfg |
[!NOTE] 本 mod 走 GTNHLib Mixins(
IMixins/ILateMixinLoader/IEarlyMixinLoader),不是 UniMixins。 三个mixins.chromatictooltipscompat*.json配置文件里 一个mixins数组都没有,也没有plugin字段—— 真正的 Mixin 列表由 Mixins 枚举在运行时按配置与已加载 mod 动态生成。 照着 JSON 统计 Mixin 数量会得到 0,这是本仓最易误判的一点。
源码缺陷
-
WAILA组是唯一没有配置门控的 Mixin 组。Mixins.java:67-69的WAILA直接addClientMixins(...)后.setPhase(Phase.LATE),缺少setApplyIf。 其余 34 个组全部有门控。后果:只要装了 Waila,waila.TooltipHandlerWailaMixin就会无条件注入, 用户把wailaEnabled设为false也拦不住。 (同 modid 的WAILA_RENDER组反而有门控,属明显遗漏。) -
Ender IO 的 9 个 Mixin 被 Ender Core 的开关控制。
Mixins.java:33-45的ENDER_IO_CORE组补丁的是 Ender IO (enderio.*目标类),但门控写的是CompatConfig.enderCoreEnabled——而TargetedMod.java:16里ENDER_IO_CORE的 modid 是endercore, 即 Ender Core。同名的EnderCoreHandler处理的也是 Ender Core。 结果:关掉 Ender Core 兼容会连带关掉 Ender IO 兼容。 -
inventoryTweaksEnabled是死配置。CompatConfig.java:134-136声明了它,但在全部 85 个源文件中 零引用——既没有对应 Mixin 组,也没有 handler 读它。 玩家的修改不会有任何效果。 -
AppleCore 有两个语义不同的开关。
ClientProxy.java:43用appleCoreEnabled决定是否注册 handler; 而APPLECOREMixin 组(Mixins.java:159)用的是appleCoreFoodStatsDisabled(「隐藏食物属性」)。 两者不同步:可能 Mixin 已注入但 handler 未注册, 或反之。 -
SCIENCE_NOT_LEISURE的显示名拼错。Mixins.java:182写成"GT Not Leisure",应为 “Science Not Leisure”。 -
52 个开关里 19 个从不作为 Mixin 门控。 其中 18 个被
ClientProxy/ handler 消费, 仅inventoryTweaksEnabled完全无人使用。
[!NOTE] 以上均为源码事实,不含推测。 第 1、2 条会影响实际行为;第 3 条是纯粹的无效配置。
依赖关系
| 依赖 | 收录状态 |
|---|---|
chromatictooltips |
已登记(data/relation.md),尚未成文 → 前向引用 |
NotEnoughItems |
不在 relation.md 中 → 不建分类 |
gtnhlib / gtnhmixins |
不在 relation.md 中 → 不建分类 |
其余 30 个补丁目标(GregTech、Ender IO、Botania、Railcraft、Thaumcraft 等) 均为可选目标:装了才注入,没装不影响本 mod 加载。 它们绝大多数不在本 wiki 收录范围,故不建分类。
全部条目索引
核心(4)
- ChromaticTooltipsCompat -
@Mod主类,定义 modid 与 12 个 ModIds 常量 - ClientProxy - 按配置 + 加载状态注册 10 个 handler
- CommonProxy - 共用端基类,4 个空方法
- CompatConfig - 52 个兼容开关(含 1 个死配置)
Mixin 框架(4)
- Mixins - 35 个 Mixin 组的声明(核心)
- TargetedMod - 32 个目标 mod 判定
- EarlyMixinsLoader - EARLY 阶段装载器(1 个组)
- LateMixinsLoader - LATE 阶段装载器(34 个组)
事件处理器(11)
- CompatHandler - 把「按住查看更多」提示行改写为新样式
- NEIHandler - NEI 兼容(18 个方法,本 mod 最大 handler)
- AppleCoreHandler - 隐藏 AppleCore 食物属性行
- BotaniaManaBarPositionTracker - 记录 Botania 魔力条位置
- AdventureBackpackHandler - Adventure Backpack 补充
- AppliedEnergisticsHandler - AE2 堆叠数量补充
- ForestryHandler - Forestry 补充
- DraconicEvolutionHandler - Draconic 属性行转组件
- TConstructHandler - TConstruct 属性行转组件
- WawlaHandler - Wawla 补充
- EnderCoreHandler - Ender Core 附魔信息转组件
工具类(5)
- CompatTooltipRequestResolver - 每次请求时广播
TooltipResolverEvent - NEITargetSanitizer - 把 NEI 流体显示物品还原为流体目标
- TooltipResolverEvent - 本 mod 自定义事件
- WAILAComponent - 把 Waila Tooltip 适配为
ITooltipComponent - EnderIOTooltipBridge - 搬运 Ender IO 进度条 tooltip 文本
过滤器(1)
- GTTierFilterParser -
tier:过滤器,16 个 GT 等级
Mixin 目标(60)
AE2 Fluid Crafting(modid ae2fc,LATE,1 个)
- BlockCertusQuartzTankMixin - 补丁
BlockCertusQuartzTank(ae2fcEnabled)
Akashic Tome(modid akashictome,LATE,1 个)
- RenderHelperMixin - 补丁
RenderHelper(akashictomeEnabled)
AppleCore(modid AppleCore,LATE,1 个)
- TooltipOverlayHandlerMixin - 补丁
TooltipOverlayHandler(appleCoreFoodStatsDisabled)
Applied Energistics 2(modid appliedenergistics2,LATE,1 个)
- GuiInterfaceTerminalMixin - 补丁
GuiInterfaceTerminal(appliedEnergisticsEnabled)
Applied Energistics 2(modid appliedenergistics2,LATE,1 个)
- GuiMEMonitorableMixin - 补丁
GuiMEMonitorable(appliedEnergisticsEnabled、appliedEnergisticsAmountEnabled)
Baubles Expanded(modid Baubles|Expanded,LATE,1 个)
- GuiBaublesButtonMixin - 补丁
GuiBaublesButton(baublesExpandedEnabled)
BetterQuesting(modid betterquesting,LATE,4 个)
- GuiContainerCanvasMixin - 补丁
GuiContainerCanvas(betterQuestingEnabled) - GuiScreenCanvasMixin - 补丁
GuiScreenCanvas(betterQuestingEnabled) - PanelItemSlotMixin - 补丁
PanelItemSlot(betterQuestingEnabled) - RenderUtilsMixin - 补丁
RenderUtils(betterQuestingEnabled)
Binnie Core(modid BinnieCore,LATE,1 个)
- GuiCraftGUIMixin - 补丁
GuiCraftGUI(binnieCoreEnabled)
Botania(modid Botania,LATE,2 个)
- RenderHelperMixin - 补丁
RenderHelper(botaniaEnabled) - TooltipAdditionDisplayHandlerMixin - 补丁
TooltipAdditionDisplayHandler(botaniaEnabled)
BuildCraft(modid BuildCraft|Core,LATE,3 个)
- ToolTipMixin - 补丁
ToolTip(buildcraftEnabled) - GuiBuildCraftMixin - 补丁
GuiBuildCraft(buildcraftEnabled) - LedgerManagerMixin - 补丁
None(buildcraftEnabled)
CodeChickenLib(modid CodeChickenCore,LATE,1 个)
- GuiDrawMixin - 补丁
GuiDraw(codeChickenCoreEnabled)
Ender IO(modid endercore,LATE,9 个)
- ClientHandlerMixin - 补丁
ClientHandler(enderCoreEnabled) - EnchantTooltipHandlerMixin - 补丁
EnchantTooltipHandler(enderCoreEnabled) - GuiMachineBaseInvoker - 补丁
GuiMachineBase(enderCoreEnabled) - GuiMachineBaseMixin - 补丁
GuiMachineBase(enderCoreEnabled) - GuiToolTipMixin - 补丁
GuiToolTip(enderCoreEnabled) - OreDictTooltipHandlerMixin - 补丁
OreDictTooltipHandler(enderCoreEnabled) - SpecialTooltipHandlerMixin - 补丁
SpecialTooltipHandler(enderCoreEnabled) - ToolTipManagerMixin - 补丁
ToolTipManager(enderCoreEnabled) - TooltipHandlerBurnTimeMixin - 补丁
TooltipHandlerBurnTime(enderCoreEnabled)
Forestry(modid Forestry,LATE,1 个)
- GuiUtilMixin - 补丁
GuiUtil(forestryEnabled)
Galacticraft Core(modid GalacticraftCore,LATE,1 个)
- GuiElementInfoRegionMixin - 补丁
GuiElementInfoRegion(galacticraftcoreEnabled)
GregTech(modid gregtech,EARLY,1 个)
- GTGenericItemMixin - 补丁
GTGenericItem(gregtechEnabled)
GregTech(modid gregtech,LATE,1 个)
- ItemFluidDisplayMixin - 补丁
ItemFluidDisplay(gregtechEnabled)
GT Not Leisure(modid sciencenotleisure,LATE,1 个)
- AnimatedTooltipHandlerMixin - 补丁
AnimatedTooltipHandler(scienceNotLeisureEnabled)
GTNHLib(modid gtnhlib,LATE,1 个)
- AnimatedTooltipHandlerMixin - 补丁
AnimatedTooltipHandler(gtnhlibEnabled)
Hardcore Ender Expansion(modid HardcoreEnderExpansion,LATE,1 个)
- GuiItemRenderHelperMixin - 补丁
GuiItemRenderHelper(hardcoreEnderExpansionEnabled)
IndustrialCraft 2(modid IC2,LATE,3 个)
- FluidCannerRecipeHandlerMixin - 补丁
FluidCannerRecipeHandler(industrialCraft2Enabled) - GuiTooltipHelperMixin - 补丁
GuiTooltipHelper(industrialCraft2Enabled) - ItemArmorElectricMixin - 补丁
ItemArmorElectric(industrialCraft2Enabled)
JourneyMap(modid journeymap,LATE,1 个)
- JmUIMixin - 补丁
JmUI(journeymapEnabled)
Just Enough Calculation(modid jecalculation,LATE,2 个)
- JecaGuiMixin - 补丁
JecaGui(jecalculationEnabled) - WTooltipMixin - 补丁
WTooltip(jecalculationEnabled)
Logistics Pipes(modid LogisticsPipes,LATE,1 个)
- GuiGraphicsMixin - 补丁
GuiGraphics(logisticsPipesEnabled)
Malisis Doors(modid malisisdoors,LATE,2 个)
- GuiRendererMixin - 补丁
GuiRenderer(malisisDoorsEnabled) - UITooltipAccessor - 补丁
UITooltip(malisisDoorsEnabled)
Modular UI(modid modularui,LATE,2 个)
- GuiHelperMixin - 补丁
GuiHelper(modularUIEnabled) - ModularGuiMixin - 补丁
ModularGui(modularUIEnabled)
Modular UI 2(modid modularui2,LATE,1 个)
- RichTooltipMixin - 补丁
RichTooltip(modularUI2Enabled)
NEI Custom Diagram(modid neicustomdiagram,LATE,1 个)
- DrawMixin - 补丁
Draw(neicustomdiagramEnabled)
NotEnoughItems(modid NotEnoughItems,LATE,3 个)
- GuiContainerManagerMixin - 补丁
GuiContainerManager(notEnoughItemsEnabled) - LayoutManagerMixin - 补丁
LayoutManager(notEnoughItemsEnabled) - TooltipFilterMixin - 补丁
TooltipFilter(notEnoughItemsEnabled)
Railcraft(modid Railcraft,LATE,2 个)
- GuiContainerRailcraftMixin - 补丁
GuiContainerRailcraft(railcraftEnabled) - ToolTipMixin - 补丁
ToolTip(railcraftEnabled)
Steve’s Carts 2(modid StevesCarts,LATE,1 个)
- GuiBaseMixin - 补丁
GuiBase(stevesCarts2Enabled)
Thaumcraft(modid Thaumcraft,LATE,2 个)
- GuiResearchBrowserMixin - 补丁
GuiResearchBrowser(thaumcraftEnabled) - UtilsFXMixin - 补丁
UtilsFX(thaumcraftEnabled)
Tinkers Construct(modid TConstruct,LATE,1 个)
- SmelteryGuiMixin - 补丁
SmelteryGui(tinkersConstructEnabled)
Waila(modid Waila,LATE,3 个)
- OverlayRendererMixin - 补丁
OverlayRenderer(wailaEnabled) - TooltipInvoker - 补丁
Tooltip(wailaEnabled) - TooltipMixin - 补丁
Tooltip(wailaEnabled)
Waila(modid Waila,LATE,1 个)
- TooltipHandlerWailaMixin - 补丁
TooltipHandlerWaila(无门控)
Waila(modid wawla,LATE,1 个)
- AddonGenericTooltipsMixin - 补丁
AddonGenericTooltips(wawlaEnabled)
覆盖率
85 / 85 = 100%(85 个 Java 文件逐个成文,1:1 无遗漏):
- core — 4
- mixin-framework — 4
- mixin-targets — 60
- event — 11
- util — 5
- filter — 1
[!NOTE]
mixin-targets下有 3 组同名类分散在不同目标 mod 中:RenderHelperMixin(akashictome / botania)、ToolTipMixin(buildcraft / railcraft)、AnimatedTooltipHandlerMixin(gtnhlib / sciencenotleisure)。 条目文件名已加目标 mod 前缀区分,如 botania-render-helper-mixin。