Hogwarts Legacy

Hogwarts Legacy is a AAA open world, third-person, action RPG. It was released in February 2023 for PS5, XSX, and PC. The game received critical and commercial success, achieving an 84 Metacritic score and selling 12 million copies in the first two weeks after launch.

I worked on Hogwarts Legacy from August 2018 to December 2022 while at Studio Gobo, in a co-development capacity for Avalanche Software. The game was developed in Unreal Engine 4 and C++.

As a gameplay programmer I worked on a variety of features and mechanics over the course of the project.

Avatar 3Cs

For the final 2 years of development, my team worked on the avatar. Over this time we touched almost all aspects and mechanics of the avatar, bringing the player character and 3Cs up to shippable AAA quality.

I worked proactively to identify areas with opportunity for improvement, analysing issues, gathering reference from similar titles, proposing and implementing solutions and improvements, communicating to our client, and directing work for other disciplines.

Much of my implementation work was bug-fixing and polish, improving animation quality, movement, and responsiveness. But in other cases it was necessary to completely rework or rebuild mechanics, and some improvements or fixes required changes to core systems, like input handling or our animation system.

Some of the areas I worked on are: character movement, basic locomotion (starts, stops, turns, pivots, gaits, stairs), jumps/falls/landings, swimming, wading, climbing mechanics, ladders, strafing, crouching, stealth, interact/looting, inventory item usage (potions, combat plants), spell casting (basic cast, ancient magic throw), opening chests, lockpick mechanic.

I’m very proud of the work we did on the avatar and feel it made a large improvement to the player experience and the game as a whole.

Mounts

I was part of the team that developed the mounts feature: three creatures – Hippogriff, Graphorn, Thestral – which could be ridden by the player in the open world.

I was responsible for mount flight, implementing the controls, movement and flight dynamics, camera, and animation for creature and rider. As part of this I worked together with an animator to develop the look and feel of flight, using reference from the Harry Potter films and the Loftwing from Skyward Sword. I also worked closely with audio and VFX to achieve the sense of speed when flying. The work we did on camera, audio, and VFX for mount flight was later leveraged for the broom.

In addition to other areas I also worked on rider animation, helping define the overall strategy, the approach to hand locking IK, and implementing procedural leaning for slopes and turn anticipation.

AI creatures

I was part of the team that developed the beasts feature, encompassing ambient and magical creatures. Ambient creatures (cats, sheep, deer etc) populate Hogwarts, dungeons, and the open world, and provide a sense of life, whilst magical creatures are found at specific locations in the open world and can be captured by the player and cared for in their own customizable space.

I designed and implemented the system which managed the spawning/de-spawning of ambient creatures around the player. The goal was to maintain the sense that these were real creatures in their natural habitats, while avoiding lots of manual authoring, and with minimal performance impact. The system was fully data-driven, relying on volumes authored in the world and population data configured in a database, and scalability settings exposed.

I worked on a number of creature behaviors, like fleeing, and the petting and feeding player interactions. I also implemented much of the backend used for nurturing of magical creatures, like breeding, color variations, and persistence of state.

I was largely responsible for flying creatures, which included 6 birds and 2 quadrupeds, and involved navigation, movement, and animation tech work. I implemented flying behaviors including takeoff, landing, fleeing, and circling, and developed a strategy for integrating flight into other behaviors so they could be shared by all our creatures. I developed a perch system, allowing birds to land on perches on all trees across the open world, as well as other authored locations. I communicated with our 3D navigation middleware provider to report bugs and request features, and integrated plugin updates.

As part of my work on flying creatures, I also developed the ‘low-cost’ owl tech seen most prominently in the Owlery. This included both stationary owls and flying owls which followed splines, and didn’t use AI or character movement. I created these to sidestep ambitious requirements for our AI owls, and their simplicity and minimal performance impact led to their widespread use across the game.

I worked on the Graphorn’s combat behavior, which forms a boss fight in a late-stage main quest. I implemented much of the tech for data-driven attack ranges and target prediction, as well as animation-driven hitboxes, and impact timing and alignment, using a Horizon: Zero Dawn GDC talk as reference. As part of this work I developed a version of motion warping which we later used in many avatar mechanics. I also implemented navigation testing for target reachability and reposition locations.