Roblox Kick Amp Ban Script Kick Script V2 Portable (100% TRENDING)
Since 2019, Roblox requires all games to have FilteringEnabled active. FE prevents client-side scripts from directly affecting server-side properties. Legitimate kick commands MUST originate from the server. Exploits can only mimic or trick servers, but universal methods rarely work across different game architectures.
Place this in ServerScriptService:
local AdminModule = {} local Admins = [12345678] = true, -- Replace with your User ID -- Add more admin User IDs herefunction AdminModule:KickPlayer(executor, targetUser, reason) if not Admins[executor.UserId] then return false end roblox kick amp ban script kick script v2 portable
local target = game.Players:FindFirstChild(targetUser) if target then target:Kick(reason or "Kicked by admin: " .. executor.Name) return true end return falseend
function AdminModule:BanPlayer(executor, targetUser, reason, duration) if not Admins[executor.UserId] then return false end Since 2019, Roblox requires all games to have
-- Implement ban storage here -- Use DataStoreService for persistent bans local target = game.Players:FindFirstChild(targetUser) if target then target:Kick(reason or "Banned by admin: " .. executor.Name) return true end return falseend
return AdminModule
-- Services
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- Configuration
local KickMessage = "You have been removed from this server."
-- Storage for kicked players (Portable version uses a table, advanced uses DataStore)
local KickedList = {}
-- RemoteEvent for kicking (Must be created in ReplicatedStorage)
local KickRemote = Instance.new("RemoteEvent")
KickRemote.Name = "RememberKick"
KickRemote.Parent = ReplicatedStorage
-- Function to handle the kicking
local function KickPlayer(targetPlayer, reason)
if targetPlayer and targetPlayer.Parent then
-- Add to the kicked list so they can't rejoin
KickedList[targetPlayer.UserId] = true
-- Kick them
targetPlayer:Kick(reason or KickMessage)
print("Kicked " .. targetPlayer.Name)
end
end
-- Detect if a kicked player tries to rejoin
Players.PlayerAdded:Connect(function(player)
if KickedList[player.UserId] then
player:Kick("You are banned from this session.")
end
end)
-- Listen for the command to kick (Secure way)
KickRemote.OnServerEvent:Connect(function(playerWhoFired, targetPlayer, reason)
-- SECURITY: Check if the player who fired the remote has admin privileges
-- Replace this with your actual admin check (e.g., player.UserId == 12345678)
local isAdmin = playerWhoFired.UserId == 12345678 -- Example Admin ID
if isAdmin then
KickPlayer(targetPlayer, reason)
else
playerWhoFired:Kick("Exploit detected.")
end
end)
print("Portable Kick V2 Loaded")