A Minecraft mod for packdevs to easily modify the loot system with KubeJS.
This is a mod for Neoforge, Forge or Fabric and needs KubeJS.
Unsupported
Required
Terms for using, modifying and redistributing this product.
03.08.2026 · Modrinth
Item.of does not work anymore inside LootJS.lootTables event. Use LootEntry.ofScreenshots and images from the original Modrinth page.
The project author has not added a gallery on Modrinth.
Published versions and original Modrinth files.
03.08.2026 · 177 downloads
Item.of does not work anymore inside LootJS.lootTables event. Use LootEntry.of29.04.2026 · 64 541 downloads
replaceLoot action02.01.2026 · 34 953 downloads
addCondition not being visible for loot condition containers14.10.2025 · 28 914 downloads
.replaceLoot(filter, lootEntry, preserveCount, preserveComponentTypes) action to allow preserving certain13.10.2025 · 203 downloads
09.08.2025 · 33 646 downloads
SetComponentsFunction20.07.2025 · 13 654 downloads
ItemFilters into own classes20.07.2025 · 112 downloads
21.03.2025 · 45 664 downloads
getPools, modifyPool, getPool, modifyPoolByName, getPoolByName to loot tableshasItem for pools and grouped loot entries27.10.2024 · 1 918 downloads
matchAnyInventorySlot(itemFilter) and matchAnyHotbarSlot(itemFilter)14.10.2024 · 239 downloads
25.08.2024 · 473 downloads
print method for loot tables. Will now print the entries correctly.matchCustomCondition and jsonFunction using wrong codec.03.08.2024 · 373 downloads
addItem for loot pools. Prefer to use addEntryaddTypeModifier in LootJS.modifiers and will be removed in future updates, use addTableModifier with amodifyLootTypeTables in LootJS.lootTables and will be removed in future updates, use modifyLootTables25.07.2024 · 133 downloads
.create in loot tables event22.07.2024 · 120 downloads
16.07.2024 · 118 downloads
ItemFilters like tag or id filter by using !, e.g. !#c:toolsremoveGlobalModifier to removeGlobalModifiers in LootJS.modifiers event.07.07.2024 · 111 downloads
Tag does not exist when using ItemPredicates with tags06.07.2024 · 101 downloads
neoforgeLootJS.loot_tables event for direct loot table modificationLootBucket as wrapper class for loot for easier execute some helper functionsLootEntry does not only represent single items anymore. It now represents all different loot entries vanillaLootEntry.of(item): Single itemLootEntry.empty(): Empty entryLootEntry.tag(tag): Tag entryLootEntry.reference(lootTable): Reference to another loot table. ForLootEntry.reference("minecraft:chests/abandoned_mineshaft")LootEntry.alternative(lootEntries...): Alternative lootLootEntry.sequence(lootEntries...): Sequence lootLootEntry.group(lootEntries...): Grouped lootLootJS.modifiers event:addLootTableModifier, addLootTypeModifier, addBlockLootModifier, addEntityLootModifier renamedaddTableModifier, addTypeModifier, addBlockModifier, addEntityModifier.functions(itemFilter, (f) => {}) removed. Better to just use group now.group((group) => {...}) or .group(itemFilter, (item) => {...}). Second one will pre-filter current loot.group() can use .rolls(numberprovider) to execute the group multiple times.pool() now actually consumes a vanilla LootPooladdWeightedLoot(), use .pool() instead nowmatchLoot renamed into containsLoot.dropExperience can now use a number provider instead of a fixed amountLootContextJS wrapper removed. Using LootContext instead but added all helper methods from LootContextJS tooItemFilter:.hasEnchantments(...) only works for item enchantments now. For stored enchantments.hasStoredEnchantments(...)ALWAYS_TRUE into ALL and ALWAYS_FALSE into NONEvault, block_use and shearing LootType06.06.2024 · 3 166 264 downloads
randomTableBonus(enchantment, chances) for vanillas table_bonus condition06.06.2024 · 425 640 downloads
randomTableBonus(enchantment, chances) for vanillas table_bonus condition10.02.2024 · 51 869 downloads
LootEntry.of("#tag"), LootEntry.of("@modid") to select a random entry from a tag or modid.LootEntry.ofJson(json) to create a loot entry from JSON to support custom entries from other mods10.02.2024 · 233 051 downloads
LootEntry.of("#tag"), LootEntry.of("@modid") to select a random entry from a tag or modid.LootEntry.ofJson(json) to create a loot entry from JSON to support custom entries from other mods07.12.2023 · 3 941 downloads
07.12.2023 · 69 580 downloads
27.09.2023 · 1 114 downloads
addLootTableModifier and an entity dies27.09.2023 · 44 289 downloads
addLootTableModifier and an entity dies23.09.2023 · 124 downloads
customFunction(json)23.09.2023 · 109 downloads
customFunction(json)19.09.2023 · 142 downloads
19.09.2023 · 122 downloads
03.09.2023 · 143 downloads
03.09.2023 · 129 downloads
17.08.2023 · 72 929 downloads
17.08.2023 · 5 028 downloads
18.07.2023 · 134 downloads
18.07.2023 · 146 downloads
12.04.2023 · 2 367 downloads
LootEntry.when() and blockEntityPredicate12.04.2023 · 1 231 downloads
LootEntry.when() and blockEntityPredicate03.04.2023 · 79 downloads
ForgeItemFilter.canPerformAnyAction() and ForgeItemFilter.canPerformAction().03.04.2023 · 160 downloads
ForgeItemFilter.canPerformAnyAction() and ForgeItemFilter.canPerformAction().02.04.2023 · 70 downloads
ItemFilter.canPerformAnyAction() and ItemFilter.canPerformAction() for Forge to check if an item can perform a tool action.02.04.2023 · 123 downloads
ItemFilter.canPerformAnyAction() and ItemFilter.canPerformAction() for Forge to check if an item can perform a tool action.30.01.2023 · 138 downloads
#tag support in anyStructure() conditionanyStructure() because of timing issues ... :')30.01.2023 · 531 downloads
#tag support in anyStructure() conditionanyStructure() because of timing issues ... :')08.01.2023 · 68 downloads
08.01.2023 · 125 downloads
23.11.2022 · 90 downloads
disableWitherStarDrop(), disableCreeperHeadDrop(), disableSkeletonHeadDrop(), disableZombieHeadDrop()23.11.2022 · 108 downloads
disableWitherStarDrop(), disableCreeperHeadDrop(), disableSkeletonHeadDrop(), disableZombieHeadDrop()23.11.2022 · 36 110 downloads
disableWitherStarDrop(), disableCreeperHeadDrop(), disableSkeletonHeadDrop(), disableZombieHeadDrop()23.11.2022 · 1 402 downloads
disableWitherStarDrop(), disableCreeperHeadDrop(), disableSkeletonHeadDrop(), disableZombieHeadDrop()17.10.2022 · 73 downloads
addBlockLootModifier when using tags17.10.2022 · 64 downloads
addBlockLootModifier when using tags02.09.2022 · 143 downloads
02.09.2022 · 98 downloads
30.07.2022 · 348 downloads
ItemFilter.hasEnchantment() so it works with regex and enchanted books.30.07.2022 · 82 downloads
ItemFilter.hasEnchantment() so it works with regex and enchanted books.07.07.2022 · 92 downloads
07.07.2022 · 84 downloads
05.07.2022 · 85 downloads
05.07.2022 · 83 downloads
04.07.2022 · 76 downloads
04.07.2022 · 90 downloads
28.06.2022 · 100 downloads
28.06.2022 · 109 downloads