GAMEPLAY PROGRAMMING & GAME DESIGN48-HOUR GAME JAM
TWO-PLAYER CO-OP PLATFORMER
Snowbound
A snowy adventure. Made for two.
Grow snowballs, freeze moving objects, and throw your partner across the snow. Built by a three-person team around a theme centered on two-player cooperation.
SNOWBOUND / GAME JAM BUILD
ROLE
Programmer · Game Designer
TEAM
3 people
DURATION
2 days
TOOLS
Unity · C# · Platformer template
00 / MY CONTRIBUTION
Three mechanics. Shared possibilities.
I implemented the snowball, snow gun, and partner-throwing mechanics, and collaborated with my teammates on level design.
EXPLORING THE THEME
What makes two players need each other?
We explored one player controlling two characters, dividing inputs between players, and tasks across split screens. We chose a shared-screen platform puzzler, then developed cooperation through complementary abilities: one player changes the space or timing so the other can move.
01 / COOPERATIVE MECHANICS
Shape the space. Change the next move.
A SMALL CHARACTER
Snow Gun
B LARGE CHARACTER
Snowball + Partner Throw
01 / Build with snow
Snowball
Leave a snowball on a pressure switch to keep a route open for your partner, or use it as a step to reach higher ground. Pushing snow also moves the character faster. Snowballs eventually disappear; larger ones last longer, creating a limited window for the next move.
While growing, the ball’s scale and position update together to stay aligned with the character. Releasing it detaches the ball and starts a countdown based on its radius.
5 SEC / Use a snowball as a step to climb the lower route.
02 / Control the timing
Snow Gun
Shoot switches from a distance and freeze moving platforms to create a usable crossing. Another shot restores movement. One player can control the timing while the other concentrates on jumping between platforms.
A hit pauses platform movement; another resumes it, using Rigidbody type changes and the movement script.
8 SEC / Shoot moving platforms to control the crossing.
03 / Launch your partner
Partner Throw
Pick up your partner, adjust the angle, and launch them toward a ledge they cannot reach from the ground. Sending one player ahead creates a new position from which they can help open the way for the other.
Pickup pauses the small character’s control, physics simulation, and collision. Launch restores simulation and collision, then applies an initial velocity. Landing restores normal control.
8 SEC / Aim and launch a partner onto the upper route.
02 / SHARED LEVEL DESIGN
From layout to interaction.
We designed levels together. These original planning diagrams explore separated routes, stepped terrain, moving elements, and obstacles within the same screen. They show how we arranged the space around the characters’ abilities before and alongside implementation.
A Snow GunB Snowball + Partner Throw1–3 / Action order
CASE 01 / MECHANIC INTRODUCTION
Learning to Build with Snow
Upper and lower routes introduce using snowballs as footholds.
EARLY LAYOUT / STARTS A & B · CLIMBS 1–2 · REGROUP 3
1 / Build the foothold
B grows and releases a snowball beside the first tall step.
2 / Climb before it disappears
Use the ball as extra height, then repeat at the next rise. A advances along the upper route.
3 / Meet on the right
The routes meet on the right after B practices making usable terrain.
RECORDED BUILD / 01:18 — B STANDS ON THE SNOWBALL TO REACH THE NEXT STEP
Design value: Height gives snowball growth a concrete purpose. Size changes the usefulness of the foothold and the time available to use it.
CASE 02 / LAUNCH, THEN SUPPORT
Send one player ahead. Open the next route.
Partner throwing and a snowball pressure mechanism combine to open a route through the level.
B picks up A beneath the ledge and chooses the launch angle.
2 / Reach the upper route
The throw gets A onto the ledge while B remains below.
3 / Support from below
B leaves a snowball on the lower pressure switch to move the barrier for A. The temporary ball creates a crossing window.
RECORDED BUILD / 01:50 — UPPER AND LOWER ACTIONS CHANGE THE SAME ROUTE
From sketch to build: The early sketch places the pressure mechanism near the start; the final build moves it to the right-hand column.
More original level sketches
Additional original sketches, retained as design process material.
LAYOUT STUDY / 01LAYOUT STUDY / 04LAYOUT STUDY / 05LAYOUT STUDY / 06LAYOUT STUDY / 07LAYOUT STUDY / 08LAYOUT STUDY / 09LAYOUT STUDY / 10
03 / A DEVELOPMENT LESSON
Standing still. Unable to jump.
A character could stand on a moving platform but could not jump. This exposed an integration problem between platform support and the template’s grounded condition: being carried by a trigger did not count as being grounded, because the template’s ground detection ignores triggers.
The implementation separates those responsibilities: a trigger carries the character by the platform’s displacement each physics step, while a separate non-trigger collider provides the surface detected by the template’s ground check, which gates jumping.
The experience taught me to understand a template’s collision, ground detection, and control logic before extending its movement rules.
Credits & References
Characters are inspired by Nunu & Willump from League of Legends; the original characters belong to Riot Games. Character artwork was generated with AI using those designs as references. The prototype was built on a Unity platformer template.