Curios API (Forge/NeoForge)

Curios API (Forge/NeoForge)

140M Downloads

(Fabric) Crash with many items using Curios in one inventory

InsaanNotFound opened this issue ยท 10 comments

commented

Summary:

Crash log in Shulker Box case

[23:43:50] [Server thread/FATAL]: Error executing task on Server
java.lang.NullPointerException: null
	at Not Enough Crashes deobfuscated stack trace.(1.16.5+build.6) ~[?:?]
	at com.google.common.collect.Maps$7.transformEntry(Maps.java:2029) ~[guava-21.0.jar:?]
	at com.google.common.collect.Maps$10.getValue(Maps.java:2074) ~[guava-21.0.jar:?]
	at java.util.HashMap.putMapEntries(HashMap.java:509) ~[?:?]
	at java.util.HashMap.<init>(HashMap.java:485) ~[?:?]
	at com.google.common.collect.Maps.newHashMap(Maps.java:333) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:432) ~[?:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:32) ~[?:?]
	at com.google.common.collect.Iterators$7.transform(Iterators.java:750) ~[guava-21.0.jar:?]
	at com.google.common.collect.TransformedIterator.next(TransformedIterator.java:47) ~[guava-21.0.jar:?]
	at com.google.common.collect.Iterators.addAll(Iterators.java:367) ~[guava-21.0.jar:?]
	at com.google.common.collect.Lists.newArrayList(Lists.java:165) ~[guava-21.0.jar:?]
	at com.google.common.collect.Lists.newArrayList(Lists.java:150) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.ListTag.copy(ListTag:290) ~[?:?]
	at net.minecraft.nbt.ListTag.copy(ListTag:19) ~[?:?]
	at com.google.common.collect.Maps$7.transformEntry(Maps.java:2029) ~[guava-21.0.jar:?]
	at com.google.common.collect.Maps$10.getValue(Maps.java:2074) ~[guava-21.0.jar:?]
	at java.util.HashMap.putMapEntries(HashMap.java:509) ~[?:?]
	at java.util.HashMap.<init>(HashMap.java:485) ~[?:?]
	at com.google.common.collect.Maps.newHashMap(Maps.java:333) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:432) ~[?:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:32) ~[?:?]
	at com.google.common.collect.Maps$7.transformEntry(Maps.java:2029) ~[guava-21.0.jar:?]
	at com.google.common.collect.Maps$10.getValue(Maps.java:2074) ~[guava-21.0.jar:?]
	at java.util.HashMap.putMapEntries(HashMap.java:509) ~[?:?]
	at java.util.HashMap.<init>(HashMap.java:485) ~[?:?]
	at com.google.common.collect.Maps.newHashMap(Maps.java:333) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:432) ~[?:?]
	at net.minecraft.item.ItemStack.copy(ItemStack:373) ~[?:?]
	at net.minecraft.loot.LootTable.method_331(LootTable:60) ~[?:?]
	at net.minecraft.loot.function.LootFunction.method_514(LootFunction:14) ~[?:?]
	at net.minecraft.loot.function.LootFunction.method_514(LootFunction:14) ~[?:?]
	at net.minecraft.loot.function.LootFunction.method_514(LootFunction:14) ~[?:?]
	at net.minecraft.loot.entry.ItemEntry.generateLoot(ItemEntry:33) ~[?:?]
	at net.minecraft.class_85$1.generateLoot(class_85.java:59) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.loot.LootPool.supplyOnce(LootPool:71) ~[?:?]
	at net.minecraft.loot.LootPool.addGeneratedLoot(LootPool:95) ~[?:?]
	at net.minecraft.loot.LootTable.generateUnprocessedLoot(LootTable:73) ~[?:?]
	at net.minecraft.loot.LootTable.generateLoot(LootTable:82) ~[?:?]
	at net.minecraft.loot.LootTable.generateLoot(LootTable:87) ~[?:?]
	at net.minecraft.block.AbstractBlock.getDroppedStacks(AbstractBlock:249) ~[?:?]
	at net.minecraft.block.ShulkerBoxBlock.getDroppedStacks(ShulkerBoxBlock:152) ~[?:?]
	at net.minecraft.block.AbstractBlock$AbstractBlockState.getDroppedStacks(AbstractBlock:890) ~[?:?]
	at net.minecraft.block.Block.getDroppedStacks(Block:325) ~[?:?]
	at net.minecraft.block.Block.handler$eed000$generateBlockItemDropEvent(Block:6584) ~[?:?]
	at net.minecraft.block.Block.dropStacks(Block) ~[?:?]
	at net.minecraft.block.Block.afterBreak(Block:402) ~[?:?]
	at net.minecraft.server.network.ServerPlayerInteractionManager.tryBreakBlock(ServerPlayerInteractionManager:268) ~[?:?]
	at net.minecraft.server.network.ServerPlayerInteractionManager.finishMining(ServerPlayerInteractionManager:222) ~[?:?]
	at net.minecraft.server.network.ServerPlayerInteractionManager.processBlockBreakingAction(ServerPlayerInteractionManager:197) ~[?:?]
	at net.minecraft.server.network.ServerPlayNetworkHandler.onPlayerAction(ServerPlayNetworkHandler:1008) ~[?:?]
	at net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket.apply(PlayerActionC2SPacket:40) ~[?:?]
	at net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket.apply(PlayerActionC2SPacket:10) ~[?:?]
	at net.minecraft.network.NetworkThreadUtils.method_11072(NetworkThreadUtils:21) ~[?:?]
	at net.minecraft.server.ServerTask.run(ServerTask:18) ~[?:?]
	at net.minecraft.util.thread.ThreadExecutor.executeTask(ThreadExecutor:144) ~[?:?]
	at net.minecraft.util.thread.ReentrantThreadExecutor.executeTask(ReentrantThreadExecutor:23) ~[?:?]
	at net.minecraft.server.MinecraftServer.executeTask(MinecraftServer:761) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.server.MinecraftServer.executeTask(MinecraftServer:155) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.util.thread.ThreadExecutor.runTask(ThreadExecutor:118) ~[?:?]
	at net.minecraft.server.MinecraftServer.method_20415(MinecraftServer:743) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.server.MinecraftServer.runTask(MinecraftServer:737) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.util.thread.ThreadExecutor.runTasks(ThreadExecutor:127) ~[?:?]
	at net.minecraft.server.MinecraftServer.method_16208(MinecraftServer:722) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.server.MinecraftServer.handler$eho000$modifiedRunLoop(MinecraftServer:7319) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer:651) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer:257) ~[intermediary-minecraft-1.16.5-client.jar:?]
	at java.lang.Thread.run(Thread.java:834) [?:?]

Backpack case from Simple Backpacks mod:

[23:11:43] [main/FATAL]: Unreported exception thrown!
java.lang.NullPointerException: null
	at Not Enough Crashes deobfuscated stack trace.(1.16.5+build.6) ~[?:?]
	at com.google.common.collect.Maps$7.transformEntry(Maps.java:2029) ~[guava-21.0.jar:?]
	at com.google.common.collect.Maps$10.getValue(Maps.java:2074) ~[guava-21.0.jar:?]
	at java.util.HashMap.putMapEntries(HashMap.java:509) ~[?:?]
	at java.util.HashMap.<init>(HashMap.java:485) ~[?:?]
	at com.google.common.collect.Maps.newHashMap(Maps.java:333) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:432) ~[?:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:32) ~[?:?]
	at com.google.common.collect.Iterators$7.transform(Iterators.java:750) ~[guava-21.0.jar:?]
	at com.google.common.collect.TransformedIterator.next(TransformedIterator.java:47) ~[guava-21.0.jar:?]
	at com.google.common.collect.Iterators.addAll(Iterators.java:367) ~[guava-21.0.jar:?]
	at com.google.common.collect.Lists.newArrayList(Lists.java:165) ~[guava-21.0.jar:?]
	at com.google.common.collect.Lists.newArrayList(Lists.java:150) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.ListTag.copy(ListTag:290) ~[?:?]
	at net.minecraft.nbt.ListTag.copy(ListTag:19) ~[?:?]
	at com.google.common.collect.Maps$7.transformEntry(Maps.java:2029) ~[guava-21.0.jar:?]
	at com.google.common.collect.Maps$10.getValue(Maps.java:2074) ~[guava-21.0.jar:?]
	at java.util.HashMap.putMapEntries(HashMap.java:509) ~[?:?]
	at java.util.HashMap.<init>(HashMap.java:485) ~[?:?]
	at com.google.common.collect.Maps.newHashMap(Maps.java:333) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:432) ~[?:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:32) ~[?:?]
	at com.google.common.collect.Maps$7.transformEntry(Maps.java:2029) ~[guava-21.0.jar:?]
	at com.google.common.collect.Maps$10.getValue(Maps.java:2074) ~[guava-21.0.jar:?]
	at java.util.HashMap.putMapEntries(HashMap.java:509) ~[?:?]
	at java.util.HashMap.<init>(HashMap.java:485) ~[?:?]
	at com.google.common.collect.Maps.newHashMap(Maps.java:333) ~[guava-21.0.jar:?]
	at net.minecraft.nbt.CompoundTag.copy(CompoundTag:432) ~[?:?]
	at net.minecraft.item.ItemStack.copy(ItemStack:373) ~[?:?]
	at net.minecraft.entity.player.PlayerEntity.tick(PlayerEntity:316) ~[?:?]
	at net.minecraft.client.network.ClientPlayerEntity.tick(ClientPlayerEntity:205) ~[?:?]
	at net.minecraft.client.world.ClientWorld.tickEntity(ClientWorld:193) ~[?:?]
	at net.minecraft.world.World.tickEntity(World:561) ~[?:?]
	at net.minecraft.client.world.ClientWorld.tickEntities(ClientWorld:164) ~[?:?]
	at net.minecraft.client.MinecraftClient.tick(MinecraftClient:1556) ~[?:?]
	at net.minecraft.client.MinecraftClient.render(MinecraftClient:1021) ~[?:?]
	at net.minecraft.client.MinecraftClient.run(MinecraftClient:681) ~[?:?]
	at net.minecraft.client.main.Main.main(Main:215) [intermediary-minecraft-1.16.5-client.jar:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
	at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226) [fabric-loader-0.11.3.jar:?]
	at net.fabricmc.loader.launch.knot.Knot.launch(Knot.java:146) [fabric-loader-0.11.3.jar:?]
	at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:28) [fabric-loader-0.11.3.jar:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196) [NewLaunch.jar:?]
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231) [NewLaunch.jar:?]
	at org.multimc.EntryPoint.listen(EntryPoint.java:143) [NewLaunch.jar:?]
	at org.multimc.EntryPoint.main(EntryPoint.java:34) [NewLaunch.jar:?]

Versions:

  • Curios: 0.0.13
  • Forge/Fabric: both newest FAPI and FLoader

Observed Behavior:

Game crashes.

Expected Behavior:

Game does not crash and works normally.

Steps to Reproduce:

  1. Obtain many items having Curio slot. (I used Curious Necklaces and added Curio slot to Apples using https://www.curseforge.com/minecraft/mc-mods/things-fabric)
  2. Find moveable inventory container (shulker box, backpack)
  3. Put the items in the container
  4. In case backpack is used, game crashes, in case of shulker box it does not. You can normally close it but on try to mine it, it will simply not drop anything. Said crash error occurs.
    ...
commented

Longer version of crash error with Shulker Box case: https://pastebin.com/6cHSL5kc

commented

Curios isn't mentioned anywhere in the error log, so I'm not sure if it's a Curios issue. Have you tried replicating this with only Curios installed?

commented

Yes I did, same issue occurs.

commented

I will still give you mixin trace, hold on

commented
commented

Can you share the crash log in your instance with only Curios installed? Also, please restate the steps you took to cause the crash but without any other mods installed. Basically, I need all of the information necessary to follow your instructions on my end to replicate the issue.

commented

I have tried to replicate it 3 more times with only Curios installed, and somehow issue did not occur. Seems like a mod conflict (one of my mixin trace mods is causing that)

commented

I will set up new instance to try to eliminate conflicts.

commented

I will redirect it to new, more clear issue ticket.

commented

New ticket: #127