local Players = game:GetService("Players") local PhysicsService = game:GetService("PhysicsService") local RunService = game:GetService("RunService") local LocalPlayer = Players.LocalPlayer local function forcePushable(character) if not character then return end for _, obj in ipairs(character:GetDescendants()) do if obj:IsA("BasePart") then -- Reset to default colliding behavior obj.CollisionGroup = "Default" obj.CanCollide = true obj.Massless = false -- Strong physical properties for good push feel obj.CustomPhysicalProperties = PhysicalProperties.new( 0.8, -- Density 0.4, -- Friction 0.3, -- Elasticity 0.8, -- FrictionWeight 0.3 -- ElasticityWeight ) end end local hrp = character:FindFirstChild("HumanoidRootPart") if hrp then hrp.CanCollide = true hrp.CollisionGroup = "Default" hrp.Massless = false end local humanoid = character:FindFirstChild("Humanoid") if humanoid then humanoid.PlatformStand = false humanoid.AutoRotate = true end end -- Initial apply if LocalPlayer.Character then forcePushable(LocalPlayer.Character) end LocalPlayer.CharacterAdded:Connect(forcePushable) -- Aggressive enforcement loop RunService.Heartbeat:Connect(function() local character = LocalPlayer.Character if character then local hrp = character:FindFirstChild("HumanoidRootPart") if hrp then hrp.CollisionGroup = "Default" hrp.CanCollide = true hrp.Massless = false end for _, part in ipairs(character:GetChildren()) do if part:IsA("BasePart") then part.CollisionGroup = "Default" part.CanCollide = true part.Massless = false end end end end) -- Also try to affect other players on your client for better sync Players.PlayerAdded:Connect(function(plr) plr.CharacterAdded:Connect(function(char) task.wait(0.5) for _, part in ipairs(char:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = true end end end) end)