From The Powder Toy
Jump to: navigation, search
PSTN.png Piston
Section Force Elements
Spawn temperature 22°C
Heat Conductivity 0%
Relative weight 100
Gravity 0
Acid dissolve rate 0%
Flammability 0
State Solid
Source code


Only with brush and clone.


When exposed to PSCN(SPRK) within its unique conductive range Pstn extends "away" in the direction opposite to which it was sparked. Piston similarly retracts when exposed to SPRK coming from any conductive material EXCEPT PSCN. (in other words, it's not only NSCN that can retract Pstn, but also INST, TTAN, &etc.). Pistons must be at least 2 blocks long. The distance away from the side of the Piston that extends when Sparked by PSCN determines how far the Piston extends during that current cycle. the same can be said about how far it will retract, given it's Sparked by anything other than PSCN. When piston extends, it creates a new particle of PSTN, this particle is noticeably a different color than normal piston, as this piston has a life of 1. Piston can only retract other piston when it's life is 1(or, any number but 0) and when it's in direct contact with piston. Piston was made to be used with Frame. If you want to move horizontally more than one Pixel, then Frame must be used. To use Frame with Piston you must place Frame perpendicular to the side that extends.(or, at a 90 degree angle from.). Piston can push up to 29 Pixels of Frame, with up to 14 Pixels of Frame on either side.

Advanced properties

Movement distance. Set with temperature, or with length of piston. The number of pixels by which a piston extends or retracts each time it is sparked depends on the length of the piston - longer piston = larger movement distance. In TPT version 91 and greater, this distance can also be set by changing the temperature of the piston particles. Each 10 degrees above 0°C (rounded to nearest 10 degrees) increases the movement amount by 1 pixel, and this is summed over all the particles in the piston.

Number of layers of particles moved. Set with tmp value. The default value (0) allows PSTN to push up to 30 layers. If tmp is 1 or greater, PSTN can push x layers, where x equals the current tmp value.

Max extension length. Set with tmp2 value. The default value (0) allows PSTN to extend up to 255 Pixels. If tmp2 is greater than zero, the max extension length is the tmp2 value. This can be useful when you need the PSTN to extend farther than its default 255, or where you need it to stop at any given length.

Blocking element. Set with ctype. If the ctype of Pstn is for example DMND, and if the PSTN that extends comes into contact with DMND the Piston will cease to be able to extend, and will not retract the DMND if it is then retracted. This can be useful if you don't want certain types of elements to be pushed or pulled by the Piston, or if you want the piston to simply stop at a certain place. Needless to say it not only works with DMND but any given ctype. In fact while Diamond is indestructible, it's not immovable and thus, Piston can "destroy" diamond, by pushing it off-screen.


This save demonstrates in what order to place the conductive elements to the Piston, and goes on to show how Piston behaves with altered values such as TMP, TMP2& ctype.
Language: [[::Element:PSTN|English]]