The Magic Sorting System is a free Data Pack available for Minecraft v1.13-v1.17 (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, 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 for the category. The idea is that you can place a 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.
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, 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.
- 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
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 section for updated instructions. If you still want to use a drop chest, see the Advanced section for instructions.
- Installation
- Usage
- FAQ
- Development
- References
- License
To install the data pack, download the latest ZIP file from the releases page, 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:
- 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.
- 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.
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 below to learn which groups require which framed items.
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 | 9 | To build the lower base controller block. | |
Lapis Lazuli | 9 | To build the upper base controller block. | |
Iron Ingot | 5 | To build the first hopper. | |
Wood Log | 4 | To build the first chests and item frame. | |
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).
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, with a lapis block on top of it.
Typically the two blocks are submerged underground, so you could start with a 2-block-deep hole like this:
Place the gold block on the bottom:
And then place the lapis block on top of that:
Fill in the rest of the hole:
And you're done:
If you have more lapis and gold blocks, a 3x3 grid is recommended, so it's easier to drop items onto:
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 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.
An "item receiver" is just an item frame that contains a special item which represents one of the 39 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 underneath the item frame, and route that to a nearby chest. Example:
In this example, the item frame contains a block of cobblestone, which is the item representing the 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.
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:
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.
For high traffic groups such as 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:
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 section for another way to solve item overflow, which is to build an automatic drop chest.
You can route your items into things other than chests -- you can also setup an easy auto-smelting system, for ores and/or raw food. Simply add an additional hopper under the item chest, and route it to a furnace on its top side:
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.
Furnaces need fuel as well. So taking this a step further, you can route the 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:
Here we have 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 group into the sides. Finally, the furnaces deposit smelted ingots into a double chest at the bottom, which is also setup as the Precious group (with the gold ingots 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 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 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.
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 group:
By default, this item frame with the kelp leaf on display would receive all items that come from the ocean. However, the sorting system defines two sub-groups under ocean, Prismarine and Coral. These optional sub-groups can further sort the ocean's many items into 3 categories, if you want:
So in this case, all prismarine related items would teleport to the item frame with the prismarine block, all coral items would teleport to the item frame with the bubble coral block, and all the other non-prismarine non-coral ocean items would teleport to the item frame with the Kelp leaf. The magic sorting system automatically detects which item frames are on display, and sorts accordingly.
See the Groups section below for a list of all 39 groups and to see how the sub-group hierarchy works.
All item groups ultimately fall back to a special 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 display item:
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.
You can have as many controllers as you want in a Minecraft world. All you need is another lapis block on top of a gold block. One neat trick is to use one of these for a water-harvested plant farms or a nearby 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:
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!
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:
This requires a one chest, one hopper, one dropper facing downward, one comparator, one repeater and 5 redstone dust. The redstone circuit is copied verbatim from this video tutorial, 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:
The key here is to face the dropper downward, leave one block of empty space below it, and then place your lapis block on top of a gold block underneath all that. Here is a cross section view:
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, click to expand the "Peace and Quiet" group and then download the "Quieter Dispensers and Droppers" pack.
Tip: If you use a 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.
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, two hoppers, two droppers facing downward, two comparators, two repeaters and 10 redstone dust. The double-speed redstone circuit is copied verbatim from this video tutorial, so please watch that to see how to orient the blocks. Here is how it should look:
Note that each comparator faces away from the droppers, but the redstone is mirrored on each side. The video does a much better job of explaining this, but here is a view from above:
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 on top of gold blocks underneath all that. Here is a cross section view:
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.
Here is a list of all 39 groups in the magic sorting system, how some fallback to others, and all the items they contain.
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 |
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.
Group ID | Items | Fallback Group | Item Frame | Image |
---|---|---|---|---|
sand |
1 | Misc | minecraft:sand |
The Sand group contains only sand blocks. However, see Sandstone below. If you omit the sandstone group, all sandstone blocks fallback to the Sand group.
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
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 group.
Click to Show Wood Items
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 group.
Click to Show Woodwork Items
Group ID | Items | Fallback Group | Item Frame | Image |
---|---|---|---|---|
office |
6 | Woodwork | minecraft:paper |
The Office group is basically an offshoot of the 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 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 |
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
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 group.
Click to Show Stonework Items
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.
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, Rails and Redstone items, which have their own respective groups.
Click to Show Tools Items
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 group.
Click to Show Storage Items
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
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
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 which have their own dedicated group.
Click to Show Plants Items
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 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 group.
Click to Show Flowers Items
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
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 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 |
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
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
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.
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
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 |
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.
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
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
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
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
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 |
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 or Food. Note that Coral and Prismarine have their own optional sub-groups, but both fallback to Ocean.
Click to Show Ocean Items
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 instead.
Click to Show Coral Items
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 instead.
Click to Show Prismarine Items
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
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
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
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
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
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
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.
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 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 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 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 setup. That is, you need an item frame with a 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 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 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:
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.
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:
"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 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 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 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
.
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:
"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.
Don't like the particle effect or sound effect when items are sorted? You can customize or disable those by editing the effects
array:
"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 mob, but you can change this. For example, if you don't want any effects at all, just empty the effects array like this:
"effects": []
Or, you can choose your own particles and/or sounds from the game, and replace the commands with your custom versions.
When you are done making your changes to the file, save and validate the syntax (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 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.
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.