Which method of hitboxes should I use?

I’m trying to make good hitboxes on my game and I’m working on a meteor ability.

I was using client-sided hitboxes for the hitbox detection and I used GetPartInBoundsInRadius to detect humanoids but it wasn’t always working.

I thought of using server-sided hitboxes and timing the creation of the hitbox to when the meteor would land on the ground to then go through every part it found.

Which method is better?

I’m thinking of creating a module I can call to create my own hitboxes but I’m not sure if I want to do server-sided hitboxes.

2 Likes

The server-sided method always works but its a strange method because I have to align it with how long the visuals take.


function Meteor:Init()
	local pos = self:Find()
	if pos == nil then return end
	local meteor = self:Create(pos)
	Remotes.ToClient:FireAllClients("Meteor",meteor,pos,10,1,self.ImpactName)
	task.wait(0.375) -- time aligning
	self:Hitbox(meteor,pos)
end
local moveRock = TweenService:Create(rock,TweenInfo.new(0.375,Enum.EasingStyle.Linear,Enum.EasingDirection.InOut),{Position = targetPos + Vector3.new(0,rock.Size.Y/2,0)}) -- aligning

For now though I think I’ll use server-sided hitboxes.

What exactly isn’t working about doing the hitboxes locally?

When the hitbox is touching the player, nothing is happening. It isnt being registered. I was also tweening the hitbox.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.