The challenge
Connect locomotion, upper-body combat animation, aim camera, shot detection and enemy behavior into a coherent third-person encounter.
A third-person combat prototype in a nighttime barn environment. Layered animation, camera-based shooting and enemy patrol / pursuit come together in Blueprints.
Connect locomotion, upper-body combat animation, aim camera, shot detection and enemy behavior into a coherent third-person encounter.
An Animation Blueprint blends movement and pistol poses. Input drives a reversible ADS Timeline; a camera line trace feeds damage. AI Perception updates Blackboard state, and a Behavior Tree selects pursuit or patrol.
A completed personal prototype demonstration, supported by original gameplay, editor screenshots and technical documentation. The public repository is a media showcase; a packaged game and the full Unreal project are not distributed.
I implemented and integrated the Blueprint gameplay, Animation Blueprint, aim camera, crosshair, shot / damage flow and enemy AI, then tested the encounter locally in Unreal Editor. Environment, character, animation and audio assets come from third-party content; my focus is their gameplay integration.
Original 36.5-second recording with game audio: exploration, movement, enemy encounters, aiming, shooting and barn traversal. Captured locally in Unreal Editor on Windows; development debug messages are visible.
The animation update reads planar velocity for Speed and Character Movement for IsJumping. SM_Character switches between Locomotion and Jump; the documented BlendSpace covers idle, walk and run. AimAlpha is interpolated toward the aiming state for a gradual blend.
The supplied AnimGraph layers the pistol ADS sequence over the locomotion base using AimAlpha. A cached pose and UpperBodyFire montage slot feed another per-bone blend. Transform (Modify) Bone adjusts spine_03 from AimPitch, connecting the upper body to the view direction.
Starting and completing the aim input play or reverse TL_CameraAim. Its Alpha lerps the SpringArm length and socket offset between normal and aiming values. The crosshair follows the aiming state, with a reload montage guard in the captured input graph.
The shot event plays MSS_Pistol_Fire and traces on Visibility from the FollowCamera world location along its forward vector × 5000. The visible graph reports HitSomething through OnShotFired. The repository documents ApplyDamage on a blocking hit and enemy AnyDamage reducing health until elimination; those downstream damage nodes are outside this capture.
The controller starts BT_Enemy when possessing an enemy. AI Perception is documented as updating TargetActor and CanSeePlayer. In the supplied tree, the CanSeePlayer Blackboard decorator guards the pursuit branch, with observer aborts set to Both; otherwise execution reaches the patrol branch.
The task obtains the controlled Pawn location and requests a random reachable point within a 1000-unit radius. Success writes PatrolLocation to the Blackboard and completes the task; failure finishes without success. The tree then moves to PatrolLocation and waits 2 seconds before another patrol iteration.
The reload input checks whether a montage is playing, exits aiming and starts AM_Lab_Reload. Animation Notify events are visible in the animation event graph, including DashMoment triggering sound at a location. The documentation also describes randomized pitch in the pistol MetaSound.
A development capture shows BeginPlay creating the crosshair widget, then binding Event Dispatchers on BP_TrainingTarget instances. Damage and destruction callbacks provide debug feedback, and the destruction callback adds 100 to Score. This documents a training-target iteration rather than a finished enemy-scoring HUD.
A 1 min 30 sec technical walkthrough: original graphs, English explanations and optional Portuguese subtitles. No narration. Open the full-resolution captures below to inspect the nodes.
The captures include development and training-target iterations. AI Perception and downstream damage handling are described in the repository; the supplied images show the decision tree and camera trace.









Completed as a personal Blueprint prototype and tested locally in Unreal Editor on Windows. The public material documents a focused patrol / pursuit encounter. Future polish could refine encounter feedback, remove debug prints and prepare a packaged build.
Blueprint implementation, gameplay integration and local testing by Lucas Hoelzle. Environment, character, animations and audio use third-party assets. Their individual asset-pack and creator names are not specified in the current repository; original art and audio belong to their respective creators.