Humanoid Desync | "Bowling Pin" | Unspecialized Physics Assembly Behavior

Sometimes, when walking into other player characters, they can fall over like unanchored, unscripted assemblies. The humanoid seemingly wakes up, and puts the character back in Running.

It’s like the local client gets network ownership of other players, and their humanoid kicks back on only after they fell over.

Once it does rewake, the behavior is usually not seen ever again. Pushing on the character afterwards will only translate them, not rotate, which is usual conditions. If I rejoin the game, however, I am able to reproduce the behavior every time.


This was caught on 6/25/21 at 9:00PM EST, but has been ongoing for around a month at least.

User was AFK. reproduced by rejoining server.

13 Likes

Can confirm. This happened to a friend, who ran into a non-AFK person with a ForceField that was not moving and the person’s character collapsed.

This actually happens a lot in my game even though there’s nothing in my game to cause this. And it only happens locally too.

This is also related to some janky start-up of the game, There’s a severe desync with the physics and the user, which also affects some physics-based game to “slingshot” non-player objects(loose parts) back to its original position, sending the player flying away while the part is trying to process the physics.

I have encountered this recently on my game as well with NPCs. They get knocked over on the client and then eventually ‘correct’ to the server’s position

What game is this? Does this happen more regularly in any particular game?

This is doubly weird, since interpolation should be resetting the position every frame and even if the character is pulled in to local non-authoritative simulation it should still stay upright…

1 Like

ive never seen this behavior before? not to sound weird but what region do you live in, I’m north east. Im not sure if it has anything to do with it but it might

I was able to consistently replicate this on a blank baseplate. First, you go on one account and walk forward from spawn a bit. Then, you close the tab and go on another account. In this case, I went on my phone (iOS) for my second account and had my first account on Windows 10. When my alt got into the game, I just walked into my character and it either flopped the first account over or I was able to push the first account like it had no mass for a few seconds.

Edit: I’ve also seem similar behavior happening to NPCs that have their network ownership set to the server. Even though their collisions are off, if they run into each other sometimes they will have this “bowling pin” behavior and flop over on the floor for a few seconds.

https://cdn.discordapp.com/attachments/273277538653175809/859663226781958174/video0.mov
https://cdn.discordapp.com/attachments/273277538653175809/859663228103819274/video1.mov

1 Like

I have been having this issue for some months now, here and there. It’s not consistent the times it happens to me, it seems to have something to do with the other client being frozen.

This coincidentally happened to me in Studio Test Server, giving me a chance at a better analysis:

  • For all other clients other than the victim, Player3 in this case, it appears normal:

  • There is no additional modifications to the player/character logic here. Normal system occurrence.

  • Without moving any player characters, this persisted for well over 18 minutes; the behavior is stable without interuption.


Humanoid State Info for each:

Player3; Victim:

image
(All visually lazy characters are in the “FallingDown” State.)

Player1:

image
(All visually upright characters are in the “Running” State.)

Player 2:

image
(All visually upright characters are in the “Running” State.)

Source: Studio Output. Command Bar Luau code:

for i,player in ipairs(game.Players:GetPlayers()) do
 print(player,player.Character.Humanoid:GetState()) 
end 

Now, after all that time, let us move the characters!:

First, I move Player 1, a nonvictim.
Second, I move Player3, the victim.

We only have to focus on Player3’s screen, the far right of them all, because they are the victim of this effect.

We see, when a nonvictim moves they correct themselves quick and clean like a state change.

When we see the victim move their character, the nonvictim player (Player2 all that is remaining) falls like a bowling pin. As to persist in FallingDown. Only after some time (perhaps network replication going back to P2 and forcing a backfeed assertion to P3, do we finally see a nonvictim character resolve).

(P.S: Victim player means client afflicted, not character afflicted, as that really is the player who has character copies, albeit of everyone but themselves, that are affected.)

Also:

image

State check on Player3, post interaction. (Has returned to normal in State to complement appearances.)

Hope this helps @ContextLost.

This can easily be replicated by watching another player ride a sphere.
Their character will attach to the sphere and rotate along for an instant before fixing itself after a bit.

2 Likes

Is the sphere unanchored? If so, that’s probably a visually similar but causally different bug, see: Characters on Moving Platforms | Undue rotation Inheritance. This is more about character forces than platform ones.

1 Like