I’m currently working on an Arduino Space Invaders Game. This is the first of several Arduino Game projects I have planned, and mainly serve as a warm-up project to get me back into Arduino and microcontroller programming again.
In this blog post you will find an introduction to the project including a section on the project scope. I’m not going to make a full detailed DIY on how you can make the game yourself, but instead write about the thoughts behind the development.
This Arduino Game Dev Log will hopefully also help others get started with similar projects by showing the process instead of only the result.
Motivation for the project
My ultimate goal is to make a handheld game console for retro inspired games. Making this with all the features I have in mind is however a very large project.
So instead of working constantly on a single giant project and never really make a finished thing, I have divided the ultimate goal into smaller sub goals.
Thus I have a series of Arduino and microcontroller game projects roughly planned out. Each one a little more advanced than the previous.
Dividing my ultimate goal into smaller sub goals like this makes me able to actually make a finished project more often while gradually nearing my end goal.
Making smaller sub projects instead of just one giant can also help keep motivation going. There really is nothing as like holding a finished make (including 3D printed casing etc.) in your hands and showing it off to everyone you meet 🙂
If you don’t know what Space Invaders is, here is a gameplay video I found on youtube:
Arduino Space Invaders Game Scope
Because this is the first of my sub projects, the scope of the project is also somewhat limited. How limited you feel it is might depend on your own current skills however.
The projects is mainly a software project and uses only a small amount of hardware components. For my this is warm-up since I’m a software and not an electronics engineer 😉
Below is a list of the features I have planned to include before I consider my Arduino Space Invaders Game project to be finished:
- Black and white using a 0.96″ oled
- Moving space invaders (similar to the original game)
- Moving player ship
- Player shooting
- Alien shooting
- Aliens die when hit by player bullet
- Increase score when aliens die
- Death animation
- Shields broken when hit by alien shoots
- Player dead and game restart
- Increased alien speed after cleared level
- Clean code (important)
- Components soldered on shield or similar
- Finished in 3D printed casing
You might note that there is no mentioning of sound effects on the list. This is one thing I havn’t done on an Arduino before, and as such I feel it doesn’t belong in the first warm-up project.
There is also no menu system or highscore included in this project.
In the next game dev log I will show the schematics for this simple setup. And in the later log posts I will then mostly talk about the things I’ve implemented, how its done and why I’ve chosen to do it this way.
I hope you will find this coming dev log series on my Arduino Space Invaders Game interesting and useful 🙂
If you find this project interesting you might also like this Atari Breakout inspired Arduino 8×8 LED Matrix Game I made back in 2016: