Only certain sync state structs are intended to persist between frames. These are configured via MoverComponent's PersistentSyncStateDataTypes array.
There appears to be a bug in the way the standalone backend manages sync state between frames, so structs that are not in this list are carrying over indefinitely once they're added.
This was found to cause a bug with MoverExamples' ziplining mechanic because it relies on the absence of a ZipliningState struct to determine whether to search for a new ziplining point or continue along an existing line.
Open any project that uses the MoverExamples plugin, such as QAGame
Edit AnimatedMannyPawnExtended so that it uses the "standalone" backend
Run PIE in 1 player mode in the L_CharacterMovementBasics map
Go to the area where vaulting/ziplining features exist. Swap your pawn for the AnimatedMannyPawnExtended one. It will be green.
Open the Gameplay Debugger Tool (gdb.Enable on the command console) and select the local player's character, then toggle categories so that only Mover info is shown.
Operate the zipline
Note that after departing the zipline, the ZipliningState persists (visible in the GDT readout text)
Expected: ZipliningState should disappear after disengaging from the zipline.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-305566 in the post.
0 |
Component | UE - Gameplay - Player Movement - Mover |
---|---|
Affects Versions | 5.6 |
Target Fix | 5.7 |
Fix Commit | 44158570 |
---|
Created | Jul 16, 2025 |
---|---|
Resolved | Jul 18, 2025 |
Updated | Aug 8, 2025 |