Tutorials Block update detector


Info

The Block Update Detector, or "BUD switch", is a redstone Redstone Transparency Yes Luminance No Blast resistance 0 Tool Any tool Renewable Yes Stackable Yes (64) Flammable No Availability Survival Drops Redstone (1) Data values See Data values Name See Data values This article is minecraft mechanism that uses quirks in the game in order to detect changes in nearby blocks. There are many different designs that are all based on the same general idea: a redstone circuit is put in a state where it should be following a mechanic, but the game has not updated the block to follow this rule. This lazy block then functions as the "sensor." When an adjacent block changes state in some way, the game updates all adjacent block including the sensor block and "wakes it up." The circuit then performs some other action and, with most designs, goes back into the sleeping state.

What it detects

The BUD switch detects the following events when they happen next to the sensor block:

Block and block state changes a BUD will not detect (some of them can be detected when a CUD (or an Observer) is used) include:

Videos

Types of BUD Switches

Below is a comprehensive video from SethBling, which showcases a variety of compact block update detectors, mostly making use of the redstone block.

In-Game

The BUD switch now has a compact block form in-game and it was added in 1.11 snapshot 16w39a called the `Observer`.

Water Based

This BUD switch takes advantage of the fact that water flows toward the nearest hole, but it doesn`t notice new holes until the water is updated. The water source block acts as the sensor. This design is outdated and is more complicated than newer designs.

Water+boat BUD switch, complete
Water+boat BUD switch, hidden details

This variation is simpler but not resettable.

Water BUD switch. Less expensive and easier to set up than most other BUD switches. The wire goes through the hole.

Piston Based

Many BUD switch designs exploit a property of pistons Piston Transparency Yes Luminance None Blast resistance 2.5 Tool Any tool Renewable Yes Stackable Yes (64) Flammable No Drops Itself Data values See Data values Pistons are blocks capable of pushing most blocks, depending on minecraft called quasi-connectivity. A piston can receive power through the space directly above it, as if it were two blocks high. In this case, the power source is either above and to the side of the piston, or two blocks above it. Be that as it may, when powered in this way, the piston does not immediately notice changes in the state of the power source. When some other block update happens next to the piston, it will "wake up" and react to the change. By forming a feedback loop, where the state of the piston controls the state of its power source, it becomes the sensor of a simple BUD switch:

In this design, the piston will only extend in response to an adjacent block update, but after extending it will immediately retract because the arm of the piston notices the repeater next to it turning off. This is how a piston BUD resets itself: by having the power run next to the extended piston arm, with a delay.

Note: If the block diagonally adjacent to the sticky piston becomes horizontally adjacent, the circuit will constantly pulse instead.

This design can be extended with multiple sensor blocks. All of the pistons in this design are sensors.

A piston-based "BUD array", with multiple sensor blocks. All the pistons are sticky.

A 1-wide tileable design using redstone blocks:









Alternative method: if you take a sticky piston facing parallel to the ground, then place a Block of Redstone on its face, and connect the Block of Redstone out to the side of the piston through a repeater that goes into a block diagonally adjacent to the piston, it works a fully functional BUD in 1.5. Then, if you set a delay of any number of ticks other than the default 1-tick delay on the repeater, it turns into a T-BUD. This process can also be reversed by setting the repeater back to its default 1-tick setting. (only works since releaseAnnounce of Redstone Blocks, though you could theoretically use a normal block and a Redstone Torch to mimic its effects.)

An extremely compact one-time design that is easily hidden and therefore ideal for traps is as follows: Place a piston, a sticky piston is most useful, parallel to the ground. Place a block one block to any side except the piston head and one block above the piston. On the side of the block facing the piston, place a redstone torch. Then place a lever on any other side of the block and switch it on. The redstone torch will go out but the piston will remain extended. You can then break everything except for the piston, but make sure to break the lever after you break the torch. A block update will then cause the piston to retract, possibly pulling the floor out from under the victim. Remember, though, that after the detector is tripped, it has to be rebuilt to be used again.


The design looks something like this:







Or, for it being smaller: You can make a 2x1 (3x1 when extended) BUD by having a 2 sticky pistons (stacked) both facing any direction except up and down, then on both of those sticky pistons add Redstone Blocks. Whenever a block is updated, (destroyed, placed... etc.) it will switch the bottom piston outwards. Good for traps, as the BUD may need to be compact. The only con to this is that it has to be reset.

Another extremely compact design involves using 1 sticky piston facing up with a slime block and redstone block stacked on top of it. This design is 1x3 (1x4 when extended) and allows the piston to be updated from 5 of its sides. It does not need to be reset after triggering, but you do need to make sure that the slime block isn`t grabbing a wall in order to activate in the first place.




Stuck-Piston Based

The following designs works because pistons can`t be pushed by other pistons while extended. And when a piston retracts, it doesn`t notify any other pistons that were trying to push it. The piston with the block attached to it is sticky and acts as the sensor. This design has the advantage of a low profile, and also that the quirk it exploits is less "buggy" and less likely to be fixed in the future.

A perpendicular "stuck piston" BUD switch. The piston with the block attached to it is sticky.
An in-line "stuck piston" BUD switch. Left piston is sticky.)

The latter design above can also be extended to an array in a variety of ways, including a one-wide design.

A very compact "in-line" BUD array. Every piston is a sensor except the one next to the obsidian. None of the pistons are sticky.
A one-wide BUD array. Every piston is a sensor except the one next to the obsidian. None of the pistons are sticky.

The more compact versions were first discovered in the video below.

The stuck-piston principle can also be used to hide a BUD completely underground, as shown by this video:

Dropper Based

Here is a video about this, it is 100% functional and it uses quasiconnectivity (BUD-Powering) and the dropper`s item inserting feature.

Redstone Dust Based

These BUDs stopped working on 1.5 when redstone dust updating bugs were fixed. Kept here for legacy purposes.

Quirks with redstone power propagation can be exploited to make BUD switches. One advantage of these designs is that they are silent.

These two BUD switches take advantage of the strange properties of redstone dust placed on top of glowstone or upside-down slabs. The piece of dust on top of the glowstone or upside-down slabs acts as the sensor. It only works with the torch facing north/south.

Redstone wire bud1.png

The following less compact design exploits an older bug involving redstone power level decay. The lever is on. The long redstone wire can be routed in various ways, but its length must be exactly the same as in this example. The sensor is the piece of redstone dust on top of the diamond block. That piece of dust does not need to be raised above the rest, but doing so exposes more of its sides to detect block updates.

Redstone wire bud2.png

Redstone Lamp Based

You can make a BUD switch out of a Redstone Lamp by adding it to another BUD switch which detects the On/Off states of the lamp. This is based on the fact that if you have a redstone signal pointing directly at the redstone lamp, you can go down 1 block to the sides, place a redstone dust there, place a block on top of the placed dust, the lamp will not update. It will only update once something updates adjacent to the redstone lamp. The other BUD detects that the game realizes that the redstone lamp has to be powered, and will update the other BUD.

This BUD stopped working on 1.5 when redstone lamps stopped giving updates when turned off. Now there`s another way to make this BUD using tall grass to detect if the lamp was turned off.

Powered Rail Based

This method uses a bug in the Powered Rail, which allows it to be powered without a redstone input. The first known occurrence of this type of BUD is here:

Redstone Torch Based

As of 14w25a (with the fix of MC-56541), a burned-out redstone torch can be used as a reliable BUD. Once burned-out, a redstone torch will reset upon an update from any adjacent block. This is the smallest and simplest BUD, only requiring a single torch and redstone dust (plus two repeaters for a solid output signal.)

A burned torch BUD with a solid output.

A redstone torch on the side of a block and put redstone dust make the redstone signal loops with itself is also a BUD.The place around the redstone torch (include upside and downside) is the detecting place,but not the redstone dust.The redstone torch will blink for 16 ticks,and finally burnt down.It has a 56 ticks cool down. It can`t detect sleeping in a bed.

Torch BUD.png

Variations

Other devices can be built using the same underlying principle as the BUD switch.

T-BUD

By eliminating the reset mechanism of a BUD switch, it becomes a T-BUD or Toggle-BUD. This device has two stable states, which it switches between when it detects a block update next to the piston. This is equivalent to a normal BUD connected to a T Flip-Flop, but much simpler to build. It is useful for tracking the state of blocks like furnaces, grass Grass Transparency Yes Luminance No Blast resistance 0 Tool Renewable Grass, Fern, Double variants: Yes Shrub: No Stackable Yes (64) Flammable Yes Drops Seeds (0–1) Data values Grass, Fern or Shrub dec: 31 hex: 1F bin: 11111 Double minecraft /dirt, and beds. Be that as it may, it has useful capabilities for placing some blocks two blocks away. When placing a piece of Redstone two blocks away, the t-bud activates when it is destroyed only. When placing a repeater Redstone Repeater Transparency Yes (partial) Luminance No (7 when powered, in Pocket Edition) Blast resistance 0 Tool Any tool Renewable Yes Stackable Yes (64) Flammable No Availability Survival, Creative Drops Redstone Repeater (1) Data values minecraft two blocks away, the t-bud activates only on the placement.

Note: As of Minecraft 1.7.4, the repeater in the picture must be set to a two tick delay. If the repeater is left at one tick, it will work as a BUD.

  1. ⃢₆ₑ it is unconfirmed in which version this has become a requirement.

CUD

A CUD is a circuit based on a Comparator that detects comparator updates, such as interactions in a chest, placement of signs or command blocks being changed. It also detects normal block changes and some data changes.

TEDUD.png

Comparators usually output a signal when an inventory block (such as a chest) with items in it is next to a comparator (or separated from the comparator with a solid block). When the Comparator detects changes, it updates itself which lets the Comparator itself `notice` that it should not output a current, because the chest is blocked by a block. The piston is only required to automatically reset the CUD.

History

The earliest known BUD switch is on the Minecraft Forums. 1
The term "BUD switch" was later coined by YouTuber EthosLab. 2


Alpha
1.0.1 Water based (non-renewable) and redstone dust based BUDs are now possible to make.
Beta
1.3 With the addition of repeaters, renewable water based and powered rail based BUDs are now possible to make.(Redstone dust is non-renewable.)
1.7 With the addition of pistons, piston-based and stuck-piston-based BUDs are now possible to make.
Official release
1.2.1 12w07a With the addition of redstone lamps, a redstone lamp based BUD is now possible to make.
1.5 13w01a Due to changes in the redstone code, many BUD models no longer detect data changes.
With the addition of redstone blocks, a simpler piston based BUD is now possible to make.
Redstone lamp and dust based BUDs are no longer possible to make, altrough there is an alternative way to make a redstone lamp based BUD.
1.8 14w25a With the fix of MC-56541, redstone torch based BUDs are now possible to make.
1.11 16w39a Observer block added