Expand amulet and equipment capabilities, and refine blueprint construction and storage interactions 扩展护符与装备能力并完善蓝图建造和仓储交互 - #4951
Conversation
- 新增犰狳护符及配方,支持驱离蜘蛛和潜行抗性,调整自然护符的组合效果 - 扩展现有护符的增益、伤害防护、猫狼驯服及铁傀儡友好行为 - 为耐候头盔增加稳定夜视,支持耐候靴潜行时在气泡柱中下沉 - 将结构蓝图导入导出迁移至服务端存档目录,支持单人游戏 Shift 打开目录 - 修正结构磁盘自动旋转设置、智能放置器布局与蓝图预览渲染 - 为建筑杖增加实体阻挡检测及三秒高亮提示,完善放置交互与子空间命中兼容 - 修复方块搬运后的红石信号更新及世界边界监听器遍历问题 - 修复仓储菜单盔甲与口袋槽位同步,完善创造模式口袋校验和状态效果布局及 JEI 避让 - 增加仓储分类筛选一键重置和创造物品变体标记,调整仓储端口与溜槽交互 - 新增余烬金属块与寒霜金属块时移配方,提高部分寒霜金属配方产量 - 调整超级电容与多相超限物质配方,为天体锻造相关物品和无尽收集器添加永恒属性 - 为远古海礁增加含水支持,将伐木附魔每级默认额外破坏原木数调整为四个 - 修正重戟与共振器的属性加成适用范围,统一物品提示及翻译参数并同步生成资源与双语手册
Reason: shell execution via heredoc Reply |
Reason: Security scan — [HIGH] Pipe to interpreter: curl | python3: Command pipes output from 'curl' directly to interpreter 'python3'. Downloaded content will be executed without inspection. Reply |
Reason: Security scan — [HIGH] Pipe to interpreter: curl | python3: Command pipes output from 'curl' directly to interpreter 'python3'. Downloaded content will be executed without inspection. Reply |
Reason: script execution via -e/-c flag Reply |
Reason: Security scan — [MEDIUM] Archive extraction to sensitive path: Archive command 'unzip' extracts to a potentially sensitive location Reply |
Reason: Security scan — [HIGH] Pipe to interpreter: curl | python3: Command pipes output from 'curl' directly to interpreter 'python3'. Downloaded content will be executed without inspection. Reply |
代码审查摘要 — PR #4951操作: opened 🔎 本次核对方式(不只看 diff)
Mixin 目标核对表
|
| PR 声称 | 状态 | 对应实现 |
|---|---|---|
| 新增犰狳护符及配方、驱离蜘蛛+潜行抗性、调整自然护符组合 | ✅ | AmuletAbilities, SpiderMixin, ModAmulets.ARMADILLO, jewel_crafting/armadillo_amulet.json, amulet_valid/armadillo.json, NATURE 组合 FEATHER→ARMADILLO(four_to_one/permutation 已同步) |
| 扩展护符增益/伤害防护/猫狼驯服/铁傀儡友好 | ✅ | AmuletAbilities(Haste/Strength/Resistance/SlowFall/Knockback/Explosion/Levitation)、onInteract 空手驯服、isGolemProtected + LivingEntityMixin.setLastHurtByMob |
| 耐候头盔稳定夜视 + 靴子气泡柱下沉 | ✅ | EquipmentAbilities.afterTick 续 200t + GameRendererMixin 恒定 GAMMA;EntityMixin 改 onInsideBubbleColumn/onAboveBubbleCol |
| 蓝图导入导出迁移至服务端存档目录 + 单人 Shift 打开目录 | ✅ | StructureBlueprintFiles(world/…/anvilcraft/blueprints)、StructureScannerFiles LIST/IMPORT/EXPORT、BlueprintClientFiles.openDirectory |
| 结构磁盘自动旋转 / 智能放置器布局 / 预览渲染修正 | ✅ | BlueprintLayout.autoRotate + getLayoutFacing、getBlueprintPosition(index,facing,upsideDown)、StructureDiskPreviewSupport 旋转 0 速;⚠ 渲染兜底删除见警告 3 |
| 建筑杖实体阻挡 + 三秒高亮 + 光标放置/子空间命中 | ✅ | BuildingRodObstructions、BuildingRodObstructionHighlight(3s)、BuildingRodObstructionPacket、BlockPlacementPicking 子空间提前返回 |
| 方块搬运后红石更新 / 世界边界监听器遍历 | ✅ | BlockPointer POWERED 保留 + 逐部件 neighborChanged;OverworldLikeGenerationBootstrap List.copyOf |
| 仓储菜单盔甲/口袋槽位同步、创造模式口袋校验、效果布局与 JEI 避让 | ⚠ | StorageMenu 索引复用、CreativePocketPacketMixin、PocketEffectLayout+PocketEffectScreenMixin+JeiPocketEffectAreaMixin ✅;但同批删除的 IonocraftBackpackItem resync 兜底需确认(警告 2) |
| 仓储分类一键重置 / 创造物品变体标记 / 仓储端口与溜槽交互 | ✅ | CategoryList 右键 reset(categoryOnPress 实参为无参用法,未触发 CCE)、CreativeModeInventoryScreenMixin "+" 标记、StoragePortBlockEntity+ChuteBlockItem+PlacementInteractions |
| 余烬/寒霜金属块时移配方 + 提高寒霜产量 | ✅ | TimeWarpRecipeLoader(数值等价性已复算) |
| 超级电容/多相超限物质配方、永恒属性 | ✅ | ItemCompressRecipeLoader(铜块)、RegistrumItemRecipeLoader 3×3、ModBlocks ETERNAL(Eternal 已 import) |
| 远古海礁含水 / 伐木每级 4 | ✅ | AncientSeaReefBlock、AnvilCraftServerConfig.fellingBlockPerLevel=4 + 双语文档 |
| 重戟/共振器属性适用范围、统一提示与翻译参数、同步生成资源与手册 | ✅(i18n 见警告 1) | Ferocious/Merciless instanceof 排除、提示全部并入 NORMAL/SHIFT maps + resolved/fixed 15 issue |
🧪 测试建议
| 被测目标 | 推荐场景 | 优先级 |
|---|---|---|
BuildingRodObstructions.reject/commit |
放置区内站生物/玩家(主手/副手)、多部件蓝图、拒绝后 3s 高亮过期、大范围填充(性能与消息去重) | 🔴 |
StructureScannerFiles.handle + StructureBlueprintFiles |
LIST/IMPORT/EXPORT 往返、.litematic 导入、非法名/路径穿越/符号链接/超限文件、多人服务器(无单人存档时 Shift 不应打开目录)、导出后列表自动刷新 |
🔴 |
BlockPointer.moveToPos |
搬运含 POWERED 的方块后信号变化、被激活的 TNT 转化为实体、waterlogged 清除、逐部件邻居更新 |
🔴 |
StorageMenu 槽位映射 |
盔甲 5-8 / 主背包 9-35 / 快捷栏 36-44 / 副手 45 索引一致性、服务端广播按 index 写回正确槽、口袋槽存在与不存在两种状态 | 🟡 |
AmuletAbilities |
犰狳护符(Shift 抗性 II、蜘蛛规避、洞穴蜘蛛)、食物有害效果 ThreadLocal 嵌套 finishUsingItem、ANVIL 击退属性修饰符的加/去对称性、旧存档 NATURE 护符行为变化 |
🟡 |
CreativePocketPacketMixin |
创造模式对口袋槽/护腿锁定位/越界槽发包(应 resync 且不丢物)、非法槽不产生 IOOBE | 🟡 |
| 生成资源一致性 | runData 幂等(无 diff)、en_us/en_ud 键集一致、zh_cn 新键补齐后回退英文现象消失 |
🟡 |
EquipmentAbilities 夜视/下沉 |
戴/脱头盔的夜视残留、佩戴长时间夜视效果不被降级、潜水靴气泡柱上下行、旁观/飞行不触发下沉 | 🟢 |
结论: COMMENT(无阻断性缺陷) — 主要逻辑、Mixin 目标、生成资源与配方数值均已交叉验证通过,具备合并质量;建议合并前至少确认 警告 1(zh_cn 回退英文)、警告 2(背包 resync 兜底删除)、警告 3(预览渲染兜底删除) 三项,并顺手处理 BlockPointer 守卫不对称与护符扫描热路径缓存。
由 Hermes Agent 审查
|
|
|
⏱️ Agent inactive for 30 min — no tool calls or API responses. |
代码审查摘要 — PR #4951操作: 整体是一份质量不错的多主题 PR,主要改动方向都成立,且我在 1.21.1 mappings + 字节码上核对了本 PR 新增/依赖的注入目标(见下)。没有发现必须阻塞合并的问题,但有几处需要确认与同步。 ✅ 注入目标核对(1.21.1,mappings + 混淆客户端字节码)
|
| PR 描述条目 | 状态 | 对应产物 |
|---|---|---|
| 新增犰狳护符及配方 / 驱离蜘蛛 / 潜行抗性 / 调整自然护符 | ✅(手册未同步见 |
ModAmulets.ARMADILLO、ModAmuletDefinitions(+json)、ModItems.ARMADILLO_AMULET、jewel_crafting/armadillo_amulet、amulet_valid/armadillo(spider+cave_spider)、SpiderMixin/NearestAttackableTargetGoalMixin/LivingEntityEventListener、AmuletAbilities 潜行 Resistance II、NATURE 包装改为 ARMADILLO(三处配方+英文提示一致) |
| 扩展护符:增益 / 伤害防护 / 猫狼驯服 / 铁傀儡友好 | ✅ | AmuletAbilities.onTick/onEffect/onInteract/isGolemProtected、LivingEntityMixin#setLastHurtByMob、GravityManager 天体重力豁免、AnvilAmulet 击退免疫 |
| 耐候头盔稳定夜视 + 耐候靴气泡柱下沉 | ✅(HUD 闪烁见 |
EquipmentAbilities.afterTick、GameRendererMixin#getNightVisionScale、shouldSinkInFluid + EntityMixin 两个气泡柱方法 |
| 蓝图导入导出迁移服务端存档目录 + 单人 Shift 开目录 | ✅ | StructureBlueprintFiles(新)、StructureScannerFiles LIST/IMPORT/EXPORT、BlueprintClientFiles、StructureScannerFilePacket(Action)、StructureScannerScreen.folderMode、StructureLoadUtil 改为要求服务端世界 |
| 结构磁盘自动旋转 / 智能放置器布局 / 预览渲染 | ✅ | StructureDiskPreviewSupport(0.0f/2.0f)、BlueprintLayout.autoRotate+getLayoutFacing、SmartBlockPlacerBlockEntity#getBlueprintPosition + Screen 预览、BlueprintRenderView/BuildingRodRenderTypes 清理 |
| 建筑杖实体阻挡 + 三秒高亮 + 子空间命中兼容 | ✅ | BuildingRodObstructions/Highlight/Packet、BuildingRodService.reject、MinecraftClientMixin#shouldEntityAppearGlowing、PlacementInteractions、BlockPlacementPicking range 判定 |
| 方块搬运后红石信号 / 世界边界监听器遍历 | ✅ | BlockPointer POWERED 保留 + 自更新、OverworldLikeGenerationBootstrap List.copyOf |
| 仓储菜单盔甲与口袋同步 / 创造模式口袋校验 / 状态效果布局 / JEI 避让 | ✅( |
StorageMenu 槽位复用、CreativePocketPacketMixin、PocketEffectLayout/PocketEffectScreenMixin/JeiPocketEffectAreaMixin(+mixins.json) |
| 仓储筛选一键重置 / 创造物品变体标记 / 端口与溜槽交互 | ✅ | CategoryList 右键重置(+tooltip lang)、CreativeModeInventoryScreenMixin#renderLabels 画 “+”、ChuteBlockItem/StoragePortBlockEntity/PlacementInteractions 覆盖 StoragePortConsolidatorBlockEntity、潜影集装箱禁入缓冲 |
| 余烬/寒霜金属块时移配方 + 提高霜金属产量 | ✅ | TimeWarpRecipeLoader + 8 个配方/advancement JSON + frost_metal_ingot_2/3 |
| 超级电容与多相超限物质配方 + 永恒属性 | ✅ | ItemCompressRecipeLoader(铜块)、RegistrumItemRecipeLoader(3×3: 8 锭粒+多相物质)、ModBlocks 4 处 ETERNAL、ItemCompressCategory |
| 远古海礁含水 / 伐木附魔每级 4 个 | ✅ | AncientSeaReefBlock、AnvilCraftServerConfig 2→4、手册 en/zh 同步 |
| 重戟/共振器属性加成适用范围 + 提示与翻译参数统一 + 双语手册 | ✅ | Ferocious/Merciless 守卫、DiskItem/StructureToolItem/CannedFoodItem/SpectralSlingshotItem/FluidTankMinecartItem/AnvilRailgunItem/HasMobBlockItem 改 translatable + ItemTooltipLang 新键数组、ageratum en/zh |
resolved #2648 / #4841 / #4866 / #4915 / #4920 / #4927 / #4929 / #4931 / #4932 / #4934 |
✅ | 与 diff 内容一一对应(#4841 筛选重置、#4866 建筑杖实体检测、#4915 打开文件夹、#4920 夜视、#4927 护符、#4929 潜影集装箱、#4931 气泡柱下沉、#4932 残暴/无情、#4934 变体标记) |
fixed #4875 / #4907 / #4921 |
✅ | #4875 智能放置器信号(BlockPointer POWERED)、#4907 物理化方块放置(BlockPlacementPicking 子空间命中)、#4921 创造模式脱下被吞(CreativePocketPacketMixin 守卫) |
resolved #2648(约束中子锭/奇点晶体) |
diff 中无对应新方块/物品/配方,仅有 4 处 ETERNAL(见 |
|
fixed #4928 / #4933(启动/进世界崩溃) |
均为第三方模组组合崩溃,缺少“修复点”指向(见 List.copyOf 方向合理 |
🧪 测试建议
| 被测目标 | 推荐场景 | 优先级 |
|---|---|---|
StructureBlueprintFiles.read/write/resolve |
路径穿越(..、子目录)、软链接、超 MAX_BYTES、空文件、非 .nbt 导出名、目录被并发替换 |
🔴 |
AmuletAbilities.onTick/onEffect/onConsume |
潜行/水中/着火切换时效果增减与降级;NATURE/GEM 包装链;食物有害效果抑制窗口(含嵌套消耗);ANVIL 修饰符加删对称 |
🔴 |
CreativePocketPacketMixin |
负槽丢物品、非活跃 pocket、锁定护腿三条守卫;slotNum 恰好 45/46/边界 |
🟡 |
StorageMenu 槽位映射 |
有/无口袋槽(46 vs 46+capacity)时与 InventoryMenu 索引对齐、盔甲槽写入落到真实容器 |
🟡 |
BlueprintLayout.getLayoutFacing/getPosition |
autoRotate 开/关 × 4 个水平 targetFacing × scannerFacing × upsideDown;getState 与 getPosition 朝向一致 |
🟡 |
BuildingRodObstructions.find |
空碰撞形状、实体跨格、实体仅贴边(AABB 精确相交)、多 cell 去重 | 🟡 |
PocketEffectLayout.areas |
count=0/1/2/N、创造模式双排、窗口极窄时的 clamp |
🟢 |
结论: COMMENT(可合并,建议先处理 StorageMenu/CreativePocketPacketMixin/BlockPointer/WorldBorder 几处都是正确的根因修复;阻塞点在于:蓝图中护符页与语言文件未同步(含两处语义已变的错误翻译)、一个已被删除的背包护甲槽重同步缺少替代、#2648/#4928/#4933 三条关联缺少可验证的修复指向。PR 标题(英文+中文)与内容基本相符,本次未改动标题。
由 Hermes Agent 审查
|
审查完成。以下是审查意见(直接输出,未执行任何评论命令; 代码审查摘要 — PR #4951操作: edited(重新审查) 📋 声称验证表(描述里的 13 条 bullet + 15 个 issue)
|
| 被测目标 | 推荐场景 | 优先级 |
|---|---|---|
BlockPointer.moveToPos + applyBlueprintStateRules |
含 POWERED 的搬运(红石灯/活塞/门)、含 block: 转换规则的数据包、副部件多方块 |
🔴 |
StructureBlueprintFiles.read/write/list |
超限文件、.litematic、符号链接、路径穿越名、导出覆盖同名文件、原子写失败回滚 |
🔴 |
BlueprintClientFiles 状态机 |
LIST/IMPORT/EXPORT 交错、超时(60s)、关屏取消、导出后自动刷新列表 | 🟡 |
BuildingRodObstructions.find + 高亮 |
实体阻挡拒绝提交、3 秒过期、跨维度/卸载实体 | 🟡 |
PocketEffectLayout.areas |
count=0/1/20、创造模式两行布局、超窄窗口、JEI 避让区域 | 🟡 |
StorageMenu 槽位映射 |
护甲/口袋槽同步、创造模式 Slot 点击、crafting 槽语义 | 🟡 |
AmuletAbilities |
效果叠加/移除同行、空手驯服(猫/狼)、铁傀儡怒气、食物有害效果豁免、ThreadLocal 重入 | 🟡 |
CreativePocketPacketMixin |
创造模式槽位 45±、非活动 PocketSlot、潜行锁定护腿槽 | 🟡 |
AncientSeaReefBlock |
水中放置/破坏、流动水 tick、含水与无水流体状态 | 🟢 |
结论: COMMENT — 无阻塞性缺陷,声称与实现逐条可核(15 个 issue 均能在 diff 中定位到对应改动);建议合并前优先处理 gh auth status 显示 token invalid,按流程未尝试修复凭据、未自动改标题,仅给出建议标题)。
由 Hermes Agent 审查
|
💾 Self-improvement review: Patched SKILL.md in skill 'mixin-injection-verification' (1 replacement). · Skill updated |
|
💾 Self-improvement review: Patched references/shell-only-diff-navigation.md in skill 'github-webhook-pr-review' (1 replacement). |
|
PR #4951 已 closed(且已 merged,merged_at 2026-09-19T15:14:15Z),触发动作为 按审查流程约束第 1 条: 由 Hermes Agent 处理(webhook,action=closed → 跳过审查) |
Reason: script execution via -e/-c flag Reply |
|
我已完成对 PR #4951 的完整审查(下载 diff 138 文件 / 6255 行,并用 1.21.1 Mojang mappings + 混淆字节码交叉验证了所有 Mixin 注入目标)。以下是审查意见。 代码审查摘要 — PR #4951操作: review_requested(PR 状态 🚨 首先:本 PR 的内容已经出现在目标分支上
建议: 确认这批改动是否已通过其他途径合入;若是,请关闭本 PR,避免后续重复合并/回滚混乱。下面所有问题按"即使已合入、也可作为后续修复"的方式给出。 ✅ Mixin 目标核验(用 1.21.1 client_mappings + 混淆客户端字节码实核)
|
| 声称 | 状态 | 对应实现 |
|---|---|---|
| 犰狳护符 + 配方 + 驱离蜘蛛 + 潜行抗性 + 自然护符调整 | ✅ | ModItems / ModAmulets / ModAmuletDefinitions / AmuletAbilities / SpiderMixin / NearestAttackableTargetGoalMixin / EntityTypeTagLoader / jewel_crafting·four_to_one_smithing·permutation 配方 / tag / item model |
| 扩展护符增益、伤害防护、猫狼驯服、铁傀儡友好 | ✅ | AmuletAbilities(onTick/onEffect/onInteract/onKnockback)/ LivingEntityMixin / GravityManager / ItemStackMixin |
| 耐候头盔稳定夜视 | ✅(+ |
EquipmentAbilities.updateNightVision / GameRendererMixin / ModComponents + wheel |
| 耐候靴气泡柱下沉 | ✅ | EntityMixin @ModifyVariable 强制 downwards + EquipmentAbilities.shouldSinkInFluid |
| 蓝图导入导出迁移服务端存档 + 单人 Shift 打开目录 | ✅(+💡 MP 反馈) | StructureBlueprintFiles / BlueprintClientFiles / StructureScannerFiles / StructureScannerScreen / StructureScannerFilePacket / StructureLoadUtil |
| 结构磁盘自动旋转、智能放置器布局、蓝图预览 | ✅ / |
BlockPlacementUtil / SmartBlockPlacerBlockEntity / SmartBlockPlacerScreen / StructureDiskPreviewSupport / BlueprintRenderView( |
| 建筑杖实体阻挡检测 + 3 秒高亮 + 放置交互兼容 | ✅ | BuildingRodObstructions / BuildingRodObstructionHighlight·Packet / BuildingRodService / PlacementInteractions / LargeBlockPlacePreviewEventListener / MinecraftClientMixin |
| 搬运后红石信号更新 + 世界边界监听器遍历 | ✅ | BlockPointer / OverworldLikeGenerationBootstrap |
| 仓储菜单盔甲/口袋槽位同步、创造模式口袋校验、效果布局与 JEI 避让 | ✅ | StorageMenu / CreativePocketPacketMixin / PocketEffectLayout / PocketEffectScreenMixin / JeiPocketEffectAreaMixin |
| 分类一键重置、创造变体标记、仓储端口与溜槽交互 | ✅ / 💡 | CategoryList / CreativeModeInventoryScreenMixin / StoragePortBlockEntity / ChuteBlockItem / BaseChuteBlockEntity |
| 余烬/寒霜金属块时移配方 + 提高寒霜产量 | ✅ | TimeWarpRecipeLoader(8 个新 recipe,frost ingot 3→4、4→8) |
| 超电容与多相超限物质配方 + 永恒属性 | ✅ | ItemCompressRecipeLoader / ItemCompressCategory / RegistrumItemRecipeLoader / ModBlocks(ETERNAL) |
| 远古海礁含水 + 伐木默认 4 | ✅(+ |
AncientSeaReefBlock / AnvilCraftServerConfig / amethyst_tools.md |
| 重戟与共振器属性加成范围、提示与翻译参数统一 | ✅(+ |
Ferocious / Merciless / HeavyHalberdItem / ResonatorItem / ItemTooltipManager / ItemTooltipLang / ToolPropertyLang / ScreenLang / CategoryLang |
resolved/fixed #2468 #4841 … #4949(24 个 issue) |
⏳ 未逐一核对 | 匿名 API 配额已用尽,未逐 issue 校验状态与对应提交;如需可下一轮单独核对 |
🧪 测试建议
| 被测目标 | 推荐场景 | 优先级 |
|---|---|---|
AmuletAbilities.onTick/onEffect/onInteract |
普通护符 vs 自然/宝石护符 canActLike 包装路径;潜行开关(犰狳/羽毛);移除护符后效果 2 tick 内消失;异常护符 ↔ 食物有害效果(香甜/毒马铃薯/河豚) |
🔴 |
EquipmentAbilities.updateNightVision |
头盔开关关闭 → 效果被移除;外部夜视(他人给药水/信标)不被误删;死亡/换维度后恢复 | 🔴 |
BlockPlacementUtil.BlueprintLayout.getLayoutFacing |
4 朝向 × autoRotate 开/关 × upsideDown 的坐标/朝向等价性(纯函数,单测最划算) | 🔴 |
StructureBlueprintFiles |
路径穿越(../、绝对路径)、符号链接、MAX_BYTES±1、导出目录被替换、原子写入后文件完整 |
🟡 |
StorageMenu 槽位映射 |
带 1/2 级口袋护腿时盔甲与口袋索引 ↔ 服务端 containerId 0 广播一致;屏幕打开期间穿脱护腿 | 🟡 |
BuildingRodObstructions.find/reject |
实体 AABB 与非满方块碰撞形状相交;blocksBuilding=false 实体忽略;3 秒高亮到期 |
🟡 |
BaseChuteBlockEntity.tick |
上方为仓储端口且无货可导入时,是否仍能拾取掉落物(新行为) | 🟡 |
结论: COMMENT — 未发现必须阻塞的编译/注入错误(Mixin 目标已用 mappings + 字节码实核通过),但存在 5 处需确认的行为变更/文档与 i18n 缺口(第 1–6 条);且本 PR 内容已存在于目标分支 dev/1.21/1.6,请先确认是否应关闭本 PR。
标题建议(本次未自动修改:
gh auth status显示/opt/data/home/.config/gh/hosts.ymltoken 无效,按流程跳过):
Expand amulet/equipment abilities, refine blueprint & storage interactions, and rebalance recipes 扩展护符与装备能力、完善蓝图建造与仓储交互并调整配方平衡
由 Hermes Agent 审查
|
💾 Self-improvement review: Patched SKILL.md in skill 'minecraft-lang-pipeline-review' (1 replacement). |
|
已完成全部核对。以下是审查结论(直接输出,未执行任何 gh 评论命令)。 代码审查摘要 — PR #4951操作: synchronize( ✅ 本次做的独立核实(非仅读 diff)
|
| 声称 | 状态 | 对应文件 |
|---|---|---|
| 犰狳护符及配方、驱离蜘蛛、潜行抗性、自然护符调整 | ✅ | ModAmulets/ModAmuletDefinitions/ModItems/AmuletAbilities/SpiderMixin/TagLoader + 生成配方 |
| 扩展护符增益、伤害防护、猫狼驯服、铁傀儡友好 | ✅ | AmuletAbilities/LivingEntityEventListener/ItemTooltipManager |
| 耐候头盔稳定夜视、靴子气泡柱下沉 | ✅ | EquipmentAbilities/GameRendererMixin/EntityMixin/ModComponents |
| 蓝图导入导出迁移服务端 + Shift 开目录 | StructureBlueprintFiles/BlueprintClientFiles/StructureScannerFiles/Screen(目录与结构盘不一致,见 |
|
| 磁盘自动旋转、放置器布局、预览渲染 | ✅/ |
BlueprintLayout.autoRotate/StructureDiskPreviewSupport/SmartBlockPlacerScreen(预览邻格隐藏被回退,见 |
| 建筑杖实体阻挡 + 3 秒高亮 | ✅ | BuildingRodObstructions/Packet/Highlight/MinecraftClientMixin(message.anvilcraft.building_rod.blocked 键已存在) |
| 搬运红石更新、世界边界监听器遍历 | ✅ | BlockPointer(+POWERED 保留)/OverworldLikeGenerationBootstrap(List.copyOf) |
| 仓储菜单同步、创造口袋校验、效果布局、JEI 避让 | ✅/ |
StorageMenu/CreativePocketPacketMixin/PocketEffectLayout+ScreenMixin/JeiPocketEffectAreaMixin(背包底兜底被删,见 |
| 分类筛选重置、创造变体标记、端口与溜槽交互 | ✅ | CategoryList/CreativeModeInventoryScreenMixin/PlacementInteractions/ChuteBlockItem/StoragePortBlockEntity |
| 余烬/寒霜金属块时移配方、产量提升 | ✅ | TimeWarpRecipeLoader + 生成 JSON(严格 ×9 等比) |
| 超电容/多相超限配方、永恒属性 | ✅ | ItemCompressRecipeLoader/RegistrumItemRecipeLoader/ItemCompressCategory/ModBlocks |
| 远古海礁含水、伐木每级 4 原木 | ✅ | AncientSeaReefBlock/ModBlocks(blockstate "" 变体覆盖全部状态)/AnvilCraftServerConfig |
| 重戟/共振器属性范围、提示与翻译统一、双语手册 | ✅ | Ferocious/Merciless/ItemTooltipManager/ToolPropertyLang/ageratum |
| 20 个 issue 的 resolved/fixed | 无法逐条核实(issue 状态需 API),但对应改动在上述文件中均有落点 | — |
🧪 测试建议
| 被测目标 | 推荐场景 | 优先级 |
|---|---|---|
StorageMenu 槽位索引 |
穿戴全套盔甲+口袋,逐一与 inventoryMenu 比对 index→(容器,槽位);装备/卸下飞行背包后重开界面 |
🔴 |
AmuletAbilities 夜视生命周期 |
戴头盔→喝夜视药水→药水到期→摘头盔;确认只移除自身实例 | 🔴 |
StructureBlueprintFiles.read/write |
../、绝对路径、大小写 .NBT、符号链接、超 MAX_BYTES、空文件 |
🔴 |
BlueprintLayout.getLayoutFacing |
autoRotate=false 下 4 个朝向 × 4 个目标朝向的坐标/朝向对照表 |
🟡 |
BuildingRodObstructions |
实体占用单格/多格、被方块遮挡、大蓝图(性能) | 🟡 |
BaseChuteBlockEntity 输入 |
上方容器满/空 + 地面掉落物同时存在(验证新 else 分支) | 🟡 |
结论: COMMENT — 未发现编译级/资源级硬伤:mixin 目标、依赖 API(anvillib snapshot.530)、datagen↔Java 对账、残留引用、注册清单均已独立核实通过。但
|
💾 Self-improvement review: Patched references/authoritative-vanilla-verification.md in skill 'mixin-injection-verification' (1 replacement). · Patched SKILL.md in skill 'mixin-injection-verification' (1 replacement). |
Uh oh!
There was an error while loading. Please reload this page.