In a hurry? Skip the explanation and jump directly to the Mob Attack Rule.
A Hundred Duck-Sized Horses
Would you rather fight a horse-sized duck or a hundred duck-sized horses? In D&D 5e, there is only one answer. You fight the horse-sized duck, because fighting a hundred duck-sized horses would take hours. You’d spend half the session just waiting for the DM to set up the initiative tracker!
And yet, sometimes the system or the story just calls for a large group of combatants. Your party infiltrates an enemy fortress and stumbles into a barracks room with a dozen off-duty guards in it. Your barbarian picks a fight in the middle of a goblin village. Your druid upcasts "Conjure Animals” and asks for 16 CR 1/4 beasts.
I love to run a “Gnoll Camp” encounter where there’s a fortified gnoll camp at the base of a narrow mountain pass that the party needs to get through. It’s open-ended - parties could negotiate, threaten, sneak, fly, or even tunnel past it (yes, I’ve had one group actually come up with tunneling, using some druid magic to help) - but many D&D groups are the belligerent sort and enjoy taking this encounter head-on. Well, how do you run a fight against a few dozen gnolls? Very slowly.
The Invincible Tank Problem
A related problem is that at a certain power level the fight is not just tedious, but trivial. You might have a bladesinger with Mage Armor and Haste, giving them an AC of 22, and the Shield spell bringing their AC up to 27. Now your standard Goblin or Gnoll can only hit them on a crit. Or a Paladin with Plate Armor, a Shield and the Defense fighting style, given them a 21 before any magic items - in practice at higher levels that will easily hit 24 with a +1 shield, +1 armor, and a cloak of protection. Again, now they can only be hit with a natural 20.
So you might say, “just don’t run encounters with CR 1/2 creatures for characters of level 5+”. Sure, from an encounter design perspective, this is a reasonable ask. But from a worldbuilding perspective, it doesn’t work at all. Almost every creature in the D&D world is CR 1 or below. Townsfolk, soldiers, guards, bandits, acolytes - all below CR 1.
This presents a situation where if a regular adventuring party in Tier 2 play walked into a regular town, and the *entire town* simultaneously attacked the party, the town would not pose a threat to the party. Which also means that a party in Tier 2 can get away with any sort of crime they want in most towns and villages and there’s no one who will be able to stop them. Even in a large city, a force of veteran guards is a bunch of CR 3s. They’re still not going to be able to land a blow on the party tank.
Again from the perspective of encounter design, the solution is that no matter where the party is, the guards who confront them for their wrongdoing are of sufficient level to pose a threat. Your level 8 party rolls into a city and rips off the first merchant they meet? Well the city guard consists entirely of CR 10 soldiers. How did they get so powerful? If the city guard are this strong why don’t they go become adventurers and get rich? Again, we have a solution that’s incompatible with coherent worldbuilding.
After a lot of research and a little brainstorming, I was able to create an optional rule which solves both of these problems at once - it makes combat encounters with large numbers of creatures go by very quickly, while also dialing up the threat level against characters with high AC. But before I talk about it, I want to go into why I wasn’t happy with the existing mob rules.
Current Mob Rules and their Drawbacks
Page 250 of the DMG has an optional rule for handling mobs, and I would nominate it as a candidate for the worst rule in 5e. Without exaggeration I can say that it is literally worse than THAC0.
It’s a four-step rule that goes like this:
Subtract the attacker’s attack bonus from the defender’s AC
look up that number on the left column of the table in the DMG on page 250
divide the number of attackers by the number on the right column of said table, discarding remainders
apply that many hits to the defender
What is bad about this rule, besides “everything”? First of all, there’s no die roll. If there’s a certain minimum number of attackers, you’ll always get hit; if there isn’t, you never will. This isn’t really in the spirit of the game. More specifically, doing a bunch of math and looking up numbers on a table is not as exciting as rolling dice to determine the outcome - both because it’s slower and more tedious, and because it drains the suspense out of the encounter. What I’m looking for in a rule for mob attacks is a way to resolve things with one die roll, not with zero die rolls.
In addition, it doesn’t solve the Invincible Tank Problem. The table in the DMG shows us that if you need a 20 to hit, you’d need 20 attackers to do one hit. If you’re playing on a gridded map you can’t even fit 20 attackers around a single target, so unless they’re using ranged attacks the Invincible Tank is still invincible.
Is it better than rolling 20d20 to see how many nat 20s you roll? I don’t know, maybe? Rolling a ton of dice still feels more satisfying than doing the math-and-table bit.
Swarms
Another approach is to combine the mobs into a single monster statblock, treating it like a swarm. Swarms have special properties - resistance to physical damage, ability to occupy enemies’ spaces, vulnerability to AoE damage (sometimes), immunity to some conditions - that are meant to lend a bit of realism to the idea of a large group of creatures, while still being abstract enough to be manageable as a single creature’s statblock. They often have different damage outputs based on how many HP they have left (where a swarm with less than half HP represents a swarm with half its members killed, so it does half damage).
Some swarms - the ones in published WotC materials, for example - use the regular die roll to resolve attacks, so they have that going for them. Other swarm rules suggested by 3rd parties just have the swarms do automatic damage. This increases the threat level but as I said before I’m not a fan of completely removing randomness from outcomes.
Generally I find running swarms to be a bit more tedious than running regular creatures. High HP plus damage resistance means they take a lot to kill, and the ability to occupy another’s space is problematic on a VTT and even moreso on a physical map with miniatures. It’s also not clear why AoE control spells like Web or Hypnotic Pattern shouldn’t work on swarms - but since they’re immune to restrained and charmed, they don’t. Even AoE damage spells have a diminished effect. If you cast burning hands on a hundred rats, they’d all die - but if you cast it on a swarm of rats, it probably won’t!
Also, having to create a swarm every time you have a group of attackers would add a bunch of work to prep, or drag down encounters if you had to do it on the fly. Sly Flourish suggests homebrewing swarms by just reskinning an existing monster - their example is a Hill Giant for a swarm of Bullywugs. I guess this is a bit faster than making one from scratch, but there’s still the issue of finding the right monster. Maybe create a table of monsters by CR that would make good Swarm equivalents.
Which would be fine, but as I said, I don’t think the swarm rules make sense, and I don’t think they are satisfying to run as encounters. However, the idea of combining all of the attackers’ attacks into a single, more powerful, roll is a good one.
So let’s just do that!
A Simple Solution?
A Bullywug makes two attacks at +3 with an average of about 4 damage per hit. A Hill Giant makes two attacks at +8 with an average of about 18 damage per hit. So the relevant difference here is just that the “Hill Giant” - that is, the swarm of Bullywugs - has a higher attack bonus and higher damage. Strip away all of the special properties of the swarm - its damage resistance, HP pool, condition immunities, etc. etc. - and we find that what we need to make swarms work is to just buff their attack and damage rolls.
This helps with The Invincible Tank problem - your AC 24 paladin is now getting hit 25% of the time instead of 5% of the time, and for more damage. Even the Bladesinger is twice as vulnerable, going from 5% to 10%. It also allows you to aggregate a bunch of attacks into a single roll, which cuts down on the amount of time and effort it takes to run the encounter.
The only remaining question is how we decide how much of an attack bonus a mob gets, and how much damage it does. Earlier I suggested perhaps a reference table of candidate monsters. But before that I said that looking things up on tables is slow and boring. So let’s throw that idea away.
Instead, let’s just give the mob a +1 to attack for each creature in the mob. Then, let’s just multiply the damage dice by the number of creatures in the mob.
Analysis
One goblin attacks at +4 and does 1d6+2 damage. Using what I’m calling the Mob Attack Rule, four goblins would attack at +8 and do 4d6+2 damage. Eight goblins would attack at +12 and do 8d6+2 damage. And if you’re using a gridded system, more than eight goblins couldn’t attack the same target with melee attacks.
The first issue, then, is that in theory 30 goblins with bows could exploit this rule to always hit every target. Therefore I’d apply bounded accuracy here and say that the maximum number of creatures that can be bundled together is 8. This means that ranged and melee attacks have the same cap.
Let’s do a basic sanity check and see if this system gives us a result that looks like what we want. Here is a chart for those 4 goblins attacking individually (green) vs. as a group using the proposed Mob Attack Rule (blue).
What we see is that for defenders with lower AC, the mob attack rule yields slightly less damage. At AC 15, this flips, and the mob attackers do slightly more damage. The effect becomes more pronounced at high ACs - in the range of 20-26 - before dropping off again as even the augmented attacks start hitting only on a nat 20.
This is by no means deadly - at AC 24, the 4 goblins do an average of 1.8 damage per round (DPR) without the rule, and 4.7 DPR with the rule. That extra 3 damage makes the encounter more meaningful - after an average 3 round combat the party will need to use up an additional potion or spell slot to heal that extra 9 points of damage - but it’s not enough to break bounded accuracy or destroy game balance.
For eight goblins, the effect is a bit more pronounced.
Here we see that the Mob Attack Rule makes 8 goblins more dangerous for any defender with more than a 12 AC - so basically every character. Again, the effect is much more pronounced as AC goes up. At AC 24, 8 goblins individually do 3.6 DPR, while using the Mob Attack Rule they do 14.9 DPR. This means that 8 goblins could conceivably take down a level 5 paladin in 3 combat rounds, making them a very meaningful threat even in Tier 2.
On the other hand, Tier 2 Paladins could conceivably take out 2 goblins per round with their two attacks. Taking those combatants out of combat then has an immediate mechanical effect on the battle - making it steadily less dangerous with each attacker removed. It also adds a nice visual impact - seeing the combat field clearing as the DM moves the tokens or minis off the map one by one - especially when compared to just marking HP off a swarm token that feels slower since the swarm resists the damage.
In addition, AoE spells have the regular, expected impact on mobs when using the Mob Attack Rule. Rather than a fireball only knocking off half a swarm’s HP, it will pretty reliably wipe out every goblin in its radius.
So as we can see - it’s faster, resolving the entire mob’s attack in a single roll. It’s more dangerous, addressing the Invisible Tank problem. It doesn’t require any prep or consulting any tables, making an improvement over swarm rules, and it doesn’t needlessly nerf AoEs, making another improvement over swarm rules.
On first pass, it seems like it solves all the problems!
Mob Attack Rule
Here’s a formal statement of the rule, with an example and some rules clarifications/interactions based on playtesting and discussion in 5e forums:
Mob Attack Rule. When a group of identical creatures attacks a target at the same time, it acts as one creature, called "the mob", on its turn. The mob has the same statblock as a single member of the mob, with the following changes:
it gets a +1 bonus to attack rolls and save DCs for each member of the mob
its damage dice (but not the fixed bonus) are multiplied by the number of members of the mob
So for example, one goblin has an attack bonus of +4 and does 1d6+2 damage on a hit. A mob of 5 goblins would have an attack bonus of +9 and do 5d6+2 damage on a hit. A wolf's knockdown attack has a DC 11 saving throw to resist. If a mob of three wolves attack, that's a +3 bonus for a DC 14 saving throw to resist.
Other details and clarifications that might come up:
Critical hits double the entire pool of damage dice. If the mob of 5 goblins rolls a crit, that's 10d6+2 damage.
The mob still counts as multiple creatures for abilities such as pack tactics
Single-target effects that target an attacker (such as hellish rebuke) target a single member of the mob. Auras, AoEs, and passive effects are applied to each member of the mob within range of the effect.
Damage from the mob counts as coming from a single source for the purposes of damage resistance, concentration checks, etc.
Individual members of the mob can be targeted and attacked as usual by other creatures.
If the mob creatures have multiattack, resolve each attack in the multiattack sequence using one application of the mob attack rule.
The DM will typically limit a mob to 8 members. Larger groups can be divided into multiple, separate mobs.
Playtesting and Practical Considerations
I’ve playtested this rule with several groups of several different levels in my Curse of Strahd, Planescape, Descent into Avernus, and Tales from the Yawning Portal campaigns. The first thing to report is, it works. It’s fast, it’s simple, it’s easy to remember, and it adds tension to combats with larger groups. My players also enjoy using it for their Conjure Animals castings.
It’s also easy to explain and intuitive. One thing I have noticed is that if I present it as a bonus to attack and damage - akin to an advanced flanking rule - people tend to think it is crazy. If I present it as a simpler way to create a swarm statblock - as I’ve done here - people immediately grasp it and think it’s interesting.
Because the rule multiples damage dice but not damage bonuses, creatures with high damage bonuses benefit from the rule much less than creatures with low damage bonuses. If you had two identical creatures - one with 1d4+5 damage, and another with 2d6 damage - the creatures with 2d6 damage would be a far deadlier mob, even though individually their average damage is actually half a point lower. This is mostly not a problem because most creatures in 5e are designed so that their damage from dice is higher than their damage from damage bonuses - but it’s something to watch out for when applying this rule.
I often find myself balancing action economy by making a number of mobs so that the total number of combatants is balanced between sides. In other words if I had a party of 5 characters and they had to fight 15 goblins, the goblin boss, and the goblin shaman, I’d split the 15 goblins into 3 groups, so that there would be 5 turns for the PCs’ side and 5 turns for the goblins’ side.
I think that increasing the save DC for effects is a good enough compromise, but there are some creatures - like ghasts, for instance - where spreading their save effects around would be much more deadly than having several ghasts focus-fire one PC. Again, the DM should use judgment in dividing up the attacking mob so that there’s a balance between pure damage output and battlefield control/status infliction.
Anyway, let me know what you think in the comments - especially if you decide to playtest this rule!