LootJS.modifiers((event) => {
    const targets = event.addTableModifier(/.*chests\/.*/);

    // CHAPTER 1: THE AMMO GROUP (50% Chance, 2 Kinds, 15 Count)
    const ammoGroup = [
        "superbwarfare:handgun_ammo", "superbwarfare:rifle_ammo", "superbwarfare:sniper_ammo",
        "superbwarfare:shotgun_ammo", "superbwarfare:heavy_ammo", "superbwarfare:small_shell",
        "superbwarfare:grenade_40mm"
    ];
    for (let i = 0; i < 2; i++) {
        ammoGroup.forEach(id => {
            targets.addLoot(LootEntry.of(id).limitCount(15, 15).when(c => c.randomChance(0.50 / ammoGroup.length)));
        });
    }

    // CHAPTER 2: THE ROCKET GROUP (40% Chance, 2 Kinds, 7 Count)
    const rocketGroup = [
        "superbwarfare:small_rocket", "superbwarfare:medium_anti_air_missile", "superbwarfare:medium_anti_ground_missile",
        "superbwarfare:javelin_missile", "superbwarfare:large_anti_ground_missile", "superbwarfare:swarm_drone",
        "superbwarfare:medium_aerial_bomb", "superbwarfare:rpg_rocket_tbg", "superbwarfare:rpg_rocket_standard",
        "superbwarfare:mortar_shell"
    ];
    for (let i = 0; i < 2; i++) {
        rocketGroup.forEach(id => {
            targets.addLoot(LootEntry.of(id).limitCount(7, 7).when(c => c.randomChance(0.40 / rocketGroup.length)));
        });
    }

    // CHAPTER 3: THE HEAVY ROCKETS & TECH (30% Chance, 1 Kind, 1 Count)
    const heavyRocketsGroup = [
        "hbmsntm:battery_creative", "hbmsntm:missile_decoy", "hbmsntm:missile_incendiary",
        "hbmsntm:missile_cluster", "hbmsntm:missile_buster", "hbmsntm:bomb_caller_napalm",
        "hbmsntm:bomb_caller_carpet", "hbmsntm:missile_generic", "hbmsntm:designator_range",
        "hbmsntm:launch_pad", "hbmsntm:detonator_laser"
    ];
    heavyRocketsGroup.forEach(id => {
        targets.addLoot(LootEntry.of(id).limitCount(1, 1).when(c => c.randomChance(0.30 / heavyRocketsGroup.length)));
    });

    // CHAPTER 4: THE ARMORY GROUP (40% Chance, 2 Kinds, 1 Count)
    const armoryGroup = [
        "superbwarfare:electric_baton", "superbwarfare:steel_pipe", "superbwarfare:ru_helmet_6b47",
        "superbwarfare:ru_chest_6b43", "superbwarfare:us_helmet_pasgt", "superbwarfare:us_chest_iotv",
        "superbwarfare:ge_helmet_m_35", "superbwarfare:parachute", "superbwarfare:glock_18",
        "superbwarfare:homemade_shotgun", "superbwarfare:mp_5", "superbwarfare:ak_47",
        "superbwarfare:m_4", "superbwarfare:k_98", "superbwarfare:bocek",
        "superbwarfare:knife", "superbwarfare:hammer", "superbwarfare:t_baton",
        "superbwarfare:mortar_deployer", "superbwarfare:tow_deployer"
    ];
    for (let i = 0; i < 2; i++) {
        armoryGroup.forEach(id => {
            targets.addLoot(LootEntry.of(id).limitCount(1, 1).when(c => c.randomChance(0.40 / armoryGroup.length)));
        });
    }

    // CHAPTER 5: THE THROWABLES (20% Chance, 2 Kinds, 1 Count)
    const throwablesGroup = [
        "superbwarfare:m18_smoke_grenade", "superbwarfare:hand_grenade", "superbwarfare:rgo_grenade",
        "superbwarfare:c4_bomb", "superbwarfare:ptkm_1r", "superbwarfare:tm_62",
        "superbwarfare:claymore_mine", "superbwarfare:lunge_mine"
    ];
    for (let i = 0; i < 2; i++) {
        throwablesGroup.forEach(id => {
            targets.addLoot(LootEntry.of(id).limitCount(1, 1).when(c => c.randomChance(0.20 / throwablesGroup.length)));
        });
    }

    // CHAPTER 6: THE MEDICAL KIT (100% Chance, Exactly 2)
    targets.addLoot(LootEntry.of("superbwarfare:medical_kit").limitCount(2, 2));

    // CHAPTER 7: THE POWER SUPPLIES (40% Chance, 1 Kind, 1 Count)
    const batteryGroup = ["superbwarfare:small_battery_pack", "superbwarfare:medium_battery_pack"];
    batteryGroup.forEach(id => {
        targets.addLoot(LootEntry.of(id).limitCount(1, 1).when(c => c.randomChance(0.40 / batteryGroup.length)));
    });

    // CHAPTER 8: THE INDUSTRIAL GROUP (60% Chance, 2 Kinds, 8 Count)
    const industrialGroup = [
        "superbwarfare:steel_ingot", "superbwarfare:lead_ingot", "superbwarfare:silver_ingot",
        "superbwarfare:tungsten_ingot", "superbwarfare:cemented_carbide_ingot", "minecraft:redstone",
        "minecraft:iron_ingot", "minecraft:coal", "minecraft:gunpowder", "hbmsntm:fluid_tank_full"
    ];
    for (let i = 0; i < 2; i++) {
        industrialGroup.forEach(id => {
            targets.addLoot(LootEntry.of(id).limitCount(8, 8).when(c => c.randomChance(0.60 / industrialGroup.length)));
        });
    }
});
