- Op - Admin Rank Giver Script Apr 2026

-- Create ScreenGui local gui = Instance.new("ScreenGui") gui.Name = "AdminRankGUI" gui.Parent = LocalPlayer:WaitForChild("PlayerGui")

-- Connect buttons refreshBtn.MouseButton1Click:Connect(refreshList) closeBtn.MouseButton1Click:Connect(function() gui:Destroy() end)

local yOffset = 0 for _, player in pairs(Players:GetPlayers()) do if player ~= LocalPlayer then local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, -10, 0, 30) btn.Text = player.Name btn.BackgroundColor3 = Color3.fromRGB(60, 60, 60) btn.TextColor3 = Color3.fromRGB(255, 255, 255) btn.Font = Enum.Font.Gotham btn.TextSize = 14 btn.Parent = listFrame btn.MouseButton1Click:Connect(function() giveAdmin(player) btn.BackgroundColor3 = Color3.fromRGB(0, 150, 0) task.wait(0.2) btn.BackgroundColor3 = Color3.fromRGB(60, 60, 60) end) end end

-- Function to give admin rank local function giveAdmin(targetPlayer) -- Attempt to give rank via common remote events local success = false - OP - Admin Rank Giver Script

-- Title local title = Instance.new("TextLabel") title.Size = UDim2.new(1, 0, 0, 30) title.BackgroundColor3 = Color3.fromRGB(20, 20, 20) title.Text = "Admin Rank Giver" title.TextColor3 = Color3.fromRGB(255, 255, 255) title.Font = Enum.Font.GothamBold title.TextSize = 18 title.Parent = frame

if not success then warn("Could not give admin rank automatically. Game may not support it.") end end

-- Close button local closeBtn = Instance.new("TextButton") closeBtn.Size = UDim2.new(0.45, 0, 0, 30) closeBtn.Position = UDim2.new(0.52, 0, 1, -40) closeBtn.Text = "Close" closeBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255) closeBtn.Font = Enum.Font.Gotham closeBtn.TextSize = 14 closeBtn.Parent = frame -- Create ScreenGui local gui = Instance

-- Refresh button local refreshBtn = Instance.new("TextButton") refreshBtn.Size = UDim2.new(0.45, 0, 0, 30) refreshBtn.Position = UDim2.new(0.03, 0, 1, -40) refreshBtn.Text = "Refresh" refreshBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 200) refreshBtn.TextColor3 = Color3.fromRGB(255, 255, 255) refreshBtn.Font = Enum.Font.Gotham refreshBtn.TextSize = 14 refreshBtn.Parent = frame

-- Main Frame local frame = Instance.new("Frame") frame.Size = UDim2.new(0, 300, 0, 400) frame.Position = UDim2.new(0.5, -150, 0.5, -200) frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) frame.BorderSizePixel = 0 frame.Active = true frame.Draggable = true frame.Parent = gui

-- Method 1: Find remote for rank giving local remotes = game:GetDescendants() for _, v in pairs(remotes) do if v:IsA("RemoteEvent") and (v.Name:lower():find("rank") or v.Name:lower():find("admin")) then pcall(function() v:FireServer(targetPlayer, "Admin") success = true end) elseif v:IsA("RemoteFunction") and (v.Name:lower():find("rank") or v.Name:lower():find("admin")) then pcall(function() v:InvokeServer(targetPlayer, "Admin") success = true end) end end 60) btn.TextColor3 = Color3.fromRGB(255

-- Method 2: Try command chat pcall(function() game:GetService("ReplicatedStorage"):FindFirstChild("DefaultChatSystemChatEvents"):FindFirstChild("SayMessageRequest"):FireServer("/giveadmin " .. targetPlayer.Name, "All") success = true end)

-- Initial refresh refreshList()

-- Function to refresh player list local function refreshList() -- Clear existing buttons for _, child in pairs(listFrame:GetChildren()) do if child:IsA("TextButton") then child:Destroy() end end