Project Red - Fabrication

Project Red - Fabrication

19M Downloads

Crash using Crafting Pipes

xmanu opened this issue ยท 9 comments

commented

Hi. First let me note that I really love this mod and how item routing and crafting can be automated. In the newest version (4.3.7 build 32) I experienced sudden crashes when using crafting pipes. Perhaps you guys could look into it?
Im playing Attack of the B-Team and was updating to the newest version which includes ProjectRed 4.3.7 build 32. I crashed instantly after loading a world which had crafting pipes in it. So I went back and removed all crafting pipes. After this everything worked. Unfortunately even placing them back and inserting a crafting chip will result in crashes.
Thanks for this great mod.

2014-04-12 00:24:13 [SERVER] [SEVERE] Encountered an unexpected exception ReportedException
net.minecraft.util.ReportedException: Ticking tile entity
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:674)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:587)
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:129)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:484)
    at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:583)
Caused by: java.lang.NullPointerException
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(requests.scala:191)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1.apply(requests.scala:155)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1.apply(requests.scala:155)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:13)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:25)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1.apply$mcV$sp(requests.scala:155)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1.apply(requests.scala:154)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1.apply(requests.scala:154)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:13)
    at mrtjp.projectred.transportation.RequestBranchNode.doCraftReq(requests.scala:153)
    at mrtjp.projectred.transportation.RequestBranchNode.doRequest$1(requests.scala:50)
    at mrtjp.projectred.transportation.RequestBranchNode.<init>(requests.scala:52)
    at mrtjp.projectred.transportation.CraftingInitializer$$anonfun$getPotentialSubPromises$2.apply(requests.scala:600)
    at mrtjp.projectred.transportation.CraftingInitializer$$anonfun$getPotentialSubPromises$2.apply(requests.scala:598)
    at scala.collection.Iterator$class.foreach(Iterator.scala:727)
    at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
    at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
    at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
    at mrtjp.projectred.transportation.CraftingInitializer.getPotentialSubPromises(requests.scala:598)
    at mrtjp.projectred.transportation.CraftingInitializer.calculateMaxPotentialSets(requests.scala:564)
    at mrtjp.projectred.transportation.CraftingInitializer.finalizeInteraction(requests.scala:577)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1$$anonfun$apply$mcV$sp$4.apply(requests.scala:204)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1$$anonfun$apply$mcV$sp$4.apply(requests.scala:204)
    at scala.collection.TraversableLike$$anonfun$filterNot$1.apply(TraversableLike.scala:274)
    at scala.collection.TraversableLike$$anonfun$filterNot$1.apply(TraversableLike.scala:274)
    at scala.collection.TraversableLike$$anonfun$filter$1.apply(TraversableLike.scala:264)
    at scala.collection.Iterator$class.foreach(Iterator.scala:727)
    at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
    at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
    at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
    at scala.collection.TraversableLike$class.filter(TraversableLike.scala:263)
    at scala.collection.AbstractTraversable.filter(Traversable.scala:105)
    at scala.collection.TraversableLike$class.filterNot(TraversableLike.scala:274)
    at scala.collection.AbstractTraversable.filterNot(Traversable.scala:105)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(requests.scala:204)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1.apply(requests.scala:155)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1$$anonfun$apply$mcV$sp$1.apply(requests.scala:155)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:13)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:25)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1.apply$mcV$sp(requests.scala:155)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1.apply(requests.scala:154)
    at mrtjp.projectred.transportation.RequestBranchNode$$anonfun$doCraftReq$1.apply(requests.scala:154)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:13)
    at mrtjp.projectred.transportation.RequestBranchNode.doCraftReq(requests.scala:153)
    at mrtjp.projectred.transportation.RequestBranchNode.doRequest$1(requests.scala:50)
    at mrtjp.projectred.transportation.RequestBranchNode.<init>(requests.scala:52)
    at mrtjp.projectred.transportation.RequestRoot.<init>(requests.scala:341)
    at mrtjp.projectred.transportation.RequestConsole.makeRequest(requests.scala:669)
    at mrtjp.projectred.transportation.ChipStockKeeper$$anonfun$update$1$$anonfun$apply$mcVI$sp$1.apply$mcV$sp(ChipStockKeeper.scala:55)
    at mrtjp.projectred.transportation.ChipStockKeeper$$anonfun$update$1$$anonfun$apply$mcVI$sp$1.apply(ChipStockKeeper.scala:43)
    at mrtjp.projectred.transportation.ChipStockKeeper$$anonfun$update$1$$anonfun$apply$mcVI$sp$1.apply(ChipStockKeeper.scala:43)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:13)
    at mrtjp.projectred.core.utils.LabelBreaks.label(LabelBreaks.scala:25)
    at mrtjp.projectred.transportation.ChipStockKeeper$$anonfun$update$1.apply$mcVI$sp(ChipStockKeeper.scala:43)
    at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:141)
    at mrtjp.projectred.transportation.ChipStockKeeper.update(ChipStockKeeper.scala:42)
    at mrtjp.projectred.transportation.RoutedInterfacePipePart$$anonfun$updateServer$1.apply(RoutedInterfacePipePart.scala:63)
    at mrtjp.projectred.transportation.RoutedInterfacePipePart$$anonfun$updateServer$1.apply(RoutedInterfacePipePart.scala:63)
    at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
    at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108)
    at mrtjp.projectred.transportation.RoutedInterfacePipePart.updateServer(RoutedInterfacePipePart.scala:63)
    at mrtjp.projectred.transportation.RoutedJunctionPipePart.update(RoutedJunctionPipePart.scala:187)
    at codechicken.multipart.TileMultipart$$anonfun$updateEntity$1.apply(TileMultipart.scala:85)
    at codechicken.multipart.TileMultipart$$anonfun$updateEntity$1.apply(TileMultipart.scala:85)
    at codechicken.multipart.TileMultipart.operate(TileMultipart.scala:79)
    at codechicken.multipart.TileMultipart.func_70316_g(TileMultipart.scala:85)
    at net.minecraft.world.World.func_72939_s(World.java:2209)
    at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:550)
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:668)
    ... 4 more
commented

I can confirm this too and i little bit change this. Because if you place just one Liquicrafter + one crafting pipes, everything works fine, but if you connect another one liquicrafter + crafting pipe to existing system, all your next crafting request crasch the game. So you have to build for each Automatic Craft own separe system, but it is insane :D for example i cant imagine system for 30-40 automatic craft recipies :D

commented

See #456

commented

I don't feel #456 is entirely the same issue. I can reproduce the crash using three chests, an interface pipe, two crafting pipes and a request pipe, with the appropriately configured cards in all of them. Unless at the code level it is the same issue, but your comment does not state that.

commented

Yeah same with me, can reproduce on AotBT with just properly configured crafting pipes and nothing else.

commented

Similar at code level, see #447.

commented

I want to second this error, I don't have a world startup crash, but I did get the same exact exception when attempting to craft. I tried testing a few things and corrupted my level.dat about three times. The best I can determine is that the system will have problems when more than one crafting pipe is on the network. I could get it to work ok with only 1 pipe, but as soon as I added a second I would get the crash above when attempting to craft. I thought it might have been a corrupted network card so I creatived in one and still got the crash.

Crash Report: http://pastebin.com/95arMHt5

commented

I can confirm this.

commented

Same with AotBT

commented

Can also confirm this (with AotBT) - as soon as I try to request an item that has to go through a crafting pipe I crash my own client or the whole server.