goldentweaks-4.7.2.jar
Curse Maven Snippet
What's new
2026.09.30 - v4.7.2
EMI 搜索
- 重写 EMI 搜索内核,取代 v4.6 引入的「输入去抖 + 后台节流」方案:原版每次搜索要做全量后缀数组排序(倍增算法,大整合包下秒级),新方案把索引换成 1~3 gram 倒排表、只与字符总数成正比且不排序,查询编译成位集表达式后用位运算求集合,不再物化候选列表、也不再对全表逐项扫描;正则项排在收窄后的候选集上最后执行
- 长度 ≤3 的 token 直接零误报命中,更长的按 posting 升序求交后
String.contains校验(与 JEI 19+ 的BakedSubstringIndex同构) EmiSearch.CompiledQuery构造时即编译出命中位集,test改为按下标查位;索引外的 stack 返回 0 交回 EMI 原判定,且刻意不取消search、不改stacks,避免破坏 REMI 等挂钩方- 常驻 daemon 线程 + 代次号协作取消取代原先按键触发的计时器,索引在求值途中被重建即放弃该次结果;构建失败记 ERROR 并回退原生搜索
- 装了 JustEnoughCharacters 时改用它注入 EMI 的拼音 Trie 解析 token,拼音搜索行为保持不变
- GTEmiSearchEngine.java、GTEmiSubstringIndex.java、GTBitSetHolder.java、EmiSearchMixin.java、EmiSearchCompiledQueryMixin.java
- 长度 ≤3 的 token 直接零误报命中,更长的按 posting 升序求交后
- 移除旧的去抖实现与配置:删除
EmiSearchDebounce、EmiSearchTickHandler、EmiSearchWidgetMixin,配置searchStartDelay、searchSpreadDuration一并删除;新增emiFastSearch(默认开启)与emiSkipVanillaSearchIndex(默认开启,跳过原版后缀数组的存储与排序) - 修复 EMI 隐藏物品时
GearItem未生效的问题:EMI 独立于创造栏索引全部物品,在isHiddenFromRecipeViewers中一并隐藏 Silent Gear 的预制工具
Thaumcraft
- 新增「傀儡简化」模式(
simplifiedGolems,默认开启):开启后傀儡不再寻路,原地完成收获/伐木/钓鱼——moveToward直接返回「已就位」、收获的「够得着」判定恒真、伐木不再要求站立点;回家不再寻路,改由customServerAiStep在傀儡停下后被推离时瞬移回原点;搜索间隔统一为 20 tick。用于规避移植版傀儡走不到目标卡死、聚集傀儡拿物品走不回原点放不进容器的问题 - 新增「禁止腐化蔓延」(
disableTaintSpread,默认开启):运行期拦截把整列转成腐化之地的setColumn,但腐化灵气节点自身的转化需要放行,故用旁路标记区分,世界生成用的另一重载不受影响;节点生物群系转化另加三个独立开关disablePureNodeBiomeConversion(默认关)、disableSinisterNodeBiomeConversion(默认开)、disableTaintedNodeBiomeConversion(默认开) - 修复收获傀儡把瓜类藤蔓当作物摧毁、反而漏掉果实的问题:瓜藤(原版
StemBlock/AttachedStemBlock及 id 以_stem结尾者)恒不可收获,果实恒可收获(新增方块标签goldentweaks:melon_fruits),神秘基础学红莲只把ATTACHMENT状态算作果实 - 修复物品要素标签缓存在客户端每个 tick 被清空的问题:失效入口由只挂
bindRecipeManager改为同时挂refreshRecipeManager与clearServerRuntimeCaches,且仅在配方管理器实例真正更换时清空 - 稀有种族渲染器模型去重:
TCClientSetup为每种实体各注册一次通用渲染器(共 29 个实例),每个实例都会烘焙 28 个EntityModel(约 9 MB/实例,合计约 260 MB),现让首个实例的模型存入静态数组供后续实例共享;TAINT_SHEEP 仍走SafeSheepModel以支持 OptiFine CEM/ETF - 修复奥术工作台 EMI 一键转移的取材槽位假设错误:原按固定菜单槽区间筛选(假定充能槽总存在),但充能槽是条件添加的——普通台背包从槽 11 起、充能台从槽 20 起,硬编码会漏取材或越界;改为按槽位归属动态筛选,并给槽位区间加边界裁剪
- 神秘基础学(Thaumic Bases)进阶炼金炉补齐
Capabilities.ItemHandler.BLOCK:此前只有神秘时代本体炼金炉注册了物品能力,进阶炼金炉继承了容器逻辑却没有能力,管道/漏斗无法交互;新增面行为对齐WorldlyContainer的IItemHandler视图(底=燃料、侧=输入、顶=无),并新增配置furnaceFuelFirst(默认开启)把燃料槽排到前面,让煤等可燃物落入燃料槽
模组兼容
- Mekanism / Compact Machines:紧凑空间维度内没有天空与昼夜,太阳能、风力、中子活化器都无法工作;新增在紧凑空间内恒判太阳可见、亮度恒为 1,并按配置比例缩放输出,覆盖 Mekanism、MekMM、Mekanism Advanced Generators 三套机组;新增配置
compactSpacePowerPercent(默认 25,0~最大值) - AE2 终端搜索优化:匹配时每次都重算
AEKey#getDisplayName().getString().toLowerCase()(重建可翻译组件、解析翻译、拼串、小写),改为弱键缓存;只重定向getDisplayName()、保留原contains(term)方法体,不破坏 JustEnoughCharacters 注入的拼音匹配。同时移除旧的终端搜索去抖补丁MEStorageScreenSearchMixin - emiLink 磁盘缓存加固:其缓存只在格式版本变化时失效,不感知模组/物品注册表变化,增删模组后物品 id 错位,甚至解压出超大数组导致 OOM;改为客户端启动时按「全部 modId@version 排序后的 SHA-1」指纹比对,不一致或缓存超过 16 MB 即删除
emilink/cache.bin - AcademyCraft 技能绕过领地保护:其技能自行构造并发布
BlockEvent.BreakEvent,不走原版破坏流程,可在他人领地破坏方块;新增以最低优先级复核并取消的 FTB Chunks 保护,并登记ftbchunks可选依赖;新增配置skillBlockClaimProtection(默认开启) - AcademyCraft 技能增伤:取主/副手 Silent Gear 的最高
magic_damage,按档位放大技能最终伤害(用ThreadLocal防递归放大);新增配置magicAttackDamage(默认开启)、magicAttackPerStep(默认 5.0)、magicAttackBonusPerStep(默认 0.10) - mcwifipnp + zstdnet 端口标签重叠:zstdnet 会把端口框贴到含
sharetolan的界面(含 mcwifipnp 的联机界面),与「监听端口号」输入框重叠且不随标签页切换;改为只在第一个标签页、移到设置项下方,并把端口标签绘制与 mcwifipnp 对齐。同时取消进入单人世界后聊天栏的两条 zstd 端口提示 - Silent Gear 预制工具不再出现在创造物品栏:清空
GearItemSets#getIterator,使(16 材料 × 35 套)预制工具不再被列出——装备应由部件合成 - Alshanex Familiars API 迁移:随 familiarslib 新版把服务端
PlayerFamiliarData+ attachment 改为FamiliarRoster.of(player),客户端选择界面改用ClientFamiliarData.get() - Mekanical Create 候选配方缓存无上限:其 lambda 内层
HashMap会累积数万条候选目录(堆转储约 95 MB),替换为 access-ordered、上限 128 的有界 LRU,保留记忆化收益同时限制常驻堆 - 其它单项修复:
- AE2 All Pattern 聚合样板的两张缓存上限由 256 降为 64,限制常驻堆
- Bakeries 发酵罐在物品统一后只认本模组全麦面粉、无法投料,改为同时接受统一后的物品
- create_connected 运行期刷新物品可见性走 JEI API,被 TMRV(以 EMI 实现)提前锁定而抛异常刷屏,装 TMRV 时取消该刷新
- Kaleidoscope 汤底重复注册会抛异常中断同步队列,改为幂等跳过并保留先注册者
- Language Reload 在
separateTranslations未初始化时Entity.toString于非客户端线程(区块生成)抛 NPE,改为捕获后返回unknown - Trade Cycling 切职业按钮「闪一下即永久消失」(
visible=false后不再渲染、也就无法重算可见性),改为每帧由界面重算
屏蔽
- c2me 启动时的「实验性版本」警告屏改为自动关闭(在
init尾部把自身onClose排到客户端线程执行) - c2me OpenCL 编译时屏幕底部的「Compiling…」进度文本屏蔽:吞掉对全局
PROGRESS_TEXT的写入使其保持 null(渲染早退,编译本身不受影响)
窗口
- 修复启动器
--width/--height被忽略的问题:NeoForge 的早期窗口提供方(如 Drippy)先按fml.toml建窗再移交,启动器尺寸不生效;改为客户端首个 tick 读取进程命令行并纠正一次窗口尺寸(非全屏时)。新增配置windowFollowsLauncherSize(默认开启)
联动数据
- 新增 52 个命名空间的 946 条物品要素与 8 个命名空间的 31 条实体要素(共 977 个 JSON),覆盖 Astral Sorcery、Spectrum、NeoECOAE、Power Grid、Flavor Immersed Daily、Supplementaries、Bakeries、Iron's Spellbooks、AcademyCraft 等
- Silent Gear 新增 3 个联动命名空间共 29 个材料(ae2lt 21、academy 5、astralsorcery 3),并按生成器重做全部材料数值:硬金属移除魔法/远程/护甲韧性等属性、附魔与充能 ×0.2、挖掘等级统一为钻石级;软金属移除非核心属性、耐久 ×6、附魔与充能 ×1.8;宝石耐久 ×0.5,另含颜色与特性调整
- Evolved Mekanism 熔炼/固化配方命名空间统一:输出/输入流体由
avaritia_integration:molten_*、evolvedmekanism:molten_*改为avaritia_more_items:*,加载条件相应改为avaritia_more_items+avaritia - 新增标签与配方:
c:fruits/grapes、c:seeds、goldentweaks:melon_fruits、thaumcraft:harvest_*_crops,并把约 38 个 thaumicbases / thaumcraftcelestial 方块加入minecraft:mineable/*;新增 createpropulsion、Create 填充、ratatouille 等配方
汉化
- 新增 FTB Chunks 完整简体中文翻译
- 补充 GoldenTweaks 新增配置项的中英文文案,并同步 silentgear、spectral_decorations、tipsmod 的 zh_cn
依赖
- 更新一批编译依赖:AcademyCraft 0.0.28、Thaumcraft port.253、Thaumic Bases port.21、Thaumic Tinkerer port.64、Forbidden Magic / Tainted Magic port.33、Apotheosis 8.9.0、Spectrum 1.12.7、Supplementaries 3.9.9、NeoECOAE 21.2.0、Geckolib 4.9.3、Extended Crafting 7.0.9、Create Big Cannons 5.11.7、JAOPCA 5.0.14.23、Moonlight 3.7.0、Thaumic Horizons scex-dev.41 等,并新增 Trade Cycling、ItemPhysic Lite 等
文档与脚本
- 新增《内存问题排查报告》《帧率与卡顿问题排查报告》《AcademyCraft 技能伤害汇总》三份分析文档
- 新增方块逻辑树状图
script/block/方块.html,资源位置提取脚本新增 22 个模组的名称转储
其它
- 移除 Aeronautics 在缺少 JEI API 时的兼容绕过补丁(
AeroNeoForgeCommonEvents系列及 accessor),Mixin 插件中对应的门控一并删除 .gitignore新增忽略 spark 堆快照(script/spark/、*.sparkheap)
This mod has no additional files

