Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

COURSEWORK ASSESSMENT SPECIFICATION Module Title: Module Number: Module Tutor Name(s): Academic Year: % Weighting (to overall

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

CM0427: Introduction to Multimedia Programming (2012-13)

Page 2 of 7

1 CM0427 Programming Assignment


This assignment is designed to assess the learning objectives of the module, that a student should be able to: 1. Formulate solutions to a number of basic programming problems using appropriate procedural and object-oriented techniques; The assignment consists of a portfolio of assets, each of which should be accompanied by the requested documentation. Complete all the tasks and please note that: Sources of material (other than module teaching materials) must be referenced. This includes sound and image assets. References should be included within the specified written work (but do not contribute to the word count). Your assignment must be submitted electronically via the Blackboard Assignment Handler tool (instructions are given at the end of this document). Work submitted in any other way will not be marked. Do not attempt to hand in your work at the School Office. This is an individual assignment and you are reminded that the University regulations for copying, collusion and plagiarism will apply. See the University web-site (http://www.northumbria.ac.uk/sd/central/ar/qualitysupport/assess/assproc/as sdocstud/) for further information.

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.

1.2 The Task


This assignment requires you to design, code, and test a Flash game written in ActionScript 3.0 and implemented through external class files (i.e. not frame-based scripting and not using earlier versions of ActionScript). Please note, we are marking your problem solving and programming skills, not the complexity of the game. For the sake of your own sanity, keep the game simple. The game should not be a version of any case studies used as teaching examples by the module team. You may clone a classic game if you like (like Tetris, snake, Asteroids etc.). By `clone' we mean that you use the game idea but design and construct the code yourself. You may not simply type in one of the many online Flash tutorials or games (this includes copying code and changing variable names, function names, etc. If in doubt, ask your module tutors. 1.2.1 Components 1.2.1.1 Your program should include: One Flash movie file (the one with the .fla extension); One ActionScript 3.0 document class file, that is, a file with a .as extension containing the main document class (linked from the .fla file) which runs when the program is run;
Page 3 of 7

CM0427: Introduction to Multimedia Programming (2012-13)

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.1.2 You program should not include:

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.

CM0427: Introduction to Multimedia Programming (2012-13)

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.

1.3 What to submit


In summary, you should submit in a single .zip file the following items: 1. The root Flash .fla document. Make sure you have used Flashs built in compression feature to reduce the file size before submitting it. 2. The ActionScript 3.0 (.as) file containing the document class that is linked to the .fla file; 3. All other ActionScript 3.0 (.as) external class files that you have written or are needed for your program to compile (make sure they are stored in the correct folder for any package directives to work); 4. Your design documentation in a Microsoft Word (.doc/.docx) or .pdf file. Note: please dont use any other document format, if we cant open your documentation we cant award a mark; 5. Your completed Completeness Declaration (download a blank one from Blackboard in the same place this assignment specification is stored); 6. Full references to any external assets you have used (e.g. graphics, sounds, code libraries) that you have not created yourself. The submitted program must compile and run! We will not spend time trying to fix your code. We can only mark the functionality we can see. We strongly suggest you keep backups as you work, and you also keep staged backups of working versions, including all assets and source code, so that you can hand in a working version at any stage. If you do decide to submit an older version you really should check it before submitting it just in case it has mysteriously stopped working (usually because you have changed something without noticing).

1.4 What not to submit


Dont submit any of the following: 1. any .swf files. We will recreate the .swf when we test your program and including one will unnecessarily increase the size of your submitted zip file and thus increase the time it takes to upload it to Assignment Handler. 2. A program that uses timeline- or frame-based scripting.

1.5 How to submit


To submit your work you need to use the Assignment Handler in Blackboard. Because Assignment Handler renames any files you upload you MUST first put all of your files into a single .zip archive. Go to the CM0427 eLP site and click on the Assessment button in the left-hand tool bar. You will see an item named Game Portfolio. At the bottom of that item click on the link labelled View/Complete Assignment: Game Portfolio. This should bring up a screen similar to this:

CM0427: Introduction to Multimedia Programming (2012-13)

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.

CM0427: Introduction to Multimedia Programming (2012-13)

Page 7 of 7

You might also like