Project 2: Game with the ImpactJS Gaming Engine

Email a zipfile of your submission both the instructor, and the TA.

Collaboration Policy - Read carefully you must work on this project individually, you may discuss this assignment with other students in the class and ask and provide help in useful ways, preferable over our email list so we can all benefit from your great ideas. You may consult (but not copy) any outside resources you including books, papers, web sites and people. If you use resources other than the class materials, indicate / cite what you used along with your answer.

 

Assignment Day February 17, 2014 (evening)

Due Date & Demo

 

Tuesday March 04, 2014 (Demonstrate on laptop in class, you must attend class, if you feel there may be a conflict, you will need to schedule your demo at an earlier date).

 

Games for inspiration : http://impactjs.com/games

Screenshots last year:

Objectives & Requirement

The purpose of this assignment is to highlight use of a gaming engine. In this assignment you will be using the 2D gaming engine ImpactJS. You will design the game from the ground up (i.e., design sprites, its environment and the story). You will be using the available physics (and Box2D, if needed), with few guidelines to enhance the creative process. There are requirements and expectations.

Objective of game:
Design a platform game ( wikipedia ) going from point A to destination, point B, using the game engine ImpactJS. A platform game is typically a side view game, where a player runs, jumps, fall, and walks. The splash screen does not count as a level. The destination should be goal oriented (e.g., to save a princess, find a treasure chest, or get a cookie).



Required Elements:

  1. You will need to support at least 3 levels.
    1. At least one level should include parallax scrolling giving the level a feel of depth ( wikipedia - parallax ).
    2. For at least one level the Camera View needs to be smaller than the full map of game (see text book).
  2. Splash Screen: You should provide a splash screen, and this screen does not count as a level.
  3. Sprites: You must design at least three types of sprites:
    1. Player sprite: the main player of your game. This will need to be a self portrait sprite, and it will need to animated, and represented by a series of sprites to give it a dynamic feeling of motion. You should provide the following dynamics:
      1. Running,
      2. Falling,
      3. Jumping,
      4. Swimming,
      5. Flying,
      6. Climbing, and
      7. Swinging
    2. Enemy sprites: Entities that hurt or kill you, e.g., a zombie, your evil self, or an animal. You should provide both static (remains in one place) and dynamic enemy sprites (moves, e.g., walks or runs).
    3. Friendly sprites: Sprites that help you in the game (e.g., gives you strength, health, or extra lives).
  4. Attack: Your game needs to include 3 different methods of attacking enemies, e.g., jump on head, shooting, and kicking.
  5. Attributes: You'll need to implement a set of player attributes. At a minimum you should provide a limited number of lives, and a health attribute. The value of these attributes should be displayed as you play the came, the value can be graphical, e.g., number of hearts to indicate lives.


Examples:

Too similar: switching images, changing color, changing speed, or damage.

What is different enough: Grenade and Bullets, trajectories (straight vs arced vs under ground), fist and jumping on head is different enough, throw objects, bow and arrow, charging thing - mega man.

Optional Elements:

  1. You may use the more advanced physics engine Box2D (a plug-in to ImpactJS).
  2. You may consider adding super powers, or a treasure chest where you can find potions that gives you special powers. You may also consider implementing an inventory where you can chose super powers.

 

Submission:

(for the below you may change the extension .txt if not plain text e.g., .doc, .pdf)

GRADING.txt: A description on how you met the grading rubric (see below table). You may copy paste these from REPORT.txt.

REPORT.txt should include minimally:
A description of your game (about 1 page), including the objective of the game, the graphical objects, how they animate, how they interact and how scoring work.
A set of screenshots of your game in action highlighting key events (minimally 1 screenshot).
User documentation, i.e. instructions for a new user on how to use your game

README.txt should include a list of files required to run your game, and how to get your code up and running (e.g., HTML5 file, CSS file - if separate, and image files needed).

SCREENSHOT.PNG: Provide a few screen shot of your games, illustrating important aspects of the game (e.g., start screen, shot (hit)). These may be part of REPORT.txt.

Grading Rubrics

Requirements
Example / Required Features
Score/Points
3 Levels Parallax Scrolling feel of depth, Camera View Smaller
10
Splash Screen Is it descriptive? (note this is separate from the levels).
5
Sprite, Main Player Self, Dynamic Feel
5
Sprite, Main Player Dynamics Running (3) , Falling (3), Jumping (3), Swimming (3), Flying (3), Climbing (3), and Swinging (3): Smooth transitions (4)
25
Friendly Sprites Helps you
10
Enemy Sprites Static and Dynamic
10
3 Types Attack 3 for each attach, 1 pt for running well together.
10
Player Attributes Number of lives, health attirbutes, look & feel
10
Documentation / Files Readme file, grading.txt that describes how you fulfilled the rubrics, programming files, Grading,txt, Report,txt, Working Code Base, Screenshots
10
Demo / Project Gallery Game demonstrated to smoothly
05
   
100

 


.