Mineuniverse

Piston/Technical components

Pistons and sticky pistons have 2 technical blocks that cannot be obtained. These include the piston head and moving piston blocks.

8 min read Updated
Renewable resources Non-stackable resources Blocks with no item form
Advertisement Remove ads with Premium →
Contents (12)
  1. Piston head
  2. Natural generation
  3. Block states
  4. Moving piston
  5. Block states
  6. Block data
  7. Data values
  8. ID
  9. History
  10. Data history
  11. Trivia
  12. References

Pistons and sticky pistons have 2 technical blocks that cannot be obtained. These include the piston head and moving piston blocks.

Piston head

Piston Head
Piston Head.png: Infobox image for Minecraft block 'Piston Head'
Piston Head BE.png: Infobox image for Minecraft block 'Piston Head'
Sticky Piston Head.png: Infobox image for Minecraft block 'Piston Head'
Sticky Piston Head BE.png: Infobox image for Minecraft block 'Piston Head'
Invicon Piston Arm Collision.png: Inventory sprite for Piston Arm Collision in Minecraft as shown in-game with description: Piston Arm CollisionInvicon Sticky Piston Arm Collision.png: Inventory sprite for Sticky Piston Arm Collision in Minecraft as shown in-game with description: Sticky Piston Arm Collision
Renewable Yes
Stackable No
Tool
Blast resistance 1.5
Hardness 1.5
Luminous No
Transparent Yes
Flammable No
Catches fire
from lava
No
Map color
 11 STONE
Note block instrument Default (Harp)

The piston head (in Java Edition) or (sticky) piston arm collision (in Bedrock Edition) is a technical block that appears as the front part of an extended piston. It is not available in the Creative inventory and does not drop anything when removed.

Normally, piston heads are created automatically when a piston extends. However, they can also be placed manually using the /setblock command. Alternatively a debug stick‌[Java Edition only] can be used to change the facing direction of a piston head that's currently attached to a piston base. Piston heads that do not have a valid support block behind them will be removed when receiving a shape update from behind in Java Edition, or when receiving a block update from any direction in Bedrock Edition.

In rare cases, a client-side, duplicate piston head can appear when placing a piston next to a power source in Java Edition, due to client-server desync issues.[1] These client-side piston heads cannot be broken directly but can be removed by placing another block in the same location.

In Java Edition, normal and sticky piston heads are distinguished by a block state. In Bedrock Edition, they use separate block IDs. The normal and sticky piston heads can be obtained as items in Bedrock Edition with the commands /give @s piston_arm_collision and /give @s sticky_piston_arm_collision. They face down when placed.

In Bedrock Edition, piston head blocks do not actually have a texture, as the piston arm texture is part of the piston block entity, and piston heads that aren't connected to a piston base have neither collisions nor an interaction box.

Natural generation

Heads of sticky pistons powered with redstone generate in jungle pyramid and ancient city.

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

Moving Piston
Moving Piston.png: Infobox image for Minecraft block 'Moving Piston'
Invicon movingBlock.png: Inventory sprite for movingBlock in Minecraft as shown in-game with description: movingBlock
Renewable Yes
Stackable No
Tool
Blast resistance 0
Hardness -1
Luminous No
Transparent Yes
Flammable No
Catches fire
from lava
No
Map color
 11 STONE
Note block instrument Default (Harp)

The moving piston (in Java Edition) or moving block (in Bedrock Edition), also known as block 36 due to its pre-flattening block ID, is an unobtainable technical block that holds a block entity (unless it was placed with a command) which contains the block the piston is currently moving. 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 entity data. Multiple moving piston blocks may be used during the extension/retraction process, depending on how many blocks the piston is moving. At the end of the piston stroke, the moving piston blocks are replaced with either the carried block, the piston head (during extensions), or the piston itself (during retractions); but if it is placed with the use of commands it remains indefinitely.‌[Java Edition only]

When placed by commands, the game does not assign a block entity to the moving piston block, therefore its properties are different than usual: it's invisible, has no collisions, and cannot be broken without the use of TNT, commands, or a structure generating over it (such as the end platform). 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:

  • [NBT Compound / JSON Object] Block entity data
    • Tags common to all block entities see Template:Nbt inherit/blockentity/template
    • [NBT Compound / JSON Object] blockState: The moving block represented by this block entity.
      • Block state see Template:Nbt inherit/block state/template
    • [Byte] extending: 1 or 0 (true/false) – true if the piston is extending instead of withdrawing.
    • [Int] facing: Direction that the piston pushes (0=down, 1=up, 2=north, 3=south, 4=west, 5=east).
    • [Float] progress: How far the block has been moved. Starts at 0.0, and increments by 0.5 each tick, including the tick on which moving the piston is created. If the value is 1.0 or higher at the start of a tick of the block entity (before incrementing), then the block transforms into the stored blockState. Negative values can be used to increase the time until transformation.
    • [Byte] 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.

Data values

ID

Java Edition:

NameIdentifierFormBlock tags Translation key
BlockSprite piston-head.png: Sprite image for piston-head in Minecraft Piston Headpiston_headBlockNone block.minecraft.piston_head
BlockSprite moving-piston.png: Sprite image for moving-piston in Minecraft Moving Pistonmoving_pistonBlockdragon_immune
wither_immune
block.minecraft.moving_piston
NameIdentifier
BlockSprite moving-piston.png: Sprite image for moving-piston in Minecraft Block entitypiston

Bedrock Edition:

NameIdentifierAlias ID Numeric ID FormItem ID[i 1] Translation key
BlockSprite piston-arm-collision.png: Sprite image for piston-arm-collision in Minecraft Piston Arm Collisionpiston_arm_collisionpistonArmCollision34Block & Ungiveable Item[i 2]Identical[i 3] tile.piston_arm_collision.name
BlockSprite piston-head.png: Sprite image for piston-head in Minecraft Sticky Piston Arm Collisionsticky_piston_arm_collisionstickyPistonArmCollision472Block & Ungiveable Item[i 2]Identical[i 3] tile.sticky_piston_arm_collision.name
BlockSprite moving-piston.png: Sprite image for moving-piston in Minecraft Moving Blockmoving_blockmovingBlock250Block & Ungiveable Item[i 2]Identical[i 3] —
  1. ↑ ID of block's direct item form, which is used in savegame files and addons.
  2. ↑ a b c Unavailable with /give command
  3. ↑ a b c The block's direct item form has the same ID as the block.
NameSavegame ID
BlockSprite moving-piston.png: Sprite image for moving-piston in Minecraft Block entityMovingBlock

History

There is an associated technical blocks page for the internal item form of this block; see Technical blocks/Pistons.
Java Edition Beta
1.7

Added piston head and moving piston blocks.
Java Edition
1.814w17a The models for piston and related blocks when facing up and down have been changed.
14w27b The moving piston block no longer has a selection outline.
14w29a

There are now "short" piston heads. Their model is used during a piston's extension/retraction to avoid having part of the head's texture poke out of the back of the piston.
1.1418w43a



The textures associated with piston heads 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.[2]
1.1922w17a



Changed piston textures, to match the color of the oak planks on the piston head.

Data history

Java Edition

Java Edition
1.814w29a Added the "short=true/false" block state to piston_head.
1.11.116w50a Added 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.
1.1317w47a The moving block ID of pistons has been changed from piston_extension to moving_piston.
Prior to The Flattening, these blocks' numeral IDs were 34 and 36.

Bedrock Edition

Pocket Edition Alpha
v0.16.0build 5 The movingblock block for pistons can no longer be placed using commands.
Bedrock Edition
1.13.0beta 1.13.0.9 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.
1.18.30beta 1.18.30.26 The ID of pistonarmcollision is changed to piston_arm_collision
The ID of stickypistonarmcollision is changed to sticky_piston_arm_collision
The ID of movingblock is changed to moving_block

Trivia

  • Mobs can spawn inside the piston head block.
  • In Bedrock Edition, the piston head is invisible and non-solid when placed with commands. The moving piston disappears shortly after being placed with 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.

References

  1. ↑ MC-254385
  2. ↑ MC-248841 – resolved as "Works As Intended".
Advertisement Remove ads with Premium →

More in Blocks with no item form

View all 20 →
LavaLavaLava is a light-emitting fluid that causes fire damage, mostly found in the lower reaches of the Overworld and the Nether.Leaves (Minecraft 4k)Leaves (Minecraft 4k)In Minecraft 4k, leaves have a block ID of 8.Log (Minecraft 4k)Log (Minecraft 4k)In Minecraft 4k, log has a block ID of 7.Nether Portal (block)Nether Portal (block)The Nether portal block is the translucent part of the Nether portal that teleports the player to and from the Nether.Powder SnowPowder SnowPowder snow is a non-solid block found in snowy slopes and groves, or collected from snowfall using cauldrons. It slows down and deals freezing damage to…Soul FireSoul FireSoul fire is a dimmer turquoise variation of fire that is created when soul sand or soul soil is ignited. Soul fire deals more damage than normal fire and…Stone (Minecraft 4k)Stone (Minecraft 4k)In Minecraft 4k, stone has a block ID of 4.WaterWaterWater is a fluid that naturally generates abundantly in the Overworld.
Explore the Minecraft Wiki
Blocks, items, mobs, biomes and game mechanics — all in one place.
Wiki home