SirSengir/BuildCraft — pull request #347 by CovertJaguar (2012-10-12 23:14:59+00:00)
Title: Major pipe routing and net sync rework

This closes #328 and makes a number of improvements, including: true path randomization, splitting stacks when filling inventories, and faulty client routing (client sees all inventories as empty).

Fast moving objects are a little jerky, but generally look alright. Slow objects are perfect.

The IPipedItem cache in PipeManager was removed because it added unneeded complexity and made it nearly impossible to do server/client sync without tossing the cached item anyway. I would suggest replacing the cache with an object pool sometime in the future if object creation overhead is a performance issue. EntityData may in fact benefit the most from a pool, since IPipedItems are generally persistent for the life of the item.