Professional Documents
Culture Documents
CM0427 Assignment 2012
CM0427 Assignment 2012
module): Coursework Title: Average Study Time Required by Student: Introduction to Multimedia Programming CM0427 Rob Davis 2012-2013 100% System Building 40 hours
Dates and Mechanisms for Assessment Submission and Feedback Date of Handout to Students: 11th March, 2013 Mechanism for Handout to Students: Using eLP Assignment Handler Date and Time of Submission by Student: 4.00pm 6th May 2013 Mechanism for Submission of Work by Student: Assignment handler on eLP. Date by which Work, Feedback and Marks will be returned to Students: Normally within three working weeks of the submission date Mechanism for return of assignment work, feedback and marks to students: Via eLP
Table
of
Contents
1
CM0427
Programming
Assignment
..............................................................................................
3
1.1
Background
..............................................................................................................................................
3
1.2
The
Task
...................................................................................................................................................
3
1.2.1
Components
......................................................................................................................................
3
1.2.2
Program/Game
Marks
[76
marks]
....................................................................................................
4
1.2.3
Code
Comments
[16
marks]
..............................................................................................................
5
1.2.4
Design
Document
[8
marks]
..............................................................................................................
5
1.2.5
The
Completeness
Declaration
..........................................................................................................
5
1.3
What
to
submit
........................................................................................................................................
6
1.4
What
not
to
submit
.................................................................................................................................
6
1.5
How
to
submit
.........................................................................................................................................
6
1.6
Feedback
..................................................................................................................................................
7
Page 2 of 7
1.1 Background
On this module we have been exploring how to understand and solve programming problems and then how to implement solutions using the object-oriented programming language ActionScript 3.0 inside the Adobe Flash CS5 environment. This assignment is your opportunity to demonstrate your ability in this area using a simple game as the vehicle.
Between one and five supplementary external class (.as) files containing code to control specialist client classes as needed. If you find you need to implement more than five other classes then seek advice from your tutor prior to submission because it is likely that either you are trying to make the game too complex or that you are trying to re-engineer one of the many Flash game examples available on various web site tutorials. Any arrays, though they are frequently used in programming, in this module we have used Sprites and DisplayLists instead, this is the technique you should use; Timeline or frame-based scripting. Because this module has been focusing on object-oriented programming using external class files you must not submit any timeline, or frame-based scripting. Programs that use timeline or framebased techniques instead of external class files will score zero.
1.2.2 Program/Game Marks [76 marks] Your game should display as many of the following features as possible (worth up to 4 marks each): 1. Use of ActionScript 3.0 external class-based programming (i.e. no timeline/frame-based scripting). 2. A controller class (document class/program entry point). 3. Use of Library symbols, or drawn graphics, linked to external class files. 4. Data hiding I: Good use of property scope that is, proper use of access modifiers (public, private, etc.) and declaring properties to have the narrowest scope possible (recall that properties (variables) can be declared inside or just before a construct in which theyre used, inside a method, or inside a class. 5. Data hiding II: Using getter and/or setter methods as appropriate. N.B. simply including examples provided in the course materials will not score high marks. If you are going to re- use one of the course examples, then make sure it is changed to fit the new situation in which you have applied it and that its inclusion makes sense in the context of the overall program. 6. Use of inheritance through creation of ancestor and descendant classes. 7. Use of polymorphism through overriding. 8. Event handling I: Event-based animation and motion (using either the ENTER_FRAME event or timer events). 9. Event handling II: use of timers for non-animation purposes. 10.Event handling III: use of custom events. Up to 2 marks for custom events using a simple string and up to 4 marks for custom events using a class. 11.Collision detection: for example, between game objects (higher marks) or testing collision of an object with a screen boundary (lower marks). 12.Keyboard and/or mouse control of game objects: simply making an object track the X and Y co-ordinates of the mouse will not score highly. Higher marks will be given for responding to clicks, button presses, etc. 13.Information display (via text fields). 14.Data input (via text fields). 15.Use of audio (higher marks for using SoundChannel objects).
CM0427:
Introduction
to
Multimedia
Programming
(2012-13)
Page
4
of
7
16.Ability to replay the game without having to re-run the .swf file. 17.Deletion of objects. For example, in a shooting game when a bullet disappears off the stage its reference should be removed from the display list and all other references to it set to null. 18.Implementing a win condition for the game (the game ends because some objective has been achieved by the player). 19.Implementing a cheat to allow the win condition to be reached easily. We strongly advise that you develop your assignment in parallel with your work in the classes. Some of the above requirements will not make sense until you reach them in the class sessions. Just a quick word about the last two a win condition allows for games in which there is an objective, and when that objective is reached there should be recognition of that fact. The cheat is there to allow us to assess the win condition. If you have a win condition which is difficult to reach we will not be able to mark it! There are 4 marks for each of the elements outlined above. If you implement all 19 elements this gives you a maximum of 76 marks. Any fully-working element will receive up to 4 marks (depending on how achieved), and we may assign 03 marks for partially working elements or for code that, though it works, is poorly designed, badly organised, unsafe, badly formatted, is inefficient or is poorly implemented. 1.2.3 Code Comments [16 marks] Up to 16 marks are available for comments included in your code. Good code commenting can make the difference between a program that is easy to follow and one that is very hard to understand. Make sure your ActionScript code is supported by clear, full, and accurate comments/comment blocks which explain the purpose of the code. Comments can be tagged to individual lines/statements at the lowest level, but you should also aim to include comments explaining the purpose of each function and class. Also, class- and function-level property (variable) declarations can also benefit from comments. That is, if you declare a variable, include a comment to state its role 1.2.4 Design Document [8 marks] Up to 8 marks are available for submitting appropriate design documentation. There is no set requirement for this other than we want some evidence of design work underpinning the code. The most likely documentation would be the techniques taught in the text book, namely pseudo-code, flow charts, or structure diagrams. But we mostly want to see how you designed your program. Whatever you used to do the design will form the basis of your design documentation. Some people might even do this with a combination of the above and some storyboards to link it all together. The design documentation should really be done before and while the game is being made, it should not be a description of the game done after the event. 1.2.5 The Completeness Declaration Please see Blackboard to get an electronic copy of the Completeness Declaration form on which you should mark which elements you have implemented. Dont simply tick everything only tick the items youve included in your program. The completeness declaration is not only to help us mark your work but an indicator that you know what youve done and it should help focus your attention to addressing the requirements specification.
Page 5 of 7
Note, without this form we will not be able to mark your work properly as we will not know what aspects you are claiming to have implemented. We will only award marks for those features listed as completed in the declaration. No declaration = no marks.
Page 6 of 7
Now you need to add the .zip file you have created. To add the file find the item labelled Attach local file and click on the Browse... button to its right. Select the.zip file you wish to upload and press OK. Once you are happy you have attached the correct file go up to the Comments box. Here you enter any extra comments you wish to make. Make sure you read the comment that is already there on plagiarism by clicking on the Submit button you are affirming that this statement is true. Do not delete this comment. When you have attached your .zip file and have made all the comments you wish to make you can go ahead and press the Submit button. Remember, if you need to you can press the Save button and come back later to finish the submission process. However, please note that the work will not be officially submitted until you have pressed the Submit button. We cannot see your work and mark it until you press the Submit button.
1.6 Feedback
After your work has been marked (out of 100) individual feedback sheets will be made available via Blackboard. These will show the mark awarded and some comments on the work. Your actual work will not be returned so make sure you keep a backup copy of your work for your own reference.
Page 7 of 7