Files
UE5-Modular-Game-Framework/docs/blueprints/02-player/BPC_PlayerComponents_All.asset.md
Lefteris Notas 3ca87a7893 Add asset creation sheets for various systems and UI components
- Created Save/Load & Death Loop asset sheet detailing checkpoint, death handling, and respawn systems.
- Added UI widget creation sheets for pause menu, settings menu, inventory, journal viewer, objective display, notification toast, screen effect controller, accessibility UI, diegetic HUD frame, menu flow controller, and credits screen.
- Implemented HUD controller and interaction prompt display assets with detailed wiring instructions.
- Established narrative systems asset sheet including components for narrative state, objectives, dialogue playback, and branching consequences.
- Developed weapons, AI, and adaptive systems asset creation sheet outlining weapon base, enemy AI components, and adaptive gameplay mechanics.
- Compiled meta, settings, and polish asset creation sheet covering progress tracking, achievement systems, accessibility settings, and various polish components.
- Defined input actions and mapping contexts for enhanced input system, including gameplay actions and context priorities.
- Created state management assets including enums, structs, data asset, and state manager component for action gating and state transitions.
2026-05-20 15:34:06 +03:00

3.8 KiB

BPC_StaminaSystem / BPC_StressSystem / BPC_MovementStateSystem

BPC_HidingSystem / BPC_EmbodimentSystem / BPC_CameraStateLayer / BPC_PlayerMetricsTracker

Player Component Assets — Quick Creation Sheet (7 components)

UE5 Path: Content/Framework/Player/ Parent Class: ActorComponent Attach To: Player pawn


Quick Creation — All 7 Components

For each component below:

  1. Content Browser → Content/Framework/Player/
  2. Right-click → Blueprint Class → Parent: ActorComponent
  3. Name: as listed
  4. Attach to player pawn Blueprint via Add Component

BPC_StaminaSystem

Variable Type Default
MaxStamina Float 100.0
CurrentStamina Float 100.0
SprintDrainRate Float 10.0
StaminaRegenRate Float 5.0
ExhaustionThreshold Float 10.0
bExhausted Boolean false

Key Functions: ConsumeStamina(Amount), IsExhausted()

Dispatchers: OnStaminaChanged, OnExhaustionStateChanged


BPC_StressSystem

Variable Type Default
CurrentStress Float 0.0
StressDecayRate Float 1.0
StressTier Enum (E_PlayerVitalSignals) Calm

Key Functions: AddStress(Amount, Source), GetStressTier()

Dispatchers: OnStressChanged, OnStressTierChanged(Tier)

Stress Tiers: Calm → Tense → Anxious → Fearful → Catatonic


BPC_MovementStateSystem

Variable Type Default
CurrentMovementMode GameplayTag Framework.Player.Movement.Standing
CurrentPosture GameplayTag Framework.Player.Posture.Standing
bIsSprinting Boolean false
bIsCrouching Boolean false

Key Functions: SetMovementMode(Tag), SetPosture(Tag), GetMovementIntensity()

Dispatchers: OnMovementModeChanged, OnPostureChanged

GASP Liaison: This component updates GASP variables — never modify GASP directly.


BPC_HidingSystem

Variable Type Default
CurrentHideState GameplayTag Framework.Player.State.Exposed
bIsPeeking Boolean false
bIsHoldingBreath Boolean false
BreathHoldMax Float 8.0
BreathHoldCurrent Float 8.0

Key Functions: EnterHide(HidingSpot), ExitHide(), Peek(), HoldBreath()

Dispatchers: OnHideStateChanged, OnBreathHoldChanged


BPC_EmbodimentSystem

Variable Type Default
bFirstPersonBodyVisible Boolean true
bArmsOnlyMode Boolean false
BodyMesh SkeletalMesh (assign)

Key Functions: SetBodyVisibility(bVisible), SetArmsOnlyMode(bActive)

Dispatchers: OnEmbodimentModeChanged


BPC_CameraStateLayer

Variable Type Default
BaseFOV Float 90.0
CurrentFOV Float 90.0
FOVSmoothSpeed Float 5.0
CameraOffset Vector (0,0,0)

Key Functions: SetFOVOverride(Tag, FOV), ClearFOVOverride(Tag), SetCameraOffset(Tag, Offset)

Dispatchers: OnFOVChanged, OnCameraOffsetChanged


BPC_PlayerMetricsTracker

Variable Type Default
TotalShotsFired Integer 0
TotalShotsHit Integer 0
TotalDeaths Integer 0
TotalKills Integer 0
Accuracy Float 0.0
KDRatio Float 0.0

Key Functions: RecordShot(bHit), RecordDeath(), RecordKill(), GetAccuracy()

Dispatchers: OnMetricsUpdated


Test All Components

  • All 7 components visible on player pawn
  • BeginPlay sets default values correctly
  • Each dispatcher fires when its state changes
  • Components don't conflict (Stamina drain doesn't affect Stress directly — let StateManager coordinate)