FE Gun kit and FPS template doesnt have firerate checks?

I was looking into the FE gun kit and roblox FPS template to see how they work so I can take inspriation for my gun system, but I noticed that both of those systems have no firerate checks on the server at all? So how do they prevent exploiting? The exploiters can easily just modify the client-sided code and fire bullets super fast? Im confused

I dont know if either do have any checks but you can easily add your own

local fired = {}

local function onFire(player:Player, tool:Tool)
fired[player] = fired[player] or 0
if fired[player] > getFireLimit(tool) then 
-- possibly firing too much
return
end

fired[player] += 1
task.delay(1, function() --- not the best approach, possibly better one would be calculating with tick()
fired[player] -= 1
end)

-- let the shot register
end

Altough, its important to consider lag whenever making ANY anti cheat. A player could just have a lag spike causing 2 remotes being sent in closer times which could trip the anti cheat
Id say this is only usefull for denying shots that are abnormaly above the limit or maybe flagging the player as a potential cheater. Do not be too harsh with punishments (if any)

1 Like