Two x 4 Racing Logo
One car, 2 drivers. What could go wrong?

Alt.Ctrl GDC logo

A beautiful day, a grassy meadow, and an out-of-control race car

Two x 4 Racing challenges the base assumptions of a racing game by putting 2 different players in the driver's seat. This project was developed from the ground up for Alt.Ctrl GDC, starting with the base idea of putting 2 players back to back.

The bike tire steering wheel was chosen to emphasize how kids might assemble a go-kart on a Saturday morning cartoon. The big red button allows players to swap between controlling the throttle and steering the car, and either player can swap at either time. Swapping refuels the car, to prevent one player from acting as the sole driver. The player's screen shows the direction they are facing, meaning players must adapt quickly when the car swaps!

Swapping Mechanic

Accessible Chaos

One of the core design goals for Two x 4 Racing was creating a game that is accessible to a wide range of players, without sacrificing speed and chaos. The controller played a large role in this part of the design, as the wheel is easy to control for players of all ages, with a relatively minimal required turning speed. The game was playtested extensively with one arm. The co-op design allows players of different skill and comfort levels to pass off the responsibility of driving whenever they want. The UI is color coded but has secondary visual feedback, so colorblind players won't be at a disadvantage.

Iterative Track Design

For this project, I created a bezier-spline based tool for generating a track. The track tool extends the Unity inspector to expose resolution of the rendered spline, and a separately generated convex collider. The track is textured with a tri-planar shader, as we found a visual texture on the track was essential for conveying a sense of speed.

Tool used to generate the track and collider along a spline

Dialing It In

Near the end of our development cycle, a few fundamental design choices were made that changed the game significantly. Firstly, the player in the back now controlled gas or breaks, rather than always adding speed to the car. The direction required to turn the car now periodically shifts between left and right, so players in the back stay more engaged with the mechanic.

Second, we moved from color-coded fuel gates (where either player 1 or player 2 needed to be in the front to collect fuel) to fuel zones. We also changed the car from having a fuel meter per player to just one fuel meter. This let us better dictate game pace, and was easier for new players to understand.

Finally, we originally required both players to press the button in sync to swap. This proved too difficult with everything else going on, and it was more fun to give either player full control over swapping. This let cooperative players swap easily as needed, and more antagonistic players to trick their partner by swapping at inconvenient times. Both playstyles were fun for different types of players!

We further emphasized that there wasn't a correct way to play Two x 4 Racing by putting 3 high score boards in. First, fastest time, second, least cows hit, and third, most cows hit!

For this project, the entire team worked heavily on the design of the gameplay.

I handled the input device interface, gameplay programming, and vehicle controller programming.

Music, sound, and additional vehicle controller programming by Derek Williams

Systems programming, UI programming, and additional vehicle controller programming by Quoey Wu

Environment Art by Yuxuan Wu

Character design, animation, VFX, and VFX implementation by Yu Xi Lee