Welcome to another exciting week of the Juicy Dev Blog, and what a week it has been! I can safely say that this week has been a lot more productive than the past week. I've managed to implement not only a fire trap, but also the Vertical Wall traps, AND the death for the player character when he touches the flames, YEW!
So to start off, as I said, I had managed to push myself to implement the fire trap. Man, I tell you what, I have A LOT more respect for particle artist after going through this, that is for sure! It took me a solid few hours to even think of how I wanted my flames to look. Originally the flames didn't look like they were shooting out of a turret, so I changed them up to incorporate a bit more... 'force' to them. After a lot of trial and error, I finally managed to animate a decent flame suitable for the arena. Sure, it can be cleaned up a bit, but I think I will leave it as is until I'm ready to tackle that monster again.
Once that was done, it was fairly simple to implement since I had previously implemented the 'electricity trap'. the only hurdle... well, when I say hurdle, i really mean time consuming... so... the only time consuming.... hurdle I encountered was separating the flames into multiple parts, so that when a trap passes through the middle of the flames, it didn't look like it was just one solid piece of particle. There was something else as well which I forgot to do, and that was to keep each frame a consistent size... Confused? Yeah, me too, So let me explain;
When using Spine 2D to render out each frame of an asset, whether it be a trap or character animation, it renders the frames out, trimming the empty areas around it. So, when importing the frames into the game engine, I noticed that when playing the animation, it kept jumping around a lot, and I couldn't understand why... Until a few hours later. When I imported the frames, they jumped the actor around accommodating for the foreshortening of sizes, which was not ideal.
So basically, you need each frame to be the same, consistent size. So, once I rendered the frames out from Spine, I then had to place them all into a single Photoshop file and trim them that way, THEN render each frame out again using the 'Export > Layers to files' option. So yeah, handy piece of information; make sure you keep your renders a consistent size!
So once I had managed to implement the flame trap successfully, it was then time to test a new death animation. Again, it was pretty straight forward for this since I had previously implemented the death animation for the Electrocution. I have to say, creating this animation was pretty fun to do, and I'm pretty happy with how it turned out.
Once I had finished adding the death animation, it was then time to implement the wall window traps for each side of the arena. This was not really difficult, but again, tedious. I had to make sure that I was optimizing my assets to keep the performance in check, so I basically reused the same trap for both sides. This mean't I had to 'flip' the actor -100 along the X axes. At least with this type of trap I didn't have to separate the elements into smaller components.
There was a lot of playing around with the anchor points for these elements and knowing which point would be best to base the pivot off, whether it was the top Left, or Center, or Bottom Right, it was tedious to say the least. There are still a few things to tweak with these 'side traps' but they are pretty close to being shipped.
Below is a snippet of the traps in action as well as the burnt death animation, so I hope you enjoy! Again, any suggestions would be great!
So that is it for this week. Again, very happy with the progress on this game. I hope next week I can implement a new trap. This trap I have in mind is more of like a sludge trap which pools on the floor and slows the player down. Really changing it up a bit keeps the development fresh and clean. Then, if I have time, I'll also start implementing the players 'leap' mechanic. So yeah, definitely getting there!
Until next week!
Thanks for reading!