Hook Runner

Hook Runner is a 2D precision platformer prototype built in Godot, featuring a custom C++ movement and grappling hook system. The project focuses on momentum-based traversal, physics accuracy, and high-FPS responsiveness through engine-level extensions.


Client

Personal Systems Prototype

Service Provided

Godot Gameplay & C++ Module Development

thumbnail Image
thumbnail Image
thumbnail Image

The Goal:

The goal of Hook Runner was to design and implement a high-performance movement system for a 2D platformer by extending Godot with a custom C++ module rather than relying solely on engine scripting. The project focused on achieving precise, momentum-based traversal suitable for skill-driven platforming. Key goals included: # Building a physics-driven grappling hook that conserves momentum and feels responsive # Improving movement responsiveness beyond default engine behavior # Maintaining stability and performance at high speeds # Demonstrating how engine-level extensions can enhance gameplay feel and control The project was also intended as a technical showcase of my ability to work below the gameplay layer, bridging engine systems and player-facing mechanics.

1

Image
Image

The Challenge:

The primary challenge of Hook Runner was implementing a stable, high-speed movement and grappling system at the engine level while maintaining consistent physics behavior and responsive player control. Building the grappling hook in C++ as a custom Godot module introduced several technical challenges: # Designing a physics-based grappling hook without relying on built-in joints # Maintaining rope stability while allowing dynamic rope length adjustment # Preserving player momentum and swing arcs without jitter or snapping # Keeping movement and grappling logic perfectly synchronized with Godot’s fixed physics step # Preventing collision issues and tunneling at high traversal speeds # Additional challenges included: # Tuning acceleration, deceleration, and air control for precision platforming # Ensuring performance remained stable during rapid movement and complex interactions # Designing levels that clearly communicated mechanics without heavy UI or tutorials Solving these problems required careful iteration, parameter tuning, and repeated playtesting to balance performance, stability, and game feel.

2

Image
Image

The Result

The final result is a fully playable 2D platformer prototype featuring a stable, high-performance grappling hook and movement system implemented through a custom Godot C++ module. The movement feels responsive and predictable at high speeds, allowing players to chain running, jumping, wall interactions, and grappling swings smoothly. The custom engine extension successfully enhances Godot’s default movement behavior, enabling: # Reliable momentum preservation during grappling and free movement # Smooth rope length adjustment without jitter or snapping # Consistent physics behavior across fast traversal and complex geometry The project now serves as both a technical showcase of engine-level development and a foundation that can be expanded with additional mechanics, levels, and polish.

3

Image
Image

Let's Connect

What am i looking for?

Internships & Early-Career Roles

Paid · Unpaid · Part-Time · Full-Time

I’m actively looking for game development and gameplay programming opportunities, with a strong focus on Unreal Engine (C++) (Open to Unity and other engines). I’m also open to frontend web development roles and collaborative projects.

Collaboration & Learning Opportunities

Student Projects · Game Jams · Indie Teams

I enjoy working with small teams to build playable prototypes, experiment with mechanics, and learn through iteration and feedback.

Image banner

Let's Connect

What am i looking for?

Internships & Early-Career Roles

Paid · Unpaid · Part-Time · Full-Time

I’m actively looking for game development and gameplay programming opportunities, with a strong focus on Unreal Engine (C++) (Open to Unity and other engines). I’m also open to frontend web development roles and collaborative projects.

Collaboration & Learning Opportunities

Student Projects · Game Jams · Indie Teams

I enjoy working with small teams to build playable prototypes, experiment with mechanics, and learn through iteration and feedback.

Image banner

Let's Connect

What am i looking for?

Internships & Early-Career Roles

Paid · Unpaid · Part-Time · Full-Time

I’m actively looking for game development and gameplay programming opportunities, with a strong focus on Unreal Engine (C++) (Open to Unity and other engines). I’m also open to frontend web development roles and collaborative projects.

Collaboration & Learning Opportunities

Student Projects · Game Jams · Indie Teams

I enjoy working with small teams to build playable prototypes, experiment with mechanics, and learn through iteration and feedback.

Image banner

Create a free website with Framer, the website builder loved by startups, designers and agencies.