<%@LANGUAGE="VBSCRIPT" %><% Response.CacheControl = "no-cache" %>
Project 3 (Flash Game)

The final project is a chance for students to flex their developmental muscles using the cumulative skills and knowledge they have obtained from this course. Students are required to design, develop, and test a Flash-based application that pushes their creative and developmental skills to their limits. Ideally, each project should be designed around the specific interests of the individual students (Web Programming & Design, contruction, animation, etc).

The application will be web-based, so it must be optimized accordingly. However, it will not be designed for modem connections, so you should have some design flexibility there. Idealistically, you should design the application for either IE or Firefox at 1024 X 768 resolution, using the relatively high bandwidth available in the ITAP labs. The application should run smoothly and cleanly under these specifications.

Students may design their own projects OR choose from one of the possible options below.

Required Checkpoints (all or nothing, each worth 5 pts)

  • Check1: First Friday (at 11:00 PM) after project is assigned:
    • Preproduction materials. If done by hand, scan them so that you have digital copies.
    • Obvious lack of trying results in a zero. Simply turning in something does not guarantee 5 points. Your preproduction materials must be complete and well done.
    • Copy all files and place in a P1_Check1 folder nested inside your Project1 folder
  • Check2: Second Friday (at 11:00 PM) after project is assigned:
    • Asset library. Make a copy of your .fla and any other asset files you have and paste them into this checkpoint folder.
    • Copy all files and place in a P1_Check2 folder nested inside your Project1 folder

 


Possible Project

  • Scrolling Action Game
  • PHP, MySQL, & Flash Database-Driven Application
  • Student Choice

Scrolling Action Game

The benefits to choosing this type of game are the vast amounts of resources available (in 3.0) and the fact that many of the class demos and exercises will cover concepts in this area. Disadvantages will be the high expectations that come from doing such a project.

Specifications:

  • Minimum one level
  • Score keeping function
  • Store persistent user data with shared objects
  • Life tracker
  • Threats - enemies, falling stuff, mines, etc..
  • Dynamically loaded assetts
  • Dynamic data?.
  • Energy?
  • Power?
  • Ammunition?
  • Basic AI for the enemies?
  • Multiple levels?

Side Scroller

Vertical Scroller

 

Fundex Game Examples from Previous Semesters

Fundex Games, Inc. is a company that creates board and live-action games for all age ranges. Fundex is currently working with Purdue Univeristy to create a series of Web-based Flash games based on their popular line.

Examples:

PHP, MySQL, & Flash Database-Driven Application

As a second option, students can create a dabase-driven application of their choice. The only limitations of doing so are that any application must be:

  • Scripted with AS 3.0
  • Uses significant PHP programming
  • Uses a database
  • Interactivity is done through a Flash interface
  • Web-based and optimized accordingly (preloaders, separate elements, quick downloads
  • Challenging

Student Choice

As a third option, students can create an application of their choice. The only limitations of doing so are that any application must be:

  • Scripted with AS 3.0
  • Web-based and optimized accordingly (preloaders, separate elements, quick downloads
  • Challenging

Past Student Choice Projects

Construction Configurator Projects - (CON students)

Construction students may choose to create a configurator application that allows changes to be interactively made to a floorplan that is subsequently reflected in a 3D view of a house or room. This will probably require multiple 3D renderings of a house/ room to account for all the possible variations in the floorplan, but of course there is no set procedure or limitations to this application. If you can devise an alternative method (say with dynamic, real-time renderings) you are encouraged to do so.

CON students should consider this a relatively open-ended assignment. In other words, show us what you've got. In the meantime, direct your questions to Professor Glotzbach or Professor Cory if you have a question about this project.

Manufacturing Projects - (Manufacturing students)

Create an interactive application that either 1) Allows someone to build/ manipulate a part, machine, etc or 2) interactively depicts some manufacturing process or methodology that the user can manipulate (in sort, a simulation). Students should confer with faculty members before choosing this option to discuss what sort of application a) would be useful to those in the industry and b) would be useful in their portofolio.

Animation Project - (ANIM students)

Create an interactive application that allows the end-user to manipulate the animation. Students should draw upon interactive animation technology like MEL scripting, whichis user to specifically control animation deformations. Whatever the idea, the application should allow the user to manipulate the animation in a highly interactive way. Students should confer with faculty members before choosing this option to discuss what sort of application a) would be useful to those in the industry and b) would be useful in their portofolio.

Educational Multimedia Project - (IMD Students)

IMD students may choose to produce an online educational multimedia application that teaches the viewer a particular segment of CGT 353: Principles of Interactive Multimedia. Consideration will be given to those students who choose particularly challenging content.This type of application should not be a glorified PowerPoint presentation. While video, audio, and graphics are vital components of any educational mulitmedia application, interactivity is what separates the kids from the grownups. Applications that simply display a great deal of text in a series of gotoAndPlay()s will not cut it.

Important: The goal is not just to create an application that teaches Flash, but also the academic material of the course. For example, one of the topics of Week 5 was video integration. In addition to talking about importing video into Flash, the class discussed key concepts such as different video formats, lines of resolution, etc... One of the primary objectives of your group will be to not only teach Flash, but also those fundamental academic concepts that are a part of CGT 353.

Information Architecture: Students should not be limited to the structure or amount of the material for that segment. In other words, if you feel like the material for a particular component needs to be restructured or something added, you should do so.

For example, if you feel the class didn't discuss external classes in sufficient detail you should add more content to adequately cover this particular component of Flash. How you structure the content will just as important as how you present it, so plan ahead.

Other Possible Projects:

  • Interactive Educational Game
  • 3D Project/ Papervision
  • Data-Driven Project (XML, PHP, Cold Fusion, etc)
  • Handheld/ Mobile Project
  • Adobe AIR

How Much Interactivity/ ActionScript Do We Need?

This is a question that is always asked, no matter what the project is. Fortunately, the answer is simple..."How much interactivity do you need?" Students should NEVER design around the limitations of what they know. Rather, the approach should be to design the best multimedia application possible with the provided content and THEN determine how to create it (easy to say, we know). Students who only create products they already know how to make are re-inventing the wheel and stagnating their own development. Pixel-pushers are not what we want here...

Of course, you have to know your own limitations because you have a finite amount of time to work with. With that in mind, the best way to create a program is to first design the best possible application that utilizes all the bells, whistles, and features you can possibly think of. Then, evaluate the design with your instructor in order to determine what is feasible and what isn't. At that point, you can then develop a new design that integrates the components you feel gives you the best chance to succeed.

 

Checks and Balances

Several progress checks will be given during development of this project. Students should have the appropriate amount of their project completed for each check, which should be relative for each check. For example, if the progress check takes place in the second week of a 4 week project, the project should be approximately 50% complete.

Each progress check will be worth approximately 5% of the final project grade, so take them seriously.

Preproduction Materials

  1. Proposal - a brief but professional proposal that covers the goals of the project. Download the proposal template here.
  2. Sketches/ /Storyboards/ Interface Designs: Quick and dirty ideation sketches/ images intended for brainstorming various concepts such as graphics, interfaces, navigational systems, etc...
  3. Flowchart: computer-generated chart that shows the associations between application segments and content. (A separate flowchart should be included for those groups utilizing a database)

 

Recommended Procedures

  1. Develop a working calendar that takes into account the how much time you will need to develote to this project. Although you will have time to work on the projects in lab, outside work will be necessary. Failure to do so will likely result in a poor project.
  2. Develop a rough design of your application based on the content for your particular project. Take into account your developmental strengths and weaknesses.
  3. Develop the preproduction materials and get approval from your instructor. This includes the 1-page proposal, sketches, storyboards, interface designs, and flowcharts.
  4. Once your design has been approved, begin production on the project.
  5. Students should be able to demonstrate progress on a weekly basis, as they will be required to do at the progress checks. Students who show little to no progress from week to week will receive a lower grade.
  6. Once you have your application finished, test it for bugs and usability. Once you have tested the application and identified problem areas, make the appropriate revisions to your application in preparation for final submission.
  7. Submit your working application, proposal, test report, and any additional documentation.

 

Academic Dishonesty

I hate to say it, but cheating has been a problem on this project. Don't cheat. Don't follow a tutorial that somebody else did. Don't turn in somebody else's code. Don't get a game off the internet and try to modify it a little bit and turn it in as your own. I have had the unfortunate task of failing students and reporting them to the Dean of Students for academic dishonesty, hence this disclaimer. Do your own work.

You cannot do any of the following, if you do, you will receive a zero on the project and possibly be reported to the Dean of Students for Academic Dishonesty depending on the severity of the infraction.

  • A top-down racing game
  • Tetris
  • Anything that has code published on the web

Deliverables

Students should be prepared to conduct an in-class critique/ peer evaluation of their projects. As such, students should submit their files to their share space on the web server so that it is readily accessible.

You are to deliver the following copies of the project:

  1. One finished copy in your share space on the server. Do not modify the files after the due date/time. We will check the timestamp. Your Project1 folder will contain the checkpoint folders listed above with all associated files. You should also provide resources, that is a description of any materials that were not created by the student along with the location of where said materials were acquired (URLs, stock CD's, etc.)

Evaluation and Grading Criteria

Grades will be based on several factors, with special emphasis on interactivity. In addition to your instructor assessments, projects will be evaluated by other faculty in your particular area. Since the majority of the class has taken some design and web development classes, you will be expected to meet the expectations assumed in your passing of those courses. This includes a basic understanding of design and web development techniques.

Assessment Areas:

  • Animation - efficiency, professionalism, pertinence
  • Interactivity (highly important) - efficiency, sophistication
  • Demonstration of dynamically loaded content
  • Audio integration
  • Video integration
  • Optimization
  • Aesthetics
  • Originality and innovativeness
  • Validated through usability and performance tests
  • Professionalism
Superior work, professional  A
Above average student work 
Average student work  C
Below average student work D
Failure 


Keys to an "A" Project

  1. Meet all the expectations laid out in your proposal
  2. Do more than follow a tutorial....
  3. Thoroughly documented (testing, resource files, image files, problems, etc…)
  4. App. functions perfectly on the Web – this includes optimization, preloaders
  5. Amazing graphics, animation, media, and scripting
  6. Professionally submitted project packet
  7. THOROUGHLY COMMENTING YOUR CODE – will not be able to get anything above a “C” without it
  8. Innovation
  9. Going above and beyond
    1. Flexible GUI’s
    2. Integrating other technologies
    3. Using other Flash technologies (AIR, Flash Lite, Papervision)





For information contact: Professor R.J. Glotzbach

CGT 353 Fall 2010