Phys Sleep Issue - Collisions dont update when network ownership is not set to server

Version 0.696.0.6960797 (64bit)

Summary

When you update the collision group collideability and parts are affected, which have the network ownership set to a player, the collisions wont update until another part interacts with one of them.

Example

Create 2 unanchored parts, one on top of the other. Give both a seperate collision group and have it set to collide. Once you start the game, set the network ownership of those parts to a player and then update the collision with CollisionGroupsSetCollideable. The upper part wont fall through.

Addition

When setting the network ownership to the server after changing the collision, the upper part falls through the lower one (the expected behaviour).

This video shows the bug happening well, you can also see the network ownerships.

Code used in the video:
(when setting the condition to true, the described behavior in Addition appears)

 game.Players.PlayerAdded:Connect(function(Player)	task.wait(2)	for _, Part: BasePart in workspace.Parts:GetChildren() do	if not Part:IsA("BasePart") then continue end	Part:SetNetworkOwner(Player)	end	task.wait(2)	print("Update collisions")	game.PhysicsService:CollisionGroupSetCollidable("A", "B", false)	if false then	task.wait(1)	print("Set network owner to server")	for _, Part: BasePart in workspace.Parts:GetChildren() do	if not Part:IsA("BasePart") then continue end	Part:SetNetworkOwner(nil)	end	task.wait(1)	print("Set back to player")	for _, Part: BasePart in workspace.Parts:GetChildren() do	if not Part:IsA("BasePart") then continue end	Part:SetNetworkOwner(Player)	end	end	task.wait(1)	print("Unanchor")	workspace.Anchor.Anchored = false end) 

A private message is associated with this bug report

1 Like