Phaser 3 • Platformer • Grappling Movement

The Ascent

A platformer game made using Phaser 3, built around grappling as the main focal point of movement, traversal, world interaction, and boss mechanics.

Status Playable

Browser-based Phaser 3 platformer with grappling movement, traversal systems, and a final boss encounter.

Gameplay Showcase

The Ascent Gameplay

Project Summary

Project Overview

Concept

The Ascent is a browser-based platformer centered on grappling movement. The player uses movement, jumping, grappling, and world interaction to climb through the level and reach the final encounter.

My Role

My main role was lead programmer, covering movement, collision, world interaction, player state machines, grappling logic, and boss mechanics.

Gameplay Systems

Gameplay Systems

Logic 01

State Machines

  • Handled most player movement and interaction through state machines
  • Included running, jumping, grappling, kick-down actions, and related transitions
  • Used state logic for branch range checks and highlight behavior
  • Kept player behavior organized as mechanics expanded
Movement 02

Grappling

  • Created an invisible connection between the player and grapple hook
  • Added a visible rope-like restraint to communicate the grapple connection
  • Used minimum and maximum rope lengths for each grapple hook
  • Limited movement after grapple release until the player officially landed
Traversal 03

World Interaction

  • Worked on player collision and level interaction
  • Implemented movement behavior around platforms, branches, and walls
  • Supported traversal logic for the climbing-focused level structure
  • Helped connect movement mechanics into the playable environment
Boss 04

Boss Mechanics

  • Built the Beetle Boss using a state machine
  • Made the boss chase the player while grounded
  • Added random movement behavior when the player was not grounded
  • Created falling object attacks and shell-break progression

Boss Fight

Boss Fight Logic

Behavior 01

Beetle Behavior

The Beetle Boss reacts based on the player’s grounded state. When the player is grounded, the boss runs toward them. When the player is airborne, the boss uses more random movement.

Pressure 02

Pressure Mechanic

After a set amount of time, the Beetle roars and causes objects to fall from the sky, discouraging the player from staying still on platforms above the boss.

Final Phase 03

Final Phase

The Beetle’s shell must be broken by outside boulders, then the player finishes the encounter by using a kick-down action on the boss.

Worked Well

What Worked Well

Traversal 01

Movement

The grappling mechanics made the movement feel fun, interesting, and distinct from a basic platformer.

Team 02

Team Contributions

The team did strong work on the art and level design, giving the mechanics a more complete game world to exist in.

Encounter 03

Boss Design

The final boss included interesting effects, behavior logic, and a multi-step defeat condition that gave the game a stronger ending.

Potential Improvements

Potential Improvements

Performance 01

Frame Rate Behavior

  • The game could run differently depending on the computer
  • Time delta was attempted but did not fully solve the Phaser behavior
  • Some speed adjustments were made based on current frame rate
  • The solution helped, but was not a perfect fix
Physics 02

Jump Reset

  • The physics setup did not include a clean built-in jump reset
  • Jump reset behavior had to be handled manually
  • This caused occasional bugs and edge cases
  • Wall and block-side contact could create unintended reset behavior

Tech Stack

Technical Focus

Phaser 3 JavaScript Platformer Design Grappling Mechanics State Machines Collision Systems World Interaction Boss AI Browser Game Development Team Collaboration

Playable Browser Game

The Ascent uses grappling movement, state-machine logic, and boss behavior to build a vertical traversal-focused platformer.