
KeylessUniversal

-- // Services
local Players = game:GetService("Players")
local Workspace = game:GetService("Workspace")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local localPlayer = Players.LocalPlayer
local camera = workspace.CurrentCamera
-- // State Variables
local guiVisible = true
local flyEnabled = false
local noclipEnabled = false
local bypassActive = true
local flySpeed = 50
local activeConnections = {}
-- // UI Creation
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "MM2AdvancedSuiteUI"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = localPlayer:WaitForChild("PlayerGui")
-- // Floating Toggle Button with Image
local ToggleButton = Instance.new("ImageButton")
ToggleButton.Name = "ToggleButton"
ToggleButton.Size = UDim2.new(0, 50, 0, 50)
ToggleButton.Position = UDim2.new(0, 15, 0, 15)
ToggleButton.BackgroundColor3 = Color3.fromRGB(245, 130, 32)
ToggleButton.Image = "rbxassetid://0" -- Replace with your uploaded decal asset ID if needed
ToggleButton.Parent = ScreenGui
local ToggleCorner = Instance.new("UICorner")
ToggleCorner.CornerRadius = UDim.new(1, 0)
ToggleCorner.Parent = ToggleButton
-- // Advanced Mobile Fly Control Pad
local FlyPad = Instance.new("Frame")
FlyPad.Name = "FlyPad"
FlyPad.Size = UDim2.new(0, 140, 0, 140)
FlyPad.Position = UDim2.new(1, -150, 0.5, -70)
FlyPad.BackgroundTransparency = 1
FlyPad.Visible = false
FlyPad.Parent = ScreenGui
local FlyUpBtn = Instance.new("TextButton")
FlyUpBtn.Size = UDim2.new(0, 140, 0, 42)
FlyUpBtn.Position = UDim2.new(0, 0, 0, 0)
FlyUpBtn.BackgroundColor3 = Color3.fromRGB(245, 130, 32)
FlyUpBtn.Text = "▲ UP"
FlyUpBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
FlyUpBtn.TextSize = 13
FlyUpBtn.Font = Enum.Font.GothamBold
FlyUpBtn.Parent = FlyPad
Instance.new("UICorner", FlyUpBtn).CornerRadius = UDim.new(0, 6)
local FlyDownBtn = Instance.new("TextButton")
FlyDownBtn.Size = UDim2.new(0, 140, 0, 42)
FlyDownBtn.Position = UDim2.new(0, 0, 0, 48)
FlyDownBtn.BackgroundColor3 = Color3.fromRGB(245, 130, 32)
FlyDownBtn.Text = "▼ DOWN"
FlyDownBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
FlyDownBtn.TextSize = 13
FlyDownBtn.Font = Enum.Font.GothamBold
FlyDownBtn.Parent = FlyPad
Instance.new("UICorner", FlyDownBtn).CornerRadius = UDim.new(0, 6)
local SpeedToggleBtn = Instance.new("TextButton")
SpeedToggleBtn.Size = UDim2.new(0, 140, 0, 36)
SpeedToggleBtn.Position = UDim2.new(0, 0, 0, 96)
SpeedToggleBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 45)
SpeedToggleBtn.Text = "Speed: 50"
SpeedToggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
SpeedToggleBtn.TextSize = 12
SpeedToggleBtn.Font = Enum.Font.GothamSemibold
SpeedToggleBtn.Parent = FlyPad
Instance.new("UICorner", SpeedToggleBtn).CornerRadius = UDim.new(0, 6)
-- Main Frame (Compact Height)
local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(0, 320, 0, 420)
MainFrame.Position = UDim2.new(0.5, -160, 0.5, -210)
MainFrame.BackgroundColor3 = Color3.fromRGB(18, 18, 22)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Draggable = true
MainFrame.Parent = ScreenGui
local UICorner = Instance.new("UICorner")
UICorner.CornerRadius = UDim.new(0, 10)
UICorner.Parent = MainFrame
-- MM2 Header Bar
local Header = Instance.new("Frame")
Header.Size = UDim2.new(1, 0, 0, 38)
Header.BackgroundColor3 = Color3.fromRGB(245, 130, 32)
Header.Parent = MainFrame
local HeaderCorner = Instance.new("UICorner")
HeaderCorner.CornerRadius = UDim.new(0, 10)
HeaderCorner.Parent = Header
local HeaderFix = Instance.new("Frame")
HeaderFix.Size = UDim2.new(1, 0, 0, 8)
HeaderFix.Position = UDim2.new(0, 0, 1, -8)
HeaderFix.BackgroundColor3 = Color3.fromRGB(245, 130, 32)
HeaderFix.BorderSizePixel = 0
HeaderFix.Parent = Header
local HeaderTitle = Instance.new("TextLabel")
HeaderTitle.Size = UDim2.new(1, -20, 1, 0)
HeaderTitle.Position = UDim2.new(0, 12, 0, 0)
HeaderTitle.BackgroundTransparency = 1
HeaderTitle.Text = "MM2 ADVANCED SUITE"
HeaderTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
HeaderTitle.TextSize = 13
HeaderTitle.Font = Enum.Font.GothamBold
HeaderTitle.TextXAlignment = Enum.TextXAlignment.Left
HeaderTitle.Parent = Header
-- Scrolling Container
local Container = Instance.new("ScrollingFrame")
Container.Size = UDim2.new(1, -16, 1, -48)
Container.Position = UDim2.new(0, 8, 0, 44)
Container.BackgroundTransparency = 1
Container.BorderSizePixel = 0
Container.CanvasSize = UDim2.new(0, 0, 0, 440)
Container.ScrollBarThickness = 3
Container.ScrollBarImageColor3 = Color3.fromRGB(245, 130, 32)
Container.Parent = MainFrame
local UIListLayout = Instance.new("UIListLayout")
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
UIListLayout.Padding = UDim.new(0, 6)
UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
UIListLayout.Parent = Container
-- Helper Builders
local function createButton(name, text, layoutOrder)
local btn = Instance.new("TextButton")
btn.Name = name
btn.Size = UDim2.new(1, 0, 0, 32)
btn.BackgroundColor3 = Color3.fromRGB(28, 28, 35)
btn.Text = text
btn.TextColor3 = Color3.fromRGB(225, 225, 235)
btn.TextSize = 12
btn.Font = Enum.Font.GothamSemibold
btn.LayoutOrder = layoutOrder
btn.Parent = Container
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 6)
corner.Parent = btn
return btn
end
-- Controls List
local ShootMurdererBtn = createButton("ShootMurdererBtn", "Shoot Murderer", 1)
local KillAllBtn = createButton("KillAllBtn", "Kill All (Murderer)", 2)
local FlingSheriffBtn = createButton("FlingSheriffBtn", "Fling Sheriff", 3)
local FlingMurdererBtn = createButton("FlingMurdererBtn", "Fling Murderer", 4)
local FlingInnocentBtn = createButton("FlingInnocentBtn", "Fling Innocents", 5)
local FlingAllBtn = createButton("FlingAllBtn", "Fling All Players", 6)
local FlyBtn = createButton("FlyBtn", "Fly: OFF", 7)
local NoclipBtn = createButton("NoclipBtn", "Noclip: OFF", 8)
local BypassKickBtn = createButton("BypassKickBtn", "Anti-Kick: ACTIVE", 9)
-- // TOGGLE UI FUNCTIONALITY
ToggleButton.MouseButton1Click:Connect(function()
guiVisible = not guiVisible
MainFrame.Visible = guiVisible
end)
-- // ROLE DETECTOR UTILITIES
local function getPlayerRole(player)
local char = player.Character
if not char then return "Innocent" end
if player.Backpack:FindFirstChild("Knife") or char:FindFirstChild("Knife") then
return "Murderer"
elseif player.Backpack:FindFirstChild("Gun") or char:FindFirstChild("Gun") or player.Backpack:FindFirstChild("Revolver") then
return "Sheriff"
end
return "Innocent"
end
-- // SHOOT MURDERER
ShootMurdererBtn.MouseButton1Click:Connect(function()
local myChar = localPlayer.Character
if not myChar or not myChar:FindFirstChild("HumanoidRootPart") then return end
local gun = localPlayer.Backpack:FindFirstChild("Gun") or localPlayer.Backpack:FindFirstChild("Revolver")
if gun then gun.Parent = myChar end
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and getPlayerRole(player) == "Murderer" then
local targetChar = player.Character
if targetChar and targetChar:FindFirstChild("HumanoidRootPart") then
myChar.HumanoidRootPart.CFrame = targetChar.HumanoidRootPart.CFrame + Vector3.new(0, 0, 3)
if targetChar:FindFirstChild("Humanoid") then
targetChar.Humanoid.Health = 0
end
end
break
end
end
end)
-- // KILL ALL (MURDERER FEATURE)
KillAllBtn.MouseButton1Click:Connect(function()
local myChar = localPlayer.Character
if not myChar or not myChar:FindFirstChild("HumanoidRootPart") then return end
local knife = localPlayer.Backpack:FindFirstChild("Knife") or myChar:FindFirstChild("Knife")
if knife then knife.Parent = myChar end
local originalCFrame = myChar.HumanoidRootPart.CFrame
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and player.Character then
local targetChar = player.Character
if targetChar and targetChar:FindFirstChild("HumanoidRootPart") and targetChar:FindFirstChild("Humanoid") and targetChar.Humanoid.Health > 0 then
myChar.HumanoidRootPart.CFrame = targetChar.HumanoidRootPart.CFrame + Vector3.new(0, 0, 2)
task.wait(0.15)
targetChar.Humanoid.Health = 0
end
end
end
task.wait(0.1)
if myChar and myChar:FindFirstChild("HumanoidRootPart") then
myChar.HumanoidRootPart.CFrame = originalCFrame
end
end)
-- // CORE FLING FUNCTION WITH EXACT POSITION RESTORATION
local function executeFlingOnTarget(targetChar)
local myChar = localPlayer.Character
if not myChar or not myChar:FindFirstChild("HumanoidRootPart") then return end
if not targetChar or not targetChar:FindFirstChild("HumanoidRootPart") then return end
local myRoot = myChar.HumanoidRootPart
local targetRoot = targetChar.HumanoidRootPart
local originalCFrame = myRoot.CFrame
for _, part in ipairs(myChar:GetDescendants()) do
if part:IsA("BasePart") then part.CanCollide = false end
end
local bav = Instance.new("BodyAngularVelocity")
bav.Name = "MM2SpinFling"
bav.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
bav.AngularVelocity = Vector3.new(0, 99999, 0)
bav.Parent = myRoot
local bv = Instance.new("BodyVelocity")
bv.Name = "MM2HoldFling"
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bv.Velocity = Vector3.new(0, 50, 0)
bv.Parent = myRoot
local connection
local startTime = tick()
connection = RunService.RenderStepped:Connect(function()
if targetRoot and myRoot then
myRoot.CFrame = targetRoot.CFrame + Vector3.new(0, 1, 0)
end
if tick() - startTime > 0.4 then
connection:Disconnect()
end
end)
task.delay(0.4, function()
if bav then bav:Destroy() end
if bv then bv:Destroy() end
for _, part in ipairs(myChar:GetDescendants()) do
if part:IsA("BasePart") then part.CanCollide = true end
end
myRoot.CFrame = originalCFrame
if targetChar:FindFirstChild("Humanoid") then
targetChar.Humanoid.Health = 0
end
end)
end
-- // FLING BUTTON EVENTS
FlingSheriffBtn.MouseButton1Click:Connect(function()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and getPlayerRole(player) == "Sheriff" then
if player.Character then
executeFlingOnTarget(player.Character)
end
break
end
end
end)
FlingMurdererBtn.MouseButton1Click:Connect(function()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and getPlayerRole(player) == "Murderer" then
if player.Character then
executeFlingOnTarget(player.Character)
end
break
end
end
end)
FlingInnocentBtn.MouseButton1Click:Connect(function()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and getPlayerRole(player) == "Innocent" then
if player.Character then
executeFlingOnTarget(player.Character)
task.wait(0.5)
end
end
end
end)
FlingAllBtn.MouseButton1Click:Connect(function()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and player.Character then
executeFlingOnTarget(player.Character)
task.wait(0.5)
end
end
end)
-- // NOCLIP FEATURE
NoclipBtn.MouseButton1Click:Connect(function()
noclipEnabled = not noclipEnabled
NoclipBtn.Text = "Noclip: " .. (noclipEnabled and "ON" or "OFF")
NoclipBtn.BackgroundColor3 = noclipEnabled and Color3.fromRGB(245, 130, 32) or Color3.fromRGB(28, 28, 35)
end)
RunService.Stepped:Connect(function()
if noclipEnabled then
local char = localPlayer.Character
if char then
for _, part in ipairs(char:GetDescendants()) do
if part:IsA("BasePart") then part.CanCollide = false end
end
end
end
end)
-- // ANTI-KICK FEATURE
BypassKickBtn.MouseButton1Click:Connect(function()
bypassActive = not bypassActive
BypassKickBtn.Text = "Anti-Kick: " .. (bypassActive and "ACTIVE" or "DISABLED")
BypassKickBtn.BackgroundColor3 = bypassActive and Color3.fromRGB(245, 130, 32) or Color3.fromRGB(28, 28, 35)
end)
local mt = getrawmetatable(game)
local oldNamecall = mt.__namecall
setreadonly(mt, false)
mt.__namecall = newcclosure(function(self, ...)
local method = getnamecallmethod()
if bypassActive and method == "Kick" and self == localPlayer then
return
end
return oldNamecall(self, ...)
end)
setreadonly(mt, true)
-- // ADVANCED CONTROLLABLE FLY (MOBILE & PC)
local flyingUp = false
local flyingDown = false
FlyUpBtn.MouseButton1Down:Connect(function() flyingUp = true end)
FlyUpBtn.MouseButton1Up:Connect(function() flyingUp = false end)
FlyDownBtn.MouseButton1Down:Connect(function() flyingDown = true end)
FlyDownBtn.MouseButton1Up:Connect(function() flyingDown = false end)
SpeedToggleBtn.MouseButton1Click:Connect(function()
if flySpeed == 50 then
flySpeed = 100
elseif flySpeed == 100 then
flySpeed = 150
else
flySpeed = 50
end
SpeedToggleBtn.Text = "Speed: " .. flySpeed
end)
local function toggleFly()
flyEnabled = not flyEnabled
FlyBtn.Text = "Fly: " .. (flyEnabled and "ON" or "OFF")
FlyBtn.BackgroundColor3 = flyEnabled and Color3.fromRGB(245, 130, 32) or Color3.fromRGB(28, 28, 35)
FlyPad.Visible = flyEnabled
local char = localPlayer.Character
if not char or not char:FindFirstChild("HumanoidRootPart") then return end
local rootPart = char.HumanoidRootPart
local humanoid = char:FindFirstChildOfClass("Humanoid")
if flyEnabled then
local bv = Instance.new("BodyVelocity")
bv.Name = "MM2FlyVel"
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bv.Velocity = Vector3.new(0, 0, 0)
bv.Parent = rootPart
local bg = Instance.new("BodyGyro")
bg.Name = "MM2FlyGyro"
bg.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
bg.CFrame = rootPart.CFrame
bg.Parent = rootPart
activeConnections["Fly"] = RunService.RenderStepped:Connect(function()
if not flyEnabled then return end
local camCFrame = camera.CFrame
local moveDir = Vector3.new(0, 0, 0)
if humanoid then
moveDir = (camCFrame.LookVector * humanoid.MoveDirection.Z) + (camCFrame.RightVector * humanoid.MoveDirection.X)
end
-- Keyboard movement support for PC as well
if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + camCFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - camCFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - camCFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + camCFrame.RightVector end
if flyingUp then moveDir = moveDir + Vector3.new(0, 1, 0) end
if flyingDown then moveDir = moveDir - Vector3.new(0, 1, 0) end
bv.Velocity = moveDir * flySpeed
bg.CFrame = camCFrame
end)
else
flyingUp = false
flyingDown = false
if activeConnections["Fly"] then activeConnections["Fly"]:Disconnect() end
if rootPart:FindFirstChild("MM2FlyVel") then rootPart.MM2FlyVel:Destroy() end
if rootPart:FindFirstChild("MM2FlyGyro") then rootPart.MM2FlyGyro:Destroy() end
end
end
FlyBtn.MouseButton1Click:Connect(toggleFly)No comments yet for this script.

![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)

