Dodge, duck and roll

Dodge, duck and roll

Published on 2022-03-29 · 3 min read

After completing the absolute basics of the game it is time to add some flair. In the games current state it is, to be honest, quite boring. You can run around with a constant speed and you can throw a spear. Combine those two together, and you have a multiplayer pvp game (well, in addition to a lot of other things). But why is it not fun? It took me a while to figure it out... The movement does not require any finess and you can dodge the spears with ease. The spears are thrown out without any risk nor the feel of their danger. More of often than not the projectiles will miss the enemy player and hit a wall which makes them dissapears in a most lack luster manner. After realising this I understood that it is not enough to just add the features, they have do be done well and tweaked according to preference!

The first step was to make the spear strike fear into the opponents heart. I concluded the following elements had to be changed to make it feel just a smudge more like a boss in Dark Souls: - A small cooldown - Low impact damage - Throwing had no interference in player movement - Projectile speed There are many more things to try, but these are the low hanging fruits I wanted to try first.

The second step was the movement. I was not sure what to do at first, but after implementing the changes for the spear it became obvious. Obvious, as it was born out of necessity. The player now needed a way to get out of harms way, to not get killed in an instant. A roll or a block was needed! I started with the roll, as it seemed the simpler of the two. Seemed. However the final solution is very intriguing to me and I wanted to share it with you guys today:

A roll is simply the same as running, only faster. So in the world of Godot, instead of doing move_and_slide(move_and_slide(dir * speed)) we do move_and_slide(move_and_slide(dir * 3 * speed)). If we add an animation to this in a rolling fashion then we are done, you have your roll! Now that I write(say) this out loud, it seems so ridiculously simple and it is! It is just one of those things!

//Julian