One car, 2 drivers. What could go wrong?
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!
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.
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.
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