Player damage-feedback
|
One artifact that I have been working on this week is “player damage”. If a player gets hit by an enemy in the game, there needs to be feedback so that they know they got hurt and have to move away. In our current version of the game, the feedback is very simple. When an enemy collides with the player, we turn the player sprite red for av brief moment, then back to the original color again.
Previous implementation of the player taking damage. We did this solution mostly for debugging reasons, and had a plan to add a “knockback effect” for the final version. I took it upon myself to figure out where to go with this artifact. I personally believed that there was a problem around it, and we should make fixing it a high priority. Thinking about the scenario I presented in the gif image above, I was very skeptical that simply adding a knockback would be satisfactory. It would either look weird, feel weird, or both. Also, in a combat scenario with multiple enemies, it would cause a big mess. Since I was on my own doing this task, I thought about how other games do it. I looked up how to implement the “if hit by enemy, reduce 1 health, make player invulnerable for few seconds and have the sprite blink while invulnerable” which is used quite often in older games, and implemented it in the game.
Current implementation. While I like this implementation a bit more, it made me realize that the problem is not in the “damage taken”-feedback rather the problem is the enemy behavior. The fact that the bats chase the player is turning out to be a problem. I brought it up with the team, and we were not able to come up with an easy fix. Instead, we discussed removing the chasing behavior and replacing it with a ‘lunge towards player’-one. An added benefit with that design is that the player now has options on dealing with the enemy: They can choose to either move out of the way, or to shoot it. I am however a bit worried that this new enemy behavior design could make the game too easy, but I also believe it will be much easier to tweak and experiment with. By doing some tweaking I believe we can make the enemies difficult enough for the game we want to make, which is not meant to be that difficult to begin with. |