

RoseLoot is a custom loot plugin that allows the loot manipulation of mobs, blocks, fishing, chests, piglin bartering, advancements, archaeology, vaults, and trial spawners!
This custom drops plugin is extremely customizable, making it possible to manipulate loot tables in almost any thinkable way!


RoseLoot has tons of conditions, so you can always specify under which exact circumstances you want loot to drop. We tried our best to make all ideas possible!
If you have any suggestions for what you'd like to see be added to the plugin, tell us on our Discord server!
Check out some of its features:
- Define the conditions that must be matched for the table to run.
- Edit the meta of items dropped.
- Require any placeholder from PlaceholderAPI to match your assigned value.
- Choose the amount to drop for items, and manipulate those amounts using your choice of numeric distribution.
- Decide the chance to drop.
- Overwrite existing drops or add to them.
- Edit experience drops.
- Run commands and send messages.
- Spawn particles to create cool visual effects.
- Cause explosions!
- Reward money from supported economy plugins.
- Drop items from the supported custom item plugins.
- Add conditions for mobs from supported custom mob plugins.

Here are some of the features in action!

To learn how to use RoseLoot, check out our wiki! Everything you could ever know has been completely documented there. It's how we remember everything, too!
While RoseLoot is free to download and free to use, receiving support from our support team requires that you pay for this plugin. We are happy to answer your questions regarding what the plugin can do, but any in-depth questions and support will be reserved for those who have purchased the plugin!
If you need any help, have found a bug, or you have any questions, please join our Discord server! We offer all support through our server.
Feel free to use the question channels to talk and ask questions!

A big thanks to everyone who supports us and uses our plugins! A lot of time and love goes into them. If you like this plugin, check out our other plugins!
All Versions
+ Add Version- === v1.4.3 ===**
\+ Added 26.2 support
\+ Added camel husk, happy ghast, copper golem, and nautilus entity conditions
\* Block conditions now check the loot origin block if none is provided
\* Updated CraftEngine support
\* Fixed
smelt-if-burning not smelting drops for one-hit-kills\* Fixed 1.21.11 and 26.1.2
enchant-randomly handlers throwing errors\* Fixed books with
enchant-randomly ignoring other enchantment settings\- Removed ItemsXL support due to it now being a different plugin
- === v1.4.2 ===**
\+ Added support for 26.1.x
\+ Added some example files that are not auto-generated from vanilla
\+ Added support for JustLootIt
\+ Added a PostLootTableGenerateEvent
\+ Added a
scoreboard-tag condition\* Updated CoinsEngine to ExcellentEconomy, this will require loot table changes
- === v1.4.1 ===**
\+ Added 1.21.11 support
\+ Added a
remove-enchantments property for items\+ Added an
enchantments-amount property to select a number of random enchantments from the enchantments property\+ Added a config setting to use the ShopGUI+ head UUID for better ShopGUI+ compatibility for dropped heads
\* Improved nexo custom block loot support, now supports furniture
\* Fixed decorated pots not being able to have their loot modified with CONTAINER tables
\* Fixed the condition parser sometimes failing when compound conditions and % are used
\* Fixed some example files generating with bad enchantment-bonus formulas
\* Fixed the ServerVariables hook to work against the newest versions
\* Fixed possible async command execution when being run from RoseStacker stack kills
\* Fixed possible unsafe casts with item meta for certain custom item plugins
- === v1.4.0 ===**
\+ Added support for 1.21.9 and 1.21.10
\+ Added support for nearly all item components in the game on 1.21.3 or newer
\+ Added a
/loot copycomponents command to copy a held item's item components to a loot item config entry\+ Added a
/loot spawn command to spawn a loot table at a specific location\+ Added
input-item as a valid condition for FISHING type loot tables\+ Added a
craftengine-block-data condition that works similarly to the block-data condition\+ Added an
auraskills_experience loot item to grant AuraSkills skill experience\* Enchantment tags can now be used in
random-enchantments\* Cooking recipes will now be used instead of only furnace recipes for smelt-if-burning
\* A loot table conditions section that is not a list will now display a warning on reload
\* Lowered RoseStacker death event priority for better compatibility with collector plugins
\* MMOItem conditions can now specify only a type instead of both type and ID for more flexibility
\* Fixed looted commands throwing an error on Folia servers if run off the main thread
\* Fixed
!= causing conditions to get split improperly\* Fixed
/loot copy missing type: item\* Fixed
/loot generate not checking the top level conditions of loot tables\* Fixed
/loot giveitems not including items from inner loot tables\* Fixed several loot items triggering mid loot table execution instead of at the end
\* Fixed custom block experience dropping on the player instead of at the block location
\- Removed old item component loot table syntax
- === v1.3.2 ===**
\+ Added 1.21.8 support
\+ Added 7 new loot items
delay, break_block, set_block, spawn_entity, vehicle, looter-vehicle, and condition-chance\+ Added a setting to not modify EntityDeathEvent drops and to instead drop items directly
\* The
cooldown condition can now be parsed without a cooldown time to only check if the cooldown is still active- === v1.3.1 ===**
\+ Folia is now supported
\+ Added CrazyVouchers as a custom item provider
\+ Added a ServerVariables loot item for modifying variables
\+ Added a zMenu loot item for modifying player data
\+ Added support for CraftEngine with a block condition and a custom item provider
\* The paper entity spawn reason will now be used as a fallback if a RoseLoot spawn reason is not present
\* Updated to use more updated RoseStacker API
\* The vanilla-loot-table condition can now be used for trial spawners, though it isn't specific to which loot table is actually being dispensed
\* Fixed custom items dropped from breaking blocks clipping into the ceiling on versions lower than 1.21.3
\* Fixed a loot table file extension check allowing incorrectly named files to be parsed
\* Fixed a possible ConcurrentModificationException when dropping loot for RoseStacker stacks
\* Fixed /loot copy giving errors on all versions besides 1.21.4
- === v1.3.0 ===**
\+ Added support for 1.21.5 and the new entity properties
\+ Added a
random-enchantments-amount condition to be able to apply multiple entries from random-enchantments\+ Added an
inventory-contains condition and <customitemplugin>-inventory-contains conditions\+ Added a
placeholder-chance condition\+ Added support for colored bundles
\+ Added support for all item components for 1.21.4 on Paper, these will be documented at a later date, 1.21.5 coming soon
\+ Added a
/loot convert command to let RoseLoot attempt to convert a vanilla loot table to its own format\* Items in bunldes are now merged into stacks when possible
\* Changed the EntityDeathEvent priority to LOW from NORMAL
\* The plugin now uses NMS for
enchant-randomly and the feature condition for better compatibility, these features now only work on the latest version for each major release, minus the latest\*
VAULT loot tables can now use the vanilla-loot-table condition for checking a vault block's loot table (not trial spawners yet)\* Blocks that break by having their support removed will now be attributed as being broken by a player
\* Fixed the
permission condition not checking the right entity permissions for loot triggered by a player's projectiles\* Fixed the loot table recursion checker not working
\* Fixed recursive loot table calls ignoring top level conditions
\* Fixed an error on lower server versions on Spigot servers when using
smelt-if-burning: true\* Fixed items dropping from the corner of the block instead of the center
\* Fixed errors when running vanilla loot tables missing context properties
\* Fixed wind charges having weird behavior with
overwrite-existing: items\* Fixed support for ExecutableBlocks
\* Fixed RoseStacker stacked entity drops not working properly with the RoseStacker setting
drop-accurate-items: false\+ Added 1.21.4 and 1.21.3 support
\+ Added Nexo custom item support
\+ Added zItems and zEssentials support for custom items
\+ Added a new
looter-pickup-only property for items to only allow the looter to pick up the item\* The
biome condition now supports custom biomes on 1.21.3+\* Fixed an issue with
amount-modifiers not applying multiple properties when one condition fails\+ Added VAULT loot table types for editing the loot ejected from Vaults and Trial Spawners
\+ Added 3 new conditions for VAULT tables,
ominous, trial-spawner-state, and vault-state, see wiki for details\+ Added support for dropping items from AdvancedItems
\* Loot table warnings now display in chat if you reload the plugin as a player to make errors more obvious, this can be disabled in the config
\* Fixed enchant-randomly not working in combination with other enchantments
\* Fixed an issue with ARCHAEOLOGY tables and the overwrite-existing: items property




