Close

Centripetal

About the game

This 2D platformer is heavily inspired by Celeste , SpeedRunners: the Game, and 2D Sonic the Hedgehog. The player will spend most of the time “sight-reading” levels as obstacles appear in their way. Moving quickly and smoothly is the core experience. The game story follows a Yo-Yo's journey after it had been left behind accidentally by the child that owns it. The child has left for school and the Yo-Yo must navigate the world in the fastest possible time to return to its favourite human as a Yo-Yo always does.

Game Mechanics

The grapple is the primary mechanic and everything else is built and implemented to support that mechanic. Mechanics are listed below in order of complexity:

  • Move roll: Players generate velocity slowly, like a car, and moving in the other direction means you must first overcome the initial velocity. There is no max speed, and it continuously adds speed to the player, even while in the air. This should feel slow at first, but level design indicates we start each level with some velocity through gravity (start the player higher than the ground). Slowing down is a punishment for the player.
  • Jump/Double Jump: Players can jump once on the ground and jump again while in air. It resets upon touching the ground. Jumping in air resets downward velocity to zero before adding the upwards jump velocity.
  • Dash: The dash starts with Celeste’s dash as an example, except it only adds a fixed amount of speed in the direction the player indicates. The dash resets upon touching the ground. Can be used by player to gain a burst of speed after stopping/slowing down Enables quickly changing direction in the air Utilized to maximize the acceleration of the player (spamming it whenever it is available)
  • Grapple: Players can grapple to specific yellow points on the map when they are within the radius ( 4 units ). When within that radius, an animation plays with a button prompt for the player to grapple to it. Players accelerate when grappling. Grapple has no recharge or reset – provided you are in range, you may grapple.

My Roles and Responsibilities

  • Game concept, gameplay mechanics and level design.
  • Implemented grapple mechanic, movement.
  • Designed and implemented UI/UX including proximity sense and button prompts.
  • Conducted play tests for bugs, glitches, gameplay issues, and improvements.

Tools and Technologies

  • Game Engine: Unity
  • Programming Languages: C#
  • Tools: GitHub, Pixel Art.
  • Project Management: Trello, Miro, Discord, Google Docs.

Challenges and Solutions

  • Implementing physics and collisions for the player
    The game depended highly on the fluidity of the player's movement. Thus, I decided to utilize momentum to drive the controls. I tweaked the gravity, directional changes in velocity and implemented the grapple so that it would provide a swing rather than a tug on the player at higher speeds.
  • Creating levels to teach the player as well as challenge them
    The team worked on creating level designs based on compression and expansion to induce a flow of the game. The level design was crucial to a players flow state, and thus we built harder paths which offered faster gameplay, while also adding alternate easier paths to avoid frustration in players.

Links and Credits