ahandrewh teaches IAT-165game design and development

P4: A Mini Game (due April 8)

This is old content

Andrew is not currently teaching IAT-165. This material is left online for reference only.

Introduction

Your final project involves building out your own game starting from a concept to the final playable game.

This project is completed individually.

P4: A Mini Game is worth 30% of your final grade.

Weekly instructions

This project spans multiple weeks. Please read the weekly instructions carefully.

From February 25 to March 4

The first week of this project is about starting to come up with ideas for a game. Please complete the following:

  1. Consider the possible initial directions for the project below. For this project you are expected to pick one of the directions below to define what you are exploring within the project.
    • Design an 'alt-control' game &emdash; a game that uses non-standard controls, or a non-standard way to use 'standard' controls to play.
    • Design a 'socially conscious' game — a game that explores a social or cultural issue in a way that makes the player think.
    • Design a game for two players — a game that explores the interaction between two players.

    You can discuss alternative project directions with Andrew before March 4.

  2. Brainstorm a list of at least three game options as questions — i.e. How can I make a video game that ... ? — as a means of exploring ideas beyond what you are aware already exists. You have your own understanding and experiences with video games that will help frame what is already available, so don't worry too much about searching for if you have a truly unique idea.
  3. Write down what is the main game loop for each of the three ideas.
  4. Generate a sketch of of the components of the game. This should help us quickly see and discuss the core game loop as well as what elements we may need to define.

Bring to your March 4 lab

  • 3 game options
  • 3 explanations of how the game would including the main game loop and the components of each of the games

From March 4 to March 11

This week you will select your direction for building out the game.

Please complete the following:

  1. Select one direction to pursue. Use the feedback from the lab to select your direction.
  2. Draw the components of your game in code. Using p5js draw the components of the game you have defined in earlier steps:
    • Focus on setting up the components and objects for the game.
    • Make sure you use objects to have one common place to make changes/adjustments to how the game components work.
    • Do not worry yet about things changing or being tracked yet.
  3. Define how components will be updated in the main game loop. To help with further planning out your code, think about in what sequence things will need to be drawn or updated in the code to make the game work.
  4. Build the core interaction(s) into the game.
  5. Add in any other animation that is required of the game. If other elements on the screen are meant to move as part of the game add in code to allow them to animate as well.

Bring to your March 11 class

Your updated game in p5js.

From March 11 to April 1

During this week's class you will receive feedback and support on your progress on the game.

Please complete the following:

  1. Add in any tracking you need to make the game work. For example if you are detecting when two objects collide, score counters, timers, etc.
  2. Add a pre-game and post-game state. How this state behaves is up to you but these states must allow the player to understand how to play the game and when the game is over.

Bring to your April 1 class

Your updated game in p5js. Be prepared for playtesting in this week's class.

From April 1 to April 8

During this week's class we will hold in-class playtesting to gather feedback on your game in its current state. Please come prepared for playtesting and collecting feedback accordingly.

In our last class on April 8 we will hold a final playtest of the games as well as a code review. The code review will ask you to step through the design of the game's core loop and explain your reasoning for building it using this approach. Be prepared to explain and answer questions without additional notes or reference materials outside of your code.

Grading rubric

Please email Andrew with any questions about the rubric.

A B C D/F

Direction explored (6 pts):

The game demonstrates an understanding of the challenge posed by the chosen direction and effectively explores game design in the provided context.

The game demonstrates an understanding of the challenge posed by the chosen direction and somewhat effectively explores game design in the provided context. There may be some gaps in quality of game design given the context.

The game demonstrates some understanding of the challenge posed by the chosen direction and somewhat effectively explores game design in the provided context. There may be some gaps in quality of game design given the context.

There are significant concerns with the effective exploration of the chosen game direction and/or the game is incomplete.

Game quality (8 pts)

  • Game uses animation effectively to convey the responses to the user's interactions with the system.
  • Game states (pre/in-game/post) allow the player to understand the different game states effectively.
  • The game mechanics are learnable.
  • The game is playable.
  • Game uses animation to convey some of the responses to the user's interactions with the system.
  • Game states (pre/in-game/post) are present, but not all understandable by the player.
  • The game mechanics are learnable.
  • The game is playable.
  • Game uses animation to convey some of the responses to the user's interactions with the system.
  • Game states (pre/in-game/post) are present but not understandable by the player.
  • The game mechanics are difficult to learn.
  • The game is playable.
  • There is little-to-no animation and/or the animation confuses the user's interactions with the system.
  • Game states (pre/in-game/post) are missing and/or not understandable by the player.
  • The game mechanics are difficult to learn.
  • The game has issues that make it difficult to play and/or unplayable.

Code quality (8 pts):

  • Code makes effective use of variables.
  • Code makes effective use of functions.
  • Code makes effective use of loops.
  • Code makes effective use of objects.
  • Structure of code is legible — variable and function names describe their purpose clearly.
  • There are no console errors.
  • Code makes effective use of variables.
  • Code makes effective use of functions.
  • Code makes mostly effective use of loops — there is some duplication or redundancy of portions of code.
  • Code makes mostly effective use of objects — there is some duplication or redundancy of portions of code.
  • Structure of code is legible — variable and function names describe their purpose clearly.
  • There are no console errors.
  • Code makes effective use of variables.
  • Code makes effective use of functions.
  • Code makes mostly effective use of loops — there is some duplication or redundancy of portions of code.
  • Code makes mostly effective use of objects — there is some duplication or redundancy of portions of code.
  • Structure of code is mostly legible — most variable, function and object names describe their purpose clearly.
  • There are console errors.
  • Code makes mostly effective use of variables — there is some duplication or redundancy of values.
  • Code makes mostly effective use of functions — there is some duplication or redundancy of portions of code.
  • Code makes some effective use of loops — there is duplication or redundancy of portions of code in a variety of places.
  • Code makes some effective use of objects — there is duplication or redundancy of portions of code in a variety of places.
  • Structure of code is sometimes legible — many variable, function and object names do not describe their purpose clearly.
  • There are console errors.

Code review (8 pts)

  • Code review demonstrates an honest and effective explanation of code sourcing and understanding.
  • Citations are provided (if necessary) for all materials that informed the development of the code.
  • The main game loop is clearly illustrated in review and is understandably explained.
  • Code review demonstrates an effective explanation of code sourcing and understanding.
  • Citations are provided (if necessary) for most materials that informed the development of the code.
  • The main game loop is clearly illustrated in review and is explained.
  • Code review demonstrates a somewhat effective explanation of code sourcing and understanding.
  • Citations are provided (if necessary) for some materials that informed the development of the code.
  • The main game loop is clearly illustrated in review and is somewhat explained.
  • Code review demonstrates some explanation of code sourcing and minimal understanding.
  • Citations are not provided and/or a significant amount appear to be missing.
  • The main game loop is clearly illustrated in review but not effectively explained.

Final submission requirements (April 8)

The final submission for P4 is a ZIP file containing the final game.

Your project submission is due to Canvas before your April 8 class.

Please make sure double-check all your submitted URLs to ensure they can be opened. We want to avoid late or problematic submission penalties whenever possible.