logo Hurry, Grab up to 30% discount on the entire course
Order Now logo

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Daniel HastingsSociology
(5/5)

843 Answers

Hire Me
expert
Ritesh NagarLaw
(5/5)

517 Answers

Hire Me
expert
Elis PanaseykoEnglish
(5/5)

703 Answers

Hire Me
expert
Glenn BolyardGeneral article writing
(5/5)

938 Answers

Hire Me
Java Programming

You are to implement a Herzig Chess game as a GUI-based Java Application. You do not have to implement a computer player it can just be a two human player game.

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

Object-Oriented Analysis and Design

You may have a maximum of 4 people per team.

In your code, you must put comments documenting each method (function) as to who wrote that method. (If more than one person working on a method, you may list all their names.)

During the evaluation, I may call any student to come and modify some code to do something different in front of me to prove that they actually wrote the sections that their name appears on.

I also have a code plagiarism checker, which can identify code copied from others outside your team. If you copy code from anyone else, I will give you zero. In the past, I have given many zeros because I detected their plagiarism, so please avoid this heartache for yourself. If you give your code to someone else to copy, it is also considered cheating and you can also get zero so do not give your code to anyone else to copy. If you learn from an online source or past year projects, that’s fine, but write your own code. If you are repeating this class, you must start this project again from scratch. Do not use any of your old team’s code from the previous trimesters, or it will also be considered cheating.

The project: Zeelandia Chess

You are to implement a Herzig Chess game as a GUI-based Java Application. You do not have to implement a computer player – it can just be a two human player game.

Zeelandia Chess is played on a 6x7 board, like this:

The above layout is the initial position of the game pieces. None of the pieces are allowed to skip over other pieces except the chevron.

 

The Plus can move vertically or horizontally, up to 2 steps in any direction in a straight line.

 

The Triangle can move diagonally, both up and down, up to 2 steps in any direction in a straight line.

 

The Chevron must move in an L shape, exactly two steps then 1 step right or left. (This is the only piece that can jump over other pieces.)

 

The Sun can move only 1 step in any direction. The game ends when the sun is captured by the other side.

After 3 turns, a Plus will turn into a Triangle, a Triangle will turn into a Chevron, and a Chevron will turn into a Plus. (This makes Zeelandia chess different from all other chess games, because the pieces will transform like that.)

You must use good object-oriented design concepts in designing your program. Subclassing, delegation, composition and aggregation should be used where appropriate.

 

In addition to MVC, you must use design patterns in your code, and you must identify what design patterns you use and where. For example, the board might be a Singleton. The behaviour of the chess pieces might be implemented as a Strategy or State. (These are only ideas; you do not have to use these particular design patterns, and are encouraged to think about which design patterns might be suitable.) You may come to see the lecturers to discuss your design.

 

You should make your program user friendly, with suitable menus, save game, resizable windows, flipping the screen when it is the other player’s turn, etc. For save and load game, the game should be saved into a text file so that it’s human-readable.

You must document every class and method. You must practice proper indentation. Marks will be deducted if you do not do this.

Please see us early if you have problems – whether it is problems understanding what you need to do, or problems with team members who are not doing their work. The earlier you see me, the better chance you’ll have of solving the problems. If you wait till the last week before the due date, it’ll likely be too late to fix the problems.

Project Team Registration

You create your group on MMLS. If there is any discrepancy between the team members listed in the peer review Excel files and the MMLS team members, you will be liable for any loss of marks.

If you find as the project progresses that some people are not contributing or problematic in any other way, please contact your lecturer immediately so that remedial action can be taken before it gets too late. If you do not do so, you will be liable for any loss of marks.

Related Questions

. The fundamental operations of create, read, update, and delete (CRUD) in either Python or Java

CS 340 Milestone One Guidelines and Rubric  Overview: For this assignment, you will implement the fundamental operations of create, read, update,

. Develop a program to emulate a purchase transaction at a retail store. This  program will have two classes, a LineItem class and a Transaction class

Retail Transaction Programming Project  Project Requirements:  Develop a program to emulate a purchase transaction at a retail store. This

. The following program contains five errors. Identify the errors and fix them

7COM1028   Secure Systems Programming   Referral Coursework: Secure

. Accepts the following from a user: Item Name Item Quantity Item Price Allows the user to create a file to store the sales receipt contents

Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip

. The final project will encompass developing a web service using a software stack and implementing an industry-standard interface. Regardless of whether you choose to pursue application development goals as a pure developer or as a software engineer

CS 340 Final Project Guidelines and Rubric  Overview The final project will encompass developing a web service using a software stack and impleme