Objective:

Identify common game genres, describe rule creation and elements of player challenge and differentiate 2D and 3D game environments.

Method:

  1. Certain genres are found more frequently built using one kind of environment (i.e. 2D top-down or 3D ground-up) than another. Write a short paper explaining which game environment each genre typically works best on and why. Try to answer the following question: how do the environment’s features (e.g. graphic style, mechanics, player controls) and the way that it is used facilitate or hinder the gameplay in each genre?
  2. Play three games and answer the following:
    1. What is the genre? Is there a specific sub-genre? Could the game belong to more than one genre? Be sure to provide information that helps validate your choice.
    2. Who is the audience?
    3. What are the goals and objectives?
    4. What is the overall narrative? (Explain in two or three sentences)
    5. How would you describe the overall game? (i.e., look, playability, and entertainment)

Turn In:

  1. When finished with your short paper over game environment for part one, submit it to the correct folder in the ExamDrop. It is due by Friday, February 02.
  2. After you have played the three games that you chose, create a new post on your blog answering the given questions. This is due by Tuesday, February 06.

MAKE SURE TO WRITE IN COMPLETE SENTENCES
FOR ALL ASSIGNMENTS.

Objective:
Learn how to add a camera, look through it, and animate it in order to emphasize movement.

Method:
Watch this video and apply the concepts.

Work through this course to get a basic understanding on how to animate a camera.

Objective:
Demonstrate gained skills in using the Python coding language.

Method:
Use the skills you learned in the Python course to develop the following program.

Hangman

The Goal: Despite the name, the actual “hangman” part isn’t necessary. The main goal here is to create a sort of “guess the word” game. The user needs to be able to input letter guesses. A limit should also be set on how many guesses they can use. This means you’ll need a way to grab a word to use for guessing. (This can be grabbed from a pre-made list. No need to get too fancy.) You will also need functions to check if the user has actually inputted a single letter, to check if the inputted letter is in the hidden word (and if it is, how many times it appears), to print letters, and a counter variable to limit guesses.
Concepts to keep in mind:

Random
Variables
Boolean
Input and Output
Integer
Char
String
Length
Print

Likely the most complex project on this list (well, depending on just how intense you went with the adventure text game), the Hangman project compiles the prior concepts and takes them a step further. Here, outcomes are not only determined based on user-inputted data, that data needs to be parsed through, compared, and then either accepted or rejected. If you want to take this project a step further, set up a hangman image that changes!

Turn In:
When you have finished. Upload your code to the shared folder.

Objective:
Create an original video review/analyzation of a relatively new video game.

Method:
You have been given the greenlight to create a video review over one of the many video games that are currently out on the market.

As an individual or as a group of two, you will create a video review over your chosen game. (All game choices must be approved by the instructor.)

This document will walk you through the proper steps of planning and creating your review.

Turn In:
You will submit the game choice to instructor by the first Wednesday of the six weeks and the completed review will be uploaded and presented on the last Tuesday of the current six weeks.

Objective:
Learn how to apply keyframes to object nodes to create movement.

Method:
Use the “Bouncing Ball” tutorial (located at Q:\Animation\Bouncing Ball\Bouncing a ball.pdf) to work through the steps of how to create nodes and add keyframes.

Bouncing_a_ball

Turn in:

  • Playblast an .avi of the bouncing ball and turn it in to Q:\OuallineJ\ExamDrop\Animations\Bouncing Ball
  • Make sure to name the .avi file as LastName_Bounce.avi
  • Use handbrake to compress the .avi into a .mp4 and post it to your blog. Discuss the steps taken and what you thought to be the most challenging part of the tutorial.

Objective:
Demonstrate gained skills in using the Python coding language.

Method:
Use the skills you learned in the Python course to develop the following program.

TextBased Adventure Game

The Goal: Remember Adventure? Well, we’re going to build a more basic version of that. A complete text game, the program will let users move through rooms based on user input and get descriptions of each room. To create this, you’ll need to establish the directions in which the user can move, a way to track how far the user has moved (and therefore which room he/she is in), and to print out a description. You’ll also need to set limits for how far the user can move. In other words, create “walls” around the rooms that tell the user, “You can’t move further in this direction.”

Concepts to keep in mind:

  • Strings
  • Variables
  • Input/Output
  • If/Else Statements
  • Print
  • List
  • Integers

The tricky parts here will involve setting up the directions and keeping track of just how far the user has “walked” in the game. I suggest sticking to just a few basic descriptions or rooms, perhaps 6 at most. This project also continues to build on using userinputted data. It can be a relatively basic game, but if you want to build this into a vast, complex word, the coding will get substantially harder, especially if you want your user to start interacting with actual objects within the game. That complexity could be great, if you’d like to make this into a longterm project. *Hint hint.

Turn In:
When you have finished. Upload your code to the shared folder.

Objective:
Demonstrate gained skills in using the Python coding language.

Method:
Use the skills you learned in the Python course to develop the following program.

Mad Libs Generator

The Goal: The program will first prompt the user for a series of inputs a la Mad Libs. For example, a singular noun, an adjective, etc. Then, once all the information has been inputted, the program will take that data and place them into a premade story template. You’ll need prompts for user input, and to then print out the full story at the end with the input included.
Concepts to keep in mind:

  • Strings
  • Variables
  • Concatenation
  • Print

A pretty fun beginning project that gets you thinking about how to manipulate user-inputted data. Compared to the prior projects, this project focuses far more on strings and concatenating. Have some fun coming up with some wacky stories for this!

Turn In:
When you have finished. Upload your code to the shared folder.

Objective:
Demonstrate gained skills in using the Python coding language.

Method:
Use the skills you learned in the Python course to develop the following program.

Guess the Number

The Goal: Similar to the first project, this project also uses the random module in Python. The program will first randomly generate a number unknown to the user. The user needs to guess what that number is. (In other words, the user needs to be able to input information.) If the user’s guess is wrong, the program should return some sort of indication as to how wrong (e.g. The number is too high or too low). If the user guesses correctly, a positive indication should appear. You’ll need functions to check if the user input is an actual number, to see the difference between the inputted number and the randomly generated numbers, and to then compare the numbers.

Concepts to keep in mind:

  • Random function
  • Variables
  • Integers
  • Input/Output
  • Print
  • While loops
  • If/Else statements

Jumping off the first project, this project continues to build up the base knowledge and introduces user-inputted data at its very simplest. With user input, we start to get into a little bit of variability.

Turn In:
When you have finished. Upload your code to the shared folder.

Objective:
Demonstrate gained skills in using the Python coding language.

Method:
Use the skills you learned in the Python course to develop the following program.

Dice Rolling Simulator

The Goal: Like the title suggests, this project involves writing a program that simulates rolling dice. When the program runs, it will randomly choose a number between 1 and 6. (Or whatever other integer you prefer — the number of sides on the die is up to you.) The program will print what that number is. It should then ask you if you’d like to roll again. For this project, you’ll need to set the min and max number that your dice can produce. For the average die, that means a minimum of 1 and a maximum of 6. You’ll also want a function that randomly grabs a number within that range and prints it.

Concepts to keep in mind:

  • Random
  • Integer
  • Print
  • While Loops

Turn In:
When you have finished. Upload your code to the shared folder.

Objective:
Gain skills in coding with the C# language in the Unity game engine.

Method:
Follow along with the videos to learn introductory coding skills in Unity using C#.

Turn In:
Make sure to capture screenshots of your progress to upload to your blog. Make sure to have your blog updated every other day.