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

computer science


In your code, you must put comments documenting each method (function) as to who wrote that method. (If more than one person worked on a method, you may list all their names.) During evaluation, I may call any student to come and modify some code to do something differently 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: Perilanda Chess You are to implement a Perilanda 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. Perilanda Chess is played on a 7x7 board, like this: The above layout is the initial position of the game pieces. None of the pieces are allowed to skip over other. The Chief can only move one step in any direction. The game ends when the Chief is captured by the other side. The Trident can move any number of steps to the left or right, but only 1 step forward. When it reaches the opposing side of the board, it will turn around. The Excel can move any number of steps diagonally. The Tercel can move any number of steps up and down, or left and right. The Advancer can only move 1 or 2 steps forward each time, but when it reaches the other edge of the board, it turns around and heads back in the opposite direction. (The icon should also turn around when that happens.) After green has moved 3 times, all the green Excels will turn into Tercels and vice versa. Similarly, after brown has moved 3 times, all the brown Excels will turn into Tercels and vice versa. Then they will change again after the 6th move, 9th move, etc. (This makes Perilanda chess different from normal 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. You must use the MVC pattern, since this is a program with a GUI. This means you must not mix code that tells how the game works with the GUI code. This means that if you later put this game on another GUI system, e.g. Android, you will not need to change any model code – you will only have to replace the GUI code. So your view and controller classes must not have any of the game logic – all the game logic must be in the model classes only. 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 us, 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.

Related Questions in computer science category