Space Invaders - 2 Player

Last semester I took a course on embedded systems.  The class revolved around building the classic Space Invaders game.  We built the game on the Virtex-II Development Platform which involves an FPGA with a PowerPC processor.  The combination of a "fast enough" processor and an FPGA meant we could do some pretty cool things.  We developed some custom hardware to act as a DMA audio controller, for example.  One part of the course is a creative assignment, where we were supposed to create a substantial addition to the game.  We decided to make it a two player game, but wanted to do a little more hardware development.  So we picked up two RF transceivers and added wireless communication.  Here's the final product:

As you can see, the graphics are pretty good (the video skews them a bit) and the gameplay is very smooth. My friend Jeremy worked hard to make it an exact copy. As far as multiplayer goes, the video explains the additional rules for 2 players. Every time a player kills an alien, there is a 30% chance it reappears on the other persons screen as a yellow alien. When a player shoots a spaceship, a random number of aliens (between 1 and 7), appear on the other players screen. The game state is synced over the wireless connection 10 times a second.

This turned out to be a blast. It was fun to build and pretty fun to play. It added a very fun competitive element to an a classic game. We actually left it running in the lab for a few weeks and students in the class would frequently challenge each other.

Overall it was a pretty cool project.

Thanks to Jeremy Mickelson and Jared Pilcher, my lab partners.

Edit: Hacker news comments

comments powered by Disqus