A way to fix attacks damaging the player cast the damage?

so for my attacks, i will create a for loop to fire the damage remote events … the problem is… sometimes my attack can damage the player who cast the damage, up until now, this only happens when i create a part attached to the player’s character, fake arms , a wheel (water wheel) etc… at the end of the attack, it damages the player who cast the attack.

How my damage works is that a part will be created for the original part (from remote event info) that has the same size and will be welded to the original part, then a touched event will be fired for that part. This is where the damage will be dealt. It will check for humanoid and then damage that humanoid. I tried adding if hit.Parent.Name == plr.Name then return end but the damage didn’t happen to other players aswell…

So my question is, is there other way to fix this?

make it so (if hit.Parent ~= caster) so the caster doesn’t get involved

by the way, using comparison of names is not the best idea because there can be models who have the same name of the user for example someone named “registrymode” might get confused for a registry-like instance but that would be on rare occassions

also, if you want to ask me how to make it multi hit for each individual without setting the global cooldown then you can point it out