A short reflection on the game's development process.
In accordance to the requirements of COMP-3015 (218471) Project One, I have created a Invade Your Space (Space Invaders) game. Space Invaders is a classic arcade game in which you are playing as a spaceship that needs to clear a horde of aliens trying to attack you. In this particular project, I made slight changes to the pattern of alien downward movement as it looks better and I find it really hard to kill the horde with just the matrix of aliens bumping in the border I set from side to side. Asides from that, I also did not include the enemy projectile mechanic.
The reason why it took me so long to have everything done was because initially, I have started to do the brick smasher game instead of the invade your space game. This was because I thought it would be easier but I was wrong and made a last minute decision to change. Thankfully, it was not literally a last-minute decision and I was able to do the coding within a span of days.
I find the project really fun and even though I literally didn't get enough sleep for about a week, I managed to finish it! The most fun part of the project was the pre-development process where I was writing psuedo-codes before I actually implement it through code. It was definitely the most integral part of my development process and without it, I would not be able to code it in time.
The thing that slowed me down was the part where I had to make the projectiles randomly spawn in the center of the aliens. I really had to think it through before having the idea to just make an array and randomly picking a location and change its status to active. I also had a problem with the program lagging when the aliens start to pick up their speed. Thankfully it was fixed. Instead of creating a vector of vectors for each alien row, I just created a matrix of aliens and started from there.
Lastly! I added the reset button on November 11th 3:00 AM. I actually woke up to the idea of how to code the reset button and finished it around 3:24. Sometimes, you really just need that one good sleep to finally do the task!
This project is a great experience and I hope to optimize more of the code in the future.