People often ask me "How do you build a really solid boss fight?" and I've always found that an interesting question. Since this month I'm talking all about campaigns I figured I'd give the breakdown.
First of all there are two vital parts to a boss fight. The Why, and the How. A boss fight without meaning is immediately at a huge disadvantage. Fighting a dragon because you want it's treasure just doesn't have the same weight as avenging your slain allies. Likewise, desperately trying to defeat or get passed a raging werewolf is all the more engaging when it has you locked in, when it's hunting you down. My rule of thumb is that if you consider a fight to be a boss fight, then it's worth some foreshadowing. And that isn't a hard rule to follow.
"Many of these slain soldiers were impaled on crystalline quills, but we've never seen an alien with that sort of weaponry." Boom, now later in that mission when your space marines suddenly see a huge raging alien covered in crystal quills, you know sh*t is on. It builds consistency, it grows your world, it creates mystery, and it gives your players a chance to prepare. If they took the time to analyze what they know and take precautions, they should be rewarded when it comes time for the battle. Which leads me to my second point.
A good climactic encounter, like an ogre, should have layers. When the players get waylaid by phantom fungi or a group of zedheads it's fine to have them rush in take some swings, mess with the best and go down like the rest. A boss fight though needs more setup, more stages, more grandeur. It should always have more than one draw. An ancient vampire prince, or an ancient dragon, or an ancient robot, or a big time super villain never relies on just one trick. Claws, magic, breath weapon, fear aura, tail, bite, crush. Dominate, Majesty, celerity, vigor, shotgun. Rockets, giant foot, machine gun, laser eyes, drone. Omega beams, super strength, agony matrix, minions. You get the idea.
Likewise a good boss is one that doesn't go down in one hit, they have survivability, which means more than just a lot of health. The most common, but also worst way of providing this is to give them Immunities. "You mind control the boss? Sorry it's immune. Drain their soul? Immune. Turn them into a squirrel? Immune". This is painfully common in a lot of games and is deeply discouraging. Instead consider giving your boss' more creative protections. Picture an evil sorcerer who has stolen a magic lamp granting them three wishes. Each time they're defeated they make a wish and the problem is solved. This means that you have to beat them four times to truly win, ideally in four different ways. That same encounter could also be won easier though by stealing the lamp, or muting the sorcerer, by goading them into wasting wishes, all sorts of things. Picture a powerful psychic with a platoon of clone bodies. When one is destroyed they hop into another and another until they run out. The Important thing is that unlike immunity, the players are making tangible progress, they are getting somewhere, and they know if they keep going they can win.
Many classic boss fights have different stages, many moving parts, many vulnerable spots, this allows you to change up the fight, preventing it from dragging on and on while still making it a lasting and enduring challenge. Of course some games allow this better than others, but look at the systems your game allows and consider how breaking it into sections can be beneficial and can help spice up an encounter.
So in summary, a good boss fight should have a reason, should have foreshadowing, and should be mechanically interesting with layers and different parts to it. Hopefully this has helped you create some memorable and exciting boss fights