The second game and in a lot of ways my favourite, was a choice of 8 retro games. Space Invaders, Frogger, Missile command, Tetris, Centipede, Pacman, 1942 and another game which I cant remember. In terms of difficultly Pacman was considered the hardest as it contained AI which the school had not yet introduced into out lectures and Space Invaders and Frogger the least difficult. I decided to choose the game that would stretch my abilities the most and Pacman was to be that game at this stage of my learning. Moreover, it allowed me to showcase my abilities I have been accustomed while working on enterprise software. This included gathering requirements, in this case gameplay mechanics. An excellent blog detailing the ins and out of the mechanics can be found here called The Pacman Dossier. The game incorporates all the ghost behaviours and movements, which made the game rather challenging and at the same time very nostalgic and authentic in its behaviour. There is one ghost that was hacked to simulate the same behaviour, I will let that be a test for yourself to figure out which one it was.
The other aspects I learnt was to incorporate an existing framework, in this case I chose SDL. It was not a requirement of the assignment as the school had provided their own basic framework. However, I assessed it and deemed it lacking for Pacman. This may have sufficed for other retro games such as space invaders which I saw a lot of classmates use, for me however, it seems to be a step backwards. SDL proved to be very powerful and at the same time tricky to use. I added ttf font which is not all that straight forwards. Once it was in, all the work getting it to work with other fonts was a breeze. I got to learn about gamestates and how this alone made the game more manageable. The largest class was the Ghost class and this can to be around 2000 lines of code and about 3 days alone to code the AI bug free.
All images and animation were meticulously hand drawn in Photoshop, I remember the sprite sheets I found online did not meet the requirements I had in mind or that I liked so I just made my own. This took another 3 days simply because it was tedious work. I think they were well worth the effort and really drives the immersion of authenticity, which is what I was after. The game runs in 1024 x 768 resolution and has a high score system, so it will need read rights to the data folder. I have ensured they are there when I created the download, however, you never know once it goes out to the internet so if the game does not run it maybe because of this reason.