A single-player third-person combat demo built with Unreal Engine 5.8 and C++.
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 |
- 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.
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.
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.
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.
