BodyVelocity working on Dummies, but not on actual players

I have a combo system where on a certain punch you launch the player, it works on Dummies, but it doesn’t work on players.

VIDEO:

CODE IN QUESTION:
if hit and hit.Parent:FindFirstChild("Humanoid") then
		local target = hit.Parent
		if combo == 1 or combo == 2 then
			target.Humanoid:TakeDamage(10)
		elseif combo == 3 then
			target.HumanoidRootPart.Anchored = false
			local bodyVelocity = Instance.new("BodyVelocity")
			bodyVelocity.Velocity = character.HumanoidRootPart.CFrame.lookVector * 400
			bodyVelocity.MaxForce = character.HumanoidRootPart.CFrame.lookVector * 1e4
			bodyVelocity.Parent = target.HumanoidRootPart
			
			game:GetService("Debris"):AddItem(bodyVelocity, 1)
		end
	end
	
end)
2 Likes

BodyVelocity is depriciated, you should use some other physics constraint.

However, this probably isn’t working because of either networking and how you are creating the velocity.

The dummies may be working because they automatically have network ownership to the player, but other players own their own character. Make sure you are creating the velocity from the server.

You can use a RemoteEvent the client activates with a target character to apply knockback to from the server.