Crash w/ Foundry Mod

Issue #53 on hold
WenXin2 created an issue

Forge 2092 Foundry 1.3.5 Crash on Load Mod Link

Comments (6)

  1. Mike Stoll
    Caught exception from giacomosfoundry
    java.lang.ArrayIndexOutOfBoundsException: 32767
        at bitevo.Zetal.LoMaS.Specializations.Items.ItemBlock.ItemQualityBlock$1.apply(ItemQualityBlock.java:37) ~[ItemQualityBlock$1.class:?]
        at bitevo.Zetal.LoMaS.Specializations.Items.ItemBlock.ItemQualityBlock$1.apply(ItemQualityBlock.java:41) ~[ItemQualityBlock$1.class:?]
        at bitevo.Zetal.LoMaS.Specializations.Items.ItemBlock.ItemQualityBlock.func_77667_c(ItemQualityBlock.java:48) ~[ItemQualityBlock.class:?]
        at net.minecraft.item.Item.func_77657_g(Item.java:290) ~[adx.class:?]
        at net.minecraft.item.Item.func_77653_i(Item.java:360) ~[adx.class:?]
        at net.minecraft.item.ItemStack.func_82833_r(ItemStack.java:507) ~[adz.class:?]
        at com.polipo.foundry.ItemStackKey.toString(ItemStackKey.java:139) ~[ItemStackKey.class:?]
        at java.lang.String.valueOf(String.java:2981) ~[?:1.8.0_25]
        at java.lang.StringBuilder.append(StringBuilder.java:131) ~[?:1.8.0_25]
        at java.util.AbstractMap.toString(AbstractMap.java:534) ~[?:1.8.0_25]
        at com.polipo.foundry.FoundryRecipes$FoundryRecipe.toString(FoundryRecipes.java:79) ~[FoundryRecipes$FoundryRecipe.class:?]
        at java.lang.String.valueOf(String.java:2981) ~[?:1.8.0_25]
        at java.lang.StringBuilder.append(StringBuilder.java:131) ~[?:1.8.0_25]
        at com.polipo.foundry.FoundryRecipes.getRecipes(FoundryRecipes.java:967) ~[FoundryRecipes.class:?]
        at com.polipo.foundry.FoundryRecipes.initRecipes(FoundryRecipes.java:413) ~[FoundryRecipes.class:?]
        at com.polipo.foundry.FoundryRecipes.init(FoundryRecipes.java:130) ~[FoundryRecipes.class:?]
        at com.polipo.foundry.ModFoundry.postInit(ModFoundry.java:85) ~[ModFoundry.class:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]
        at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:597) ~[forge-1.10.2-12.18.1.2092.jar:?]
        at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]
        at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?]
        at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:239) ~[forge-1.10.2-12.18.1.2092.jar:?]
        at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:217) ~[forge-1.10.2-12.18.1.2092.jar:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]
        at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?]
        at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?]
        at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:142) [LoadController.class:?]
        at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:795) [Loader.class:?]
        at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:324) [FMLClientHandler.class:?]
        at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:520) [bcx.class:?]
        at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:351) [bcx.class:?]
        at net.minecraft.client.main.Main.main(SourceFile:124) [Main.class:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]
        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    

    Relevant stacktrace. It looks like Foundry is calling my ItemQualityBlock to build a string, but it's using ItemDamages that are waaay beyond what my mod is supposed to handle. I've checked, and I can't find the source code for the Foundry mod to try and see what exactly the goal is, and whether there's anything I can do to fix it.

    At this point your best bet is probably to contact the creator of the Foundry mod and see if either he can get in contact with me about fixing this, or just giving him this section of code:

        public ItemQualityBlock(Block block)
        {
            super(block, block, new Function()
            {
                public String apply(ItemStack stack)
                {
                    return FoodInitializer.qualities[stack.getItemDamage()];
                }
                public Object apply(Object p_apply_1_)
                {
                    return this.apply((ItemStack)p_apply_1_);
                }
            });
        }
    

    and the above stacktrace. This is where the error is occurring. the 'qualities' array is a list of 3 strings, so obviously 32767 is quite out of bounds.

    Best of luck. Putting this 'on hold'.

  2. Log in to comment