If you want to play it as a game (opposed to rpg’ing it) sneak up and place some exploding barrels near the center of them. Sneak away, and then use a flame arrow to blow them up when there’s a majority of them grouped there. If you don’t have a flame arrow, of course you clan use a spell, but that will leave your caster as the primary target when battle starts. This should take out 4-5 of them if you position the barrels correctly and will also inflict burning on the ones that survive.

If you want to role play it a little more, you can do much the same by creating a “kill box” in a restrictive area that you draw them into. Use a grease spell or bottle of grease then place the barrels there. Note: if using a bottle of grease, be sure to throw it before you place the barrels. Otherwise, it will break the barrels. Then have all of your team (except for a ranged attacker) hiding approximately 60’ away in alcoves, around corners or up above (60’ is the max range for most spells and max effective range for for bows, crossbows and most of the “non-melee” spells). Then have your ranged attacker attack and fall back around a corner or into an alcove but not hide. Once the majority of the group you want to kill is in the kill box, blow it up.

Alternatively, I’ve ran the game only using a rogue (no npc’s) with the mobility feat and hid and sniped every battle. It’s a little time consuming, but since enemies typically just stand there if they don’t see you it’s relatively easy after you know the mechanics and enter into “turn-based mode” before taking a shot so you can hide and move if your stealth check fails.

As of now, wild elf rogues are the most mobile in the game. They have a base movement of 35’ per turn. If you choose thief at 3 level (opposed to arcane trickster) it gives you an extra use of dash every turn. If you choose mobility as your feat at 4th level it increases 10’ more. Equipping the ring of speed gives you 10’ more. So, you can double dash each turn and move 165’ (towards enemies for back stab, away to draw them out) and hide at the end of your movement. Keep in mind, applying dash removes your hide status.