ZekerZhayard / ForgeWrapper

Allow MultiMC to launch Minecraft 1.13+ with Forge
MIT License
52 stars 17 forks source link

Forge broke again #20

Closed Trial97 closed 6 months ago

Trial97 commented 6 months ago

So due to some Mojang shenanigans forge needed to update almost all of their installers. By doing so they also updated them to the latest version: compileOnly "net.minecraftforge:installer:2.2.7" that is not compatible with the forge wrapper. To make it compatible you need to make the following changes(or similar ones):

index 014a624..24a4a1d 100644
--- a/src/main/java/io/github/zekerzhayard/forgewrapper/installer/util/InstallerV1.java
+++ b/src/main/java/io/github/zekerzhayard/forgewrapper/installer/util/InstallerV1.java
@@ -17,7 +17,7 @@ public class InstallerV1 extends AbstractInstaller {

     @Override
     public boolean runClientInstall(Install profile, ProgressCallback monitor, File libraryDir, File minecraftJar, File installerJar) {
-        return new ClientInstall4MultiMC(profile, monitor, libraryDir, minecraftJar).run(null, input -> true, installerJar);
+        return new ClientInstall4MultiMC(profile, monitor, libraryDir, minecraftJar).run(null, installerJar);
     }

     public static class ClientInstall4MultiMC extends ClientInstall {
@@ -31,8 +31,8 @@ public class InstallerV1 extends AbstractInstaller {
         }

         @Override
-        public boolean run(File target, Predicate<String> optionals, File installer) {
-            return this.processors.process(this.libraryDir, this.minecraftJar, this.libraryDir.getParentFile(), installer);
+        public boolean run(File target, File installer) {
+            return this.processors.process(this.libraryDir, this.minecraftJar, this.libraryDir.getParentFile(), installer) != null;
         }
     }
 }

Yeah, but doing these changes somehow breaks NeoForge and I'm not able to determine how to fix that.

ZekerZhayard commented 6 months ago

3c6712d64a42e4ec200909912e72749499aaca79