Block of the Week: Piston

A real pushover

People who think it's OK to shove other people? The worst. Can't stand 'em. I'd happily shove them all into a big pit full of Creepers, if it wouldn't make me guilty of blatant hypocrisy. Bah!

Ah but the piston – a block that shoves other blocks – now that I do like!

Pistons push blocks, up to twelve of them in a row, when given a redstone signal. Flip the power on and the piston's head will extend outwards one block for a fraction of a second. Any entities in the path of the head will be pushed along with it, including the player, and if there's a slime block in front of the head then they'll be sproinged off instead. SPROINGGG!

Then there's the piston's slightly disgusting sibling - the sticky piston. The sticky piston, which is crafted with a slime ball, can push blocks just like a piston can - but when the power is turned off the head will pull any blocks that it's touching back with it. Yuck.

That's all pretty simple, but the applications are huge. You can use pistons to make automatic farms that get flooded when you flip a switch and carry all the crops down to one handy location for you to pick them up. You can make vast, extravagant doors, or hidden rooms. You can even go all out and build logic gates and clocks, essential components of even more complex creations.

Here's a fun fact - pistons were originally a mod, posted on the Minecraft Forums by a coder called Hippoplatimus. It's true - you'll find the name in the credits under "Additional Programming". That piston code was folded into the regular edition of the game by Jeb, and then released in version Beta 1.7, alongside shears and the ability to obtain wool from sheep without harming it.

The piston of DAT engine, displayed at Tokyo's Museum of Nature and Science. Photo by 160SX

Real-world pistons are somewhat unlike the pistons in Minecraft. They're a component of combustion engines, which drive cars and other moving objects. When the fuel in the engine is ignited, the force of the explosion is captured by the piston and used to turn a crankshaft, creating rotation. They're also found in pumps, where they can be used to suck fluids from one place to another. “Man, that piston really sucks. Good job!” is a joke you should make to people who work on engines for a living. I'm sure they'll find it really funny! After they've finished never speaking to you again.

With some experimentation, you'll find that there are a few blocks that Minecraft pistons can't push. Obsidian and bedrock are too heavy. So are command blocks, and End portals. There are other blocks that can be pushed but not pulled, like terracotta, and yet more that break when they're pushed. The effects differ slightly between versions, so test the component parts of any new machine carefully before you build it, especially if it's using a more unusual block.

In fact, with two pistons, two blocks of redstone, two slime blocks and a sticky piston it's even possible to make a flying machine. There are some great tutorials on the Minecraft Wiki on how to do it. Send us your most impressive piston-based aircraft to scoops@minecraft.net, and perhaps we'll feature them in the future!