Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
March 23, 2019
arrowPress Releases







If you enjoy reading this site, you might also want to check out these UBM Tech sites:


Alt.Ctrl.GDC Showcase: HOT SWAP: All Hands On Deck

February 21, 2019 | By Joel Couture

February 21, 2019 | By Joel Couture
Comments
    Post A Comment
More: Indie, Video, alt ctrl gdc



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.

HOT SWAP: All Hands On Deck will have two players assembling their controllers as they guide a ship through deadly waters, swapping parts for the varied functions they'll need to survive.

Gamasutra sat down with Peter Gyory, programmer for HOT SWAP: All Hands On Deck, to talk about how they created a controller that players will be swapping parts for, how they designed play around keeping players scrambling for the right inputs, and the interesting elements that come from two people trying to work together under stress.

Creators of ship parts

I’m Peter Gyory. I programmed most of the digital portion of HOT SWAP: All Hands On Deck, including the Arduino code for the controller. I also helped solder and assemble the physical components. My teammate Clement Zheng designed and constructed the inputs, as well as created the digital assets for the game.

My bachelors is actually in Game Design and Development, although it ended up being more of a hobby for me than profession for a while. Right now, I’m a master’s student in the ATLAS Institute at the University of Colorado Boulder where I study Creative Technologies and Design. I’m interested in building a research career out of exploring embodied interfaces for games like HOT SWAP.

A co-op ship game of sharing inputs

It’s like if we took a regular game controller, popped off all of the inputs, and made it so you could only use a couple of them at a time. There are two controllers, with each consisting of two input slots. Each controller controls one side of the ship, port or starboard. There are five actions total in the game, each executed with a dedicated physical input: a crank to raise and lower the sails, a wheel for turning the rudder, a hatch for loading the cannons, a wick for firing the cannons, and a flame button for dousing the fire.

There is only one of each input, which makes them a shared resource that players must trade back and forth as they play. There is this old Milton Bradley kids board game from the '90s called Perfection where players must fit shapes into holes before a timer is up and the board shakes to make everything pop out. HOT SWAP is like if Perfection had a screen attached and had a goal outside of putting shapes into slots.

Creating a ship in pieces

All of the code is done with JavaScript and the library Three.js, which we bundle into a desktop application using Github’s Electron. The brain of the controller is an Arduino Micro, which mostly just passes data along.

The inputs are created with the Mechamagnets technique that Clement has been developing through his research; all 3D printed in PLA with neodymium magnets embedded in them. The actual “hot swapping” is facilitated by pogo pins that line up with our custom PCBs for each input. Also, lots of chocolate croissants.

Assembling the controller as you play

Our initial pitch to ourselves was “What if you had to assemble the game controller as you play?” This is actually the second game we’ve made using this controller. We always knew we wanted to make a two-player experience, but the first iteration of HOT SWAP was a simple single player tank game with four inputs and only one controller base with two slots. It was more of a proof of concept that we used to test our core idea of swapping controller inputs.

For HOT SWAP: All Hands On Deck, we were interested in creating a game that required players to change roles through a direct exchange of the interface components. Games that force players to switch roles during co-op play, like Lovers in a Dangerous Space Time and Overcooked, were our main inspirations during the design process. The boat came naturally since ships have a lot of components and properties for us to translate into game mechanics, and let us work with the metaphor of players being a “crew.”

Creating play around switching jobs

One of the main reasons we chose to make a ship combat game was the natural separation of the two sides of the ship. There is only one of each input, so if you want to do an action like load the cannons on both sides of the ship, you will have to trade with your partner. To ensure that there is always a little chaos, we made sure that there were five inputs needed for the four total input slots, leaving one input always floating.

We also realized from the tank game, where we went with a more standard array of inputs (two buttons, a knob, and a joystick), that if we wanted players to be swapping all the time, the inputs themselves needed to be more distinct and thematic. Our second set of inputs really relies on the power of 3D printing to help us create bespoke interfaces that reflect the in-game action more directly, such as flicking a “wick” switch to fire the cannons.

On making the inputs easy to tell apart 

We just tried to keep everything as literal as possible. For steering, we designed the input to look like the helm of an actual ship, and the same extends to every input. Each one also feels completely different in your hands even though the crank for the sails and the helm use the same exact mechanism under the hood.

Making the inputs easy to install in a hurry

Magnets are magical. With the irregular shape of the inputs and the magnets at the bottom, the players can only insert them in one orientation.

The unique ways players work together

Couch co-op games always have a small aspect of nudging and poking as people communicate, and we wanted to emphasize this with HOT SWAP. It is especially interesting to watch as players change strategies and create a rhythm for swapping inputs with each other. In some playtests, we would see people place inputs on the table for the other player in anticipation of their needs, while other players would reach across to their partner’s controller to take what they needed.

For me, the most interesting moments in the game come when strategies break down. The start of the game is very calm, with an enemy appearing every 10 seconds or so, and that allows players to get familiar with the controller and their partner. Things quickly escalate, and strategy evolves as new problems arise. My favorite thing to see is a perfectly coordinated team completely devolve into chaos once the ship catches on fire for the first time.

On how people and their interactions make for interesting play

Traditional game controllers don’t take into account the physical space around the players, but games have never existed just on a screen. When I would play Mario Kart on the couch with my siblings as a kid, we would always screen cheat and stand in each other’s view to gain an advantage.

With HOT SWAP, we wanted to activate the physical space around the players intentionally and force them to be aware of both the physical and digital context of the game. Because there are more actions for the players than they can have space for on their controllers at any point in time, they are forced to put something aside and remember where it is.

People are far more interesting than any game by itself is ever going to be, and HOT SWAP relies on the inconsistency of players to be fun and engaging. At its heart, HOT SWAP is also a puzzle, not only because you have to place pieces in the right spot at the right time, but because you need to find a rhythm of trading that piece with your specific partner if you want to succeed.



Related Jobs

Maximum Games
Maximum Games — Walnut Creek, California, United States
[03.22.19]

Release Manager
Phosphor Studios
Phosphor Studios — Chicago, Illinois, United States
[03.22.19]

UI Artist
Pixel Pool
Pixel Pool — Portland, Oregon, United States
[03.22.19]

Software Developer (Unreal Engine 4, Blueprint, C++)
Skybox Labs
Skybox Labs — Vancouver, British Columbia, Canada
[03.22.19]

Senior Gameplay Animator









Loading Comments

loader image