Racks + Thermal Dynamics issue
eproces opened this issue ยท 2 comments
Minecolonies version
Version: 0.10.1-Release
Expected behavior
- Be able to safely connect thermal dynamics pipes to racks as with double chests.
Actual behaviour
I put a third input pipe connecting to a double rack. I had two inputs and one output working forever. As soon as I placed a filter on the input pipe it crashed. I initially thought it was a thermal dynamics issue, but it works fine on a double chest. I updated all my mods but it didn't fix it. I looked in com.minecolonies.coremod.tileentities.TileEntityRack and can't figure out what is kicking it into a loop. The error below continues recursing through .SetNeighbor to .GetOtherChest to .getCapability etc.
I'm going to keep trying to figure this out myself, since it's a pretty weird and specific problem, but I thought someone who has been doing this longer might have an insight into what's going on.
`Description: Exception in server tick loop
java.lang.StackOverflowError: Exception in server tick loop
at net.minecraft.block.properties.PropertyEnum.hashCode(SourceFile:65)
at com.google.common.collect.RegularImmutableMap.get(RegularImmutableMap.java:123)
at com.google.common.collect.RegularImmutableMap.get(RegularImmutableMap.java:115)
at net.minecraft.block.state.BlockStateContainer$StateImplementation.func_177229_b(BlockStateContainer.java:205)
at com.minecolonies.coremod.blocks.BlockMinecoloniesRack.func_176201_c(BlockMinecoloniesRack.java:131)
at net.minecraft.tileentity.TileEntity.func_70296_d(TileEntity.java:158)
at com.minecolonies.coremod.tileentities.TileEntityRack.setNeighbor(TileEntityRack.java:544)
at com.minecolonies.coremod.tileentities.TileEntityRack.getOtherChest(TileEntityRack.java:299)
at com.minecolonies.coremod.tileentities.TileEntityRack.getCapability(TileEntityRack.java:510)
at cofh.thermaldynamics.duct.attachments.filter.FilterItem.cacheTile(FilterItem.java:41)
at cofh.thermaldynamics.duct.attachments.ConnectionBase.onNeighborChange(ConnectionBase.java:130)
at cofh.thermaldynamics.duct.tiles.TileGrid.onNeighborTileChange(TileGrid.java:222)
at cofh.core.block.BlockCoreTile.onNeighborChange(BlockCoreTile.java:163)
at net.minecraft.world.World.func_175666_e(World.java:3811)
at net.minecraft.tileentity.TileEntity.func_70296_d(TileEntity.java:163)
at com.minecolonies.coremod.tileentities.TileEntityRack.setNeighbor(TileEntityRack.java:544)`
Steps to reproduce the problem
It might be tough.
- I have a double rack with one pipe with a servo out, and three pipes in. The pipe the broke everything was on the same long side as another input pipe,
- Good luck.
- ... Profit
To clarify, this is the version of MC I was using when the problem started. I have updated to various newer versions, all the way to 0.10.12-ALPHA and the issue persists. It still could be thermal dynamics related, too, but it seems like the issue comes when the rack calls markDirty() it falls into a loop.