Interactive Media & Game Development
Worcester Polytechnic Institute

IMGD


IMGD-3xxx: HCI for Real, Virtual, and Teleoperated Environments
Final Project
Due: Tuesday, October 13, 2009 at 2:00pm

Objective: THIS PROJECT SHOULD BE DONE IN GROUPS OF TWO OR THREE!

This project is designed to allow you to apply what you have learned in this course to produce an interactive experience (e.g., a game) that incorporates an appropriate amount and type of input and output.


Where to get parts If you need common components, you can go to the ECE shop in Atwater-Kent, Room 112. They have lots of small parts, such as all kinds of resistors, capacitors, etc. They know you are coming. You will need to pay them (cash) for the parts you need. Also, there are links at the bottom of the course Web page to other sources of parts.

What to do: The project objective is for you to understand the delicate balance between the device(s) used for a given application, and the constraints on the application, such as the characteristics of the target users, the environment in which the task will be performed, and task-specific traits.

There are some basic requirements for the projects, regardless of what your actual project idea is.

  1. You must incorporate the Arduino into some part of your project
  2. You must include a non-Arduino piece of the project that the Arduino communicates with
  3. You must include input to the system that uses two user modalities (e.g., joystick and voice)
  4. You must include output to the user that uses two sensory modalities (e.g., visual and sound)
  5. You must choose mappings of inputs to game-controls, and outputs to game-state, that make sense

Final Prototypes: Here are blurbs for each of the projects. Keep in mind that the teams only had about 5 weeks to go from idea to prototype.

FINAL PROJECTS
Dead to Lights 2: Return to Vietnam

Team:
John Andrews
Kevin McManus

Game Blurb:
You play an old, semi-retired security guard stationed working the graveyard shift at an out of the way hotel. Your life turns upside-down when the hotel's power fails and the hotel's occupants suddenly turn into the living undead. You quickly learn that not only do the presence of these ghouls cause your radio to go haywire, but they seem to be hurt by the light from your flashlight. Armed with these few things, you must escape with your life.

Device Usage:
The player has three items on him, each of which translate to the in-game character. His flashlight, pointed around the screen, translates to where the character points his flashlight. A wii-nunchuck moves the character, and shaking it causes the character to punch. Finally, the player has a walkie-talkie on him, which beeps and makes noises when the ghouls get close.

Other Stuff:
Project Website
YouTube Video of the Project

Final Fantasy DLXIII: This Time it's Rock Band!

Team:
Tamlyn Miller
Steven Washington

Game Blurb:
In this cooperative game, one player plays a fighter, which has different attacks to demolish enemies. The other player plays a spellcaster with a magic wand to attack enemies from a distance. Together, destroy the hordes of evil!

Device Usage:
Rock Band Drums-Fighter's combat moves. Hit the drums to unleash different attacks. Microphone-Spellcaster's magic wand. Cast a spell with a swish and flick! Wii Nunchuck-Move Spellcaster and scroll through the spell list.

Other Stuff:
Project Website
YouTube Video of the Project

Guitar Villain

Team:
Andrew Cote
Adam Pastorello

Game Blurb:
Guitar Villain will be a puzzle game where you control a group of Blind imps by playing guitar for them. Certain Notes, Songs, and chords will command the Imps to do various tasks such as attack or break down doors. The game is meant to be a great tool to teach people how to play guitar as well as be a fun experience for those who are already talented at guitar.

Device Usage:
The device of control for this game will be a full six string guitar. 6 potentiometers determine where the players fingers are on each string and six piezo vibration sensors will determine the strumming. All the sensors will be mounted on a guitar to make the change from our guitar to a real guitar as easy as possible.

Other Stuff:
After talking to a few guitar players around campus I realized that this game could have quite a large market. Anyone I told about the game was very excited and told me to hurry up with it so that they could play.

Project Website
YouTube Video of the Project

MineMaze

Team:
Khoa Doba
Kirk Lanciani

Game Blurb:
This game is an advanced version of the classic Minesweeper.

Device Usage:
The player controls a character that moves around on the grid via a custom controller using the Arduino board. The controller is used for movement and actions, but also uses a series of blinking lights and sounds to indicate to the player how many mines are in the spaces around him/her (instead of number on the grid itself). The player must use these sensors to navigate the minefield, avoiding mines and finding buried treasures.

Other Stuff:
Project Website
YouTube Video of the Project

Mr. Green

Team:
Matthew Ivory
Felix Nwaobasi

Game Blurb:
The game revolves around the Mr. Green. He is extremely concerned with the future of our environment. So much so that he works at a job that creates energy from windmills, is a tester for solar-powered cars, and also participates in a litter picking up competition around the neighborhood. Each of Mr. Green's activities will take the form of mini-games. These different mini-games will each use a different control scheme.

Device Usage:
To activate the windmill, the player will have to "control" the direction of the wind. To accomplish this, the player will be presented with a sequence of icons -- either left, right, up -- that have to be entered in a certain order (similar to a Guitar Hero). To enter in these wind-directions, the player will have to position the potentiometer at a certain position that corresponds to that direction (i.e. 0-350 would be left) and press a button. When the player enters a certain amount of correct wind directions, the windmill will begin to move. When the player has the windmill moving at a certain speed, an LED on the Arduino will light up (signifying that electricity has been produced) letting them know that they have completed the mini-game.

For the second mini-game, the player will take control of a new solar-powered car that needs to be tested. In order test the car the player will have to drive through a series of checkpoints. To control the car's vertical movement, the play will use the potentiometer. To cause the car to move forward, the player will have to provide electricity to the vehicle. To do so, the player will have to provide light to the light sensor. The more light that is applied to the sensor, the faster the car will move.

The last mini-game will revolve around picking up trash in the neighborhood. The player will take control of a crane-like arm and pick up trash that appears in a park. To control the position of the crane the player will use the potentiometer to move the arm left to right. To clamp down on trash, the player will have to apply pressure to a flex sensor. The more pressure that is applied on the flex sensor, the more the arm will clamp down. The objective is to pick up as much trash as possible in the time limit.

Other Stuff:
Project Website
YouTube Video of the Project

Neptune

Team:
Matthew Fugere
Chris "Goober" Ramsley

Game Blurb:
In Neptune, you take the role of the god of the sea. It is your job to sink ships as they pass over your domain by stomping the ground to make terrible waves, and using your mighty breath to whip up deadly winds.

Device Usage:
The player makes waves by stomping on two drum pads that lie on the ground, and makes wind by blowing into a microphone. Two fans will blow on the player from either side as wind blows in the game.

Other Stuff:
Project Website
YouTube Video of the Project

Touch Tin Piano

Team:
Garret Doe
Ryan LaSante

Game Blurb:
"Touch Tin Piano" is a brand new instrument that allows players to use their own computer as a music device. With one hand you play a piano style keyboard to play music using your computer, while with the other hand control the octave and volume of the notes using the Touch-Tweak Pad.

Device Usage:
The TTP has two different controllers making up the instrument. The first is a piano style keyboard made out of aluminum keys. These keys act as capacitors so when the player touches an individual key, the board can sense it, sending the information to the computer, playing the note of that key. When the player releases the key the board yet again senses the movement and sends an off signal to the music program running on the computer the device is hooked up to. Simultaneously, there is the Touch-Tweak Pad being used by the musician. This is a clear touch pad over an array of controlled led's. These led's are split into two columns and can be controlled based on where the musician last touched the screen. So the player drags the led's up or down on the touch pad which depending on whether it is the left or right half, also adjusts the volume and octave of the current note being played. The musician can also skip levels if they do not want to smoothly change the volume or octave of the notes being played by just tapping on the screen at the corresponding level.

Other Stuff:
Project Website
YouTube Video of the Project

World In a Box

Team:
Philip Tang
Andrew Tremblay
Lukas Wong-Achorn

Game Blurb:
"World in a Box" places control of a small virtual world in the hands of an ordinary player. Watch as the world advances and grows on its own, or delight as you wreak havoc and cause general destruction. The WIAB controller provides a different perspective to the player in that it gives the player a concrete representation of the virtual world, rather than the abstract notion of a traditional game "controller." The WIAB controller takes the form of a small box in which its circuitry corresponds to the on-screen city. Tilt, vibration, and even the breath of the player affect the world in the box.

Device Usage:
The WIAB controller has 5 components. 3 take stimulus from the user, 2 provide feedback. Tilt is controlled by a 3 axis gyroscope contained by a wii motionplus. Vibration is sensed by a piezo resistor. Wind is controlled by a microphone mounted on the inner wall of the box. An LED represents virtual light in the world. Large sounds in the virtual world will be played through a small speaker inside the box.

Other Stuff:
Project Website
YouTube Video of the Project


Attacking
the Problem:
As this project is of significant size, the best way to attack it is by dividing the work amongst your teammates. One possibility is to have one person focus on the I/O devices, and the other on the host code (e.g., the game).

This project will reqiure constant attention, if it is to be delivered on time. To this end, there will be three in-class status updates at which you will present the work you have done to date, along with a discussion of problems you are having.


What to Submit: All documents are to be submitted electronically via turnin by 11:59 pm on Tuesday, October 13, 2009.

The following items should be submitted for this project:

  1. The code for the project
  2. The schematics for the devices
  3. Photographs of your device and Arduino circuit (you can get a digital camera from the ATC for this)
  4. A video of your project in action. This you should plan to upload this to YouTube
  5. A brief report on problems encountered during the implementation of the project and what approaches were used as final solutions.
  6. Also, please provide a brief descriprion of what each person did.
  7. Finally, please put up a simple Website about your project. This will allow people to see what you are doing, and will also force you to think in terms of putting together a description to add to your IMGD portfolio.
Name each file something that makes sense.

When you are ready to submit, zip up all your files into a single archive file.
Name your file ProjectName_finalproject.zip.
Only one submission per team is necessary.

You will use the new Web-based "Turnin" facility to submit your work. Information about submitting can be found here:

http://web.cs.wpi.edu/~kfisler/turnin.html.

Your WPI user ID should be used to login, and you should have been emailed a password.
The Turnin assignment ID is final.


Academic
Honesty:
Remember the policy on Academic Honesty: You may discuss the project with others, but you are to do your own work. The official WPI statement for Academic Honesty can be accessed HERE.


Back to course page.