Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jhuckaby/magic-sorting-system

A data pack for Minecraft 1.13, 1.14 and 1.15 (Java) for automatically sorting every item in the game.
https://github.com/jhuckaby/magic-sorting-system

datapack minecraft

Last synced: about 2 months ago
JSON representation

A data pack for Minecraft 1.13, 1.14 and 1.15 (Java) for automatically sorting every item in the game.

Awesome Lists containing this project

README

        

# Overview

![Main Screenshot](https://pixlcore.com/software/mss/screenshots/v2/main-v2.png)

The **Magic Sorting System** is a free [Data Pack](https://minecraft.gamepedia.com/Data_pack) available for [Minecraft](https://minecraft.net/) v1.13, v1.14, v1.15 and v1.16 (Java edition). It provides an easy way to craft an automatic, extensible item sorting system, which does not require redstone, nor console commands, nor command blocks. Items are teleported to matching item frames, where they can be routed via hoppers into chests or furnaces (so it still requires considerable resources and building). The whole system can be entirely built in survival mode, and supports both single and multiplayer (local or server install).

The sorting system works by providing a special magic drop off area, where you can dump any number of unsorted items (for e.g. when you come back from a mining trip), and they will be automatically sorted into [39 different categories](#groups), each with its own item frame. Note that you do not need all 39 categories to start out -- you can progressively build your storage system over time, and have it look however you want. You can also provide a "misc" (catch-all) category, which catches all items which don't have their own group built.

Items are teleported directly to their matching [item frames](https://minecraft.gamepedia.com/Item_Frame) for the category. The idea is that you can place a [hopper](https://minecraft.gamepedia.com/Hopper) directly under each item frame, which then routes the items into a connected chest (or multiple chests), or furnaces for auto-smelting. Item routing and storing is left up to the player, which can be simple or quite complex.

## Why

It is already possible to build a complete item sorting and storage system using built-in vanilla Minecraft features. I've seen some [incredible systems](https://www.youtube.com/watch?v=wsNV9Mo00Gw), and my hat is off to those amazing builders. However in practice, actually doing it is very difficult and tedious in my experience. It requires a large amount of hoppers and complex redstone contraptions for filtering. For example, to filter and store every item in the game, it would take at least 2 hoppers per unique item, or 1,550 hoppers total (3,875 iron ingots). Doing this in survival mode would take a very long time, and use up an enormous amount of space just for the machinery.

The magic sorting system is designed to make all this much easier to build. It requires only 1 hopper per category (39 categories total for sorting all items in the game), and handles all the item filtering and routing "magically" (i.e. by automatic item teleportation). It is server-friendly (lag-free), and it keeps survival gameplay balanced by requiring some expensive resources to start out.

Players can still build out custom storage systems using hoppers, chests, furnaces and more. They can be as simple or complex as they want. The magic sorting system *only* teleports items to special item frames. The rest is up to the player.

## Features at a Glance

- Build and setup everything in pure survival mode
- Design your storage system to look however you like
- Progressively add new categories over time
- Sorts 878 unique items into 39 categories
- Unsorted items automatically go into a "misc" group
- Can have multiple sorting systems in same world (128+ blocks apart)
- Items are sorted to nearest matching item frames
- Very server-friendly (lag-free design)
- No redstone, no command blocks, and no console commands required
- Costs 1 gold block and 1 lapis block for controller
- Each sort group costs at least 1 item frame, 1 hopper and 1 chest
- Can extend sort groups into infinite chests with chained hoppers
- Can dump entire stacks quickly using `Ctrl-Q` keybind (Windows only)
- Items are sorted the moment they land on the pickup area
- Many categories have fallback groups (i.e. sandstone falls back to sand, etc.)
- Automatically distributes items across multiple item frames in same group
- Support for automatic smelting, and automatic food cooking
- Create your own custom sort groups by modifying config file

## Upgrading from v1.0

Are you upgrading from Magic Sorting System v1.0? Version 2.0 has been completely redesigned, and no longer uses a chest (well, it still can if you want one), and there is no need to "activate" a controller by standing on it. Please see the [Creating the Controller](#creating-the-controller) section for updated instructions. If you still want to use a drop chest, see the [Advanced](#advanced) section for instructions.

## Table of Contents

- [Installation](#installation)
* [Single Player](#single-player)
* [Multiplayer](#multiplayer)
- [Usage](#usage)
* [Building](#building)
* [Creating the Controller](#creating-the-controller)
* [Creating an Item Receiver](#creating-an-item-receiver)
+ [Multiple Chests](#multiple-chests)
+ [Multiple Item Frames](#multiple-item-frames)
+ [Automatic Smelting or Cooking](#automatic-smelting-or-cooking)
+ [Automatic Coal Fuel](#automatic-coal-fuel)
+ [Fallback Groups](#fallback-groups)
+ [Misc Catch-All Group](#misc-catch-all-group)
* [Controller for Farms](#controller-for-farms)
* [Advanced](#advanced)
+ [Double Speed Auto-Drop Chest](#double-speed-auto-drop-chest)
* [Groups](#groups)
+ [Dirt](#dirt)
- [Gravel](#gravel)
+ [Sand](#sand)
- [Sandstone](#sandstone)
+ [Wood](#wood)
- [Woodwork](#woodwork)
* [Office](#office)
+ [Stone](#stone)
- [Stonework](#stonework)
+ [Coal](#coal)
+ [Tools](#tools)
- [Storage](#storage)
- [Armor](#armor)
- [Rails](#rails)
+ [Plants](#plants)
- [Flowers](#flowers)
+ [Food](#food)
- [Raw](#raw)
+ [Mobs](#mobs)
+ [Precious](#precious)
- [Lapis](#lapis)
+ [Magic](#magic)
- [Potions](#potions)
- [Books](#books)
+ [Wool](#wool)
+ [Concrete](#concrete)
+ [Terracotta](#terracotta)
+ [Glass](#glass)
+ [Ice](#ice)
+ [Ocean](#ocean)
- [Coral](#coral)
- [Prismarine](#prismarine)
+ [Ink](#ink)
+ [Nether](#nether)
+ [Ores](#ores)
+ [Redstone](#redstone)
+ [End](#end)
+ [Music](#music)
+ [Misc](#misc)
- [FAQ](#faq)
- [Development](#development)
* [Maximum Teleport Distance](#maximum-teleport-distance)
* [Teleport Effects](#teleport-effects)
* [Compiling](#compiling)
- [References](#references)
- [License](#license)

# Installation

To install the data pack, download the latest ZIP file from the [releases page](https://github.com/jhuckaby/magic-sorting-system/releases), unzip the file, and copy the `magic-sorting-system-#.#.#` folder into your `datapacks` folder for your Minecraft world. Here are specific instructions for single and multiplayer:

## Single Player

- Open Minecraft.
- Select your world, click on "**Edit**", then "**Open world folder**".
- Open the folder named `datapacks`, and put the data pack folder file into it.
- Play the world.

## Multiplayer

- FTP to your server.
- Open your server folder, then open the folder named `world`.
- Upload the data pack folder into a folder named `datapacks`.
- Restart the server.

# Usage

In a nutshell, the magic sorting system is an item teleporter. It will teleport unsorted items dropped onto a special pickup area, to their respective item frames nearby, and from there they simply fall into hoppers and into your storage chests. So you need a special magic drop-off block, and one or more item groups containing item frames, hoppers and chests. The item frames require special items displayed which identify the groups. See [Groups](#groups) below to learn which groups require which framed items.

## Building

To build the magic sorting system, assuming survival mode, you will have to play your way to gold level first. You will need some gold, lapis, wood, and plenty of iron to build a storage system. At the bare minimum to get things started, you will need the following raw materials:

| Item | Name | Amount | Purpose |
|------|------|--------|---------|
| | [Gold Ingot](https://minecraft.gamepedia.com/Gold_Ingot) | 9 | To build the lower base controller block. |
| | [Lapis Lazuli](https://minecraft.gamepedia.com/Lapis_Lazuli) | 9 | To build the upper base controller block. |
| | [Iron Ingot](https://minecraft.gamepedia.com/Iron_Ingot) | 5 | To build the first [hopper](https://minecraft.gamepedia.com/Hopper). |
| | [Wood Log](https://minecraft.gamepedia.com/Log) | 4 | To build the first [chests](https://minecraft.gamepedia.com/Chest) and [item frame](https://minecraft.gamepedia.com/Item_Frame). |
| | [Leather](https://minecraft.gamepedia.com/Leather) | 1 | To build the first item frame. |

As you add more groups to your sorting system, you will need additional chests, item frames (plus one special target item to put in the item frame), and a hopper. For larger groups, multiple chests and chained hoppers are recommended (instructions below).

## Creating the Controller

The first thing you will need is a storage "controller" to deposit your unsorted items onto. This is created by placing down a [gold block](https://minecraft.gamepedia.com/Block_of_Gold), with a [lapis block](https://minecraft.gamepedia.com/Lapis_Lazuli_Block) on top of it.

Typically the two blocks are submerged underground, so you could start with a 2-block-deep hole like this:

![Controller Build 1](https://pixlcore.com/software/mss/screenshots/v2/step-1.png)

Place the gold block on the bottom:

![Controller Build 2](https://pixlcore.com/software/mss/screenshots/v2/step-2.png)

And then place the lapis block on top of that:

![Controller Build 3](https://pixlcore.com/software/mss/screenshots/v2/step-3.png)

Fill in the rest of the hole:

![Controller Build 4](https://pixlcore.com/software/mss/screenshots/v2/step-4.png)

And you're done:

![Controller Build 5](https://pixlcore.com/software/mss/screenshots/v2/step-5.png)

If you have more lapis and gold blocks, a 3x3 grid is recommended, so it's easier to drop items onto:

![Controller Build 6](https://pixlcore.com/software/mss/screenshots/v2/step-6.png)

Now the controller is ready to go! All you have to do now is drop your items to be sorted onto any lapis block, and they will be teleported to their respective item frames. For Windows PC users, you can drop entire stacks at a time from your inventory using the `Ctrl-Q` keybind. For Mac users, you can press `Q` to drop single items, or click and drag each stack out of your inventory to drop it.

For a more advanced auto-controller, see the [Advanced](#advanced) section below. It requires a tiny bit of redstone, but it allows you to design a dropoff chest that automatically sorts all items placed into it.

## Creating an Item Receiver

An "item receiver" is just an [item frame](https://minecraft.gamepedia.com/Item_Frame) that contains a special item which represents one of the [39 groups](#groups). Then, all items to be sorted within that group will teleport to the item frame. What happens then? Well, it's actually entirely up to you! But the most common thing is to simply place a [hopper](https://minecraft.gamepedia.com/Hopper) underneath the item frame, and route that to a nearby chest. Example:

![Single Chest Receiver](https://pixlcore.com/software/mss/screenshots/single-chest.png)

In this example, the item frame contains a [block of cobblestone](https://minecraft.gamepedia.com/Cobblestone), which is the item representing the [Stone](#stone) group, so all stone items will be routed here. They'll teleport to the item frame, drop into hopper and be delivered to the chest.

**Tip:** Make sure you shift-click on the chest when placing the hopper, so it directs the output accordingly. By default hoppers drop straight down.

### Multiple Chests

To handle item overflow, the best way is to simply build downward by adding more chests and hoppers directly beneath. The hopper system in Minecraft seems to handle distribution by filling the topmost and bottommost chests evenly, working inwards as things fill up. Example:

![Double Chest Receiver](https://pixlcore.com/software/mss/screenshots/double-chest.png)

There are, of course, a million different ways to solve this problem -- this is only one simple example. But the idea with the magic sorting system is that it leaves things up to you! It only teleports items to appropriate frames, but *you* can decide how to handle routing and storage.

### Multiple Item Frames

For high traffic groups such as [Stone](#stone), where a player might drop off a large number of item stacks at once, it is recommended that you use multiple item frames. This is because a single hopper can only handle up to 5 stacks of items at one time. If you drop off more all at once, your hopper might overflow and dump some items onto the floor before it can route them. To handle this situation better, consider the following setup:

![Double Chest and Item Frame](https://pixlcore.com/software/mss/screenshots/double-chest-double-item-frame.png)

Here we have two item frames with identical items inside them, pointing to hoppers that route to the same chest. This works because the magic sorting system will pick *random item frame targets* for teleporting each item, if they both display the correct group target item, effectively balancing the drop-off load between the matching frames. So in this case the group could handle up to 10 stacks of items dropped off at once before it overflows.

There are other ways to handle item drop-off overflow, including building walls all around your item frames, so the items get "trapped" after teleporting, and just sit and wait until the hopper can service them. However, this means your item frame would have to be hidden in a wall, or in the ceiling, and thus you lose the dual-purpose nature of having the item frame be both a visual label, and a teleportation target.

Also see the [Advanced](#advanced) section for another way to solve item overflow, which is to build an automatic drop chest.

### Automatic Smelting or Cooking

You can route your items into things other than chests -- you can also setup an easy auto-smelting system, for [ores](#ores) and/or [raw food](#raw). Simply add an additional hopper under the item chest, and route it to a furnace on its top side:

![Ore Chest and Furnace](https://pixlcore.com/software/mss/screenshots/single-ore-single-furnace.png)

As you can see in the above example, you can also route the *output* of the furnace to another chest out the bottom, to hold your completed ingots or cooked food.

### Automatic Coal Fuel

Furnaces need fuel as well. So taking this a step further, you can route the [Coal](#coal) item group into the *sides* of the furnace, to automatically supply it with fuel. Here is a more complete example, with double item frames for handling many items at once:

![Full Auto-Smelter Setup](https://pixlcore.com/software/mss/screenshots/double-everything.png)

Here we have [Ores](#ores) routed into a double-chest at the top, which is then routed into two furnaces, which are auto supplied with fuel from the [Coal](#coal) group into the sides. Finally, the furnaces deposit smelted ingots into a double chest at the bottom, which is also setup as the [Precious](#precious) group (with the [gold ingots](https://minecraft.gamepedia.com/Gold_Ingot) displayed in the bottom item frames).

So let's say you come home from a mining trip and have some raw ores, some coal, and some ingots you found in a treasure chest. Simply drop off *all* the items at once, and the ores will get smelted, the coal fuel will power the furnaces, and all the ingots (including the ones you brought with you, *and* the smelted ones from the ore), will all end up in the [Precious](#precious) chest.

Remember that the magic sorting system will randomly pick item frames if multiple are available for a group. So you can *also* have a [Coal](#coal) group with additional item frames routed to plain chests, and it'll balance between storing the coal in your chests, and fueling your auto-smelting system.

### Fallback Groups

Several of the item groups have sub-groups, which are optional and fall back to the main group if a more specific item frame isn't found. For example, consider the following simple item receiver for the [Ocean](#ocean) group:

![Ocean Group Simple](https://pixlcore.com/software/mss/screenshots/ocean-group-1.png)

By default, this item frame with the [kelp](https://minecraft.gamepedia.com/Kelp) leaf on display would receive *all* items that come from the ocean. However, the sorting system defines two sub-groups under ocean, [Prismarine](#prismarine) and [Coral](#coral). These optional sub-groups can further sort the ocean's many items into 3 categories, if you want:

![Ocean Group Complex](https://pixlcore.com/software/mss/screenshots/ocean-group-2.png)

So in this case, all prismarine related items would teleport to the item frame with the [prismarine](https://minecraft.gamepedia.com/Prismarine) block, all coral items would teleport to the item frame with the [bubble coral](https://minecraft.gamepedia.com/Coral_Block) block, and all the *other* non-prismarine non-coral ocean items would teleport to the item frame with the [Kelp](https://minecraft.gamepedia.com/Kelp) leaf. The magic sorting system automatically detects which item frames are on display, and sorts accordingly.

See the [Groups](#groups) section below for a list of all 39 groups and to see how the sub-group hierarchy works.

### Misc Catch-All Group

All item groups ultimately fall back to a special [Misc](#misc) group, which is the universal "catch-all". That is, if no suitable item frame can be found for an item, it will teleport to the miscellaneous group, which uses the [carrot on a stick](https://minecraft.gamepedia.com/Carrot_on_a_Stick) display item:

![Miscellaneous Group](https://pixlcore.com/software/mss/screenshots/misc-group.png)

This is a great way to start out your storage system, so you don't have to build everything at once. Just build the main groups you need (dirt, sand, stone, ores, tools, etc.), and everything else will route to the misc group, until you have the time and resources to build all the specific groups.

Note that if the misc group item frame itself cannot be found, items will teleport back to the player.

## Controller for Farms

You can have as many controllers as you want in a Minecraft world. All you need is another [lapis block](https://minecraft.gamepedia.com/Lapis_Lazuli_Block) on top of a [gold block](https://minecraft.gamepedia.com/Block_of_Gold). One neat trick is to use one of these for a water-harvested plant farms or a nearby [dungeon](https://minecraft.gamepedia.com/Dungeon). Any loose items detected on top of the lapis block will be sorted and teleported just like the drop-off chest. For example, consider a simple mob dungeon like this:

![Mob Spawner Setup](https://pixlcore.com/software/mss/screenshots/mob-spawner.png)

That's a lapis block in the bottom right corner there, just outside of the water range, with a gold block under it. If you were to setup a mob kill system here, either by trapping the mobs and killing them for XP, or devising a long fall for them, their item drops would fall onto the lapis and be instantly teleported into the sorting system.

This same kind of thing can work for an automated food farm as well, assuming you have a water-flush-harvest system in place. If all the ripe food gets flushed into a canal and routed to a single block, have it be a lapis block, with gold underneath, and you have an automated harvest sorting system!

## Advanced

One of the features of the Magic Sorting System is that no redstone is required. That is true, however with a simple redstone clock you can build a drop-off chest that automatically sorts all items placed inside it. It is much easier to dump your entire inventory into a chest versus tossing it out onto the floor. Also, this has another nice side effect in that it "throttles" item sorting so your hoppers do not overload. Here is how to build it:

![Auto-Drop Chest 1](https://pixlcore.com/software/mss/screenshots/v2/auto-chest-redstone.png)

This requires a one [chest](https://minecraft.gamepedia.com/Chest), one [hopper](https://minecraft.gamepedia.com/Hopper), one [dropper](https://minecraft.gamepedia.com/Dropper) facing downward, one [comparator](https://minecraft.gamepedia.com/Redstone_Comparator), one [repeater](https://minecraft.gamepedia.com/Redstone_Repeater) and 5 [redstone dust](https://minecraft.gamepedia.com/Redstone_Dust). The redstone circuit is copied verbatim from [this video tutorial](https://www.youtube.com/watch?v=-oUSS5jTHps), so please watch that to see how to orient the blocks. In particular, the comparator must be facing *away* from the dropper. Here is a view from above:

![Auto-Drop Chest 2](https://pixlcore.com/software/mss/screenshots/v2/auto-chest-above.png)

The key here is to face the dropper downward, leave one block of empty space below it, and then place your [lapis block](https://minecraft.gamepedia.com/Lapis_Lazuli_Block) on top of a [gold block](https://minecraft.gamepedia.com/Block_of_Gold) underneath all that. Here is a cross section view:

![Auto-Drop Chest 3](https://pixlcore.com/software/mss/screenshots/v2/auto-chest-cross-section.png)

Then, simply place items or entire stacks into the chest and they'll automatically start sorting themselves. This redstone clock only ticks if there are items in the chest, so it makes no noise unless items are dropped into it.

**Tip:** If the dropper ticking noise bothers you, consider using a resource pack. Check out [Vanilla Tweaks](https://vanillatweaks.net/picker/resource-packs/), click to expand the "**Peace and Quiet**" group and then download the "**Quieter Dispensers and Droppers**" pack.

**Tip:** If you use a [trapped chest](https://minecraft.gamepedia.com/Trapped_Chest) instead of a normal one, the system will not start sorting items until you close the chest lid. This is a nice safeguard in case you shift-click on the wrong item in your inventory.

### Double Speed Auto-Drop Chest

If the auto-drop chest is too slow for your taste, you can build a much faster one with some more materials. For this you will need two [chests](https://minecraft.gamepedia.com/Chest), two [hoppers](https://minecraft.gamepedia.com/Hopper), two [droppers](https://minecraft.gamepedia.com/Dropper) facing downward, two [comparators](https://minecraft.gamepedia.com/Redstone_Comparator), two [repeaters](https://minecraft.gamepedia.com/Redstone_Repeater) and 10 [redstone dust](https://minecraft.gamepedia.com/Redstone_Dust). The double-speed redstone circuit is copied verbatim from [this video tutorial](https://www.youtube.com/watch?v=w5tiFl74cSI), so please watch that to see how to orient the blocks. Here is how it should look:

![Double Auto-Drop Chest 1](https://pixlcore.com/software/mss/screenshots/v2/double-auto-chest.png)

Note that each comparator faces away from the droppers, but the redstone is mirrored on each side. The [video](https://www.youtube.com/watch?v=w5tiFl74cSI) does a much better job of explaining this, but here is a view from above:

![Double Auto-Drop Chest 2](https://pixlcore.com/software/mss/screenshots/v2/double-auto-chest-above.png)

Just like the single drop chest, you should face both droppers downward, leave one block of empty space below them, and then place your [lapis blocks](https://minecraft.gamepedia.com/Lapis_Lazuli_Block) on top of [gold blocks](https://minecraft.gamepedia.com/Block_of_Gold) underneath all that. Here is a cross section view:

![Double Auto-Drop Chest 3](https://pixlcore.com/software/mss/screenshots/v2/double-auto-chest-cross-section.png)

Feel free to bury the entire thing (leave some air for the redstone to breathe), and just have the drop chest sticking up above ground.

## Groups

Here is a list of all 39 groups in the magic sorting system, how some fallback to others, and all the items they contain.

### Dirt

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `dirt` | 9 | Misc | `minecraft:dirt` | |

The Dirt group contains all forms of dirt blocks, including regular, coarse, farmland, grass blocks (silk touched), grass path, mycelium and podzol.

Click to Show Dirt Items

| Item ID | Image |
|---------|-------|
| `minecraft:coarse_dirt` | |
| `minecraft:dirt` | |
| `minecraft:farmland` | |
| `minecraft:grass_block` | |
| `minecraft:grass_path` | |
| `minecraft:mycelium` | |
| `minecraft:podzol` | |
| `minecraft:crimson_nylium` | |
| `minecraft:warped_nylium` | |

#### Gravel

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `gravel` | 1 | Dirt | `minecraft:gravel` | |

The Gravel group contains only gravel blocks. It is deliberately sorted into its own group, but this is optional. If you omit the gravel target item frame, it will fallback to the Dirt group.

Click to Show Gravel Items

| Item ID | Image |
|---------|-------|
| `minecraft:gravel` | |

### Sand

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `sand` | 1 | Misc | `minecraft:sand` | |

The Sand group contains only sand blocks. However, see [Sandstone](#sandstone) below. If you omit the sandstone group, all sandstone blocks fallback to the Sand group.

Click to Show Sand Items

| Item ID | Image |
|---------|-------|
| `minecraft:sand` | |

#### Sandstone

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `sandstone` | 21 | Sand | `minecraft:sandstone` | |

The Sandstone group contains all the various forms of sandstone, including regular, smooth, chiseled, cut, red, and slabs and stairs. If you would prefer sandstone to get sorted with sand, simply omit the sandstone item frame. All sandstone falls back to sand.

Click to Show Sandstone Items

| Item ID | Image |
|---------|-------|
| `minecraft:chiseled_red_sandstone` | |
| `minecraft:chiseled_sandstone` | |
| `minecraft:cut_red_sandstone` | |
| `minecraft:cut_sandstone` | |
| `minecraft:red_sand` | |
| `minecraft:red_sandstone` | |
| `minecraft:red_sandstone_slab` | |
| `minecraft:red_sandstone_stairs` | |
| `minecraft:sandstone` | |
| `minecraft:sandstone_slab` | |
| `minecraft:sandstone_stairs` | |
| `minecraft:smooth_red_sandstone` | |
| `minecraft:smooth_sandstone` | |
| `minecraft:cut_red_sandstone_slab` | |
| `minecraft:cut_sandstone_slab` | |
| `minecraft:red_sandstone_wall` | |
| `minecraft:sandstone_wall` | |
| `minecraft:smooth_red_sandstone_slab` | |
| `minecraft:smooth_red_sandstone_stairs` | |
| `minecraft:smooth_sandstone_slab` | |
| `minecraft:smooth_sandstone_stairs` | |

### Wood

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `wood` | 41 | Misc | `minecraft:oak_log` | |

The Wood group contains primarily raw wood blocks, but also includes stripped logs, and simple planks and sticks. All other wood products are sorted into the [Woodwork](#woodwork) group.

Click to Show Wood Items

| Item ID | Image |
|---------|-------|
| `minecraft:acacia_log` | |
| `minecraft:acacia_planks` | |
| `minecraft:acacia_wood` | |
| `minecraft:birch_log` | |
| `minecraft:birch_planks` | |
| `minecraft:birch_wood` | |
| `minecraft:dark_oak_log` | |
| `minecraft:dark_oak_planks` | |
| `minecraft:dark_oak_wood` | |
| `minecraft:jungle_log` | |
| `minecraft:jungle_planks` | |
| `minecraft:jungle_wood` | |
| `minecraft:oak_log` | |
| `minecraft:oak_planks` | |
| `minecraft:oak_wood` | |
| `minecraft:spruce_log` | |
| `minecraft:spruce_planks` | |
| `minecraft:spruce_wood` | |
| `minecraft:stick` | |
| `minecraft:stripped_acacia_log` | |
| `minecraft:stripped_acacia_wood` | |
| `minecraft:stripped_birch_log` | |
| `minecraft:stripped_birch_wood` | |
| `minecraft:stripped_dark_oak_log` | |
| `minecraft:stripped_dark_oak_wood` | |
| `minecraft:stripped_jungle_log` | |
| `minecraft:stripped_jungle_wood` | |
| `minecraft:stripped_oak_log` | |
| `minecraft:stripped_oak_wood` | |
| `minecraft:stripped_spruce_log` | |
| `minecraft:stripped_spruce_wood` | |
| `minecraft:crimson_planks` | |
| `minecraft:warped_planks` | |
| `minecraft:crimson_stem` | |
| `minecraft:warped_stem` | |
| `minecraft:stripped_crimson_stem` | |
| `minecraft:stripped_warped_stem` | |
| `minecraft:stripped_crimson_hyphae` | |
| `minecraft:stripped_warped_hyphae` | |
| `minecraft:crimson_hyphae` | |
| `minecraft:warped_hyphae` | |

#### Woodwork

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `woodwork` | 112 | Wood | `minecraft:oak_stairs` | |

The Woodwork group contains all products made out of wood, including slabs, stairs, boats, doors, beds, buttons, fences, gates, pressure plates, trap doors, chests, bowls, item frames, signs and ladders. If you would prefer all wood to be sorted into a single combined group, omit the item frame for this group, and all woodwork products will fallback to the [Wood](#wood) group.

Click to Show Woodwork Items

| Item ID | Image |
|---------|-------|
| `minecraft:acacia_boat` | |
| `minecraft:acacia_button` | |
| `minecraft:acacia_door` | |
| `minecraft:acacia_fence` | |
| `minecraft:acacia_fence_gate` | |
| `minecraft:acacia_pressure_plate` | |
| `minecraft:acacia_slab` | |
| `minecraft:acacia_stairs` | |
| `minecraft:acacia_trapdoor` | |
| `minecraft:birch_boat` | |
| `minecraft:birch_button` | |
| `minecraft:birch_door` | |
| `minecraft:birch_fence` | |
| `minecraft:birch_fence_gate` | |
| `minecraft:birch_pressure_plate` | |
| `minecraft:birch_slab` | |
| `minecraft:birch_stairs` | |
| `minecraft:birch_trapdoor` | |
| `minecraft:black_bed` | |
| `minecraft:blue_bed` | |
| `minecraft:bowl` | |
| `minecraft:brown_bed` | |
| `minecraft:crafting_table` | |
| `minecraft:cyan_bed` | |
| `minecraft:dark_oak_boat` | |
| `minecraft:dark_oak_button` | |
| `minecraft:dark_oak_door` | |
| `minecraft:dark_oak_fence` | |
| `minecraft:dark_oak_fence_gate` | |
| `minecraft:dark_oak_pressure_plate` | |
| `minecraft:dark_oak_slab` | |
| `minecraft:dark_oak_stairs` | |
| `minecraft:dark_oak_trapdoor` | |
| `minecraft:gray_bed` | |
| `minecraft:green_bed` | |
| `minecraft:item_frame` | |
| `minecraft:jungle_boat` | |
| `minecraft:jungle_button` | |
| `minecraft:jungle_door` | |
| `minecraft:jungle_fence` | |
| `minecraft:jungle_fence_gate` | |
| `minecraft:jungle_pressure_plate` | |
| `minecraft:jungle_slab` | |
| `minecraft:jungle_stairs` | |
| `minecraft:jungle_trapdoor` | |
| `minecraft:ladder` | |
| `minecraft:light_blue_bed` | |
| `minecraft:light_gray_bed` | |
| `minecraft:lime_bed` | |
| `minecraft:magenta_bed` | |
| `minecraft:oak_boat` | |
| `minecraft:oak_button` | |
| `minecraft:oak_door` | |
| `minecraft:oak_fence` | |
| `minecraft:oak_fence_gate` | |
| `minecraft:oak_pressure_plate` | |
| `minecraft:oak_slab` | |
| `minecraft:oak_stairs` | |
| `minecraft:oak_trapdoor` | |
| `minecraft:orange_bed` | |
| `minecraft:painting` | |
| `minecraft:petrified_oak_slab` | |
| `minecraft:pink_bed` | |
| `minecraft:purple_bed` | |
| `minecraft:red_bed` | |
| `minecraft:sign` | |
| `minecraft:spruce_boat` | |
| `minecraft:spruce_button` | |
| `minecraft:spruce_door` | |
| `minecraft:spruce_fence` | |
| `minecraft:spruce_fence_gate` | |
| `minecraft:spruce_pressure_plate` | |
| `minecraft:spruce_slab` | |
| `minecraft:spruce_stairs` | |
| `minecraft:spruce_trapdoor` | |
| `minecraft:white_bed` | |
| `minecraft:yellow_bed` | |
| `minecraft:acacia_sign` | |
| `minecraft:acacia_wall_sign` | |
| `minecraft:birch_sign` | |
| `minecraft:birch_wall_sign` | |
| `minecraft:dark_oak_sign` | |
| `minecraft:dark_oak_wall_sign` | |
| `minecraft:jungle_sign` | |
| `minecraft:jungle_wall_sign` | |
| `minecraft:oak_sign` | |
| `minecraft:oak_wall_sign` | |
| `minecraft:spruce_sign` | |
| `minecraft:spruce_wall_sign` | |
| `minecraft:scaffolding` | |
| `minecraft:cartography_table` | |
| `minecraft:composter` | |
| `minecraft:lectern` | |
| `minecraft:beehive` | |
| `minecraft:crimson_slab` | |
| `minecraft:warped_slab` | |
| `minecraft:crimson_pressure_plate` | |
| `minecraft:warped_pressure_plate` | |
| `minecraft:crimson_fence` | |
| `minecraft:warped_fence` | |
| `minecraft:crimson_trapdoor` | |
| `minecraft:warped_trapdoor` | |
| `minecraft:crimson_fence_gate` | |
| `minecraft:warped_fence_gate` | |
| `minecraft:crimson_stairs` | |
| `minecraft:warped_stairs` | |
| `minecraft:crimson_button` | |
| `minecraft:warped_button` | |
| `minecraft:crimson_door` | |
| `minecraft:warped_door` | |
| `minecraft:crimson_sign` | |
| `minecraft:warped_sign` | |

##### Office

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `office` | 6 | Woodwork | `minecraft:paper` | |

The Office group is basically an offshoot of the [Woodwork](#woodwork) group, which contains items specifcially suitable for an office. This includes books, bookshelves, maps (empty and filled), paper, writable and written books. This group is optional, and if the item frame is omitted, all these items will sort into the [Woodwork](#woodwork) group instead.

Click to Show Office Items

| Item ID | Image |
|---------|-------|
| `minecraft:bookshelf` | |
| `minecraft:writable_book` | |
| `minecraft:written_book` | |
| `minecraft:filled_map` | |
| `minecraft:map` | |
| `minecraft:paper` | |

### Stone

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `stone` | 10 | Misc | `minecraft:cobblestone` | |

The Stone group contains primarily raw stone blocks, including regular stone, cobblestone, mossy cobblestone, granite, diorite, andesite, and clay.

Click to Show Stone Items

| Item ID | Image |
|---------|-------|
| `minecraft:andesite` | |
| `minecraft:clay` | |
| `minecraft:clay_ball` | |
| `minecraft:cobblestone` | |
| `minecraft:diorite` | |
| `minecraft:granite` | |
| `minecraft:mossy_cobblestone` | |
| `minecraft:stone` | |
| `minecraft:basalt` | |
| `minecraft:blackstone` | |

#### Stonework

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `stonework` | 64 | Stone | `minecraft:cobblestone_stairs` | |

The Stonework group contains all products made out of stone, including slabs, stairs, bricks, walls, buttons, pressure plates, and flower pots. This also includes variants of stone like cracked, chiseled, smooth and polished. If you would prefer all stone to be sorted into a single combined group, omit the item frame for this group, and all stone products will fallback to the [Stone](#stone) group.

Click to Show Stonework Items

| Item ID | Image |
|---------|-------|
| `minecraft:brick` | |
| `minecraft:brick_slab` | |
| `minecraft:brick_stairs` | |
| `minecraft:brick_wall` | |
| `minecraft:bricks` | |
| `minecraft:chiseled_stone_bricks` | |
| `minecraft:cobblestone_slab` | |
| `minecraft:cobblestone_wall` | |
| `minecraft:cracked_stone_bricks` | |
| `minecraft:flower_pot` | |
| `minecraft:mossy_cobblestone_wall` | |
| `minecraft:mossy_stone_bricks` | |
| `minecraft:polished_andesite` | |
| `minecraft:polished_diorite` | |
| `minecraft:polished_granite` | |
| `minecraft:smooth_stone` | |
| `minecraft:stone_brick_slab` | |
| `minecraft:stone_brick_stairs` | |
| `minecraft:stone_bricks` | |
| `minecraft:stone_button` | |
| `minecraft:stone_pressure_plate` | |
| `minecraft:stone_slab` | |
| `minecraft:cobblestone_stairs` | |
| `minecraft:andesite_slab` | |
| `minecraft:andesite_stairs` | |
| `minecraft:andesite_wall` | |
| `minecraft:bell` | |
| `minecraft:diorite_slab` | |
| `minecraft:diorite_stairs` | |
| `minecraft:diorite_wall` | |
| `minecraft:granite_slab` | |
| `minecraft:granite_stairs` | |
| `minecraft:granite_wall` | |
| `minecraft:mossy_cobblestone_slab` | |
| `minecraft:mossy_cobblestone_stairs` | |
| `minecraft:mossy_stone_brick_slab` | |
| `minecraft:mossy_stone_brick_stairs` | |
| `minecraft:mossy_stone_brick_wall` | |
| `minecraft:polished_andesite_slab` | |
| `minecraft:polished_andesite_stairs` | |
| `minecraft:polished_diorite_slab` | |
| `minecraft:polished_diorite_stairs` | |
| `minecraft:polished_granite_slab` | |
| `minecraft:polished_granite_stairs` | |
| `minecraft:smooth_stone_slab` | |
| `minecraft:stone_brick_wall` | |
| `minecraft:stone_stairs` | |
| `minecraft:polished_blackstone_pressure_plate` | |
| `minecraft:polished_basalt` | |
| `minecraft:blackstone_wall` | |
| `minecraft:polished_blackstone_wall` | |
| `minecraft:polished_blackstone_brick_wall` | |
| `minecraft:polished_blackstone_button` | |
| `minecraft:blackstone_slab` | |
| `minecraft:blackstone_stairs` | |
| `minecraft:gilded_blackstone` | |
| `minecraft:polished_blackstone` | |
| `minecraft:polished_blackstone_slab` | |
| `minecraft:polished_blackstone_stairs` | |
| `minecraft:chiseled_polished_blackstone` | |
| `minecraft:polished_blackstone_bricks` | |
| `minecraft:polished_blackstone_brick_slab` | |
| `minecraft:polished_blackstone_brick_stairs` | |
| `minecraft:cracked_polished_blackstone_bricks` | |

### Coal

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `coal` | 3 | Misc | `minecraft:coal` | |

The Coal group contains only coal, charcoal and coal blocks. These three items have been sorted into their own group because they can fuel furnaces. You can even automate this if you like.

Click to Show Coal Items

| Item ID | Image |
|---------|-------|
| `minecraft:charcoal` | |
| `minecraft:coal` | |
| `minecraft:coal_block` | |

### Tools

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `tools` | 83 | Misc | `minecraft:wooden_pickaxe` | |

The Tools group contains a large amount of items, but all of them can be categorized as either tools or weapons. The short list includes pickaxes, swords, axes, bows, shovels, hoes, shears, fishing rods, furnaces, shulker boxes, ender chests, fireworks, buckets, anvils, clocks, compasses, flint, name tags, leads, TNT and torches. The Tools group excludes [Armor](#armor), [Rails](#rails) and [Redstone](#redstone) items, which have their own respective groups.

Click to Show Tools Items

| Item ID | Image |
|---------|-------|
| `minecraft:anvil` | |
| `minecraft:arrow` | |
| `minecraft:bow` | |
| `minecraft:bucket` | |
| `minecraft:chipped_anvil` | |
| `minecraft:clock` | |
| `minecraft:clownfish_bucket` | |
| `minecraft:cod_bucket` | |
| `minecraft:tropical_fish_bucket` | |
| `minecraft:compass` | |
| `minecraft:damaged_anvil` | |
| `minecraft:diamond_axe` | |
| `minecraft:diamond_hoe` | |
| `minecraft:diamond_pickaxe` | |
| `minecraft:diamond_shovel` | |
| `minecraft:diamond_sword` | |
| `minecraft:fire_charge` | |
| `minecraft:firework_rocket` | |
| `minecraft:firework_star` | |
| `minecraft:fishing_rod` | |
| `minecraft:warped_fungus_on_a_stick` | |
| `minecraft:flint` | |
| `minecraft:flint_and_steel` | |
| `minecraft:furnace` | |
| `minecraft:golden_axe` | |
| `minecraft:golden_hoe` | |
| `minecraft:golden_pickaxe` | |
| `minecraft:golden_shovel` | |
| `minecraft:golden_sword` | |
| `minecraft:gunpowder` | |
| `minecraft:iron_axe` | |
| `minecraft:iron_bars` | |
| `minecraft:iron_block` | |
| `minecraft:iron_door` | |
| `minecraft:iron_hoe` | |
| `minecraft:iron_pickaxe` | |
| `minecraft:iron_shovel` | |
| `minecraft:iron_sword` | |
| `minecraft:iron_trapdoor` | |
| `minecraft:lava_bucket` | |
| `minecraft:lead` | |
| `minecraft:milk_bucket` | |
| `minecraft:name_tag` | |
| `minecraft:pufferfish_bucket` | |
| `minecraft:salmon_bucket` | |
| `minecraft:shears` | |
| `minecraft:spectral_arrow` | |
| `minecraft:stone_axe` | |
| `minecraft:stone_hoe` | |
| `minecraft:stone_pickaxe` | |
| `minecraft:stone_shovel` | |
| `minecraft:stone_sword` | |
| `minecraft:tipped_arrow` | |
| `minecraft:tnt` | |
| `minecraft:torch` | |
| `minecraft:soul_torch` | |
| `minecraft:water_bucket` | |
| `minecraft:wooden_axe` | |
| `minecraft:wooden_hoe` | |
| `minecraft:wooden_pickaxe` | |
| `minecraft:wooden_shovel` | |
| `minecraft:wooden_sword` | |
| `minecraft:crossbow` | |
| `minecraft:blast_furnace` | |
| `minecraft:campfire` | |
| `minecraft:lantern` | |
| `minecraft:soul_lantern` | |
| `minecraft:soul_campfire` | |
| `minecraft:fletching_table` | |
| `minecraft:grindstone` | |
| `minecraft:loom` | |
| `minecraft:smithing_table` | |
| `minecraft:smoker` | |
| `minecraft:stonecutter` | |
| `minecraft:chain` | |
| `minecraft:lodestone` | |
| `minecraft:target` | |
| `minecraft:respawn_anchor` | |
| `minecraft:netherite_sword` | |
| `minecraft:netherite_shovel` | |
| `minecraft:netherite_pickaxe` | |
| `minecraft:netherite_axe` | |
| `minecraft:netherite_hoe` | |

#### Storage

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `storage` | 21 | Tools | `minecraft:chest` | |

The Storage group contains all forms of storage, including chests, trapped chests, ender chests and shulker boxes (all colors). This group is optional, so if you omit the item frame all the items will fall back to sorting into the [Tools](#tools) group.

Click to Show Storage Items

| Item ID | Image |
|---------|-------|
| `minecraft:chest` | |
| `minecraft:trapped_chest` | |
| `minecraft:ender_chest` | |
| `minecraft:black_shulker_box` | |
| `minecraft:blue_shulker_box` | |
| `minecraft:brown_shulker_box` | |
| `minecraft:cyan_shulker_box` | |
| `minecraft:gray_shulker_box` | |
| `minecraft:green_shulker_box` | |
| `minecraft:light_blue_shulker_box` | |
| `minecraft:lime_shulker_box` | |
| `minecraft:magenta_shulker_box` | |
| `minecraft:orange_shulker_box` | |
| `minecraft:pink_shulker_box` | |
| `minecraft:purple_shulker_box` | |
| `minecraft:red_shulker_box` | |
| `minecraft:shulker_box` | |
| `minecraft:light_gray_shulker_box` | |
| `minecraft:white_shulker_box` | |
| `minecraft:yellow_shulker_box` | |
| `minecraft:barrel` | |

#### Armor

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `armor` | 32 | Tools | `minecraft:leather_chestplate` | |

The Armor group contains all forms of armor in the game, including boots, chestplates, leggings and helmets of all types, horse armor, saddles, shields and armor stands.

Click to Show Armor Items

| Item ID | Image |
|---------|-------|
| `minecraft:armor_stand` | |
| `minecraft:chainmail_boots` | |
| `minecraft:chainmail_chestplate` | |
| `minecraft:chainmail_helmet` | |
| `minecraft:chainmail_leggings` | |
| `minecraft:diamond_boots` | |
| `minecraft:diamond_chestplate` | |
| `minecraft:diamond_helmet` | |
| `minecraft:diamond_horse_armor` | |
| `minecraft:diamond_leggings` | |
| `minecraft:golden_boots` | |
| `minecraft:golden_chestplate` | |
| `minecraft:golden_helmet` | |
| `minecraft:golden_horse_armor` | |
| `minecraft:golden_leggings` | |
| `minecraft:iron_boots` | |
| `minecraft:iron_chestplate` | |
| `minecraft:iron_helmet` | |
| `minecraft:iron_horse_armor` | |
| `minecraft:iron_leggings` | |
| `minecraft:leather_boots` | |
| `minecraft:leather_chestplate` | |
| `minecraft:leather_helmet` | |
| `minecraft:leather_leggings` | |
| `minecraft:saddle` | |
| `minecraft:shield` | |
| `minecraft:turtle_helmet` | |
| `minecraft:leather_horse_armor` | |
| `minecraft:netherite_helmet` | |
| `minecraft:netherite_chestplate` | |
| `minecraft:netherite_leggings` | |
| `minecraft:netherite_boots` | |

#### Rails

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `rails` | 10 | Tools | `minecraft:rail` | |

The Rails group contains all items relating to rails, including rails themselves, activator rails, detector rails, powered rails, as well as all forms of minecarts (regular minecarts, chest minecarts, command block minecarts, furnace minecarts, hopper minecarts, and TNT minecarts).

Click to Show Rails Items

| Item ID | Image |
|---------|-------|
| `minecraft:activator_rail` | |
| `minecraft:chest_minecart` | |
| `minecraft:command_block_minecart` | |
| `minecraft:detector_rail` | |
| `minecraft:furnace_minecart` | |
| `minecraft:hopper_minecart` | |
| `minecraft:minecart` | |
| `minecraft:powered_rail` | |
| `minecraft:rail` | |
| `minecraft:tnt_minecart` | |

### Plants

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `plants` | 62 | Misc | `minecraft:oak_sapling` | |

The Plants group basically contains all the organic items in the game, if they are or came from plants. This includes leaves, saplings, seeds, beans, mushrooms, cactus, pumpkins, chorus fruit, bushes, ferns, grass, hay, lily pads, melons, nether wart, sugar cane and wheat. The group specifically excludes [Flowers](#flowers) which have their own dedicated group.

Click to Show Plants Items

| Item ID | Image |
|---------|-------|
| `minecraft:acacia_leaves` | |
| `minecraft:acacia_sapling` | |
| `minecraft:beetroot` | |
| `minecraft:beetroot_seeds` | |
| `minecraft:birch_leaves` | |
| `minecraft:birch_sapling` | |
| `minecraft:brown_mushroom` | |
| `minecraft:brown_mushroom_block` | |
| `minecraft:cactus` | |
| `minecraft:carved_pumpkin` | |
| `minecraft:chorus_fruit` | |
| `minecraft:popped_chorus_fruit` | |
| `minecraft:chorus_plant` | |
| `minecraft:cocoa_beans` | |
| `minecraft:dark_oak_leaves` | |
| `minecraft:dark_oak_sapling` | |
| `minecraft:dead_bush` | |
| `minecraft:fern` | |
| `minecraft:grass` | |
| `minecraft:hay_block` | |
| `minecraft:jack_o_lantern` | |
| `minecraft:jungle_leaves` | |
| `minecraft:jungle_sapling` | |
| `minecraft:large_fern` | |
| `minecraft:lily_pad` | |
| `minecraft:melon` | |
| `minecraft:melon_seeds` | |
| `minecraft:mushroom_stem` | |
| `minecraft:nether_wart` | |
| `minecraft:oak_leaves` | |
| `minecraft:oak_sapling` | |
| `minecraft:poisonous_potato` | |
| `minecraft:pumpkin` | |
| `minecraft:pumpkin_seeds` | |
| `minecraft:red_mushroom` | |
| `minecraft:red_mushroom_block` | |
| `minecraft:spruce_leaves` | |
| `minecraft:spruce_sapling` | |
| `minecraft:sugar_cane` | |
| `minecraft:tall_grass` | |
| `minecraft:vine` | |
| `minecraft:wheat` | |
| `minecraft:wheat_seeds` | |
| `minecraft:bamboo_sapling` | |
| `minecraft:cornflower` | |
| `minecraft:lily_of_the_valley` | |
| `minecraft:potted_bamboo` | |
| `minecraft:potted_cornflower` | |
| `minecraft:potted_lily_of_the_valley` | |
| `minecraft:potted_wither_rose` | |
| `minecraft:sweet_berry_bush` | |
| `minecraft:wither_rose` | |
| `minecraft:sweet_berries` | |
| `minecraft:bamboo` | |
| `minecraft:crimson_fungus` | |
| `minecraft:warped_fungus` | |
| `minecraft:crimson_roots` | |
| `minecraft:warped_roots` | |
| `minecraft:nether_sprouts` | |
| `minecraft:weeping_vines` | |
| `minecraft:twisting_vines` | |
| `minecraft:warped_wart_block` | |

#### Flowers

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `flowers` | 15 | Plants | `minecraft:poppy` | |

The Flowers group contains all the flowers in the game. These are sorted separately from [Plants](#plants) because there are so many varieties: allium, azure bluet, blue orchid, chorus flower, dandelion, lilac, tulip, daisy, just to name a few. This group is optional, so if you omit the item frame all flowers will fall back to sorting into the [Plants](#plants) group.

Click to Show Flowers Items

| Item ID | Image |
|---------|-------|
| `minecraft:allium` | |
| `minecraft:azure_bluet` | |
| `minecraft:blue_orchid` | |
| `minecraft:chorus_flower` | |
| `minecraft:dandelion` | |
| `minecraft:lilac` | |
| `minecraft:orange_tulip` | |
| `minecraft:oxeye_daisy` | |
| `minecraft:peony` | |
| `minecraft:pink_tulip` | |
| `minecraft:poppy` | |
| `minecraft:red_tulip` | |
| `minecraft:rose_bush` | |
| `minecraft:sunflower` | |
| `minecraft:white_tulip` | |

### Food

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `food` | 20 | Misc | `minecraft:cooked_beef` | |

The Food group contains specifically cooked foods, which are ready to eat. It also contains some fresh foods that do not cook and can be eaten raw (e.g. carrots, apples and melon slices), and ingredients to make other foods like sugar.

Click to Show Food Items

| Item ID | Image |
|---------|-------|
| `minecraft:apple` | |
| `minecraft:baked_potato` | |
| `minecraft:beetroot_soup` | |
| `minecraft:bread` | |
| `minecraft:cake` | |
| `minecraft:carrot` | |
| `minecraft:cooked_beef` | |
| `minecraft:cooked_chicken` | |
| `minecraft:cooked_cod` | |
| `minecraft:cooked_mutton` | |
| `minecraft:cooked_porkchop` | |
| `minecraft:cooked_rabbit` | |
| `minecraft:cooked_salmon` | |
| `minecraft:cookie` | |
| `minecraft:melon_slice` | |
| `minecraft:mushroom_stew` | |
| `minecraft:pumpkin_pie` | |
| `minecraft:rabbit_stew` | |
| `minecraft:sugar` | |
| `minecraft:suspicious_stew` | |

#### Raw

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `raw` | 8 | Food | `minecraft:beef` | |

The Raw group contains specifically raw foods, which require cooking before eating. This includes raw beef, chicken, cod, mutton, porkchop, potato, rabbit and salmon. The idea is that you can automate cooking by routing this group into a smelter. If the Raw group item frame is omitted, all the raw items fall back to to the [Food](#food) group.

Click to Show Raw Items

| Item ID | Image |
|---------|-------|
| `minecraft:beef` | |
| `minecraft:chicken` | |
| `minecraft:cod` | |
| `minecraft:mutton` | |
| `minecraft:porkchop` | |
| `minecraft:potato` | |
| `minecraft:rabbit` | |
| `minecraft:salmon` | |

### Mobs

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `mobs` | 103 | Misc | `minecraft:bone` | |

The Mobs group contains all organic items dropped from mobs. This includes bones, cobwebs, string, eggs, feathers, tears, leather, infested blocks (hidden monster spawners), rotten flesh, feet, hides, scutes, slime, mob spawners, mob spawn eggs and mob heads.

Click to Show Mobs Items

| Item ID | Image |
|---------|-------|
| `minecraft:bat_spawn_egg` | |
| `minecraft:blaze_spawn_egg` | |
| `minecraft:bone` | |
| `minecraft:bone_block` | |
| `minecraft:bone_meal` | |
| `minecraft:cave_spider_spawn_egg` | |
| `minecraft:chicken_spawn_egg` | |
| `minecraft:cobweb` | |
| `minecraft:cod_spawn_egg` | |
| `minecraft:cow_spawn_egg` | |
| `minecraft:creeper_head` | |
| `minecraft:creeper_spawn_egg` | |
| `minecraft:dolphin_spawn_egg` | |
| `minecraft:donkey_spawn_egg` | |
| `minecraft:dragon_egg` | |
| `minecraft:dragon_head` | |
| `minecraft:drowned_spawn_egg` | |
| `minecraft:egg` | |
| `minecraft:elder_guardian_spawn_egg` | |
| `minecraft:enderman_spawn_egg` | |
| `minecraft:endermite_spawn_egg` | |
| `minecraft:evoker_spawn_egg` | |
| `minecraft:feather` | |
| `minecraft:fermented_spider_eye` | |
| `minecraft:ghast_spawn_egg` | |
| `minecraft:ghast_tear` | |
| `minecraft:guardian_spawn_egg` | |
| `minecraft:horse_spawn_egg` | |
| `minecraft:husk_spawn_egg` | |
| `minecraft:infested_chiseled_stone_bricks` | |
| `minecraft:infested_cobblestone` | |
| `minecraft:infested_cracked_stone_bricks` | |
| `minecraft:infested_mossy_stone_bricks` | |
| `minecraft:infested_stone` | |
| `minecraft:infested_stone_bricks` | |
| `minecraft:leather` | |
| `minecraft:llama_spawn_egg` | |
| `minecraft:magma_cube_spawn_egg` | |
| `minecraft:spawner` | |
| `minecraft:mooshroom_spawn_egg` | |
| `minecraft:mule_spawn_egg` | |
| `minecraft:ocelot_spawn_egg` | |
| `minecraft:parrot_spawn_egg` | |
| `minecraft:phantom_membrane` | |
| `minecraft:phantom_spawn_egg` | |
| `minecraft:pig_spawn_egg` | |
| `minecraft:player_head` | |
| `minecraft:polar_bear_spawn_egg` | |
| `minecraft:pufferfish_spawn_egg` | |
| `minecraft:rabbit_foot` | |
| `minecraft:rabbit_hide` | |
| `minecraft:rabbit_spawn_egg` | |
| `minecraft:rotten_flesh` | |
| `minecraft:salmon_spawn_egg` | |
| `minecraft:scute` | |
| `minecraft:sheep_spawn_egg` | |
| `minecraft:shulker_shell` | |
| `minecraft:shulker_spawn_egg` | |
| `minecraft:silverfish_spawn_egg` | |
| `minecraft:skeleton_horse_spawn_egg` | |
| `minecraft:skeleton_skull` | |
| `minecraft:skeleton_spawn_egg` | |
| `minecraft:slime_ball` | |
| `minecraft:slime_block` | |
| `minecraft:slime_spawn_egg` | |
| `minecraft:spider_eye` | |
| `minecraft:spider_spawn_egg` | |
| `minecraft:squid_spawn_egg` | |
| `minecraft:stray_spawn_egg` | |
| `minecraft:string` | |
| `minecraft:tropical_fish_spawn_egg` | |
| `minecraft:turtle_egg` | |
| `minecraft:turtle_spawn_egg` | |
| `minecraft:vex_spawn_egg` | |
| `minecraft:villager_spawn_egg` | |
| `minecraft:vindicator_spawn_egg` | |
| `minecraft:witch_spawn_egg` | |
| `minecraft:wither_skeleton_skull` | |
| `minecraft:wither_skeleton_spawn_egg` | |
| `minecraft:wolf_spawn_egg` | |
| `minecraft:zombie_head` | |
| `minecraft:zombie_horse_spawn_egg` | |
| `minecraft:zombie_pigman_spawn_egg` | |
| `minecraft:zombie_spawn_egg` | |
| `minecraft:zombie_villager_spawn_egg` | |
| `minecraft:cat_spawn_egg` | |
| `minecraft:fox_spawn_egg` | |
| `minecraft:panda_spawn_egg` | |
| `minecraft:pillager_spawn_egg` | |
| `minecraft:ravager_spawn_egg` | |
| `minecraft:trader_llama_spawn_egg` | |
| `minecraft:wandering_trader_spawn_egg` | |
| `minecraft:bee_nest` | |
| `minecraft:bee_spawn_egg` | |
| `minecraft:honey_block` | |
| `minecraft:honeycomb` | |
| `minecraft:honeycomb_block` | |
| `minecraft:hoglin_spawn_egg` | |
| `minecraft:piglin_spawn_egg` | |
| `minecraft:piglin_brute_spawn_egg` | |
| `minecraft:strider_spawn_egg` | |
| `minecraft:zoglin_spawn_egg` | |
| `minecraft:zombified_piglin_spawn_egg` | |

### Precious

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `precious` | 21 | Misc | `minecraft:gold_ingot` | |

The Precious group contains items that can be classified as expensive or rare, like ingots, nuggets, elytra wings, nether stars, totems, tridents, hearts of the sea, beacons and conduits.

Click to Show Precious Items

| Item ID | Image |
|---------|-------|
| `minecraft:beacon` | |
| `minecraft:conduit` | |
| `minecraft:diamond` | |
| `minecraft:diamond_block` | |
| `minecraft:diamond_ore` | |
| `minecraft:elytra` | |
| `minecraft:emerald` | |
| `minecraft:emerald_block` | |
| `minecraft:gold_block` | |
| `minecraft:gold_ingot` | |
| `minecraft:gold_nugget` | |
| `minecraft:heart_of_the_sea` | |
| `minecraft:iron_ingot` | |
| `minecraft:iron_nugget` | |
| `minecraft:nether_star` | |
| `minecraft:obsidian` | |
| `minecraft:totem_of_undying` | |
| `minecraft:trident` | |
| `minecraft:netherite_ingot` | |
| `minecraft:netherite_scrap` | |
| `minecraft:netherite_block` | |

#### Lapis

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `lapis` | 2 | Precious | `minecraft:lapis_lazuli` | |

The Lapis group contains both lapis lazuli and lapis blocks. This group is optional, and if omitted the items will fall back to the Precious group.

Click to Show Lapis Items

| Item ID | Image |
|---------|-------|
| `minecraft:lapis_block` | |
| `minecraft:lapis_lazuli` | |

### Magic

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `magic` | 16 | Misc | `minecraft:glass_bottle` | |

The Magic group contains magical items, or items designed to work with magic or potions. This includes blaze powder, blaze rods, brewing stands, cauldrons, enchanted books, ender eyes and pearls, potions of all kinds, golden apples and golden carrots.

Click to Show Magic Items

| Item ID | Image |
|---------|-------|
| `minecraft:bedrock` | |
| `minecraft:blaze_powder` | |
| `minecraft:blaze_rod` | |
| `minecraft:brewing_stand` | |
| `minecraft:cauldron` | |
| `minecraft:dragon_breath` | |
| `minecraft:enchanted_golden_apple` | |
| `minecraft:enchanting_table` | |
| `minecraft:ender_eye` | |
| `minecraft:ender_pearl` | |
| `minecraft:experience_bottle` | |
| `minecraft:glass_bottle` | |
| `minecraft:glistering_melon_slice` | |
| `minecraft:golden_apple` | |
| `minecraft:golden_carrot` | |
| `minecraft:honey_bottle` | |

#### Potions

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `potions` | 3 | Magic | `minecraft:potion` | |

The Potions group contains all three kinds of potions (standard, lingering and splash). This group is optional, and if omitted the items will fall back to the Magic group.

Click to Show Potions Items

| Item ID | Image |
|---------|-------|
| `minecraft:lingering_potion` | |
| `minecraft:potion` | |
| `minecraft:splash_potion` | |

#### Books

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `books` | 2 | Magic | `minecraft:book` | |

The Books group contains both standard books and enchanted books. This group is optional, and if omitted the items will fall back to the Magic group.

Click to Show Books Items

| Item ID | Image |
|---------|-------|
| `minecraft:book` | |
| `minecraft:enchanted_book` | |

### Wool

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `wool` | 54 | Misc | `minecraft:white_wool` | |

The Wool group contains wool of all colors, as well as carpet and banners.

Click to Show Wool Items

| Item ID | Image |
|---------|-------|
| `minecraft:black_banner` | |
| `minecraft:black_carpet` | |
| `minecraft:black_wool` | |
| `minecraft:blue_banner` | |
| `minecraft:blue_carpet` | |
| `minecraft:blue_wool` | |
| `minecraft:brown_banner` | |
| `minecraft:brown_carpet` | |
| `minecraft:brown_wool` | |
| `minecraft:cyan_banner` | |
| `minecraft:cyan_carpet` | |
| `minecraft:cyan_wool` | |
| `minecraft:gray_banner` | |
| `minecraft:gray_carpet` | |
| `minecraft:gray_wool` | |
| `minecraft:green_banner` | |
| `minecraft:green_carpet` | |
| `minecraft:green_wool` | |
| `minecraft:light_blue_banner` | |
| `minecraft:light_blue_carpet` | |
| `minecraft:light_blue_wool` | |
| `minecraft:light_gray_banner` | |
| `minecraft:light_gray_carpet` | |
| `minecraft:light_gray_wool` | |
| `minecraft:lime_banner` | |
| `minecraft:lime_carpet` | |
| `minecraft:lime_wool` | |
| `minecraft:magenta_banner` | |
| `minecraft:magenta_carpet` | |
| `minecraft:magenta_wool` | |
| `minecraft:orange_banner` | |
| `minecraft:orange_carpet` | |
| `minecraft:orange_wool` | |
| `minecraft:pink_banner` | |
| `minecraft:pink_carpet` | |
| `minecraft:pink_wool` | |
| `minecraft:purple_banner` | |
| `minecraft:purple_carpet` | |
| `minecraft:purple_wool` | |
| `minecraft:red_banner` | |
| `minecraft:red_carpet` | |
| `minecraft:red_wool` | |
| `minecraft:white_banner` | |
| `minecraft:white_carpet` | |
| `minecraft:white_wool` | |
| `minecraft:yellow_banner` | |
| `minecraft:yellow_carpet` | |
| `minecraft:yellow_wool` | |
| `minecraft:flower_banner_pattern` | |
| `minecraft:creeper_banner_pattern` | |
| `minecraft:skull_banner_pattern` | |
| `minecraft:mojang_banner_pattern` | |
| `minecraft:globe_banner_pattern` | |
| `minecraft:piglin_banner_pattern` | |

### Concrete

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `concrete` | 32 | Misc | `minecraft:gray_concrete_powder` | |

The Concrete group contains concrete blocks and concrete powder of all colors.

Click to Show Concrete Items

| Item ID | Image |
|---------|-------|
| `minecraft:black_concrete` | |
| `minecraft:black_concrete_powder` | |
| `minecraft:blue_concrete` | |
| `minecraft:blue_concrete_powder` | |
| `minecraft:brown_concrete` | |
| `minecraft:brown_concrete_powder` | |
| `minecraft:cyan_concrete` | |
| `minecraft:cyan_concrete_powder` | |
| `minecraft:gray_concrete` | |
| `minecraft:gray_concrete_powder` | |
| `minecraft:green_concrete` | |
| `minecraft:green_concrete_powder` | |
| `minecraft:light_blue_concrete` | |
| `minecraft:light_blue_concrete_powder` | |
| `minecraft:light_gray_concrete` | |
| `minecraft:light_gray_concrete_powder` | |
| `minecraft:lime_concrete` | |
| `minecraft:lime_concrete_powder` | |
| `minecraft:magenta_concrete` | |
| `minecraft:magenta_concrete_powder` | |
| `minecraft:orange_concrete` | |
| `minecraft:orange_concrete_powder` | |
| `minecraft:pink_concrete` | |
| `minecraft:pink_concrete_powder` | |
| `minecraft:purple_concrete` | |
| `minecraft:purple_concrete_powder` | |
| `minecraft:red_concrete` | |
| `minecraft:red_concrete_powder` | |
| `minecraft:white_concrete` | |
| `minecraft:white_concrete_powder` | |
| `minecraft:yellow_concrete` | |
| `minecraft:yellow_concrete_powder` | |

### Terracotta

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `terracotta` | 33 | Misc | `minecraft:terracotta` | |

The Terracotta group contains both regular and glazed terracotta blocks of all colors.

Click to Show Terracotta Items

| Item ID | Image |
|---------|-------|
| `minecraft:black_glazed_terracotta` | |
| `minecraft:black_terracotta` | |
| `minecraft:blue_glazed_terracotta` | |
| `minecraft:blue_terracotta` | |
| `minecraft:brown_glazed_terracotta` | |
| `minecraft:brown_terracotta` | |
| `minecraft:cyan_glazed_terracotta` | |
| `minecraft:cyan_terracotta` | |
| `minecraft:gray_glazed_terracotta` | |
| `minecraft:gray_terracotta` | |
| `minecraft:green_glazed_terracotta` | |
| `minecraft:green_terracotta` | |
| `minecraft:light_blue_glazed_terracotta` | |
| `minecraft:light_blue_terracotta` | |
| `minecraft:light_gray_terracotta` | |
| `minecraft:lime_glazed_terracotta` | |
| `minecraft:lime_terracotta` | |
| `minecraft:magenta_glazed_terracotta` | |
| `minecraft:magenta_terracotta` | |
| `minecraft:orange_glazed_terracotta` | |
| `minecraft:orange_terracotta` | |
| `minecraft:pink_glazed_terracotta` | |
| `minecraft:pink_terracotta` | |
| `minecraft:purple_glazed_terracotta` | |
| `minecraft:purple_terracotta` | |
| `minecraft:red_glazed_terracotta` | |
| `minecraft:red_terracotta` | |
| `minecraft:light_gray_glazed_terracotta` | |
| `minecraft:terracotta` | |
| `minecraft:white_glazed_terracotta` | |
| `minecraft:white_terracotta` | |
| `minecraft:yellow_glazed_terracotta` | |
| `minecraft:yellow_terracotta` | |

### Glass

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `glass` | 34 | Misc | `minecraft:glass` | |

The Glass group contains all glass blocks, glass panes, and stained glass of all colors.

Click to Show Glass Items

| Item ID | Image |
|---------|-------|
| `minecraft:black_stained_glass` | |
| `minecraft:black_stained_glass_pane` | |
| `minecraft:blue_stained_glass` | |
| `minecraft:blue_stained_glass_pane` | |
| `minecraft:brown_stained_glass` | |
| `minecraft:brown_stained_glass_pane` | |
| `minecraft:cyan_stained_glass` | |
| `minecraft:cyan_stained_glass_pane` | |
| `minecraft:glass` | |
| `minecraft:glass_pane` | |
| `minecraft:gray_stained_glass` | |
| `minecraft:gray_stained_glass_pane` | |
| `minecraft:green_stained_glass` | |
| `minecraft:green_stained_glass_pane` | |
| `minecraft:light_blue_stained_glass` | |
| `minecraft:light_blue_stained_glass_pane` | |
| `minecraft:light_gray_stained_glass` | |
| `minecraft:light_gray_stained_glass_pane` | |
| `minecraft:lime_stained_glass` | |
| `minecraft:lime_stained_glass_pane` | |
| `minecraft:magenta_stained_glass` | |
| `minecraft:magenta_stained_glass_pane` | |
| `minecraft:orange_stained_glass` | |
| `minecraft:orange_stained_glass_pane` | |
| `minecraft:pink_stained_glass` | |
| `minecraft:pink_stained_glass_pane` | |
| `minecraft:purple_stained_glass` | |
| `minecraft:purple_stained_glass_pane` | |
| `minecraft:red_stained_glass` | |
| `minecraft:red_stained_glass_pane` | |
| `minecraft:white_stained_glass` | |
| `minecraft:white_stained_glass_pane` | |
| `minecraft:yellow_stained_glass` | |
| `minecraft:yellow_stained_glass_pane` | |

### Ice

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `ice` | 6 | Misc | `minecraft:ice` | |

The Ice group contains all ice and snow variants, including regular ice, blue ice, packed ice, snow, snow blocks and snowballs.

Click to Show Ice Items

| Item ID | Image |
|---------|-------|
| `minecraft:blue_ice` | |
| `minecraft:ice` | |
| `minecraft:packed_ice` | |
| `minecraft:snow` | |
| `minecraft:snow_block` | |
| `minecraft:snowball` | |

### Ocean

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `ocean` | 11 | Misc | `minecraft:kelp` | |

The Ocean group contains items found in oceans, including kelp (wet and dry), shells, pufferfish, sea lanterns, sea pickles, seagrass, sponges (wet and dry), and tropical fish. It specifically excludes editable fish, which are categorized as [Raw](#raw) or [Food](#food). Note that [Coral](#coral) and [Prismarine](#prismarine) have their own optional sub-groups, but both fallback to Ocean.

Click to Show Ocean Items

| Item ID | Image |
|---------|-------|
| `minecraft:dried_kelp` | |
| `minecraft:dried_kelp_block` | |
| `minecraft:kelp` | |
| `minecraft:nautilus_shell` | |
| `minecraft:pufferfish` | |
| `minecraft:sea_lantern` | |
| `minecraft:sea_pickle` | |
| `minecraft:seagrass` | |
| `minecraft:sponge` | |
| `minecraft:tropical_fish` | |
| `minecraft:wet_sponge` | |

#### Coral

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `coral` | 30 | Ocean | `minecraft:bubble_coral_block` | |

The Coral group contains all coral blocks and items found in warm ocean biomes. This includes brain coral, bubble coral, fire coral, horn coral, tube coral and dead coral. This is an optional group, and if the item frame is omitted, all coral will sort into [Ocean](#ocean) instead.

Click to Show Coral Items

| Item ID | Image |
|---------|-------|
| `minecraft:brain_coral` | |
| `minecraft:brain_coral_block` | |
| `minecraft:brain_coral_fan` | |
| `minecraft:bubble_coral` | |
| `minecraft:bubble_coral_block` | |
| `minecraft:bubble_coral_fan` | |
| `minecraft:dead_brain_coral_block` | |
| `minecraft:dead_bubble_coral_block` | |
| `minecraft:dead_fire_coral_block` | |
| `minecraft:dead_horn_coral_block` | |
| `minecraft:dead_tube_coral_block` | |
| `minecraft:fire_coral` | |
| `minecraft:fire_coral_block` | |
| `minecraft:fire_coral_fan` | |
| `minecraft:horn_coral` | |
| `minecraft:horn_coral_block` | |
| `minecraft:horn_coral_fan` | |
| `minecraft:tube_coral` | |
| `minecraft:tube_coral_block` | |
| `minecraft:tube_coral_fan` | |
| `minecraft:dead_brain_coral` | |
| `minecraft:dead_bubble_coral` | |
| `minecraft:dead_fire_coral` | |
| `minecraft:dead_horn_coral` | |
| `minecraft:dead_tube_coral` | |
| `minecraft:dead_tube_coral_fan` | |
| `minecraft:dead_brain_coral_fan` | |
| `minecraft:dead_bubble_coral_fan` | |
| `minecraft:dead_fire_coral_fan` | |
| `minecraft:dead_horn_coral_fan` | |

#### Prismarine

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `prismarine` | 12 | Ocean | `minecraft:prismarine` | |

The Prismarine group contains all prismarine blocks in the game, including slabs, stairs, bricks, crystals, shards, and dark prismarine variants. This is an optional group, and if the item frame is omitted, all prismarine will sort into [Ocean](#ocean) instead.

Click to Show Prismarine Items

| Item ID | Image |
|---------|-------|
| `minecraft:dark_prismarine` | |
| `minecraft:dark_prismarine_slab` | |
| `minecraft:dark_prismarine_stairs` | |
| `minecraft:prismarine` | |
| `minecraft:prismarine_brick_slab` | |
| `minecraft:prismarine_brick_stairs` | |
| `minecraft:prismarine_bricks` | |
| `minecraft:prismarine_crystals` | |
| `minecraft:prismarine_shard` | |
| `minecraft:prismarine_slab` | |
| `minecraft:prismarine_stairs` | |
| `minecraft:prismarine_wall` | |

### Ink

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `ink` | 20 | Misc | `minecraft:ink_sac` | |

The Ink group contains all ink and dyes, including cactus green, cyan, dandelion yellow, gray, black, light blue, light gray, lime, magenta, orange, pink, purple and rose red.

Click to Show Ink Items

| Item ID | Image |
|---------|-------|
| `minecraft:cactus_green` | |
| `minecraft:cyan_dye` | |
| `minecraft:dandelion_yellow` | |
| `minecraft:gray_dye` | |
| `minecraft:ink_sac` | |
| `minecraft:light_blue_dye` | |
| `minecraft:light_gray_dye` | |
| `minecraft:lime_dye` | |
| `minecraft:magenta_dye` | |
| `minecraft:orange_dye` | |
| `minecraft:pink_dye` | |
| `minecraft:purple_dye` | |
| `minecraft:rose_red` | |
| `minecraft:black_dye` | |
| `minecraft:blue_dye` | |
| `minecraft:brown_dye` | |
| `minecraft:green_dye` | |
| `minecraft:yellow_dye` | |
| `minecraft:red_dye` | |
| `minecraft:white_dye` | |

### Nether

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `nether` | 32 | Misc | `minecraft:netherrack` | |

The Nether group contains items found in the nether, including netherrack, nether bricks (includes fences, slabs and stairs), glowstone (blocks and dust), quartz (including variants like pillars, slabs, stairs, and chiseled), magma blocks, magma cream and soul sand.

Click to Show Nether Items

| Item ID | Image |
|---------|-------|
| `minecraft:chiseled_quartz_block` | |
| `minecraft:glowstone` | |
| `minecraft:glowstone_dust` | |
| `minecraft:magma_block` | |
| `minecraft:magma_cream` | |
| `minecraft:nether_brick` | |
| `minecraft:nether_brick_fence` | |
| `minecraft:nether_brick_slab` | |
| `minecraft:nether_brick_stairs` | |
| `minecraft:nether_brick_wall` | |
| `minecraft:nether_bricks` | |
| `minecraft:red_nether_brick_slab` | |
| `minecraft:red_nether_brick_stairs` | |
| `minecraft:red_nether_brick_wall` | |
| `minecraft:nether_wart_block` | |
| `minecraft:netherrack` | |
| `minecraft:quartz` | |
| `minecraft:quartz_block` | |
| `minecraft:quartz_pillar` | |
| `minecraft:quartz_slab` | |
| `minecraft:quartz_stairs` | |
| `minecraft:red_nether_bricks` | |
| `minecraft:smooth_quartz` | |
| `minecraft:soul_sand` | |
| `minecraft:soul_soil` | |
| `minecraft:smooth_quartz_slab` | |
| `minecraft:smooth_quartz_stairs` | |
| `minecraft:cracked_nether_bricks` | |
| `minecraft:chiseled_nether_bricks` | |
| `minecraft:quartz_bricks` | |
| `minecraft:shroomlight` | |
| `minecraft:crying_obsidian` | |

### Ores

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `ores` | 9 | Misc | `minecraft:iron_ore` | |

The Ores group contains ore blocks ready for smelting, including iron, gold, coal, emerald, lapis, nether quartz and restone ore. **It explicitly excludes diamond ore**, because it is assumed you would rather not have that auto-smelted, and instead want to mine it with a fortune pick.

Click to Show Ores Items

| Item ID | Image |
|---------|-------|
| `minecraft:coal_ore` | |
| `minecraft:emerald_ore` | |
| `minecraft:gold_ore` | |
| `minecraft:iron_ore` | |
| `minecraft:lapis_ore` | |
| `minecraft:nether_quartz_ore` | |
| `minecraft:nether_gold_ore` | |
| `minecraft:redstone_ore` | |
| `minecraft:ancient_debris` | |

### Redstone

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `redstone` | 20 | Misc | `minecraft:redstone` | |

The Redstone group contains all redstone related items, including redstone dust, command blocks (all types), comparators, daylight detectors, dispensers, droppers, weighted pressure plates, hoppers, levers, observers, pistons, redstone blocks, redstone lamps, redstone torches, repeaters, and tripwire hooks.

Click to Show Redstone Items

| Item ID | Image |
|---------|-------|
| `minecraft:chain_command_block` | |
| `minecraft:command_block` | |
| `minecraft:comparator` | |
| `minecraft:daylight_detector` | |
| `minecraft:dispenser` | |
| `minecraft:dropper` | |
| `minecraft:heavy_weighted_pressure_plate` | |
| `minecraft:hopper` | |
| `minecraft:lever` | |
| `minecraft:light_weighted_pressure_plate` | |
| `minecraft:observer` | |
| `minecraft:piston` | |
| `minecraft:redstone` | |
| `minecraft:redstone_block` | |
| `minecraft:redstone_lamp` | |
| `minecraft:redstone_torch` | |
| `minecraft:repeater` | |
| `minecraft:repeating_command_block` | |
| `minecraft:sticky_piston` | |
| `minecraft:tripwire_hook` | |

### End

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `end` | 12 | Misc | `minecraft:end_stone` | |

The End group contains all items found in The End dimension, including end stone, end stone bricks, end crystals, end rods, end portal frames, purpur blocks, purpur pillars, purpur slabs and stairs.

Click to Show End Items

| Item ID | Image |
|---------|-------|
| `minecraft:end_crystal` | |
| `minecraft:end_portal_frame` | |
| `minecraft:end_rod` | |
| `minecraft:end_stone` | |
| `minecraft:end_stone_bricks` | |
| `minecraft:purpur_block` | |
| `minecraft:purpur_pillar` | |
| `minecraft:purpur_slab` | |
| `minecraft:purpur_stairs` | |
| `minecraft:end_stone_brick_slab` | |
| `minecraft:end_stone_brick_stairs` | |
| `minecraft:end_stone_brick_wall` | |

### Music

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `music` | 15 | Misc | `minecraft:note_block` | |

The Music group contains all music related items in the game, including all the unique music discs, note blocks, and the jukebox.

Click to Show Music Items

| Item ID | Image |
|---------|-------|
| `minecraft:music_disc_11` | |
| `minecraft:music_disc_13` | |
| `minecraft:music_disc_blocks` | |
| `minecraft:music_disc_cat` | |
| `minecraft:music_disc_chirp` | |
| `minecraft:music_disc_far` | |
| `minecraft:music_disc_mall` | |
| `minecraft:music_disc_mellohi` | |
| `minecraft:music_disc_stal` | |
| `minecraft:music_disc_strad` | |
| `minecraft:music_disc_wait` | |
| `minecraft:music_disc_ward` | |
| `minecraft:music_disc_pigstep` | |
| `minecraft:note_block` | |
| `minecraft:jukebox` | |

### Misc

| Group ID | Items | Fallback Group | Item Frame | Image |
|----------|-------|----------------|------------|-------|
| `misc` | 1 | n/a | `minecraft:carrot_on_a_stick` | |

The Misc group is a special universal catch-all group, and collects all otherwise unsorted items. If a particuar group item frame is missing, and the group has no specified fallback group, the items will end up in Misc. Note that if the misc item frame (containing a carrot on a stick) is itself missing, unsorted items will teleport back to the player.

Click to Show Misc Items

| Item ID | Image |
|---------|-------|
| `minecraft:carrot_on_a_stick` | |

# FAQ

**Q. Why do some of my items teleport to my friend's storage system?**

A. If you have multiple magic sorting systems in the same world or on the same server, make sure they are at least 8 chunks (128 blocks) away from each other. This is the maximum teleport distance of items in the magic sorting system. You can use the [F3 debug screen](https://minecraft.gamepedia.com/Debug_screen) to measure distance between locations using your player X/Y/Z coordinates.

**Q. Why do some of my items keep teleporting back to ME?**

A. This happens when a suitable [item frame](https://minecraft.gamepedia.com/Item_Frame) cannot be found for the items, which can happen for a number of reasons. First, make sure you have an item frame displaying the *correct item* that matches the target group. This may not be the exact item in your inventory, but rather a specific item that represents the whole group. See [Groups](#groups) for a list of these special items -- the item frames must contain those *exact* items! Second, the item frame must be within 8 chunks (128 blocks) of the controller (drop-off chest), and the chunks all have to be loaded. Finally, you may not have a [misc category](#misc) setup. That is, you need an item frame with a [carrot on a stick](https://minecraft.gamepedia.com/Carrot_on_a_Stick), which is a universal catch-all for all unsorted items. Add this to catch all the items that you don't have specific groups for.

**Q. Why isn't diamond ore sorted into the ores group?**

A. This was actually a deliberate decision when we made the data pack. We assumed that most of the time, the player would not want diamond ore to be auto-smelted (which is probably where the ores group gets routed -- i.e. into a smelter). It is more likely that the player would want to break the diamond ore themselves, using a fortune pick. That being said, if *you* want diamond ore sorted into *your* ores group, you can edit the `config.json` file and rebuild the data pack to your liking! See [Development](#development) for details.

**Q. Why not simply teleport items to the _nearest_ matching item frame? Then you wouldn't even need a maximum teleport distance!**

A. That is true, however we actually don't want items teleported to the nearest matching item frame per se. Consider that a single sort group may have double or more item frames, to load balance the deposited items between multiple hoppers and/or chests. See [Multiple Item Frames](#multiple-item-frames) for an example. In this case, to handle large numbers of deposited items at once, we need to randomize between the target item frames, but still maintain compatibility with multiple sorting systems in the same world. That is where the maximum distance (8 chunks) comes into play.

**Q. I dropped off a stack of coal but it didn't split between my two item frames!**

A. Sometimes Minecraft treats a stack of items as a "single item with 64 quantity" and thus it gets teleported as one item, to a single item frame. To fix this, you can "spread out" your stack of items in the drop-off chest, simply by holding down the left mouse button and dragging across the chest dialog, like this:

![Coal Distribution](https://pixlcore.com/software/mss/screenshots/coal-dist.png)

This spread arrangement has a much better chance of load balancing between multiple item frame targets, because the game treats the items as multiple smaller stacks when the chest is broken.

# Development

The Magic Sorting System is designed to be extensible. You can change group sorting rules, add your own custom groups, and even add new items (possibly for supporting mod packs or when new Minecraft versions are released). This is accomplished by editing a special JSON configuration file.

If you unzip the data pack, and look inside the `source` folder, you will find a `config.json` file. Open this in your favorite text editor and you will find `groups` array, containing all the sorting groups. Example snippet:

```js
"groups": {
{
"group_name": "dirt",
"item_frame": "minecraft:dirt",
"fallback": "misc",
"items": [
"minecraft:coarse_dirt",
"minecraft:dirt",
"minecraft:farmland",
"minecraft:grass_block",
"minecraft:grass_path",
"minecraft:mycelium",
"minecraft:podzol"
]
},
{
"group_name": "gravel",
"item_frame": "minecraft:gravel",
"fallback": "dirt",
"items": [
"minecraft:gravel"
]
},
{
"group_name": "misc",
"item_frame": "minecraft:carrot_on_a_stick",
"items": [
"minecraft:carrot_on_a_stick"
]
}
}
```

Each group entry has the following properties:

| Property | Type | Description |
|----------|------|-------------|
| `group_name` | String | The name of the sort group, which should be lower-case alphanumeric. This is an arbitrary name, and does not correspond with any Minecraft Item ID. |
| `item_frame` | String | The exact [Minecraft Item ID](https://minecraft.gamepedia.com/Java_Edition_data_values) of the item in the Item Frame that the sort group uses as a teleport target. |
| `fallback` | String | The name of the group items should fall back to, if this group's item frame cannot be found. Omit this to fallback to teleporting to the player. |
| `items` | Array | A list of all the [Minecraft Item IDs](https://minecraft.gamepedia.com/Java_Edition_data_values) of items to be sorted into this group. |

The idea is that all the item IDs listed in the `items` array will be sorted into this group, if and only if an [item frame](https://minecraft.gamepedia.com/Item_Frame) containing the item specified in `item_frame` can be found within 128 blocks. If not, then the item is sorted into the `fallback` group instead.

In the example JSON snippet above, you can see three separate groups described. The cascading works as follows. The `gravel` group would sort gravel into an item frame containing a `minecraft:gravel` block. However, if that item frame couldn't be found, the group falls back to the `dirt` group. The `dirt` group itself contains 7 items, which would all be sorted to an item frame containing a `minecraft:dirt` block. However, if *that* item frame couldn't be found, those items would fall back to the `misc` group. The `misc` group by default catches all unsorted items, and routes to an item frame containing a `minecraft:carrot_on_a_stick`.

## Maximum Teleport Distance

By default, the maximum item teleportation is 128 blocks. This feature allows multiple sorting systems to coexist in the same world, without items teleporting to the wrong item frames. However, if you want to change this, it is set in the `config.json` file outside of the `groups` array:

```js
"max_teleport_distance": 128,
```

Change this to any number of blocks you want, but please note that the chunks containing the item frames have to be loaded for the teleport to work. For long distance teleportation it is recommended you build your storage system inside the spawn chunks, so it stays loaded.

## Teleport Effects

Don't like the particle effect or sound effect when items are sorted? You can customize or disable those by editing the `effects` array:

```js
"effects": [
"playsound minecraft:entity.illusioner.mirror_move block @a[distance=..5] ~ ~ ~ 1.0 1.0",
"particle minecraft:entity_effect ~ ~ ~ 1 1 1 1 100"
]
```

By default we show some colorful particles and play one of the sound effects from the [illusioner](https://minecraft.gamepedia.com/Illusioner) mob, but you can change this. For example, if you don't want any effects at all, just empty the effects array like this:

```js
"effects": []
```

Or, you can choose your own [particles](https://minecraft.gamepedia.com/Particles#Types_of_particles) and/or [sounds](https://minecraft.gamepedia.com/Sounds.json#Sound_events) from the game, and replace the commands with your custom versions.

## Compiling

When you are done making your changes to the file, save and [validate the syntax](https://jsonlint.com/) (JSON can be picky). Then you will have to "compile" the config file into actual data pack function code. This is done by running a special `generate.js` script that also lives in the `source` folder. You will need [Node.js](https://nodejs.org/) installed on your machine to run this script. Once installed, open a command prompt, change into the `source` directory and type this:

```
node generate.js
```

This will regenerate all the data pack function code (i.e. all the `.mcfunction` files) using your own `config.json` file as the source. When the script is complete, the new data pack should be all ready to be installed to your local folder or server.

Note that data packs can be installed as a ZIP file, or as a folder.

# References

- [Minecraft Data Packs](https://minecraft.gamepedia.com/Data_pack)
- [Minecraft Item IDs](https://minecraft.gamepedia.com/Java_Edition_data_values)
- [Node.js](https://nodejs.org/)
- [JSON Validator](https://jsonlint.com/)

# License

**The MIT License (MIT)**

*Copyright (c) 2018 - 2020 Joseph Huckaby*

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

NOT AN OFFICIAL MINECRAFT PRODUCT. NOT APPROVED BY OR ASSOCIATED WITH MOJANG.