Resolution note
@unknown resolved this report as "Works As Intended". He also commented roughly one year later as response to the following:
Panda4994 (source):
I always viewed the breaking of the sticky piston connection as inertia, and taking away the block teleportation part, I don't think this behaviour is buggy at all.
Jeb (source):
The reason why the piston behavior "technically a bug" is because the block in front of the sticky piston is supposed to act as if fixated to the piston. Your interpretation as "it's inertia" actually makes sense.
The bug
When a sticky piston is powered with a very short pulse ("0-tick pulse"), it will push the block, but not retract it.
To reproduce
Build the contraption in this screenshot:
[media]The redstone block will not be pulled back.
After 1.14, it is also possible to reproduce this by placing a button on the side of a sticky piston, and press the button to move a block.
Linked issues
is duplicated by 20
Attachments
Comments 16
Ok, tested for ~4 hours here using a standard ender-ender, with a command block killing all enderman every ~45 seconds. For those interested, the design alternates redstone with repeaters to ensure each piston fires individually. After 4 hours I found a total of 9 (out of 272) pistons that had not retrieved their block, all of which were just the redstone, none with the repeater if that makes sense. What this tells me is that if for some reason the piston is set off for just one block (as WolfieMario says) is setoff for just one tick, it leaves the block, while 99% of the time the pressure plates on mob farms give at least two ticks and thus don't leave the block. Based on this, my initial thinking is that if mobs land just barely on the edge of the pressure plate, they get a single tick and leave the block, otherwise they last long enough the piston retracts.
As far as fixes go, either a player needs to take this into account and use a repeater going into pistons everywhere this happens (and thus 3x the redstone), or some sort of more complex and/or accurate (depending on perspective) timer on the pressure plates. While the latter might be easier in theory for the player, I'm going to switch all of my farms to all repeaters and no single-pieces of redstone to work around this at least for now, despite the cost.
Further input/testing welcome of course...
@unknown and @unknown The ticket has been flagged for review by Mojang to determine if it is an intended (or now desired) feature, it is up to them to make that decision.
Just because a few people use it doesn't mean it should stay in the game. It doesn't make any sense storyline-wise, why would sticky pistons stop being sticky for a moment? And while it can be helpful in some cases, it causes more problems than it solves.
I can tell you a TON of people use this. TONS. However, no need to continue the conversation.
We will wait for Mojang.
I'm not sure why it affects you anyway. Sticky pistons can work with only sticking with anything more than a tick. Both mechanics work currently. If you'd like to continue this conversation, hit me up on twitter.
It makes perfect sense flavor-wise; a quick pulse pulls so hard it detaches the block, like a fast tug. That said, gameplay is more important than realism, so it doesn't matter if it "makes sense" as long as it's useful. In most cases, if you're getting a 1-tick-pulse into a sticky piston, it's because you're trying to cause this behavior. And it's used a lot, for example as a form of T-flip-flop. So, yeah, I'm glad it's marked as WAI because if it changed, it'd break builds, whereas having it in doesn't break anything.
It's ordinary for sticky pistons to do this when powered for a single tick, and is in fact crucial to many designs (I think Mojang has stated that this is considered a feature). You can achieve the same results by placing an ordinary block in that location, and using another repeater and a torch to push power into it.