2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1
CAB202 Assignment 1, Exercise 1: Assignment 1
Results so far:
Requirements:
Return to Exercise List »
No submission has been made so far. (0%).
Assessed weight: 0%. This item is not assessed. You may continue to attempt this item until you reach 30 submissions. So far, you have made 0 submissions.
CAB202 Assignment 1
Due Date: 23:59:59 (AEST) Monday 10th of September 2018 Marks: 30 (30% of your final mark)
For this assignment, you will be writing a computer program that emulates a player moving through a series of static and moving blocks. The aim of the player is to move/jump between blocks while gaining points and lives.
https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 1/12
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1 Assignment Specifications This assignment is divided into different sections, however you may attempt the sections in any order you see fit. You may attempt other sections even if you have not fully completed the Basic Functionality. You will submit documentation as per the instructions given below and you will be marked on a combination of your documentation and your program. You will need to do both well to get the full marks. If you submit code without the specified documentation you will be marked down, conversely, if you submit documentation for aspects you have not implemented or documentation that does not accurately reflect your program, you will be marked down. If your program crashes, you will be marked for the sections your marker was able to test before the program crashed. Please test your code regularly to minimise your chance of this happening. You can make multiple submissions to AMS and you are encouraged to do so. Basic Functionality (15 Marks) 1. The display screen is 5 characters high, located at the top of the screen, is entirely visible at all times (i.e. never occluded in any way) and displays: a. Student number, b. Lives remaining, c. Playing time in minutes and seconds format as mm:ss, d. Score, https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 2/12 |
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1 e. Border that separates the display screen from the game area.
https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 3/12 |
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1 Advanced Functionality (7 Marks)
Advanced Graphics (4 Marks) 13. The treasure has some sort of animation. 14. The player’s image changes when: a. The player falls or when they jump, b. The the player is moving left, c. The the player is moving right, 15. The player has some sort of animation every time the player respawns. https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 4/12 |
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1 Advanced Coding Practices (4 marks)
Documentation You must document all the functionality you have implemented for full marks in each criteria. Your documentation must be clearly written, formatted appropriately, follow the structure in the template, and include: A cover page with your full name, student number and assignment date, Use the templates below, and/or the Word document provided on Blackboard, for your documentation. Table 1
https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 5/12 |
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1
Table 2: Test Plan Example
Submission Information Important! 1. The assignment will be graded by strict reference to the criteria listed below. https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 6/12 |
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1
Deliverables Submit a succinct and well-presented written report which accurately describes your program and how you have tested it. You may refer to QUT Cite Write (https://www.citewrite.qut.edu.au/write/report.jsp) for information on the general guidelines for writing a report. For convenience we provide a word template. The report is your primary assessable item. The report is the medium through with you will convince your tutor that the program you have written is in fact a solution to the task that has been set. It is not a copy of the source code of your program. It needs to contain enough information to convince an intelligent reader (who may not https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 7/12 |
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1
necessarily have a background in software engineering) that you have done what you claim to have done. The reader should be able to see easily in the report how you have tested the respective features, and whether they work as claimed.
The report should contain one section with the summary of the features that you implement and
one section with the test plan and results. Refer to the report structure template in the specification in AMS and the Word document on Blackboard.
Implementation Summary.
Provide indication whether the requested feature was fully, partially or not implemented.
Do not include a copy of the source code in your report.
Test plan and results.
The most appropriate format for this is the template provided. Do not submit screenshots of the program or code.
Some features may require several tests.
Your mark for each feature will be awarded based what you document that you have done. Make sure you cover all relevant features in your documentation and implementation, and supply evidence of comprehensive testing to back it up.
2. Source code submitted via AMS
Submit full source code for your implementation into AMS using this form.
A working implementation of your program which can be executed by your tutor running the CAB202 Portable Cygwin software is required. Therefore, your program must compile in AMS and the resulting executable program must work as stated in your report.
Please Read
NO REPORT: NO MARKS.
NO COMPILE IN AMS: NO MARKS.
NO RUN ON STANDARD MACHINE WITH PORTABLE CYGWIN: NO MARKS.
Marking
The assignment is worth 30% of your total grade in this subject, and it is marked out of 30. The breakdown of marks is outlined in the previous section. The following points should be noted about marking:
1. If your code does not compile when submitted to AMS, the mark awarded will be 0. Give yourself plenty of time to get the basics right.
Submit Early. Submit Often.
https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 8/12
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1
- If the program has been implemented via a framework other than the ZDK without prior written permission from the Unit Coordinator, the mark awarded will be 0.
- If the program fails with segmentation faults or other fatal errors, marks will be awarded for the features that were observed prior to the crash.
No effort will be made to work around the crash, nor will we debug your code to make it compile or run.
Your program must compile and run well on any modern desktop machine equipped with a Unix-like environment.To this end, part of your job is to test the program in a variety of environments, including (as a minimum) QUT lab machines using the CAB202 portable Cygwin environment.
“It runs fine on my computer!” may be true, but it is largely irrelevant if the program crashes when executed on another machine. Such an excuse will not be accepted. - It is your responsibility to implement each feature sufficiently well that it is readily detected through normal operation of the game. Any feature that is not apparent through normal play will be deemed to be unimplemented.
- We require tutors to adhere to a strict time limit of 3 minutes play time when marking each submission. Any feature that cannot be assessed in that time will be deemed to be unimplemented. Therefore you must avoid defects in game dynamics such as extremely fast motion, extremely slow motion, inconsistent control settings, premature program termination, or other properties that render the game unfit for use.
- It is better to implement some of the features extremely well than to try to do everything and deliver a substandard product.
- Penalties will be applied if the code exhibits general defects or undesirable behaviour not otherwise covered in this document. This includes but is not limited to such things as:
Errors in object motion, such as objects/player jumping more than one character position per frame;
Objects moving outside their permitted area;
Failure to clear the screen appropriately between updates;Collisions involving invisible or non-existent objects;
Disturbing or flashing display;
Failure to purge the keyboard buffer at appropriate times.
Gratuitous errors in program structure, including but not limited to: inappropriate use of recursion; use of inappropriate data structures such as linked lists or binary search trees.
Notes:
For purposes of AMS assessment, this activity has been classified as non-assessed. This does not mean the assignment is non-assessable – it means that the system is not able to assess the assignment automatically. AMS will not enforce a hard close-down for submissions, however in line with QUT policy, late submissions without an approved extension will not be marked. If special circumstances prevent you from meeting the assessment due date, you can apply for an extension (https://www.student.qut.edu.au/studying/assessment/late-assignments-and-
https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 9/12
https://sefams01.qut.edu.au/CAB202/Exercise?TopicNumber=6&ProblemNumber=1 10/12
2018/8/30 CAB202 – CAB202 Assignment 1, Exercise 1: Assignment 1
Submitted files:
extensions) before the assignment due date. If you don’t have an approved extension you should submit the work you have completed by the due date and it will be marked against the assessment criteria.
Use “Attach file” to submit your solution. You may attach your solution in one C file or, if your solution is in multiple C source files and header files, you can attach a single copy of each file.
!!! Do not include more than one version of any file !!!
Do not attach multiple versions of your solution.
Files with names ending with a pattern other than .c or .h will be rejected. Please ensure that your naming convention takes this limitation into account.
A maximum of 30 files may be included in each submission. This consists of the built-in “submission.c” document, plus 29 attachments.
When you have attached all required files, press the “Submit” button.
Source files for each submission will be placed in a single distinct folder on the server, and compiled with the following command:
gcc *.c -std=gnu99 -Wall -Werror -I../ZDK -L../ZDK -lzdk - lncurses -lm -o a1_n9999999
where n9999999 represents your student number.
Note that the wildcard pattern *.c will compile all files with a name that ends with the extension
.c in the present working directory.
Therefore, you should organise your files in a folder alongside the ZDK folder and use this command to build your solution. Make sure there are no additional files (such as old versions of your program) in your work folder which may cause unpredictable build errors and/or run-time behaviour.
It is your responsibility to use this compile command locally to verify that your project will compile before submission.
If you are using the #include directive to connect multiple C source files, the #included files should be renamed to have an extension of .h to avoid errors arising from multiple definition of functions. However, in general you should not include anything other than .h files in the first place.
If compilation is successful, AMS will verify that your program has compiled successfully, and then return. Your program will not be executed because there is no meaningful test that can be performed automatically on a program such as this. The score allocated by AMS for this task is not your mark for the assignment.
Attach file: