This week we worked on new enemies which is why we want to show you a new enemy-type called, „Pufferfish“.
The stomach of our beast is not only inhabited by DNA and friendly microbes, but also by co-lifeforms that may be a danger for the player. The „Pufferfish“ is one of these co-lifeforms that can be found with different DNA-entities (as you already know, there are different DNA-entities that have a huge impact on each lifeform’s abilities). In this devblog we want to show you the green type of „Pufferfish“.
The mechanics of this enemytype are pretty easy to explain. As soon as the player get’s into line of sight, the „Pufferfish“ will inflate itself and start charging to the position where the player was when the charge was started. This means that if you see our „Pufferfish“ from far away and he starts charging towards you, he is most likely not going to hit you. On the other hand, if you are surrounded by let’s say 4 enemies, you might lose the overview of the situation and get hit. Getting hit by our „Pufferfish“ will not only damage you but also knock you back.
(First picture: The "Pufferfish see's the player and starts blowing up and getting ready for the charge - Second Picture: "Pufferfish fully blown up and tackling the player")
Coding related there was not so much to do, since we already had the primary systems like „finding an enemy in sight“ and the „follow the waypoint if there is no enemy in sight system“. ObjectOriented programming is giving us a big benefit here because of having alot of reusable code.
The only thing we really had to do was the animation of the pufferfish blowing up and the tackle animation after blowing up. After the tackle we just play the „blow-up“ animation backwards and tell the „Pufferfish“ to go back to normal behaviour.
To sum up, the „Pufferfish“ has four states now: Idle, blowingUp, isTackling and blowingOut.
As already mentioned, there are different DNA-entities of the „Pufferfish“, each one with it’s own special abilities. Other DNA-entities of the „Pufferfish“ may react in a totally different way when they see the player.
More stuff coming in future devblogs, so stay tuned!