Server Crash on Bonemeal Usage on Buried Petal with AppleCore and Hunger Overhaul installed
Avarice opened this issue ยท 28 comments
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)
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
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.
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
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
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 :/
AppleCore is an api required for other mods... so nor easy to remove without breaking the pack.
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
@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.
@Avarice Thank you for the information but I've done it my own way :)
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).
I actually don't know why this is happening. The class in question just looks like any normal 1.7 block class 0.o
Everyone uses sideonly in 1.7 on the iicon methods so I don't know why it'd fail in this case
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).
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).
idk I can't spot anything wrong here 0.o https://github.com/Vazkii/Botania/blob/9cf015ee972bb8568f65128fa7b84c12c4a7cfff/src/main/java/vazkii/botania/common/block/BlockModFlower.java
this function is the one missing the sideonly:
https://github.com/Vazkii/Botania/blob/9cf015ee972bb8568f65128fa7b84c12c4a7cfff/src/main/java/vazkii/botania/common/block/BlockModFlower.java#L103
Hm
That shouldn't not work because IIcon is present on both sides.
But it's worth a shot