Haunting Hour
Project Details
Studio: Glass Cat Studios
Team Size: 14
Engine: Unreal
Language: Blueprint
Hardware: HTC Vive, Oculus rift
Roles: Puzzle Design, Level Design, Gameplay Scripting
The Haunting Hour is a Multiplayer VR Escape Room in which the players are ghosts escaping from a witch’s mansion. The game’s design focuses on the unique opportunities provided by virtual reality. Puzzles materialize from nothing; objects and set pieces float through the air; some clues exist outside the playspace waiting for a ghost to reach through a wall. Additionally, the game brings multiplayer interaction to a hardware system that has hardly begun to even explore single player.
My Duties:
Lead the design team in creating a one hour long virtual reality escape room experience.
Write, record, and add all in-game dialogue, narration, and text-based hints.
Invent puzzles that explicitly take advantage of the virtual reality design space.
Oversee all QA testing.
Puzzle & Scripting Process:
This was my first project as a full time gameplay scripter, and it was a great experience. The leads took a chance on me and allowed me to implement my own puzzles and game systems even though I had applied as a level designer; I can’t thank them enough.
As a puzzle designer I was tasked with taking VR puzzles from paper concept through complete implementation including multiplayer networking. The process was as follows:
Free-form or assigned theme puzzle concepting
Design tasks were assigned with a theme (Magic, Trickery, Monsters) or a requirement (Multiplayer, Sound, Riddle).
Each design was pitched to the group so that we could critique and discuss level flow.
Pseudo-code and architecture design
I wrote pseudo code to concept how I would put the pieces together for each puzzle or system.
For each puzzle, I ran my intended code by the lead programmer or the other technical designers to get feedback and find ways to improve.
First pass implementation and testing
I scripted a prototype of the puzzle for testing. The first pass wasn’t complete until all pieces worked for single player VR.
We used this testing both to make sure that all portions worked, but also to test feedback and completion time for players.
Second pass and Networking
For the second pass, my code was checked by other technical team members and feedback was given. I implemented suggestions to optimize the code and cover edge cases.
I then changed the events and calls to accommodate server-side networking. While I was only doing the front-end, it gave me a lot of insight into how systems speak to each other and the logic behind replication.