Our team has been dedicated to fleshing out this game and we’ve developed a ton since being winners in the Oculus jam. From demoing at Maker Faire, Levi’s Stadium, as well as many other conventions, our playtests have given us a wealth of insight into what worked and what didn’t in our jam version and we’ve been cranking to address these points with iterative design.
Our game is more comfortable now. While we loved the inventory/UI in the stars innovation, we’ve pared it back to reduce neck strain on the user. Following the shooting star to the sky is no longer mandatory. The constellations represent more of a global progress marker now, and can be accessed like an almanac. For example, when a new enemy, trap, or loot item is encountered/conquered, a constellation record reflects this progress, and the sky fills in as the player progresses deeper into the maze.
We’ve removed the very basic matching mechanic, and replaced it with a more robust, procedurally-based puzzle design. Rather than finding a bounty scroll and having to find matching items in the world, the moment-to-moment gameplay is now filled in with a system of traps, enemies, and loot. For example, if the player encounters an arrow trap, and they’ve looted a shield, they can block the arrows and collect those that bounce off. These can be loaded into the crossbow and used to attack. If the player encounters a fountain, and they’ve collected an umbrella, they can use it to deflect the spray; otherwise their map is soaked and temporarily unusable. These are just a couple examples of the traps we’ve implemented since the jam.
To address the overwhelming novelty of VR, we’ve doubled down on intuitive moments, and have removed interactions that weren’t obvious, such as using the fan to remove clouds from the sky. One of the winning moments in our jam was when a player used a tool in front of them. We’ve updated our design to capitalize on this feel-good moment in VR to have lots of tools to use to interact with the world including crossbows, syringes, lamps, kaleidoscopes, Turkish Delights, a map, and more. We’re currently designing a portal tool to expedite navigation and add more puzzle depth.
While the player still steers with their eyes, they’re no longer penalized with crashing hp hits if they run into a wall. We added the ability to U-Turn and control speed at any time rather than just in compass mode. We’ve remove the 3 distinct fixed districts and are replacing them with a procedurally-generated set of mazes that grow in complexity as the roguelike is explored further and further. The unique assets from these old districts, such as the stained glass of the glassblowing area and laundry lines of the textile districts have been repurposed in the new procedural level design.
Our world was too sterile, and we’re addressing that with NPCs. We added a mischievous monkey that runs along laundry lines and jumps down on the player, who must then shake their head to get rid of him. The lore has fleshed out a bit more toward an ancient Assyrian mythological theme. There’s a Lamassu character that can attack the player once they’ve stolen his relics. The sea cobras have more of a fleshed out puzzle design, waking once they’ve been flown over. We’re also working on a crocodile puzzle enemy.
Our art has matured. Our distinct style still sets us apart, but we’ve developed our water as well as other assets in game. We’re playing with some fun UI that takes advantage of 3D space.
Our goal is always to be at a solid 60FPS and we felt we hit that on Note 4/Kit Kat for the jam. Since then we’ve gotten our hands on an S6/Lollipop and got that working (minus MSAA which seems to be a perf killer on the S6 only). We’ve also added a new water shader which is more fancy with higher performance, rendering the reflected buildings only once, rather than once per eye. We’ve upgraded our OculusMobileSDK to .6 from the .4.6 we used on the jam. We added a new flavor of instancing to allow us to draw many small objects in batches, like the arrows from the arrow trap. And we’re investigating alpha-to-coverage techniques to get transparent models into the game.