Loot Control Utility - Control Over Loot in Minecraft
![]()
This mod provides modpack creators and server administrators with complete control over the loot system in their world. Key features include:
Key Features
Ability to configure additional loot tables based on difficulty level. By default, difficulty is calculated based on distance from the world spawn point.
Integration with Harder Farther Core allows using more complex difficulty types based on distance from dangerous zones or safe areas.
Optional addition of extra loot to mobs upon their death.
Optional addition of extra items to containers with selected loot tables.
Originally, this code was part of the Harder Farther mod, but due to the large size of that project, it was separated into a standalone compact mod.
Configuration Settings
Below are the standard configuration values:
["Looting Control Values"]
Generate LootingTableReport.txt
generateReports = true
Generate Ogre and Life Saving Potions.txt
generatePotions = true
["Looting Control Values"."Debug Settings"]
Debug Level: 0 = Off, 1 = Log, 2 = Chat+Log #Range: 0 ~ 2
debugLevel = 0
["Looting Control Values"."Loot Settings"]
loot boost distance: Meters before 100% loot boost
Range: 1000 ~ 60000000
lootBoostDistance = 30000
Use enhanced loot system?
useLootDrops = true
experienceDropChance: Chance to drop 1 experience bottle.
Range: 0 ~ 100
oddsDropExperienceBottle = 33
Loot Items List
lootItemsList =
["r,23,minecraft:netherite_scrap,1,1", "r,1,minecraft:nether_wart,1,2", "r,1,minecraft:music_disc_far,1,1", "u,2,minecraft:nether_wart,1,1", "u,3,minecraft:golden_carrot,1,1", "u,12,minecraft:diamond,1,1", "u,5,minecraft:emerald,1,3", "u,3,minecraft:oak_planks,1,5", "u,1,minecraft:book,1,1", "u,1,minecraft:gold_ingot,1,1", "u,2,minecraft:chicken,1,2", "u,5,minecraft:glowstone_dust,1,2", "u,1,minecraft:lead,1,1", "u,5,minecraft:stone_axe,1,2", "u,3,minecraft:stone_pickaxe,1,1", "u,1,minecraft:iron_axe,1,1", "u,1,minecraft:beetroot_seeds,1,1", "c,3,minecraft:leather_boots,1,1", "c,2,minecraft:gold_nugget,1,3", "c,2,minecraft:candle,1,2", "c,5,minecraft:baked_potato,1,2", "c,2,minecraft:fishing_rod,1,1", "c,5,minecraft:cooked_cod,1,3", "c,3,minecraft:string,1,2", "c,3,minecraft:iron_nugget,1,3", "c,3,minecraft:honey_bottle,1,2", "c,3,minecraft:stick,1,3", "c,1,minecraft:emerald,1,1", "c,1,minecraft:paper,1,2"]
Chest Items List
"bonusChestLootList " =
["01,minecraft:stone_pickaxe,1,1", "02,minecraft:stone_axe,1,1", "03,minecraft:leather_helmet,1,1", "04,minecraft:leather_chestplate,1,1", "05,minecraft:leather_leggings,1,1", "06,minecraft:leather_boots,1,1", "07,minecraft:tipped_arrow,12,18", "08,minecraft:emerald,2,5", "09,minecraft:iron_pickaxe,1,1", "10,minecraft:chainmail_helmet,1,1", "11,minecraft:chainmail_chestplate,1,1", "12,minecraft:chainmail_leggings,1,1", "13,minecraft:chainmail_boots,1,1", "14,minecraft:lapis_lazuli,7,11", "15,minecraft:honey_bottle,1,2", "16,minecraft:glowstone,7,9", "17,minecraft:iron_shovel,1,1", "18,minecraft:iron_axe,1,1", "19,minecraft:cooked_beef,1,5", "20,harderfarther:burnishing_stone,1,1", "21,minecraft:obsidian,1,3", "22,minecraft:emerald,1,6", "23,minecraft:diamond,1,1", "24,minecraft:iron_helmet,1,1", "25,minecraft:iron_chestplate,1,1", "26,minecraft:iron_leggings,1,1", "27,minecraft:iron_boots,1,1", "28,minecraft:iron_axe,1,1", "29,minecraft:glowstone_dust,11,23", "30,minecraft:moss_block,1,1", "31,minecraft:nautilus_shell,1,1", "32,minecraft:cooked_mutton,1,1", "33,minecraft:amethyst_block,13,18", "34,minecraft:budding_amethyst,1,1", "35,minecraft:potion,1,1", "36,minecraft:glow_squid_spawn_egg,1,1", "37,minecraft:golden_apple,1,1", "38,minecraft:jack_o_lantern,1,6", "39,minecraft:end_rod,1,3", "40,harderfarther:burnishing_stone,1,2", "41,minecraft:end_stone_bricks,11,20", "42,minecraft:amethyst_shard,11,17", "43,minecraft:diamond_helmet,1,1", "44,minecraft:diamond_chestplate,1,1", "45,minecraft:diamond_leggings,1,1", "46,minecraft:diamond_boots,1,1", "47,minecraft:glow_lichen,1,7", "48,minecraft:tnt,2,5", "49,minecraft:ice,31,37", "50,minecraft:infested_cobblestone,31,64", "51,minecraft:red_mushroom_block,31,64", "52,minecraft:mushroom_stem,31,64", "53,minecraft:brown_mushroom_block,31,64", "54,minecraft:chipped_anvil,1,1", "55,minecraft:turtle_egg,1,2", "56,minecraft:blaze_spawn_egg,1,2", "57,minecraft:llama_spawn_egg,1,2", "58,minecraft:evoker_spawn_egg,1,1", "59,minecraft:zombie_spawn_egg,1,3", "60,minecraft:drowned_spawn_egg,3,5", "61,minecraft:strider_spawn_egg,1,2", "62,minecraft:fox_spawn_egg,1,3", "63,minecraft:ocelot_spawn_egg,1,3", "64,minecraft:parrot_spawn_egg,1,2", "65,minecraft:terracotta,31,64", "66,minecraft:coal_block,11,16", "67,minecraft:packed_ice,24,48", "68,minecraft:green_stained_glass,49,64", "69,minecraft:sea_lantern,11,16", "70,minecraft:piston,9,16", "71,minecraft:bone_block,31,64", "72,minecraft:diamond,3,7", "73,minecraft:gold_nugget,33,64", "74,minecraft:iron_nugget,33,64", "75,minecraft:gunpowder,24,48", "76,minecraft:powder_snow_bucket,1,1", "77,minecraft:green_concrete_powder,56,64", "78,minecraft:brain_coral_fan,1,1", "79,minecraft:creeper_head,1,1", "80,minecraft:zombie_head,1,1", "81,minecraft:wither_skeleton_skull,1,1", "82,minecraft:skeleton_skull,1,1", "83,minecraft:firework_rocket,31,60", "84,minecraft:netherite_helmet,1,1", "85,minecraft:netherite_boots,1,1", "86,minecraft:endermite_spawn_egg,1,5", "87,minecraft:elder_guardian_spawn_egg,1,1", "88,minecraft:mooshroom_spawn_egg,1,1", "89,minecraft:ghast_spawn_egg,1,1", "90,minecraft:beacon,1,1", "91,minecraft:ender_chest,1,1", "92,minecraft:dragon_breath,11,15", "93,minecraft:dragon_head,1,1", "94,minecraft:diamond_pickaxe,1,1", "95,minecraft:diamond_axe,1,1", "96,minecraft:diamond_shovel,1,1", "97,minecraft:dragon_egg,1,1", "98,minecraft:elytra,1,1", "99,minecraft:end_portal_frame,1,1"]
List of loot tables (usually containers) that will receive bonus loot. (See LootTables.rpt for a complete list of available chest loot tables) but you can use any loot table.
"bonusLootTableList " =
["minecraft:chests/end_city_treasure", "minecraft:chests/simple_dungeon", "minecraft:chests/village/village_weaponsmith", "minecraft:chests/abandoned_mineshaft", "minecraft:chests/nether_bridge", "minecraft:chests/stronghold_crossing", "minecraft:chests/stronghold_corridor", "minecraft:chests/desert_pyramid", "minecraft:chests/jungle_temple", "minecraft:chests/igloo_chest", "minecraft:chests/woodland_mansion", "minecraft:chests/underwater_ruin_small", "minecraft:chests/underwater_ruin_big", "minecraft:chests/buried_treasure", "minecraft:chests/shipwreck_treasure", "minecraft:chests/pillager_outpost", "minecraft:chests/bastion_treasure", "minecraft:chests/ancient_city", "minecraft:chests/ruined_portal"]
Bonus Loot Enchantment Level Modifier
Range: 0 ~ 19
bonusLootEnchantmentLevelModifier = 1
List of Biomes that do not receive bonus loot.
omitLootBiomesList = ["minecraft:plains", "birch_forest"]
Reports
Looting Control Utility creates several utility reports in the /config/lootingcontrolutility directory.
Biomes.rpt contains a list of all biomes in a modpack.
minecraft:badlands
minecraft:bamboo_jungle
minecraft:basalt_deltas
minecraft:beach
minecraft:birch_forest
etc...
BiomeTags.rpt contains a list of all biome tags in a modpack. Currently not used but will be used in the future.
TagKey[minecraft:worldgen/biome / minecraft:has_structure/village_savanna]
TagKey[minecraft:worldgen/biome / minecraft:is_beach]
TagKey[minecraft:worldgen/biome / minecraft:has_structure/ruined_portal_ocean]
TagKey[minecraft:worldgen/biome / forge:is_cold/overworld]
TagKey[minecraft:worldgen/biome / forge:is_hot]
etc...
LootingTables.rpt contains a list of all chest loot tables. This makes it easier to specify which chests to add bonus loot to.
minecraft:chests/abandoned_mineshaft
minecraft:chests/ancient_city
minecraft:chests/ancient_city_ice_box
minecraft:chests/bastion_bridge
minecraft:chests/bastion_hoglin_stable
etc...