character:FindFirstChild("Left Arm").Touched:connect(function(hit)
if debounce == false then
if hit.Parent:FindFirstChild("Humanoid") and debounce == false and punching == true then
player.data.cash.Value = player.data.cash.Value + 10
debounce = true
punching = false
hit.Parent.Humanoid:TakeDamage(damage)
soundeffects.PunchHit:Play()
if player.data.dmg.Value >= 200 then
local yesorno = math.random(1,3)
if yesorno == 1 then
local h = hit.Parent.Humanoid
if h then
wait()
h.Jump = true
h.Parent.Torso.Velocity = (CFrame.new(character.Torso.Position, h.Parent.Torso.Position).lookVector * 100) + Vector3.new(0, 30, 0)
h.Parent.Torso.RotVelocity = Vector3.new(math.random(-100, 100), math.random(-100, 100), math.random(-100, 100))
end
end
end
end
end
end)
in studio it knocks back the npc i have for testing in game when it doesnt knock people back. i dont know why and i would like some help.

2 comments
Not answering without error logs.
Can you edit or tell us what are the errors?