Redstone Comparator

From Box of Rocks WIKI
Revision as of 09:00, 19 April 2021 by redstone>MikhailMCraft (→‎Breaking: grammatical change)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Redstone Comparator
Renewable

Yes

Stackable

Yes (64)

Tool

Any tool

Blast resistance

0

Hardness

0

Luminant

No

Transparent

Yes

Flammable

No

Catches fire from lava

No

A redstone comparator is a block used in redstone circuits to maintain, compare, or subtract signal strength, or to measure certain block states (primarily the fullness of containers).

Obtaining

Breaking

A redstone comparator can be broken instantly with any tool, including the player's fist, and drops itself as an item.

Block Redstone Comparator
Hardness 0
Breaking time
Default 0.05

A redstone comparator is removed and dropped as an item if:

  • its attachment block is moved, removed, or destroyed;
  • water flows into its space;‌[Java Edition only]
  • a piston tries to push it or moves a block into its space.

If lava flows into a redstone comparator's space, the redstone comparator is destroyed without dropping itself as an item.

Crafting

Ingredients Crafting recipe
Redstone Torch +
Nether Quartz +
Stone

Usage

A redstone comparator can be placed on the top of any opaque block with a solid full-height top surface (including upside-down slabs and upside-down stairs). In Bedrock Edition, a comparator can also be placed on walls and fences. For more information about placement on transparent blocks, see Opacity/Placement.

The redstone comparator has a front and a back — the arrow on the top of the comparator points to the front. When placed, the comparator faces away from the player. The comparator has two miniature redstone torches at the back and one at the front. The back torches turn on when the comparator's output is greater than zero (the arrow on top also turns red). The front torch has two states that can be toggled by using the comparator:

  • Down and unpowered (indicating the comparator is in "comparison mode")
  • Up and powered (indicating the comparator is in "subtraction mode")

The redstone comparator can take a signal strength input from its rear as well as from both sides. Side inputs are accepted only from redstone dust, redstone blocks, redstone repeaters and other comparators. The redstone comparator's front is its output.

It takes 1 redstone tick (2 game ticks, or 0.1 seconds barring lag) for signals to move through a redstone comparator, either from the rear or from the sides. This applies to changing signal strengths as well as simply to turning on and off. Redstone comparators usually do not respond to 1-tick fluctuations of power or signal strength — for example, a 1-clock input is treated as always off from the side, and always on from the rear.

The redstone comparator has four functions: maintain signal strength, compare signal strength, subtract signal strength, and measure certain block states (primarily the fullness of containers).

Maintain signal strength

A redstone comparator with no powered sides outputs the same signal strength as its rear input.

Compare signal strength

File:Comparators Explained.png
Comparators in comparison mode.

A redstone comparator in comparison mode (front torch down and unpowered) compares its rear input to its two side inputs. If either side input is greater than the rear input, the comparator output turns off. If neither side input is greater than the rear input, the comparator outputs the same signal strength as its rear input.

Formula: Output = Rear × (Left <= Rear AND Right <= Rear)

Subtract signal strength

A redstone comparator in subtraction mode (front torch up and powered) subtracts the signal strength of the higher side input from the signal strength of the rear input.

Formula: Output = max(Rear - max(Left, Right), 0)

For example: if the signal strength is 6 at the left input, 7 at the right input and 4 at the rear, the output signal has a strength of max(4 - max(6, 7), 0) = max(4-7, 0) = max(-3, 0) = 0.

If the signal strength is 9 at the rear, 2 at the right input and 5 at the left input, the output signal has a strength of max(9 - max(2, 5), 0) = max(9-5, 0) = 4.

Measure block state

A redstone comparator can measure the fullness of a chest, as well as other block states, even through a block.

A redstone comparator treats certain blocks behind it as power sources and output a signal strength proportional to the block's state. The comparator may be separated from the measured block by a solid block. However, in Java Edition, if the solid block is powered to signal strength 15, then the comparator outputs 15 no matter the fullness of the container.[1]

Containers

Minimum Items for Container Signal Strength
Containers


Template:EntitySprite


Template:EntitySprite

Total Number of Slots 3 5 9 27 54 1
Power Level Number of Items Music Disc
0 0 0 0 0 0 No music disc inserted
1 1 1 1 1 1 "13"
2 14 23 42 1s
60
3s
55
"cat"
3 28 46 1s
19
3s
55
7s
46
"blocks"
4 42 1s
5
1s
60
5s
51
11s
37
"chirp"
5 55 1s
28
2s
37
7s
46
15s
28
"far"
6 1s
5
1s
51
3s
14
9s
42
19s
19
"mall"
7 1s
19
2s
10
3s
55
11s
37
23s
10
"mellohi"
8 1s
32
2s
32
4s
32
13s
32
27s "stal"
9 1s
46
2s
55
5s
10
15s
28
30s
55
"strad"
10 1s
60
3s
14
5s
51
17s
23
34s
46
"ward"
11 2s
10
3s
37
6s
28
19s
19
38s
37
"11"
12 2s
23
3s
60
7s
5
21s
14
42s
28
"wait"
13 2s
37
4s
19
7s
46
23s
10
46s
19
"Pigstep"
14 2s
51
4s
42
8s
23
25s
5
50s
10
15 3s 5s 9s 27s 54s

Using a redstone comparator to measure the state of a container will output a signal strength in proportion to how full the container is (0 for empty, 15 for full, etc.).

Containers that can be measured by a comparator include:

Generally speaking, the comparator output signal strength represents the average fullness of the slots, based on how many of that item form a full stack (64, 16, or 1 for non-stackable items).

The Minimum Items for Container Signal Strength table (right) shows the minimum number of 64-stackable items required to produce the different signal strengths from each type of container. Numbers followed by an "s" indicate the number of normal 64-stack equivalents ("s"), and additional items less than a stack required. For items that stack in 16 maximum (snowballs, signs, ender pearls, etc.), normal value must be divided by 4, each unity is equal to 4. Example: 3 ender pearls *4 = 12 normal stackable items. Each non-stackable item counts as one full-stack(64).

For example, to produce a signal strength of 10 from a hopper requires the equivalent of 3 full stacks plus 14 more items, or 206 items total, assuming they all stack in 64.

When a comparator measures a large chest or large trapped chest, it measures the entire large chest (54 slots), not just the half directly behind the comparator. A chest or trapped chest that cannot be opened (either because it has an opaque block, ocelot, or cat above it) always produces an output of 0 no matter how many items are in the container — shulker boxes can always be measured, even if they cannot open.

Calculating signal strength from items
When a container is empty, the output is off.
When it is not empty, the output signal strength is calculated as follows:
signal strength = floor(1 + ((sum of all slots' fullnesses) / (number of slots in container)) * 14)
fullness of a slot = (number of items in slot) / (max stack size for this type of item)
Example: 300 blocks in a dispenser (which has 9 slots), where each block stacks to a maximum of 64, produces output with a signal strength of 8:

1 + ((300 items / 64 items per slot) / 9 slots) * 14 = 8.292, floored is 8

Note that a non-stackable item is counted as a full slot (1 item in a slot, with a max stack size of 1: 1 / 1 = 1.0), and items that stack up to 16 (such as ender pearls, snowballs and eggs) are similarly considered a full slot at 16.
Calculating items from signal strength
It can be useful in redstone circuits to use containers with comparators to create signals of a specific strength. The number of items required in a container to produce a signal of desired strength is calculated as follows:
items required = max(desired signal strength, roundup((total slots in container * 64 / 14) * (desired signal strength - 1) ) )
Example: To use a furnace (which has 3 slots) to create a strength 9 signal, players need 110 items:

max(9, (3*64/14)*(9-1)) = 109.714, rounded up is 110

Miscellaneous

File:Comparator storage.png
Comparators used to measure containers.

Some non-container blocks can also be measured by a redstone comparator:

Beehive and Bee nest
A hive or nest outputs a signal strength equal to the amount of honey in the hive/nest.
Cake
A cake outputs a signal strength relative to the amount of cake remaining. Each slice is worth 2 signal strength, with 7 total slices, for an output of 14 for a full cake.
Cauldron
A cauldron outputs different signal strengths depending on how much water is inside. From completely empty to completely full, the output values are 0, 1, 2, and 3. If lava is inside, the strength is always 1‌[upcoming: JE 1.17] or 3‌[Bedrock Edition only]
Composter
A composter outputs different signal strengths depending on the level inside. From completely empty to completely full, the output values are 0, 1, 2, 3, 4, 5, 6, 7 and 8.
Command Block
A command block stores the "success count" of the last command executed, which represents the number of times the most recently used command of this command block succeeded. A "success" is defined by the command's success conditions: if a red error message is returned in the chat, the command was not successful.
Most commands can succeed once per execution, but certain commands (such as those that accept players as arguments) can succeed multiple times, and the comparator outputs the number of times it succeeded (maximum 15 when sent to redstone dust, but in the code is able to go up to 32-bit integer limit, and can be used in contraptions with no redstone dust with those values).
A command block continues to store the success count of the last command executed until it executes its command again, thus the comparator continues to output the same signal strength even after the command block is no longer being activated (it doesn't turn off when the signal to the command block turns off).
Daylight Sensor
A Daylight Sensor outputs a signal strength that varies with the time of day (or time of night if inverted).
End Portal Frame
An end portal frame outputs a full signal of 15 if it contains an eye of ender and zero otherwise.
File:Item frame and comparator.png
A comparator can measure the presence and rotation of an item frame's contents.
Template:EntityLink
A comparator can measure the state of an item frame's contents. An item frame comparator outputs 0 if the item frame is empty, or 1 to 8 for any item depending on its rotation: 1 at initial placement, plus 1 for each 45° of rotation for a maximum of 8.
For an item frame that holds a map, a unit of rotation is 90° instead of 45°, but a comparator still outputs power levels 1 to 8. It takes two full rotations to cycle through all comparator outputs, and each orientation of the map corresponds to two output levels that differ by 4.
The comparator must be placed behind the block the item frame is attached to, facing away from the item frame. The block must be a full block, and the item frame cannot be submerged in water. Having a sign in the same block as the item frame will prevent the frame from sending a signal as well.‌[Java Edition only]
Jukebox
A jukebox outputs a signal strength indicating which music disc is currently playing. See the Minimum Items for Container Signal Strength table above.
Lectern
A lectern outputs a signal strength that depends on what page the player is currently on (e.g. a book with 15 pages powers 1 redstone level per page, or one with 5 pages emits 3 signal strength per page).
Respawn Anchor
A respawn anchor outputs a signal strength of 0, 3, 7, 11, or 15, depending on the "charged" value.
Sculk Sensor[upcoming: JE 1.17 & BE 1.17]
A sculk sensor outputs a signal strength depending on the type of vibration that is detected.
Target
A target outputs a signal strength depending on the accuracy of an arrow toward the center of the target.

Sounds

Generic

Java Edition:

SoundSubtitleSourceDescriptionNamespaced IDTranslation keyVolumePitchAttenuation
distance
File:Wood dig1.oggFile:Wood dig2.oggFile:Wood dig3.oggFile:Wood dig4.oggBlock brokenBlocksOnce the block has brokenblock.wood.breaksubtitles.block.generic.break1.00.816
File:Wood hit1.oggFile:Wood hit2.oggFile:Wood hit3.oggFile:Wood hit4.oggFile:Wood hit5.oggFile:Wood hit6.oggNone[sound 1]BlocksFalling on the block with fall damageblock.wood.fallNone[sound 1]0.50.7516
File:Wood hit1.oggFile:Wood hit2.oggFile:Wood hit3.oggFile:Wood hit4.oggFile:Wood hit5.oggFile:Wood hit6.oggBlock breakingBlocksWhile the block is in the process of being brokenblock.wood.hitsubtitles.block.generic.hit0.250.516
File:Wood dig1.oggFile:Wood dig2.oggFile:Wood dig3.oggFile:Wood dig4.oggBlock placedBlocksWhen the block is placedblock.wood.placesubtitles.block.generic.place1.00.816
File:Wood hit1.oggFile:Wood hit2.oggFile:Wood hit3.oggFile:Wood hit4.oggFile:Wood hit5.oggFile:Wood hit6.oggFootstepsBlocksWalking on the blockblock.wood.stepsubtitles.block.generic.footsteps0.151.016

Bedrock Edition:

SoundSourceDescriptionNamespaced IDVolumePitch
?BlocksOnce the block has brokendig.wood1.00.8
?BlocksFalling on the block with fall damagefall.wood0.41.0
?BlocksWhile the block is in the process of being brokenhit.wood0.230.5
?BlocksJumping from the blockjump.wood0.121.0
?BlocksFalling on the block without fall damageland.wood0.181.0
?BlocksWalking on the blockstep.wood0.31.0
?BlocksWhen the block is placeduse.wood1.00.8

Unique

Java Edition:

SoundSubtitleSourceDescriptionNamespaced IDTranslation keyVolumePitchAttenuation
distance
File:Click.oggComparator clicksBlocksSound played when switching between comparison and subtraction modesblock.comparator.clicksubtitles.block.comparator.click0.25?16

Data values

ID

Java Edition:

NameNamespaced IDFormTranslation key
Redstone ComparatorcomparatorBlock & Itemblock.minecraft.comparator
NameNamespaced ID
Block entitycomparator

Bedrock Edition:

Redstone ComparatorNamespaced IDNumeric ID FormTranslation key
Unpowered blockunpowered_comparator149Blocktile.unpowered_comparator.name
Powered blockpowered_comparator150Blocktile.powered_comparator.name
Itemcomparator404Itemitem.comparator.name
NameSavegame ID
Block entityComparator

Metadata

See also: Data values

In Bedrock Edition, redstone comparators use the following data values: Template:/DV

Block states

See also: Block states

Template:/BS

Block data

A redstone comparator has a block entity associated with it that holds additional data about the block.

Template:/BE

Video

History

This section is missing information about Did MC-50242 also affect comparators?. 
Please expand the section to include this information. Further details may exist on the talk page.

For a more in-depth breakdown of changes to repeater textures and models, including a set of renders for each state combination, see /Asset history

Java Edition
November 24, 2012Jeb stated that there may be a "capacitor" in Minecraft.
December 27, 2012Dinnerbone released pictures of the first version of the "comparator", stating it was a replacement for the "capacitor" idea that has variable, alternate inputs.
January 2, 2013Dinnerbone released one more picture of the comparator. The picture itself showing a digital-to-analog converter, using the comparator as the main block.
1.513w01a32px 32px 32px 32px 32px Added redstone comparators.
Redstone comparators have 0 delay.
13w01bA delay of 1 game tick (12 redstone tick) has now been added to redstone comparators to fix bugs.
The ability to measure containers to redstone comparators has now been added.
13w02a32px 32px 32px 32px The appearance of redstone comparators has now been changed - the top texture has changed to show quartz in the middle and the sides now use the smooth stone texture rather than the smooth stone slab side texture.
The algorithm for measuring containers has now been changed so that redstone comparators output a signal with as few as 1 item in the container.
13w02bRedstone comparators now treat large chests as a single container.
13w03aRedstone comparators now output success count of command blocks.
Redstone comparators now measure container minecarts on detector rails.
13w04aRedstone comparators now measure jukeboxes.
13w05aRedstone comparators no longer cause constant block updates. The delay has now been made consistent, and side input no longer causes a pulse output.
Block 150 (powered_comparator) is no longer used; powered state is now represented by the 8s bit on block 149 (unpowered_comparator).
13w05bRedstone comparator delay has now been changed from 1 game tick (1/2 redstone tick) to 2 game ticks (1 redstone tick).
13w09cThe redstone signal strength from a redstone comparator next to a brewing stand with 3 water bottles in it is now the same as one with 3 water bottles and 1 ingredient in it.
1.6.113w18aRedstone comparators now measure cauldrons and end portal frames.
1.814w04aRedstone comparators now measure item frames.
14w10aThe torches under redstone comparators have now been shortened, which has changed the underside appearance from 32px 32px 32px 32px to 32px.
14w25a32px 32px 32px 32px The torches on comparators are now subject to ambient occlusion.
Comparators set to subtract mode appear to be powered as well regardless of incoming power. The subtracting-only model still exists and can be achieved through /setblock.
14w25b32px 32px The powered front torch when in subtraction mode is now lower.
Comparators set to subtract by hand now appear normally again.
14w28aRedstone comparators now measure cakes.
1.915w42aWith the addition of the blaze powder fuel slot, brewing stands now have 5 slots instead of 4. Their original comparative power values from redstone comparators are listed below:
15w47aRedstone comparators' side inputs now take power from redstone blocks.
1.1317w47aAll 3 IDs for the redstone comparator have now been merged into one ID: comparator.
Redstone comparators now render their underside, which has changed their undersides from 32px to 32px.
Prior to The Flattening, these blocks' numeral IDs were 149 and 150, and the item's 404.
1.1418w43a32px 32px 32px 32px 32px The textures of redstone comparators have now been changed.
19w02aRedstone comparators now measure lecterns.
19w03aRedstone comparators now measure composters.
19w12bRedstone comparators can now be placed on glass, ice, glowstone and sea lanterns.
1.1519w34aRedstone comparators now measure how much honey is inside bee hives and bee nests.
1.1620w06aThe way to calculate the input signals of redstone comparators has now been changed.
20w11aThe changes to the way of calculating the input signals of redstone comparators from 20w06a have now been reverted.
20w16aRedstone comparators now measure Pigstep music discs in jukeboxes.
Upcoming Java Edition
1.1720w45aRedstone comparators now measure Lava cauldrons.
20w46aRedstone comparators now measure Powder Snow Cauldron‌s.
Pocket Edition Alpha
v0.14.0build 132px 32px 32px 32px[verify] 32px Added redstone comparators.
Pocket Edition
1.0.0alpha 0.17.0.1Redstone comparators now measure end portal frames.
1.0.5alpha 1.0.5.0Redstone comparators now output success count of command blocks.
1.1.0alpha 1.1.0.0Redstone comparators now measure shulker boxes.
Bedrock Edition
1.2.0beta 1.2.0.2Redstone comparators now measure jukeboxes.
Redstone comparators now render their underside, which has changed their undersides from 32px to 32px
1.10.0beta 1.10.0.332px 32px 32px 32px 32px The textures of redstone comparators have now been changed.
1.11.0beta 1.11.0.1Redstone comparators now measure smokers, blast furnaces, lecterns and composters.
Legacy Console Edition
TU19CU7 1.12 Patch 11.0.132px 32px 32px 32px[verify] 32px Added redstone comparators.
TU31CU19 1.22 Patch 3Redstone comparators can now measure item frames.
1.90 32px 32px 32px 32px[verify] 32px The textures of redstone comparators have now been changed.
New Nintendo 3DS Edition
0.1.032px 32px 32px 32px[verify] 32px Added redstone comparators.

Redstone comparator "items"

This section is missing information about
  • Bedrock Edition history (addition, changes made)
  • Pick Block functionality. 
Please expand the section to include this information. Further details may exist on the talk page.
Java Edition
1.513w01a32px 32px Redstone comparators have extra, unobtainable item forms corresponding to their block IDs, which use the smooth stone slab side texture. They can be obtained via the /give command or inventory editors with numeric item IDs 149 and 150.
13w02a32px 32px Following texture storage reforms, the comparator items now use the respective comparator top textures, making the items distinguishable.
?Both items are called tile.comparator.name.
1.7.213w37aThe direct item forms of redstone comparators have been removed from the game. They can no longer exist as items in any way, only as placed blocks.

Issues

Issues relating to "Redstone Comparator" are maintained on the bug tracker. Report issues there.

Trivia

  • Comparators are intentionally designed by Mojang to not emit redstone particles when powered, unlike redstone torches and repeaters.[2]

References

  1. MC-64394 (resolved as "Works As Intended")
  2. MC-51692 (resolved as "Works As Intended")

de:Redstone-Komparator es:Comparador de redstone fr:Comparateur de redstone hu:Redstone-komparátor ja:レッドストーンコンパレーター ko:레드스톤 비교기 nl:Redstonevergelijker pl:Komparator pt:Comparador de redstone ru:Компаратор zh:红石比较器