-
Bug
-
Resolution: Unresolved
-
None
-
Minecraft 15w49a, Minecraft 15w49b, Minecraft 1.8.9, Minecraft 15w50a, Minecraft 15w51a, Minecraft 15w51b, Minecraft 1.10.2, Minecraft 16w38a, Minecraft 16w44a, Minecraft 1.13.1, 1.15.2, 1.16 Release Candidate 1, 1.16, 1.17.1, 1.20.2, 1.21.3
-
None
-
Confirmed
-
(Unassigned)
The bug
As you may know, comparators are able to get a redstone signal from cakes, cauldrons, command blocks, end portal frames, item frames, and jukeboxes, depending on the status of the block/entity in question. As with containers, they are able to read this signal through solid blocks. However, non-containers do not send a comparator update when they break, are fully eaten, are /killed, or are otherwise removed from the game, meaning that a comparator reading it through a solid block will not change power levels until it receives an update from another source.
Placing or updating these blocks will send comparator updates as expected; it is only when they are removed that this happens.
Note that containers used to have an identical problem (MC-11109), which was fixed in 2013.
How to reproduce
- Place cake next to a solid block, with a comparator leading out.
- Go to survival mode, and use the command /effect @p hunger 1 100 as necessary to eat all the cake. Note, after the last slice, that the comparator remains powered.
- Replace the cake.
- Break it and note that the comparator is still powered.
- Place a cauldron next to the solid block and fill it with water.
- Break it and note that the comparator is still powered.
- Place a command block next to the solid block, enter the command /say hi (or any other command that will successfully execute), and power it.
- Break it and note that the comparator is still powered.
- Place an end portal frame next to the solid block, and insert an eye of ender.
- Break it and note that the comparator is still powered.
- Place an item frame on the solid block and insert an item.
- Stand next to it, run /kill @e[r=5,type=item_frame] (version permitting) and note that the comparator is still powered. This one is less of a bug, since it requires console commands, but I am including it for completeness.
- Place a jukebox next to the solid block and insert a record.
- Break it and note that the comparator is still powered.
- Note that placing and modifying these blocks in any way that does not remove them from the world updates the comparator as expected.
Code analysis
Code analysis by Marcono1234 can be found in this comment.