Design and implement a custom environment for your maze game

Assignment Help Computer Engineering
Reference no: EM131660575

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.

Learning Outcomes Assessed

The following course learning outcomes are assessed by completing this assessment:
- Understand the significance of detailed project planning and control, good communication and documentation and the use of appropriate tools in order to provide a quality product
- Understand the distinction between software engineering and programming, and thus the distinction between a software configuration and a program.
- Understand the methods and techniques involved in designing, implementing and maintaining an information system, in particular using an object-oriented approach
- Understand how unit tests are used during software development to assist agile programming techniques such as refactoring
- Work together in small teams to complete a fully documented, detailed design and implementation of a small business information system
- Demonstrate skills in designing and implementing an information system
- Be familiar with Agile Programming tool Jira

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 quality of your documentation.

Note: It is recommended that you spend some time familiarising yourself with the provided code base prior to beginning any work on this assignment. You should start by spending some time exploring the structure of the code to gain an understanding of the roles each class plays within the system

Assignment Requirements

In Pairs:

1. Design and implement a custom environment for your maze game. This requires producing your own unique hand-drawn map of the maze game environment and changing the HardCodedData file to reflect the locations and items on your map. At least M (M>5) locations, including Exactly N (N>2) shops, must be included, as well as enough items to allow for proper testing of the game functionality. For example, there must be sufficient items to verify that a player cannot collect an item if the weight restriction has been met. Note: you should not retain the original locations or items from the provided code base in your version of the game.

2. Design your program in such a way so that you can change the configuration (values for M and N) in run-time, i.e., the program should be capable of changing these two values while it is in execution. Add sufficient validation so that M and N shouldn't

3. Implement each of the following deliverables / milestones:
a. functionality as detailed in Lab 7 and Lab 8
b. commands to manage the various item management commands:
i. listItems, getItem and dropItem, to allow listing of all held items, collect a new item and drop a held item.
ii. equipItem and unequipItem, to wear / wield a held item, and to stop wearing or wielding an equipped item.
iii. purchaseItem and sellItem, to buy an item from a vendor and to sell an item to a vendor.
iv. getmazestatus to show the status of the maze (i.e., value of M and N)

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.

3. Write two 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 Jira account (one account for a team), and create Tickets (story) that you are planning to do. A jira ticket/story is a small job that is assigned to any of you and there is an estimation of how long it will take time to finish the job. You can divide the jira board into 5 vertical sections: Ready to Development, In Development, Ready to Test, In Test and Done. Once a ticket is ready to move from one column to another, move it accordingly. Provide the user name and password in the report so that the Lecturer can verify your development activity directly from your Jira account. Prepare a nice summary of your Jira activity which will include the screenshot of your Jira board and the burndown chart.

Individually:
1. Prepare an individual report, to be submitted as a Word document or a PDF, which includes:
a. The student number and name of each person on your team (including yourself)
b. User stories for each of the deliverables / milestones
c. Class diagrams for Lab 7 and Lab 8
d. Sequence diagrams for two (2) of the item management commands, taken from separate groupings (i.e. you will not get credit for both getItem and dropItem as they are both in group i)
e. A statement of your own personal contribution to the assignment
f. A statement of your partner's contribution to the assignment.

Reference no: EM131660575

Questions Cloud

What is the value of the stock : A firm is expected to pay a dividend of $2.95 next year. Financial analysts believe the stock will be at their price target of $115 in two
Journalize the entries to record the february transactions : Question - Jounralize the response. Journalize the entries to record the February 23, October 6, and November 4 transactions
What am i trying to achieve and will my message be resisted : What am I trying to achieve? How will my audience react to what I am trying to achieve? Will my message be resisted?
What is the average length of the waiting line : At a border inspection station, vehicles arrive at the rate of 8 per hour in a Poisson distribution. What is the average length of the waiting line?
Design and implement a custom environment for your maze game : ITECH7201 - Design and implement a custom environment for your maze game and Write two Unit test cases for each of the methods
The organization contributed to the quality movement : How has the organization contributed to the quality movement. Examine advantages and disadvantages of each organization.
Number of sole proprietors who are sellers of home products : Faraway Corp. is considering entering into two contracts, one with a joint stock company that distributes home products east of the Mississippi River.
How do you best determine its credibility and reliability : When reviewing a journal article, how do you best determine its credibility and reliability. Why is it important to determine the strength of evidence
Calculate the stockholders equity on december : Total Stockholders' Equity as at January 1, 2013 is composed of: Common Stock $30,000 Retained Earnings $31,000. Calculate the Stockholders' equity on December

Reviews

len1660575

9/27/2017 5:26:21 AM

Individual Work Individual report containing team details and: a. User stories for each of the deliverables / milestones 2 b. Class diagrams for Lab 7 and Lab 8 1 c. Sequence diagrams for two of the item management commands from different groups. 2 Total 20 Feedback A completed marking guide will be uploaded in Moodle and marks uploaded to fdlGrades within 2 weeks of assignment submission.

len1660575

9/27/2017 5:26:12 AM

Marking Criteria/Rubric Student ID Partner ID Student Name Partner Name Pre-Requisites For Marking • Statement of personal contribution and partner’s contribution Task Available Marks Student Mark Paired Tasks a. Functionality as detailed in Lab 7 and Lab 8 b. Keeping the provision of taking the values of N and M while program is in execution c. Hand-drawn map detailing custom game environment, implemented in the game, with at least 6 different locations including at least 1 shop, and items to allow for full testing d. Item management commands: i. listItems / getItem / dropItem ii. equipItem / unequipItem iii. purchaseItem / sellItem iv. getmazestatus e. Appropriate management of weight restrictions f. Implementation of combat sequences between a player and hostile NPCs, including variable outcomes and the ability to flee. g. Unit Tests h. Jira Activity 1 1 1 1 1 1 1 1 1 2 4

Write a Review

Computer Engineering Questions & Answers

  Guassian function and digital transmission technique

Prove the following properties of Gaussian function:Explain four benefit and one de-merits of utilizing the digital (rather than the analog) techniques for transmission of the voice-telephone signals.

  Design an entity relationship diagram

modify an Entity Relationship Diagram for the information content of your textbook.

  Create class named counter that has one string field

create a Main class that has the normal main method that you need to start the program. The main method should ask the user for the name of a local input file.

  Can you give the corresponding e-r diagram

For each following statement, please give the corresponding E-R diagram (entities and relationship), and the structural constraints (Cardinality and Participation)

  Explain the different types of raid

Explain the different types of RAID, and elaborate on how each type differs:

  Database and characteristics of database

Explain the Database and describe the four characteristics of the database? Explain the Relational Database and generate a relational database for 5 employees.

  Perform the operations involving 2''s complement numbers

Perform the subsequent operations involving eight-bit 2's complement numbers and indicated whether overflow occurs.

  Create both these versions of your design in adobe animate

Using your multi-page presentation, create both these versions of your design in Adobe Animate. The point of this task is to present the same content to users in two different formats, and to evaluate which form of interaction they prefer.

  Differentiate the linker and the compiler

Which of the following components is responsible for loading the initial value in the program counter for an application program before it starts running.

  How to produce a wired and wireless network plan

How to produce a wired and wireless network plan

  Write paper based on your crowdfunding research

Write a 4- to 5-page paper based on your crowdfunding research, select one that you consider to be an innovative technology or an innovative use of an existing technology

  Write down a program to solve linear system

Write down a program to solve linear system

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd