I’m working on mob animation from before. And I made my current boss mob have four legs, made of 2 parts each:
It’s only two sprites, so there’s not much variety, but it’s really nicely reusable and, really, it’s just two sprites to draw. Time to get animating this bad boy. And, oh man, does it have many parts to animate:
This is why getting those animations reusable was really important. So the above instantly translates into:
And this is pretty damn cool, if I may say so myself! Seeing all the systems come together is very satisfying.
However, there is one nuance in that the legs move with perfect timing. Currently, diagonally opposite legs are in sync, which is a bit better than same-side legs in sync. But that feels too familiar and yet too mechanical. So the feature I’m really looking for is to define a time offset or shift for an animation:
If I define four offset with 25% shift each, I get four separate animations that I can wire:
And this looks pretty cool:
There are actually a bunch of ways of mixing up the timings, but this one seems to look the best with least amount of weird leg overlap or some such.
One thing though is that my legs are made of two parts but the lower part doesn’t do anything that the top one does. So I added a modifier for the “foot”:
This makes the feet slightly move around:
Forget me saying I like the first version, this is awesome! I may have spent a lot of time on this — making the whole custom animation system, making the editors and previews, and then wiring it all as individual sprites and lookups, timing it all correctly, etc. But I think now that I have a great result, I can reuse this for every other mob.
Anyway, may be I can even add some top body sprites, of which I have three — head, “chest” and “abdomen”:
Of course, the actual parts are completely arbitrary and it’s more about what I’m willing to draw. I’m currently following my “junkbot” motif – same shapes, same colors.
Setting up a reasonable idle animation on these takes just a minute with reusing the stuff I have:
So yeah, that’s
I added a shake animation, which just jiggles the parts:
Interestingly, due to smoothing in the actual game, I need to set the shake values much higher than they appear in preview.
Anyway, the bosses start off by “sleeping”, so here’s the boss compactly sleeping:
The only issue is the eyes, which are used in-game for a clear “activity” indicator. So I need to remove those. I don’t want to maintain 2 sprites with the same content, so I will just have an eyes sprite instead:
I need to be able to toggle it, so I’m making sprites conditional:
Of course, it would be great if I implemented it in the right place (only the state for “sleeping”) and not for the whole model:
And this works out pretty nicely:
Of course, the actual “sleeping” is just the parts being offset during the animation. There is no transition, it’s pretty much instant:
Well, good enough for now. Also reminds me I need to get those weapons sprited at some point.
Oh boy, do I want all mobs to have modular eyes now that track the player, look around and… But I really have to contain my feature creep. Some day…
I still need to do boss-specific things, like charging and stuff. Worst case scenario, I just reuse animations. I will cover boss ability animation and such at a later time. I should likely get the player model sorted first too.