Minecraft Wiki
Advertisement

A piston is a block capable of pushing most entities and blocks when given a redstone signal.

A sticky piston is a variant of the piston that can additonally pull most blocks when it retracts.

Some blocks cannot be moved, break when pushed or have other interactions with pistons. A piston can move up to twelve blocks at once.

Obtaining[]

Breaking[]

A piston can be broken using any tool with equal efficiency, and always drops itself. In Java Edition, it is faster to break them with a pickaxe. The pickaxe is also the preferred tool for breaking the head when extended.[1]

Block Piston
Hardness 1.5
Tool
Breaking time[A]
Default 2.25
Wooden 1.15
Stone 0.6
Iron 0.4
Diamond 0.3
Netherite 0.25
Golden 0.2
  1. Times are for unenchanted tools as wielded by players with no status effects, measured in seconds. For more information, see Breaking § Speed.

Natural generation[]

Three sticky pistons generate as part of each jungle temple. Five sticky pistons also generate in each ancient city.

Crafting[]

Name Ingredients Crafting recipe
Piston Any Planks +
Cobblestone +
Iron Ingot +
Redstone Dust

Sticky Piston Slimeball +
Piston


Usage[]

Pistons are always placed facing toward the player. When powered, the piston's wooden surface (the "head") starts extending immediately in Java Edition; or either 2 game ticks (1 redstone tick; 0.1 seconds) later or immediately, depending on how it was powered, in Bedrock Edition. When it extends, it pushes at most 12 blocks. The piston makes a sound that can be heard within a 31×31×31 cube centered on the activating piston. Any entities in the path of the extending head are pushed with the blocks. If there is no place for the entities to go, the block pushes inside them, suffocating mobs if the block is not transparent when pushed into the eye height of the mob.

When a piston loses power, its head retracts. Like extending, this retraction starts immediately in Java Edition; or, depending on how it was powered, after 1 tick in Bedrock Edition. It finishes retracting 2 game ticks (1 redstone tick; 0.1 seconds) after it starts. A sticky piston also pulls the block attached to its head, but not any of the other blocks it may have pushed.

Sticky pistons stick to a block only when retracting, so a block next to the piston head can be pushed aside by another piston and sticky pistons cannot hold falling blocks horizontally against gravity. In Java Edition, pistons finish extending early and start retracting if given a pulse shorter than 3 game ticks (1.5 redstone ticks; 0.15 seconds). These shorter pulses cause sticky pistons to "drop" their block, leaving it behind when trying to push it with a short pulse. Also, this causes the block to end up in its final position earlier. However, if they receive a short pulse and don't have a block to be pushed, they pull the block which is 1 block away.

A piston that pushes a slime block bounces any entity that it displaces in the direction the piston is facing. In addition, when a slime block is moved by a piston, any movable blocks adjacent (not diagonally) to the slime block also move. See the "Slime blocks" section below for more details.

In Bedrock Edition, blocks that stick to walls (such as levers) can be placed on pistons or sticky pistons.

Limitations[]

Pistons can push most blocks, and sticky pistons can pull most blocks, except those listed in the table below. A sticky piston simply leaves a block behind if it cannot pull it.

Pistons cannot push blocks into the Void or beyond the top of the map. They also cannot push more than 12 blocks. If the requirements for a block to be pushed are not met, the piston simply does not extend.

Blocks that cannot be pushed or pulled
Block Effect (Java Edition) Effect (Bedrock Edition)
Cannot be pushed or pulled.
N/A Cannot be pushed or pulled.
Can be pushed or pulled.
Breaks when pushed, turning to drops when applicable. Cannot be pulled.
Cannot be pushed or pulled, because these blocks hold block entities. Can be pushed or pulled.
Can be pushed or pulled, but separates into two chests.
Breaks when pushed or unsupported, turning into drops.
Breaks when pushed, turning to drops when applicable. Cannot be pulled.
Can be pushed, but not pulled.
Can be pushed and pulled. Breaks when pulled downward, turning into drops.
Breaks when pushed, turning to drops when applicable. Cannot be pulled. Can be pushed or pulled.
Breaks when pushed, turning to drops when applicable. Cannot be pulled.
Cannot be pulled. Pushable only when in a falling state. Can be pushed or pulled, but falls if unsupported.
Can be pushed or pulled, but falls if unsupported.

Pistons do not move blocks that are "attached to a block", as they detach and drop as an item.

Exceptions[]
  • Rails: as long as they remain on top of a solid face of a block in their new position, and that block isn't moving at the same time.
    • An exception is when the rail and block supporting it are on two parallel extended pistons at which the rail remains attached. Trying to move both on the same piston using slime blocks does not work, nor does moving them on perpendicular pistons (although the latter temporarily appears to work because of the bug MC-75716).
    • Rails re-orient themselves after being pushed, similar to when placed manually.

Powering pistons[]

Stacked pistons powered by one redstone line

Pistons powered by one line of redstone.

Pistons can be powered in various ways:

  • If a redstone wire is in a line shape toward the piston. In Java Edition, the wire does not automatically curve to the piston.
  • Pistons can be powered by a powered block directly adjacent to them, whether it is strongly powered or weakly powered.
  • Pistons can be powered by a redstone torch directly adjacent to them.
  • In Java Edition, pistons can be powered by any powered block one block diagonally, including the "activated space" above it (if a piston, both sticky and normal were to be facing up and a block of redstone placed on its head, it extends when powered, but doesn't retract when the power it receives from the side or back turns off). However, the piston doesn't extend or retract until it receives a block update. This property is called quasi-connectivity and can be used to make a BUD switch.
  • A repeater cannot transfer power through a piston, as pistons are a transparent block.
  • An upward-facing piston can't be powered by a block above it, unless it is extended In Java Edition.
  • In Bedrock Edition a redstone torch attached to a piston turns off whenever the piston is powered. This mechanic is called soft inversion.
  • Pistons can also be powered by observers. This can create a clock if the setup is correct.

Slime blocks and honey blocks[]

A
B
Piston A may extend because the slime block ignores the adjacent obsidian. Piston B may not extend because the diamond block is prevented from moving by the obsidian and so the slime block also refuses to move.

When a slime block is pushed or pulled by a piston, while moving, adjacent blocks also move with the slime block, unless a non-piston movable block stops the blocks that are "grabbed" by the slime blocks. These blocks may in turn push other blocks, not just the blocks in the line in front of the piston. For example, a slime block sitting on the ground attempts to move the ground block underneath itself, which in turn has to push additional ground blocks in the direction of motion just as if it were being pushed directly by a piston.

Glazed terracotta is an exception; it does not move when adjacent slime blocks are moved. The same occurs when a slime block is moved by an adjacent slime block. For example, a 2×2×2 cube of slime blocks may be pushed or pulled as a unit by a single piston acting on any of the blocks in the cube. A slime block adjacent to a block that cannot be moved by pistons ignores the immobile block. But if an adjacent block could be moved but is prevented by the presence of an immobile block, the slime block is prevented from moving.

Slime blocks are not pulled by a non-sticky piston, nor are they moved if an adjacent (non-Slime) block is moved by a piston. The maximum of 12 blocks moved by a piston still applies. For example, a 2×2×3 collection of Slime Blocks may be pushed or pulled by a sticky piston as long as no other movable blocks are adjacent to it. A piston cannot move itself via a "hook" constructed of slime blocks, but self-propelled contraptions can be created with multiple pistons. For that, see the article Tutorials/Flying machines. The same happens for the honey block, but it does not stick to slime blocks.

Technical components[]

Piston head[]

The piston head is a technical block used as the second block of an extended piston. A block state defines whether it is a normal or a sticky piston head. It can be placed using the /setblock command or with the debug stick, though if not part of a proper piston, it disappears after receiving any block tick, such as when a block is placed next to it unless the player uses the debug stick. It drops nothing.

In Java Edition, the normal and sticky piston heads are distinguished by a block state. In Bedrock Edition, they use separate block IDs, and it can be obtained as an item via inventory editors.

Block states[]

See also: Block states

Java Edition:

Name Default value Allowed values Description
facingnorthdown
east
north
south
up
west
The direction the piston head is pointing.
shortfalsefalse
true
If true, the piston arm is shorter than usual, by 4 pixels.
typenormalnormal
sticky
The type of piston head.

Bedrock Edition: Piston Head:

NameMetadata Bits Default value Allowed valuesValues for
Metadata Bits
Description
facing_direction0x1
0x2
0x4
00
1
2
3
4
5
0
1
2
3
4
5
The direction the piston head is pointing.
  • 0: facing up
  • 1: facing down
  • 2: facing south
  • 3: facing north
  • 4: facing east
  • 5: facing west

Sticky Piston Head:

NameMetadata Bits Default value Allowed valuesValues for
Metadata Bits
Description
facing_directionNot Supported00
1
2
3
4
5
UnsupportedThe direction the piston head is pointing.
  • 0: facing up
  • 1: facing down
  • 2: facing south
  • 3: facing north
  • 4: facing east
  • 5: facing west

Moving piston[]

The moving piston, also known as block 36 due to its pre-flattening block ID, is an unobtainable technical block that contains part of a piston head, and/or part of one or two blocks that the piston is carrying into or out of the grid cell (including blocks carried indirectly via slime blocks). Since moving blocks vary in how much of each grid cell they occupy, they can't be stored as normal blocks and are instead stored as block entities. It is overwritten with air, the piston head or the carried block at the end of the piston stroke; but if it is placed through editing and no piston is connected, it remains indefinitely.

It is invisible and non-solid in Java Edition, and cannot be broken without the use of commands or TNT. Although it is non-solid, fluids cannot pass through it. It also prevents players from building at its location. Mobs can see through it, but cannot walk through it. The game treats the block as a stone block when it comes to the player's footstep sounds. It is similar to Invisible Bedrock in properties with the exception that the player can walk through the moving piston but not invisible bedrock.

Block states[]

See also: Block states

Java Edition:

Name Default value Allowed values Description
facingnorthdown
east
north
south
up
west
The direction the block is being pushed by the piston.
typenormalnormal
sticky
What piston base this has.

Block data[]

The moving piston has a block entity associated with it that holds additional data about the block.

Java Edition:

  • Block entity data
    • Tags common to all block entities
    •  blockState: The moving block represented by this block entity.
      • Block state
    •  extending: 1 or 0 (true/false) – true if the piston is extending instead of withdrawing.
    •  facing: Direction that the piston pushes (0=down, 1=up, 2=north, 3=south, 4=west, 5=east).
    •  progress: How far the block has been moved. Starts at 0.0, and increments by 0.5 each tick. If the value is 1.0 or higher at the start of a tick (before incrementing), then the block transforms into the stored blockState. Negative values can be used to increase the time until transformation.
    •  source: 1 or 0 (true/false) – true if the block represents the piston head itself, false if it represents a block being pushed.

Bedrock Edition:

See Bedrock Edition level format/Block entity format.

Sounds[]

Generic[]

Java Edition:

SoundSubtitlesSourceDescriptionResource locationTranslation keyVolumePitchAttenuation
distance
Block brokenBlocksOnce the block has brokenblock.stone.breaksubtitles.block.generic.break1.00.816
Block placedBlocksWhen the block is placedblock.stone.placesubtitles.block.generic.place1.00.816
Block breakingBlocksWhile the block is in the process of being brokenblock.stone.hitsubtitles.block.generic.hit0.250.516
None[sound 1]Entity-DependentFalling on the block with fall damageblock.stone.fallNone[sound 1]0.50.7516
FootstepsEntity-DependentWalking on the blockblock.stone.stepsubtitles.block.generic.footsteps0.151.016
  1. a b MC-177082

Bedrock Edition (piston):

SoundSourceDescriptionResource locationVolumePitch
BlocksOnce the block has brokendig.stone1.00.8-1.0
BlocksWhen the block is placeddig.stone1.00.8-1.0
BlocksWhile the block is in the process of being brokenhit.stone0.370.5
PlayersFalling on the block with fall damagefall.stone0.41.0
PlayersWalking on the blockstep.stone0.31.0
PlayersJumping from the blockjump.stone0.121.0
PlayersFalling on the block without fall damageland.stone0.221.0

Bedrock Edition (arm):

SoundSourceDescriptionResource locationVolumePitch
BlocksOnce the block has brokendig.stone1.00.8-1.0
BlocksWhen the block is placeddig.stone1.00.8-1.0
BlocksWhile the block is in the process of being brokenhit.stone0.27 [sound 1]0.5
PlayersFalling on the block with fall damagefall.stone0.41.0
PlayersWalking on the blockstep.stone0.31.0
PlayersJumping from the blockjump.stone0.121.0
PlayersFalling on the block without fall damageland.stone0.221.0
  1. MCPE-169612 — Many blocks make very slightly different sounds to stone

Unique[]

Java Edition:

SoundSubtitlesSourceDescriptionResource locationTranslation keyVolumePitchAttenuation
distance
Piston movesBlocksWhen a piston extendsblock.piston.extendsubtitles.block.piston.move0.50.6-0.8516
Piston movesBlocksWhen a piston contractsblock.piston.contractsubtitles.block.piston.move0.50.6-0.7516

Bedrock Edition:

SoundSourceDescriptionResource locationVolumePitch
BlocksWhen a piston extendstile.piston.out0.50.6-0.75
BlocksWhen a piston contractstile.piston.in0.50.6-0.75

Data values[]

ID[]

Java Edition:

NameIdentifierFormBlock tagsTranslation key
PistonpistonBlock & ItemNoneblock.minecraft.piston
Sticky Pistonsticky_pistonBlock & ItemNoneblock.minecraft.sticky_piston
Piston Headpiston_headBlockNoneblock.minecraft.piston_head
Moving Pistonmoving_pistonBlockdragon_immune
wither_immune
block.minecraft.moving_piston
NameIdentifier
Block entitypiston

Bedrock Edition:

NameIdentifierAlias ID Numeric ID FormItem ID[i 1]Translation key
PistonpistonNone33Block & Giveable Item[i 2]Identical[i 3]tile.piston.name
Sticky Pistonsticky_pistonNone29Block & Giveable Item[i 2]Identical[i 3]tile.sticky_piston.name
Piston Headpiston_arm_collisionpistonArmCollision34Block & Ungiveable Item[i 4]piston_arm_collision
Alias ID: pistonarmcollision
tile.piston_arm_collision.name
Sticky Piston Headsticky_piston_arm_collisionstickyPistonArmCollision472Block & Ungiveable Item[i 4]stick_piston_arm_collision
Alias ID: stickpistonarmcollision
tile.sticky_piston_arm_collision.name
Moving Blockmoving_blockmovingBlock250Block & Ungiveable Item[i 4]moving_block
Alias ID: movingblock
tile.moving_block.name
  1. ID of block's direct item form, which is used in savegame files and addons.
  2. a b Available with /give command.
  3. a b The block's direct item form has the same id as the block.
  4. a b c Unavailable with /give command
NameSavegame ID
Piston block entityPistonArm
Moving block entityMovingBlock

Block states[]

See also: Block states

The piston and sticky_piston blocks use following block states:

Java Edition:

Name Default value Allowed values Description
extendedfalsefalse
true
If true, the piston is extended.
facingnorthdown
east
north
south
up
west
The direction the piston head is pointing.
The opposite from the direction the player faces while placing the piston.

Bedrock Edition:

NameMetadata Bits Default value Allowed valuesValues for
Metadata Bits
Description
facing_direction0x1
0x2
0x4
00
1
2
3
4
5
0
1
2
3
4
5
The direction the piston is pointing.
  • 0: facing down
  • 1: facing up
  • 2: facing south
  • 3: facing north
  • 4: facing east
  • 5: facing west

Block data[]

In Bedrock Edition, a piston has a block entity associated with it that holds additional data about the block.

See Bedrock Edition level format/Block entity format.

Achievements[]

Icon Achievement In-game description Actual requirements (if different) Gamerscore earned Trophy type (PS4)
PS4 Other
InceptionPush a piston with a piston, then pull the original piston with that piston.20GSilver

Video[]

History[]

Realms Plus Icon
This page would benefit from the addition of isometric renders. 
Please remove this notice once you've added suitable isometric renders to the article.
The specific instructions are: MCPE-38053, extended sticky piston from the original mod
Java Edition Classic
May 21, 2009Notch shows interest in adding blocks that can pull and push other blocks when a pulse from a wire is received; he called them "Pulley1", which would pull a block up, and "Pulley2", which would push a block up.
Java Edition Beta
?Piston normal mod Piston normal extended mod Sticky piston mod The original piston was a mod posted on the Minecraft Forums by Hippoplatimus.[2] The code for that version was given to Jeb, who then worked on implementing pistons into vanilla Minecraft; Hippoplatimus is in the game's credits under "Additional Programming", like other modders whose work made it into vanilla Minecraft.
Another user, DiEvAl, privately submitted code as well, including the idea of block entities to track moving blocks.[3]
June 7, 2011Jeb tweets an image of pistons in development.
Piston (pre-release) The piston texture as screen-captured while in development had iron bands running over the head. The bands were removed for the release, leaving only iron brackets around the corners and edges.
1.7Piston (U) JE1 Piston (N) JE1 BE1 Piston (E) JE1 BE1 Piston (S) JE1 BE1 Piston (W) JE1 BE1 Piston (D) JE1 BE1
Sticky Piston (U) JE1 Sticky Piston (N) JE1 BE1 Sticky Piston (E) JE1 BE1 Sticky Piston (S) JE1 BE1 Sticky Piston (W) JE1 BE1 Sticky Piston (D) JE1 BE1
Headless Piston (U) JE1 BE1 Headless Piston (N) JE1 BE1 Headless Piston (E) JE1 BE1 Headless Piston (S) JE1 BE1 Headless Piston (W) JE1 BE1 Headless Piston (D) JE1 BE1
Piston Head (U) JE1 Piston Head (N) JE1 Piston Head (E) JE1 Piston Head (S) JE1 Piston Head (W) JE1 Piston Head (D) JE1
Sticky Piston Head (U) JE1 Sticky Piston Head (N) JE1 Sticky Piston Head (E) JE1 Sticky Piston Head (S) JE1 Sticky Piston Head (W) JE1 Sticky Piston Head (D) JE1
Added pistons and sticky pistons, alongside associated head and moving blocks.
1.7_01Sticky pistons no longer stick when they aren't retracting.
Java Edition
?The wireframe hitbox of the moving piston block is now halfway aligned.
1.2.4releaseSpruce planks, birch planks, and jungle planks can now be used to craft pistons.
1.3.112w22aSticky pistons now generate naturally inside jungle temples. In the temples, the pistons are used to form a puzzle mechanism.
12w27aPistons have been updated to make them less error-prone, thus they also appear to update slower. This also alters the way pistons work, so the player might have to adapt their repeater delays and similar. For this change, pistons now take 2 redstone ticks (4 game ticks) to extend, but they still retract instantly.
1.7.21.7.1Acacia planks and dark oak planks can now be used to craft pistons.
1.814w17aPiston (U) JE2 Piston (D) JE2 Sticky Piston (U) JE2 Sticky Piston (D) JE2 Headless Piston (U) JE2 Headless Piston (D) JE2 Piston Head (U) JE2 Piston Head (D) JE2 Sticky Piston Head (U) JE2 Sticky Piston Head (D) JE2 The models for piston and related blocks when facing up and down have been changed.
14w18aSlime blocks now push and pull blocks adjacent when connected to sticky pistons.
Extending a piston with a slime block on top of it launches the entity (mobs, players, items, launched arrows, etc) into the air.
14w19aSlime blocks can now push entities sideways and downward when attached to a piston.
14w29aShort Piston Head (U) JE1 Short Piston Head (N) JE1 Short Piston Head (E) JE1 Short Piston Head (S) JE1 Short Piston Head (W) JE1 Short Piston Head (D) JE1
Short Sticky Piston Head (U) JE1 Short Sticky Piston Head (N) JE1 Short Sticky Piston Head (E) JE1 Short Sticky Piston Head (S) JE1 Short Sticky Piston Head (W) JE1 Short Sticky Piston Head (D) JE1
There are now "short" piston heads. Their use is unknown.
14w32aThe moving piston block no longer has a hitbox.
1.915w49aUnextended pistons, downward-facing pistons, and upward-facing piston heads are now considered to have a solid top surface, like upside-down stairs and top slabs. There also existed a bug where when a piston retracted, it would pull entities through them.
1.1217w16aSticky pistons do not pull glazed terracotta, and when pistons move slime blocks, they do not move glazed terracotta attached to the side of the slime block.
pre3Slime blocks can no longer pull glazed terracotta attached to any side of a piston, whatsoever.
1.1317w47aPistons now can push note blocks.
pre6Sticky pistons now pull glazed terracotta again.
pre8Sticky pistons no longer pull glazed terracotta.
1.1418w43aPiston (U) JE3 Piston (N) JE2 Piston (E) JE2 Piston (S) JE2 Piston (W) JE2 Piston (D) JE3
Sticky Piston (U) JE3 Sticky Piston (N) JE2 Sticky Piston (E) JE2 Sticky Piston (S) JE2 Sticky Piston (W) JE2 Sticky Piston (D) JE3
Headless Piston (U) JE3 Headless Piston (N) JE2 Headless Piston (E) JE2 Headless Piston (S) JE2 Headless Piston (W) JE2 Headless Piston (D) JE3
Piston Head (U) JE3 Piston Head (N) JE2 Piston Head (E) JE2 Piston Head (S) JE2 Piston Head (W) JE2 Piston Head (D) JE3
Sticky Piston Head (U) JE3 Sticky Piston Head (N) JE2 Sticky Piston Head (E) JE2 Sticky Piston Head (S) JE2 Sticky Piston Head (W) JE2 Sticky Piston Head (D) JE3
Short Piston Head (U) JE2 Short Piston Head (N) JE2 Short Piston Head (E) JE2 Short Piston Head (S) JE2 Short Piston Head (W) JE2 Short Piston Head (D) JE2
Short Sticky Piston Head (U) JE2 Short Sticky Piston Head (N) JE2 Short Sticky Piston Head (E) JE2 Short Sticky Piston Head (S) JE2 Short Sticky Piston Head (W) JE2 Short Sticky Piston Head (D) JE2
The textures associated with pistons have been changed.
While the texture for oak planks was later updated in subsequent snapshots, the piston texture is yet to be changed to reflect this.[4]
18w44aPistons are no longer transparent.
18w46aExtended pistons now allow light to pass through certain faces.
1.1519w41aAdded honey blocks, which have multiple different types of interactions with pistons.
1.1620w06aThe hardness of pistons has been increased from 0.5 to 1.5.
Pickaxes are now the tool for breaking pistons.
Pistons no longer pop off redstone components placed on the back when retracting.
Crimson planks and warped planks can now be used to craft pistons.
1.1720w45aParticles now appear if a block is broken by a piston.
1.1922w11aMangrove planks can now be used to craft pistons.
22w13aSticky pistons and piston heads now generate in ancient cities.
22w17aPiston (U) JE4 Sticky Piston (U) JE4 Changed piston and sticky piston textures, to match the color of the oak planks on the piston head.
Pocket Edition Alpha
v0.15.0build 1Piston (U) JE2 BE1 Sticky Piston (U) JE2 BE1 Added pistons and sticky pistons.
Pistons and sticky pistons have a version exclusive animation and the ability to push block entities.
Bedrock Edition
1.10.0beta 1.10.0.3Piston BE2 Sticky Piston BE2 The texture of pistons has been changed.
Legacy Console Edition
TU3CU1 1.0 Patch 11.0.1Piston (U) JE1 Sticky Piston (U) JE1 Added pistons and sticky pistons.
TU14 1.04 Pistons now take double the amount of time (2 redstone ticks or 4 game ticks) to extend, but they still retract instantly.
1.90 Piston (U) BE2 Sticky Piston (U) BE2 The texture of pistons has been changed.
New Nintendo 3DS Edition
0.1.0Piston (U) JE2 BE1 Sticky Piston (U) JE2 BE1 Added pistons and sticky pistons.

Data history[]

Java Edition Beta
1.7Pistons with six sides exist as extreme metadata variants of pistons.
Java Edition
1.814w26aPistons now use block states instead of metadata. As such, weird pistons have been removed.
14w29aAdded the "short=true/false" block state to piston_head.
1.11.116w50aAdded a new byte tag source for the piston_extension block entity, which is true if the block represents the piston head itself, and false if it represents a block being pushed. Pistons moving entities to the other side has been fixed.
1.1317w47aThe moving block ID of pistons has been changed from piston_extension to moving_piston.
Prior to The Flattening, these blocks' numeral IDs were 29, 33, 34 and 36.
Pocket Edition Alpha
?Weird pistons also existed, but they didn't look six-sided.
Bedrock Edition
1.13.0?Sticky piston heads are now a separate block from normal heads, instead of being differentiated by a block state. The namespaced ID is now stickypistonarmcollision, while the numerical ID is 472.
?The movingblock block for pistons can no longer be placed using commands.
1.18.30beta 1.18.30.26The ID of stickypistonarmcollision is changed to sticky_piston_arm_collision
The ID of pistonarmcollision is changed to piston_arm_collision
The ID of movingblock is changed to moving_block
Legacy Console Edition
?Weird pistons and sticky pistons definitely existed at one point.

Piston head/moving piston "items"[]

The following content is transcluded from Technical blocks/Pistons.
Java Edition Beta
1.7Piston heads have an unobtainable item form corresponding to its block ID. It can be obtained via inventory editors with numeric item ID 34.
The moving piston has an unobtainable item form corresponding to its block ID. It can be obtained via inventory editors with numeric item ID 36.
Both blocks do not appear to be able to be placed.
If certain colors of cloth were obtained in a world prior to their mass removal in late Infdev, items of these could convert forward into piston head or moving piston items.
1.8Pre-release 2 ;)Added pick block functionality. This changes the currently selected slot to any containing these otherwise-unobtainable items, but does not allow them to be obtained if not already in the hotbar.
Java Edition
1.2.5prePiston heads and moving pistons can now be obtained via Pick Block in creative.
1.3.112w15aUsing pick block on a piston head or moving piston now causes a game crash.
12w16aPiston head and moving piston items can now be obtained in singleplayer worlds via the /give command using their respective numeric IDs.
Piston heads and moving pistons can no longer be obtained with pick block in Creative.
1.7.213w37aThe direct item forms of piston heads and moving pistons have been removed from the game. They can no longer exist as an item in any way, only as placed blocks.
Pocket Edition Alpha
v0.15.0Both the "moving piston" and "piston head" items have been added. The "piston head" item has an ID of 34 and the "moving piston" item has an ID of 250.
Bedrock Edition
1.18.30beta 1.18.30.26The ids of sticky piston heads and piston heads are now changed. For backward compatibility, their original IDs (stickypistonarmcollision and pistonarmcollision) are registries as their alias IDs, which can be obtained with /give command.
Moving block's ID is also changed, but it still cannot be obtained by /give.

Appearances[]

Piston head
Java Edition Beta
1.7Piston Head (texture) JE1 BE1 The piston head item uses this texture in inventories, when held in first or third person view or as a dropped item.
Java Edition
1.4.212w34aThe piston head item now uses the aforementioned texture when in an item frame.
Bedrock Edition
?Piston (top texture) JE1 BE1 The piston head block uses this item texture.[5]
?Piston (top texture) JE2 BE2 The piston head block uses this item texture.
Moving piston
Java Edition Beta
1.7Grass Block (top texture) JE3 BE1 The moving piston item uses this texture in inventories, when held in first or third person view or as a dropped item.
Java Edition
1.0.0Beta 1.9 Prerelease 5Grass Block (top texture) JE4 BE2 The moving piston item now uses this texture in inventories, when held in first or third person view or as a dropped item.
This is due to the grass top texture changing in this version.
1.4.212w34aThe moving piston item now uses the aforementioned texture when in an item frame.
1.513w02aPiston Head (texture) JE1 BE1 The moving piston item now uses this texture in inventories, when held in first or third person view, as a dropped item or when in an item frame.
This is due to major texture storage changes in this version.
Pocket Edition Alpha
v0.15.0Info update (texture) BE1 The moving piston block uses this item texture.[6]

Names[]

Piston Head
Java Edition
  • Beta 1.7 - Beta 1.9 Prerelease: [Has no defined name, rendering a minimum-length text box if highlighted]
  • Beta 1.9 Prerelease 2 - Beta 1.9 Prerelease 3: [Has no defined name, and attempting to render it causes a game crash]
  • Beta 1.9 Prerelease 4 - 13w25b: [Has no defined name, rendering a minimum-length text box if highlighted]
  • 13w25c - 13w36b: tile.null.name

When given using the /give command, it is announced as null.name.

Bedrock Edition
  • ? - Beta 1.18.30.22: tile.pistonArmCollision.name
  • Beta 1.18.30.26 - now: tile.piston_arm_collision.name
Sticky Piston Head
Bedrock Edition
  • ? - Beta 1.18.30.22: tile.stickyPistonArmCollision.name
  • Beta 1.18.30.26 - now: tile.sticky_piston_arm_collision.name
Moving Piston
Java Edition
  • Beta 1.7 - Beta 1.9 Prerelease: [Has no defined name, rendering a minimum-length text box if highlighted]
  • Beta 1.9 Prerelease 2 - Beta 1.9 Prerelease 3: [Has no defined name, and attempting to render it causes a game crash]
  • Beta 1.9 Prerelease 4 - 13w25b: [Has no defined name, rendering a minimum-length text box if highlighted]
  • 13w25c - 13w36b: tile.null.name

When given using the /give command, it is announced as null.name.

Bedrock Edition
  • ? - Beta 1.18.30.22: tile.movingBlock.name
  • Beta 1.18.30.26 - now: tile.moving_block.name

References[]

Issues[]

Issues relating to "Piston" are maintained on the bug tracker. Report issues there.

Trivia[]

  • Mojang stated that the 12-block push limit for pistons would not be changed, because "the current limitations are by design".[1]
  • When toggled between on and off rapidly with a gravity affected block (such as sand) above it, a piston can eventually break the block, which can be picked up as a resource. However, gravel broken this way never drops flint.
  • If a sticky piston powered by a short pulse directly pushes a waterlogged block, the block remains waterlogged at its new position.
  • Mobs can spawn inside the piston head block.
  • Carpet can be placed on the piston extension block, and remains even if it is replaced with a solid block using /setblock.
  • In Bedrock Edition, the piston head is invisible and non-solid when placed with commands. The moving piston cannot be placed with block placement commands in this edition.
  • The moving_piston is transparent and does not emit light.
    • If a light-emitting block is moved, the player can see it turn dark briefly. If an opaque block is moved, the player may see light passing through it.

Gallery[]

Images[]

Animations[]

See also[]

Notes[]

  1. In Java Edition, item frames are entities, not blocks. In Bedrock Edition, they are blocks
  2. Paintings are technically entities, not blocks.

References[]

External Links[]

Advertisement