Here's a way to resolve mass combat that keeps combat simple and uses existing combat rules (for the most part) so that players of all classes can use their regular abilities to turn to the tide of a massive battle. This should also prevent the feeling that the DM is simply deciding the outcome of the battle which may seem very unfair to the PCs, especially if their army is at stake.
Depending of the size of the PCs' army, they may have more than one horde at their command. If the PCs stick together, they can only command one horde. If they split up each player could command his own horde. Naturally, giants, dragons, enemy commanders and spellcasters and similar creatures should all be represented individually with their normal game stats.
Fear and morale effects could simply do psychic damage to a horde at the DM's discretion, causing it to rout at 0 hp.
These hordes are from my own campaign and so berserkers are 3HD warriors, not the NPCs from the MM.
Horde of Berserkers
Gargantuan horde of medium humanoids (human), chaotic neutral
Armor Class 13 (hide armor)
Hit Points 287 (25d20+25)
Speed 30 ft.
STR 14 (+2) DEX 12 (+1) CON 13 (+1) INT 10 (+0) WIS 10 (+0) CHA 12 (+1)
Saving Throws Str +6, Con +5, Cha +5
Condition Immunities grappled, prone, restrained
Senses passive Perception 10
Languages Norse
Challenge 10 (5,900 XP)
Horde. The horde can’t regain hit points or gain temporary hit points. The horde takes a maximum of 15 points of damage from any source that effects only a single target.
When reduced to 0 hit points, the horde disperses; some berserkers are slain, others are wounded or routing. At the DM’s discretion, 2d4 hostile unwounded berserkers may take the place of the horde after it is defeated.
Other than taking damage, the horde is immune to any effect or spell that does not affect an area of at least 20 by 20 ft., or that affects only a finite number of creatures within an area. DM’s discretion and common sense is required here.
A medium or smaller creature can be attacked only once per turn by a horde. A large creature can be attacked twice. A huge or gargantuan creature can be attacked up to three times.
Reckless. At the start of its turn, the horde can gain advantage on all melee weapon attack rolls during that turn, but attack rolls against it have advantage until the start of its next turn.
Multiattack. The horde makes three melee attacks, or two melee attacks if the horde has half of its hit points or fewer.
Swords, spears and axes. Melee Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 18 (3d10+2) slashing damage.
Horde of Archers
Gargantuan horde of medium humanoids (human), chaotic neutral
Armor Class 12 (leather armor)
Hit Points 210 (20d20)
Speed 30 ft.
STR 11 (+0) DEX 13 (+1) CON 11 (+0) INT 10 (+0) WIS 10 (+0) CHA 12 (+1)
Saving Throws Str +4, Con +4, Cha +5
Condition Immunities grappled, prone, restrained
Senses passive Perception 10
Languages Norse
Challenge 10 (5,900 XP)
Horde. The horde can’t regain hit points or gain temporary hit points. The horde takes a maximum of 10 points of damage from any source that effects only a single target.
When reduced to 0 hit points, the horde disperses; some archers are slain, others are wounded or routing. At the DM’s discretion, 2d4 unwounded archers may take the place of the horde after it is defeated.
Other than taking damage, the horde is immune to any effect or spell that does not affect an area of at least 20 by 20 ft., or that affects only a finite number of creatures within an area. DM’s discretion and common sense is required here.
A medium or smaller creature can be attacked only once per turn by a horde. A large creature can be attacked twice. A huge or gargantuan creature can be attacked up to three times.
Multiattack. The horde makes two attacks, or one attack if the horde has half of its hit points or fewer.
Slings and arrows. Ranged Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 17 (3d10+1) piercing damage.
Swords and daggers. Melee Weapon Attack: +10 to hit, range 150/600 ft., one target. Hit: 11 (3d6+1) slashing damage.
Rain of Arrows (Recharge 5-6). The horde unleashes a terrible volley of arrows at a point within 400 ft. of it. Each creature within 40 ft. of that point must make a DC 13 Dexterity saving throw, taking 36 (8d8) piercing damage on a failed save, or half as much damage on a successful one.
Horde of Cavalry
Gargantuan horde of medium humanoids (human), chaotic neutral
Armor Class 13 (hide armor)
Hit Points 345 (30d20+30)
Speed 60 ft.
STR 13 (+1) DEX 12 (+1) CON 13 (+1) INT 10 (+0) WIS 10 (+0) CHA 12 (+1)
Saving Throws Str +5, Con +5, Cha +5
Condition Immunities grappled, prone, restrained
Senses passive Perception 10
Languages Norse
Challenge 10 (5,900 XP)
Horde. The horde can’t regain hit points or gain temporary hit points. The horde takes a maximum of 20 points of damage from any source that effects only a single target.
When reduced to 0 hit points, the horde disperses; some cavalry are slain, others are wounded or routing. At the DM’s discretion, 2d4 unwounded cavalry may take the place of the horde after it is defeated.
Other than taking damage, the horde is immune to any effect or spell that does not affect an area of at least 20 by 20 ft., or that affects only a finite number of creatures within an area. DM’s discretion and common sense is required here.
A medium or smaller creature can be attacked only once per turn by a horde. A large creature can be attacked twice. A huge or gargantuan creature can be attacked up to three times.
Trampling Charge. If the horde moves at least 20 feet straight toward a creature and then hits it with a swords, spears and axes attack on the same turn, that target must succeed on a DC 18 Strength saving throw or be knocked prone. If the target is prone, the horde can make one hooves attack against it as a bonus action.
Multiattack. The horde makes three melee attacks, or two melee attacks if the horde has half of its hit points or fewer.
Swords, spears and axes. Melee Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 23 (4d10+1) slashing damage.
Hooves. Melee Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 18 (5d6+1) bludgeoning damage.
Depending of the size of the PCs' army, they may have more than one horde at their command. If the PCs stick together, they can only command one horde. If they split up each player could command his own horde. Naturally, giants, dragons, enemy commanders and spellcasters and similar creatures should all be represented individually with their normal game stats.
Fear and morale effects could simply do psychic damage to a horde at the DM's discretion, causing it to rout at 0 hp.
These hordes are from my own campaign and so berserkers are 3HD warriors, not the NPCs from the MM.
Horde of Berserkers
Gargantuan horde of medium humanoids (human), chaotic neutral
Armor Class 13 (hide armor)
Hit Points 287 (25d20+25)
Speed 30 ft.
STR 14 (+2) DEX 12 (+1) CON 13 (+1) INT 10 (+0) WIS 10 (+0) CHA 12 (+1)
Saving Throws Str +6, Con +5, Cha +5
Condition Immunities grappled, prone, restrained
Senses passive Perception 10
Languages Norse
Challenge 10 (5,900 XP)
Horde. The horde can’t regain hit points or gain temporary hit points. The horde takes a maximum of 15 points of damage from any source that effects only a single target.
When reduced to 0 hit points, the horde disperses; some berserkers are slain, others are wounded or routing. At the DM’s discretion, 2d4 hostile unwounded berserkers may take the place of the horde after it is defeated.
Other than taking damage, the horde is immune to any effect or spell that does not affect an area of at least 20 by 20 ft., or that affects only a finite number of creatures within an area. DM’s discretion and common sense is required here.
A medium or smaller creature can be attacked only once per turn by a horde. A large creature can be attacked twice. A huge or gargantuan creature can be attacked up to three times.
Reckless. At the start of its turn, the horde can gain advantage on all melee weapon attack rolls during that turn, but attack rolls against it have advantage until the start of its next turn.
Multiattack. The horde makes three melee attacks, or two melee attacks if the horde has half of its hit points or fewer.
Swords, spears and axes. Melee Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 18 (3d10+2) slashing damage.
Horde of Archers
Gargantuan horde of medium humanoids (human), chaotic neutral
Armor Class 12 (leather armor)
Hit Points 210 (20d20)
Speed 30 ft.
STR 11 (+0) DEX 13 (+1) CON 11 (+0) INT 10 (+0) WIS 10 (+0) CHA 12 (+1)
Saving Throws Str +4, Con +4, Cha +5
Condition Immunities grappled, prone, restrained
Senses passive Perception 10
Languages Norse
Challenge 10 (5,900 XP)
Horde. The horde can’t regain hit points or gain temporary hit points. The horde takes a maximum of 10 points of damage from any source that effects only a single target.
When reduced to 0 hit points, the horde disperses; some archers are slain, others are wounded or routing. At the DM’s discretion, 2d4 unwounded archers may take the place of the horde after it is defeated.
Other than taking damage, the horde is immune to any effect or spell that does not affect an area of at least 20 by 20 ft., or that affects only a finite number of creatures within an area. DM’s discretion and common sense is required here.
A medium or smaller creature can be attacked only once per turn by a horde. A large creature can be attacked twice. A huge or gargantuan creature can be attacked up to three times.
Multiattack. The horde makes two attacks, or one attack if the horde has half of its hit points or fewer.
Slings and arrows. Ranged Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 17 (3d10+1) piercing damage.
Swords and daggers. Melee Weapon Attack: +10 to hit, range 150/600 ft., one target. Hit: 11 (3d6+1) slashing damage.
Rain of Arrows (Recharge 5-6). The horde unleashes a terrible volley of arrows at a point within 400 ft. of it. Each creature within 40 ft. of that point must make a DC 13 Dexterity saving throw, taking 36 (8d8) piercing damage on a failed save, or half as much damage on a successful one.
Horde of Cavalry
Gargantuan horde of medium humanoids (human), chaotic neutral
Armor Class 13 (hide armor)
Hit Points 345 (30d20+30)
Speed 60 ft.
STR 13 (+1) DEX 12 (+1) CON 13 (+1) INT 10 (+0) WIS 10 (+0) CHA 12 (+1)
Saving Throws Str +5, Con +5, Cha +5
Condition Immunities grappled, prone, restrained
Senses passive Perception 10
Languages Norse
Challenge 10 (5,900 XP)
Horde. The horde can’t regain hit points or gain temporary hit points. The horde takes a maximum of 20 points of damage from any source that effects only a single target.
When reduced to 0 hit points, the horde disperses; some cavalry are slain, others are wounded or routing. At the DM’s discretion, 2d4 unwounded cavalry may take the place of the horde after it is defeated.
Other than taking damage, the horde is immune to any effect or spell that does not affect an area of at least 20 by 20 ft., or that affects only a finite number of creatures within an area. DM’s discretion and common sense is required here.
A medium or smaller creature can be attacked only once per turn by a horde. A large creature can be attacked twice. A huge or gargantuan creature can be attacked up to three times.
Trampling Charge. If the horde moves at least 20 feet straight toward a creature and then hits it with a swords, spears and axes attack on the same turn, that target must succeed on a DC 18 Strength saving throw or be knocked prone. If the target is prone, the horde can make one hooves attack against it as a bonus action.
Multiattack. The horde makes three melee attacks, or two melee attacks if the horde has half of its hit points or fewer.
Swords, spears and axes. Melee Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 23 (4d10+1) slashing damage.
Hooves. Melee Weapon Attack: +10 to hit, reach 5 ft., one target. Hit: 18 (5d6+1) bludgeoning damage.