Description

Due to the way input is handled on the MoverExamplesCharacter, including AnimatedMannyPawn, we have a delay in the time between when an input event occurs and when it is ingested by the movement simulation.

This is due to input being evaluated through the PlayerController's tick, which always occurs later in the frame than the movement simulation.  Use a debugger to break in functions like AMoverExamplesCharacter::OnMoveTriggered and OnProduceInput to how they are called.

Investigate alternatives, such as:

  • forcing an evaluation of input just as OnProduceInput is called
  • rescheduling the PlayerController tick to occur earlier 
  • something else?
Steps to Reproduce

Add the MoverExamples plugin to any project, such as QAGame.

Open the AnimatedMannyPawn blueprint and add something like the image below to the event graph. This will capture and show any frame number difference between when jump input is detected and when it affects the active movement mode.

[Image Removed]

Open the L_LayeredMoves map.
PIE in Standalone mode with 1 player.

Press the jump button (space bar), and observe the text shown.
If the input and movement mode logs show the same frame number, then that’s ideal.

By default, the frame numbers will be off by one, meaning it took an extra frame to get off the ground after the input was detected.

To test this fix, change your Project Settings like so:

[Image Removed]

And run PIE again. The frame numbers should match with every jump.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-209032 in the post.

1
Login to Vote

Fixed
ComponentUE - Gameplay - Network Prediction
Affects Versions5.4
Fix Commit56539081
CreatedMar 6, 2024
ResolvedAug 4, 2026
UpdatedAug 18, 2026
View Jira Issue