Talk:Hopper

From Minecraft Wiki
Jump to: navigation, search

Name[edit]

The name "hopper" does not "get it's name from" the hopping behavior of items. Hopper is a very old term, used in all sorts of machinery and industry. It's the basket you throw stuff in on the top of a woodchipper, or the thing on a paintball gun that holds the balls and feeds them into the gun. Basically, a hopper does exactly what this one does. 216.160.90.19 19:58, 3 January 2013 (UTC)

The hopper looks kinda like the Cauldron yet the hopper is stone and the cauldron is iron Zigzagar 21:55, 3 January 2013 (UTC)
The hopper can interact with a redstone comparator and outputs a signal of equal strength to the 'fullness' percentage of the hopper. 94.172.54.244 03:45, 7 January 2013 (UTC)
Why not call it a funnel Zigzagar 19:18, 12 January 2013 (UTC)
The hopper is iron, not stone Zmcminer 13:27, 2 April 2013 (UTC)

Version history[edit]

The hopper was not added in classic, and classic did not have snapshots, the link needs fixing. Pokechu22 23:18, 3 January 2013 (UTC)

Gallery links[edit]

The second picture down on the left links to a completely different picture. Someone who knows how should try to fix this. --96.237.54.85 03:02, 5 January 2013 (UTC)

Edit: Problem solved. --198.228.201.146 14:33, 19 January 2013 (UTC)

Mod Mention[edit]

There shouldn't be a mention of the Allocator mod? The hopper has pretty much same functionality as the block. The only difference is that hopper can be placed in any direction and the allocator works with furnaces and can have filters. (A similar situation with Trapped Chests, by the same modder) Mod page: Pfaeff's Mod- -187.126.48.40 22:05, 7 January 2013 (UTC)

Not without a source from a Mojangsta stating that the original idea or implementation came from a mod. Specifically, if a Mojangsta were to only say that the idea/implementation of the hopper (or the trapped chest) came from a mod, that would be all we could say, but if they pointed out the specific mod, then we could do the same. ディノ千?!? · ☎ Dinoguy1000 02:20, 8 January 2013 (UTC)

Timing questions[edit]

The article mentions a rate of 3 items/second. Is this exact? As I recall, there are 20 ticks/second, and 3 doesn't go evenly into 20. I'm wondering if it's one item every 6 ticks, or even 7. However, I'm not sure of a good way to verify this. Generilisk 20:48, 10 January 2013 (UTC)

The code says it's one item every 7 ticks. Therefore the exact rate is 3 items per 1.05 seconds or about 2.86 items/second. --mgr 01:29, 11 January 2013 (UTC)
Update: in 13w04a snapshot speed was changed to: one item every 8 ticks. Exact rate is now 2.5 items/second or 1 item every 0.4 seconds. --mgr 15:05, 10 February 2013 (UTC)

Inventory access[edit]

Can you access the hoppers 5-slot internal inventory by right-clicking on it? --96.237.54.85 03:23, 11 January 2013 (UTC)

Yes, just not while holding shift. #trigger_hurt(I|T|C) Check out my project! 12:40, 11 January 2013 (UTC)

Thanks. This should probably be put in the actual page somewhere. --198.228.201.156 21:11, 11 January 2013 (UTC)

On another note I wondered: could this be used on multiplayer to siphon an ender chest?

On the wiki page, it specifically states an ender chest can not be used as input or output to/from a hopper. Zmcminer 13:31, 2 April 2013 (UTC)

Forking to Different Item Pipelines[edit]

I discovered a way to fork items into different item "pipelines" using redstone. Suppose you wanted to have one input--a chest, hopper, etc., that piped items to multiple outputs--a bank of furnaces, for example.

Place down two hoppers adjacent to each other. On top of each, place a minecart track (with shift + click)--I find that powered track (turned off) works best since it gives friction. Place a minecart with chest on top of the rails, and push it so that it is roughly in the middle of the two hoppers. Then, place a hopper on either side above the cart, so that it loads into the cart.

With this setup, items will pipe into the cart from above, and you can select which output hopper they go into by turning them on/off. This way, you could, for example, load one coal into each furnace, and then 8 iron ore into each, by getting the timing right.

It's not very space efficient and I'm trying to make a better design, but no luck so far. –Preceding unsigned comment was added by 35.11.145.60 (talk) at 04:08, 12 January 2013‎ (UTC). Please sign your posts with ~~~~

EDIT: As of 13w02b, hoppers will pull from either side of a double chest, so, forking just requires a double chest now. Much easier. –Preceding unsigned comment was added by 35.11.145.60 (talk) at 04:20, 12 January 2013 (UTC). Please sign your posts with ~~~~

EDIT 2: The hoppers are very uneven when pulling from a double chest, if a hopper is piping into a double chest, which has 2 hoppers under it, only the hopper directly under the input hopper will receive items. 197.87.195.132 08:48, 17 March 2013 (UTC)

Try putting a block+torch next to the two output hoppers so that one is always powered/deactivated when the other is unpowered/active, and use a 4-clock (possibly incorporating the block+torch) to flip it back and forth.
The forums are a better place to work these things out (lots of people on the forums, unlike a wiki talk page). Then come back and write up the conclusion in the wiki so it will be there for others. : )
Munin295 · Grid Book and Quill.png Grid Stone Pickaxe.png · 09:11, 17 March 2013 (UTC)
Apparently something has changed. When i place two hoppers vertically they both pull and push 50/50. Try constructing the scheme with the 3 chests on this page which supposedly shows that the middle chest won't receive any items. Well as of 1.8.7 it actually gets the same amount of items as the chest down below. It's outdated, somebody should change that. 91.20.180.111 13:43, 13 July 2015 (UTC)
I just tested it in 1.8.7 and I don't see the behavior you describe. All items still go to the bottom chest. Are you using the block+torch method described above to modify the hopper behavior? (I mean otherwise why are you posting this in this thread?) Also, make sure you're placing the items in the top chest, not the top hopper. —munin · Grid Book and Quill.png Grid Stone Pickaxe.png · 19:46, 13 July 2015 (UTC)

Containers required or optional?[edit]

Can a hopper scoop up free-floating entities, such as objects swept in by a water flow? The wiki entry gives the impression that all hopper interactions require other container blocks such as chests and dispensers. The hopper's shape, however, suggests the possibility of scooping up stuff from outside. Curious, but w/o access to Minecraft at this time, so can't test for myself. –Preceding unsigned comment was added by 4.243.137.6 (talk) at 20:26, 4 February 2013‎ (UTC). Please sign your posts with ~~~~

Yes, any item entities which fall on the top side of a hopper are transferred into the hopper's contents. It seems to sometimes take some time for the hopper to realize they're there (fractions of a second, usually, but it's not instantaneous), but once it does it will transfer entire stacks at a time (rather than the transfer rate it uses to push or pull items to or from containers).
This is described in the article's introduction, but it's easy to miss since there are a lot more details to cover about the container transfer mechanics.
Munin295 · Grid Book and Quill.png Grid Stone Pickaxe.png · 20:27, 7 February 2013 (UTC)
Thanks! 66.249.173.235 19:22, 14 February 2013 (UTC)

Transfer rate changed?[edit]

The "one item per 7 game ticks" was confirmed in the code by mgr on Jan 11. But the transfer rate seems to have changed in 13w04a (Jan 24). A hopper clock I built in 02b required about 85 items to maintain a 1 minute period (consistent with a 7-tick rate), but starting in 04a it requires precisely 75 items (I only recently went back to find where it changed). This makes me think the transfer rate has changed to one item per 8 game ticks (precisely 2.5 items per second). Can someone confirm this change in the code (in any recent version), or tell me I'm wrong?.

Munin295 · Grid Book and Quill.png Grid Stone Pickaxe.png · 20:19, 7 February 2013 (UTC)

You're right. Source now says 8 game ticks per item. --mgr 15:10, 10 February 2013 (UTC)
Was this changed again? I made a small test setup:https://imgur.com/a/kurML and it seems that it is 7 game ticks per item. --InterplanetaryEngineer (talk) 10:45, 26 November 2017 (UTC)

What happens to experience from furnaces?[edit]

Apparently, a hopper below a furnace will take finished product. But when a player takes the finished product, they also get experience... what happens to the experience when a hopper empties it instead? --Mental Mouse 23:30, 15 February 2013 (UTC)

As of 13w07a, the experience just disappears. I have no idea if this is "working as intended" or will be changed at some point. 142.68.177.220 14:37, 18 February 2013 (UTC)

Creating Filters[edit]

How do you create a hopper that retains its original items so you can use it as a filter? Sparx13 12:02, 20 February 2013 (UTC)

Use a redstone comparator to measure how full it is, and turn the hopper off if it starts to get low. For example (though the hopper should be facing the chest), this will keep the number of items in the hopper from falling below 22:
The forums may be a better place to ask questions like this, you'll get more responses and faster.
Munin295 · Grid Book and Quill.png Grid Stone Pickaxe.png · 17:17, 20 February 2013 (UTC)
Thanks! Sparx13 21:49, 27 March 2013 (UTC)
Well, that example was written before powering a hopper would stop it from accepting item entities. With the way hoppers work now, you should use two hoppers: the top one should face the side so it won't push items down and acts as the filter, controlling whether the bottom one pulls items from the top one.
Munin295 · Grid Book and Quill.png Grid Stone Pickaxe.png · 00:20, 28 March 2013 (UTC)

Upwards?[edit]

Can hoppers be used to transport items upward? I am trying to get a minecart to a dispenser after use, and it needs to travel upwards. If this can't be done, how else can I get the minecart upwards? Thanks! Sambam124 02:43, 14 March 2013 (UTC)

Once I saw a video where people used droppers and a glass column to transport items upwards. From the side, it looked something like this:

I know that this is about hoppers and not droppers, but you can lead hoppers to the dropper. --The Enderpenguin 02:42, 19 July 2013 (UTC)

Hoppers will only move items downward or to the side, but try using upward-pointing droppers powered by a clock. -- Orthotope 03:51, 14 March 2013 (UTC)
How do I get it to face upwards? Place a block above where I want it and place it? Sambam124 00:09, 15 March 2013 (UTC)
Droppers are placed similarly to pistons; if you look down, it will be placed facing upward. -- Orthotope 02:01, 15 March 2013 (UTC)
Hmm...not working...Sambam124 22:23, 15 March 2013 (UTC)
look at your feet, jump, while in the air place it. you are welcome!Robstar14... anything but! 18:33, 2 May 2013 (UTC)

There should be an update or at least a mod with side hoppers/up hoppers. I mean come on we're living in the new millennium here people... Good talk, glad we discussed this. Carry on now.

Hopper Priority/Multi-Auto Furnace Setup[edit]

I don't quite understand hopper priority. I plan on making an automatic furnace system. My plan is to have a setup like this:


   r   f
    C C        Key C = Chest
    H H            H = Hopper
   CC CC           F = Furnace
    H H            r = raw ingrediants (ore/food)
    HHF            f = fuel (coal, logs)

I would like to make a system that divides the fuel and raw mats into three furnaces. Would a system made like so divide the contents of the original chest into the last three Chests equally (12 items in original, 4 in each of the last ones)

       C
       H
     HHCHH
     H H H
     C C C

I believe that the items would be slower in the two side hopper-lanes; am I correct in thinking that too?

72.224.213.13 20:23, 4 June 2013 (UTC)EnderLich678

Chunk loading[edit]

Is the fact* that Hoppers will keep chunks loaded when outputting across a chunk boundary omitted intentionally, or just not yet documented here? (Or is it here and I just missed it?) *I say "fact", but have no first-hand experience in the matter; I'm trusting what sethbling said in a video. --timrem (talk) 19:16, 20 November 2013 (UTC)

There are a number of ways to keep chunks loaded: hoppers moving items across chunk borders, pistons pushing blocks across chunk borders, nether portals moving entities across dimensions, etc. The subject is probably better addressed in a consolidated topic (chunks, maybe, or a tutorial) rather than individually on a specific redstone component page.
munin · Grid Book and Quill.png Grid Stone Pickaxe.png · 20:06, 20 November 2013 (UTC)

Old brewing method?[edit]

This has absolutely no use, but it's interesting. If you put down a brewing stand 2 blocks underground, a hopper leading to it, and a cauldron on top of your 'surface', aka right above the hopper, and fill the cauldron with water, it looks a lot like the old brewing method. Since the hopper feeds the brewing stand potion ingredients, if the items fall into the middle part of the cauldron. Good for looks, maybe for space. However, the brewing stand must still be interacted with to add water bottles and take out the potions. I think with another hopper you can take out potions and add water bottles. Any idea if that last bit is possible? –Preceding unsigned comment was added by Randomwitherskeleton (talkcontribs) at 22:21, 15 June 2014 (UTC). Please sign your posts with ~~~~

Quite possible, if a bit complicated. Hoppers feeding into the side of a brewing stand will add bottles, and one below it will remove them. The tricky part is that the hopper below will remove bottles immediately, unlike furnaces where it will only take the finished products, so it has to be kept deactivated most of the time. You can put a comparator next to the top hopper (the one under the cauldron), connected to a 20-second delay circuit with an inverted output leading to the bottom hopper. This will briefly activate it to remove potions once they are done brewing. The supply of water bottles will need to be deactivated at the same time. -- Orthotopetalk 07:06, 16 June 2014 (UTC)

Activated vs. enabled confusion?[edit]

An unsigned IP has described the article as confusing because it uses the term "activated" for a "disabled" hopper. Currently the article uses the terms "activated" and "deactivated" in the same way that other redstone components do (activated if powered, etc.) but then switches to using the terms "enabled" and "disabled" to describe the actual behavior because an activated hopper doing nothing sounds wrong. Is this confusing to others or does this make sense? —munin · Grid Book and Quill.png Grid Stone Pickaxe.png · 15:06, 25 December 2015 (UTC)

I think it could be confusing, it just really isn't to me since I already know what they do. Though I would think of "activated" as meaning an "active" hopper. So maybe we should switch the wording to "disabled" to prevent from using a term inconsistently, or the word "powered" and just explain that when powered it disactivates. KnightMiner t/c 04:14, 29 January 2016 (UTC)

Do hoppers really pull before they push?[edit]

The schematic with 3 chests is used as an explanation for the hoppers' pull-first nature. But I have an opposite interpretation for this: hoppers pushes items first, and then pulls. That is, at the game tick when the upper hopper is to be processed, it first tries to push an item (but fails since it's empty) and then pulls an item from the chest above. At the same tick the lower one tries to push an item (but fails too) and then pulls an item from the hopper above. What do you think? If hoppers were pulling first, the middle chest would do receive items because the upper one would first pull an item from the chest, then pushes it to the middle chest. The lower one would try to pull an item but would fail. --Depressed pho (talk) 14:35, 3 March 2016 (UTC)

The top hopper pulls an item from the top chest, but before it can push it to the middle chest, the bottom hopper also pulls from the middle chest.
Try putting a hopper under a horizontal hopper pipe. If hoppers pushed before they pulled, the bottom hopper would never get an item, but that's not the case. —munin · Grid Book and Quill.png Grid Stone Pickaxe.png · 17:31, 3 March 2016 (UTC)
H1
H2
H3
Hd
Thanks for your explanation, but... Isn't that because when a hopper pushes an item to another hopper, it resets cool-down counter of both hoppers? That is, in this schematic, when H1 pushes an item to H2, both H1 and H2 are suspended for 8 game ticks so Hd has a time to pull it from H2. If this weren't the case, the item transfer from H1 to H3 would be instantaneous but of course it's not. --Depressed pho (talk) 04:10, 4 March 2016 (UTC)
C
H1
H2
H3
Hd
You might be on to something, Depressed pho. Keep in mind that hoppers only pull from the top, not the sides. In my diagram on the right, I have added a chest over H1. Now, hook a comparator up to H2. It appears that comparators make their check after the hopper's push/pull. First tick, H1 has nothing to push, then pulls from C, then H1 goes into cooldown until game tick 9. Ninth tick, H1 pushes and then Hd pulls, and then the comparator checks H2 and finds nothing. If you lock hopper Hd, then the comparator will detect the items as they flow through H2 because Hd will not pull and H3 (as with all hoppers) can't pull from the side. --RadioRoscoe (talk) 20:40, 16 March 2018 (UTC) EDIT: added cooldown info --RadioRoscoe (talk) 14:51, 19 March 2018 (UTC)
After consulting the 1.12 source code (see class TileEntityHopper), I have confirmed that indeed, hoopers push before they pull. I will make an attempt to edit the page with this new information. --RadioRoscoe (talk) 03:33, 18 March 2018 (UTC)

Really dark hopper images in infobox?[edit]

Why are the main images of the hopper (recently multiplied to include all rotations) so dark of colour? It appears to me the images are captured in shadow, and I find it kind of hard to see. I wondered why the images aren't of natural brightness. – Jack McKalling (tcp) 19:13, 5 November 2017 (UTC)

Minecraft Wiki talk:Community portal#Thumbnails of images are dark. – Dentedharp90041tce 11:08, 26 November 2017 (UTC)
Ok, thanks. I didn't realize it was discussed there already. – Jack McKalling (tcp) 22:33, 26 November 2017 (UTC)

Breaking table might need some attention[edit]

When I broke my hopper by hand (my pick ran out) I still got the hopper it might be a bug in pe bu I trout I would mention it Justendouma (talk) 04:03, 6 December 2017 (UTC)

Hopper Pipes[edit]

The Wiki currently states:

A sequence of three or more hoppers, each pushing items into the next, is known as a hopper pipe. Horizontal hopper pipes simply transfer items at the expected rate of 2.5 items per second, but vertical hopper pipe behavior can be difficult to understand because the hoppers are both pulling and pushing items between them. If a vertical hopper pipe pulls items from a container, it will simply transfer items at 2.5 items per second (because the transfer rate is limited by the first hopper pulling items from the container), but if a stack of items is in a vertical pipe (because an item stack entity was sucked in, or placed there by a player) the items will be transferred twice as fast because the hopper with the item stack is pushing items down while the hopper below it is also pulling items down.

Although it is true that a vertical pipe will transfer at 2.5/s rate if it is pulling from a container, we might want to mention that the items arrive at the end of the pipe more quickly than a horizontal pipe. The formula is:

(#ofHoppers + 2) - (#ofHoppers mod 2) / 2

Therefore:

Time in redstone ticks for 1st item to arrive in output chest:

#ofHoppers Vert Time Horz Time
1 1 1
2 2 2
3 2 3
4 3 4
5 3 5
6 4 6
7 4 7
8 5 8
9 5 9

--173.18.27.111 02:32, 4 March 2018 (UTC)

Four Tick Cooldown Does Not Add Up[edit]

A true 4 tick cooldown in between hopper actions would only yield a transfer rate of 2 items per second, rather than the stated 2.5 items per second. See table below, where H = hopper action and C = cooldown:

1 2 3 4 5 6 7 8 9 10
H C C C C H C C C C

Now see how a three tick cooldown does yield the expected 2.5 items per second (average rate over 2 seconds):

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
H C C C H C C C H C C C H C C C H C C C

Does anyone want to disprove this? --RadioRoscoe (talk) 20:54, 16 March 2018 (UTC)

Ok, after consulting the 1.12 source code, I see how it works. When a hopper either pushes or pulls, then the cooldown time is set to 8 game ticks. The hopper update function decrements the cooldown time each tick before it starts a push/pull action. The table below is in game ticks, not redstone ticks:
game tick 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
hopper action H - - - - - - - H - - - - - - - H - - -
cooldown 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 8 7 6 5
In this way, a transfer rate of 2.5 items per second is achieved. The main page states that the hopper waits 8 game ticks, which is not true. As you can see from the table above, the wait is actually 7 games ticks. I will edit the main page with this new info. --RadioRoscoe (talk) 03:30, 18 March 2018 (UTC)
Just small note. Although you observe only 7 ticks of waiting within the sequence, this does mean 8 ticks in programming. You can see by subtracting the tick counters in your table. There may be 7 ticks between the 1st and 9th tick, but 9 minus 1 is still 8. Similar to how the 9th day of a month is 8 days after the 1st. Don't just count the items between starting and end point of a sequence traversion, or you'll be forgetting the final step. – Jack McKalling [ User page Talk page Contributions ] 20:12, 18 March 2018 (UTC)
Fair enough. I had read it that you would actually have 8 game ticks of waiting, which would be incorrect. --RadioRoscoe (talk) 22:20, 18 March 2018 (UTC)
It's quite common to think that way, undeniably. The transition count "between" two points can easily be mistaken as the count of points between them. But a transition between two points is actually about counting the gaps between the numbers instead. Imagine it as asking yourself "how many steps do I need from this number to get to the other one". Otherwise you'd be in this case, forgetting that the initial game tick hasn't happened yet in the phrasing "wait until pushing/pulling again", and so you have to count it with the rest. – Jack McKalling [ User page Talk page Contributions ] 23:10, 18 March 2018 (UTC)
Perhaps I am being too pedantic, but I do not think that your example applies. A better example would be, on the 1st of the month, to say, "I don't have to go to work for 8 days". My "cooldown" time (days off) is not 8, but 7. I would go back to work on the 9th. Yes, 9 minus 1 is 8, but 8 is not my "cooldown" days off. –Preceding unsigned comment was added by RadioRoscoe (talkcontribs) at 15:40, 19 March 2018‎ (UTC). Please sign your posts with ~~~~
You're perfectly right, from one perspective. The number stems from the programming though, where the number represents the amount of ticks the hopper takes before its pattern repeats. That repetition starts right at the end of the game tick in which it has just pushed/pulled for the first time, and ends at the end of the game tick in which it has just repeated doing that. That is a transition or progression of 8 whole game ticks, but indeed only 7 intermediate waiting ticks. That progression phase of 8 ticks here is an important aspect for in-game timing purposes, and I believe the amount of intermediate ticks is irrelevant to the context here. – Jack McKalling [ User page Talk page Contributions ] 15:57, 19 March 2018 (UTC)
Also, just to simplify all this programming talk from myself, I should have thought about mentioning this sooner. But I got from the phrasing of the page specifically that "hopper will wait (...) before pulling or pushing again", and that "again" here means the full duration of time that it takes until the sequence becomes a repetition. That means the inclusion of one of the active ticks, besides the waiting ticks. – Jack McKalling [ User page Talk page Contributions ] 19:56, 19 March 2018 (UTC)
I agree, the "again" part does make it more clear. --RadioRoscoe (talk) 23:46, 19 March 2018 (UTC)

More Adjustments To Hopper Cooldown Mechanics[edit]

I have been trying to disentangle redstone circuit timings, and hoppers were not acting as I had expected that they would. After consulting the source code, specifically tileEntityHopper.java, it became clear that the cooldown mechanic is more broad than we have documented here. Here is the general mechanic for a hopper update from the source code:

  1. Decrement the hopper's cooldown time by 1 game tick
  2. If the cooldown time > 0 then exit hopper update
  3. If the hopper is disabled then exit hopper update
  4. If the hopper is not empty then attempt to push an item out
  5. If the destination inventory can accept an item then push an item into it
  6. If the destination inventory is a hopper and has not run its update yet then set the destination hopper's cooldown to 8 game ticks Else set the destination hopper's cooldown to 7 game ticks
  7. If there is a non-empty inventory source above the hopper, then pull an item in Else pull in any loose items above the hopper
  8. If the hopper pushed or pulled items this update, then set its cooldown time to 8 game ticks.

Therefore, the cooldown mechanic on the main page needs to be updated to reflect that a hopper will begin a cooldown period if another hopper pushed items into it, even if that hopper did not push or pull items itself that game tick. --RadioRoscoe (talk) 19:13, 27 March 2018 (UTC)

Awesome, good work :) I agree with these changes. From my own experience using hoppers I'm sure this is correct. – Jack McKalling [ User page Talk page Contributions ] 19:36, 27 March 2018 (UTC)