My players just hit 9th level, and got news from one of the dwarven queens that she's going to attack the human capitol city in a few weeks. She's got dwarven, drow, and svirfneblin troops with her, and her goal is to overthrow the evil human wizard-kings who rule the land.
There's also an orcish army on its way, and word is they've got ogres, orcs, giants, and a powerful dragon with them.
The human city is home to the wizards' academy, a small horde of undead they control, the city guard and some army troops, and potentially some golems and other constructs. And, of course, several very high level (15-20) wizards.
It's going to be a pretty big fight.
Is it a three-way battle? Dwarves (+PCs) vs. orcish horde vs. human wizards?
So my questions are: What are some ways I can make it really epic? How can I get the PCs involved in crucial parts of the attack (they're allied with the attackers)? I'm planning for the attackers to succeed in taking the city, but I don't really know what happens next. How would you run something like this? Are there good modules, sourcebooks, etc I should dig into?
The best war-based scenario I've read is
Red Hand of Doom (from 3.5e), which is great for it's use of victory points & flashpoint battles, war timelines, and interesting objectives for PCs to pursue on the battlefield.
Ideally, the answers to your questions should stem from things you've established about the forces & the scenario. Let me explain...
What are some ways I can make it really epic?
You've established the wizards use servitor constructs. Maybe a preemptive attack to sabotage their golem forges is necessary to prevent the wizards from sending golem reinforcements during the planned main assault. Maybe there's a gnomish tinker the PCs need to sway to their side (or otherwise blackmail) to smuggle them inside the golem forges. Maybe there are golem control rods they need to destabilize. Maybe they can use those rods to cause golems to go berserk. Maybe there's something like an
apparatus of Kwalish they can commandeer during their escape.
How can I get the PCs involved in crucial parts of the attack?
An NPC they care about was turned into an undead servitor by the wicked wizards and now guards the postern gate into the city with an force of wights. While the dwarven queen advocates a "kill all the undead" philosophy, out of respect to the PCs for the services they've done for her in the past & because the NPC is their friend, she lets the players have a shot at trying to break the undead curse afflicting the NPC and soldiers under his/her command. Maybe the citizens of the human city don't realize their favored defender NPC has been turned undead... or maybe their culture views the undead as ancestral guardians who made the ultimate sacrifice and should be revered... so the if the PCs hope to sway the human populace against the wicked wizards they need to tread carefully.
Or maybe there's a tunnel the dwarves are working on, maybe a PC caster is using
move earth or other powerful magic to shape the tunnel. They plan to send sappers in, but something goes wrong, and an explosion traps the PCs in the tunnels under the human capitol city.
I'm planning for the attackers to succeed in taking the city, but I don't really know what happens next.
If that's the case, then what are the actual stakes of the battle? What is uncertain? Why should the PCs care? What difference / meaningful choices can they make?
How would you run something like this?
I ran a war-scenario at about 9th level (this was in 4th edition) for 7 players, focused on their PCs, with the battle more as background.
I created little dilemmas - decisions for the PCs to make during the flow of battle. For example... The dracolich they accidentally freed at 3rd level lands on the battlefield, under the enemy's control to cover the enemy's retreat. It has their ally Prince Tuirean pinned down and is laying waste to his cavalry. Do you want to trust your allies to repel the dracolich so you can close in on the BBEG's command squadron or do you want to face it yourselves and save Tuirean? Another dilemma: Do you wish to take a boat across the magical misty waters to the BBEG's isle fortress with just your eladrin allies in order to interrupt the ritual-in-progress ASAP or do you wish to rest and wait for all your allies to assemble and make an assault en masse?
One trick I used is "ally cards" which the party collected as they held negotiations and made allies over the course of the campaign. When played, these cards had various effects, ranging from longbowmen making a longbow attack on all creatures without cover in a certain swath of the battlefield, to cavalry charging, to a ballista that never could hit the same spot twice.