Skip to main content

Custom Loot Table

Universal loot format. Used by EliteMobs in several different locations.

Please note that this is the latest format and the one that is recommended to use, but some alternative older formats exist.

Note: Legacy format support is still available using the colon-separated syntax: filename.yml:chance:permission. However, the modern format shown below is recommended for new configurations.

Make sure to start your loot tables with uniqueLootList: before adding any settings otherwise the .yml config will error.

Dropping elite items:

KeyDetailsValuesDefault
filenameSets the file name of the Custom Item to use.Filenamenone
Example
uniqueLootList:
- filename: magmaguys_toothpick.yml

This will make the mob drop 1 of MagmaGuy's Toothpick with a 100% drop chance.

General settings:

KeyDetailsValuesDefault
chanceSets the chance of the loot dropping.Double1.0
amountSets the amount of this loot entry to dropInteger1
permissionSets the permission node required for players to receive this loot. Works with all loot types.Stringnone
Example
uniqueLootList:
- filename: magmaguys_toothpick.yml
chance: 0.5
amount: 10
permission: elitemobs.loot.rare

This will make the mob drop 10 of MagmaGuy's Toothpick with a 50% drop chance, but only for players with the elitemobs.loot.rare permission.

Dropping elite coins:

KeyDetailsValuesDefault
currencyAmountSets the amount of coins that will be dropped.Integernone
Example
uniqueLootList:
- currencyAmount: 344
chance: 0.5

This will make the mob drop 344 Elite Coins with a 50% drop chance.

Dropping vanilla items:

KeyDetailsValuesDefault
materialSets the material of the item dropped. Accepts Minecraft material names (case-insensitive). You can also use type instead of material.Materialnone
Example
uniqueLootList:
- material: APPLE
chance: 0.3
amount: 5

This will make the mob drop 5 Apples with a 30% drop chance.

Executing commands on loot drop:

You can execute console commands when loot drops. This is useful for integrating with other plugins or providing custom rewards.

KeyDetailsValuesDefault
commandSets the console command to execute. Use %player% as a placeholder for the player's name.Stringnone
Example
uniqueLootList:
- command: give %player% diamond 1
chance: 0.5
amount: 1
permission: elitemobs.loot.command

This will execute the command give <player> diamond 1 from the console with a 50% chance when the mob is killed. The %player% placeholder will be replaced with the actual player's name. Only players with the elitemobs.loot.command permission will trigger this command.

Arena rewards:

When making arena loot tables, please make sure that you start your loot table with rawArenaReward: instead of uniqueLootList:.

KeyDetailsValuesDefault
waveSets the wave at which this loot entry will drop. Only for use in arenas.Integernone
itemLevelSets the level of the loot drop. Only for use in arenas.Integernone
Example
rawArenaReward:
- material: BREAD
wave: 1
amount: 10
chance: 0.5
- filename: magmaguys_toothpick.yml
wave: 1
itemLevel: 2

When the players beat the first wave then this will make the arena drop 10 Bread with a 50% drop chance and 1 MagmaGuy's Toothpick that is level 2 with a 100% drop chance.

Instanced Dungeons:

KeyDetailsValuesDefault
difficultyIDSets the list of instanced dungeon difficulties this loot will drop for. Only for use in instanced dungeons.Stringnone
Example
uniqueLootList:
- filename: magmaguys_toothpick.yml
chance: 0.5
difficultyID:
- 1
- 2

This will make the mob drop 1 MagmaGuy's Toothpick with a 50% drop chance if the players defeated the boss on difficulty 1 or 2.