AgriCraft

AgriCraft

30M Downloads

Crash with Psychedelicraft seeds

ultrasn0w opened this issue ยท 5 comments

commented

When right clicking with a seed from Psychedelicraft (http://minecraft.curseforge.com/mc-mods/224601-psychedelicraft / https://github.com/Ivorforce/Psychedelicraft) onto crops, the game crashes and leaves this log behind:

Description: Ticking memory connection

java.lang.ClassCastException: ivorius.psychedelicraft.blocks.BlockTobaccoPlant cannot be cast to net.minecraft.block.BlockBush
    at com.InfinityRaider.AgriCraft.utility.SeedHelper.getPlant(SeedHelper.java:225)
    at com.InfinityRaider.AgriCraft.farming.GrowthRequirements.getGrowthRequirement(GrowthRequirements.java:88)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.plantSeed(BlockCrop.java:173)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.func_149727_a(BlockCrop.java:241)
    at net.minecraft.server.management.ItemInWorldManager.func_73078_a(ItemInWorldManager.java:376)
    at net.minecraft.network.NetHandlerPlayServer.func_147346_a(NetHandlerPlayServer.java:556)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:60)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:9)
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:212)
    at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:165)
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:659)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
    at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
    at com.InfinityRaider.AgriCraft.utility.SeedHelper.getPlant(SeedHelper.java:225)
    at com.InfinityRaider.AgriCraft.farming.GrowthRequirements.getGrowthRequirement(GrowthRequirements.java:88)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.plantSeed(BlockCrop.java:173)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.func_149727_a(BlockCrop.java:241)
    at net.minecraft.server.management.ItemInWorldManager.func_73078_a(ItemInWorldManager.java:376)
    at net.minecraft.network.NetHandlerPlayServer.func_147346_a(NetHandlerPlayServer.java:556)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:60)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:9)
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:212)

-- Ticking connection --
Details:
    Connection: net.minecraft.network.NetworkManager@7f816857
Stacktrace:
    at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:165)
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:659)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
    at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)

It would be nice if this crash can be prevented or support for those seeds will be added :)

Greetings
ultrasn0w

commented

I'll make sure it works with psychedelicraft

commented

Nice!

However You probably should add some protection in case a mod hasn't properly registered its stuff:

Description: Ticking memory connection

java.lang.NullPointerException: Ticking memory connection
    at com.InfinityRaider.AgriCraft.utility.SeedHelper.addFruitsFromOreDict(SeedHelper.java:324)
    at com.InfinityRaider.AgriCraft.utility.SeedHelper.getPlantFruits(SeedHelper.java:268)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.harvest(BlockCrop.java:128)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.setCrossCrop(BlockCrop.java:155)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.func_149727_a(BlockCrop.java:213)
    at net.minecraft.server.management.ItemInWorldManager.func_73078_a(ItemInWorldManager.java:376)
    at net.minecraft.network.NetHandlerPlayServer.func_147346_a(NetHandlerPlayServer.java:556)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:60)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:9)
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:212)
    at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:165)
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:659)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
    at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
    at com.InfinityRaider.AgriCraft.utility.SeedHelper.addFruitsFromOreDict(SeedHelper.java:324)
    at com.InfinityRaider.AgriCraft.utility.SeedHelper.getPlantFruits(SeedHelper.java:268)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.harvest(BlockCrop.java:128)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.setCrossCrop(BlockCrop.java:155)
    at com.InfinityRaider.AgriCraft.blocks.BlockCrop.func_149727_a(BlockCrop.java:213)
    at net.minecraft.server.management.ItemInWorldManager.func_73078_a(ItemInWorldManager.java:376)
    at net.minecraft.network.NetHandlerPlayServer.func_147346_a(NetHandlerPlayServer.java:556)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:60)
    at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:9)
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:212)

-- Ticking connection --
Details:
    Connection: net.minecraft.network.NetworkManager@e712a69
Stacktrace:
    at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:165)
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:659)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
    at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)
commented

Fixed, new build should be on CF soon.

commented

Awesome!

While testing around a little bit more I found some seeds from other mods wich can be planted but do not return any stuff when fully grown.
Those are all melon types from Elemental Melons (http://minecraft.curseforge.com/mc-mods/222196-elemental-melons / https://github.com/J3FF97/Elemental-Melons),
and the Flax seeds from Atum (http://minecraft.curseforge.com/mc-mods/59621-atum / https://github.com/TeamMetallurgy/Atum).

commented

I've added support for this locally, I'm just waiting for @Imasius to add the dependencies to the dropbox folder so Travis can build and put it on CurseForge.
When that build is uploaded, use that one and if it still doesn't harvest those crops correctly, go to the mod author of those mod's authors and tell themm to register their seeds as "seed" and their fruits as "crop" to the ore dictionary.