|
|
Your score |
Max score |
Coding style (marks may be awarded independent of program
functionality)
|
|
|
|
Appropriate use of white space
(source code) |
|
2 |
|
Self-documenting variable,
constant and function names. |
|
3 |
|
Use of named constants as
appropriate |
|
4 |
|
Boolean and mathematical
expressions are simple and easy to read |
|
4 |
|
Deals with
errors in a helpful and positive manner (repetition notes slide
#49 - 52) |
|
2 |
|
Penalty: Global variables
employed (aside from the debugging tools) |
|
-4 |
|
Penalty: functions aren't
written according to principles taught in lecture (decomposition notes
slide #46 - 47) |
|
-6 |
|
Penalty: functions not
employed in the assignment, maximum grade point that can be awarded is
1.7 regardless of other style and functionality considerations) |
|
|
|
Sub total
|
|
15
|
Documentation (marks may be awarded independent of program
functionality)
|
|
|
|
Header documentation contains
overall description of program. |
|
1 |
|
Some form of versioning system
is demonstrated in the header documentation |
|
1 |
|
Provides a list of the
specific program features that were implemented |
|
8 |
|
Lists the program limitations |
|
1 |
|
Each function documented (see
decomposition notes slide #72 for details) |
|
3 |
|
Penalty: Name and tutorial
section not included at top of program |
|
-4 |
|
Sub total
|
|
14
|
Functionality (only qualify for these marks if the program runs)
|
|
|
|
Program provides sufficient
instructions in the introduction |
|
2 |
|
Program displays a conclusion |
|
1 |
|
Erebor is initialized with the
correct starting positions |
|
2 |
|
Program displays numbered grid
matching the screenshot in Figure 2 |
|
4 |
|
Program tracks and displays
Bilbo's key stats: hit points and 'gold on hand' along with game world |
|
2 |
|
Displays movement menu
correctly |
|
2 |
|
Game repeats until the player
quits (negative value at the main menu) |
|
2 |
|
Cheat menu can be invoked from
the main menu and player can properly exit the cheat menu |
|
3 |
|
Debug mode can be toggled and
debugging messages employed |
|
6 |
|
Invulnerability mode
implemented |
|
4 |
|
Program can handle invalid
types of input (non-numeric when numeric expected) |
|
2 |
|
Bilbo can move (maximum
of 8 + 4 + 4 + 4 = 20 marks) |
|
|
|
|
Bilbo can move onto any
adjacent square (or stay at current location): 8 marks |
|
|
|
|
Bilbo can move only onto empty
squares: additional 4 marks (needs to be able to move first) |
|
|
|
|
Bilbo will take damage from
burning squares: additional 4 marks (needs to be able to move first) |
|
|
|
|
Bilbo can pick up gold:
additional 4 marks (needs to be able to move first) |
|
|
|
Mode 2 implemented
(main hall randomly bombarded by fireballs & Bilbo can take damage) |
|
8 |
|
Mode 3
implemented, comes into play after mode 2 (fire moves up tunnel & Bilbo
can take damage) |
|
10 |
|
Game can detect
lose game condition & suitable message display during game conclusion |
|
6 |
|
Game can detect
when Bilbo exits Erebor & suitable message display during game
conclusion |
|
6 |
|
High scores
tracked (maximum of 6 marks) |
|
|
|
|
Writes current score to a
file: 4 marks |
|
|
|
|
Writes high scores to the file
according to rules specified in the game: 6 marks |
|
|
|
Graphical display
of game world |
|
4 |
|
Sub total |
|
84 |
OVERALL ASSIGNMENT TOTAL
|
|
119
|
Grade Point for assignment
|
|
4.3
|
*To get marks for these features your program needs to display these values
onscreen