Tutorials/Zero-tick pistons

From Minecraft Wiki
Jump to: navigation, search
The following paragraph demonstrates the use of MC-8328 to make a contraption.
Bugs of this nature may be fixed at any time without warning: when this happens, the contraption will cease to work.
Use at your own risk.

This tutorial seeks to teach the player how to make a redstone signal last 0 redstone ticks and go over how this could be used, particularly with its uses on pistons.

Introduction[edit]

When a redstone signal is sent through a pulse limiter, it shortens the pulse. When the pulse is shortened enough, strange behaviors arise. If a sticky piston is powered by a 1-tick pulse, it will push out but retract again instantly. This leaves it unable to retrieve the block it pushed, but also be able to instantly push again.‌[Java Edition only] Even if there are multiple blocks to be pushed, the sticky piston will be push or pull them instantaneously. Due to technical reasons, this does not work with regular pistons.

Using specific redstone timings, a piston can be powered and unpowered at the same time. Slow-motion tools can be used to see this odd behavior in action. This happens when a redstone pulse turns on and off in the same tick. In other words, if the pulse lasts 1 game tick or half of a redstone tick. Since it lasts less than 1 redstone tick, a pulse of this length has been nicknamed the "0-tick."

Creating a 0-tick pulse[edit]

Producing a 0-tick pulse

Although repeaters and comparators have the same minimum delay (1 redstone tick), comparators are handled later in any one game tick after repeaters. This can be used to create a signal cut-off circuit that produces a 0-tick pulse.

To do so, the 0-tick redstone line should be powered through a block by a repeater. That block needs to have a sticky piston facing it, so when the piston is powered, the redstone line is not powered. Face a comparator into the piston so the piston is powered by the comparator and put the repeater and comparator on the same input. Now when they are powered, a 0-tick pulse should come from the output wire. It may be difficult to see since it is almost seven times faster than a blink of an eye.

Creating a 0-tick Clock[edit]

This is a top down view of the clock without a block in it.

A 0-tick clock is made by putting two 0-tick block pushers facing each other and pushing a block between themselves, one line will appear on, while the other appears off, each has unique behavior, the "off" line is BUD-proof, while the "on" line allows for BUD pistons, and to set which is which, simply place a lever on the torch under the side you wish to be "on" and flip it twice, also this lever can turn it off.

Another thing to note is that if it is built right, the block WILL NOT seem to move while the piston heads will glitch through it, and the redstone lines WILL NOT pulse at all.

This is a top down view of the clock with a block in it.
Side view of a running 0-tick Clock

Uses of 0-ticking[edit]

Since a comparator does not react to a 0-tick pulse and the pulse will lose its effects if it goes through a repeater, most 0-tick uses involve pistons. Pistons can be used to move blocks before the game has a chance to react as it normally would.

Embedding entities[edit]

"Terrarium" - parrot embedded in a glass block. The block was placed  onto the parrot using a zero-ticked piston.

Normally, when you power a sticky piston with a block on it towards an entity, and the entity has enough room to move, it will be pushed by the block. Zero-ticking a block places it over the space occupied by the entity without moving the entity. This can be used decoratively, e.g. creating 1-block glass 'display cases' with entities (mobs, armor stands) inside, or offensively, causing mobs to suffocate if using solid blocks, or in contraptions where you can overlay an armor stand and a solid block within the same space, e.g. for vertical signal transport using piston and tripwire, crossing with horizontal transport through the block.

Chorus plants[edit]

The following paragraph demonstrates the use of MC-113809 to make a contraption.
Bugs of this nature may be fixed at any time without warning: when this happens, the contraption will cease to work.
Use at your own risk.

If end stone directly underneath a chorus flower is pushed by a 0-ticked piston, and another end stone takes its place, the chorus flower will instantly grow if it has the space, and instantly mature if it doesn't[until JE 1.16]. Done properly, this can allow a farm to be built where the player plants a chorus flower near bedrock level and the flower's endstone is 0-ticked over and over again until it reaches the build limit where another player can break that chorus flower. The concept can be seen in this video:

Manual 0-tick cactus farm

Cacti[edit]

If sand directly underneath a cactus is pushed by a 0-ticked piston, and another sand takes its place, the cactus growth state will go up by one.[until JE 1.16] This can cause a farm that can produce about 16,000 cacti per hour with a 0-tick cactus farm array or a four-sided setup which produces 2,250 cacti per hour.