ModId issue
Oluh opened this issue ยท 4 comments
So currently I am learning ZenStages which is a great mod, however I tried to add a mod to a stage and it won't build at all.
I tried many parameters, with the optional true, and another mod. I also tried by using a static class even if it was in the same file, by naming it differently. However nothing works at all, it's only when I tested with the example of stick that it worked.
This is what I have done so far to test the addModId
method.
Adding false, null
as additional arguments to each call to addModId
did not solve the issue for me. I also tried false, [null]
and false, [<minecraft:air>]
and found that you cannot supply null here and it is not optional. Resulting in the error stack cannot be null
.
This does however work when I supply an IIngredient that was part of the mod, for example, Mekansim and ignoring the cardboard box will work.
I was able to work-around by supplying false, [<minecraft:stone>]
in the cases where I wanted to stage an entire mod.
Not exactly sure what is going on here but I always get an error about null pointers, stack cannot be null or some other null error no matter what else I try.
Scripts:
https://gist.github.com/0xKate/b950f467745f125d0d5b4dc2542d4f3f
E: Here is the exception I'm getting when I just use null
Exception
[INITIALIZATION][CLIENT][INFO] [crafttweaker | SIDE_CLIENT]: Loading Script: {[101:crafttweaker]: Stages\stages_init.zs}
[INITIALIZATION][CLIENT][ERROR] [crafttweaker]: Error executing {[101:crafttweaker]: Stages\stages_init.zs}: null
java.lang.NullPointerException
at uk.artdude.zenstages.stager.type.TypeMod.<init>(TypeMod.java:31)
at uk.artdude.zenstages.stager.Stage.addModId(Stage.java:226)
at Stages\Stages_init.__script__(Stages\stages_init.zs:30)
at __ZenMain__.run(Stages\Stages_init)
at crafttweaker.runtime.CrTTweaker.loadScript(CrTTweaker.java:240)
at crafttweaker.runtime.CrTTweaker.loadScript(CrTTweaker.java:105)
at crafttweaker.mc1120.events.CommonEventHandler.registerRecipes(CommonEventHandler.java:71)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1436_CommonEventHandler_registerRecipes_Register.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:857)
at net.minecraftforge.common.crafting.CraftingHelper.loadRecipes(CraftingHelper.java:636)
at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:747)
at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:336)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:535)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:210)
at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:245)
at org.multimc.EntryPoint.listen(EntryPoint.java:143)
at org.multimc.EntryPoint.main(EntryPoint.java:34)
I'm getting the same issue with addModId
.
Script:
`#priority 500
import mods.zenstages.ZenStager;
import mods.zenstages.Stage;
print("Storage End Stage Loaded");
var storage_end as Stage = ZenStager.getStage("storage_end");
mods.recipestages.Recipes.setRecipeStageByMod("storage_end", "refined_avaritia");
mods.recipestages.Recipes.setRecipeStageByMod("storage_end", "packagedexcrafting");
storage_end.addModId("refined_avaritia");
storage_end.addModId("packagedexcrafting",);'
I asked in the crafttweaker discord and they suggested doing.
storage_end.addModId("refined_avaritia", false, null);
Still an error.
Yes I just ran it again after trying multiple other scripts, none of them worked.
Here are the logs :
[PREINITIALIZATION][CLIENT][INFO] Current loaders after merging: [[preinit]]
[PREINITIALIZATION][CLIENT][INFO] Loading scripts for loader with names [preinit]
[PREINITIALIZATION][CLIENT][INFO] [preinit | SIDE_CLIENT]: Skipping file {[0:crafttweaker]: staging\stages.zs} as we are currently loading with a different loader
[PREINITIALIZATION][CLIENT][INFO] Completed script loading in: 3ms
[PREINITIALIZATION][CLIENT][INFO] Current loaders after merging: [[preinit], [nc_preinit]]
[PREINITIALIZATION][CLIENT][INFO] Loading scripts for loader with names [nc_preinit]
[PREINITIALIZATION][CLIENT][INFO] [nc_preinit | SIDE_CLIENT]: Skipping file {[0:crafttweaker]: staging\stages.zs} as we are currently loading with a different loader
[PREINITIALIZATION][CLIENT][INFO] Completed script loading in: 0ms
[INITIALIZATION][CLIENT][INFO] CraftTweaker: Building registry
[INITIALIZATION][CLIENT][INFO] CraftTweaker: Successfully built item registry
[INITIALIZATION][CLIENT][INFO] Current loaders after merging: [[preinit], [nc_preinit], [recipeevent | crafttweaker]]
[INITIALIZATION][CLIENT][INFO] Loading scripts for loader with names [crafttweaker | recipeevent]
[INITIALIZATION][CLIENT][INFO] [crafttweaker | SIDE_CLIENT]: Loading Script: {[0:crafttweaker]: staging\stages.zs}
[INITIALIZATION][CLIENT][ERROR] [crafttweaker]: Error executing {[0:crafttweaker]: staging\stages.zs}: 1
java.lang.ArrayIndexOutOfBoundsException: 1
at stanhebben.zenscript.type.natives.JavaMethod.getPriority(JavaMethod.java:349)
at stanhebben.zenscript.type.natives.JavaMethod.select(JavaMethod.java:84)
at stanhebben.zenscript.type.natives.ZenNativeMember$InstanceGetValue.call(ZenNativeMember.java:113)
at stanhebben.zenscript.parser.expression.ParsedExpressionCall.compile(ParsedExpressionCall.java:37)
at stanhebben.zenscript.statements.StatementExpression.compile(StatementExpression.java:27)
at stanhebben.zenscript.statements.StatementExpression.compile(StatementExpression.java:19)
at stanhebben.zenscript.ZenModule.compileScripts(ZenModule.java:152)
at crafttweaker.runtime.CrTTweaker.loadScript(CrTTweaker.java:218)
at crafttweaker.runtime.CrTTweaker.loadScript(CrTTweaker.java:105)
at crafttweaker.mc1120.events.CommonEventHandler.registerRecipes(CommonEventHandler.java:73)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_409_CommonEventHandler_registerRecipes_Register.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
at net.minecraftforge.fml.common.eventhandler.EventBus$1.invoke(EventBus.java:144)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
at net.minecraftforge.registries.GameData.fireRegistryEvents(GameData.java:857)
at net.minecraftforge.common.crafting.CraftingHelper.loadRecipes(CraftingHelper.java:636)
at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:747)
at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:336)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:535)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:378)
at net.minecraft.client.main.Main.main(SourceFile:123)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
[INITIALIZATION][CLIENT][INFO] Completed script loading in: 331ms
[POSTINITIALIZATION][CLIENT][INFO] Removing recipes for various outputs
[AVAILABLE][CLIENT][INFO] Fixed the RecipeBook
As always it doesn't show it is staged, also when I try in survival it doesn't work of course. I'm really not good at Java errors as I use it almost never, so I hope it will help you and I'm just a bit stupid.