diff --git a/src/main/java/gregtech/common/CommonProxy.java b/src/main/java/gregtech/common/CommonProxy.java index 59055bb74e1..5503316c988 100644 --- a/src/main/java/gregtech/common/CommonProxy.java +++ b/src/main/java/gregtech/common/CommonProxy.java @@ -64,6 +64,7 @@ import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.event.furnace.FurnaceFuelBurnTimeEvent; import net.minecraftforge.fml.client.event.ConfigChangedEvent; +import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.Loader; import net.minecraftforge.fml.common.LoaderState; import net.minecraftforge.fml.common.Mod; @@ -420,9 +421,13 @@ public void onLoadComplete() { // If JEI and GS is not loaded, refresh ore dict ingredients // Not needed if JEI is loaded, as done in the JEI plugin (and this runs after that) // Not needed if GS is loaded, as done after script loads (and this runs after that) - if (!GregTechAPI.moduleManager.isModuleEnabled(GregTechModules.MODULE_JEI) && - !GroovyScriptModule.isCurrentlyRunning()) - GTRecipeOreInput.refreshStackCache(); + if (!GroovyScriptModule.isCurrentlyRunning()) { + // EXCEPTION: IF GrS is not loaded, and JEI is loaded, and we are in a dedicated server env, refresh + // This is due to JEI Plugin Register not taking place on server, and GrS not acting as the backup. + if (!GregTechAPI.moduleManager.isModuleEnabled(GregTechModules.MODULE_JEI) || + FMLCommonHandler.instance().getSide().isServer()) + GTRecipeOreInput.refreshStackCache(); + } } public boolean isFancyGraphics() { diff --git a/src/main/java/gregtech/integration/groovy/GroovyScriptModule.java b/src/main/java/gregtech/integration/groovy/GroovyScriptModule.java index 0e2f3b9e801..739adc07267 100644 --- a/src/main/java/gregtech/integration/groovy/GroovyScriptModule.java +++ b/src/main/java/gregtech/integration/groovy/GroovyScriptModule.java @@ -33,6 +33,7 @@ import net.minecraft.item.crafting.IRecipe; import net.minecraft.util.ResourceLocation; import net.minecraftforge.event.RegistryEvent; +import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.Optional; import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; @@ -93,8 +94,9 @@ public static void onRecipeEvent(RegistryEvent.Register event) { @SubscribeEvent @Optional.Method(modid = Mods.Names.GROOVY_SCRIPT) public static void afterScriptLoad(ScriptRunEvent.Post event) { - // Not Needed if JEI Module is enabled - if (!GregTechAPI.moduleManager.isModuleEnabled(GregTechModules.MODULE_JEI)) + // Not Needed if JEI Module is enabled, unless we are on server (JEI Plugin Register doesn't take place) + if (!GregTechAPI.moduleManager.isModuleEnabled(GregTechModules.MODULE_JEI) || + FMLCommonHandler.instance().getSide().isServer()) GTRecipeOreInput.refreshStackCache(); }