One of the challenges I’ve faced designing the new style of bosses is simply that there aren’t many games to take inspiration from. Shmups have well-iterated boss designs, but there are limits to how much you can borrow from a different genre. There aren’t a plethora of twin stick shooters, and the few that exist tend to feature uninspired boss fights. The most famous example of the genre, Hotline:Miami, is a great game with a great sequel, but the bosses exist purely for presentation and narrative. The actual gameplay is incredibly simplistic and shallow.

The same can be said for Nuclear Throne, Enter The Gungeon, and The Binding of Isaac.

Twin stick roguelikes were quite popular ten-fifteen years ago, but I’ve never much enjoyed them. The gameplay is quite shallow, so the way these games manufacture their difficulty is through brutally punishing the slightest mistakes, while handing out healing items like Ebenezer Scrooge. The boss fights are almost entirely Simon Says style dodge tests that only appear difficult because the player needs to play through the entire game again to have another attempt at figuring out the boss, and there is little to no margin for error. They remind me of Soulsbornes, in all the worst ways.

I got nothing out of studying Nuclear Throne and Enter The Gungeon. The Binding Of Isaac was even less helpful, as much of the gameplay challenge comes specifically from not being able to free-aim.

I remembered liking Geometry Wars back in the day, and forgetting if there were boss fights. Turns out there weren’t until the second sequel. I never played it, but watching the below video is edifying. Projectiles that can be shot down add another dynamic to shooting and dodging, and I’ll probably crib an attack pattern or two from this. Still, it’s pretty much a different genre entirely from what I’m going for, regardless of the perspective.

First Person Shooters are far more common, especially in the AAA space. Unfortunately, it’s next to impossible to find a decent FPS boss fight. To some extent, that’s because these games had the production values to substitute other things for their setpiece moments, such as vehicle sections, a stealth sequence, and whatnot. Halo:CE’s final two sections being the engine room fight followed by the Warthog Run was a stroke of genius. One that I can’t disparage just because, twenty five years later, they might have helped me make my own game if they’d made a giant boss at the end. 

However, in parallel with the increased budgets, the FPS genre started fetishizing realism over fun. Out were the wackiness of the Boomer Shooter, in was Call of Zionism Duty’s pretend-realism. Combine these two elements together, and bosses got written out of the FPS genre for about twenty years. COD and Halo don’t have any, save the terrible Tartarus fight at the end of Halo2. The Doom reboot, Quake 4, and Titanfall have a few, and none are particularly great. The same goes for Gears of War, which is a third person shooter anyway, and while Vanquish has good bosses, it’s really a Character Action Game masquerading as a shooter.

That leaves us studying the shooters of the 90s, which is unfortunate, because FPS bosses from the age of software rendering are almost unanimously trash. The norm is the godawful final fight in Half Life, a boss so bad that I actually knew a guy who placed Half Life as his favourite game of all time, while admitting that he’d never actually finished it because he hated the final boss so much. He was already fed up with the Xen bullshit, but this was the last straw.

I’ve watched boss compilations from the original Doom, Quake, Heretic, Hexen, Blood, Half Life, Turok, and they’re pretty much universally terrible in terms of gameplay. Some have good ideas with respect to pageantry, although most of them are just terrible all round. The final boss of Half Life at least had some weird sci-fi flavour to him. In contrast, the first boss of Quake feels like a particularly lazy fan mod. The game transforms into an incredibly lame and repetitive platformer where you run on an elevated sidewalk a few times, and then the boss dies.

Serious Sam had passable bosses, although they usually felt far closer to novelty gimmicks then well balanced fights. The game also cheated, for the better, by giving most of the bosses a ton of minions. This lets the regular gameplay largely carry the encounter, with the boss serving mostly as flavour. That works in general, but since I’ve got a tiny production budget, it’s not ideal for me, and doesn’t help me design an interesting boss at all.

As far as indie titles go I was recommended Frogmonster as an example of a modern FPS that gets bosses right. I’ve never played the game, but having watched it I am impressed with neither the presentation nor the gameplay.

In one sense it’s somewhat encouraging to see how terrible the competition is. Even this not particularly great boss experiment is more complex, and more fun to fight against than most of the shallow, gimmicky bosses inherent to shooters. Adding production values to this fight and sanding off the rough edges would be acceptable, but I’m sure we can do better.

There are only two FPS games I’ve seen that have even halfway decent bosses. The first, Mega Man 8-Bit Deathmatch, a game I’d never heard of before, that created a bunch of interesting fights.

The second, Ultrakill, may be the only FPS game ever made with truly great bosses, although I’ve never played it myself so I can’t say that with any real confidence. Even if true, it’s still of quite limited value, as the game mechanics between Escape From Epstein Island and Ultrakill are so different that it’s hard to port over any designs, even just as a starting point.

Two genres that consistently have great bosses, shmups and Character Action Games. So what are they doing right that we can steal?

5:50 (He’s contrasting the excellent boss he just talked about with others in later games in the series.)

There’s little to no back and forth here. You wail on an enemy until a big, dumb, obvious attack comes you way.

I saved the best twin stick shooter case study, Nex Machina, for last. The game undoubtedly has the best bosses in the genre, but I still don’t really like them. The attack patterns creative, and the production is good. The issue is that, no matter how complex, the bosses patterns are a static thing, and it’s difficult to get a deep experience out of that.

It’s the difference between playing a fresh chess position, and still being in opening theory. Or, alternatively, between solving new tactics puzzles that share the same motifs, and “solving” the exact same puzzle over and over again. When there are no complicating factors, the strategy and tactics go out the window, and you are left with a game of rote memorization.

A lot of boss fights, even in character action games, amount to little more than memorizing the bosses moveset, and figuring out the exact, precise method you’re supposed to counter/beat them. Soulsborne style Simon Says gameplay is probably the worst offender, but even better games like Ninja Gaiden suffer from this problem to some extent. 

I’ve praised shmups in this article, and there are a lot of aspects of their designs that I admire. However, a lot of getting good at any particular shmup comes down to routing, which is another term for rote memorization of specific movements throughout a fight. This is an inevitable consequence of the player having almost no way to impact the bosses in these games, other than kill them quickly. Because you can’t really affect the fight, it plays out the same way every time. After a while, the fight is just a matter of technique, coupled with a dexterity test.

Dealing with any particular normal enemy in EEI also quickly becomes a matter of technique for a good player. However, there are a dozen of them in play at any given time, which leads to dynamic decision making.

Dealing with one militarized police officer is trivial. You can go behind the nearest cover, then pop out and hit them with your plasma rifle. You can stun them with your grenades. You can hit them with an explosive dart and then just run away, waiting for them to explode. You can insta-stun them with your sniper rifle, and finish them off however you’d like.

Dealing with a single roided out social media influencer is likewise trivial. Bait them to whiff their leap, and punish them however you want. Alternatively, pump them with damage the whole time while moving away from them, as they can’t catch up to you.

But what if the roidheads are going to flush you out of cover and into the line of sight of the mil-police? And you can’t just snipe the cop because there’s a trash mob in the way who will eat the shot. Well maybe we can bait out the leap and then teleport to a different spot in cover, but we might expose ourselves to the ZOGbots who have massed beneath us. And so on, and so forth. Good players are able to make good decisions in the moment. Great players are able to manipulate the enemies ahead of time so they find themselves in better situations in the future.

Normal enemies in numbers naturally provide space for tactical and strategic mastery of a game to show, precisely because you can’t perfectly memorize the infinitely different combinations of enemies you will fight. Instead, you need to use heuristics. The enemies weaknesses are also more natural, as you can’t necessarily exploit (for example) the post throw cooldown of an antifa throwing a urine filled water bottle at you, because you may be under too much pressure from other enemies.

However, if there’s just one enemy present – the boss – its weaknesses become laughable, in terms of both flavour and gameplay. There is nothing stopping the player from ruthlessly exploiting it, unless the boss has been specially designed to counter-act this behaviour. The worst, but most common solution you’ll see is designers who effectively create turn-based boss battles. The boss does its offense, and then courteously exposes its glowing anus to you for a while, before doing more offense. Rinse and repeat for ten minutes.

(TurboButton continued)

Pacing is unnatural, and instead has to be forced with cutscenes scattered throughout.

Pacing is another problem I’ve struggled with. Normal enemies have a nice, short life cycle. They spawn in, position themselves, deal damage, take damage, then die. They also spawn in waves, which provides a natural ebb and flow to the combat. Bosses need to hang around for much longer, but if they’re doing the same thing the whole time their healthbar becomes a test of how long the player can also keep doing the same thing before they are allowed to win. In moderation this is fine, but breaks in the action need to be officially designed into the boss.

There’s another issue, where if they use the same poise system as the rest of the enemies, the player can just wail away at them until they’re dead. To help solve these problems I implemented health break points in the above boss. Deal enough damage to it, and it automatically regains its composure and casts the spell that looks like bubbles moving towards itself. There are more creative solutions in mind.

 

And worst of all, their big, dumb, nature doesn’t play to the strengths of this kind of combat system. Actually circumventing your enemy, being able to jump over their heads, launch them into a combo, that’s kind of the secret ingredient to this system. But these fights function more like Zelda boss fights. It’s filling a pre-requisite before mashing the attack button, and that’s not the appeal of DMC. 

Bosses also often subvert the more intricate systems of a game, because otherwise they’d be too easy. I think we’ve all played RPGs where the bosses are completely immune to all status effects. Or Action Games where the boss can’t be juggled, or really affected in any way other than damaged. Myself, I’ve experimented with bosses who are immune to hitstun, only to be reminded why hitstun is a fundamental mechanic of the game.

This article got a little bit long, so I’ll end it here and conclude it later.

You may also like

Leave a reply

Your email address will not be published. Required fields are marked *

More in GDev