Skip to content

Error in server log when trying to place an MI pipe above build height limit #1236

@James103

Description

@James103

When placing any MI pipe above the build height limit, the following error is sent to the server log:

[08:23:53] [Server thread/ERROR] [minecraft/ServerPacketListener]: Failed to handle packet net.minecraft.network.protocol.game.ServerboundUseItemOnPacket@44cb59d2, suppressing error
java.lang.NullPointerException: Cannot invoke "aztech.modern_industrialization.pipes.impl.PipeBlockEntity.addPipe(aztech.modern_industrialization.pipes.api.PipeNetworkType, aztech.modern_industrialization.pipes.api.PipeNetworkData)" because "pipeBe" is null
	at TRANSFORMER/modern_industrialization@2.3.16/aztech.modern_industrialization.pipes.impl.PipeItem.tryPlaceAt(PipeItem.java:147) ~[Modern-Industrialization-2.3.16.jar%231006!/:?] {re:computing_frames,re:classloading}
	at TRANSFORMER/modern_industrialization@2.3.16/aztech.modern_industrialization.pipes.impl.PipeItem.tryPlace(PipeItem.java:114) ~[Modern-Industrialization-2.3.16.jar%231006!/:?] {re:computing_frames,re:classloading}
	at TRANSFORMER/modern_industrialization@2.3.16/aztech.modern_industrialization.pipes.impl.PipeItem.useOn(PipeItem.java:64) ~[Modern-Industrialization-2.3.16.jar%231006!/:?] {re:computing_frames,re:classloading}
	at TRANSFORMER/neoforge@21.1.215/net.neoforged.neoforge.common.CommonHooks.onPlaceItemIntoWorld(CommonHooks.java:615) ~[neoforge-21.1.215-universal.jar%23687!/:?] {re:mixin,re:classloading,pl:mixin:APP:lootjs.mixins.json:forge.CommonHooksMixin from mod lootjs,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.world.item.ItemStack.useOn(ItemStack.java:360) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:computing_frames,pl:accesstransformer:B,re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:emi.mixins.json:ItemStackMixin from mod emi,pl:mixin:APP:apothic_enchanting.mixins.json:ItemStackMixin from mod apothic_enchanting,pl:mixin:APP:apotheosis.mixins.json:ItemStackMixin from mod apotheosis,pl:mixin:APP:supplementaries.mixins.json:ItemStackAccessor from mod supplementaries,pl:mixin:APP:immersiveui-common.mixins.json:ItemStackMixin from mod immersiveui,pl:mixin:APP:puffish_skills.mixins.json:ItemStackMixin from mod puffish_skills,pl:mixin:APP:notenoughanimations.mixins.json:ItemStackRenderStateMixin from mod notenoughanimations,pl:mixin:APP:placebo.mixins.json:ItemStackMixin from mod placebo,pl:mixin:APP:usefulhats.mixins.json:CommonItemStackMixin from mod usefulhats,pl:mixin:APP:mixins.artifacts.common.json:item.ItemStackMixin from mod artifacts,pl:mixin:APP:azurelib.neo.mixins.json:ItemStackMixin_AzItemStackIdentityRegistry from mod azurelib,pl:mixin:APP:azurelib.neo.mixins.json:ItemStackMixin_AzItemAnimatorCache from mod azurelib,pl:mixin:APP:irons_spellbooks.mixins.json:ItemStackMixin from mod irons_spellbooks,pl:mixin:APP:eternal_starlight-common.mixins.json:ItemStackMixin from mod eternal_starlight,pl:mixin:APP:glitchcore.mixins.json:MixinItemStack from mod glitchcore,pl:mixin:APP:showcaseitem.mixins.json:ItemStackMixin from mod showcaseitem,pl:mixin:APP:mixins.transmog.common.json:ItemStackMixin from mod transmog,pl:mixin:APP:geckolib.mixins.json:common.ItemStackMixin from mod geckolib,pl:mixin:APP:ars_nouveau.mixins.json:ItemStackMixin from mod ars_nouveau,pl:mixin:APP:ars_nouveau.mixins.json:perks.UnbreakablePerk from mod ars_nouveau,pl:mixin:APP:starcatcher.mixins.json:RemoveFishSizeAndWeightWhenStacking from mod starcatcher,pl:mixin:APP:deeperdarker.mixins.json:ItemStackMixin from mod deeperdarker,pl:mixin:APP:FarmAndCharm-neoforge.mixins.json:ItemStackMixin from mod farm_and_charm,pl:mixin:APP:kubejs.mixins.json:ItemStackMixin from mod kubejs,pl:mixin:APP:kubejs.mixins.json:ItemStackClientMixin from mod kubejs,pl:mixin:APP:fastsuite.mixins.json:ItemStackMixin from mod fastsuite,pl:mixin:APP:rep_ae2_bridge.mixins.json:ItemStackMixin from mod rep_ae2_bridge,pl:mixin:APP:tesseract_api.mixins.json:DataComponentTooltipProviderMixin from mod tesseract_api,pl:mixin:APP:tesseract_api.mixins.json:event.ItemHurtEventMixin from mod tesseract_api,pl:mixin:APP:legendarytooltips.mixins.json:ItemStackMixin from mod legendarytooltips,pl:mixin:APP:create.mixins.json:ItemStackMixin from mod create,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.level.ServerPlayerGameMode.useItemOn(ServerPlayerGameMode.java:386) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.network.ServerGamePacketListenerImpl.handleUseItemOn(ServerGamePacketListenerImpl.java:1123) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.handle(ServerboundUseItemOnPacket.java:42) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:classloading}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.handle(ServerboundUseItemOnPacket.java:10) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:classloading}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:27) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,re:classloading}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.TickTask.run(TickTask.java:18) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:classloading,re:mixin}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:148) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,re:computing_frames,re:classloading}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:872) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:170) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:855) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:849) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:132) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:821) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.mixinextras$bridge$managedBlock$299(MinecraftServer.java) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.wrapOperation$zca000$modernfix$managedBlock(MinecraftServer.java:2154) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:826) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:712) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.MinecraftServer.lambda$spin$2(MinecraftServer.java:267) ~[client-1.21.1-20240808.144430-srg.jar%23686!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
	at java.base/java.lang.Thread.run(Thread.java:1583) [?:?] {re:mixin}

world.setBlock(pos, ...) will fail and world.getBlockEntity(pos) will return null for positions outside the buildable range, including when above the build height limit.

world.setBlock(pos, MIPipes.BLOCK_PIPE.get().defaultBlockState().setValue(PipeBlock.WATERLOGGED, waterLog), 3);
if (!world.isClientSide()) {
PipeBlockEntity pipeBe = (PipeBlockEntity) world.getBlockEntity(pos);
pipeBe.addPipe(type, defaultData.clone());

Expected result: no error is sent to the server log and a message ("Height limit for building is 319") is sent to the client's actionbar, just like when trying to place any other block.

Tested in Craftoria 1.28.0 which includes Modern Industrialization 2.3.16.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions