My Udacity Puzzler Project
by Hunter Phillips
As part of my coursework with Udacity, I designed, tested, and iterated on a mobile VR experience called Puzzler. In this game, players enter a dark, gloomy, dungeon room and are required to solve a 3-D puzzle, similar to Simon Says.
For this application, several considerations were taken into account, specifically:
· Performance on mobile devices
· Simple, intuitive space and puzzle mechanics requiring little instruction or explanation
· Minimize VR sickness to ensure an enjoyable experience
As part of the development process, I developed a unique persona, named Mike, to serve as the potential audience. Mike enjoys simple games that present a moderate mental challenge. Because of this, he enjoys games that don’t require a long-term commitment. His ideal game can be played at his leisure, put down and revisited any number of times, without frequent check-ins or a lengthy familiarization period. Mike likes “games that engage my brain and challenge me” but “don’t require a lengthy time commitment.”
Development took place with this user in mind.
Scene and Atmosphere
My initial goal was to establish a room that was dark and gloomy. I wanted to limit the overall lighting to maintain a darker mood, while using several spot lights to highlight the important game objects. Additional lighting was established to illuminate set pieces to enhance the atmosphere and allow curious users to look around and enjoy a fully developed room environment, while not distracting from the key gameplay components.
I then proceeded to more fully develop the exterior of the room to further enhance the overall atmosphere. I created an exterior environment to place this room in a secluded, abandoned farm-type location. I placed some mountains surrounding the room the give it a realistic location in a world, while also making it appear and feel secluded.
The overall gameplay is fairly simple and straightforward. For VR, user movement is constricted to minimize VR sickness. The user starts at an initial spot outside of the main gameplay area. A simple user interface is displayed allowing the user to look around and select the start button using their gaze and the button click on the Google Cardboard.
After clicking Start, the user “glides” inside of cabin, with the 5 gameplay orbs in clear view floating in front of him. The orbs begin to light up in a randomly generated sequence, with accompanying sounds to attract the user’s attention. After the light-up sequence is complete, the user is free to attempt to duplicate the sequence at their leisure.
Upon successful completion of the puzzle, the user is moved through the exit of the cabin, and a “success” UI is displayed. The user then has the ability to select restart to move back to the beginning and try again.
Testing the Scene and Atmosphere
Throughout development, I user-tested with one individual to obtain feedback regarding the overall mood and atmosphere within the scene.
I first tested that the scale of the building and camera height felt consistent with real world counterparts. The door, room, and camera height were all adjusted according to user feedback.
Next I focused on testing mood within the room where gameplay takes place. As stated in an earlier section, my initial goal was to establish a room that was dark and gloomy. My game-tester stated that the overall mood was “spooky” and “dark.” This was in line with my stated goal.
Finally, I tested the game mechanics and gameplay. Overall, all gameplay was reported as easy to intuit and perform. My user-tester stated that the difficulty level was “on the easy side,” however, that it was also, “hard enough that I didn’t always get it right on my first try.” For now, that is the appropriate difficulty level for this game.
Additionally, I tried to create a rapidly blinking light display when the puzzle was solved. My user indicated that the camera was moving before that blinking display finished, and that because of this, the sound effects with that light display were being played, but the user was not able to see what was going on. Through several additional iterations and tests, I decided that it was simply best to have all 5 game “globes” light once instead of blinking. In the future, I may wish to revisit this and develop a more elaborate “win” sequence to provide a more rewarding experience upon solving the puzzle.
Breakdown of the Final Piece
The player starts outside of the dungeon with a UI rectangle displayed in front of him. If the player chooses to look around, the overall scene was developed as sort of a reddish/brown desert canyon location to give the scene some overall character as well as a feeling of isolation.
There is one button allowing the user to start and proceed inside the dungeon to begin the puzzle.
The player glides slowly inside of the dungeon room. There are several assets added to contribute to the overall mood — barrels, torches, and a coffin.
The five orbs float in the middle of the room in front of where the player is stopped. They begin to light up in the sequence the player is to replicate. A sound effect is used to correspond with the light up effect. The player is then free to proceed at their own pace. There is no time limit.
Clicking on a correct orb in sequence allows the user to proceed to the next choice. Choosing incorrectly prompts a sound effect indicating an error, at which time the puzzle resets, and a new random sequence is generated and displayed.
Repeating the displayed sequence correctly successfully completes the puzzle. All five orbs light up together, and the player is moved through the exit to the outside of the dungeon where another user interface is displayed indicating the player’s successful completion of the puzzle. One button appears allowing the user to restart the entire puzzle from the Start.
Full Gameplay Walkthrough:
Lessons Learned and Hopes for the Future
During development, I was getting a drastic difference from what I was expecting and what was actually being displayed. For some of the assets reimporting resolved some of the visual issues I was seeing, however it was very challenging trying to predict what my scene would look like while adjusting lights. Below are screenshots of my pre-bake and then baked scene.
As mentioned in the User Testing section, it is my plan to develop a more rewarding and stimulating “win” sequence in the future. Also, while the user is moving from the end point back to the start point, the pointer is not disabled, which leads to orbs being “clickable” during movement. This doesn’t inhibit gameplay in anyway but it does lead to an unintentional light-up of the one of the orbs during the player’s transit from end to start. That is something I would like to eliminate in a future version.
As a separate, personal endeavor I explored deploying my VR project to a Samsung Gear VR. Initially, the was not being displayed in any way playable. After troubleshooting and learning more about the settings preferred for the Gear VR, I was able to set up my project for quick deployment to either Google Carboard or Gear VR. That was one of the more satisfying outcomes of this project for me.
Puzzler GitHub: https://github.com/hphillip21/PuzzlerUdacity
My GitHub Home: https://github.com/hphillip21