top of page
Title_Card_2.png
Gauntlet_Categorizer.png

OVERVIEW

The Gauntlet is a sci-fi themed FPS rooted in dynamic movement and high-speed action. Powered by Unreal Engine 5, the game also boasts impressive visual fidelity.

​

The Gauntlet makes use of UE5’s Behavior Trees for enemy AI, and utilizes an adaptable blueprint component damage system as its base. This enables more interesting enemy behaviors such as patrolling, sound cue investigation, as well as retreating and healing tactics under certain conditions.

​

Given the game’s focus on speed, each level is timed and should be played again and again for a better score.

MY ROLES

As a solo developer on this project, I covered all aspects of development.

​​

Pre-Production:

  • Concepting mechanics and game flow.

  • Gathering reference material.

  • Planning the development schedule.

  • Writing the design document.

  • Putting together presentations to pitch the game for approval.

​

Production:

  • Prototyping systems for a proof of concept​

  • White boxing levels

  • Expanding systems and curbing scope by cutting certain elements.

    • Leaderboards and the aim down sights mechanic were cut.​

  • Setting up the enemy behavior trees.

  • Utilizing good programming practices to manage complexity. 

    • Blueprint interfaces, Structures, and Enumerators​

  • Creating materials for the game out of textures.

  • Importing and setting up animations.

    • Edited and assembled animation Blueprints.​

    • ​Created one dimensional and multidimensional blend spaces.​

    • Added notifies to play sounds or reference in Blueprints. 

  • Used free modular kits from the UE Marketplace to design levels.

  • Programmed various user interface systems:

    • Ranking system in accordance with player performance.

    • Mouse sensitivity edits in the pause menu.

      • Sensitivity variable stored in the Game Instance to persist across levels.​

    • Custom button hover effects.

  • Testing and balancing levels

  • Post processing levels.

  • Creating update presentations for certain milestones

​

Post-Production:

  • Using camera animation and the sequencer to capture footage.

  • Creation of the Behance page: The Gauntlet :: Behance

  • Presenting the game at a showcase event.

TOOLS

Gauntlet_2_SS_Bordered_V2.png
Sequencer_Still_V2_Border.png

Screenshot from the second level

Screenshot from a level sequencer

The engine used to create this game was Unreal 5, and the programming was done in Blueprints. For levels, I used free modular kits from the Unreal Marketplace, as well as a few free Sketchfab assets. 

All of the 2D graphics and designs were made in Figma. 

SYSTEMS

Combat:

Combat functions around a central Blueprint Component that links the enemies and the player character together. The same system was used for both, which enables it to be more modular and applicable to other projects in the future. The system was constructed to be easily modifiable, and intuitive to design around. It utilizes several enemy Blueprint classes and their respective Behavior Trees to implement state switching and damage classification. I plan to develop this further and fully explore what it is capable of achieving.

Enemy Behaviors:

The use of decorators, enumerators, and custom tasks in the Behavior Trees allowed me to create more interesting and dynamic enemy behaviors, such as taking cover using environmental query systems, and healing. 

​

AI Perception:

​​​

​​​

​​Enemies possess the ability to respond dynamically to sounds, sight, and damage. In this clip, an enemy reacts to the sound of projectile collision and enters an investigative state for a short time.

​​​

​​​​​​In this example, the enemy reacts to the sound of the player's dash ability, and then switches from the investigation state to an attack state when the player is seen. 

Environmental Query System:​​​

​​​

​​​​​

Once certain conditions (such as a specific health value) are met, enemies can take dynamic actions such as healing. They utilize an environmental query to determine a point within a certain radius that covers them from the player's view. â€‹

A brief video on the game's functions can be found here. It also showcases a few of the enemy behaviors in action.

PLAY THE GAUNTLET

bottom of page