Item Sorting
- Stackable Sorting
- Nonstackable Separators
- Sixteen-Stackable Separators
- Block Property-Based Nonstackable Sorting
- Dispenser/Item-Property Based Nonstackable Sorting
- Crafter-Based Item Sorting
- Unsortable Nonstackables
Stackable Sorting
Stackable item sorters separate items by type are the very base of of storage tech. Nearly every storage tech contraption uses an item filter or a variation on the concept.
How Item Filters Work
Most item filters utilize the property of items that only allows them to stack with items of the same item type and name. Hoppers are the main method for checking this. To sort a single item type, each slot of a hopper must be filled, as to only allow the item that will be sorted into the hopper. The last 4 slots are filled with a different item type/name. These are called "filler items". It is recommended that the filler items be named in an anvil to avoid accidental interference. The first slot contains the item that should be filtered.
For example, the following image shows the inventory of a filter hopper that will sort sticks. Note that the barrier items can be replaced with any other item.
A second hopper is placed beneath the filter hopper. The filter hopper cannot face into any other inventories as it is always unlocked. The hopper below it however is locked by default. This second hopper is used to remove any new items that enter the filter hopper. If an item enters the filter hopper, it means that the item type matches what is being sorted.
To know if an item has entered the hopper, a comparator is used to read the inventory fill level of the filter hopper. The hopper is filled in a way that if a single new item enters the filter hopper, the signal strength from the comparator will increase. This is used to unlock the second hopper and remove any new items until the item count is dropped below the threshold to lock the second hopper again.
The absolute simplest and cheapest item filter possible. The hopper on the top contains the inventory shown above.
Although the above filter is very cheap, it has some issues. Namely that it is not compact. The design cannot be repeated in a compact manner. The following filters are a solution to this.
Variations on the Item Filter
Signal Strength 3 Item Filters
The easiest way to make a compact. repeatable and overflow-proof (will not break if its output inventory is full) item filter is to use signal strength 3 (SS3) filters. These filters are named after the signal strength threshold they must meet to move items. To enter signal strength 3, a hopper requires at least 46 (64 stackable) items inside its inventory. Because of this, SS3 filters top hoppers have a different prefill than other filter types.
The filter hopper inventory on an overflow-proof SS3 item filter.
The following two images are common versions of SS3 filters.
The above filters are versatile and easy to use because of their ease of tiling. As long as the filter hopper prefill is done correctly, they can be placed directly next to each other without any interference.
5 TechRock item filters tiled. All 5 slices work independently of the others.
Double Hopper Speed Item Filters
A major limitation of the basic item filter is speed. A single hopper can only move 2.5 items per second. This is refered to as Hopper Speed, or HS for short. A single hopper is 1xHS (one times hopper speed) or 9,000 per hour. Despite how fast 9,000 items per hour sounds, many farm exceed this number easily. To avoid needing more filters, it is possible to speed up the rate that a single filter can move items. It is usually easiest to speed up a filter to double the rate of a single hopper by having the filter hopper push items at the same time the second hopper is pulling from them. Note that these 2xHS filters are not practical for main storage systems and are best used as sorting in farm outputs.
The following images are common versions of 2xHS item filters. Special prefill is marked as required per hopper. The output is split into 2 different 1xHS streams.
Piston-based 2xHS item filter. Trading low prefill for a piston.
A variation on the ImpulseSV filter, works at 2xHS. Note that the shovels may be replaced with named items, as long as they are a different name than the filler items in the filter hopper.
Signal Strength Independence
A major weakness of the simple ImpulseSV or TechRock item filters is the amount of the sorted item that needs to be held inside the filter hopper. Not only is this expensive, it also limits the amount of items that the filter can pick up at once.
A common first idea is to increase the amount of filler items in the filter hopper so that less sorted items are needed. This works in theory for solving our problem, but it also increases the maximum amount of items that can be in the hopper at once. This number is outside the range for signal strength 3 output, so the filter reads signal strength 4. Due to the method for tiling these filters, the adjacent filters will also activate, causing them to lose their prefill.
To combat this, the concept of Signal Strength Independence (SSI) was developed. As the name states, it separates the signal for each filter so that if the filter hopper contains an amount of items beyond the range for its desired signal strength, adjacent filters will not break.
The inventory of a SSI filter hopper
However, this idea is not as simple as it sounds to implement. Due to the nature of redstone dust, it is impossible for SSI filters to be one-wide-tileable with every slice remaining the same. SSI filters are always one-wide-AB-tilable, where every other slice changes.
Below is an example of SSI filters. There are too many versions of these filters to include them all here.
Nonstackable Separators
Many contraptions require that nonstackable items be split from the stackables, such as as universal storage inputs and farm storages.
Most nonstackable separators use the property of nonstackables that a comparator sees a slot with a nonstackable to be the same as a stack (64) of stackables.
Due to this, a single nonstackable item inside a dropper will cause a comparator reading it to output a signal strength of 2. Similarly, a hopper with a single nonstackable item will cause a comparator reading it to output a signal strength of 3.
A nonstackable separator using signal strength and droppers. The diamond represents any 64 or 16 stackable.
Sixteen-Stackable Separators
Block Property-Based Nonstackable Sorting
Although Nonstackable items cannot be sorted by conventional means, there are several items that have consistent sorting methods.
The simplest nonstackackable sorters use properties of blocks to whitelist or blacklist certain item types. To sort, items are attempted to be placed in an inventory, and if the item actually enters the inventory, then it is sorted (with the exception of shulker boxes, which are the inversion of this).
The following is a list of blocks with whitelisting properties, along with the items they can sort using it.
Chiseled Bookshelf - Enchanted books, written books, books (note that written books are 16 stackable and books are 64 stackable)
Brewing stand - Potions, water bottles
Jukebox - discs (individual discs can be sorted using their signal strength when played in a jukebox)
An Enchanted Book sorter using a chiseled bookshelf.
Note that the bookshelf may be replaced with any of the above blocks.
The slightly different setup required for disc sorting.
There is only only one block that has blacklisting properties: shulker boxes. These can be sorted by utilizing the fact that any item besides shulker boxes can be placed into a shulker box.
A Shulker Box sorter using the shulker box's blacklisting property.
Dispenser/Item-Property Based Nonstackable Sorting
The most versatile method of sorting Nonstackables by item-type is using dispensers. This is because dispensers have special interactions with a certain list of items.
The following is a list of all items that interact with dispensers in a unique way, as well as their method for sorting using that property
Note: this list is shown the order that items are typically sorted through in a Nonstackable Sorting System (NSS). Each sorter may not work if all previous item types have not been removed.
Shears/Brushes/Flint & Steel:
Shears are used by dispensers to interact with shearable mobs, such as sheep, bogged, and mooshrooms. Brushes are used to a similar effect on armadillos for their scutes. Because of this interaction, a dispenser will never shoot out shears or brushes from its inventory. These items can be sorted as shown below by firing a dispenser into a honey block as the item enters the dispenser. Shears and brushes will be left behind in the dispenser and move down into the hopper on the left, while other items will be shot into the honey block to be picked up by the hopper on the right. Note the honey block is not required, but it stops usage of durability on the sorted items, and allows the system to accept liquid buckets.A shears, Brush, and Flint & Steel separator.
These 3 items can be further differentiated using their own special properties.
Flint & Steel:
Flint and steel can be sorted using its ability to start fires with dispensers. As shown below, an observer detects the attempt to make a fire by the dispenser and unlocks a hopper below to remove any detected flint and steel. Note that this uses a durability point of the flint & steel. A Flint & Steel sorter
Copper Brush:
Brushes are not typically sorted from shears in a storage, but they can be sorted using their interaction with armadillos. The item from brushing an armadillo spawns in a predictable location, so it can be detected and used to allow only brushes through. This is not usually done as it uses a large portion of the brush's durability.
Shears:
In a practical NSS, shears are not sorted using any specific mathod, instead by removing flint & steel and brushes from the stream. However, it is possible to sort shears only by using the same method as brushes but with a sheep instead. This is impractical because of its speed.
Bucket of Water/Powdered Snow/Lava:
Buckets with liquid will not be shot out by a dispenser but their liquids will be placed in air, leaving an empty bucket inside the dispenser's inventory. The liquid can also be picked back up by the dispenser, so firing the dispenser twice will shoot out any non-liquid items and leave the bucket with liquid inside the dispenser to be removed by a hopper.
The 3 sortable liquid buckets can also be differentiated using their unique liquid properties.
Bucket of Water:
Water is the only fluid that can occupy the same space as another block (with the exception of powdered snow and vines due to a bug). To sort water, use the previously explained method of double-pulsing a dispenser, but face it into a slab, stair, or other waterloggable block that cannot be destroyed by lava. Powdered snow and lava will shoot out into the slab while water will be placed and picked back up, remaining in the dispenser.
Bucket of Powdered Snow:
Powdered snow can be sorted from lava using the fact that it is a block and movable by pistons. A typical powdered snow sorter will place the liquid on top of obsidian and attempt to activate a piston with a slime block touching the liquid facing downwards. If the liquid is water or lava, the piston will be able to move, as there is nothing in the way of its movement. If the liquid is powdered snow, it will attach to the slime and stop the piston from moving. Detecting when this happens allows the sorting of powdered snow from other liquids.
Bucket of Lava:
Lava is not sorted by property, and is instead sorted by default after all other liquids are sorted. However, it is possible to sort lava by flow speed or sponges, but this is impractical.
Boat/Chest Boat:
Boats and chest boats can be placed on water with dispensers. To sort boats and chest boats, face the dispenser into water with a hopper below it. Any non-boat items will be shot out and picked up by the hopper. Placed boats can be broken by fire, lava, or cactus and picked up with a hopper. Note that the dropped boat item tends towards the south.
Boat and Chest Boat separator
Chest boats can also be sorted from boats.
Chest Boat:
Chest boats have an inventory, so hoppers or droppers are able to place an item into them. The item leaving the hopper or dropper can be detected and used to sort chest boats from boats.
Minecart/Chest Minecart/Hopper Minecart/TNT Minecart:
Dispensers can place minecarts into rails. Non-minecart items are shot out. The placed minecarts can be broken by cactus, fire, or lava and picked up as items.
The four minecart types can also be separated by their properties. There are multiple methods of sorting each minecart.
Minecart:
Regular ridable minecarts will automatically pick up entities they run into, including armor stands. This can be detected by a pressure plate and the minecart can be diverted with a curved rail. Activator rails will kick the entity back onto the pressure plate.
The setup to sort ridable carts. The dust powers a curved rail below.
Chest Minecart:
Chest minecarts are one of the two minecarts with an inventory. To sort them, attempt to insert an unstackable item into the cart. If this fails, it is either a regular or TNT minecart. Otherwise, it is a hopper or chest minecart. The chest minecart can be sorted from the hopper minecart with a detector rail and comparator. When the minecart passes the detector rail, the comparator reads its inventory. Due to the slot count, the hopper minecart will give the comparator a dust signal strength of 3, and the chest minecart will give a signal strength of 1.
Hopper Minecart:
Hopper minecarts are sorted as a byproduct of the chest minecart sorting process, but they can also be sorted using their property of removing items from inventories above them.
TNT Minecart:
TNT minecarts' special property (exploding) makes them difficult to sort by property, so they are sorted by removing every other type of minecart.
A Hopper Minecart, Chest MInecart, and TNT Minecart sorter by Xeno.
Netherite Tools/Armor:
Netherite tools can be sorted with their property of fire resistance. When passed through lava, most items will be set on fire, but netherite items do not. Flaming items will activate any campfire that they touch, and burning items will not be destroyed if they are picked up quickly. Detecting a flaming item falling onto a campfire allows netherite to be sorted.
A netherite item sorter. No items are destroyed.
Crafter-Based Item Sorting
The main idea
crafter based item sorting works of a few specific crafting recipes. This opens the door to new items that we can sort automatically. And new ways to sort items and even a way to sort categories of items.
nonstackable sorting
Item voider:
A system that crafts any items with durability with every inputed item. It will successfully craft if the two items match. And the output is sent directly back into the crafters second slot this is important
This works because you input two items and output one so we say the other was voided. It’s used to sort items that normally can’t like tridents from fishing rods in the example of a drowned farm. You void the fishing rods. or in a raid farm you can use multiple voiders to delete the armour and tools and be left with the totems.
Beds/shields
you can sort beds/shields using the crafter. This is because you can dye a bed and put banners on shields. These two items are sorted the same way but for this explanation we will talk about beds just note whenever dye is mentioned it’s a banner.
similar to the item voider mentioned previously this needs a dye in the second slot of the crafter. It will attempt to craft everything that comes through the system but only beds will be dyed (note: boxes can be sorted this way too but there’s much better ways to sort boxes). In the case of shields this is where it ends. There one small edge case if a shield with a banner already applied is inputed it will not be sorted. As of writing there’s no other way to sort shields in vanilla without allays.
For beds however there’s a similar issue but it can be solved. For this example let’s say you have a white bed and the dye in the crafter is white, because you can’t dye a white bed white it won’t be sorted. However if you have another bed sorter attached to the output with a different dye like red it will dye that white bed red. This new red bed is sent back to the first bed sorter and it will be sorted because it’s no longer white. this is a very complicated way to sort beds but like shields it’s the only way.
Category sorting
note: this way of sorting will not output what you input as you will see.
stone types
you can sort all stone related blocks like cobblestone, stone bricks etc by converting them into mossy versions. This has very little use but it’s very interesting that this is possible.
Maps
maps are tricky to sort because they are a 64 stackable item but have unique properties that stop them from stacking with different maps. However you can use crafters to sort them by having an empty map in the second slot of the crafter. Actually storing the maps is the main problem with this.
Unwaxed copper
note: this is completely useless but possible nonetheless
by combining honeycomb (in the second slot) with copper blocks you can sort waxed and unwaxed copper because you can’t wax already waxed copper. However the output of the crafter is waxed copper and there is currently no way to automatically remove the wax. So there’s literally no use case for this sorter.
Written books
these Can be sorted using the copy mechanic that uses a book and quill to copy a written book. However you can’t copy a book that has been copied two times and therefore can’t be sorted this way
Unsortable Nonstackables
The following is a list of all nonstackables that cannot be sorted without allays or voiders by sustainable means:
- All armors excluding netherite
- Pickaxes, shovels, swords, axes, hoes, excluding netherite.
- Bow
- Mace
- Crossbow
- Trident (technically sortable but not as an item)
- Spyglass
- All goat horns
- Totem of Undying
- Elytra
- Fishing Rod
- Carrot on a Stick
- Warped Fungus on a Stick
- All horse armors
- Saddle
- Wolf armor
- Milk Bucket
- All banner patterns
- Buckets with fish, axolotls, or tadpoles (kills the mob inside and sorts as a water bucket)
The following is a list of nonstackable items that can be sorted but share a category with other nonstackables which they cannot be differentiated without the use of allays.
- All potions, including lingering from splash and drinkable
- All netherite tools and netherite armor
- Boat wood types
- Chest boat wood types
- Bed colors (bed sorting leaves all beds as one of 2 colors)
- Shulker box colors
- Disc 11 and Creator (Music Box)
- Wait and Creator discs
- Pigstep and Precipice discs
- Otherside and relic discs