Files
UE5-Modular-Game-Framework/docs/blueprints/03-interaction/20_BP_PuzzleDeviceActor.md
Lefteris Notas 411edea8ce add blueprints
2026-05-19 13:22:27 +03:00

3.2 KiB
Raw Blame History

BP_PuzzleDeviceActor — Puzzle Device Actor

Parent Class: Actor Category: Interaction Target UE Version: 5.55.7 Build Phase: 2 — Interaction


1. Overview

BP_PuzzleDeviceActor is the base actor for all puzzle devices in the world — levers, pressure plates, valve wheels, keypads, combination locks, circuit boards, and custom logic puzzles. Each instance references a DA_PuzzleData that defines the puzzle rules, solution, and completion effects.


2. Enums

E_PuzzleType

Value Description
Lever Single or multi-lever sequence
PressurePlate Weight-activated plate
ValveWheel Rotate-to-open valve
Keypad Numeric code entry
CombinationLock Multi-dial combination
CircuitBoard Connect-the-pins puzzle
Custom Script-driven puzzle

E_PuzzleState

Value Description
Unsolved Puzzle not yet completed
InProgress Player interacting with puzzle
Solved Puzzle completed successfully
Failed Puzzle failed (if retryable)
Locked Puzzle locked (requires item/flag)

3. Variables

Variable Type Description
PuzzleData DA_PuzzleData* Data asset defining this puzzle
CurrentState E_PuzzleState Current puzzle state
bIsInteractable bool Can player interact with this puzzle
InteractionPrompt FText Prompt text for interaction
LinkedActor AActor* Actor to notify on solve (door, gate, etc.)
bResetOnFail bool Auto-reset after failure
MaxAttempts int32 Max attempts before lockout (-1 = unlimited)
CurrentAttempts int32 Attempts used so far
CooldownSeconds float Time before re-interaction allowed

4. Functions

Function Description
BeginInteraction Player starts interacting with puzzle
EndInteraction Player exits puzzle UI
CheckSolution Validates player input against puzzle data
OnPuzzleSolved Processes completion — notifies LinkedActor
OnPuzzleFailed Processes failure — resets or locks
ResetPuzzle Resets puzzle to default state
GetPuzzleState Returns current E_PuzzleState

5. Event Dispatchers

Dispatcher Payload Description
OnPuzzleStateChanged E_PuzzleState NewState State transition occurred
OnPuzzleSolved AActor* Solver Puzzle completed
OnPuzzleFailed int32 AttemptNumber Attempt failed
OnPuzzleLinkedActorTriggered AActor* LinkedActor Linked actor notified

6. Dependencies & Communication

System Relationship
DA_PuzzleData Defines puzzle rules and solution
BPC_InteractionDetector Focus and interaction initiation
BP_DoorActor Common linked actor (unlock on solve)
BPC_NarrativeStateSystem Set narrative flags on solve
SS_SaveManager Persist puzzle state

7. Reuse Notes

  • All puzzle logic is data-driven via DA_PuzzleData
  • LinkedActor pattern decouples puzzle from effect