I had been learning python using the excellent Python Crash Course by Eric Matthes, which is a project based introduction to the language.
What it does
Using modules and methods from the pygame library, the program simulates, the classic Space Invaders game.
How I built it
I built it, by following along the instructions outlined in the book mentioned above, which explained how to use a number of the modules and methods included in the pygame library, to generate sprites and surfaces, to detect collisions between game elements and to allow fluid movement of both the player's ship and of the alien antagonists.
Challenges I ran into
At times it was difficult to adjust the movement of game elements, as adjusting the progression of sprites down the screen by differing factors made the game play clunking and unpleasant to look at.
Accomplishments that I'm proud of
Learning how surfaces and events work and can be altered and detected using the pygame library.
What I learned
I learned a deeper understanding of managing a project and gradually refining and refactoring modules and methods as I went along. As well as gaining experience of using the pygame library.
What's next for Space Invaders Game
I had considered using the pygame.mixer module to add sounds to the game, such as explosions or shooting sounds when bullets are fired. Additionally I had considered adding shields for a player's ship to hide behind and enabling the aliens to shoot back at the ship.