Tuesday, April 23, 2013

Infiltrator E47 - Assault Master Design

"So... how 'bout them assault masters," you may be asking. The answer is that the most powerful non-boss enemy in Infiltrator, the Assault Master, has been redesigned more than three times. If you factor in the AI programming, pixel art, design, testing, etc, then each iteration is bound to take awhile. That said, this latest one is much more elegantly put together. I kept the tactical and strategic ideas of the enemy in mind along with rest of the game this time.

All of that in mind, the new design is going to be much more time consuming and meticulous to implement, for reasons I will outline below. Since it's going to be a bit before I finish, I thought it might be interesting to explain the design, the logic behind it, and the challenges it presents.

The general idea of this enemy is to have the brains and the firepower to be deadly in any fighting situation. This means that it needs to be able to attack at close, mid, and long range, as well as handle dodging, strafing, walls, corners, and shot leading.

Let us discuss the brawn first. I'm giving this enemy the following three weapons: a melee beam saber for close range, homing swarmers for mid range, and an accurate burst laser for long range. No range will be totally safe. This does not mean that one particular range might be relatively safe for the player, nor does it mean that one particular range is not relatively more dangerous.

Strategically, this enemy will use swarmers and melee attacks to ward the player off from close range. It wants to be a mid-long range so that it can toss laser cannon volleys at the player while throwing off dodging with swarmers. It will be a crack shot with said cannon, the projectiles of which already move moderately fast and do decent damage.

I don't have numbers, as I usually choose those through experimentation. I know it will be slower than the shredder and faster than the heavy warrior, but not exactly where in between. I know it will have lots of armor, but not exactly how much. I haven't gotten into experimenting with numbers because the graphical application of this enemy is rather complicated.

Allow me to explain. Here is a shot of the assault master ingame:


Each arm part is a separate object, as are the weapons. I need this so that it can have moving parts, which it needs to aim its gun and swing its sword. I'm currently having to use a bunch of really complicated transformation matrices(I didn't make that up) to make all of these parts stick together and rotate in harmony. I actually do have it to where I can set any rotation for any part that I want, shown by this example pose:


The issue is that I don't have any easy way to do animation. Now, I could quickly throw together a hacky animation system that lets me manually enter a set of rotation goals, then interpolating between them. The issue with that is that I would end up with really rigid and unnatural animations, unless I spent hours and hours making them look natural by trial and error.

Why aren't there any videogame oriented 2d skeletal animation tools anyway? I need something that would let me attach objects ingame together with a virtual skeleton and then use keyframe animation to manipulate it, providing me with software to create said keyframe animations from a usable GUI. Of course, if you think the world really needs a certain piece of software, you gotta write it yourself.

Still, writing my 2d skeletal game animation toolkit would take a lot of time itself. Maybe it would pay off by being useful in later projects. I'm not sure if those projects will even be 2d though. I haven't made up my mind about whether or not I'm willing to embark on a project like that now(despite how fun it sounds), but I think I know how I'm going to decide.

I will try manually hard-coding the animations by trial and error, and if that proves to be un-wieldly enough, I'll start work on a 2d skeletal game animation toolkit. "How can you justify such a huge devotion of time so far outside of this project's thesis?" you may ask. The answer is that this project is really about things I find fun, achievable and successful or not.


    --LazerBlade

No comments:

Post a Comment