Kandria

How do you make a game feel lively?

As far as I can tell, the answer to that question is rather simple: make a lot of things move. So far Kandria has been very static aside from the player themselves. This week I spent some time in adding two elements that make things look a lot more alive almost immediately. Both of them are not just for flavour though, they also have gameplay elements to them.

The first is a rope that the player can use to climb more easily.

YouTubePlay overlay

The physics simulation used here makes things immediately look a lot more alive. I was honestly impressed myself, since the simulation required to get this done is really simple, too. A very cost-effective improvement, I'd say!

The gameplay effect here is that I introduced climbing stamina. This means that you can no longer scale walls as far up as you'd like, you'll gradually lose stamina, which limits where you can go. This allows the level designer to control where you can or cannot go much more easily.

The ropes in turn allow the designer to specify points at which the player can go beyond what they would be able to climb, as rope climbing doesn't use any stamina. It's also possible to make ropes extendable later, so that the designer can provide shortcuts that need to be unlocked first by dropping the rope.

The second element I added is water physics.

YouTubePlay overlay

The simulation here is also a pretty simple 1D wave simulation, but it does make it look a lot better. This one will need a bit more work I think, in specific I want to add a pixel-animated splash that happens when you drop into the water. This, along with other sprite effects for blade hits and dust clouds and stuff I'll tackle later on, though.

Obviously being in water is going to have very different physics to being in air. Right now this is achieved with a simple velocity multiplier that simulates drag. Unfortunately this primitive approach doesn't interact very well with how the dash is implemented, and exposes some bugs about slopes, so it needs some more fine-tuning.

For the future I do have a few more ideas on how to make things feel more alive: dynamic weather effects like snow and sand, particle agents (birds, bugs, etc), moving grass, dynamically moving lights. Adding all of these would drastically increase the atmosphere of the game, and with it the immersion and believability. Since atmosphere is very important to me, I'll definitely get to adding these things in the future.

Really though, I told myself that this month I was not going to do any coding work, but I just couldn't stop myself. I'm a bit disappointed because of that. Don't get me wrong, the improvements are nice and all, but I wish I had a bit more self-restraint.

Well, whatever the case, see you next week with some more non-coding updates, I hope! In the meantime, if you have more ideas on how to make the game feel more lively, let me know. I'm sure there's ideas I've missed!