Repository navigation
Users Interface
This page is about loot. The worldgen tree is described in Worldgen Info → Interface.
Loot is shown as a tree. The root is the loot table (or the trade), below it are pools, and below those the individual entries. Branch lines connect a parent to its children, so a nested structure stays readable.
- Item slot — one concrete result. Hovering it shows the full tooltip for that entry.
- Empty slot — a chance that the entry drops nothing, such as an empty entry, an item entry for air or a reference to the empty loot table.
-
Missing slot — a loot table reference that cannot be opened: the referenced table does not exist, or it is
already being expanded higher up the same branch. Loot tables that reference each other in a loop are expanded
once; the reference that closes the loop is shown as
Recursive Referencewith the table's ID. - Chance — entries are ordered by descending chance, so the most likely drops come first.
- Count — a single number or a range. A range appears when the loot table rolls a number provider (uniform, binomial, …), or when a conditional count modifier can widen it. How a count or chance is read in the tooltip is described in Numbers.
- Composite entries — alternatives (first match wins), groups and sequences keep their own sub-branch, because which of their children actually drops depends on the conditions inside them.
The tooltip of an entry lists, in this order:
- what the entry produces,
- its modifiers (count, enchantments, NBT/data components, smelting, …) — loot functions, shown under
Modifiers:, - its predicates (random chance, block state, killer entity, tool used, …) — loot conditions, shown under
Predicates:, - extra drops coming from outside the table — see Global Loot Modifiers.
Counts, chances, rolls and trade prices show more than their range:
-
Range —
Count: 1 to 3. Ranges in the tooltip are written1 to 3; the small number in the corner of an item slot keeps the short1-3. A count never goes above what fits into one stack of the item, so the range is cut off there. -
Most likely value — after the range, in gray:
~2 (42%)is the value you get most often and how often you get it. Several equally likely values next to each other read as a band,~1 to 2 (33%), where the percentage is the chance of each of them. No~means every value is equally likely (a plain uniform range, a fixed number), or that the shape of the value cannot be worked out. -
Enchantment levels — a value that grows with an enchantment (Looting, Fortune, …) shows its unenchanted
value on its own line and one row per level below it, each in its own color:
Looting II: 0 to 4 ~2 (33%). - Conditions — a count that depends on a condition (only when killed by a player, only on fire, …) gets one row per case, each with its condition below it. The first case that applies wins; the following ones start with otherwise. From 26.3 a loot table can also pick a value by a condition itself, shown the same way, and a scoreboard or stored value lists the fallback used when the score or the stored value does not exist as its otherwise row.
-
Random choice — a value picked from a few alternatives with fixed odds lists each alternative with its share,
2 (10%). -
Chart — under a value that has a most likely value, a small chart of how often each value comes up: the
unenchanted value in gray, each enchantment level in the color of its row, the most likely values highlighted.
It can be turned off with
showChartsin the configuration. -
Unknown —
?stands for a value that cannot be known ahead of time. When another mod supplies the value and ALI cannot read it, the mod's type is named in brackets,? (somemod:custom_count). A value that depends on something outside the loot table names that instead — a scoreboard value, the player's luck.
Some rows are only relevant when you want the exact math. They are hidden until Minecraft's own advanced
tooltips option is enabled (F3 + H).
The same switch turns numbers into their formula: 1 + binom(3 + LVL; 57.14%) instead of 1 to 7, with U(a; b) for a uniform roll, binom(n; p) for a binomial one and LVL for the enchantment level. A value with
enchantment levels gets an extra LVL row holding the formula of its level rows.
In EMI and REI the change takes effect immediately, without reopening or reloading anything.
A tooltip taller than the screen is cut to fit and gets a thin scrollbar on its right edge. Scroll it with the mouse wheel while it is shown; the more lines fit on the screen, the more lines one step moves. It starts from the top again once you hover something else.
A tooltip wider than the game window wraps its lines to fit it; a wrapped line keeps the indentation of the line it continues.
The colors of the tooltip lines — names, values, errors, the -> tree arrows, the gray most likely values and the
colors of enchantment level rows — can be changed with
tooltipColors in the configuration. It is a client-side setting, so it changes only your own
screen.
Values that come from a fixed set of choices — an equipment slot, a dye color, an attribute operation — are shown
as readable English (Main Hand, Add Value) rather than as the internal constant (MAINHAND, ADD_VALUE).
They go through ordinary translation keys, so a resource pack can translate them. The key is
ali.enum.<group>.<value>, all lowercase — ali.enum.equipment_slot.mainhand,
ali.enum.attribute_operation.add_value (on 1.20.1, where the attribute operations have other names,
ali.enum.attribute_operation.addition). A value with no translation falls back to the internal constant, so
nothing ever goes missing.
Values added by another mod use the same scheme, but the <group> part is derived from that mod's own class name
unless the mod chose one itself.
The spawn Category is shared by Advanced Loot Info and Advanced Worldgen Info, so its key is
aci.enum.mob_category.<category> — aci.enum.mob_category.water_creature. A category added by a mod has no
translation and is shown under its own name.
With showInGameNames on (the default), IDs that have no in-game name of their own — a biome, a dimension, a
structure or any other kind — and tags are looked up as translation keys, so a resource pack can name them. An ID or
tag with no translation is shown as it is. The keys follow the convention Minecraft and other mods already use, so
many names come for free — biomes from Minecraft itself, tags from EMI and, on newer Minecraft versions, from
Fabric API, NeoForge and the mods that add them:
| What | Key | Example |
|---|---|---|
| An ID | <kind>.<namespace>.<path> |
biome.minecraft.plains, dimension.minecraft.the_nether, structure.minecraft.village.plains
|
| A tag | tag.<kind>.<namespace>.<path> |
tag.item.c.ingots, tag.worldgen.biome.c.is_hot
|
-
<kind>of an ID is the last part of its registry name (biomeforworldgen/biome); the whole name with/written as.(worldgen.biome) works too. For a tag it is the whole name (item,block,worldgen.biome). A kind added by a mod is preceded by that mod's namespace in a tag key, and may be in an ID key. - A
/inside a path can be written as.or kept as/—structure.minecraft.village.plainsandstructure.minecraft.village/plainsboth work. - A tag in the
forgenamespace also takes the translation of the same tag inc, and the oldertag.<namespace>.<path>form (without the kind) is accepted as well.
If a mod adds something ALI does not recognise — its own drop condition, its own way of modifying an item — ALI does not give up on it. It shows the raw data of that thing under an Auto-detected heading. The information is correct, just unformatted. A properly worded description has to come from the mod that added it (developer docs).
Items that only drop under some condition get a colored slot background, so you can tell "always drops" from
"drops only if …" at a glance. Plain chance (and a couple of conditions that are almost always true, like
surviving an explosion) do not color the slot, because nearly everything would be colored then. Which conditions
are ignored can be changed — see ignoredPredicateConditions in the configuration.
A mob's loot entry carries a small icon in its top-right corner when the mob spawns naturally. Hovering it lists
where, under Spawns:, one Dimension: per dimension it spawns in:
- a spawn that applies to every biome of the dimension is shown directly under the dimension, with no biome lines at all,
- otherwise the spawn is preceded by a list of biome lines, and the spawn details under the last of them apply to
every biome in that list:
-
+ biomelines name the biomes the mob spawns in, -
- biomelines name the biomes it does not spawn in — it spawns this way in every other biome of the dimension. This short form is used only when the mob spawns in more than half of the dimension's biomes and more than 10+lines would be needed,
-
-
Structure:lines are spawns that belong to a structure (a witch hut, a nether fortress) rather than to a biome. Structures in which the mob spawns the same way are listed one below another and share the spawn details under the last of them.
A mob can spawn differently in different biomes, so one dimension may hold several such lists. A shortened example for a zombie:
Spawns:
Dimension: minecraft:overworld
- Deep Dark
- Desert
- Mushroom Fields
Category: Monster
Weight: 95
Group size: 4
+ Desert
Category: Monster
Weight: 19
Group size: 4
Dimensions, biomes and structures are shown by name when a translation exists for them, otherwise by their ID — see IDs and tags.
It reads: in every Overworld biome except the deep dark, the desert and the mushroom fields, zombies spawn with weight 95; in the desert they spawn too, but only with weight 19 (husks take most of their place there); in the deep dark and the mushroom fields they do not spawn at all.
Each spawn states its Category (Monster, Creature, Water Creature, …), its Weight against the other mobs of that category, the Group size it spawns in, and — where the biome sets one — its Spawn cost (charge and budget), which limits how densely the mob can spawn.
Mobs that spawn but drop nothing have no loot entry, so they are not listed unless showEntitiesWithoutLoot is on
in the configuration. Spawn info can be hidden there too, with spawnInfo — for
chosen mobs or for all of them.
Trades are grouped by trader and by level. Each level shows the trades a trader of that level can offer.
A trader is a villager profession, the wandering trader, or any trading entity a mod registers — modded traders appear next to the vanilla ones, under the entity's own name.
The top of each trader's entry shows:
- the trader's spawn egg in front of its name, when the trader has one. Looking up a spawn egg lists that mob's trades next to its drops; every villager profession uses the villager's spawn egg, so it lists all of them.
- the trader's entity ID in the tooltip of its name, such as
minecraft:villagerorsupplementaries:red_merchant. - the job site blocks of a villager profession on the next row, and below them the items the villager accepts — the ones it picks up from the ground. Long lists continue on further rows.
A trade slot whose item the trader picks at random cycles through every item it can be, showing the count and tooltip of the one currently displayed. Looking up any of those items finds the trade.
Level and pool badges carry a tooltip note telling you how many trades are randomly picked from that group. From 26.1.2 on that number comes from the trade set itself and can be a range; it is never higher than the number of trades in the group, because a trader offers all of them once the group is that small. A group the trader offers only sometimes also shows its chance there.
From 26.3 a trade's price, its number of uses, the experience it gives and the number of trades picked from a level can depend on a condition; such a value shows one row per case with its condition, like a count.
If your viewer hides an item (EMI/JEI/REI item hiding), ALI reacts to it: hiding an item removes only that item from the displayed loot, the rest of the loot table stays visible.
Users
Loot Info
Worldgen Info
Developers
Loot Info
Examples
Worldgen Info