From 05297fd72fa99e9ff020fee3ee365ad51bcaf8f0 Mon Sep 17 00:00:00 2001 From: covers1624 Date: Sun, 10 Jul 2022 09:31:40 +0930 Subject: [PATCH] Add FML config to disable DFU optimizations client-side. (#8842) * Add client-side command line argument to disable DFU optimizations. * Switch to using FMLConfig value instead. --- .../java/net/minecraftforge/fml/loading/FMLConfig.java | 5 +++++ .../src/main/resources/META-INF/defaultfmlconfig.toml | 2 ++ .../minecraft/net/minecraft/client/main/Main.java.patch | 8 ++++++++ 3 files changed, 15 insertions(+) diff --git a/fmlloader/src/main/java/net/minecraftforge/fml/loading/FMLConfig.java b/fmlloader/src/main/java/net/minecraftforge/fml/loading/FMLConfig.java index 62a23d04dc..7595592825 100644 --- a/fmlloader/src/main/java/net/minecraftforge/fml/loading/FMLConfig.java +++ b/fmlloader/src/main/java/net/minecraftforge/fml/loading/FMLConfig.java @@ -29,6 +29,7 @@ public class FMLConfig configSpec.define("maxThreads", -1); configSpec.define("versionCheck", Boolean.TRUE); configSpec.define("defaultConfigPath", "defaultconfigs"); + configSpec.define("disableOptimizedDFU", Boolean.TRUE); } private CommentedFileConfig configData; @@ -88,4 +89,8 @@ public class FMLConfig public static String defaultConfigPath() { return INSTANCE.configData.getOptional("defaultConfigPath").orElse("defaultconfigs"); } + + public static boolean isOptimizedDFUDisabled() { + return INSTANCE.configData.getOptional("disableOptimizedDFU").orElse(Boolean.TRUE); + } } diff --git a/fmlloader/src/main/resources/META-INF/defaultfmlconfig.toml b/fmlloader/src/main/resources/META-INF/defaultfmlconfig.toml index 7e899b4189..270cfd9909 100644 --- a/fmlloader/src/main/resources/META-INF/defaultfmlconfig.toml +++ b/fmlloader/src/main/resources/META-INF/defaultfmlconfig.toml @@ -4,3 +4,5 @@ splashscreen = true maxThreads = -1 # Enable forge global version checking versionCheck = true +# Disables Optimized DFU client-side. +disableOptimizedDFU = true diff --git a/patches/minecraft/net/minecraft/client/main/Main.java.patch b/patches/minecraft/net/minecraft/client/main/Main.java.patch index a937b1fc33..638b539d3b 100644 --- a/patches/minecraft/net/minecraft/client/main/Main.java.patch +++ b/patches/minecraft/net/minecraft/client/main/Main.java.patch @@ -1,5 +1,13 @@ --- a/net/minecraft/client/main/Main.java +++ b/net/minecraft/client/main/Main.java +@@ -49,6 +_,7 @@ + @DontObfuscate + public static void main(String[] p_129642_) { + SharedConstants.m_142977_(); ++ if (!net.minecraftforge.fml.loading.FMLConfig.isOptimizedDFUDisabled()) + SharedConstants.m_214358_(); + OptionParser optionparser = new OptionParser(); + optionparser.allowsUnrecognizedOptions(); @@ -135,7 +_,7 @@ }