Summary
Registering a single player to a Player Movement Settings device via player_movement_settings_device.AddTo(Agent) can at times block the server for up to 40ms per call (measured with the Verse profile macro — the cost varies per call). The cost compounds with player count — applying the device to multiple players in the same frame (looping AddTo, or AddToAll()) causes severe server lag and rubber-banding for everyone in the session. For reference, a full server tick at 30 TPS is ~33ms, so a single registration can blow the entire frame budget on its own. This makes the device effectively unusable in any real multiplayer island. The same hitch occurs whether the device is driven from Verse or applied through editor event wiring.
Please select what you are reporting on:
Creative
What Type of Bug are you experiencing?
Devices
Steps to Reproduce
- Place a Player Movement Settings device and modify any movement setting.
- From a Verse device, call
MovementDevice.AddTo(Agent)for a single player, wrapped in theprofilemacro. - Observe the profile log at times reporting up to ~40ms for the single
AddTocall (the cost varies per call). - Register every player in a populated lobby in the same tick (looped
AddToorAddToAll()) and observe a severe server hitch — TPS drops hard and all players rubber-band. - Repeat using editor event wiring instead of Verse — the same hitch occurs.
Expected Result
Registering a player to the device should cost a fraction of a millisecond — cheap enough to apply movement settings to a full lobby in a single tick without any visible hitch.
Observed Result
Each registration can at times block the server for up to ~40ms (the cost varies per call). The cost scales with the number of players registered in one frame, hitching the entire server and making the device impractical to use.
Platform(s)
All
