Puzzler - A Mobile VR Game


This VR project was the first assignment of Term 2 of Udacity's VR Developer Nanodegree Program. It was similar to the old electronic game Simon from the 70's, but this time in a VR environment.

The objective of the game is to enter a dungeon, observe a random sequence of 5 glowing orbs and then repeat the sequence to escape the dungeon.

The goals of the project were to sketch and design a puzzle game, test the game mechanics and design with other people, iterate the designs based on the feedback to refine the game.

The game is designed to run on an Android phone with a Google Cardboard VR viewer.


Video shown is captured from the Unity Game Development platform.


“Just because I’m old doesn’t mean I can’t learn something new!” – Albert

Meet Albert, a 70 year old retired engineer who still appreciates the intrigue of math and science.  Although he has never tried VR, his grandson is always talking about it and he wants to finally experience it.  He thinks it would be great if he could walk inside of his old engineering schematics "it'd be like something out of Buck Rogers!"


What would the environment look like? The dungeon would have an entrance and exit, with the puzzle in the middle.  In the distance would be mountains.  The play would enter, try to solve the puzzle and then leave if successful.

Interface Design

How will the user interact with the game? There should be a start screen with a button to begin.  After completing the puzzle, a message (You Win!) should appear with the ability to restart the game.

Designing the Game

I first built the dungeon, then placed the lights, added the orbs, created the start and end screens, then positioned the 3 action areas (start, play, end).  Adding the scripts to the orbs was the last step.

While previewing the game I did not like the white reticle as it was hard to see against the objects, so I changed it to red for better contrast and findability on screen.

As the amount of objects in the scene grew, it was helpful to create empty game objects as containers to group all of the similar items inside (such as the lights and the orbs)

Usability Testing

I don't like the term "User Testing" because I'm not testing the user, I'm testing the game mechanics, interface, atmosphere, etc.  At various stages of development, I would compile the game and hand the VR viewer to a friend to play test.

Some questions included:

  • Q1: How tall do you feel in the scene?
    A: Probably about 4 feet
  • Q2: What do you think the purple light means?
    A: something important, I should do something there? Probably with those blue balls, but I can't click on them.
  • Q3: How did you feel in the room?
    A: It was creepy, the walls look wet. I assume it's a dungeon because of the chain hooks on the walls and rains in the floor.

I then took those findings and iterated on the game design, increasing the scale a bit and moving the camera height to feel more natural.

In another round of testing, the user asked "hey, what happened to that cool purple light?"  I discovered that the purple spotlight was moved outside of the dungeon when the dungeon was scaled up (so it wasn't displaying on the floor).  A quick adjustment to the location of the spotlight and a re-baking of the lights restored the ominous purple light back into the dungeon scene.

Breakdown of the Final Piece

The player starts outside the dungeon in a sandy wasteland with the sound of insects quietly chirping.

After the player clicks Start, they slowly enter the dungeon.  The insects chirping fades away, being replaced by ominous dungeon noises.  The orbs then light up in a random sequence, playing a sound as they glow.

The play then moves their reticle target over an orb by moving their head.  When the target is over an orb, it highlights and the reticle changes to a larger target to reinforce what they're about to click on.

The player then has to click on the correct sequence (mimicking back what was presented to them).  If they get it wrong, a noise plays and the sequence repeats for them to try again.

They can also look around in the dungeon, including behind them, back at the entrance.

After successfully completing the sequence, the player advances through the dungeon exit and escapes! They are presented with a success message and have the option to play it again.


The Puzzler succeeded in being a quick game that's easy to learn.  All of the users who played it understood what to do as soon as they entered the dungeon.  Their delight as they looked around in the dungeon (in VR for the first time) was my favorite part.

I learned a lot about VR programming, especially relating to scale and interactivity.  Usability testing is an integral part of the game design progress and should be utilized throughout development.

Next Steps

The dungeon could be expanded into multiple rooms, each with a different puzzle to solve to continue through.  Adding more environmental props such as flickering torches and other ambient sounds would further heighten the experience.