0.4.0 - Presentation (Week 11)


Don’t Let Them Land 0.4.0

Fixing Problems and Finding New Ones

After the fiasco last week in getting simple things working in complicated ways I wanted to go into this week with a different attitude and approach. No more making things fancy. Making things work was the priority. Starting with the list of things I had written down to fix this week.

The first one was straightforward. The camera was harshly adjusting when the enemies died since they were removed from the Target Group instantly. It wasn’t too noticeable when they were close but if you killed an enemy that was close to the edge of the screen the camera would flick back towards the planet. The solution was simply. Track the enemy after it died with a child that was separated on death and then quickly but smoothly turn down it’s weighting on the Target Group before removing it. This means the camera would smoothly move back into position but still do so quickly.

Gravity was originally the next goal. I was hesitant to change it again given last week, but I tried a little. The goal was to change it from a linear acceleration to a more realistic distance based one mostly to get the asteroid to curve into the planet in a satisfying way. Unfortunately changing the gravity code impacts a lot of other things most notably the player movement which caused complications as seen in Figure 1. Ultimately, I decided against adjusting it and reverted to the linear acceleration. The work required to get things back into line was more than the benefit the game would get.

Mary Poppins

Figure 1 - Look it's Mary Poppins

In the same vein I needed to fix the colliders on the asteroids and aliens to better fit with their sprites. Last week I planned to custom build them for each enemy and if I had built the prefabs I should have built last week then I could do so easily but with the system I build it’s quite challenging to add custom polygon colliders. Instead of using up too much time changing this or implementing it I choose to just use simple circle colliders. This is learning. I think.

It's ALIVE

Our poor robot has been stuck in that same pose the entire development. It’s time we go this guy moving. Animating that it. The sprite sheet he comes from has a lot of choices for how to animate him and so I built a few animation clips for running, jumping, falling, shooting and an idle pose too.

Animating things in Unity and animation in general has always been something I’ve struggled to do, and my code wasn’t fully setup to accept it as is. I made some small changes in parts of the code to make sure that setting the state machine up would work well. Like all code changes this comes with the challenge of not making mistakes and this particular time I made a mistake that resulted in the hilarious jump in Figure 2.

Superman

Figure 2 - Now it's Superman!!!

Despite errors and personal struggles with how to animate things I did get somewhat fluid animations in that felt good and seemed mostly bug free. The shooting animation doesn’t always fire for some reason but all the other animation feel good and I’m proud of implementing an aspect of video games that I’m not super comfortable with. The result can be seen in Figure 3.

Animating

Figure 3 - The robot got some WD40

Time To Explode

With my animation work settled it was time to add in explosions. These would be simple versions of what was done in the tutorials just to give the player some feedback that the enemies are dead. The particle systems are adjusted to make more sense for the context. This is an area that might get adjusted as time goes forward. How the particles look is far from set in stone but adjusting them should be easy enough now that they exist.

Explosions

Figure 4 - Showered in invaders

As you can see in Figure 4 the part that I really wanted to get working and make look good (and thus where I spent the most time) was on making the particles act on the planet’s gravity. Sadly, it wasn’t as simple as it would be for another game object, but it wasn’t too tricky to do. Since there are too many particles looping through them all and adjusting their velocity shouldn’t prove to be too costly. Still, it’s something to keep an eye on if that changes.

There really are sounds in space!!!

I’ve always said about games I play that audio is half the game and while that may not be actually true it’s an important aspect to making things feel more real. I wanted some clips for all the actions that occur in the game, some ambient sounds and some background music.

Pulling together some sounds from a variety of sources I managed to figure out a way to add a good variety of sound and music that hopefully avoids the samey feeling that often occurs when listening to the same audio clips repeatedly. Each action chooses from a few clips of similar sounds to add variety, and the background music changes each run.

The Little Things

So while I didn’t exactly get what I wanted to get done in terms of adding new content the game feels a lot more refined this week compared to last. A few small additions that helped pull that off was:

  • Added a start screen.
  • Adjusted the camera some more so that things don’t zoom out too much unless they need to.
  • Many, many little backend changes to facilitate this week but also next week’s changes.
  • Changed the background image to one that is less cluttered.

Feedback

Feedback went well this week but again since development took longer than expected I got limited feedback from peers and relied on my gaming friends for their ideas, opinions and concerns.

Game is fluid, responsive and clean, overall enjoyable and seamless.
Game runs well with no noticeable bugs during gameplay. Camera positioning could be improved when returning to centre once an enemy is destroyed.
Game runs great, shooting feels fun and responsive when it connects with targets.

Feedback was mostly about how well what is there feels and that is feels good. The camera feedback is something I’m always trying to adjust and work on and will continue to do so as I go.

What score did you guys get? This is mine this patch.

High Score

Figure 5 - My high score

Reference

Assets used:

Leave a comment

Log in with itch.io to leave a comment.