PROG2370: Game Programming with Data StructuresFINAL PROJECT SPEC
PROJECT NAME
There is no restriction in naming your project. It is preferable to use the name of the
game you are going to make as your project name.
RUBRIC
Please check the associated Excel file named “Final Project Marking Rubric.xlsx”
TECHNICAL ACHIEVEMENTS
•
•
Please note that your project will be judged subjectively based on complexity.
Fulfilling all criteria in a simple game and a complex game will not be marked in
the same way. Please check the marking rubric Excel sheet for detailed marking
criteria.
You will receive poorer marks if you only submit hands on programs as your
project without adding extra features. If you are not sure, please clarify with your
instructor.
IMITATING EXISTING APPS
It is OK to “white room” an existing app. In other words, you can study an existing
app for which you do not have source code and write a new app that mimics the
original app.
SUBMITTING YOUR PROJECT:
•
•
•
•
Make a folder with the following naming convention:
o FirstnameInitialLastnameInitialFinal
o E.g., if your name is Jason Bourne, your folder name will be JBFinal.
The Folder will contain the following:
o The complete solution of your final project (Please note there is no rule for
your solution name, preferably the name of the game you are making.)
o A folder with the Oneclick installer. (for instructors to easily access)
o A folder with the game design documents (docx file)
Make the folder a zip file. Follow the similar naming convention for the zip file: If
the student’s name is Jason Bourne, the zip file will be named JBFinal.zip. If two
students are involved (Jason Bourne and Jack Ryan) the zip file will be named as
JBJRFinal.zip
Upload the zip file to eConestoga. (Just like submitting an assignment)
APPENDIX
GAMES SCENES
Page 1 of 3
PROG2370: Game Programming with Data Structures
You may have as many scenes as possible in your games. However, you are required
to have at least 4 scenes:
❖ Start scene: shows the menu
❖ Play/Action scene: actual game is played.
❖ Help scene: Shows information about how to play the game, and shows the
required key presses and/or mouse clicks to play.
❖ About scene: Shows the developers’ (You are the developers of your games)
information.
SCORING SYSTEM
Many puzzle solving and survival games utilize time-based scoring systems, which
indicates how long the player played the game.
Event based scores are calculated based on events, such as in a shooting game where
the player shoots the enemy ships, the score can be the number of ships destroyed by
the player. Another example is player’s health decreased based on the number of hits
it is taking, increased based on retrieving bonus health/life.
Some sort of score must be displayed on the play/action scene.
MORE THAN ONE LEVEL
Having more than one level is an advanced feature which is aimed to boost your grade.
Thus, it requires a bit of work. Usually, you will be required to add a new feature that
was not present in the previous level. You may need to create new class/property/field
to add the feature. Changing the value of a variable of an object to vary it to some
extent may not be considered as new level.
Example:
❖ Your enemy ships move with a certain speed in level 1. If you try to make level 2 by
just increasing their speed, it will not be considered as level 2. But if you add
asteroids then it may be considered as a new level.
❖ You have 5 enemies in level 1. If you try to make level 2 by just increasing the
number to 10 (for example) it will not be considered as level 2. But if you add a new
enemy type with a different feature (e.g., new weapon, attack power, different
range, etc.) which is not present in level 1, then it could be considered as a new
level.
HIGH SCORE
❖ High scores must be saved to a file.
❖ At least a list of 5 players must be saved.
❖ You must save at least the names of the players and their scores in the file.
Page 2 of 3
PROG2370: Game Programming with Data Structures
❖ Players must be sorted based on some criteria, e.g., a time-based survival game
should sort players from high to low time. On the other hand, a time-based puzzle
solving game should sort players from low to high time.
GAME SAVE AND LOAD
❖ If you want to fulfil this criterion you must save the game progress to files and have
the capability to load and continue playing.
ANIMAITON VS TRANSFORMATION
Translation (Moving a sprite from one location to another), Rotation, and Scaling
(resizing) are classified as transformation processes when applied to Sprites (images).
These are NOT animation.
Multiple sprites on a sprite sheet drawn quickly to create an illusion of movement IS
considered as animation.
INSTALLER ICON
MonoGame project template contains the default MonoGame icon. This default icon is
placed in the Windows Start menu when the game is installed. Before the installer is
created you must replace this icon with your own icon. Otherwise, marks will be
deducted according to the rubric.
GAME REPORT
You must submit a report on your game design. It will be a document file containing
at least the following sections:
❖ Description and features of the game – one/two paragraphs.
❖ Class diagram.
❖ Reference to the resources used. (Online references, links and URLs used to get
media files, images, etc.)
Page 3 of 3
Criteria
1
Proper menu with navigation system. Menu contains At
least 4 Game scenes (start, about, play/action, help)
Menu navigation does not work and/or
missing 2 or more scenes.
0
2 Input system
3 Audio- sound effects/music
Program does not interact with any input
system. (0)
0
Program does not have any audio
0
4 Animation (See appendix for details)
Program does not have any animation
0
5 Scoring system (See appendix for details)
Program does not have any score
0
6 One click installer (See appendix for details)
No installer
0
7
Game report (Description, Class diagram, references).
Please see the appendix section for detail.
Missing
0
8 Game end
Missing game end scene
0
9 Programming standards
No standards followed
0
Advanced features – 1. More than one level 2. High score
10 leaderboard. 3. Game Save and load. 4. Other (discuss
No advanced features
with your faculty before implemnting) etc.
0
Total achieved before deduction
Final marks
Menu navigation somewhat works and/or
missing 1 scene.
Menu nativation works and all 4 scenes
implemented
10
15
Program interact with either keyboard or
mouse (4)
4
Program interact with both keyboard and
mouse (5)
5
Program has background music but no
other sound effect
Program has background music and sound
effects
2
Program has single animation happening
automatically
4
Program has more than one animation
sequences happening automatically
2
4
Program has only one time based scoring
system
6
Program has only one event based scoring
system
8
One click installer submitted but fails to
install.
3
Documentation is missing one or more
sections.
6
One click installer submitted, can be
installed, with missing features(default icon
not changed and/or Authors name not
provided)
10
All sections are present with some
inaccuracies in the class diagram, such as
missing/misleading relationships, classes
7
Game end scene shows up but missing final Game end scene shows up with final score.
score.
User can only go back to main menu
5
8
Few standards are followed, significant
amount of standards not followed.
7
One advanced feature implemented
7
Most of standards have been followed,
occationally a few are missing.
9
two advanced features implemented
10
Achieved
Menu navigation works and 6 or more
game scenes implemented.
20
20
5
Program hase more than one background
music and more than one sound effects
5
5
Program has more than one animation
sequences triggered by different events
(collision, user interaction, etc.)
5
5
Program has advanced scoring system with
multiple attributes
10
10
One click installer is created professionally
with proper user defined icon, author
information
15
15
Documentaion created with care and well
organized, flawless class diagram.
10
10
Game end scene shows up with final score.
User has option to navigate back to main
menu or exit game.
10
10
All standards have been followed
throughout the project.
10
10
10
100
#REF!
Completed
with a high
level of
Complete
accuracy,
Complete
Complete Complete
d with
exceptional
d with a
d with
d with
minimal
insight and
lact of
accuracy, accuracy,
accuracy,
attention to
accuracy,
and
strong
lacking in
detail in
insight
enough
insight
sufficient
order to
and detail
insight
and detail
insight
well exceed
to meet
and detail in order to
and detail
industry
industry
to meet exceed
to meet
standards.
standards.
industry industry
industry
Menu
Menu
standards. standards.
standards.
navigation
navigation
Menu
Menu
Menu
works and
does not
nativation navigation
navigation
menu
work
works and works and
somewhat
nativation
and/or
all 4
5-6 game
works
contains 2
missing 2
scenes
scenes
and/or
levels of
or more
implemen implemen
missing 1
depth. 7 or
scenes.
ted
ted.
scene.
more game
scenes
implemente
d.