From 2034c75f7dc426f2e4e9ceb8202f19c5a5cb3c6f Mon Sep 17 00:00:00 2001 From: f1den Date: Wed, 8 Jul 2026 02:36:21 +0300 Subject: [PATCH] fix(forge): correct mods.toml dependency schema and mixin refmap name Two bugs made the built forge jar unusable in a Forge 1.20.1 production client: - mods.toml used the NeoForge dependency schema (type = "required") instead of Forge's mandatory = true. Forge threw InvalidModFileException during the mods-folder scan, which aborts discovery of the ENTIRE folder -> the whole modpack failed to load (only Minecraft+FML showed). architectury set mandatory = false since the code doesn't actually use it. - skinsg.mixins.json referenced refmap "skinsg.refmap.json" but Loom bundles it as "skinsg-common-common-refmap.json". With no refmap loaded, CapeMagicMixin's @Inject on getCloakTextureLocation could not be remapped to its SRG name -> InvalidInjectionException -> hard crash. Co-Authored-By: Claude Opus 4.8 --- common/src/main/resources/skinsg.mixins.json | 2 +- forge/src/main/resources/META-INF/mods.toml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/common/src/main/resources/skinsg.mixins.json b/common/src/main/resources/skinsg.mixins.json index ae90b12..548e3ca 100644 --- a/common/src/main/resources/skinsg.mixins.json +++ b/common/src/main/resources/skinsg.mixins.json @@ -3,7 +3,7 @@ "minVersion": "0.8", "compatibilityLevel": "JAVA_17", "package": "xyz.nightsync.skinsg.mixin", - "refmap": "skinsg.refmap.json", + "refmap": "skinsg-common-common-refmap.json", "client": [ "SkinMagicMixin", "CapeMagicMixin" diff --git a/forge/src/main/resources/META-INF/mods.toml b/forge/src/main/resources/META-INF/mods.toml index e5123c1..22bdafd 100644 --- a/forge/src/main/resources/META-INF/mods.toml +++ b/forge/src/main/resources/META-INF/mods.toml @@ -11,21 +11,21 @@ description = '''Client-side HD skins (up to 2048) and animated GIF cape support [[dependencies.skinsg]] modId = "forge" -type = "required" +mandatory = true versionRange = "[47,)" ordering = "NONE" side = "CLIENT" [[dependencies.skinsg]] modId = "minecraft" -type = "required" +mandatory = true versionRange = "[1.20.1,1.21)" ordering = "NONE" side = "CLIENT" [[dependencies.skinsg]] modId = "architectury" -type = "required" +mandatory = false versionRange = "[9.2.14,)" ordering = "AFTER" side = "CLIENT"