Sticky Piston

(Redirected from Sticky piston head)
Jump to navigation Jump to search
For the regular variant, see Piston.
Sticky Piston
Sticky Piston.gif: Infobox image for Sticky Piston the block in Minecraft

Java Edition

Sticky Piston BE.gif: Infobox image for Sticky Piston the block in Minecraft

Bedrock Edition

Invicon Sticky Piston.png: Inventory sprite for Sticky Piston in Minecraft as shown in-game with description: Sticky Piston
Renewable

Yes

Stackable

Yes (64)

Tool

Blast resistance

0.5

Hardness

1.5

Luminous

No

Transparent

JE: No
BE: Yes

Flammable

No

Catches fire from lava

No

Map color (Java)


  11 STONE

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

Obtaining[edit | edit source]

Breaking[edit | edit source]

A sticky 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 Sticky Piston
Hardness 1.5
Tool
Breaking time (sec)[A]
Default 2.25
BlockSprite oak-planks.png: Sprite image for oak-planks in MinecraftWooden 1.15
BlockSprite cobblestone.png: Sprite image for cobblestone in MinecraftStone 0.6
ItemSprite iron-ingot.png: Sprite image for iron-ingot in MinecraftIron 0.4
ItemSprite diamond.png: Sprite image for diamond in MinecraftDiamond 0.3
ItemSprite netherite-ingot.png: Sprite image for netherite-ingot in MinecraftNetherite 0.25
ItemSprite gold-ingot.png: Sprite image for gold-ingot in MinecraftGolden 0.2
Legend
  • incorrect tool, drops nothing
  • correct tool, drops nothing or something other than the block itself
  • correct tool, drops the block itself
  • italicized can be instant mined
  1. These durations ignore other influential factors (e.g. Mining Fatigue), and are measured in seconds. For more information, see Breaking § Speed.

Natural generation[edit | edit source]

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

Crafting[edit | edit source]

Ingredients [hide]Crafting recipe
Slimeball +
Piston
Invicon Slimeball.png: Inventory sprite for Slimeball in Minecraft as shown in-game linking to Slimeball with description: SlimeballInvicon Piston.png: Inventory sprite for Piston in Minecraft as shown in-game linking to Piston with description: Piston
Invicon Sticky Piston.png: Inventory sprite for Sticky Piston in Minecraft as shown in-game with description: Sticky Piston

Usage[edit | edit source]

See also: Piston

A sticky piston behaves the same way as a normal piston, except when pulling. A sticky piston pulls when it is unpowered.

Pulling[edit | edit source]

A sticky piston also pulls the block attached to its head and any blocks attached to the head via slime- or honey blocks, but not any of the other blocks it may have pushed.

A sticky piston cannot pull a falling block.

Spitting[edit | edit source]

This section is named by the community.
 
An official name has not been given. Please update the name if confirmed by reliable sources.

In Java Edition, sticky pistons finish extending early and start retracting if they lose power before the extension process is over; most 2 game tick long pulses, some 3 game tick long pulses (when start delay is present) and all pulses equal or shorter than 1 game tick that pistons can react to allow this to happen. This causes a sticky piston to "spit" the blocks it's pushing, leaving them behind when it starts to retract. Also, the first out of the blocks that are being moved ends up in its final position earlier. This behavior is referred to as "block spitting" or sometimes "block dropping".[2]

A sticky piston still pulls a block back if the piston extended through an air gap to contact the block.

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. Can be pushed, but not pulled.
Can be pushed and pulled, but breaks if unsupported, turning to drops when applicable. Breaks when pushed or unsupported, turning into drops.
Can be pushed and pulled, but breaks if unsupported, turning to drops when applicable.
Can be pushed and pulled, but breaks if unsupported, turning to drops when applicable.
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. Cannot be pulled when in a falling state.
Can be pushed or pulled, but falls if unsupported. Cannot be pulled when in a falling state.
Breaks when pushed, unless if in a falling state. Cannot be pulled.

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

Exceptions[edit | edit source]
  • 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. In Java Edition, the piston moving the block can be powered 1 block event after the piston moving the rail in order for the rail to successfully move without breaking. Trying to move the rail and its support block with perpendicular pistons causes the rail to break (although it visually appears to not break because of the bug MC-75716).
    • Rails re-orient themselves after being pushed, similar to when placed manually.
  • Dead coral and dead coral fans: In Java Edition, they can be pushed and pulled similarly to how rails can; however in some situations the coral will both break and get moved by the piston, emitting block updates at its original position.
    • This mechanic is frequently used in tnt dupers.


Technical components[edit | edit source]

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

Sounds[edit | edit source]

Generic[edit | edit source]

Java Edition:

[hide]BlockSprite stone.png: Sprite image for stone in Minecraft stone sound type
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
​Something falls on a blockEntity-DependentFalling on the block with fall damageblock.stone.fallsubtitles.block.generic.fall0.50.7516
​FootstepsEntity-DependentWalking on the blockblock.stone.stepsubtitles.block.generic.footsteps0.151.016

Bedrock Edition (piston):

[hide]BlockSprite stone.png: Sprite image for stone in Minecraft stone sound type
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
BlocksJumping from the blockjump.stone0.121.0
BlocksFalling on the block without fall damageland.stone0.221.0

Bedrock Edition (arm):

[hide]BlockSprite bricks.png: Sprite image for bricks in Minecraft normal sound type
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
BlocksJumping from the blockjump.stone0.121.0
BlocksFalling on the block without fall damageland.stone0.221.0
  1. MCPE-169612 — Many blocks make slightly different sounds to stone

Unique[edit | edit source]

Java Edition:

[hide]Sounds
SoundSubtitlesSourceDescriptionResource locationTranslation keyVolumePitchAttenuation
distance
​Piston movesBlocksWhen a sticky piston extendsblock.piston.extendsubtitles.block.piston.move0.50.6-0.858
​Piston movesBlocksWhen a sticky piston contractsblock.piston.contractsubtitles.block.piston.move0.50.6-0.88

Bedrock Edition:

[hide]Sounds
SoundSourceDescriptionResource locationVolumePitch
BlocksWhen a sticky piston extendstile.piston.out0.50.6-0.75
BlocksWhen a sticky piston contractstile.piston.in0.50.6-0.75

Data values[edit | edit source]

ID[edit | edit source]

Java Edition:

NameIdentifierFormBlock tags[hide]Translation key
BlockSprite sticky-piston.png: Sprite image for sticky-piston in Minecraft Sticky Pistonsticky_pistonBlock & ItemNoneblock.minecraft.sticky_piston
Name[hide]Identifier
BlockSprite piston.png: Sprite image for piston in Minecraft Block entitypiston

Bedrock Edition:

NameIdentifierAlias ID Numeric ID FormItem ID[i 1][hide]Translation key
BlockSprite sticky-piston.png: Sprite image for sticky-piston in Minecraft Sticky Pistonsticky_pistonNone29Block & Giveable Item[i 2]Identical[i 3]tile.sticky_piston.name
  1. ID of block's direct item form, which is used in savegame files and addons.
  2. Available with /give command.
  3. The block's direct item form has the same ID as the block.
Name[hide]Savegame ID
BlockSprite piston.png: Sprite image for piston in Minecraft Piston block entityPistonArm

Block states[edit | edit source]

See also: Block states

The sticky_piston block uses following block states:

Java Edition:

Name Default value Allowed values [hide]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
[hide]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[edit | edit source]

A sticky 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[show]
    • [NBT Compound / JSON Object] blockState: The moving block represented by this block entity.
    • [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. 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.
    • [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.

Video[edit | edit source]

History[edit | edit source]

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
  • extended sticky pistons in Legacy Console Edition
  • 1.19 changes
[hide]Java Edition Beta
? The original sticky piston was a mod posted on the Minecraft Forums by Hippoplatimus.[3] 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.[4]
1.7

Added sticky pistons, alongside associated head and moving blocks.
A bug existed in this version which caused the game to crash and lock the player out of their world when powering sticky pistons in some scenarios (for example when trying to push a redstone torch).
1.7_01The aforementioned bug has been fixed and affected worlds now load normally again.
Headless sticky pistons won't break upon receiving a block update anymore.
[hide]Java Edition
1.7.3Sticky pistons now spit the blocks they are pushing when powered by a short pulse.
[hide]Java Edition
1.3.112w22aSticky pistons now generate naturally inside jungle temples. In the temples, the pistons are used to form a puzzle mechanism.
12w26aSticky pistons now schedule extensions and retractions rather than executing them as soon as they are updated.
1.513w06aSticky pistons can now pull extended sticky and normal pistons as long as they are both depowered in the same tick, but only if the first one is updated before the other. This behavior is intended.[5]
1.814w17a The models for sticky 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 sticky piston with a slime block on top of it launches the entity (mobs, players, items, launched arrows, etc) into the air.
1.915w38bRetracting sticky pistons can now pull entities through them.[6] This was known as "piston translocation" by the community.
Sticky pistons can no longer pull extended sticky and normal pistons when depowered in the same tick due to a bug.[7]
15w49aUnextended sticky pistons, downward-facing sticky pistons, and upward-facing sticky piston heads are now considered to have a solid top surface, like upside-down stairs and top slabs.
1.1116w40aRetracting sticky pistons can no longer pull entities through them. "Piston translocation" has been removed.
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.
17w49aSticky pistons' block spitting behavior was accidentally removed while attempting to fix a bug.[8][9]
17w49bSticky pistons now spit blocks again.
pre3Slime blocks can no longer pull glazed terracotta attached to any side of a sticky piston, whatsoever.
1.1317w47aSticky pistons now can push note blocks.
pre6Sticky pistons now pull glazed terracotta again.
pre8Sticky pistons no longer pull glazed terracotta.
1.1418w43a

The textures associated with sticky pistons have been changed.
While the texture for oak planks was later updated in subsequent snapshots, the sticky piston texture is yet to be changed to reflect this.[10]
18w44aSticky pistons are no longer transparent.
18w46aExtended sticky pistons now allow light to pass through certain faces.
1.1519w41aAdded honey blocks, which have multiple different types of interactions with sticky pistons.
1.1620w06aThe hardness of sticky pistons has been increased from 0.5 to 1.5.
Pickaxes are now the tool for breaking sticky pistons.
Sticky pistons no longer pop off redstone components placed on the back when retracting.
1.1720w45aParticles now appear if a block is broken by a sticky piston.
1.1922w13aSticky pistons and piston heads now generate in ancient cities.
22w17a Changed sticky piston textures, to match the color of the oak planks on the piston head.
1.2124w20aSticky piston sounds have been updated to be quieter and less harsh.

24w21aSticky piston sounds have been reverted to what they previously were, but the attenuation distance and sound level has been halved.
[hide]Pocket Edition Alpha
v0.15.0build 1 Added sticky pistons.
Sticky pistons have a version exclusive animation and the ability to push block entities.
[hide]Bedrock Edition
1.10.0beta 1.10.0.3 The texture of sticky pistons has been changed.
1.20.30Preview 1.20.20.21Increased the hardness and blast resistance of sticky pistons from 0.5 to 1.5.
[hide]Legacy Console Edition
Xbox 360Xbox OnePS3PS4PS VitaWii USwitch
TU3CU11.001.001.00Patch 11.0.1 Added sticky pistons.
TU141.04Sticky pistons 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.
TU46CU361.381.381.38Patch 15Retracting sticky pistons can now pull entities through them. This was known as "piston translocation" by the community.
TU54CU441.521.521.52Patch 241.0.4Retracting sticky pistons can no longer pull entities through them. "Piston translocation" has been removed.
Sticky pistons can no longer pull glazed terracotta.
TU57CU491.571.561.56Patch 271.0.7Sticky pistons can now move daylight detectors.
TU60CU511.641.641.64Patch 301.0.11Sticky pistons can no longer move cauldrons.
TU62CU521.661.661.66Patch 311.0.12Sticky pistons can now move small chests but only if the new position would have been valid for players to place a new chest. This limitation can however be bypassed by moving the chests simultaniously.
Sticky pistons can move cauldrons again.
1.90 The texture of sticky pistons has been changed.
[hide]New Nintendo 3DS Edition
0.1.0 Added sticky pistons.

Data history[edit | edit source]

[hide]Java Edition Beta
1.7Six-sided sticky pistons exist as extreme metadata variants of sticky pistons.
[hide]Java Edition
1.814w26aPistons now use block states instead of metadata. As such, weird pistons have been removed.
1.1317w47aPrior to The Flattening, this block's numeral ID was 33.
[hide]Pocket Edition Alpha
v0.15.0build 1Weird sticky pistons also existed, but they didn't look six-sided.
[hide]Bedrock Edition
1.13.0beta 1.13.0.1Weird sticky pistons have been removed.
[hide]Legacy Console Edition
Xbox 360Xbox OnePS3PS4PS VitaWii USwitch
?Weird sticky pistons definitely existed at one point.

Issues[edit | edit source]

Issues relating to "Sticky Piston" are maintained on the bug tracker. Issues should be reported and viewed there.

Java Edition

  • MC-138455 – Sticky pistons failing to pull slime/honey blocks do not update blocks
  • MC-271202 – Piston / sticky piston head does not visually appear for a few frames after being powered from the side it is facing
  • MC-26727 – Sloped rails can stay raised when adjacent rails are pulled upwards by a sticky piston
  • MC-130183 – Waterlogged blocks retain their waterlogged state when moved with sticky pistons with short pulse
  • MC-159503 – Entities clip through blocks being spit out by sticky pistons
  • MC-215863 – Sticky pistons combined with slime blocks can create ghost blocks
  • MC-268607 – Observer on sticky piston is not triggering on retraction with wooden button
  • MC-59474 – Sticky Pistons not correctly pulling back slime in a retractable setup
  • MC-185572 – Sticky piston heads don't give updates when pulling a block

Bedrock Edition

  • MCPE-89921 – Observers dont activate redstone dust and repeaters when it is pushed by a sticky piston and that sticky piston gets powered by another observer
  • MCPE-123281 – Sticky Pistons Not Pulling Slime Blocks
  • MCPE-134598 – Falling Blocks break when block underneath is pulled horizontally by retracting sticky piston
  • MCPE-151535 – Inconsistent hopper collection of items pushed on ice by slime block on sticky piston
  • MCPE-165945 – Entities in blocks get pulled through the back of retracting sticky pistons
  • MCPE-171802 – Short sneaking doesn't work properly with sticky piston and stairs
  • MCPE-171903 – Calibrated sculk sensor and sticky pistons not updating correctly
  • MCPE-179911 – Heavy core cannot be pulled by a sticky piston
  • MCPE-181221 – Using a sticky piston and a composter, you can go through walls
  • MCPE-181290 – Shulkers cannot be pushed by sticky pistons and other blocks
  • And 1 other open issues.

Trivia[edit | edit source]

  • Mojang stated that the 12-block push limit for sticky pistons would not be changed, because "the current limitations are by design".[11]
  • When toggled between on and off rapidly with a gravity affected block (such as sand) above it, a sticky 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.
  • Carpet can be placed on the sticky piston extension block, and remains even if it is replaced with a solid block using /setblock.

Gallery[edit | edit source]

Screenshots[edit | edit source]

Mojang screenshots[edit | edit source]

See also[edit | edit source]

Notes[edit | edit source]

  1. Check the exceptions section
  2. Check the exceptions section
  3. Dragon eggs can be pushed, when in a falling state.
  4. In Java Edition, item frames are entities, not blocks. In Bedrock Edition, they are blocks.
  5. In Java Edition, if the "Fixed" NBT tag is set to "1", the item frame does not break when attempting to push it using a piston, but it still does not push. If the "Invulnerable" NBT tag is set to "1", the item frame breaks when pushed.
  6. Paintings are technically entities, not blocks.

References[edit | edit source]

  1. MC-171370 — resolved as "Works As Intended".
  2. This is due to Jeb once saying that the observer block's pulse "Allows tricking sticky pistons into dropping blocks" - https://www.reddit.com/r/Minecraft/comments/5c752g
  3. http://www.minecraftforum.net/viewtopic.php?t=247686&f=1032
  4. http://www.reddit.com/r/Minecraft/comments/hvkmo/attribution_of_the_piston_mod_in_vanilla_minecraft/
  5. MC-9342 — resolved as "Works As Intended".
  6. MC-89030
  7. MC-88959
  8. MC-122911
  9. MC-122711
  10. MC-248841 — resolved as "Works As Intended".
  11. "Piston Push Limits (and increases). The current limitations are by design." – Minecraft Feedback, January 3, 2019.
  12. "Trails Tales Update Out Today on Java"Minecraft.net, June 7, 2023.

External links[edit | edit source]

Navigation[edit | edit source]