Pretty Pipes

Pretty Pipes

11M Downloads

Dependent crafts should wait on each other's completion

Ellpeck opened this issue ยท 2 comments

commented
commented

OH, it turns out that this seemingly happens when a result item enters the storage network and is immediately sent to the next craft before the original active craft has a chance to register it as finished??

Dependent crafts should probably just wait on each other's completion! This would also help with performance & maintain a stricter ordering of crafts

There's also a sort of duplication going on at the moment where

  • crafts export their result items to the intended destination
  • crafts actively pull their input items

which means that, for dependent crafts, both happens - dependent crafts should probably not have a result destination and just count as finished once their item enters the network again!

commented

Actually, it seems like that output is never actually marked as received either. Active craft example:

	BlockPos{x=401, y=98, z=2254}=ActiveCraft{pipe=BlockPos{x=401, y=98, z=2254}, moduleSlot=0, travelingIngredients=[], ingredientsToRequest=[], resultDestPipe=BlockPos{x=401, y=97, z=2253}, resultStackRemain=1 prettypipes:blank_module, inProgress=true, canceled=false}

There are no traveling ingredients and no ingredients to request anymore, as the blank module has (seemingly?) already been crafted and returned into the storage.