Alt.Ctrl.GDC Showcase: Roambot
The 2019 Game Developers Conference will feature an exhibition called Alt.Ctrl.GDC dedicated to games that use alternative control schemes and interactions.
Gamasutra will be talking to the developers of each of the games that have been selected for the showcase.
Roambot will have players moving a robot's body around so that they can explore its dreams, shifting its antennae, head, hands, and legs to meander its sleeping visions.
Jack Ford, designer of Roambot, spoke with Gamasutra about turning a full-sized robot into a controller, the feelings of empathy that can come from controlling another person's body within digital worlds, and how a unique controller can change the perception of what is possible with games.
My name is Jack Ford, and I’m the sole designer for Roambot.
I graduated with a degree in film from the University of Texas at Austin last May, but many of the classes I took for my major were actually game dev-focused. My interest in game storytelling and narrative design took me to GDC 2017, after a Twine game I wrote got me an invite to Telltale’s creative workshop that year. Since then, I’ve been working on personal creative projects and building my portfolio in the hopes of working in games professionally. Roambot is my biggest project so far.
Checking for electric sheep
Roambot is a game about exploring the dreams of a sleeping robot, and the controller is the robot itself. His dream world is displayed on a nearby TV, which you “tune into” by tilting his antennae left and right. Physically tilting and rotating the robot’s head changes the first-person view within the dream, and reclining his legs up moves you forward. You can also interact with objects in the dream world by closing the robot’s claw hands.
The means to build a sleepy robot
The game itself was created in Unreal Engine 4 and coded using Blueprints. The in-game assets were made using a combination of Blender, Inkscape, and GIMP. I also used Steam’s controller configuration settings to map the gyroscope in a DualShock 4 to the mouselook, which is how the head tilting control works.
There are two main components to the physical Roambot: the robot, whom I call Romeo, and his chair. Romeo is made primarily of cardboard boxes painted silver, and his arms are one long plastic ducting tube. His claw hands are just some dollar store long-reach grabbers, to which I’ve added metal contacts on the end connected to speaker wire so that closing the claw completes a circuit. The circuit is connected to the PC via a Makey Makey USB module - the claw registers as the use key, and the reclining leg rest registers as the forward key.
The prototype I initially submitted to Alt.Ctrl.GDC sat in a wooden folding chair. For the final version, it was important to me that the chair looked like an actual old recliner to better communicate the story of my game, so I built a new chair out of PVC and a fabric/foam cover so it could be disassembled for transit.
Working with what you know
When I started on this project, I didn’t know what kind of game I wanted to make, and I had no experience with electrical engineering and the like. So, I decided to begin by brainstorming creative ways to implement pre-existing tech that I already knew how to use. At some point, I remembered Steam could be used to re-map the inputs on the DualShock 4, including the gyroscope, and since the games I like to develop and play most are usually first-person, it seemed like a natural fit to connect the mouselook to the tilt controls.
From there, it was just a matter of coming up with a narrative scenario that fit this control scheme, and rotating a physical head to rotate an in-game view seemed like it could be the beginning of a fun experience. The character became a robot once I realized the joysticks could act as antennae.
Also, I just like robots.
The way we interact with games is always in some level of abstraction. I think that, by essentially using a life-size dummy as the controller, you eliminate several layers of abstraction and get closer to a one-to-one relationship between interaction and what happens on screen. It’s kinda like VR, except you’re further removed from the game world.
A robot controller to create atmosphere
Many of my favorite games are focused on exploration and investigation -- immersive sims, “walking simulators,” and roleplaying games. I love how these games can have such a strong sense of atmosphere and communicate their narratives through the environment, and that’s something I wanted to emulate in Roambot. Movement, sight, and touch are the essential interactions for these games, so I made sure my controller had an input for each.
The challenges of turning a robot into an input device
Honestly, once I had the basic idea for the controller’s design, assembling it wasn’t all that complicated, and there wasn’t much physical troubleshooting to be done. The more difficult part came on the coding end, since that’s what I have the least experience with. The robot’s antennae are attached to the DualShock’s joysticks, and the game generates a random X-axis value for each stick, so that the closer the antenna is to that position, the clearer the static on-screen becomes. It was a challenge figuring out the math and implementing it, but once I cleared that hurdle, everything else was pretty smooth going.
The only other technical challenge was figuring out how to allow players to turn all the way around if they need to without making the head twist backwards. I solved this by adding some mouse acceleration to the game, so the faster the head is rotated, the further the in-game view rotates.
Creating empathy by living the life of another
Narratively speaking, the players aren’t even the ones experiencing the game world - the robot is. Whereas in most games the main character is a stand-in or avatar for the player, in Roambot, the control scheme makes it clear that the players and the protagonist are separate entities. Because of this, I hope players come to process what’s happening in the game through a lens of empathy - an understanding that they’re peering into someone else’s personal experience, even if that someone is a robot.
I’ve also always been fascinated with the idea of the mind being represented as a place, like a labyrinth of hallways and rooms containing the different thoughts, memories, and dreams of a person. It seemed like a fun challenge to imagine what that mindscape would look like for a robot.
A co-op game that encourages discussion
I think any experience is enriched when you share it collaboratively with another person. Roambot is a game that would probably be single-player if played with a traditional controller, but because the robot controller is large enough that it requires two people to operate, the players are forced to cooperate and discuss what they’re seeing. The hope is that both players get more out of the experience by having to put words to their intentions, leading them to experience the game from more than one perspective.
Exploring unique play through unique controllers
The vast majority of games are made to fit one or two pre-existing control schemes - the standard gamepad and mouse/keyboard, or a touchscreen and tilt controls, or occasionally some combination thereof. I think it’s important for people who make games -- really, all artists and creatives -- to expand their horizons and stretch their design abilities by trying things that have never been tried before. The games and interactive experiences that excite me the most are the ones that have a unique new approach, which is why I love Alt.Ctrl.GDC.
Reversing the typical game dev process by designing a controller first, then making a game to fit it, rather than designing games for the controllers we already have, is a great way to shake things up and come to new ideas we might never have otherwise discovered.