Description

Rebinding an action mapping doesn't seem to take effect immediately if the Pawn class used has Pawn.h as its parent class. However this'll take effect immediately with DefaultPawn.h. In addition, the new key binding will take effect once the user presses the key that the action used to be mapped to, and then goes back to pressing the new key.

Steps to Reproduce

With Test Project:

The project has an action mapping called "Test Action", that prints "Test Action" to the screen when triggered. Pressing C and B will change the key that maps to this action between J and K respectively.

Note: You'll see 2 different behaviors, depending on whether the default Pawn class is "ExtendsFromDefaultPawn" vs "ExtendsFromPawn".

  1. Download the attached project.  
  2. Open the UProject and Navigate to the Content Browser->TestMap
  3. Open TestMap 
  4. Navigate to the World Settings->GameMode->Gamemode Override-> Select "NewGameMode".
  5. For Default Pawn Class select "ExtendsFromDefaultPawn"
  6. Press PIE.
  7. Press the J key to print "Test Action to screen".
  8. Press the B Key to change input mappings.
  9. Press the K Key to print "Test Action to screen".
  10. Press The C Key to change the input mappings.
  11. Press The J key to print "Test Action to screen".
  12. Exit PIE-> World Settings-> Default Pawn Class -> Select "Extends from Pawn"
  13. Press PIE.
  14. Press the J key to print "Test Action to screen"
  15. Press the B key to change the input mappings.
  16. Press the K key.

Result: Input will not be detected and test action will not print to screen, unless the J key is pressed first before the K key.

Expected: "Test Action to screen" will print to screen without a pause in input.

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-82242 in the post.

0
Login to Vote

Fixed
ComponentGameplay - Input
Affects Versions4.224.234.244.25
Target Fix4.24
Fix Commit9748602
Main Commit9748632
Release Commit9748602
CreatedOct 22, 2019
ResolvedOct 22, 2019
UpdatedOct 24, 2019