Im trying to make a ban script, but it doesn’t seem to be working. Im not sure why either.
Im not getting any error’s, but when I put in the print functions, it didn’t print kicked.
local character = script.Parent
local player = game.Players:GetPlayerFromCharacter(character)
local humanoid = character:FindFirstChildOfClass("Humanoid")
local Rep = game:GetService("ReplicatedStorage")
local BanDetect = Rep:WaitForChild("Events"):WaitForChild("BanDetect")
humanoid:GetPropertyChangedSignal("WalkSpeed"):Connect(function()
local WalkSpeed = humanoid.WalkSpeed
print("WalkSpeed")
if WalkSpeed > 16 then
print("fired")
local success, errormessage = pcall(function()
BanDetect:FireServer(player, "Speed")
print("remote fired")
end)
end
end)
ServerScriptService Ban Script
local Rep = game:GetService("ReplicatedStorage")
local BanDetect = Rep:WaitForChild("Events"):WaitForChild("BanDetect")
local Data = game:GetService("DataStoreService")
local banDataStore = Data:GetDataStore("BanData")
BanDetect.OnServerEvent:Connect(function(player, banReason)
if banReason == "Speed" then
banDataStore:SetAsync(player.UserId, true)
print("kicekd")
player:Kick("Gameplay has reveiwed some suspicious movement, action has been taken.")
elseif banReason == "JumpPower" then
banDataStore:SetAsync(player.UserId, true)
player:Kick("Gameplay has reveiwed some suspicious movement, action has been taken.")
elseif banReason == "Health" then
banDataStore:SetAsync(player.UserId, true)
player:Kick("Gameplay has reveiwed some suspicious upgrades, action has been taken.")
elseif banReason == "MaxHealth" then
banDataStore:SetAsync(player.UserId, true)
player:Kick("Gameplay has reveiwed some suspicious upgrades, action has been taken.")
elseif banReason == "HipHeight" then
banDataStore:SetAsync(player.UserId, true)
player:Kick("Gameplay has reveiwed some suspicious upgrades, action has been taken.")
end
end)