Introduction to Game Development
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:
- The game must be more sophisticated than just Pong or Space Invaders!
- There must be a scoring system in your game.
- Sound and images must be used.
- There must be a high score or award list in the game.
- Time must be used in some capacity in the game (not to manage frames-per-second). Example: solve a puzzle in under a minute.
- My image cannot be used as a sprite or character.
- 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):
- 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.
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
- 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)
- 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).
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:
- Game title (duh!)
- Authors (your name; duh!)
- Description of game in 255 words or less
- Brief instructions (rules)
- Controls (for every control scheme in your game)
- 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
- Section for additional comments and suggestions
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
- Go to https://github.com/tuftsdev/GameDevelopment/ to see examples of game design documents.