How would you stop "Reach" On a sword

People say that the reach on the swords is bad, But I dont ever get it. What is with these swords?? Is this a Ping issue or Roblox? The sword uses onTouch() at the bottom it says Connection = Handle.Touched:connect(Blow)

function Blow(Hit)
	if not Hit or not Hit.Parent or not CheckIfAlive() or not ToolEquipped then
		return
	end
	local RightArm = Character:FindFirstChild("Right Arm")
	if not RightArm then
		return
	end
	local RightGrip = RightArm:FindFirstChild("RightGrip")
	if not RightGrip or (RightGrip.Part0 ~= Handle and RightGrip.Part1 ~= Handle) then
		return
	end
	local character = Hit.Parent
	if character == Character then
		return
	end
	local humanoid = character:FindFirstChild("Humanoid")
	if not humanoid or humanoid.Health == 0 then
		return
	end

	local player = Players:GetPlayerFromCharacter(character)
	if player and (player == Player or IsTeamMate(Player, player)) then
		return
	end
	UntagHumanoid(humanoid)
	TagHumanoid(humanoid, Player)
	humanoid:TakeDamage(Damage)	
end

It is certainly latency. There is very little that you can do about it.

It’s why blocking mechanics in games often struggle to function well as well.

1 Like

I figure as much, sadly I wish I could detect how close a player is by studs and allow only certain distance

1 Like

I don’t think this is specific enough, are they saying that the range (“reach”) is too short or long? If so you could just resize the handle and adjust it. However, if they’re saying it’s inconsistent or choppy, maybe consider a client-based hit detection system (with server-side checks to prevent exploitation).

1 Like