It Takes Two

It Takes Two

ABOUT

It Takes Two is a 3D Platformer in which two divorcing parents are transformed into dolls, and embark on a crazy, magical adventure to help get them back to their orignial forms.


As a Technical Designer, I was tasked with designing, implementing and networking a multitude of gameplay content and features, fixing bugs and supporting the team where they needed it most.

MINIGAME SYSTEM

I took responsbility for the minigame system, building it from the ground up and working with the team to make sure that they had all the tools they needed.

Our ethos was that it needed to be malleable, and provide us with the capability to build a wide range of minigames and accomodate for the many different work-styles of our designers and programmers.

World Integration

The system provided two TArray references for trigger volumes. One array for when the Tambourine should appear to make noise, and the other for when the minigame should be discovered by either player.  It was also important that the tambourine iteslf felt alive and interactable. I added functionality to allow players to jump and bounce on top of it. It also reacts if abilities are used on it, including the hose from garden, and snowball throwing in Snow Globe.

Tutorial System

The tutorial settings allowed designers to add as many tutorial prompts as they required, accompanied with action texts.


A function could be called to activate tutorials when both players have entered the minigame interaction, and as this was a generic system used in all cases, all networking was handled internally within the component for activating the screens and reading player input (cancelling or readying).

Scoring

A total of four score modes were provided for. Highest score, Timer, Laps and No Score.


Each score mode had its own settings, such as maximum minigame time, the high score, lap count etc.


There are also a bunch of functions provided for setting or reading scores, and events that minigame managers can bind to, like on player victory or tutorial completed.

Victory Screen

A set winner function could be called from the component, which would then activate the victory animations, screen and confetti.

MINIGAMES

In total, I built 3 minigames from the ground up - Shuffle Board, Bomb Run and Icicle Throwing. My work role covered the full spectrum; designing, programming, networking and collaborating with the artists and audio team to implement the required assets. I also assisted with the completion of one other minigames, Horse Derby; rebuilding the some of the tech, networking and pushing it to a shippable state.

Shuffleboard

This minigame was based on a mix of real life Curling and Shuffle Board. The players are presented with two ice lanes, and large pucks that are dispensed from tubes above. The further you can push the pucks to the edge without falling off, the more points you get.


There were a few iterations on how the pucks should be controlled. Eventually I settled on a looping power meter that progressed up and down. This provided a bit of extra challenge as the players not only had to position themselves correctly, but also time when they released the throw.

Icicle Throwing

For Icicle Throwing, the players are facing off on a shooting range, armed with Icicles. The one with the most points wins.

Along the range are moving targets that provide points when hit.


As the game progresses, hoops will start to activate across the range. If the players hit a target through the hoops, they gain double points! Towards the end, the speed of the moving targets will increase, adding to the challenge and intensity.


The biggest challenge of this minigame was balancing the target sequences to ensure that the difficulty ramped up enough without either overwhelming the player or boring them.

Bomb Run

Bomb Run is a race against time and each other! When starting, two bombs will appear strapped to the players backs.

To recharge the bomb's countdown, players much reach the next checkpoint in this race across the level. If their timer reaches 0, or their opponent reaches the finish line first, the loser explodes.


This was a tough minigame to build, as the race course relied heavily on Clocktowns level design, and this was in constant flux as this section was iterated on by other designers.

Horse Derby

This was a minigame that I took over from another designer. They did the bulk of the design work; my job was to network it, collaborate with art and audio for implementation, and ensure the minigame was polished and ready to ship.

SIDECONTENT

I worked on a large variety of sidecontent interactions that are designed to help make the world of It Takes Two feel more alive and interactive. Most of my work revolved around the slightly more open world levels of Snowglobe and Clockwork, as well as one interaction in Tree. Below are the highlights!

Selfie Camera

We wanted an interaction in tree where the players could mess around with some of the squirrel tech - in this case, a stolen polaroid camera that had been setup with a background prop stage. Players can either take a direct shot, controlling the camera, or put it on a timer and setup for a pose via one of the interactions on the stage.


The stage can be rotated in either direction via two buttons close by.


Photos taken will fall out in front of the camera. Players can then throw those images up onto a dashboard and view them up close.

Harpoon

After some prototyping for new sidecontent in Snowglobe, I landed on a harpoon-like interaction where the players could snatch fish from the water, and either feed them to some cute baby seals, or throw them back in.

Magnet Hats

Here I worked on hats that the players could magnet and steal from the Snow Folk in SnowGlobe. Initially this was intended to be a wide spread thing throughout Snow Town, however there were complications; such as, how do they get rid of the hat in an intuitive way without adding extra inputs, and how would this be dealt with in cutscenes if they were wearing one. Was it fine for them to disappear?


Eventually, we felt it simpler to constrain the magnet hat interactions to two locations. The Disco, and a pirate ship wreakage. If they left these areas, the hats would puff out of existence and return to their original owner/location.

Turtle Family

The magnetable turtles were a homage to the turtles in Brothers, A Tale Of Two Sons. There were two red and two blue turtles, that could either be pushed or pulled depending on the player's magnet.


Off to the side of the level was the mother turtle sitting with her four empty nests. If the players bring all four turtles to their nests, the players get the Lost and Found achievement. The mother would also start to peck their shells, playing them almost like an instrument (a fun little idea suggested by our artist).


The biggest challenge of this one was building the physics movement of the turtles, and networking, as both players can affect the turtles at the same time.

Love Boat

A love boat the players could ride around Clocktown. It eventually leads into a tunnel that loops round back to the other end of the town.

It was also a way of getting to one of the level's super cool easter eggs. I won't spoil it. Go see for yourself :)

Snow Angels

What else is fun to do in the snow? Why not snow angels?!

A fun little activity that appears when the players activate one of the SnowGlobe town bells.


Players can jump in the snow, and then move the left stick up and down to create snow angels.

Helltower Fireworks

When the players reach the top of Helltower, they can fire and detonate fireworks over Clocktown. We wanted them to have a moment to celebrate their victory over beating the tower, and the other player if they reached the top first.


I also implemented the buttons to activate the tower, and also the cutscene logic.

Helltower Intro

I worked on setting up how players activated Helltower, and also the cutscene sequence. That includes the camera work; not my specialty but was fun to do!

Fishing

A little fishing activity never goes astray. This was actually one of the first interactions I made, and the one that, technically speaking, required the most iteration, especially when it came to setting up the networking logic and structuring multiple behaviours in a clean and compartmentalised way.

Needless to say, this one taught me alot!

PIRATES AHOY (Designer Support)

Towards the end of second pass, I spent five weeks on Pirates Ahoy, helping to drive the combat scenarios and parts of the boss fight towards a testable state for our upcoming UXR

Boss Fight Third Phase

I had the opportunity to re-design and implement parts of the third phase. Working with an animator, we added in the boat being thrown into the air sequence. I also looked into the octopus submerging under water and raising three tentacles, with the players needing to defeat the tentacles in order to bring the boss back up again.

Level Scenarios

Did some reworking of enemy placement and iterated on some of the sequences, such as the cutscene for entering the small arena when the players fight 3 pirate boats, juicing up the big explosions and adding reaction movement to the boat when hit by projectiles.


WORK IN PROGRESS SECTION

HONORABLE MENTIONS

Swing Feedback System

An additional system that reads the players swing movements, and can apply rotations to swing objects that are attached. It also contained settings for rotation scaling and acceleration speed towards its rotation target.