"Hoppers push before they pull" info box is misleading and incorrect
Based on the discussion above here on the Talk page, it seems that a hopper will push and pull in one action, and then wait for the cooldown. The info box "Hoppers push before they pull" seems to suggest that only one of these actions can take place: "Next time, the hopper is empty, so it pulls." Unless I'm pretty mistaken, this is wrong. The text in the article says "Item pushes and pulls are processed in the same game tick, but pushes are processed before pulls (see schematic, right)." This sentence could be more clear about whether the pushes and pulls happen at the same time for each hopper, or just globally (again, I'm pretty sure it's each hopper). The schematic referenced contradicts the point being made, though. If corrected, the schematic/info box will not have any unique or helpful information, so I'd recommend just deleting it. krs013 (talk) 08:21, 8 April 2020 (UTC)
- Agreed. The diagram text is incorrect if more than one item was in the chest, because it would both push and pull following the 1st cooldown. The idea behind the diagram might be helpful if it went through the process starting with 2 items in the chest. Then at least you could see how the process of pull / push + pull / push. GreenBeing (talk) 13:57, 1 May 2020 (UTC)
- I have rewritten a lot of the behavior descriptions and I think this issue has been corrected. jahunsbe (talk) 17:10, 4 May 2020 (UTC)
Should section be combined?
It appears that, in the list of items hoppers interact with, that Furnace, Blast Furnace, and Smokers are all covered by the paragraph under Smoker. Should the three items be combined, perhaps with commas or a header?
"the hopper will collect dropped items in the order in which they landed on the hopper"
I tried dropping an item into the start of a water stream that led to a locked hopper, and another item directly onto the hopper. The item that was dropped first was sucked in first after the hopper was unlocked, instead of the item that contacted the hopper first. This seems to indicate either the order is arbitrary (as in Bedrock) or is based on the entity ID or creation time.
Implementing functionality to keep track of which entity _landed_ first would probably be really messy, you'd have to involve the physics sim, and have the hopper store a list of entities or something. They probably just implemented sucking items using the equivalent of a direct GetEntitiesInBoundingBox call, and the order goes by whatever ordering that method returns. 184.108.40.206 11:59, 11 April 2021 (UTC)