Today we have a guest blog post from Andy Moore at Radial Games, one of the companies behind Fantastic Contraption
A few days ago we released Fantastic Contraption v1.5: The Kaiju Update
. The update's key feature is the ability to rescale the entire play space so that you can tower over the levels like a lizard over Tokyo. Why and how did we do this? First, we have to explore the reasons behind the initial scale of the game.
The Benefit Of Room Scale Design
Fantastic Contraption was built from the ground-up to be a 360-degree room-scale experience - one that uses your entire room and requires you to move and turn around. There were two primary reasons for this; the first (and most obvious) reason was simply that the Vive was the just-announced hot-new-product and we were excited to push our new toy to its limits.
The second reason was that, at room-scale, our in-game actions trigger proprioception queues in your body. Your body uses proprioception to feed your body extra data about your environment; for example, there are nerves in your neck that help you feel a sense of awe when you look up at a skyscraper; those nerves don't fire when you look at a photograph of the same skyscraper, so those feel like different experiences to you. Building a large contraption that fills your living room triggers these various physiological reactions, and we believe any game that fully leverages these queues will - by default - feel more real than any game that ignores them. We love the sense of room-filling majesty a large contraption can invoke in players; we love that players have to duck under connecting beams, step over oddly spaced wheels, dodge windmill arms, and inch back cautiously from catapults. These all add to the experience in a very real (if hard to measure) sense.
Being able to forget our mundane reality and being transported to Fantastic new environments was key for us, and room-scale technology really made that easier to achieve.
The Challenge Of Room Scale Design
There are two big problems with room-scale design though. First, simply not all games fit the format; many experiences would work just as well seated, standing, and sometimes even as a flat game not requiring VR at all. Thankfully we designed the game from day one to be room-scale and didn't have to wrestle with this one.
The second problem is accessibility. To play Fantastic Contraption we required you had a large play area and an able body. In some cultures, tiny living spaces is the norm, and entire markets were cut off from us. People that lacked flexibility in their joints, the elderly, the wheelchair-bound, the people with their leg in a cast, and the disabled in general - we were leaving them out in the cold. Finally, let us not forget those anguished souls among us who choose to stay less mobile when gaming. We get it, you had a long day! Maybe you want to relax and get off your feet!
When we considered how many people were missing out on building Fantastic Contraptions, it gave us sad faces. We made the decision that while Fantastic Contraption was /best/ played room-scale, /requiring/ it was unfair.
Planning The Change
We wanted the game to be whimsical, fun, and cute - but fit the play space of as many people as possible. Our goal was clear, but the path to obtain it was quite murky. Could we take our already-implemented "grabby claw" and make the game work from a universal standing position? Could we just bring all the interaction elements closer to the player? Could we do clever level design to make everything just work with minimal changes?
Soon after the initial launch of the game, we put a few "experimental" buttons in the Settings menu and let people change their play space to test these ideas out. We built some presets for seated and standing modes that people could play with and made some minor edits to see if this kind of gameplay had legs.
It turns out that didn't work so well. All the effort we put into making things feel big, your play area feeling uncluttered, open, and relaxing - all went out the window when we started crowding things up against you. Editing objects far away was annoying. Sometimes a person's desk would prevent them from reaching the floor; sometimes people would "lose" an object by accidentally placing it behind them and never turning around, or even just placing it under their chair or inside their couch. We needed a different solution.
After a lot of multiplayer meetings on the green of Cloudlands: VR Minigolf
, we came up with the idea of having two primary modes: the standard room-scale mode, and a second "scaled" mode where you stand /beside/ the play area and can scale, rotate, raise/lower, and otherwise place the game wherever you want.
Custom Scaling - The Killer Solution
Because we allow you to set the height, size, placement, and rotation of the play area, we ended up solving a lot of problems in one fell swoop. You could now quickly size the area to fit on your lap for seated play, or you could scale it up fairly large and sit cross-legged on your floor to play. You could align it beside you so you don't clip the tea on the edge of your desk or set it up for someone in a wheelchair. You can make a "mini room scale" configuration that allows shorter humans to feel like they are ten feet tall. You can make your play area face your tracking device head-on for better visibility. This scaling solution ended up being very customizable, and therefore very flexible for just about every situation.
So flexible, in fact, that this change also made the game hardware-agnostic. As long as you have tracked hands, the game would now work well with any modern VR hardware with any space restriction you might have. From a business angle, making this change was a no-brainer.
This scaling solution put an ace up our sleeve as well. We often struggled with how we'd implement a level editor - when by definition the level exists outside of your reachable play space. With the scaling solution now implemented, getting the player within arm's reach of any corner of the level was trivial. Implementing a scaled mode of play made the level editor possible, and now we're wishing we built this feature first for our own use! (Our next big patch will contain the level editor for everyone to enjoy.)
Implementing this wasn't exactly easy and required a lot of re-design. Now that the player was standing, looming, over each of our levels, we realized they were potentially standing inside level geometry; all of our levels had to be touched up, and some had to be mirrored or flipped to ensure there was always safe standing space. We had to worry about things (like text or save-game-models) being visible when scaled down, tutorial fonts and placements had to be reworked, and we redesigned the helmet-world entirely to fit the new paradigm.
Then there’s the interface. Figuring out exactly how to scale the world with such flexibility in 3D space took a lot of brainpower and iterations. Tons of work all around. We're now over 6 months from our initial launch and we just now felt comfortable enough to release the feature! We learned our lesson, though - start early. Plan for this eventuality.
It's definitely worth it, though. We encourage all developers to make a flexible, accessible design - not just for your users, but for your game's and studio's own health as well. VR is a new market, and every little edge you get is a foothold that will keep your studio (and the whole ecosystem!) afloat for the coming years. Use everything in your toolbox! Limiting your game to one niche of customers is dangerous!
If you're starting fresh, think of all these eventualities up front. Changing everything after the fact was hard (as we learned!), but engineering for this from day one isn't a lot of extra work.
And for the gamers out there - we're excited that everybody has a chance to try out our game, regardless of their mobility or real-estate limitations.
Let's make something Fantastic!