Mythalore

[Dev Log] Mystery of the Ravens

Recommended Posts

Hello!

 

So this wizard jam me and @Synnah have decided to team up and work on an Unreal game together. Unreal both in terms of the engine we're using and our idea's basis in Norse mythology. 

We've been inspired by the recent God of War game as well as the prevalence of Marvel films which both draw heavily from Norse myth.

 

Specifically there is a mechanic in the new God of War where you have ten seconds to move a *thing* between different nodes, which node the thing is currently in then has a specific effect on the level.

For example opening a specific door. Which then closes again once the *thing* is removed.

 

Here's a video if you've either played/watched GoW or don't care about spoilers. :)

https://www.youtube.com/watch?v=sJnQOfk_JY8

 

Our plan is to use this as a basis for a 2.5D platform puzzle game.

 

We'll post more once we getting going but for now here's a wip logo.

tRDH5J5.png 

Share this post


Link to post
Share on other sites

Oh wow that sounds really promising! Also cool that you teamed up, are you both doing „everything“ or do you split tasks?

Share this post


Link to post
Share on other sites

Nice! I liked those puzzles a lot in God of War and I think it can be really interesting as a core mechanic.

Share this post


Link to post
Share on other sites

Hello!

 

I wasted a lot of time yesterday trying to set up a Perforce server, but I couldn't get it working; I'm still annoyed about that, because while we're using BitBucket and it works, it would be nice to have solved the Perforce issue, for larger projects in future.

 

Anyway, here's a GIF of my progress from today:

 

xKGL0BQ.gif

(Those are ravens, honest!)

 

Regarding the mechanics, we used God of War's node puzzles as a basis, but went for a kind of Lost Vikings twist. You switch between two ravens, Hugin and Munin (Odin's ravens, 'thought' and 'memory'); Hugin has more mobility (Double jump), and can sing songs that are used to open doors and trigger switches, but only Munin can remember the songs, and must teach them to Hugin. Basically, you move Munin into the optimal position to reach the goal before Hugin finishes singing. I don't think I'm explaining this very well, but it should become apparent soon enough.

 

Mythalore and I are splitting the work as follows: He's doing 3D modelling and level building/design, and I'm doing coding/mechanics, animation and music. I want to do some interesting stuff with the music, where the songs that Hugin sings become part of the soundtrack once the node is lit up, so that a song builds up as you complete a level. So far I've got movement, jumping, double jumps and gliding working, as well as the ability to switch between the two ravens. Rather than use UE4's built-in character class, which is way too much of a black box to me, I'm writing all of the movement code myself, so I think it's going to take a bit of effort to make it feel good. Next thing I need to do is handle height changes on the ground, because at the moment a gentle slope is enough to stop the ravens dead.

Share this post


Link to post
Share on other sites

Just a quick update before I go to bed; today I worked on rigging and animating Mythalore's raven model. Here's how it looked after a bit of tweaking of the mesh, and then rigging it:

 

W8LsqoN.png

 

And in motion, with a preliminary hop cycle:

 

n9WmJug.gif

 

Not really happy with this (The feet need to be desynchronised, and there's too much bobbing on the head), but it'll do for the time being. Tomorrow I'll set up a basic animation network and go back to the movement code.

Share this post


Link to post
Share on other sites

Looking good already, I like those big glowing eyes!

Just an idea, but maybe the whole animation could be a little bit faster overall?

Share this post


Link to post
Share on other sites

@zerofiftyone Me too! Hopefully it will get even cooler as we go!

 

@fabian I'm thinking we should give one raven a blue eye, the other a purple eye and leaving the gold for when one of them is selected.

 

@Nappi Thanks! :)

 

Been meaning to post this for a couple of days, but life... got in the way.

Here's a timelapse of me creating the raven!

 

 

Share this post


Link to post
Share on other sites

Oh hey look.

 

ByGHw5K.gif

 

Need to animate the jump soon.

Share this post


Link to post
Share on other sites

They look so good! Great timelapse too, I love seeing how people go about things.

Share this post


Link to post
Share on other sites

Because there are two ravens in the game, but you control only one at a time (And because I spend a lot of time watching birds in my garden), I wanted to make sure they have an interesting idle loop when they're not moving. I still have faint plans for a game about birds at some point, so I wanted to prove to myself that I can animate a convincing bird.

 

6dju80e.gif

 

There's the base idle pose, the exaggerated breathing animation that all game characters need, and then I made poses for 11 different head positions. I blended these onto the final animation by just animating the head bone, and then set up a system for choosing a head position at random every second or so (When you switch from one animation to another in Unreal, even if it's just a single pose, you can set a blend time so it interpolates between the two poses). Of course, I then needed to make sure it was possible to transition from every head pose to every other head pose, which ended up looking like this:

 

OKVuBfd.png

 

I'm pretty sure there's a much cleaner and smarter way of doing this, but it's done now. After I got the head movement working, I added in two full-body animations that play every 6-10 seconds. Those also animate the head bone, so I had to turn the head blending off when they are playing. And that's basically it! As far as I can tell, the only animations I have left are jumping, double jump, glide, falling and singing. I want to finish those off today, and then go back to building the rest of the mechanics, because I feel like I'm falling behind a bit on those.

Share this post


Link to post
Share on other sites
24 minutes ago, Synnah said:

I'm pretty sure there's a much cleaner and smarter way of doing this, but it's done now.

 

I've never used UE, but I'm guessing that a piece of code which chooses the next head position randomly from a list/array would be the way to automate this, right?

 

In any case, the result looks terrific!

Share this post


Link to post
Share on other sites

Ah, so Unreal's animation blueprints have two components to them; the Event Graph, which you use to control the logic of the animations and do things on a frame-by-frame basis, and the Anim Graph, where you set up a series of state machines to control how to move from one animation to another with conditions like 'when the walk speed is greater than 50%, transition from a walking animation to a running one' and 'at the end of this animation, return to the the idle animation'. In the Event Graph for my raven's animations, I have code for picking one of the head positions at random, but there still needs to be a state machine saying that you can move from any head position to any other head position, which is what that massive mess above is doing. I did think about just having two states, each of which selects a head position at random, but on the surface it looked like that wasn't possible. The system seems to be set up such that each state is a single animation, but I might be wrong about this.

Share this post


Link to post
Share on other sites

The idle looks amazing. I was so convinced that when I kept scrolling down and the gif was only in the corner of my eye, my mind added a full body wet dog shake animation and I had to stare at it for a few good cycles to make sure that wasn't actually in the gif.

Share this post


Link to post
Share on other sites

The raven animations are incredible!! I've just been watching that gif on loop for a while now. Can't wait to see more of it in action.

 

(also that head position animation web is intimidating!)

Share this post


Link to post
Share on other sites

Incredible work with those animations! That animation graph looks daunting.

Share this post


Link to post
Share on other sites

Thanks for the kind words, everyone! Progress has been slow so far this week, but here are some progress GIFs:

 

TKjlqbn.gif

 

Animations for jumping, double jumping and gliding are in. Took me a while to iron out all of the kinks in the animation network, making sure that every state was accessible from all of the states it needed to be accessible from, which also meant fixing a couple of bugs in the movement code.

 

JL44mgR.gif

 

Singing is in. Currently it's just a thing you turn on or off, but it will be tied to the actual gameplay mechanics... soon, hopefully. I've had less time to work on things than I'd have liked this week, and I've got social stuff tomorrow and on Saturday, so it's going to be a bit of a push to get everything in by the deadline, but I'll do what I can!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now