Clocktergeist

Built in Unreal Engine 5 during a month-long Boss Rush Game Jam, Clocktergeist is a boss-rush action game set in a haunted clocktower. As the lead gameplay programmer, I owned the design and implementation of almost all boss behavior systems, contributing to combat mechanics, player control, and overall game feel under strict time constraints.

Project Overview

This project marked my first large-scale implementation of boss AI systems in Unreal Engine. Due to the one-month jam timeline and team constraints, I opted to implement the full AI logic using Blueprints, prioritizing iteration speed, debuggability, and rapid playtesting.

  • Owned boss AI design and implementation for all encounters
  • Built custom state-driven behavior systems in Unreal Blueprints
  • Designed math-driven projectile patterns using parametric equations
  • Collaborated with artists and designers to tune combat feel

Challenges and Takeaways

I structured the boss behaviors using a manually implemented state-machine approach built with Gates, Branches, and Sequences in Blueprints. While effective, I later identified that Unreal has native State Trees and Behavior Trees that would have provided a more modular and scalable solution.

This experience gave me a strong appreciation for selecting the right abstraction level early in development and reinforced the importance of understanding engine-provided systems when building complex AI logic under production constraints.

Blueprint for the last boss

My Role and a Feature Highlight

As the lead gameplay programmer, I designed and implemented behavior systems for all three bosses in Clocktergeist. Each boss introduced unique mechanics, patterns, and environmental challenges to push the player's movement, positioning, and reaction timing.

One of the most challenging mechanics that I encountered involved a set of projectiles rotating around a boss. Each projectile existed as an independent actor, which meant they could not be rotated together around a shared axis using standard rotation logic.

To achieve the rotating orb pattern, I implemented a custom solution using parametric equations:

  (u + r * cos(t), v + r * sin(t))
Clock Boss Blueprint Screenshot

I used Desmos to visualize the function and then translated the behavior into Unreal's Blueprint system using Math nodes. This approach provided precise control over projectile positioning, allowed easy tuning of speed and radius, and resulted in a visually striking and mechanically readable boss mechanic.

Tools Used

Unreal Engine 5
C++/Blueprints
SVN
Gameplay Programming
AI Systems & State Logic
Math-Driven Gameplay Mechanics
Animation Blueprinting
UI Programming
Rapid Prototyping
Performance Optimization