Linear velocities are glitchy like that. Bodyvelocities have the same behavior and aren’t glitchy, even thought they ARE deprecated. If you dont wanna use a deprecated item then use sonic_848s reccomendation
I was talking about the VelocityConstraintMode. You should select the vector one instead of the line and set MaxForce to math.huge. After this, you can set the vector velocity and multiply it by your strength
This module is hella old so some things won’t make sense. You’re welcome to ask questions about it
Edit: I know you’re gonna ask about the first parameter so I’ll explain it. It takes in either a player of your choice or a character model so you can do it on NPC’s. And it is a module btw
You have to test applying knockbacks with different strengths and times until you find the one that suits your needs. The time you input is how long it will take for the linear velocity to get destroyed
Edit: As I was reviewing my code I realized passing an EasingStyle to the function won’t do anything. Switch these lines real quick:
Before:
local Tween = game.TweenService:Create(NumberVal, TweenInfo.new(Time, Enum.EasingStyle.Circular), {Value = Strength})
After:
local Tween = game.TweenService:Create(NumberVal, TweenInfo.new(Time, KnockbackEaseStyle), {Value = Strength})
You should name enemyCharacter to Target and character to Pusher so it’s easier to understand what’s going on. I first thought character was the one being pushed, and was confused as to why the enemy would have the velocity in them instead.
I believe the teleporting is due to network ownership, and unfortunately there is no way to solve that. However, you can use a tween on the velocity to make it slow down over time.