Skip to content

Forge 1.20.1: align optional dependencies and fix config application - #49

Merged
SorrowMist merged 3 commits into
SorrowMist:develop/1.20.1from
AyaYumi:codex/forge-1.20.1-config-audit
Oct 24, 2026
Merged

SorrowMist merged 3 commits into
SorrowMist:develop/1.20.1from
AyaYumi:codex/forge-1.20.1-config-audit

Conversation

@AyaYumi

@AyaYumi AyaYumi commented Oct 24, 2026 •

Copy link
Copy Markdown

Scope

Targets develop/1.20.1. Follow-up to #46 (merged); this branch is rebased on the current 1.20.1 base and bumps the mod to 20.2.4.7.

Changes

  • Align optional dependency metadata and compile pins with the target pack: Mekanism/Generators 10.4.16.80, AppMek 1.4.3, Mekanism Extras 1.5.0+, Botany Pots 13.0.0-13.x.
  • Accept the AdvancedAE 1.2.7 and Blood Magic 3.3.3-45 versions shipped by ATM9; the AdvancedAE 1.3-only reaction chamber adapter is skipped on 1.2.x instead of throwing NoSuchFieldError.
  • Guard the Mekanism Extras 1.5 plural registries/genregistries naquadah API so an absent field cannot fail class loading.
  • Make mekanism_upgrade.max_upgrade a single config source. UpgradeMixin now covers enum construction, getMax(), and the direct maxStack read used by NBT loading, so values above 16 are not clamped.
  • Fix ExtendedAE matrix_pattern_count: resize the pattern inventory before exposedInventory wraps it, keeping server inventory, client tracker and GUI consistent.
  • Skip optional recipe-adapter and capability classes that are absent from this Forge profile at debug level; real invocation failures still warn once.
  • Remove unused textures, legacy NeoForge templates and stale verification artifacts.

Applied Enhancements / AE2CT mixin conflicts are intentionally out of scope.

Validation

  • gradlew.bat build --console=plain - passed.
  • 10 bytecode/outline contract checks passed.
  • portBridgeTest passed.
  • ATM9 (Mekanism 10.4.15.75, AdvancedAE 1.2.7, Blood Magic 3.3.3-45, Forge 47.4.0) reaches the title screen with the rebuilt jar.
  • Built JAR: useless_mod-20.2.4.7.jar.

范围

目标分支 develop/1.20.1,是 #46 合并后的后续 PR;本分支已 rebase 到当前 1.20.1 基线,并把版本提升到 20.2.4.7。

修改内容

  • 按整合包实际版本对齐可选依赖与编译 pin:Mekanism/Generators 10.4.16.80、AppMek 1.4.3、Mekanism Extras 1.5.0+、Botany Pots 13.0.0-13.x。
  • 接受 ATM9 携带的 AdvancedAE 1.2.7 与 Blood Magic 3.3.3-45;AdvancedAE 1.3 专用的反应仓适配器在 1.2.x 上直接跳过,不再抛 NoSuchFieldError。
  • 对 Mekanism Extras 1.5 的复数 registries/genregistries 硅岩反应堆 API 做字段级守卫,避免缺字段时类加载崩溃。
  • mekanism_upgrade.max_upgrade 改为单一配置来源;UpgradeMixin 同时覆盖枚举构造、getMax() 以及 NBT 读取时的 maxStack 直接读取,超过 16 的升级不会被截断。
  • 修复 ExtendedAE matrix_pattern_count:在 exposedInventory 包装之前调整样板库存容量,保证服务端库存、客户端 tracker 和 GUI 一致。
  • 本 Forge 构建中不存在的可选配方适配器与能力加载器改为 debug 级跳过;真实调用失败仍只警告一次。
  • 清理未使用贴图、旧 NeoForge 模板和过时验证产物。

Applied Enhancements / AE2CT 的 Mixin 冲突不在本 PR 范围内。

验证

  • gradlew.bat build --console=plain 通过。
  • 10 项 bytecode/outline 契约检查通过。
  • portBridgeTest 通过。
  • 使用 ATM9 环境(Mekanism 10.4.15.75、AdvancedAE 1.2.7、Blood Magic 3.3.3-45、Forge 47.4.0)启动到标题界面成功。
  • 产物:useless_mod-20.2.4.7.jar。

- bump UselessMod to 20.2.4.7 and align Mekanism/Generators 10.4.16.80, AppMek 1.4.3, Mekanism Extras 1.5.0 and Botany Pots 13.0.0+
- guard the Mekanism Extras 1.5 naquadah API and keep the optional integration boundary
- make max_upgrade a single config source and cover getMax/NBT save-load clamps
- fix ExtendedAE matrix pattern inventory sizing before exposedInventory is built
- skip absent optional recipe adapters at debug level instead of warning with stack traces
- clean unused textures, legacy templates and stale verification docs
Mekanism 10.4.15.75 and 10.4.16.80 do not read Upgrade.maxStack in saveMap. The redirect therefore failed Mixin injection and crashed ATM9 during MekanismGenerators class initialization. Keep the constructor, getMax and buildMap coverage.
- relax optional AdvancedAE and Blood Magic ranges to the versions shipped by ATM9
- skip the AdvancedAE 1.3-only reaction chamber adapter on 1.2.x instead of throwing NoSuchFieldError
- skip missing PneumaticCraft capability loaders at debug level
- verified ATM9 reaches the title screen with the rebuilt jar
@SorrowMist
SorrowMist merged commit c43520c into SorrowMist:develop/1.20.1 Oct 24, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants