8,686 views
Description
Goob Script For Murder Mystery Enjoy Goob!!
Features
- + Fly
- + Noclip
- + ESP
local player = game.Players.LocalPlayer
local TweenService = game:GetService("TweenService")
local godModeEnabled = false
local godModeLoop = nil
local godModeConnections = {}
local function applyGodModeToHumanoid(humanoid)
if not humanoid then return end
-- Set health and max health to math.huge
humanoid.MaxHealth = math.huge
humanoid.Health = math.huge
-- Disconnect previous connections
if godModeConnections[humanoid] then
for k, conn in godModeConnections[humanoid] do
if conn then conn:Disconnect() end
end
godModeConnections[humanoid] = nil
end
godModeConnections[humanoid] = {}
-- Prevent health from dropping
table.insert(godModeConnections[humanoid], humanoid:GetPropertyChangedSignal("Health"):Connect(function()
if godModeEnabled and humanoid.Health < math.huge then
humanoid.Health = math.huge
end
end))
-- Prevent death
table.insert(godModeConnections[humanoid], humanoid.Died:Connect(function()
if godModeEnabled then
humanoid.Health = math.huge
humanoid.MaxHealth = math.huge
end
end))
end
local function removeGodModeFromHumanoid(humanoid)
if not humanoid then return end
if godModeConnections[humanoid] then
for k, conn in godModeConnections[humanoid] do
if conn then conn:Disconnect() end
end
godModeConnections[humanoid] = nil
end
end
local function startGodMode()
if godModeLoop then return end
godModeLoop = true
task.spawn(function()
while godModeLoop do
if player.Character and player.Character:FindFirstChild("Humanoid") then
local humanoid = player.Character.Humanoid
applyGodModeToHumanoid(humanoid)
end
task.wait(0.1)
end
end)
end
local function stopGodMode()
godModeLoop = false
if player.Character and player.Character:FindFirstChild("Humanoid") then
removeGodModeFromHumanoid(player.Character.Humanoid)
end
end
local function updateGodModeButton()
infiniteHealthButton.Text = godModeEnabled and "Infinite Health (ON)" or "Infinite Health (OFF)"
infiniteHealthButton.BackgroundColor3 = godModeEnabled and Color3.fromRGB(0, 255, 0) or Color3.fromRGB(170, 170, 170)
end
local function createGoobGui()
-- Remove previous GUI if exists
local oldGui = player.PlayerGui:FindFirstChild("ExploitGui")
if oldGui then
oldGui:Destroy()
end
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "ExploitGui"
screenGui.Parent = player:WaitForChild("PlayerGui") -- Parent to PlayerGui so it appears for the player
-- Open Button (middle top)
local openButton = Instance.new("TextButton")
openButton.Size = UDim2.new(0, 180, 0, 50)
openButton.Position = UDim2.new(0.5, -90, 0.15, -25)
openButton.BackgroundColor3 = Color3.fromRGB(0, 170, 255)
openButton.Text = "Open Goob"
openButton.TextScaled = true
openButton.TextColor3 = Color3.fromRGB(255,255,255)
openButton.Font = Enum.Font.SourceSansBold
openButton.TextSize = 24
openButton.Parent = screenGui
-- Main Frame
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 350, 0, 260)
frame.Position = UDim2.new(0.5, -175, 0.5, -130)
frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
frame.BorderSizePixel = 0
frame.Visible = false
frame.Parent = screenGui
local uiCorner = Instance.new("UICorner")
uiCorner.CornerRadius = UDim.new(0, 16)
uiCorner.Parent = frame
local closeButton = Instance.new("TextButton")
closeButton.Size = UDim2.new(0, 40, 0, 40)
closeButton.Position = UDim2.new(1, -45, 0, 5)
closeButton.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
closeButton.Text = "X"
closeButton.TextColor3 = Color3.fromRGB(255,255,255)
closeButton.Font = Enum.Font.SourceSansBold
closeButton.TextSize = 24
closeButton.Parent = frame
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -50, 0, 40)
title.Position = UDim2.new(0, 0, 0, 0)
title.BackgroundTransparency = 1
title.Text = "Goob, Exploit For Murder Mystery 2"
title.TextColor3 = Color3.fromRGB(255, 255, 0)
title.Font = Enum.Font.SourceSansBold
title.TextScaled = true
title.TextStrokeTransparency = 0.5
title.TextStrokeColor3 = Color3.fromRGB(0,0,0)
title.TextSize = 24
title.Parent = frame
-- Speed Section
local speedLabel = Instance.new("TextLabel")
speedLabel.Size = UDim2.new(0, 120, 0, 30)
speedLabel.Position = UDim2.new(0, 10, 0, 50)
speedLabel.BackgroundTransparency = 1
speedLabel.Text = "Speed Amount:"
speedLabel.TextColor3 = Color3.fromRGB(255,255,255)
speedLabel.Font = Enum.Font.SourceSans
speedLabel.TextSize = 18
speedLabel.Parent = frame
local speedBox = Instance.new("TextBox")
speedBox.Size = UDim2.new(0, 80, 0, 30)
speedBox.Position = UDim2.new(0, 140, 0, 50)
speedBox.BackgroundColor3 = Color3.fromRGB(50,50,50)
speedBox.TextColor3 = Color3.fromRGB(255,255,255)
speedBox.Font = Enum.Font.SourceSans
speedBox.TextSize = 18
speedBox.Text = "16"
speedBox.Parent = frame
local speedButton = Instance.new("TextButton")
speedButton.Size = UDim2.new(0, 100, 0, 30)
speedButton.Position = UDim2.new(0, 230, 0, 50)
speedButton.BackgroundColor3 = Color3.fromRGB(0, 170, 255)
speedButton.Text = "Set Speed"
speedButton.TextColor3 = Color3.fromRGB(255,255,255)
speedButton.Font = Enum.Font.SourceSansBold
speedButton.TextSize = 18
speedButton.Parent = frame
-- Jump Section
local jumpLabel = Instance.new("TextLabel")
jumpLabel.Size = UDim2.new(0, 120, 0, 30)
jumpLabel.Position = UDim2.new(0, 10, 0, 100)
jumpLabel.BackgroundTransparency = 1
jumpLabel.Text = "JumpPower:"
jumpLabel.TextColor3 = Color3.fromRGB(255,255,255)
jumpLabel.Font = Enum.Font.SourceSans
jumpLabel.TextSize = 18
jumpLabel.Parent = frame
local jumpBox = Instance.new("TextBox")
jumpBox.Size = UDim2.new(0, 80, 0, 30)
jumpBox.Position = UDim2.new(0, 140, 0, 100)
jumpBox.BackgroundColor3 = Color3.fromRGB(50,50,50)
jumpBox.TextColor3 = Color3.fromRGB(255,255,255)
jumpBox.Font = Enum.Font.SourceSans
jumpBox.TextSize = 18
jumpBox.Text = "50"
jumpBox.Parent = frame
local jumpButton = Instance.new("TextButton")
jumpButton.Size = UDim2.new(0, 100, 0, 30)
jumpButton.Position = UDim2.new(0, 230, 0, 100)
jumpButton.BackgroundColor3 = Color3.fromRGB(255, 85, 0)
jumpButton.Text = "Set Jump"
jumpButton.TextColor3 = Color3.fromRGB(255,255,255)
jumpButton.Font = Enum.Font.SourceSansBold
jumpButton.TextSize = 18
jumpButton.Parent = frame
-- Infinite Health Button (TOGGLE)
infiniteHealthButton = Instance.new("TextButton")
infiniteHealthButton.Size = UDim2.new(0, 320, 0, 35)
infiniteHealthButton.Position = UDim2.new(0, 15, 0, 140)
infiniteHealthButton.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
infiniteHealthButton.Text = godModeEnabled and "Infinite Health (ON)" or "Infinite Health (OFF)"
infiniteHealthButton.TextColor3 = Color3.fromRGB(0,0,0)
infiniteHealthButton.Font = Enum.Font.SourceSansBold
infiniteHealthButton.TextSize = 20
infiniteHealthButton.Parent = frame
-- Fly Button
local flyButton = Instance.new("TextButton")
flyButton.Size = UDim2.new(0, 320, 0, 40)
flyButton.Position = UDim2.new(0, 15, 0, 185)
flyButton.BackgroundColor3 = Color3.fromRGB(0, 255, 170)
flyButton.Text = "Fly (OFF)"
flyButton.TextColor3 = Color3.fromRGB(0,0,0)
flyButton.Font = Enum.Font.SourceSansBold
flyButton.TextSize = 22
flyButton.Parent = frame
-- Noclip Button (NEW)
local noclipButton = Instance.new("TextButton")
noclipButton.Size = UDim2.new(0, 320, 0, 40)
noclipButton.Position = UDim2.new(0, 15, 0, 230)
noclipButton.BackgroundColor3 = Color3.fromRGB(255, 170, 0)
noclipButton.Text = "Noclip (OFF)"
noclipButton.TextColor3 = Color3.fromRGB(0,0,0)
noclipButton.Font = Enum.Font.SourceSansBold
noclipButton.TextSize = 22
noclipButton.Parent = frame
-- Frame2 Open Button
local frame2Button = Instance.new("TextButton")
frame2Button.Size = UDim2.new(0, 320, 0, 40)
frame2Button.Position = UDim2.new(0, 15, 0, 275)
frame2Button.BackgroundColor3 = Color3.fromRGB(170, 85, 255)
frame2Button.Text = "Open Controls"
frame2Button.TextColor3 = Color3.fromRGB(255,255,255)
frame2Button.Font = Enum.Font.SourceSansBold
frame2Button.TextSize = 22
frame2Button.Parent = frame
-- Frame2 (hidden by default, scaled to fit two buttons)
local frame2 = Instance.new("Frame")
frame2.Size = UDim2.new(0, 300, 0, 220)
frame2.Position = UDim2.new(0.5, -150, 0.5, -110)
frame2.BackgroundColor3 = Color3.fromRGB(50, 50, 120)
frame2.BorderSizePixel = 0
frame2.Visible = false
frame2.Parent = screenGui
local uiCorner2 = Instance.new("UICorner")
uiCorner2.CornerRadius = UDim.new(0, 16)
uiCorner2.Parent = frame2
local frame2Label = Instance.new("TextLabel")
frame2Label.Size = UDim2.new(1, -50, 0, 60)
frame2Label.Position = UDim2.new(0, 25, 0, 20)
frame2Label.BackgroundTransparency = 1
frame2Label.Text = "Controls For Fly (PC): CTRL, W, S, A, D, Space"
frame2Label.TextColor3 = Color3.fromRGB(0, 157, 255)
frame2Label.Font = Enum.Font.SourceSansBold
frame2Label.TextScaled = true
frame2Label.TextSize = 28
frame2Label.Parent = frame2
local frame2Close = Instance.new("TextButton")
frame2Close.Size = UDim2.new(0, 40, 0, 40)
frame2Close.Position = UDim2.new(1, -45, 0, 5)
frame2Close.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
frame2Close.Text = "X"
frame2Close.TextColor3 = Color3.fromRGB(255,255,255)
frame2Close.Font = Enum.Font.SourceSansBold
frame2Close.TextSize = 24
frame2Close.Parent = frame2
local espPlayersButton = Instance.new("TextButton")
espPlayersButton.Size = UDim2.new(0, 220, 0, 40)
espPlayersButton.Position = UDim2.new(0.5, -110, 0, 70)
espPlayersButton.BackgroundColor3 = Color3.fromRGB(255, 85, 255)
espPlayersButton.Text = "esp players"
espPlayersButton.TextColor3 = Color3.fromRGB(255,255,255)
espPlayersButton.Font = Enum.Font.SourceSansBold
espPlayersButton.TextSize = 22
espPlayersButton.Parent = frame2
local decalSpamButton2 = Instance.new("TextButton")
decalSpamButton2.Size = UDim2.new(0, 120, 0, 40)
decalSpamButton2.Position = UDim2.new(0, 25, 0, 130)
decalSpamButton2.BackgroundColor3 = Color3.fromRGB(255, 255, 0)
decalSpamButton2.Text = "DECAL SPAM"
decalSpamButton2.TextColor3 = Color3.fromRGB(0,0,0)
decalSpamButton2.Font = Enum.Font.SourceSansBold
decalSpamButton2.TextSize = 22
decalSpamButton2.Parent = frame2
local toolButton2 = Instance.new("TextButton")
toolButton2.Size = UDim2.new(0, 120, 0, 40)
toolButton2.Position = UDim2.new(0, 155, 0, 130)
toolButton2.BackgroundColor3 = Color3.fromRGB(0, 255, 255)
toolButton2.Text = "Goon"
toolButton2.TextColor3 = Color3.fromRGB(0,0,0)
toolButton2.Font = Enum.Font.SourceSansBold
toolButton2.TextSize = 22
toolButton2.Parent = frame2
local musicButton = Instance.new("TextButton")
musicButton.Size = UDim2.new(0, 220, 0, 40)
musicButton.Position = UDim2.new(0.5, -110, 0, 180)
musicButton.BackgroundColor3 = Color3.fromRGB(0, 200, 255)
musicButton.Text = "Play Music"
musicButton.TextColor3 = Color3.fromRGB(255,255,255)
musicButton.Font = Enum.Font.SourceSansBold
musicButton.TextSize = 22
musicButton.Parent = frame2
-- ESP Logic (MM2 Role Detection)
local espEnabled = false
local espBoxes = {}
local roleColors = {
Murderer = Color3.fromRGB(255, 0, 0),
Sheriff = Color3.fromRGB(0, 255, 255),
Innocent = Color3.fromRGB(0, 255, 0),
Unknown = Color3.fromRGB(255, 255, 255)
}
local function getPlayerRole(targetPlayer)
if targetPlayer.Character then
local roleValue = targetPlayer.Character:FindFirstChild("Role")
if roleValue and roleValue:IsA("StringValue") then
return roleValue.Value
end
if targetPlayer.Character:GetAttribute("Role") then
return targetPlayer.Character:GetAttribute("Role")
end
end
local roleValue = targetPlayer:FindFirstChild("Role")
if roleValue and roleValue:IsA("StringValue") then
return roleValue.Value
end
if targetPlayer:GetAttribute("Role") then
return targetPlayer:GetAttribute("Role")
end
return "Innocent"
end
local function getColorForRole(role)
if roleColors[role] then
return roleColors[role]
end
return roleColors["Unknown"]
end
local function createESPBoxForPlayer(targetPlayer)
if targetPlayer == player then return end
if not targetPlayer.Character then return end
local rootPart = targetPlayer.Character:FindFirstChild("HumanoidRootPart")
if not rootPart then return end
if espBoxes[targetPlayer] then return end
local role = getPlayerRole(targetPlayer)
local color = getColorForRole(role)
local box = Instance.new("SelectionBox")
box.Adornee = rootPart
box.LineThickness = 0.12
box.SurfaceTransparency = 0.4
box.Color3 = color
box.Parent = rootPart
local nameTag = Instance.new("BillboardGui")
nameTag.Name = "ESPNameTag"
nameTag.Adornee = rootPart
nameTag.Size = UDim2.new(0, 120, 0, 32)
nameTag.StudsOffset = Vector3.new(0, 2.5, 0)
nameTag.AlwaysOnTop = true
nameTag.Parent = rootPart
local nameLabel = Instance.new("TextLabel")
nameLabel.Size = UDim2.new(1, 0, 1, 0)
nameLabel.BackgroundTransparency = 1
nameLabel.Text = targetPlayer.Name .. " [" .. role .. "]"
nameLabel.TextColor3 = color
nameLabel.Font = Enum.Font.SourceSansBold
nameLabel.TextScaled = true
nameLabel.TextStrokeTransparency = 0.5
nameLabel.TextStrokeColor3 = Color3.fromRGB(0,0,0)
nameLabel.Parent = nameTag
espBoxes[targetPlayer] = {box = box, nameTag = nameTag}
end
local function removeESPBoxForPlayer(targetPlayer)
if espBoxes[targetPlayer] then
if espBoxes[targetPlayer].box then
espBoxes[targetPlayer].box:Destroy()
end
if espBoxes[targetPlayer].nameTag then
espBoxes[targetPlayer].nameTag:Destroy()
end
espBoxes[targetPlayer] = nil
end
end
local function refreshESPBoxForPlayer(targetPlayer)
removeESPBoxForPlayer(targetPlayer)
createESPBoxForPlayer(targetPlayer)
end
local function enableESP()
espEnabled = true
espPlayersButton.Text = "esp players (ON)"
for i, targetPlayer in game.Players:GetPlayers() do
createESPBoxForPlayer(targetPlayer)
end
end
local function disableESP()
espEnabled = false
espPlayersButton.Text = "esp players (OFF)"
for k, v in espBoxes do
if v.box then v.box:Destroy() end
if v.nameTag then v.nameTag:Destroy() end
end
espBoxes = {}
end
game.Players.PlayerAdded:Connect(function(targetPlayer)
targetPlayer.CharacterAdded:Connect(function(character)
if espEnabled then
task.wait(0.1)
refreshESPBoxForPlayer(targetPlayer)
end
if character:FindFirstChild("Role") then
character.Role.Changed:Connect(function()
if espEnabled then
refreshESPBoxForPlayer(targetPlayer)
end
end)
end
character:GetPropertyChangedSignal("Role"):Connect(function()
if espEnabled then
refreshESPBoxForPlayer(targetPlayer)
end
end)
end)
end)
for i, targetPlayer in game.Players:GetPlayers() do
targetPlayer.CharacterAdded:Connect(function(character)
if espEnabled then
task.wait(0.1)
refreshESPBoxForPlayer(targetPlayer)
end
if character:FindFirstChild("Role") then
character.Role.Changed:Connect(function()
if espEnabled then
refreshESPBoxForPlayer(targetPlayer)
end
end)
end
character:GetPropertyChangedSignal("Role"):Connect(function()
if espEnabled then
refreshESPBoxForPlayer(targetPlayer)
end
end)
end)
end
game.Players.PlayerRemoving:Connect(function(targetPlayer)
removeESPBoxForPlayer(targetPlayer)
end)
espPlayersButton.MouseButton1Click:Connect(function()
espEnabled = not espEnabled
if espEnabled then
enableESP()
else
disableESP()
end
end)
local desiredJumpPower = tonumber(jumpBox.Text) or 50
local desiredSpeed = tonumber(speedBox.Text) or 16
local function setSpeed()
local speed = tonumber(speedBox.Text)
if speed then
desiredSpeed = speed
if player.Character and player.Character:FindFirstChild("Humanoid") then
player.Character.Humanoid.WalkSpeed = desiredSpeed
end
end
end
local function setJump()
local jump = tonumber(jumpBox.Text)
if jump then
desiredJumpPower = jump
if player.Character and player.Character:FindFirstChild("Humanoid") then
player.Character.Humanoid.JumpPower = desiredJumpPower
end
end
end
speedButton.MouseButton1Click:Connect(setSpeed)
jumpButton.MouseButton1Click:Connect(setJump)
-- Infinite Health Logic (TOGGLE GOD MODE)
infiniteHealthButton.MouseButton1Click:Connect(function()
godModeEnabled = not godModeEnabled
updateGodModeButton()
if godModeEnabled then
startGodMode()
if player.Character and player.Character:FindFirstChild("Humanoid") then
applyGodModeToHumanoid(player.Character.Humanoid)
end
else
stopGodMode()
end
end)
-- Stop god mode on respawn, but resume if enabled
player.CharacterAdded:Connect(function(character)
stopGodMode()
if godModeEnabled then
startGodMode()
task.wait(0.1)
if character and character:FindFirstChild("Humanoid") then
applyGodModeToHumanoid(character.Humanoid)
end
end
end)
updateGodModeButton()
local function animateOpenFrame()
frame.Visible = true
frame.BackgroundTransparency = 1
frame.Size = UDim2.new(0, 0, 0, 0)
frame.Position = UDim2.new(0.5, 0, 0.5, 0)
local tweenInfo = TweenInfo.new(0.35, Enum.EasingStyle.Back, Enum.EasingDirection.Out)
local tween = TweenService:Create(frame, tweenInfo, {
BackgroundTransparency = 0,
Size = UDim2.new(0, 350, 0, 260),
Position = UDim2.new(0.5, -175, 0.5, -130)
})
tween:Play()
end
local noclipping = false
local noclipConnection = nil
local function setNoclipState(state)
if player.Character then
for i, part in player.Character:GetChildren() do
if part:IsA("BasePart") then
part.CanCollide = not state
end
end
end
end
local function enableNoclip()
noclipping = true
noclipButton.Text = "Noclip (ON)"
if noclipConnection then
noclipConnection:Disconnect()
noclipConnection = nil
end
noclipConnection = game:GetService("RunService").Stepped:Connect(function()
if noclipping and player.Character then
setNoclipState(true)
end
end)
end
local function disableNoclip()
noclipping = false
noclipButton.Text = "Noclip (OFF)"
if noclipConnection then
noclipConnection:Disconnect()
noclipConnection = nil
end
setNoclipState(false)
end
local function animateCloseFrame(callback)
local tweenInfo = TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.In)
local tween = TweenService:Create(frame, tweenInfo, {
BackgroundTransparency = 1,
Size = UDim2.new(0, 0, 0, 0),
Position = UDim2.new(0.5, 0, 0.5, 0)
})
tween:Play()
tween.Completed:Connect(function()
frame.Visible = false
frame.BackgroundTransparency = 0
frame.Size = UDim2.new(0, 350, 0, 260)
frame.Position = UDim2.new(0.5, -175, 0.5, -130)
if callback then callback() end
end)
end
openButton.MouseButton1Click:Connect(function()
openButton.Visible = false
animateOpenFrame()
end)
closeButton.MouseButton1Click:Connect(function()
animateCloseFrame(function()
openButton.Visible = true
end)
end)
frame2Button.MouseButton1Click:Connect(function()
frame2.Visible = true
end)
frame2Close.MouseButton1Click:Connect(function()
frame2.Visible = false
end)
local function applyStatsToHumanoid(humanoid)
if humanoid then
humanoid.WalkSpeed = desiredSpeed
humanoid.JumpPower = desiredJumpPower
end
end
local function onCharacterAdded(character)
local humanoid = character:FindFirstChild("Humanoid")
if humanoid then
applyStatsToHumanoid(humanoid)
end
character.ChildAdded:Connect(function(child)
if child:IsA("Humanoid") then
applyStatsToHumanoid(child)
end
end)
disableNoclip()
end
if player.Character then
onCharacterAdded(player.Character)
end
player.CharacterAdded:Connect(onCharacterAdded)
local enforcing = true
task.spawn(function()
while enforcing do
if frame.Visible and player.Character and player.Character:FindFirstChild("Humanoid") then
local humanoid = player.Character.Humanoid
humanoid.WalkSpeed = desiredSpeed
humanoid.JumpPower = desiredJumpPower
end
task.wait()
end
end)
local flying = false
local flyVelocity = nil
local flyConnection = nil
local function enableFly()
if not player.Character or not player.Character:FindFirstChild("HumanoidRootPart") then return end
local hrp = player.Character.HumanoidRootPart
if flyVelocity then
flyVelocity:Destroy()
flyVelocity = nil
end
flyVelocity = Instance.new("BodyVelocity")
flyVelocity.MaxForce = Vector3.new(1e5, 1e5, 1e5)
flyVelocity.Velocity = Vector3.new(0,0,0)
flyVelocity.Parent = hrp
if flyConnection then
flyConnection:Disconnect()
flyConnection = nil
end
flyConnection = game:GetService("RunService").RenderStepped:Connect(function()
if not flying or not player.Character or not player.Character:FindFirstChild("HumanoidRootPart") then return end
local moveDirection = Vector3.new(0,0,0)
local humanoid = player.Character:FindFirstChild("Humanoid")
if humanoid then
moveDirection = humanoid.MoveDirection
end
local up = 0
if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.Space) then
up = 50
elseif game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.LeftControl) then
up = -50
end
flyVelocity.Velocity = (moveDirection * 80) + Vector3.new(0, up, 0)
end)
end
local function disableFly()
flying = false
flyButton.Text = "Fly (OFF)"
if flyVelocity then
flyVelocity:Destroy()
flyVelocity = nil
end
if flyConnection then
flyConnection:Disconnect()
flyConnection = nil
end
end
flyButton.MouseButton1Click:Connect(function()
flying = not flying
if flying then
flyButton.Text = "Fly (ON)"
enableFly()
else
disableFly()
end
end)
player.CharacterAdded:Connect(function()
disableFly()
end)
noclipButton.MouseButton1Click:Connect(function()
noclipping = not noclipping
if noclipping then
enableNoclip()
else
disableNoclip()
end
end)
player.CharacterAdded:Connect(function()
disableNoclip()
end)
decalSpamButton2.MouseButton1Click:Connect(function()
local decalSpamEvent = game:GetService("ReplicatedStorage"):FindFirstChild("Decal Spam Event")
if decalSpamEvent then
decalSpamEvent:FireServer()
end
end)
toolButton2.MouseButton1Click:Connect(function()
local tool = Instance.new("Tool")
tool.Name = "Jerk Off"
tool.RequiresHandle = false
tool.CanBeDropped = true
tool.Parent = player:WaitForChild("Backpack")
local animationIdR15 = "rbxassetid://507771019"
local animationIdR6 = "rbxassetid://33796059"
local animation = Instance.new("Animation")
local track = nil
local function showMessage(msg)
local messageLabel = Instance.new("TextLabel")
messageLabel.Size = UDim2.new(0, 300, 0, 40)
messageLabel.Position = UDim2.new(0.5, -150, 0.9, -20)
messageLabel.BackgroundTransparency = 0.5
messageLabel.BackgroundColor3 = Color3.fromRGB(0,0,0)
messageLabel.TextColor3 = Color3.fromRGB(255,255,255)
messageLabel.Font = Enum.Font.SourceSansBold
messageLabel.TextSize = 22
messageLabel.Text = msg
messageLabel.Parent = screenGui
task.delay(2, function()
messageLabel:Destroy()
end)
end
local function tryPlayDanceAnimation(humanoid)
animation.AnimationId = animationIdR15
local success, result = pcall(function()
track = humanoid:LoadAnimation(animation)
end)
if success and track then
track.Looped = true
track:Play()
return true
else
animation.AnimationId = animationIdR6
success, result = pcall(function()
track = humanoid:LoadAnimation(animation)
end)
if success and track then
track.Looped = true
track:Play()
return true
else
return false
end
end
end
local function onEquipped()
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:FindFirstChild("Humanoid")
if humanoid then
local played = tryPlayDanceAnimation(humanoid)
if not played then
showMessage("Failed to play dance animation!")
end
else
showMessage("No humanoid found!")
end
end
local function onUnequipped()
if track then
track:Stop()
track:Destroy()
track = nil
end
end
tool.Equipped:Connect(onEquipped)
tool.Unequipped:Connect(onUnequipped)
end)
local musicAssetId = "rbxassetid://9041745502"
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local playGoobMusicEvent = ReplicatedStorage:FindFirstChild("PlayGoobMusic")
local musicPlaying = false
musicButton.MouseButton1Click:Connect(function()
musicPlaying = not musicPlaying
if playGoobMusicEvent then
playGoobMusicEvent:FireServer(musicPlaying, musicAssetId)
end
musicButton.Text = musicPlaying and "Stop Music" or "Play Music"
end)
end
-- Create GUI on script startup
createGoobGui()
-- Recreate GUI on every respawn
player.CharacterAdded:Connect(function()
createGoobGui()
end)
Script worked? 🚀 Boost it to #1 so others find it too.
Similar Scripts
2,946
8 days ago
Free
Murder Mystery 2
Murder Mystery 2 Lowkj | Movement, Emotes & Aim
4,192
12 days ago
Free
Murder Mystery 2
Murder Mystery 2 Script | QYREX HUB (No Key)
4,795
13 days ago
Free
Murder Mystery 2
MM2 Forge Hub Keyless | KILL ALL, ESP, Autofarm, Auto Prestige
4,163
13 days ago
Free
MM2
MM2 Spark Hub
4,592
13 days ago
Free
MM2
MM2 script | rblx Hub
3,415
16 days ago
Free
Murder Mystery 2
Murder Mystery 2 script | Keyless OP
🚀
Log in to boost
Boosting rockets this script to #1 on the homepage. A free account takes 30 seconds.
Log in
🚀
Out of boosts!
Grab boosts and rocket your favorite scripts to the top — plus join the booster wall with the RGB ring.
⚡ Go Pro — 10 boosts/month + zero ads
🚀
Boost this script?
It jumps to #1 in Recent Scripts and your avatar joins the booster wall.
🚀
Boosted! You're awesome 💜
Comments (0)
Log in to add a comment.