When using workspace:StepPhysics() with an array for which parts to apply physics to, Water physics seem to be only applying to the rootpart of assemblies rather than every part, causing the assembly to sink.
I had also tried including every part of the assembly in the array, and there was no difference.
local s = {workspace.Part1, workspace.Part2, workspace.Rig.PrimaryPart}
local c = game["Run Service"].PreRender:Connect(function(dt)
workspace:StepPhysics(dt, s)
end)
task.wait(4)
c:Disconnect()
game.ChangeHistoryService:SetWaypoint("stepped")
Thank you for the detailed post and reproduction steps! I think I was able to find the issue thanks to those, and I have merged in what I think should be a fix. It should be able to go live in a week or two, I will keep you posted here!