Skip to content

Repository files navigation

Project Outbreak

A single-player third-person combat demo built with Unreal Engine 5.8 and C++.

Watch the gameplay showcase

Gameplay preview

Gameplay

Clear the reception area and corridor, equip the shotgun at the armory, clear the loading area, and reach the exit terminal. The compact level contains 12 enemies, doors and ammunition pickups. Death and completion support restarting the current run.

Control Action
WASD / mouse Move / look
Shift Sprint
Hold RMB, then LMB Aim and fire
R Reload
E Interact
Esc Pause, resume or quit
Enter Restart after death or completion

Implementation

  • Component-based combat, health, inventory, interaction, animation and weapon audio.
  • Data-driven handgun and shotgun share a weapon pipeline: camera aim trace, muzzle obstruction trace, damage, ammunition and feedback.
  • Sight, hearing and close-range visibility checks drive enemy behavior through a native behavior tree and blackboard. Navigation follows the current target; delayed melee validates distance and line of sight.
  • Event-driven HUD state, damage feedback and audio selection. A Slate pause menu suspends gameplay and restores input on resume.
  • A world subsystem prewarms and reuses shell casings; generation identifiers prevent stale callbacks from releasing reused objects.
  • Focused Unreal automation tests cover combat, input lifecycle, audio, pause behavior and restart travel.

Build and run

Requirements: Unreal Engine 5.8, Visual Studio with the C++ game development workload, and a supported Windows SDK.

Open ProjectOutbreak.uproject, build the ProjectOutbreakEditor Development target, then open /Game/ProjectOutbreak/Maps/Demo_Map and press Play.

./Scripts/Build.ps1 -EngineRoot 'D:/UE/UE_5.8'
./Scripts/PackageDemo.ps1 -EngineRoot 'D:/UE/UE_5.8'

The packaging script writes a Windows Development build under Saved/Packages. Keep the entire Windows folder and run ProjectOutbreak.exe. The default runtime map is Demo_Map; the editor startup map remains Bootstrap_Map for development. Cook explicitly includes input and weapon data referenced from C++.

Example focused automation run:

UnrealEditor-Cmd.exe ProjectOutbreak.uproject -unattended -nullrhi -AllowAudioRendering -ExecCmds="Automation RunTests Outbreak.Phase17.PauseMenu+Outbreak.Phase16.WeaponAudio+Outbreak.Phase16.RestartRun" -TestExit="Automation Test Queue Empty"

Tests verify state and behavior; rendered appearance and audio quality also require playing the demo.

Project layout

Source contains runtime systems and automation tests. Content contains maps, data and presentation assets. Config defines input, collision and packaging settings. Scripts contains build and asset preparation utilities. SourceArt retains audio sources and processing manifests. Media contains the edited gameplay showcase.

Scope and assets

This is a compact technical demo, with blockout environments and placeholder weapon meshes. It does not implement multiplayer, save games, a general weapon backpack, full weapon IK or environmental music. The video is an edited gameplay capture, not an uncut benchmark.

Characters and animations use Epic Games Unreal Engine template content. Gunfire and reload recordings use CC0 sources; see audio credits. These assets are not represented as original character art or original recordings. No overall open-source license is declared; third-party materials retain their applicable terms.

About

Unreal Engine 5.8 C++ third-person combat demo with data-driven weapons, perception-driven enemies and a playable extraction loop.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages