Java Assignment
Java Assignment
Assignment 2
Overview
For this assignment, you will logically extend the functionality of the Maze Game introduced during the
lectures, via the modification of the code base as well as documentation and implementation of various
user stories. This is a paired assignment. However, in case of an exceptional situation (if the number
of students in a group is 3), the group should take special permission from the Lecturer.
Assessment Details
You are required to logically extend the functionality of the Maze Game introduced during lectures, via
the modification of the code base as well as documentation and implementation of various user stories.
You will use the Boost methodology discussed during lectures, which requires the use of pair
programming. All documentation, other than the customized game map, must be completed individually.
The code base provided for this assignment has already implemented the “warm up” and some “sets”.
You will be implementing numerous other “sets” for this assignment using the Boost methodology. The
“warm down” stage is not required.
You are free to take ideas discussed during lectures and implement these in your own version of the
code base provided in Moodle for this assignment.
This assignment will be marked according to the functionality of your code, in addition to the elegance
and extensibility of your design and the quality of your documentation.
Ensure that weight restrictions are not exceeded and that the context for each command is
appropriate. For example, purchasing and selling of items should only occur in a shop.
c. Basic combat functions, allowing a player to attack or to be attacked by a non-player
character (NPC). A player may flee combat or continue to attack until such time as one
combatant loses all life points. The end result must not be hard-coded, and neither the
hostile NPCs nor player may have their attributes configured in such a way that the final
outcome is pre-determined. Note that combat functions should only be available when the
player is in the presence of a hostile NPC, and combat may take whatever form is
appropriate for your game context rather than being limited to just hits with a weapon.
d. Collectable items that, when used, restore life points to a player. The number of life points
regained should be determined by the roll of 2 six-sided dice up to the player’s maximum
health. You can elect to allow these to be used during combat if you wish.
3. Write Three Unit test cases for each of the methods you are developing in this assignment.
You can write the test cases in any Java framework, but Junit is preferred.
4. Prepare a short Power-point presentation to demonstrate your software/program as if you are
going to sell this software/program to a prospective customer. The Power-point presentation
must contain the following items:
Do not work with your partner or any other person to complete your individual report. These must
be unique and your own work.
Please note that assignments will NOT be marked and zero marks will be allocated if the individual
statements of personal and partner contributions are not submitted.
Submission
Each student must submit a single zip file which contains all assignment files in the Assignment 2
submission box provided in Moodle. Submission files include a photograph or a scanned image of your
hand-drawn map, code for each deliverable/milestone, presentation file, and an individual report
containing your student number, name, your partner’s student number and name, diagrams, user stories
and contribution statements.
g. Unit test 15
h. Power-point presentation 15
Individual Work
Total 100
Plagiarism:
Plagiarism is the presentation of the expressed thought or work of another person as though it is one's
own without properly acknowledging that person. You must not allow other students to copy your work
and must take care to safeguard against this happening. More information about the plagiarism policy
and procedure for the university can be found at http://federation.edu.au/students/learning-and-
study/online-help-with/plagiarism.