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!
Design Goal: Our design goal with Seize The Sky was help character A (the boy) who is afraid of character B (the giant).
- 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.
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:
- Help mend relationship between characters.
- Play piano to make baby sleep.
- Use light to guide a character home.
- Keep animal safe growing to adulthood.
- Hold characters hand to guide them.
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.
With Jesse Schells feedback we went with concept C, because we wanted to explore squeezing in Leap Motion.
We then began further conceptualizing the idea with sketches, and research into the capabilities of Leap motion and Oculus.
With this in mind we began assigning tasks to complete, considering game play, and used a scrum board to assist us in tracking tasks.
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…
Players were confused, certain sounds were overwhelming, guests felt disconnected from the experience, and there was little sense of helping character A who is afraid of character B.
With a heavy heart we had to go back to the drawing board and re-design the experience based on the feedback we had received. In particular it was Jesse Schells suggestion, at interim, of a more mythical/epic scenario which had a large impact on our considerations. We brainstormed until we finally came up with two ideas.
Of the two ideas we went with a giant chasing a little boy because it felt the most epic. With an idea in mind we started conceptualizing again with sketches.
Energized with a new idea we quickly began crafting a new experience. In the development of this new concept we made a number of design decisions:
- Leveraging the size of the giant to create a feeling of epicness making his movements slow and large booming footsteps. and had the camera placed low to exaggerate that.
- Making the little boy visibly run away from the giant to make the relationship clear.
- Making interactable objects brighter than non interactable objects.
- Choosing lighting, and a skybox to reflecting the critical nature of the time. The dawn/or the sunrise of the town you are running to symbolizes the survival or destruction of the town.
- Making the movement path of the game play linear for ease of implementation purposes.
- Designing the level again using a map with game play elements.
- Having the giant speed up over time to increase the intensity of the experience.
- Reusing the river mechanic we developed in the first game, this time having it slow down the giant when the river was activated.
- Creating thunderclouds out of the cloud mechanic which would shock the giant on contact stopping him briefly.
One of the major design issues we faced was with guest reach. Since it was limited to the guests local area this resulted in our guests feeling unable to help character A.
To tackle this issue we designed a new implementation to use an object attached to our Leap Motion hands that had a linear multiplier attached to it.
Play testing revealed a number of issues, but the feedback was generally positive. We improved this to instead use an exponential multiplier to increase the Leaps Motions range of effect. Play testing showed this was more satisfying as the object moved a much greater distance much faster giving more control to the guest. Lastly we added a glowing orb effect to make it clear where the players object was.
With the core of Seize The Sky assembled we went about completing the last elements of our experience, namely the title page, name, win and lose screen.
In conclusion we worked really hard, built a prototype, then successfully rebuilt it based on feedback, and did much better. Seize the Sky is a project I’m proud of.