Tufts OpenCourseware
Author: Ming Y Chow

Tufts OpenCourseWare
Introduction to Game Development
M. Chow
Spring 2012


2D Game Group Project

In a team, you will develop a full 2D game using Python and PyGame under a scenario that is comparable to a real-world working environment. The more original your game is, the better. There is no limit to the genre of the game but there are constraints:

  1. The game must be more sophisticated than just Pong or Space Invaders!
  2. There must be a scoring system in your game.
  3. Sound and images must be used.
  4. There must be a high score or award list in the game.
  5. Time must be used in some capacity in the game (not to manage frames-per-second). Example: solve a puzzle in under a minute.
  6. My image cannot be used as a sprite or character.
  7. One of the following must be used in some capacity in your game: a ninja, a chipmunk, a flying pig, a barbarian, a chimp, a wombat.


There are five deliverables for this project (the check-in shall count as a deliverable):

  1. Project Proposal (5 points; due Wednesday, February 15th; hand in at beginning of class; one submission per group) - Must be no longer than one page typed.
  2. Game Design Document (25 points; due Monday, February 27th; hand in at beginning of class; one submission per group) - Outline format is preferred. The proposal must include:
    • Title of the game
    • Description of the game
    • Challenge(s)
    • Core requirements
    • Gray requirements
    • Game mechanics (including interaction, colors, data)
    • State diagram
    • Game economy
    • Game balance
    • Victory and defeat conditions
    • Mockup screenshots (drawn electronically only)
  3. A Working Game (5 points check-in on Wednesday, March 14th in class; 45 points for working game with README document due on Wednesday, April 4th in class) - Written in Python and Pygame. Source code must be in a GitHub repository (that I will assign).
  4. Test Plan (20 points; due Wednesday, April 4th in class; one submission per group). This document will be distributed to all students (a.k.a., players) in the class. This document shall have the following sections:
    1. Game title (duh!)
    2. Authors (your name; duh!)
    3. Description of game in 255 words or less
    4. Brief instructions (rules)
    5. Controls (for every control scheme in your game)
    6. A checklist of at least 5 tasks that you want the player to test with a section for comments. Briefly describe each task with proper outcome. Example: press a key 5 times => produces a special move
    7. Section for additional comments and suggestions

Grading Criteria

Your game will be graded on five factors:

  • Functionality - I am looking for a game that works and is playable. Remember, a game with fewer features that work is significantly better than a game with numerous features, where some either do not work or are buggy.
  • Production - I am looking for a game that is polished (e.g., graphics and sound), consistent (e.g., look-and-feel), and reasonably professional.
  • Complexity - The more original your game is, the better. Things that will increase the complexity of your game: realistic collisions, some AI, landscapes, sound, etc.
  • Game Design - Is your game fun? Is your user interface easy to understand? Is there good game balance (i.e., not too easy, not too hard)?
  • Technical Competency - Use good programming practices, source code in a GitHub repository