Botania (Fabric/Quilt)

Botania (Fabric/Quilt)

5M Downloads

Server Crash on Bonemeal Usage on Buried Petal with AppleCore and Hunger Overhaul installed

Avarice opened this issue ยท 28 comments

commented

Any time bonemeal is used on a buried petal, server crashes. AppleCore uses a certain class for fertilization events.
https://github.com/squeek502/AppleCore/wiki/Integrating-plants-with-AppleCore

---- Minecraft Crash Report ----
// Everything's going to plan. No, really, that was supposed to happen.

Time: 27/02/16 13:29
Description: Exception in server tick loop

java.lang.NoClassDefFoundError: net/minecraft/client/renderer/texture/IIconRegister
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
at java.lang.Class.getMethod0(Class.java:3018)
at java.lang.Class.getMethod(Class.java:1784)
at squeek.applecore.asm.Hooks.fireAppleCoreFertilizeEvent(Hooks.java:205)
at vazkii.botania.common.block.BlockModFlower.func_149853_b(BlockModFlower.java)
at net.minecraft.item.ItemDye.applyBonemeal(ItemDye.java:167)
at net.minecraft.item.ItemDye.func_77648_a(ItemDye.java:65)
at net.minecraftforge.common.ForgeHooks.onPlaceItemIntoWorld(ForgeHooks.java:505)
at net.minecraft.item.ItemStack.func_77943_a(ItemStack.java:128)
at net.minecraft.server.management.ItemInWorldManager.func_73078_a(ItemInWorldManager.java:389)
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.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:334)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.renderer.texture.IIconRegister
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 22 more
Caused by: java.lang.NullPointerException

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

-- System Details --
Details:
Minecraft Version: 1.7.10
Operating System: Linux (amd64) version 3.14.32-xxxx-std-ipv6-64-hz1000
Java Version: 1.8.0_60, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 599322464 bytes (571 MB) / 1481674752 bytes (1413 MB) up to 6227755008 bytes (5939 MB)
JVM Flags: 20 total; -Xincgc -XX:+UseParNewGC -XX:MaxPermSize=256M -XX:NewRatio=2 -XX:CMSFullGCsBeforeCompaction=1 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=2048 -XX:+CMSParallelRemarkEnabled -XX:+DisableExplicitGC -Xnoclassgc -Xoss4M -Xss4M -XX:+UseFastAccessorMethods -XX:CMSInitiatingOccupancyFraction=90 -XX:UseSSE=4 -XX:+UseCMSCompactAtFullCollection -XX:ParallelGCThreads=4 -XX:+AggressiveOpts -Xmx6144M -Xms512M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 0, tcache: 0, allocated: 13, tallocated: 95
FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1614 77 mods loaded, 77 mods active
States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
UCHIJAAAA mcp{9.05} Minecraft Coder Pack
UCHIJAAAA FML{7.10.99.99} Forge Mod Loader
UCHIJAAAA Forge{10.13.4.1614} Minecraft Forge
UCHIJAAAA AM2-Preloader{0.0.3} AMCore
UCHIJAAAA CodeChickenCore{1.0.7.47} CodeChicken Core
UCHIJAAAA NotEnoughItems{1.0.5.120} Not Enough Items
UCHIJAAAA ThaumicTinkerer-preloader{0.1} Thaumic Tinkerer Core
UCHIJAAAA AnimationAPI{1.2.4} AnimationAPI
UCHIJAAAA arsmagica2{1.4.0.009} Ars Magica 2
UCHIJAAAA bspkrsCore{6.15} bspkrsCore
UCHIJAAAA StartingInventory{1.7.10.r03} StartingInventory
UCHIJAAAA StatusEffectHUD{1.27} StatusEffectHUD
UCHIJAAAA Baubles{1.0.1.10} Baubles
UCHIJAAAA adventurebackpack{1.7.10-0.8b} Adventure Backpack
UCHIJAAAA AgriCraft{1.7.10-1.4.6-hotfix} AgriCraft
UCHIJAAAA antiqueatlas{1.7.10-4.2.10} Antique Atlas
UCHIJAAAA AppleCore{1.3.0} AppleCore
UCHIJAAAA BiblioCraft{1.11.4} BiblioCraft
UCHIJAAAA Mantle{1.7.10-0.3.2.jenkins191} Mantle
UCHIJAAAA Natura{2.2.0} Natura
UCHIJAAAA BiblioWoodsNatura{1.3} BiblioWoods Natura Edition
UCHIJAAAA AWWayofTime{v1.3.3} Blood Magic: Alchemical Wizardry
UCHIJAAAA Thaumcraft{4.2.3.5} Thaumcraft
UCHIJAAAA Botania{r1.8-249} [Botania](Botania r1.8-249.jar)
UCHIJAAAA Waila{1.5.10} Waila
UCHIJAAAA ThaumicTinkerer{unspecified} Thaumic Tinkerer
UCHIJAAAA ForbiddenMagic{1.7.10-0.573} [Forbidden Magic](Forbidden Magic-1.7.10-0.573.jar)
UCHIJAAAA guideapi{1.7.10-1.0.1-20} Guide-API
UCHIJAAAA ExtraUtilities{1.2.12} Extra Utilities
UCHIJAAAA TConstruct{1.7.10-1.8.8.build988} Tinkers' Construct
UCHIJAAAA BloodArsenal{1.2-4} [Blood Arsenal](BloodArsenal-1.7.10-1.2-4 %281%29.jar)
UCHIJAAAA CarpentersBlocks{3.3.7} [Carpenter's Blocks](Carpenter's Blocks v3.3.7 - MC 1.7.10.jar)
UCHIJAAAA chisel{2.5.1.44} Chisel 2
UCHIJAAAA CustomSpawner{3.3.0} [DrZhark's CustomSpawner](CustomMobSpawner 3.3.0.zip)
UCHIJAAAA PTRModelLib{1.0.0} PTRModelLib
UCHIJAAAA props{2.2.1} Decocraft
UCHIJAAAA MoCreatures{6.3.1} [DrZhark's Mo'Creatures Mod](DrZharks MoCreatures Mod v6.3.1.zip)
UCHIJAAAA Enchiridion{1.3} [Enchiridion](Enchiridion 2-1.7.10-2.0.2a.jar)
UCHIJAAAA Enchiridion2{2.0.2a} [Enchiridion 2](Enchiridion 2-1.7.10-2.0.2a.jar)
UCHIJAAAA EnderStorage{1.4.7.37} EnderStorage
UCHIJAAAA harvestcraft{1.7.10j} [Pam's HarvestCraft](Pam's HarvestCraft 1.7.10Lb.jar)
UCHIJAAAA ExtraTiC{1.4.5} ExtraTiC
UCHIJAAAA FastCraft{1.21} FastCraft
UCHIJAAAA GardenContainers{1.7.10-1.7.0} Garden Containers
UCHIJAAAA GardenCore{1.7.10-1.7.0} Garden Core
UCHIJAAAA GardenStuff{1.7.10-1.7.0} Garden Stuff
UCHIJAAAA GardenTrees{1.7.10-1.7.0} Garden Trees
UCHIJAAAA HelpFixer{1.0.7} HelpFixer
UCHIJAAAA InfernalMobs{1.6.0} Infernal Mobs
UCHIJAAAA inpure|core{1.7.10R1.0.0B9} INpureCore
UCHIJAAAA inventorytweaks{1.59-dev-152-cf6e263} Inventory Tweaks
UCHIJAAAA IronChest{6.0.62.742} Iron Chest
UCHIJAAAA RadixCore{2.1.1} RadixCore
UCHIJAAAA MCA{1.7.10-5.1.1.2} Minecraft Comes Alive
UCHIJAAAA NEIAddons{1.12.11.36} NEI Addons
UCHIJAAAA NEIAddons|Developer{1.12.11.36} NEI Addons: Developer Tools
UCHIJAAAA NEIAddons|AppEng{1.12.11.36} NEI Addons: Applied Energistics 2
UCHIJAAAA NEIAddons|Botany{1.12.11.36} NEI Addons: Botany
UCHIJAAAA NEIAddons|Forestry{1.12.11.36} NEI Addons: Forestry
UCHIJAAAA NEIAddons|CraftingTables{1.12.11.36} NEI Addons: Crafting Tables
UCHIJAAAA NEIAddons|ExNihilo{1.12.11.36} NEI Addons: Ex Nihilo
UCHIJAAAA neiintegration{1.1.1} NEI Integration
UCHIJAAAA Progression{0.4.1} Progression
UCHIJAAAA Sanguimancy{1.7.10-1.1.9-31} Sanguimancy
UCHIJAAAA SpecialAI{1.1.2} Special AI
UCHIJAAAA StorageDrawers{1.7.10-1.8.0} Storage Drawers
UCHIJAAAA StorageDrawersMisc{1.7.10-1.1.2} Storage Drawers: Misc Pack
UCHIJAAAA StorageDrawersNatura{1.7.10-1.1.1} Storage Drawers: Natura Pack
UCHIJAAAA ThaumcraftMobAspects{1.7.2-2A} Thaumcraft Mob Aspects
UCHIJAAAA thaumcraftneiplugin{@Version@} Thaumcraft NEI Plugin
UCHIJAAAA ThaumicExploration{0.6.0} Thaumic Exploration
UCHIJAAAA TiCTooltips{1.2.5} TiC Tooltips
UCHIJAAAA TMechworks{0.2.15.106} Tinkers' Mechworks
UCHIJAAAA TravellersGear{1.16.6} Traveller's Gear
UCHIJAAAA witchery{0.24.1} Witchery
UCHIJAAAA HungerOverhaul{1.7.10-1.0.0.jenkins75} Hunger Overhaul
UCHIJAAAA IguanaTweaksTConstruct{1.7.10-2.1.5.140} Iguana Tinker Tweaks
Mantle Environment: Environment healthy.
TConstruct Environment: Environment healthy.
Profiler Position: N/A (disabled)
Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Player Count: 1 / 20; [EntityPlayerMP['AvariceSyn'/5423, l='Nimbus Overworld', x=496.90, y=76.00, z=201.71]]
Is Modded: Definitely; Server brand changed to 'fml,forge'
Type: Dedicated Server (map_server.txt)

commented

this is AppleCore's fault. Not Botania's.

commented

Yeah, I've run into this issue before

I don't have access to 1.7 and it would take significant work to refactor anyway
So I'm going to do it in 1.8 sometime

commented

Is there maybe a way to just stop them from being planted?

commented

Applecore uses a different method of calling on bonemeal for growing, at least as I understand it. It's not a clientside crash or I wouldn't bother posting it, it shuts down the server immediately. However it works with everything else we've tried to use bonemeal on without a hitch. It seems that it's an isolated case involving pedals.

commented

Was just about to post this exact thing. Anybody have an idea?

commented

So is there any possible way to fix it?

commented

its a mix of both. Botania mixes client and serverside methods in the same class, which means if someone ever uses reflection on some classes it'll crash with CNFE/NSME/AME

commented

not without a significant refactor of the code (won't happen in 1.7, and some of that code that caused this has been moved or removed in 1.8 due to the model system) or applecore not reflecting the specific botania classes that have issues

commented

Soooooo now my server will just crash?

commented

There's multiple solutions. A. Remove one mod or the other, B. Bug Squeak about it (he's been working on 1.8.* though), or C. Learn how to add the botania class to AppleCore, so that it can properly use it's Hooks.fireAppleCoreFertilizeEvent with Botania pedals... None of which are very appealing :/

commented

does AppleCore add anything useful? (I'm on Project Ozone modpack)

commented

AppleCore is an api required for other mods... so nor easy to remove without breaking the pack.

commented

So really no way to fix this unless Squeak did it themselves?

commented

I feel like just a one line shim in applecore to skip this and other troublesome classes should do for now, until I can reorganize the code in 1.8

commented

Have you done this you're saying? Or will do? Or do I do? xD

commented

@cj89898
We decided to use Progression (mod) to disable bone meal being used. Haven't been able to reach Squeek yet about seeing if anything could be done AC-sided, so this band-aid should do.

Also, watch out for Hoe of Growth if you have Thaumcraft as well.

Let me know if you would like some help setting up Progression.

commented

@Avarice Thank you for the information but I've done it my own way :)

commented

this could be fixed on botania's side with the @sideonly annotation

commented

We already use sideonly

commented

Side only doesn't fix this
It CAUSES this :/
On Mon, Feb 29, 2016 at 11:10 AM Vincent Lee [email protected]
wrote:

We already use sideonly

โ€”
Reply to this email directly or view it on GitHub
#1820 (comment).

commented

I actually don't know why this is happening. The class in question just looks like any normal 1.7 block class 0.o

commented

Everyone uses sideonly in 1.7 on the iicon methods so I don't know why it'd fail in this case

commented

No, I mean side only classes. Not methods.
On Mon, Feb 29, 2016 at 11:13 AM Vincent Lee [email protected]
wrote:

Everyone uses sideonly in 1.7 on the iicon methods so I don't know why
it'd fail in this case

โ€”
Reply to this email directly or view it on GitHub
#1820 (comment).

commented

When the class is loaded it's fine, but reflection ignores sideonly
On Mon, Feb 29, 2016 at 11:15 AM Wire Segal [email protected] wrote:

No, I mean side only classes. Not methods.
On Mon, Feb 29, 2016 at 11:13 AM Vincent Lee [email protected]
wrote:

Everyone uses sideonly in 1.7 on the iicon methods so I don't know why
it'd fail in this case

โ€”
Reply to this email directly or view it on GitHub
#1820 (comment).

commented

Hm
That shouldn't not work because IIcon is present on both sides.
But it's worth a shot

commented

i put the sideonly on both the registration and the getter for the icons and that got rid of reflection crashes for my mods