This week I worked on minor enemies, among other things! To start with, here are some you won’t be seeing much of in Bleed 2 anymore.
I’m not talking about the Invaders in general, just the ones with fancy hats. Originally I imagined the Invaders having different ranks, indicated by their headgear. You’d be steadily introduced to them as the game progressed and each rank would come with new abilities. For example, the highest-ranked Invader was the spec-ops Invader, who would jump over your shots and return fire.
It might sound good (and maybe that gif makes it look nice) but the reality is more like this:
Similarly, the beret-wearing Invader would dodge your shots by rolling behind you. Perhaps it too looks nice, but in the context of the actual game it stinks — you always miss your first bunch of shots and have to wait around for it to stop rolling if you want to kill it.
They’ll still appear in a few select sequences, but they’ve been majorly toned down. To compensate, I’ve created a few additional baddies with more dynamic and immediate abilities. Here’s one I put in this week: the robo-squid from the original Bleed!
Like other baddies who return from the first game, they’re not happy about Wryn murdering their heroes and are working with Valentine and her crew to exact revenge. That’s my justification, and the more I add (within reason) the more I think it strengthens the story so yay!
There’s more to creating minor enemies than you might expect. This post is getting a little rambly already, but I’ll give you a taste of their movement AI before I finish off. It goes something like this:
Every time a squid decides to move, it targets Wryn’s current position. If she’s too far away, it moves towards her (but not straight at her, there’s a bit of variance to the angle). If she’s close enough, the squid stops moving towards her, and creates an imaginary circle with a randomly-sized radius around Wryn’s position. The squid then moves a random amount along the circle’s radius in a random direction. Finally, the squid checks if it’s getting stuck trying to move into tiles, and moves in the opposite direction if that’s the case.
Here it is in action:
There’s a lot of randomness, but it’s usually kept within a narrow range of values. Bleed 2 will always play the same in the big-picture scope of things, but moment-to-moment I think it’s more exciting for the game to be a bit unpredictable and keep players on their toes.