Nice — that screen means you’ve crossed the big hurdle:
✅ Your Mapping Context is now applied (Context: NewInputMappingContext shows up)
Now the reason your action still isn’t firing is shown here:
Action: KeyDown - None - 0.000s (false)
and it even prints E - below, which usually means the key is being seen, but it’s not matching your action mapping (or it’s being blocked/consumed).
Here are the fixes in order of likelihood:
Open NewInputMappingContext and click the mapping row for KeyDown.
Make sure the key field literally reads E (not blank / not “Any Key” / not something else).
If it’s correct, delete that mapping row and re-add it:
+ Mapping → Action KeyDown → Key E
(UE sometimes keeps a “None” key in there without it being obvious.)
For a Digital(bool) action with no triggers:
- Use Started → fires once on press
- Use Completed → fires on release
Triggered can be finicky depending on triggers/settings.
So wire:
EnhancedInputAction KeyDown Started → Print String("E pressed")
If you have a Widget focused (UI), or another actor/controller consuming the input, your pawn may not get it.
Quick tests:
- Click the viewport to ensure game has focus (you already see “Click for Mouse Control”)
- Temporarily disable UI input:
- In PlayerController BeginPlay:
Set Input Mode Game Only
Also: in the Input Action asset (KeyDown) you have “Consume Lower Priority…” checked (I saw that earlier). That only affects priority order, but still—keep it simple:
- In the Input Action asset, set Consume options OFF for testing.
Even though the context is applied, the Pawn needs the enhanced input component to fire that “EnhancedInputAction …” event node.
In your Pawn BeginPlay, print:
Get Input Component → Get Class → Print
You want it to be EnhancedInputComponent.
If it’s not:
Project Settings → Engine → Input
- Default Input Component Class = EnhancedInputComponent
- Default Player Input Class = EnhancedPlayerInput
Save All + restart editor.
In the Pawn BP, add BOTH:
EnhancedInputAction KeyDown Started → Print
- AND a plain
Keyboard E event → Print
If Keyboard E prints but the Enhanced one doesn’t:
- it’s 100% a mapping/action/EnhancedInputComponent issue.
If neither prints:
- focus/possession/input mode issue.
If you show me (1) your IMC row where the key label is visible and (2) your Pawn BeginPlay mapping-context node chain, I can point to the exact mismatch in one glance.