Names: Ryan Tse, github: ryantse Christopher Beser, github: beserchris
a) A remake of the traditional Pac-Man game in Java where Pac-Man eats dots in a maze.
b) As a single-player, I can choose single player mode so that I can play a game of Pac-Man against the computer. As a group of two players, I can choose co-op mode so that I can play a game of Pac-Man with a friend. As a group of two players, I can choose versus mode so that I can play a game of Pac-Man against a friend.
c) The game of Pac-Man currently runs. The application opens with a menu for selecting single player, co-op, or versus mode games. Additionally, there is a high score display on the main menu. When the game starts, you can use the control keys to move the Pac-Man character. Functions as a simple version of the iconic Pac-man arcade game, without the original game sprites.
d) As a player, I can let go of the keyboard controls so that the Pac-Man character will stop moving. As a player, I can eat an energizer pill so that I can eat the ghosts. As a player, I can reset the highscore list so that nobody else will have a higher score than me.
e) The state of the README file is alright. However, some facts are outdated and needs updating. Additionally, there is no documentation immediately apparent for the construction of level data other than the fact that each number in the level data array corresponds with an element of the board.
f) The current state of the build.xml file is good, other than the fact that we need it to create a temporary javadoc directory, rather than hardcoding to public_html
g) The current issues that exist are sufficient to earn 1000 points. However, the Create Map Data Structure issue could be further clarified to spell out what a “map editor” would entail, as a complete editor for 200 points is low.
h) Additional Issue(s): ucsb-cs56-projects#36
i) The code is organized well; very modular and object oriented. Uses good encapsulation techniques,(variables and methods are marked with the correct private, public, or package-private keywords). however some names of classes could be further clarified. There was an initial issue with locating classes for specific functionality due to a lack of good class names. Some confusing names for static variables. I would show the Character class first, as most of the objects in the game inherit from class Character.
j) Test coverage is extremely lacking. There are no real Junit test cases for ensuring anything other than the leaderboard. However, as with a Pac-Man game, it is somewhat difficult to test AI movement, etc.