From fa84c2266233961a2b92531ac73ac3d59a6ed109 Mon Sep 17 00:00:00 2001 From: Marc Hermans Date: Fri, 17 Jun 2022 20:38:41 +0200 Subject: [PATCH] Fix SP-Devtime world loading crash due to missing server configs (#8757) --- .../world/item/crafting/ShapelessRecipe.java.patch | 2 +- src/main/java/net/minecraftforge/common/ForgeConfig.java | 6 ------ .../java/net/minecraftforge/common/ForgeConfigSpec.java | 2 +- 3 files changed, 2 insertions(+), 8 deletions(-) diff --git a/patches/minecraft/net/minecraft/world/item/crafting/ShapelessRecipe.java.patch b/patches/minecraft/net/minecraft/world/item/crafting/ShapelessRecipe.java.patch index 9dba8f579b..32a998ada1 100644 --- a/patches/minecraft/net/minecraft/world/item/crafting/ShapelessRecipe.java.patch +++ b/patches/minecraft/net/minecraft/world/item/crafting/ShapelessRecipe.java.patch @@ -59,7 +59,7 @@ for(int i = 0; i < p_44276_.size(); ++i) { Ingredient ingredient = Ingredient.m_43917_(p_44276_.get(i)); - if (!ingredient.m_43947_()) { -+ if (net.minecraftforge.common.ForgeConfig.SERVER.skipEmptyShapelessCheck.get() || !ingredient.m_43947_()) { ++ if (true || !ingredient.m_43947_()) { // FORGE: Skip checking if an ingredient is empty during shapeless recipe deserialization to prevent complex ingredients from caching tags too early. Can not be done using a config value due to sync issues. nonnulllist.add(ingredient); } } diff --git a/src/main/java/net/minecraftforge/common/ForgeConfig.java b/src/main/java/net/minecraftforge/common/ForgeConfig.java index ddd44c99ae..3f43392c9f 100644 --- a/src/main/java/net/minecraftforge/common/ForgeConfig.java +++ b/src/main/java/net/minecraftforge/common/ForgeConfig.java @@ -29,7 +29,6 @@ public class ForgeConfig { public final DoubleValue zombieBabyChance; public final BooleanValue treatEmptyTagsAsAir; - public final BooleanValue skipEmptyShapelessCheck; public final BooleanValue fixAdvancementLoading; @@ -74,11 +73,6 @@ public class ForgeConfig { .translation("forge.configgui.treatEmptyTagsAsAir") .define("treatEmptyTagsAsAir", false); - skipEmptyShapelessCheck = builder - .comment("Skip checking if an ingredient is empty during shapeless recipe deserialization to prevent complex ingredients from caching tags too early.") - .translation("forge.configgui.skipEmptyShapelessCheck") - .define("skipEmptyShapelessCheck", true); - fixAdvancementLoading = builder .comment("Fix advancement loading to use a proper topological sort. This may have visibility side-effects and can thus be turned off if needed for data-pack compatibility.") .translation("forge.configgui.fixAdvancementLoading") diff --git a/src/main/java/net/minecraftforge/common/ForgeConfigSpec.java b/src/main/java/net/minecraftforge/common/ForgeConfigSpec.java index 935747c003..f417742f5a 100644 --- a/src/main/java/net/minecraftforge/common/ForgeConfigSpec.java +++ b/src/main/java/net/minecraftforge/common/ForgeConfigSpec.java @@ -846,7 +846,7 @@ public class ForgeConfigSpec extends UnmodifiableConfigWrapper