The aim of this assignment is to implement a simple adventure game. The exercise will extend your programming experience further, introducing you to:
Computer games have been around since the creation of the first computers. Adventure games place the player in an interactive story in an artificial world — possibly fantastical, possibly mundane. Usually there is an ultimate goal, ranging from traditional ones such as “escape” or “rescue the helpless prince from the scary dragon” to more surpring ones such as “die” or “don’t lose your mind”. There are often puzzles to solve and game characters to interact with: game characters have varying motivations — some are there to help you, others to get in your way, some just don’t seem to be there for any reason at all, and all of them might change their role according to your behaviour torward them. You might find the Wikipedia article on Adventure Games an interesting read, particularly since this assignment takes you back to the early days of computing, and such titles as Colossal Cave Adventure.
By the end of the exercise you will have written a simple adventure game with the following features:
The first step in this assignment is to design the game scenario. You should decide on a theme for the game, where the action takes place, and a goal for the player. There are some ideas to help you on page 204 of Objects First with Java (Fourth Edition; page 192 of the Third Edition), but you’ll probably find it more rewarding to develop your own scenario. Write a design document describing the following components of the game:
You will build on the adventure game from Chapter Seven of Objects First with Java in this exercise. You should make sure that you document your code using JavaDoc4comments. Credit will be given for use of good software engineering principles, including but not limited to high cohesion, low coupling, responsibility-driven design, commenting and documentation. You may find that you want to revise your design when you start to implement it. It’s OK to change your design, but you should note such changes in your documentation.
To demonstrate the features of your game, you should submit several screen captures which show the different locations, and sample interactions. This will allow us to see the best features of your game, even if we can’t play it well enough to access all the locations! Alternatively, you may submit a short (max- imum 2 minutes) screen capture video which illustrates a typical interaction with your game. Submit these in a directory called ScreenCaptures.
There are no explicit marks for these files, but they will be used to assess the implementation, so you are likely to lose marks on the implementation if these are not present, or not clear.
There’s no point in making a game if nobody plays it! User evaluation is an important part of game development and good software engineering. In this part of the assignment you will gather feedback about your game from three players, and reflect on their comments.
The course web page for the assignment5contains a PDF evaluation form. You should download this form and ask three different players to complete copies - you can choose anyone to evaluate your game, from any age group and any level of computer literacy. If possible, try to ask members of your target user group to evaluate the game. It should be possible to fill in the forms online, using most popular PDF viewers. If your evaluators are unable to complete the PDF forms themselves, then you may copy their comments on to the form yourself. But, please check that the submitted forms contain all of the information that you intend6.
You should submit the three completed forms, together with a a one page report summarizing the results of your evaluation. List the features which you would like to improve, and bugs which you would like to fix. Place the completed forms and your report in a directory called Evaluation. Please see the comments on the Wiki7about formats for submitted text documents.