[Bug] Portable Tanks causes the JEI plugin for Create to error out (resulting in numerous recipes not being shown)
smbarbour opened this issue ยท 1 comments
Version info
Minecraft 1.21.1
Portable Tanks 1.1.17
Describe the bug
When Portable Tanks is present, the JEI plugin for Create encounters an exception that stops recipe enumeration
To Reproduce
Steps to reproduce the behavior:
- Install Portable Tanks and Create
- Attempt to look up uses for Mechanical Crafters
- See that no uses are apparently found
Stacktrace
[12Jun2025 21:57:49.442] [Render thread/ERROR] [mezz.jei.library.load.PluginCaller/]: Caught an error from mod plugin: class com.simibubi.create.compat.jei.CreateJEI create:jei_plugin
java.lang.NullPointerException: Cannot invoke "net.minecraft.nbt.CompoundTag.contains(String)" because "compound" is null
at TRANSFORMER/[email protected]/com.dremoline.portabletanks.PortableTankItem$ItemFluidHandler.getFluid(PortableTankItem.java:137) ~[portabletanks-1.1.7-neoforge-mc1.21.jar%23632!/:?]
at TRANSFORMER/[email protected]/com.dremoline.portabletanks.PortableTankItem$ItemFluidHandler.getFluidInTank(PortableTankItem.java:64) ~[portabletanks-1.1.7-neoforge-mc1.21.jar%23632!/:?]
at TRANSFORMER/[email protected]/com.simibubi.create.compat.jei.category.SpoutCategory.consumeRecipes(SpoutCategory.java:69) ~[create-1.21.1-6.0.4.jar%23506!/:6.0.4]
at TRANSFORMER/[email protected]/com.simibubi.create.compat.jei.CreateJEI.lambda$loadCategories$14(CreateJEI.java:281) ~[create-1.21.1-6.0.4.jar%23506!/:6.0.4]
at TRANSFORMER/[email protected]/com.simibubi.create.compat.jei.CreateJEI$CategoryBuilder.lambda$build$22(CreateJEI.java:562) ~[create-1.21.1-6.0.4.jar%23506!/:6.0.4]
at TRANSFORMER/[email protected]/com.simibubi.create.compat.jei.category.CreateRecipeCategory.registerRecipes(CreateRecipeCategory.java:88) ~[create-1.21.1-6.0.4.jar%23506!/:6.0.4]
at TRANSFORMER/[email protected]/com.simibubi.create.compat.jei.CreateJEI.lambda$registerRecipes$22(CreateJEI.java:349) ~[create-1.21.1-6.0.4.jar%23506!/:6.0.4]
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) ~[?:?]
at TRANSFORMER/[email protected]/com.simibubi.create.compat.jei.CreateJEI.registerRecipes(CreateJEI.java:349) ~[create-1.21.1-6.0.4.jar%23506!/:6.0.4]
at TRANSFORMER/[email protected]/mezz.jei.library.load.PluginLoader.lambda$createRecipeManager$15(PluginLoader.java:202) ~[jei-1.21.1-neoforge-19.21.0.247.jar%23585!/:19.21.0.247]
at TRANSFORMER/[email protected]/mezz.jei.library.load.PluginCaller.callOnPlugins(PluginCaller.java:25) ~[jei-1.21.1-neoforge-19.21.0.247.jar%23585!/:19.21.0.247]
at TRANSFORMER/[email protected]/mezz.jei.library.load.PluginLoader.createRecipeManager(PluginLoader.java:202) ~[jei-1.21.1-neoforge-19.21.0.247.jar%23585!/:19.21.0.247]
at TRANSFORMER/[email protected]/mezz.jei.library.startup.JeiStarter.start(JeiStarter.java:129) ~[jei-1.21.1-neoforge-19.21.0.247.jar%23585!/:19.21.0.247]
at TRANSFORMER/[email protected]/mezz.jei.neoforge.startup.StartEventObserver.transitionState(StartEventObserver.java:170) ~[jei-1.21.1-neoforge-19.21.0.247.jar%23585!/:19.21.0.247]
at TRANSFORMER/[email protected]/mezz.jei.neoforge.startup.StartEventObserver.onEvent(StartEventObserver.java:120) ~[jei-1.21.1-neoforge-19.21.0.247.jar%23585!/:19.21.0.247]
at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.ConsumerEventHandler.invoke(ConsumerEventHandler.java:26) ~[bus-8.0.2.jar%23110!/:?]
at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:350) ~[bus-8.0.2.jar%23110!/:?]
at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:315) ~[bus-8.0.2.jar%23110!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.client.ClientHooks.onRecipesUpdated(ClientHooks.java:664) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.minecraft.client.multiplayer.ClientPacketListener.handleUpdateRecipes(ClientPacketListener.java:1506) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.game.ClientboundUpdateRecipesPacket.handle(ClientboundUpdateRecipesPacket.java:32) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.game.ClientboundUpdateRecipesPacket.handle(ClientboundUpdateRecipesPacket.java:13) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.registration.NetworkRegistry.handlePacketUnchecked(NetworkRegistry.java:829) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.handling.IPayloadContext.handle(IPayloadContext.java:108) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.filters.GenericPacketSplitter.lambda$receivedPacket$0(GenericPacketSplitter.java:154) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.handling.ClientPayloadContext.enqueueWork(ClientPayloadContext.java:31) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.filters.GenericPacketSplitter.receivedPacket(GenericPacketSplitter.java:154) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.filters.GenericPacketSplitter.handle(GenericPacketSplitter.java:69) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.handling.MainThreadPayloadHandler.lambda$handle$0(MainThreadPayloadHandler.java:16) ~[neoforge-21.1.176-universal.jar%23444!/:?]
at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:60) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:148) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.runAllTasks(BlockableEventLoop.java:111) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.runTick(Minecraft.java:1155) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.run(Minecraft.java:807) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at TRANSFORMER/[email protected]/net.minecraft.client.main.Main.main(Main.java:230) ~[client-1.21.1-20240808.144430-srg.jar%23443!/:?]
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?]
at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?]
at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.39.jar%23107!/:4.0]
at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.39.jar%23107!/:4.0]
at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32) ~[loader-4.0.39.jar%23107!/:4.0]
at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.39.jar%23107!/:4.0]
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.4.jar%23112!/:?]
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.4.jar%23112!/:?]
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.4.jar%23112!/:?]
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.4.jar%23112!/:?]
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.4.jar%23112!/:?]
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.4.jar%23112!/:?]
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.4.jar%23112!/:?]
at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?]
at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?]
The issue is here - it's not checking whether the compound is null, which I guess it would be when JEI is checking the recipes? I think it just needs a check similar to the one in setFluid.