Okay, the problem is more serious than I thought. I thought it was only with the “HighLight” instance, but I’ve tested it with other instances and the error persists. I can’t change the CFrame of an instance (with PivotTo() or even with .CFrame). The problem is either with the physics engine, or there’s something in the engine I don’t even know exists.
The position changes from the execution of a local script
-I change the CFrame from the server (with PivotTo() or :CFrame the error is the same)
The CFrame doesn’t change either from what the user sees, much less from what the server sees. I found the error when creating an undo or redo position system because in my game you can select pieces and a highlight is added to the instance for the selection effect. When I saw that it only undid or redo the CFrame of the instance, I tried to replicate it from the server with pieces that have nothing to do with my system. So the error isn’t my code, it’s something strange with the engine. I hope it’s a bug and not that the Roblox engine works that way. Thanks for reading and excuse my English.
IMPORTANT: this disables my entire game, because if I use HightLight.Adornee it is the same result ;-;
I didn’t say that, I created one from the server and added a child or sibling to it from the local script (in this case, a highlight). The server script does execute PivotTo(), but the instance isn’t repositioned because it has a sibling/child created from a local script. I see I explained it poorly, because you already have 2 likes, which means they didn’t understand me. Is that clear now?
If you are talking about this:
Then Physical related properties WON’T change in that window, until part is re-selected. Physical properties have diffirent behavior among all others, to save on speed. Like each change check consumes N amount of CPU time, and Roblox has decided to skip it for: Position, Orientation, CFrame, AssemblyLinearVelocity, AssemblyAngularVelocity, cuz unlike many other properties, like Color, this ones can change 120 times per second, on each part.
I’m using Translator. Hence, you’ll be able to read the flaws in my logic. Anyway, I’ve already recorded a video explaining why my conclusion is correct. But I’ll give you a preview of the problem in text. If the instance I want to move from the server has a sibling or child created locally, it doesn’t move it on the server. The line executes, but it remains in its CFrame, which was generated earlier upon creation or by a localScript.