More enemy animations and a new animation system

The enemies

So since last week we've been working on getting all enemy animations ready for testing out the combat.
The hammer-enemy, as we call him at the moment, now has a running animation, one attack animation and a death animation to give a better feel of how the pacing of the combat will be.

As you can see there is still a lot that feels off about the combat and that is what we're gonna focus 100% on now that we have more animations.

The new animation system
We used to have an animation system in our engine that made controlling animation state almost impossible. You'd have to remember a lot of handles to every animation for every entity.
Therefore we decided to redo the animation system and look at what worked in other engines.
Before doing our own engine we had used Unity a lot and really liked the animation controller they had, so we took a similar approach and implemented a node-based system with transitions and parameters.

Every animation now is a node in the graph and when adding a transition between two nodes you can set conditions that have to be met before the transition can take place. So similar to Unity you can add boolean parameters with names like "jumping" or "attacking" that can be checked for certain values when the animation controller runs through the possible transitions.

Every frame in an animation node can have a callback that can be used to trigger any code.

This system allowed for a more robust system and made sure that most of the animation code would be run at the loading stage of an entity and not in the game loop.

What's next?
Since we're only working at most 7-20 hours on the project each week not much progress can be made every time, but after finally getting the new animation system up-and-running and having enough animations to actually do some gameplay with we'll be looking at the combat and try to get rid of all awkwardness in the controls and enemy AI.
We've been talking about removing the stamina bar, since it really doesn't make that much sense in our game, but we'll see what happens in the next update! Until then!

Leave a comment

Log in with to leave a comment.