Ah, the elusive mass combat system. I've overthought this for a long time. Just use regular monster stats, ya dummy!
Specifically AC, HD, THAC0/Attack Bonus, and Morale. Ignore everything else. Each unit is represented by the stats for one creature of the troop type. If there are several units of the same troop type, multiply the HD by how many units there are. If you're not sure how many individuals one "unit" should represent, use the maximum number appearing. Try to keep the HD numbers small but proportional.
No maneuvering unless you feel like it. The type of unit determines who it can attack (adapted from Matt Colville's Strongholds and Followers rules):
- Footmen and big monsters: can only attack other footmen/biggies if any are on the field, followed by archers, and finally siege engines.
- Archers and flyers: can attack anyone.
- Cavalry, fast monsters, and siege engines: can attack anyone except flyers.
Roll initiative. Each side takes turns using units until none are left, and then roll initiative again. Ideally, this would happen alongside the PCs engaging in normal D&D combat against the enemy commander or executing a special mission.
Units make attack rolls as normal against each other. A successful "hit" reduces the defender HD by 1.
Each time a unit is hit but has HD left, it must make a morale check, adding the total hits accumulated to the roll. If it succeeds, it may continue to act normally. If it fails, it is in disarray and may not act again until it passes a morale check. If a unit is hit while in disarray, it is routed and flees from battle.
I have two ideas for how to handle a unit reduced to 0 HD:
- Wiped out immediately. Simple.
- It is only wiped out if it fails a morale check. I like that this would allow for units to hang on for heroic last stands. I worry that this would make low-HD, high-morale units punch too far above their weight. You would have to keep counting hits to add to morale checks.
If a commander is on the field, all units add the commander's Charisma bonus to their Morale score. A 12 is still a failure.
In order for a spellcaster to use spells in battle, it must be at least 9th level and use up spell slots (of at least the spell level) equal to the HD of the unit it is casting the spell on. Adjudicate special creature abilities on a case-by-case basis. I haven't thought magic and special abilities through very well.
Even though this is simpler than a real wargame, it is still a lot to add on to a regular D&D combat, so you'd only want to run maybe one or two climactic battles per campaign like this. I'm taking a look at the War Machine rules from the Rules Cyclopedia to try to adapt it into something I'd use. It reduces a battle to one roll, but there's a lot that goes into determining the modifiers to the roll. I'll post my version of that eventually. Honestly, most of the time, you probably don't even need to roll for the results of a battle unless it seems like it would be close. Even then, if the PCs accomplish their part of the battle, their side should win unless it really doesn't make sense.