Category Archives: Games

DinoRancher – Build Virtual Worlds, Round 5

Introduction: Developed on the Oculus Rift with PS Move, DinoRancher had guests play atop a Triceratops armed with an electric lasso. The goal of the guest was to shepherd a herd of Stegosaurus to safety, protecting them from danger.

Platform: Oculus & PS Move | Time: 2 weeks | Role: Programmer – Designer – Producer | Team Size: 5

Story:  You are a DinoRancher armed with your electro lasso and trusty trike. Travel across the desolate wasteland, and protect your herd from those nasty predators!

Design Challenges:

  • Herd behavior
  • Enemy types
  • Environment design
  • Integration of the PS move into Virtual Reality
  • Trike movement system

Design Goal: To create an experience that made the guest feel like a cowboy travelling through the desert protecting a herd of dinosaur from predators.

My Contributions: As producer I arranged meetings, delegated pending tasks, and contributed creatively. In addition as a programmer I was responsible for setting up the games environment which included, asset preparation, level design and developing agent behavior.

DinoRancher was featured at The Forbidden Forest in The Entertainment Technology Centers end of semester festival!

Festival Footage

NoseDive – Building Virtual Worlds, Round 4

Introduction: Developed on the CAVE with Makey Makey, NoseDive had guests play in the CAVE environment using airplane controls we constructed using Makey Makey.

Platform: CAVE, and Makey Makey in Unity 3D | Time: 2 weeks | Roles: Programmer – Game Designer – Producer | Team Size: 5

Story: Our game had our guests take the role of make shift pilots thrust into having to fly a plane to safety through a terrible storm when the captain has become incapacitated.

Design Challenges:

  • Adapting to the CAVE environment.
  • Creating an authentic flight simulator experience with an easily understand story.

Design Goal: To create an authentic story of saving the day through the game we created.

My Contributions: For NoseDive I was producer, designer and programmer. Being producer involved scheduling and coordination of our teams artist, programmer and sound designer. In addition I assisted my fellow programmer with environment and Unity prop setup.

Continue reading NoseDive – Building Virtual Worlds, Round 4

A Playroom – Building Virtual Worlds, Round 2

Introduction: A Playroom was a developed on the HTC Vive. A virtual reality device that allows a guest to walk around a calibrated virtual reality space with hand held controls.

Platform: HTC Vive in Unity 3D | Time: 2 weeks | Roles: Designer – Producer | Team Size: 5

Story: The setting of the game is in a play room where the guest encounters a ghost boy who needs help in-order to ‘move on’.

Design Challenge: To design a game for naive guests, conduct play tests, and make three predictions of what the guest will do all whilst having the guest ‘feel free’.

Design Goal: Round 2 of Building Virtual Worlds was indirect control round. This required we build an experience that felt free, and was intuitive enough for a guest to play from start to finish without any instruction or guidelines.

My Contributions: I analyzed, and designed the guests interactions as well as wrote our main non playable characters dialogue. In addition I conducted play tests which gave us invaluable feedback which we used to further develop the experience.

Development

Interaction Design

I focused on interaction development by first analyzing what we currently had. From that I wrote a draft story design which was a rough version of what we would aim for. Our current gameplay was clearly a linear story experience, and I believed we could achieve a greater sense of freedom by allowing a player a choice of what game to play.

From this notion I created two different interaction models.

a-playroom-interaction-general
Interaction Analysis – Development Diagram

I then met with the team, presented my two plans. We choose plan 2 which I further developed into a more detailed version.

a-playroom-interaction-map-detailed
Interaction Analysis – Component Breakdown

Audio would play a vital aspect in driving this interaction model therefore I worked with our sound designer on a script for the game which we iterated over based on feedback (script documents).

Playtesting

Once the various audio cues, and interaction model was implemented we went about play testing the game. I conducted play tests with over fifteen naive guests which included an audience of fellow students, professors and non-students. This feedback was then used to polish elements of our experience.

a-playroom-playtesting-form
Sample Play Test Feedback Form

In conclusion we correctly predicted each of the three interactions, and the guest understood our story, all with no guidelines or instruction from us.

Full Story

We began our project with brain storming, and research into the platform on which we were developing. We came up with several ideas including:

  1. Darkness Use light to guide the guest through a street.
  2. Space Exploration Explore the universe, and pick a planet to colonize.
  3. Dreaming – Flying a plane, flying elephants, flowers turn to buildings (freedom from constraints).
  4. Empty Room – Furniture place (guide them to a correct place).

Having difficulty grappling with the concept of ‘freedom’ we spoke to a member of The Entertainment Technology Faculty Jesse Schell. After meeting with Jesse Schell we honed in on an idea of a ghost boy which we would help in some manner through objects around him.

Next we thought about location, which was first a storage room due to it making sense to have many object, we then changed to a play room as it offer the potential for a ‘warmer’ environment for guests to feel comfortable.

After creating a basic room with a simple number of interactions which included:

  • Playing catch.
  • Place a train on the train track.
  • Hide & Seek.
  • Give a hug.

We had a prototype ready for interim.

Interim

After interim our two main points of feedback were

  1. Make the boy and game generally less ‘creepy’.
  2. To develop our interactions.

Less ‘Creepy’

Point 1 was a significant design challenge which we tackled by investing time into solving by:

  • Making our main game character look more human like.
  • Soothing music.
  • A warm game atmosphere.
  • A friendly, light and clear character voice.

Interaction Design

I decided to tackle point 2 by first analyzing what we currently had, then writing a draft story design which was a rough version of what we would aim for. Our current game play was clearly a linear story experience, and I believed we could greater the sense of freedom by allowing a player a choice of what game to play.

From this notion I created two different interaction models.

Interaction Analysis – Development Diagram

After meeting with the team, presenting the two plans and convincing them of the need to carefully design the experience, we choose plan 2 which I then further developed into a more detailed version.

Interaction Analysis – Component Breakdown

Implementation

Audio played a vital aspect in our experience so I worked with our sound designer on a script for the game which we iterated over three times based on feedback (script documents). In addition to audio we used a number of other techniques including:

  • Lighting – To direct the players focus.
Meeting the Boy
  • Color – Brightly contrasting objects such as with the yellow train on a blue chair, and a red book on a beige floor caught the players attention.
Train & Puzzle
  • Uniformity – A suggestive picture fragment was placed in the frame, and other similar looking puzzle pieces were placed around the level.
Puzzle Placed

After implementing these features with a new interaction model we went about play testing the game. We conducted play tests with over fifteen naive guests which included an audience of fellow students, professors and non-students.

Based on the feedback we received we continued to polish elements of the game. The end result of our work was that not only did we accurately predict each of the three interactions, but the guest completely understood the story behind our world all with no guidelines or instruction from us.

This slideshow requires JavaScript.

Multi

Platform: Windows | Time: 3 weeks |  RolesProgrammerGame Designer – Artist – Sound Designer | Team Size: 1

Introduction: Multi is a game built on Game Maker for Windows using Game Makers scripting language. Players control a character who traverses a series of levels in a platformer style game play.

Design Goal: The primary ‘design goal’ with this project was to further my design skills whilst practicing level and mechanic design.

Design Challenges:

  • Creating levels that were interesting to play with the mechanics I created.
  • Difficulty design.
  • Teaching players how to play.
  • Audio which included, character, and environment sound design.

My Contributions:

  • Programmed the code of the game (adapting some freely available physics code). I completely designed the game.
  • Made the majority of art assets (character art and animation taken from a game maker tutorial)
  • Collected audio that suited the game play from free sources (credits bundled with Multi).
  • Conducted play testing with younger audiences which I believed would be interested in the game.

Continue reading Multi

Jam-O-Draw – Building Virtual Worlds, Round 3

Introduction: Jam-O-Draw is a game we created in the lightning round (single week round) of Building Virtual Worlds.

Platform: Jam-O-Drum | Time: 1 week | Roles: Producer – Game Designer – Programmer

Story: Jam-O-Draw was inspired by the classic etch-a-sketch game.

Design Goal: We wanted to create a multiplayer artistic experience with a fascinating reveal.

Design Challenges:

  • Adapting to an unfamiliar platform.
  • Creating an aesthetically pleasing experience using visuals and audio
  • Having the user interface during the experience be responsive and informative.

My contributions: My primary role on this project was as producer which involved making creative contributions, arranging meetings, coordinating our artists, programmers and sound designer to create the game in a timely manner. My programming responsibilities included assisting my fellow programmer with development, and preparing the game environment and assets.

Jam-O-Draw was featured at The Forbidden Forest in The Entertainment Technology Centers end of semester festival!

Festival Footage

Seize the Sky – Building Virtual Worlds, Round 1

Introduction: Seize the Sky was built during Building Virtual Worlds at Carnegie Mellons Entertainment Technology Center. The world was constructed using Oculus Rift, and Leap Motion. Using these technologies we put our guest into a virtual reality space with an ability to use a natural interface in our world.

Story: A mighty giant heads towards a town with murderous intent. A country side boy notices, and cries to Zeus for help to defeat the giant to save the city. You are Zeus, save them all!

Platform: Oculus Rift + Leap Motion in Unity 3D | Time: 2 weeks |  RolesProgrammer – Game Designer

Design Goal: Our design goal with Seize The Sky was help character A (the boy) who is afraid of character B (the giant).

Design Challenges:

  • Incorporating a satisfactory use of Leap motion.
  • Achieving our a sense of character A is afraid of character B.
  • Level design.
  • Game-play design.

My Contributions: As the lead programmer on Seize The Sky I made large contributions to the code base for this project. I also took an active part in the design process with working with the team to develop various aspects including game play, and level design.

Development

Iteration 1

The development process started with being assigned teams. In our first team meeting we made clear our skills, started brainstorming ideas, and kept good development processes in mind.

This slideshow requires JavaScript.

During brainstorming we tried using several appropriate methods, such as gesture centered brainstorming (due to our use of Leap Motion). Finally we had five initial ideas:

  1. Help mend relationship between characters.
  2. Play piano to make baby sleep.
  3. Use light to guide a character home.
  4. Keep animal safe growing to adulthood.
  5. Hold characters hand to guide them.

This slideshow requires JavaScript.

With our initial ideas we further boiled them down to three concepts with the following reasoning:

  • Concept one was hard to conceptualize compared to our other ideas which seemed simpler and more clear.
  • Concept five could be incorporated into concept three.

Creating sketches of each concept we then sought out the advice of our professor Jesse Schell.

bvw_round_1_initial_three_concepts

With Jesse Schells feedback we went with concept C, because we wanted to explore squeezing in Leap Motion.

bvw_round_1_post_meeting_notes

We then began further conceptualizing the idea with sketches, and research into the capabilities of Leap motion and Oculus.

This slideshow requires JavaScript.

With this in mind we began assigning tasks to complete, considering game play, and used a scrum board to assist us in tracking tasks.

This slideshow requires JavaScript.

On the technical side we used a NavMesh, and simple A.I. to run the behavior of the Hunter and Deer. The behaviors of the two agents were essentially:

  • The deer always moved to nearest tree that has an apple.
  • The Hunter patrolled around fixed points, and if it came close enough to the deer it began chasing it.

The result of our hard work was the following.

We then received feedback at interim, which sadly wasn’t good…

Iteration 2

Continue reading Seize the Sky – Building Virtual Worlds, Round 1

Know – An Educational Card Game

The following are play instructions for Know, and educational card game.

know_logo

Equipment

To play Know requires the following equipment:

  • Blank Cards (or pieces of paper).
  • Pens (not pencils).
  • Teams (at least one player per Team).
  • Source of Answers e.g Academic Textbooks.

Definitions

These are the definitions for terms used in Know:

  • Answer Cards A card that has written on it a Teams ID, their Answer and the Question number that the Answer Card is addressing.
  • Point Pool – The number of points available to be won on a Question.
  • Question Cards A card that has written on it a Teams ID, their Question, and a unique Question Number.
  • Question Prep A round for preparing Questions.
  • Question Round A round for asking Questions and submitting Answers.
  • Resolution A round for marking the Answers to Questions.
  • Round Deck A collection of Answer and Questions Cards for a Question Round.
  • Team ID A secret identifier that is unique to each Team.

Continue reading Know – An Educational Card Game