
KeylessUniversal

local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local camera = workspace.CurrentCamera
local gui = Instance.new("ScreenGui", player.PlayerGui)
gui.ResetOnSpawn = false
gui.Name = "☆ | MystericHub"
local main = Instance.new("Frame", gui)
main.Size = UDim2.new(0, 400, 0, 600)
main.Position = UDim2.new(0.5, -200, 0.5, -300)
main.BackgroundColor3 = Color3.fromRGB(18, 18, 28)
main.BackgroundTransparency = 0.15
main.BorderSizePixel = 0
main.Active = true
main.Draggable = true
Instance.new("UICorner", main).CornerRadius = UDim.new(0, 24)
local stroke = Instance.new("UIStroke", main)
stroke.Thickness = 1.5
stroke.Color = Color3.fromRGB(60, 60, 80)
stroke.Transparency = 0.5
local top = Instance.new("Frame", main)
top.Size = UDim2.new(1, 0, 0, 48)
top.BackgroundColor3 = Color3.fromRGB(22, 22, 35)
top.BackgroundTransparency = 0.15
top.BorderSizePixel = 0
Instance.new("UICorner", top).CornerRadius = UDim.new(0, 24)
local divider = Instance.new("Frame", top)
divider.Size = UDim2.new(1, -40, 0, 1)
divider.Position = UDim2.new(0, 20, 1, -1)
divider.BackgroundColor3 = Color3.fromRGB(60, 60, 80)
divider.BorderSizePixel = 0
divider.BackgroundTransparency = 0.5
local title = Instance.new("TextLabel", top)
title.Size = UDim2.new(1, -230, 1, 0)
title.Position = UDim2.new(0, 20, 0, 0)
title.BackgroundTransparency = 1
title.Text = "MystericHub"
title.Font = Enum.Font.Arcade
title.TextSize = 18
title.TextColor3 = Color3.fromRGB(240, 240, 255)
title.TextXAlignment = Enum.TextXAlignment.Left
local formatBtn = Instance.new("TextButton", top)
formatBtn.Size = UDim2.new(0, 38, 0, 36)
formatBtn.Position = UDim2.new(1, -178, 0, 6)
formatBtn.Text = ""
formatBtn.Font = Enum.Font.Arcade
formatBtn.TextSize = 12
formatBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 50)
formatBtn.BackgroundTransparency = 0.2
formatBtn.BorderSizePixel = 0
Instance.new("UICorner", formatBtn).CornerRadius = UDim.new(0, 10)
local square1 = Instance.new("Frame", formatBtn)
square1.Size = UDim2.new(0, 10, 0, 10)
square1.Position = UDim2.new(0.5, -12, 0.5, -5)
square1.BackgroundColor3 = Color3.fromRGB(200, 200, 220)
square1.BorderSizePixel = 0
square1.ZIndex = 2
Instance.new("UICorner", square1).CornerRadius = UDim.new(0, 2)
local square2 = Instance.new("Frame", formatBtn)
square2.Size = UDim2.new(0, 10, 0, 10)
square2.Position = UDim2.new(0.5, 2, 0.5, -5)
square2.BackgroundColor3 = Color3.fromRGB(200, 200, 220)
square2.BorderSizePixel = 0
square2.ZIndex = 2
Instance.new("UICorner", square2).CornerRadius = UDim.new(0, 2)
local colorPicker = Instance.new("TextButton", top)
colorPicker.Size = UDim2.new(0, 38, 0, 36)
colorPicker.Position = UDim2.new(1, -132, 0, 6)
colorPicker.Text = ""
colorPicker.Font = Enum.Font.Arcade
colorPicker.TextSize = 12
colorPicker.BackgroundColor3 = Color3.fromRGB(35, 35, 50)
colorPicker.BackgroundTransparency = 0.2
colorPicker.BorderSizePixel = 0
Instance.new("UICorner", colorPicker).CornerRadius = UDim.new(0, 10)
local colorCircle = Instance.new("Frame", colorPicker)
colorCircle.Size = UDim2.new(0, 22, 0, 22)
colorCircle.Position = UDim2.new(0.5, -11, 0.5, -11)
colorCircle.BackgroundColor3 = Color3.fromRGB(100, 150, 255)
colorCircle.BorderSizePixel = 0
colorCircle.ZIndex = 2
Instance.new("UICorner", colorCircle).CornerRadius = UDim.new(1, 0)
local colorStroke = Instance.new("UIStroke", colorCircle)
colorStroke.Thickness = 2
colorStroke.Color = Color3.fromRGB(255, 255, 255)
colorStroke.Transparency = 0.3
local closeBtn = Instance.new("TextButton", top)
closeBtn.Size = UDim2.new(0, 38, 0, 36)
closeBtn.Position = UDim2.new(1, -88, 0, 6)
closeBtn.Text = "×"
closeBtn.Font = Enum.Font.Arcade
closeBtn.TextSize = 24
closeBtn.BackgroundColor3 = Color3.fromRGB(200, 50, 60)
closeBtn.BackgroundTransparency = 0.2
closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
closeBtn.BorderSizePixel = 0
Instance.new("UICorner", closeBtn).CornerRadius = UDim.new(0, 10)
local minimize = Instance.new("TextButton", top)
minimize.Size = UDim2.new(0, 38, 0, 36)
minimize.Position = UDim2.new(1, -42, 0, 6)
minimize.Text = "─"
minimize.Font = Enum.Font.Arcade
minimize.TextSize = 18
minimize.BackgroundColor3 = Color3.fromRGB(35, 35, 50)
minimize.BackgroundTransparency = 0.2
minimize.TextColor3 = Color3.fromRGB(200, 200, 220)
minimize.BorderSizePixel = 0
Instance.new("UICorner", minimize).CornerRadius = UDim.new(0, 10)
local side = Instance.new("Frame", main)
side.Position = UDim2.new(0, 0, 0, 48)
side.Size = UDim2.new(0, 120, 1, -48)
side.BackgroundColor3 = Color3.fromRGB(15, 15, 25)
side.BackgroundTransparency = 0.15
side.BorderSizePixel = 0
side.ClipsDescendants = false
local sideCorner = Instance.new("UICorner", side)
sideCorner.CornerRadius = UDim.new(0, 24)
local content = Instance.new("Frame", main)
content.Position = UDim2.new(0, 120, 0, 48)
content.Size = UDim2.new(1, -120, 1, -48)
content.BackgroundTransparency = 1
content.ClipsDescendants = true
local pages = {}
local function createPage(name)
local page = Instance.new("ScrollingFrame", content)
page.Size = UDim2.new(1, 0, 1, 0)
page.Visible = false
page.BackgroundTransparency = 1
page.BorderSizePixel = 0
page.ScrollBarThickness = 4
page.CanvasSize = UDim2.new(0, 0, 0, 700)
pages[name] = page
return page
end
local function switchPage(name)
for n, p in pairs(pages) do
p.Visible = (n == name)
end
end
local iconImages = {
AIMBOT = "rbxassetid://7733799682",
ESP = "rbxassetid://7733920644",
VISUAL = "rbxassetid://7743878857",
GRAPHICS = "rbxassetid://7734053426"
}
local Settings = {
BoxESP = false,
SkeletonESP = false,
NameESP = false,
Aimbot = false,
ShowFOV = false,
TargetLock = false,
OpacityEffects = false,
RemoveFog = false,
TargetPlayer = nil,
LowGraphics = false,
RealisticGraphics = false,
UIOrientation = "vertical",
ThemeColor = Color3.fromRGB(100, 150, 255)
}
local themeColors = {
Color3.fromRGB(100, 150, 255),
Color3.fromRGB(255, 100, 150),
Color3.fromRGB(150, 100, 255),
Color3.fromRGB(100, 255, 150),
Color3.fromRGB(255, 200, 100),
Color3.fromRGB(255, 100, 100),
Color3.fromRGB(100, 255, 255),
}
local currentColorIndex = 1
local function tabButton(text, y, pageName, iconType)
local btn = Instance.new("TextButton", side)
btn.Name = pageName
btn.Size = UDim2.new(1, -14, 0, 50)
btn.Position = UDim2.new(0, 7, 0, y)
btn.Text = ""
btn.Font = Enum.Font.Arcade
btn.TextSize = 11
btn.TextColor3 = Color3.fromRGB(220, 220, 220)
btn.BackgroundColor3 = Color3.fromRGB(25, 25, 40)
btn.BackgroundTransparency = 0.2
btn.BorderSizePixel = 0
Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 12)
local icon = Instance.new("ImageLabel", btn)
icon.Size = UDim2.new(0, 22, 0, 22)
icon.Position = UDim2.new(0.5, -11, 0, 6)
icon.BackgroundTransparency = 1
icon.Image = iconImages[iconType] or ""
icon.ImageColor3 = Color3.fromRGB(220, 220, 220)
icon.ScaleType = Enum.ScaleType.Fit
local label = Instance.new("TextLabel", btn)
label.Size = UDim2.new(1, -10, 0, 18)
label.Position = UDim2.new(0, 5, 1, -22)
label.BackgroundTransparency = 1
label.Text = text
label.Font = Enum.Font.Arcade
label.TextSize = 10
label.TextColor3 = Color3.fromRGB(220, 220, 220)
label.TextXAlignment = Enum.TextXAlignment.Center
btn.MouseEnter:Connect(function()
if pages[pageName].Visible == false then
TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
BackgroundColor3 = Color3.fromRGB(35, 35, 55)
}):Play()
end
end)
btn.MouseLeave:Connect(function()
if pages[pageName].Visible == false then
TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
BackgroundColor3 = Color3.fromRGB(25, 25, 40)
}):Play()
end
end)
btn.MouseButton1Click:Connect(function()
switchPage(pageName)
for _, child in ipairs(side:GetChildren()) do
if child:IsA("TextButton") then
TweenService:Create(child, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
BackgroundColor3 = Color3.fromRGB(25, 25, 40)
}):Play()
end
end
TweenService:Create(btn, TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {
BackgroundColor3 = Color3.new(
Settings.ThemeColor.R * 0.3,
Settings.ThemeColor.G * 0.3,
Settings.ThemeColor.B * 0.3
)
}):Play()
end)
end
local aimPage = createPage("AIMBOT")
local espPage = createPage("ESP")
local visPage = createPage("VISUAL")
local graphicsPage = createPage("GRAPHICS")
tabButton("AIMBOT", 10, "AIMBOT", "AIMBOT")
tabButton("ESP", 70, "ESP", "ESP")
tabButton("VISUAL", 130, "VISUAL", "VISUAL")
tabButton("GRAPHICS", 190, "GRAPHICS", "GRAPHICS")
switchPage("AIMBOT")
-- SISTEMA PARA REPOSICIONAR ELEMENTOS DINAMICAMENTE
local pageElements = {
AIMBOT = {},
ESP = {},
VISUAL = {},
GRAPHICS = {}
}
local function toggle(parent, text, y, settingName, pageName)
local box = Instance.new("Frame", parent)
box.Size = UDim2.new(1, -30, 0, 48)
box.Position = UDim2.new(0, 15, 0, y)
box.BackgroundColor3 = Color3.fromRGB(25, 25, 40)
box.BackgroundTransparency = 0.2
box.Name = "Toggle_" .. settingName
Instance.new("UICorner", box).CornerRadius = UDim.new(0, 14)
-- Guardar posição original
table.insert(pageElements[pageName], {element = box, originalY = y, type = "toggle"})
local lbl = Instance.new("TextLabel", box)
lbl.Size = UDim2.new(0.6, 0, 1, 0)
lbl.Position = UDim2.new(0, 12, 0, 0)
lbl.BackgroundTransparency = 1
lbl.Text = text
lbl.Font = Enum.Font.Arcade
lbl.TextSize = 13
lbl.TextColor3 = Color3.fromRGB(230, 230, 230)
lbl.TextXAlignment = Enum.TextXAlignment.Left
lbl.TextWrapped = true
local btn = Instance.new("TextButton", box)
btn.Size = UDim2.new(0, 65, 0, 30)
btn.Position = UDim2.new(1, -75, 0.5, -15)
btn.Text = "OFF"
btn.Font = Enum.Font.Arcade
btn.TextSize = 11
btn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
btn.BackgroundTransparency = 0.2
btn.TextColor3 = Color3.new(1, 1, 1)
Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 10)
btn.MouseEnter:Connect(function()
TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
Size = UDim2.new(0, 70, 0, 32)
}):Play()
end)
btn.MouseLeave:Connect(function()
TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
Size = UDim2.new(0, 65, 0, 30)
}):Play()
end)
btn.MouseButton1Click:Connect(function()
Settings[settingName] = not Settings[settingName]
btn.Text = Settings[settingName] and "ON" or "OFF"
btn.BackgroundColor3 = Settings[settingName] and Color3.fromRGB(40, 180, 40) or Color3.fromRGB(180, 40, 40)
end)
return btn
end
toggle(aimPage, "Aimbot", 15, "Aimbot", "AIMBOT")
toggle(aimPage, "Show FOV", 73, "ShowFOV", "AIMBOT")
local targetBtn = toggle(aimPage, "Target Lock", 131, "TargetLock", "AIMBOT")
local searchContainer = Instance.new("Frame", aimPage)
searchContainer.Size = UDim2.new(1, -30, 0, 50)
searchContainer.Position = UDim2.new(0, 15, 0, 200)
searchContainer.BackgroundColor3 = Color3.fromRGB(30, 30, 50)
searchContainer.BackgroundTransparency = 0.2
searchContainer.BorderSizePixel = 0
searchContainer.ClipsDescendants = false
searchContainer.Name = "SearchContainer"
Instance.new("UICorner", searchContainer).CornerRadius = UDim.new(0, 25)
table.insert(pageElements["AIMBOT"], {element = searchContainer, originalY = 200, type = "search"})
local searchStroke = Instance.new("UIStroke", searchContainer)
searchStroke.Color = Color3.fromRGB(80, 80, 120)
searchStroke.Thickness = 1.5
searchStroke.Transparency = 0.5
local searchIconFrame = Instance.new("Frame", searchContainer)
searchIconFrame.Size = UDim2.new(0, 45, 1, 0)
searchIconFrame.BackgroundTransparency = 1
local searchIcon = Instance.new("ImageLabel", searchIconFrame)
searchIcon.Size = UDim2.new(0, 20, 0, 20)
searchIcon.Position = UDim2.new(0.5, -10, 0.5, -10)
searchIcon.BackgroundTransparency = 1
searchIcon.Image = "rbxassetid://7072721559"
searchIcon.ImageColor3 = Color3.fromRGB(150, 150, 200)
local searchBox = Instance.new("TextBox", searchContainer)
searchBox.Size = UDim2.new(1, -50, 1, 0)
searchBox.Position = UDim2.new(0, 45, 0, 0)
searchBox.BackgroundTransparency = 1
searchBox.Text = ""
searchBox.PlaceholderText = "Search players..."
searchBox.Font = Enum.Font.Arcade
searchBox.TextSize = 14
searchBox.TextColor3 = Color3.fromRGB(255, 255, 255)
searchBox.PlaceholderColor3 = Color3.fromRGB(120, 120, 150)
searchBox.TextXAlignment = Enum.TextXAlignment.Left
searchBox.ClearTextOnFocus = false
local resultsFrame = Instance.new("Frame", searchContainer)
resultsFrame.Size = UDim2.new(1, 0, 0, 0)
resultsFrame.Position = UDim2.new(0, 0, 1, 5)
resultsFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 40)
resultsFrame.BackgroundTransparency = 0.1
resultsFrame.BorderSizePixel = 0
resultsFrame.Visible = false
resultsFrame.ClipsDescendants = true
resultsFrame.ZIndex = 10
Instance.new("UICorner", resultsFrame).CornerRadius = UDim.new(0, 15)
local resultsStroke = Instance.new("UIStroke", resultsFrame)
resultsStroke.Color = Color3.fromRGB(80, 80, 120)
resultsStroke.Thickness = 1.5
resultsStroke.Transparency = 0.5
local resultsList = Instance.new("ScrollingFrame", resultsFrame)
resultsList.Size = UDim2.new(1, -10, 1, -10)
resultsList.Position = UDim2.new(0, 5, 0, 5)
resultsList.BackgroundTransparency = 1
resultsList.BorderSizePixel = 0
resultsList.ScrollBarThickness = 4
resultsList.CanvasSize = UDim2.new(0, 0, 0, 0)
local searchOpen = false
searchBox.Focused:Connect(function()
if not searchOpen then
searchOpen = true
resultsFrame.Visible = true
resultsFrame.Size = UDim2.new(1, 0, 0, 0)
TweenService:Create(resultsFrame, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
Size = UDim2.new(1, 0, 0, 250)
}):Play()
end
end)
local function createPlayerResult(plr, index)
local result = Instance.new("TextButton", resultsList)
result.Size = UDim2.new(1, -10, 0, 40)
result.Position = UDim2.new(0, 5, 0, (index - 1) * 45)
result.BackgroundColor3 = Color3.fromRGB(35, 35, 55)
result.BackgroundTransparency = 0.3
result.BorderSizePixel = 0
result.Text = ""
Instance.new("UICorner", result).CornerRadius = UDim.new(0, 10)
result.MouseEnter:Connect(function()
TweenService:Create(result, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(45, 45, 70)
}):Play()
end)
result.MouseLeave:Connect(function()
TweenService:Create(result, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(35, 35, 55)
}):Play()
end)
local nameLabel = Instance.new("TextLabel", result)
nameLabel.Size = UDim2.new(1, -20, 1, 0)
nameLabel.Position = UDim2.new(0, 10, 0, 0)
nameLabel.BackgroundTransparency = 1
nameLabel.Text = plr.Name
nameLabel.Font = Enum.Font.Arcade
nameLabel.TextSize = 13
nameLabel.TextColor3 = Color3.fromRGB(220, 220, 240)
nameLabel.TextXAlignment = Enum.TextXAlignment.Left
result.MouseButton1Click:Connect(function()
Settings.TargetPlayer = plr
searchBox.Text = plr.Name
TweenService:Create(resultsFrame, TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
Size = UDim2.new(1, 0, 0, 0)
}):Play()
task.wait(0.2)
resultsFrame.Visible = false
searchOpen = false
end)
return result
end
searchBox:GetPropertyChangedSignal("Text"):Connect(function()
for _, child in pairs(resultsList:GetChildren()) do
if child:IsA("TextButton") then
child:Destroy()
end
end
local searchText = searchBox.Text:lower()
local index = 1
if searchText ~= "" then
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and plr.Name:lower():find(searchText) then
createPlayerResult(plr, index)
index = index + 1
end
end
else
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player then
createPlayerResult(plr, index)
index = index + 1
end
end
end
resultsList.CanvasSize = UDim2.new(0, 0, 0, (index - 1) * 45)
end)
toggle(espPage, "Box ESP", 15, "BoxESP", "ESP")
toggle(espPage, "Skeleton ESP", 73, "SkeletonESP", "ESP")
toggle(espPage, "Name ESP", 131, "NameESP", "ESP")
toggle(visPage, "Opacity Effects", 15, "OpacityEffects", "VISUAL")
toggle(visPage, "Remove Fog", 73, "RemoveFog", "VISUAL")
local lowGraphicsBtn = toggle(graphicsPage, "Low Graphics", 15, "LowGraphics", "GRAPHICS")
local realisticGraphicsBtn = toggle(graphicsPage, "Realistic Graphics", 73, "RealisticGraphics", "GRAPHICS")
local graphicsInfo = Instance.new("Frame", graphicsPage)
graphicsInfo.Size = UDim2.new(1, -30, 0, 120)
graphicsInfo.Position = UDim2.new(0, 15, 0, 140)
graphicsInfo.BackgroundColor3 = Color3.fromRGB(25, 25, 40)
graphicsInfo.BackgroundTransparency = 0.2
graphicsInfo.Name = "GraphicsInfo"
Instance.new("UICorner", graphicsInfo).CornerRadius = UDim.new(0, 14)
table.insert(pageElements["GRAPHICS"], {element = graphicsInfo, originalY = 140, type = "info"})
local infoText = Instance.new("TextLabel", graphicsInfo)
infoText.Size = UDim2.new(1, -20, 1, -20)
infoText.Position = UDim2.new(0, 10, 0, 10)
infoText.BackgroundTransparency = 1
infoText.Text = "Low Graphics: Remove sombras e efeitos para aumentar FPS\n\nRealistic Graphics: Adiciona iluminação e efeitos visuais realistas"
infoText.Font = Enum.Font.Arcade
infoText.TextSize = 11
infoText.TextColor3 = Color3.fromRGB(180, 180, 200)
infoText.TextWrapped = true
infoText.TextYAlignment = Enum.TextYAlignment.Top
infoText.TextXAlignment = Enum.TextXAlignment.Left
local mini = Instance.new("TextButton", gui)
mini.Size = UDim2.new(0, 160, 0, 35)
mini.Position = UDim2.new(0.5, -80, 0, 20)
mini.BackgroundColor3 = Color3.fromRGB(25, 25, 40)
mini.BackgroundTransparency = 0.2
mini.Text = "Show MystericHub"
mini.Font = Enum.Font.Arcade
mini.TextSize = 12
mini.TextColor3 = Color3.new(1, 1, 1)
mini.Visible = false
mini.BorderSizePixel = 0
mini.Active = true
mini.Draggable = true
Instance.new("UICorner", mini).CornerRadius = UDim.new(0, 18)
local miniStroke = Instance.new("UIStroke", mini)
miniStroke.Thickness = 1.5
miniStroke.Color = Color3.fromRGB(60, 60, 80)
miniStroke.Transparency = 0.5
local fpsCounter = Instance.new("TextLabel", gui)
fpsCounter.Size = UDim2.new(0, 110, 0, 38)
fpsCounter.Position = UDim2.new(1, -120, 1, -48)
fpsCounter.BackgroundColor3 = Color3.fromRGB(20, 20, 35)
fpsCounter.BackgroundTransparency = 0.2
fpsCounter.BorderSizePixel = 0
fpsCounter.Text = "FPS: 60"
fpsCounter.Font = Enum.Font.Arcade
fpsCounter.TextSize = 15
fpsCounter.TextColor3 = Color3.fromRGB(100, 200, 255)
Instance.new("UICorner", fpsCounter).CornerRadius = UDim.new(0, 12)
local fpsStroke = Instance.new("UIStroke", fpsCounter)
fpsStroke.Color = Color3.fromRGB(80, 80, 120)
fpsStroke.Thickness = 1.5
fpsStroke.Transparency = 0.5
colorPicker.MouseButton1Click:Connect(function()
currentColorIndex = currentColorIndex + 1
if currentColorIndex > #themeColors then
currentColorIndex = 1
end
Settings.ThemeColor = themeColors[currentColorIndex]
TweenService:Create(colorCircle, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {
BackgroundColor3 = Settings.ThemeColor
}):Play()
TweenService:Create(colorPicker, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
BackgroundColor3 = Settings.ThemeColor
}):Play()
task.wait(0.2)
TweenService:Create(colorPicker, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
BackgroundColor3 = Color3.fromRGB(35, 35, 50)
}):Play()
TweenService:Create(stroke, TweenInfo.new(0.4), {
Color = Settings.ThemeColor
}):Play()
TweenService:Create(divider, TweenInfo.new(0.4), {
BackgroundColor3 = Settings.ThemeColor
}):Play()
TweenService:Create(fpsStroke, TweenInfo.new(0.4), {
Color = Settings.ThemeColor
}):Play()
TweenService:Create(fpsCounter, TweenInfo.new(0.4), {
TextColor3 = Settings.ThemeColor
}):Play()
TweenService:Create(searchStroke, TweenInfo.new(0.4), {
Color = Settings.ThemeColor
}):Play()
TweenService:Create(resultsStroke, TweenInfo.new(0.4), {
Color = Settings.ThemeColor
}):Play()
TweenService:Create(miniStroke, TweenInfo.new(0.4), {
Color = Settings.ThemeColor
}):Play()
for _, child in ipairs(side:GetChildren()) do
if child:IsA("TextButton") and pages[child.Name] and pages[child.Name].Visible then
TweenService:Create(child, TweenInfo.new(0.4), {
BackgroundColor3 = Color3.new(
Settings.ThemeColor.R * 0.3,
Settings.ThemeColor.G * 0.3,
Settings.ThemeColor.B * 0.3
)
}):Play()
end
end
end)
-- FUNÇÃO PARA REPOSICIONAR ELEMENTOS APÓS MUDANÇA DE ORIENTAÇÃO
local function repositionPageElements()
for pageName, elements in pairs(pageElements) do
for _, data in ipairs(elements) do
data.element.Position = UDim2.new(0, 15, 0, data.originalY)
end
end
end
formatBtn.MouseButton1Click:Connect(function()
if Settings.UIOrientation == "vertical" then
Settings.UIOrientation = "horizontal"
TweenService:Create(square1, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {
Size = UDim2.new(0, 10, 0, 6),
Position = UDim2.new(0.5, -5, 0.5, -8)
}):Play()
TweenService:Create(square2, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {
Size = UDim2.new(0, 10, 0, 6),
Position = UDim2.new(0.5, -5, 0.5, 2)
}):Play()
TweenService:Create(main, TweenInfo.new(0.4, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), {
Size = UDim2.new(0, 600, 0, 350),
Position = UDim2.new(0.5, -300, 0.5, -175)
}):Play()
TweenService:Create(side, TweenInfo.new(0.4, Enum.EasingStyle.Quint), {
Size = UDim2.new(1, 0, 0, 70),
Position = UDim2.new(0, 0, 0, 48)
}):Play()
TweenService:Create(content, TweenInfo.new(0.4, Enum.EasingStyle.Quint), {
Size = UDim2.new(1, 0, 1, -118),
Position = UDim2.new(0, 0, 0, 118)
}):Play()
task.wait(0.4)
-- Reposicionar botões para horizontal
local buttonPositions = {
AIMBOT = 0,
ESP = 1,
VISUAL = 2,
GRAPHICS = 3
}
for _, child in ipairs(side:GetChildren()) do
if child:IsA("TextButton") and buttonPositions[child.Name] then
local index = buttonPositions[child.Name]
child:TweenSizeAndPosition(
UDim2.new(0, 135, 1, -20),
UDim2.new(0, 10 + (index * 145), 0, 10),
Enum.EasingDirection.Out,
Enum.EasingStyle.Quad,
0.3,
true
)
end
end
-- Reposicionar elementos das páginas
repositionPageElements()
else
Settings.UIOrientation = "vertical"
TweenService:Create(square1, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {
Size = UDim2.new(0, 10, 0, 10),
Position = UDim2.new(0.5, -12, 0.5, -5)
}):Play()
TweenService:Create(square2, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {
Size = UDim2.new(0, 10, 0, 10),
Position = UDim2.new(0.5, 2, 0.5, -5)
}):Play()
TweenService:Create(main, TweenInfo.new(0.4, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), {
Size = UDim2.new(0, 400, 0, 600),
Position = UDim2.new(0.5, -200, 0.5, -300)
}):Play()
TweenService:Create(side, TweenInfo.new(0.4, Enum.EasingStyle.Quint), {
Size = UDim2.new(0, 120, 1, -48),
Position = UDim2.new(0, 0, 0, 48)
}):Play()
TweenService:Create(content, TweenInfo.new(0.4, Enum.EasingStyle.Quint), {
Size = UDim2.new(1, -120, 1, -48),
Position = UDim2.new(0, 120, 0, 48)
}):Play()
task.wait(0.4)
-- Reposicionar botões para vertical
local buttonPositions = {
AIMBOT = 0,
ESP = 1,
VISUAL = 2,
GRAPHICS = 3
}
for _, child in ipairs(side:GetChildren()) do
if child:IsA("TextButton") and buttonPositions[child.Name] then
local index = buttonPositions[child.Name]
child:TweenSizeAndPosition(
UDim2.new(1, -14, 0, 50),
UDim2.new(0, 7, 0, 10 + (index * 60)),
Enum.EasingDirection.Out,
Enum.EasingStyle.Quad,
0.3,
true
)
end
end
-- Reposicionar elementos das páginas
repositionPageElements()
end
end)
local ESPObjects = {}
local function CreateBox()
local box = Drawing.new("Square")
box.Visible = false
box.Color = Color3.fromRGB(255, 0, 0)
box.Thickness = 2
box.Transparency = 1
box.Filled = false
return box
end
local function CreateLine()
local line = Drawing.new("Line")
line.Visible = false
line.Color = Color3.fromRGB(255, 255, 255)
line.Thickness = 1
line.Transparency = 1
return line
end
local function CreateText()
local text = Drawing.new("Text")
text.Visible = false
text.Color = Color3.fromRGB(255, 255, 255)
text.Size = 16
text.Center = true
text.Outline = true
text.Transparency = 1
return text
end
local function WorldToScreen(pos)
local screenPos, onScreen = camera:WorldToViewportPoint(pos)
return Vector2.new(screenPos.X, screenPos.Y), onScreen
end
local fovCircle = Drawing.new("Circle")
fovCircle.Thickness = 2
fovCircle.NumSides = 50
fovCircle.Radius = 150
fovCircle.Filled = false
fovCircle.Color = Color3.fromRGB(255, 255, 255)
fovCircle.Transparency = 1
fovCircle.Visible = false
local function GetClosestPlayer()
if Settings.TargetPlayer and Settings.TargetPlayer.Character then
local humanoid = Settings.TargetPlayer.Character:FindFirstChildOfClass("Humanoid")
if humanoid and humanoid.Health > 0 then
return Settings.TargetPlayer
end
end
local closestPlayer = nil
local closestDistance = math.huge
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and plr.Character then
local character = plr.Character
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoidRootPart and humanoid and humanoid.Health > 0 then
local distance = (player.Character.HumanoidRootPart.Position - humanoidRootPart.Position).Magnitude
if distance < closestDistance then
closestDistance = distance
closestPlayer = plr
end
end
end
end
return closestPlayer
end
local function PredictPosition(targetPart)
if targetPart and targetPart.Parent then
local velocity = targetPart.AssemblyLinearVelocity
local distance = (camera.CFrame.Position - targetPart.Position).Magnitude
local bulletSpeed = 1000
local timeToHit = distance / bulletSpeed
local predictedPosition = targetPart.Position + (velocity * timeToHit)
return predictedPosition
end
return targetPart.Position
end
local lastTime = tick()
local frameCount = 0
local fps = 60
RunService.RenderStepped:Connect(function()
frameCount = frameCount + 1
local currentTime = tick()
if currentTime - lastTime >= 1 then
fps = frameCount
fpsCounter.Text = "FPS: " .. fps
if fps >= 60 then
fpsCounter.TextColor3 = Color3.fromRGB(100, 255, 100)
elseif fps >= 30 then
fpsCounter.TextColor3 = Color3.fromRGB(255, 255, 100)
else
fpsCounter.TextColor3 = Color3.fromRGB(255, 100, 100)
end
frameCount = 0
lastTime = currentTime
end
local mouseLocation = UserInputService:GetMouseLocation()
fovCircle.Position = mouseLocation
fovCircle.Radius = 150
fovCircle.Visible = Settings.ShowFOV
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player then
local character = plr.Character
if character then
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoidRootPart and humanoid and humanoid.Health > 0 then
if not ESPObjects[plr] then
ESPObjects[plr] = {
Box = CreateBox(),
Name = CreateText(),
Skeleton = {
CreateLine(), CreateLine(), CreateLine(), CreateLine(), CreateLine()
}
}
end
local esp = ESPObjects[plr]
if Settings.BoxESP then
local head = character:FindFirstChild("Head")
if head then
local topPos, topOnScreen = WorldToScreen(head.Position + Vector3.new(0, head.Size.Y / 2, 0))
local bottomPos, bottomOnScreen = WorldToScreen(humanoidRootPart.Position - Vector3.new(0, humanoidRootPart.Size.Y, 0))
if topOnScreen and bottomOnScreen then
local height = (bottomPos - topPos).Y
local width = height / 2
esp.Box.Size = Vector2.new(width, height)
esp.Box.Position = Vector2.new(topPos.X - width / 2, topPos.Y)
esp.Box.Visible = true
else
esp.Box.Visible = false
end
else
esp.Box.Visible = false
end
else
esp.Box.Visible = false
end
if Settings.NameESP then
local head = character:FindFirstChild("Head")
if head then
local pos, onScreen = WorldToScreen(head.Position + Vector3.new(0, head.Size.Y, 0))
if onScreen then
esp.Name.Position = pos
esp.Name.Text = plr.Name
esp.Name.Visible = true
else
esp.Name.Visible = false
end
else
esp.Name.Visible = false
end
else
esp.Name.Visible = false
end
if Settings.SkeletonESP then
local head = character:FindFirstChild("Head")
local leftArm = character:FindFirstChild("Left Arm") or character:FindFirstChild("LeftUpperArm")
local rightArm = character:FindFirstChild("Right Arm") or character:FindFirstChild("RightUpperArm")
local leftLeg = character:FindFirstChild("Left Leg") or character:FindFirstChild("LeftUpperLeg")
local rightLeg = character:FindFirstChild("Right Leg") or character:FindFirstChild("RightUpperLeg")
local parts = {
{head, humanoidRootPart},
{humanoidRootPart, leftArm},
{humanoidRootPart, rightArm},
{humanoidRootPart, leftLeg},
{humanoidRootPart, rightLeg}
}
for i, connection in pairs(parts) do
local line = esp.Skeleton[i]
if connection[1] and connection[2] then
local pos1, onScreen1 = WorldToScreen(connection[1].Position)
local pos2, onScreen2 = WorldToScreen(connection[2].Position)
if onScreen1 and onScreen2 then
line.From = pos1
line.To = pos2
line.Visible = true
else
line.Visible = false
end
else
line.Visible = false
end
end
else
for _, line in pairs(esp.Skeleton) do
line.Visible = false
end
end
else
if ESPObjects[plr] then
ESPObjects[plr].Box.Visible = false
ESPObjects[plr].Name.Visible = false
for _, line in pairs(ESPObjects[plr].Skeleton) do
line.Visible = false
end
end
end
end
end
end
if Settings.Aimbot then
local target = GetClosestPlayer()
if target and target.Character then
local head = target.Character:FindFirstChild("Head")
if head then
local predictedPos = PredictPosition(head)
camera.CFrame = CFrame.new(camera.CFrame.Position, predictedPos)
end
end
end
end)
local targetLocked = false
local lockedTarget = nil
local shiftPressed = false
targetBtn.MouseButton1Click:Connect(function()
Settings.TargetLock = not Settings.TargetLock
targetLocked = Settings.TargetLock
if targetLocked then
lockedTarget = GetClosestPlayer()
else
lockedTarget = nil
end
end)
UserInputService.InputBegan:Connect(function(input)
if input.KeyCode == Enum.KeyCode.LeftShift or input.KeyCode == Enum.KeyCode.RightShift then
shiftPressed = true
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.KeyCode == Enum.KeyCode.LeftShift or input.KeyCode == Enum.KeyCode.RightShift then
shiftPressed = false
end
end)
RunService.RenderStepped:Connect(function()
if targetLocked and lockedTarget and lockedTarget.Character and lockedTarget.Character:FindFirstChild("Head") and lockedTarget.Character:FindFirstChild("Humanoid") and lockedTarget.Character.Humanoid.Health > 0 then
if shiftPressed then
local head = lockedTarget.Character.Head
local predictedPos = PredictPosition(head)
camera.CFrame = CFrame.new(camera.CFrame.Position, predictedPos)
end
else
if targetLocked then
lockedTarget = nil
targetLocked = false
Settings.TargetLock = false
targetBtn.Text = "OFF"
targetBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
end
end
end)
RunService.Heartbeat:Connect(function()
if Settings.RemoveFog then
game.Lighting.FogEnd = 100000
if game.Lighting:FindFirstChild("Atmosphere") then
game.Lighting.Atmosphere.Density = 0
end
end
if Settings.LowGraphics then
Settings.RealisticGraphics = false
realisticGraphicsBtn.Text = "OFF"
realisticGraphicsBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
local lighting = game:GetService("Lighting")
lighting.GlobalShadows = false
lighting.FogEnd = 100000
lighting.Brightness = 2
for _, effect in pairs(lighting:GetChildren()) do
if effect:IsA("PostEffect") or effect:IsA("BloomEffect") or effect:IsA("BlurEffect") or effect:IsA("ColorCorrectionEffect") or effect:IsA("SunRaysEffect") then
effect.Enabled = false
end
end
for _, obj in pairs(workspace:GetDescendants()) do
if obj:IsA("ParticleEmitter") or obj:IsA("Trail") or obj:IsA("Smoke") or obj:IsA("Fire") or obj:IsA("Sparkles") then
obj.Enabled = false
end
end
settings().Rendering.QualityLevel = Enum.QualityLevel.Level01
else
settings().Rendering.QualityLevel = Enum.QualityLevel.Automatic
end
if Settings.RealisticGraphics then
Settings.LowGraphics = false
lowGraphicsBtn.Text = "OFF"
lowGraphicsBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
local lighting = game:GetService("Lighting")
lighting.GlobalShadows = true
lighting.Brightness = 1.5
lighting.OutdoorAmbient = Color3.fromRGB(100, 100, 120)
lighting.Ambient = Color3.fromRGB(0, 0, 0)
lighting.ColorShift_Top = Color3.fromRGB(255, 247, 237)
lighting.ColorShift_Bottom = Color3.fromRGB(0, 0, 0)
if not lighting:FindFirstChild("RealisticBloom") then
local bloom = Instance.new("BloomEffect")
bloom.Name = "RealisticBloom"
bloom.Intensity = 0.4
bloom.Size = 24
bloom.Threshold = 0.8
bloom.Parent = lighting
end
if not lighting:FindFirstChild("RealisticColorCorrection") then
local colorCorrection = Instance.new("ColorCorrectionEffect")
colorCorrection.Name = "RealisticColorCorrection"
colorCorrection.Brightness = 0.05
colorCorrection.Contrast = 0.2
colorCorrection.Saturation = 0.1
colorCorrection.TintColor = Color3.fromRGB(255, 250, 245)
colorCorrection.Parent = lighting
end
if not lighting:FindFirstChild("RealisticSunRays") then
local sunRays = Instance.new("SunRaysEffect")
sunRays.Name = "RealisticSunRays"
sunRays.Intensity = 0.15
sunRays.Spread = 0.4
sunRays.Parent = lighting
end
if not lighting:FindFirstChild("RealisticAtmosphere") then
local atmosphere = Instance.new("Atmosphere")
atmosphere.Name = "RealisticAtmosphere"
atmosphere.Density = 0.3
atmosphere.Offset = 0.25
atmosphere.Color = Color3.fromRGB(199, 199, 199)
atmosphere.Decay = Color3.fromRGB(106, 112, 125)
atmosphere.Glare = 0.3
atmosphere.Haze = 1.5
atmosphere.Parent = lighting
end
settings().Rendering.QualityLevel = Enum.QualityLevel.Level21
else
local lighting = game:GetService("Lighting")
if lighting:FindFirstChild("RealisticBloom") then
lighting.RealisticBloom:Destroy()
end
if lighting:FindFirstChild("RealisticColorCorrection") then
lighting.RealisticColorCorrection:Destroy()
end
if lighting:FindFirstChild("RealisticSunRays") then
lighting.RealisticSunRays:Destroy()
end
if lighting:FindFirstChild("RealisticAtmosphere") then
lighting.RealisticAtmosphere:Destroy()
end
end
end)
local function tween(obj, props)
TweenService:Create(obj, TweenInfo.new(0.3, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), props):Play()
end
closeBtn.MouseButton1Click:Connect(function()
tween(main, {Size = UDim2.new(0, 0, 0, 0)})
task.wait(0.3)
gui:Destroy()
end)
closeBtn.MouseEnter:Connect(function()
TweenService:Create(closeBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(255, 70, 80)}):Play()
end)
closeBtn.MouseLeave:Connect(function()
TweenService:Create(closeBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(200, 50, 60)}):Play()
end)
minimize.MouseButton1Click:Connect(function()
tween(main, {Size = UDim2.new(0, 0, 0, 0)})
task.wait(0.3)
main.Visible = false
mini.Visible = true
end)
mini.MouseButton1Click:Connect(function()
main.Visible = true
main.Size = UDim2.new(0, 0, 0, 0)
if Settings.UIOrientation == "vertical" then
tween(main, {Size = UDim2.new(0, 400, 0, 600)})
else
tween(main, {Size = UDim2.new(0, 600, 0, 350)})
end
mini.Visible = false
end)
Players.PlayerRemoving:Connect(function(plr)
if ESPObjects[plr] then
ESPObjects[plr].Box:Remove()
ESPObjects[plr].Name:Remove()
for _, line in pairs(ESPObjects[plr].Skeleton) do
line:Remove()
end
ESPObjects[plr] = nil
end
end)No comments yet for this script.



