[CRITICAL] Reading the position of a HumanoidRootPart on the server always returns the same Vector3

Reproduction Steps

snip

Attempting to read a player’s position on the server is suddenly always returning the Vector3 position at which the player spawned. This broke everything in our game.

Expected Behavior

The player’s position should change when the character moves, just like it always has.

Actual Behavior

A constant Vector3 position is returned, even though I’m walking around:
snip2

Issue Area: Engine
Issue Type: Other
Impact: Critical
Frequency: Constantly
Date First Experienced: 2022-07-22 04:07:00 (-05:00)

7 Likes

Just as a question, does this happen with the other properties? For instance, CFrame, Color3 etc…

It’s happening for CFrame and Vector3, just in Studio. I’m not sure if other properties are affected – I just stepped away from my PC. Everything works just fine when I publish the game and play via the Roblox website.

1 Like

I wasn’t able to replicate this with identical code in Studio in Windows 10. Maybe there’s an A/B test.

What happens if you define humanoid root part within the loop?

Same thing. It’s worth noting that the behavior is normal for other people on my Team Create. It’s just me with this odd behavior.

You should create a reproduction of this bug outside of your game, in a new baseplate, to ensure it’s not something else in your game causing this.

We’re having trouble reproducing this. Can you confirm a few things:

  1. Is it happening in live games?
  2. Can you find a minimal repro, e.g. a few lines of code in a baseplate?
  3. Do you have any script edits in your drafts that could cause it?

Thanks for the response. I wasn’t able to reproduce this issue on just a baseplate, and I am the only one in my Team Create group experiencing this. All drafts are committed. It is now also happening in live games as well. It’s been happening on two different devices (Macbook Pro and my PC).

Edit: This is now occurring in live games as well.

Can you please provide a link to the games?

Just to provide some more information: nothing replicates from the player’s character. Here are screenshots from the server & client (notice the player is in a different position. On the server, the character hasn’t moved from the spawn location. On the client, I’m walking around normally)

Server:
server_screenshot

Client:
client_screenshot

Client (left), Server (right):

I hesitated to add to this as my issues are intermittent and seem only tangentially related, but I’ve also been catching sporadic position desync issues on Ultimate Driving since yesterday, mostly in Studio but I think a developer caught something similar live as well.
The couple of times I’ve seen it, it manifests itself by two players seeing their avatars or vehicles in different places at the same time, and this wasn’t happening prior to Thursday night / Friday morning.
I haven’t been able to consistently reproduce it and it doesn’t seem to be a constant issue, but it bears some resemblance to the main issue reported here.

Disregard, this issue is my own fault haha

1 Like

Your root part or assembly may be different on the server of client. Try printing out the assembly root part on the client and the server.

1 Like

Hi! I know this is quite old at this point, but is this still happening?

Yes i noticed some weird behaviour with my rootpart cframe this morning but it was on the client

FWIW, we were never able to reproduce this - It would be useful to have an isolated repro level if it is still happening.
We haven’t rolled out anything that would break client → server Physics replication.

It’s been a while so I can’t remember the cause, but it had something to do with a weld that was preventing replication. It was my fault IIRC. Thanks for the response