
KeylessUniversal

-- ╔══════════════════════════════════════════════════╗
-- ║ Skiddingly | Beta — loadstring compatible ║
-- ║ Usage: loadstring(game:HttpGet("URL"))() ║
-- ║ END to toggle GUI ║
-- ╚══════════════════════════════════════════════════╝
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Lighting = game:GetService("Lighting")
local player = Players.LocalPlayer
-- loadstring-safe: poll for PlayerGui instead of WaitForChild at module scope
local playerGui = player.PlayerGui or player:FindFirstChildOfClass("PlayerGui")
if not playerGui then
local ok, pg = pcall(function() return player:WaitForChild("PlayerGui", 10) end)
playerGui = ok and pg or player.PlayerGui
end
-- Clean up old instance
pcall(function()
if playerGui:FindFirstChild("SKIDDINGLY") then
playerGui.SKIDDINGLY:Destroy()
end
end)
local mouse = player:GetMouse()
-- ══════════════════════════════════════════════════
-- THEME
-- ══════════════════════════════════════════════════
local T = {
BG = Color3.fromRGB(18, 20, 30),
BGDeep = Color3.fromRGB(12, 13, 20),
Panel = Color3.fromRGB(22, 25, 38),
PanelBorder = Color3.fromRGB(40, 45, 70),
TabBar = Color3.fromRGB(15, 17, 26),
TabActive = Color3.fromRGB(30, 80, 180),
TabInactive = Color3.fromRGB(22, 25, 38),
Accent = Color3.fromRGB(50, 120, 255),
AccentDim = Color3.fromRGB(30, 70, 160),
CheckOff = Color3.fromRGB(30, 33, 50),
CheckOn = Color3.fromRGB(50, 120, 255),
SliderFill = Color3.fromRGB(50, 120, 255),
SliderTrack = Color3.fromRGB(25, 28, 42),
Text = Color3.fromRGB(210, 215, 230),
SubText = Color3.fromRGB(120, 130, 160),
Dim = Color3.fromRGB(60, 68, 100),
TitleText = Color3.fromRGB(180, 195, 255),
KeyBg = Color3.fromRGB(25, 28, 44),
DropBg = Color3.fromRGB(20, 22, 34),
}
-- ══════════════════════════════════════════════════
-- STATE
-- ══════════════════════════════════════════════════
-- Character
local speedActive = false; local walkSpeed = 150
local flyActive = false; local flySpeed = 80
local noclipActive = false
local infJumpActive = false
local lowGravActive = false
-- Desync (character tab)
local desyncActive = false
local desyncAngle = 0
local desyncRadius = 80
local desyncHeight = 600
local desyncSpeed = 25
local desyncSavedCF = nil
local desyncConn = nil
-- Ragebot
local ragebotActive = false
local ragebotSpeed = 20 -- orbits per second
local ragebotRadius = 40 -- studs around current position
local ragebotTarget = nil -- current locked player
local ragebotAngle = 0
local ragebotConn = nil
local ragebotFire = false -- whether to auto-fire
local ragebotDelay = 0.15 -- seconds between shots
local lastShotTime = 0
-- Silent aim (shared by ragebot)
local silentActive = false
local silentFOV = 300
-- ESP
local espActive = false
local espMaxDist = 500
local espShowName = true
local highlights = {}
-- World / visuals
local motionBlurEffect = nil
local colorCorrection = nil
-- Hit effects
local hitSoundActive = false
local hitEffectActive = false
local hitFlashActive = false
local hitSoundId = "rbxassetid://131057186"
-- Glow
local glowObj = nil
-- Wings
local wingParts = {}
local wingFlapConn = nil
-- Emote
local emoteId = ""
local emoteActive = false
local emoteConn = nil
-- Connections to clean up
local flyConn, noclipConn = nil, nil
-- ══════════════════════════════════════════════════
-- HELPERS
-- ══════════════════════════════════════════════════
local function getChar() return player.Character end
local function getHum() local c=getChar(); return c and c:FindFirstChildOfClass("Humanoid") end
local function getRoot() local c=getChar(); return c and c:FindFirstChild("HumanoidRootPart") end
local function ensureCC()
if not colorCorrection or not colorCorrection.Parent then
colorCorrection = Instance.new("ColorCorrectionEffect")
colorCorrection.Parent = Lighting
end
return colorCorrection
end
-- Highlight folder in workspace (survives respawn)
local hlFolder = workspace:FindFirstChild("_SKD_HL") or Instance.new("Folder")
hlFolder.Name = "_SKD_HL"
hlFolder.Parent = workspace
-- ══════════════════════════════════════════════════
-- SCREEN GUI
-- ══════════════════════════════════════════════════
local SG = Instance.new("ScreenGui")
SG.Name = "SKIDDINGLY"
SG.ResetOnSpawn = false
SG.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
SG.DisplayOrder = 999
SG.Parent = playerGui
local WIN_W, WIN_H = 640, 440
local Main = Instance.new("Frame")
Main.Size = UDim2.new(0, WIN_W, 0, WIN_H)
Main.Position = UDim2.new(0.5, -WIN_W/2, 0.5, -WIN_H/2)
Main.BackgroundColor3 = T.BG
Main.BorderSizePixel = 0
Main.ClipsDescendants = false
Main.Parent = SG
Instance.new("UICorner", Main).CornerRadius = UDim.new(0,4)
local mainStroke = Instance.new("UIStroke")
mainStroke.Color = T.PanelBorder; mainStroke.Thickness = 1; mainStroke.Parent = Main
-- ── Title bar ──
local TBar = Instance.new("Frame")
TBar.Size = UDim2.new(1,0,0,26)
TBar.BackgroundColor3 = T.BGDeep
TBar.BorderSizePixel = 0
TBar.ZIndex = 5
TBar.Parent = Main
Instance.new("UICorner", TBar).CornerRadius = UDim.new(0,4)
-- fill bottom rounded edge
local TBarFill = Instance.new("Frame")
TBarFill.Size = UDim2.new(1,0,0,8)
TBarFill.Position = UDim2.new(0,0,1,-8)
TBarFill.BackgroundColor3 = T.BGDeep
TBarFill.BorderSizePixel = 0
TBarFill.ZIndex = 4
TBarFill.Parent = TBar
local TTitle = Instance.new("TextLabel")
TTitle.Size = UDim2.new(1,-130,1,0)
TTitle.Position = UDim2.new(0,10,0,0)
TTitle.BackgroundTransparency = 1
TTitle.Text = "Skiddingly | Beta | " .. os.date("%B %d, %Y")
TTitle.TextColor3 = T.TitleText
TTitle.TextSize = 10
TTitle.Font = Enum.Font.Gotham
TTitle.TextXAlignment = Enum.TextXAlignment.Left
TTitle.ZIndex = 6
TTitle.Parent = TBar
local function makeTBarBtn(lbl, xOff, col, par)
local b = Instance.new("TextButton")
b.Size = UDim2.new(0,28,0,18)
b.Position = UDim2.new(1,xOff,0.5,-9)
b.BackgroundColor3 = col or T.AccentDim
b.BorderSizePixel = 0
b.Text = lbl
b.TextColor3 = Color3.fromRGB(220,220,220)
b.TextSize = 9
b.Font = Enum.Font.GothamBold
b.AutoButtonColor = false
b.ZIndex = 6
b.Parent = par or TBar
Instance.new("UICorner",b).CornerRadius = UDim.new(0,2)
return b
end
local SettingsBtn = makeTBarBtn("cfg", -66, T.AccentDim)
local MinBtn = makeTBarBtn("─", -34, Color3.fromRGB(60,60,80))
local CloseBtn = makeTBarBtn("✕", -2, Color3.fromRGB(160,30,30))
CloseBtn.MouseButton1Click:Connect(function() SG:Destroy() end)
local minimized = false
MinBtn.MouseButton1Click:Connect(function()
minimized = not minimized
for _,c in ipairs(Main:GetChildren()) do
if c ~= TBar then c.Visible = not minimized end
end
end)
UIS.InputBegan:Connect(function(inp,gpe)
if gpe then return end
if inp.KeyCode == Enum.KeyCode.End then Main.Visible = not Main.Visible end
end)
-- Window drag
local winDrag, dragSt, dragPos
TBar.InputBegan:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then
winDrag=true; dragSt=i.Position; dragPos=Main.Position
end
end)
TBar.InputEnded:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then winDrag=false end
end)
UIS.InputChanged:Connect(function(i)
if winDrag and i.UserInputType == Enum.UserInputType.MouseMovement then
local d=i.Position-dragSt
Main.Position=UDim2.new(dragPos.X.Scale, dragPos.X.Offset+d.X,
dragPos.Y.Scale, dragPos.Y.Offset+d.Y)
end
end)
-- ── Tab bar ──
local TAB_H = 26
local TabBar = Instance.new("Frame")
TabBar.Size = UDim2.new(1,0,0,TAB_H)
TabBar.Position = UDim2.new(0,0,0,26)
TabBar.BackgroundColor3 = T.TabBar
TabBar.BorderSizePixel = 0
TabBar.ZIndex = 4
TabBar.Parent = Main
Instance.new("UIListLayout",TabBar).FillDirection = Enum.FillDirection.Horizontal
local topTabDefs = {"ragebot","character","world","esp","visuals"}
local topTabBtns = {}
local activeTopTab = nil
local ContentHost = Instance.new("Frame")
ContentHost.Size = UDim2.new(1,0,1,-(26+TAB_H))
ContentHost.Position = UDim2.new(0,0,0,26+TAB_H)
ContentHost.BackgroundTransparency = 1
ContentHost.ClipsDescendants = true
ContentHost.Parent = Main
local topTabPages = {}
local function makeTopTabPage()
local page = Instance.new("Frame")
page.Size = UDim2.new(1,0,1,0)
page.BackgroundTransparency = 1
page.Visible = false
page.Parent = ContentHost
local function makePanel(xScale)
local sf = Instance.new("ScrollingFrame")
sf.Size = UDim2.new(0.5,-1,1,0)
sf.Position = UDim2.new(xScale, xScale>0 and 1 or 0, 0,0)
sf.BackgroundColor3 = T.Panel
sf.BorderSizePixel = 0
sf.ScrollBarThickness = 2
sf.ScrollBarImageColor3 = T.Accent
sf.CanvasSize = UDim2.new(0,0,0,0)
sf.AutomaticCanvasSize = Enum.AutomaticSize.Y
sf.ScrollingDirection = Enum.ScrollingDirection.Y
sf.Parent = page
local l = Instance.new("UIListLayout")
l.Padding = UDim.new(0,3); l.Parent = sf
local p = Instance.new("UIPadding")
p.PaddingLeft=UDim.new(0,8); p.PaddingRight=UDim.new(0,8)
p.PaddingTop=UDim.new(0,6); p.PaddingBottom=UDim.new(0,8)
p.Parent = sf
return sf
end
return page, makePanel(0), makePanel(0.5)
end
for _,name in ipairs(topTabDefs) do
local pg,L,R = makeTopTabPage()
topTabPages[name] = {page=pg, L=L, R=R}
end
local function switchTab(name)
for _,n in ipairs(topTabDefs) do
topTabPages[n].page.Visible = false
if topTabBtns[n] then
topTabBtns[n].BackgroundColor3 = T.TabInactive
topTabBtns[n].TextColor3 = T.SubText
end
end
topTabPages[name].page.Visible = true
activeTopTab = name
if topTabBtns[name] then
topTabBtns[name].BackgroundColor3 = T.TabActive
topTabBtns[name].TextColor3 = T.Text
end
end
for i,name in ipairs(topTabDefs) do
local b = Instance.new("TextButton")
b.Size = UDim2.new(0,math.floor(WIN_W/#topTabDefs),1,0)
b.BackgroundColor3 = T.TabInactive
b.BorderSizePixel = 0
b.Text = name
b.TextColor3 = T.SubText
b.TextSize = 10
b.Font = Enum.Font.GothamBold
b.AutoButtonColor = false
b.LayoutOrder = i
b.Parent = TabBar
topTabBtns[name] = b
b.MouseButton1Click:Connect(function() switchTab(name) end)
b.MouseEnter:Connect(function() if activeTopTab~=name then b.TextColor3=T.Text end end)
b.MouseLeave:Connect(function() if activeTopTab~=name then b.TextColor3=T.SubText end end)
end
switchTab("ragebot")
-- ══════════════════════════════════════════════════
-- UI HELPERS
-- ══════════════════════════════════════════════════
local function makeSection(parent,title,order)
local f=Instance.new("Frame")
f.Size=UDim2.new(1,0,0,22); f.BackgroundTransparency=1
f.LayoutOrder=order; f.Parent=parent
local l=Instance.new("TextLabel")
l.Size=UDim2.new(1,0,1,0); l.BackgroundTransparency=1
l.Text=title; l.TextColor3=T.Accent
l.TextXAlignment=Enum.TextXAlignment.Left
l.Font=Enum.Font.GothamBold; l.TextSize=11; l.Parent=f
local line=Instance.new("Frame")
line.Size=UDim2.new(1,0,0,1); line.Position=UDim2.new(0,0,1,-1)
line.BackgroundColor3=T.PanelBorder; line.BorderSizePixel=0; line.Parent=f
end
local function makeSpacer(parent,h,order)
local f=Instance.new("Frame")
f.Size=UDim2.new(1,0,0,h or 4); f.BackgroundTransparency=1
f.LayoutOrder=order; f.Parent=parent
end
local function makeCheck(parent,text,order,cb)
local holder=Instance.new("Frame")
holder.Size=UDim2.new(1,0,0,20); holder.BackgroundTransparency=1
holder.LayoutOrder=order; holder.Parent=parent
local lbl=Instance.new("TextLabel")
lbl.Size=UDim2.new(1,-28,1,0); lbl.BackgroundTransparency=1
lbl.Text=text; lbl.TextXAlignment=Enum.TextXAlignment.Left
lbl.Font=Enum.Font.Gotham; lbl.TextSize=11
lbl.TextColor3=T.SubText; lbl.Parent=holder
local box=Instance.new("TextButton")
box.Size=UDim2.new(0,20,0,14); box.Position=UDim2.new(1,-22,0.5,-7)
box.BackgroundColor3=T.CheckOff; box.Text=""
box.BorderSizePixel=0; box.AutoButtonColor=false; box.Parent=holder
Instance.new("UICorner",box).CornerRadius=UDim.new(0,3)
local tick=Instance.new("TextLabel")
tick.Size=UDim2.new(1,0,1,0); tick.BackgroundTransparency=1
tick.Text="✓"; tick.TextColor3=Color3.new(1,1,1)
tick.TextSize=10; tick.Font=Enum.Font.GothamBold
tick.Visible=false; tick.Parent=box
local listeners={}; local on=false
local function apply(v)
on=v; box.BackgroundColor3=v and T.CheckOn or T.CheckOff
tick.Visible=v; lbl.TextColor3=v and T.Text or T.SubText
if cb then cb(v) end
for _,f2 in ipairs(listeners) do f2(v) end
end
box.MouseButton1Click:Connect(function() apply(not on) end)
return function(v) apply(v) end,
function() return on end,
function(f2) table.insert(listeners,f2) end
end
local function makeSlider(parent,text,minV,maxV,def,order,cb)
local holder=Instance.new("Frame")
holder.Size=UDim2.new(1,0,0,34); holder.BackgroundTransparency=1
holder.LayoutOrder=order; holder.Parent=parent
local lbl=Instance.new("TextLabel")
lbl.Size=UDim2.new(1,0,0,14); lbl.BackgroundTransparency=1
lbl.Text=text.." "..tostring(def).."/"..tostring(maxV)
lbl.TextXAlignment=Enum.TextXAlignment.Left
lbl.Font=Enum.Font.Gotham; lbl.TextSize=10
lbl.TextColor3=T.Text; lbl.Parent=holder
local track=Instance.new("Frame")
track.Size=UDim2.new(1,0,0,5); track.Position=UDim2.new(0,0,0,22)
track.BackgroundColor3=T.SliderTrack; track.BorderSizePixel=0; track.Parent=holder
Instance.new("UICorner",track).CornerRadius=UDim.new(1,0)
local pct=(def-minV)/(maxV-minV)
local fill=Instance.new("Frame")
fill.Size=UDim2.new(pct,0,1,0); fill.BackgroundColor3=T.SliderFill
fill.BorderSizePixel=0; fill.Parent=track
Instance.new("UICorner",fill).CornerRadius=UDim.new(1,0)
local knob=Instance.new("Frame")
knob.Size=UDim2.new(0,8,0,8); knob.Position=UDim2.new(pct,-4,0.5,-4)
knob.BackgroundColor3=Color3.fromRGB(220,230,255)
knob.BorderSizePixel=0; knob.Parent=track
Instance.new("UICorner",knob).CornerRadius=UDim.new(1,0)
local sDrag=false
local function setX(x)
local rel=math.clamp((x-track.AbsolutePosition.X)/track.AbsoluteSize.X,0,1)
local val=math.floor(minV+(maxV-minV)*rel+0.5)
fill.Size=UDim2.new(rel,0,1,0); knob.Position=UDim2.new(rel,-4,0.5,-4)
lbl.Text=text.." "..tostring(val).."/"..tostring(maxV)
if cb then cb(val) end
end
track.InputBegan:Connect(function(i)
if i.UserInputType==Enum.UserInputType.MouseButton1 then sDrag=true; setX(i.Position.X) end
end)
UIS.InputEnded:Connect(function(i)
if i.UserInputType==Enum.UserInputType.MouseButton1 then sDrag=false end
end)
UIS.InputChanged:Connect(function(i)
if sDrag and i.UserInputType==Enum.UserInputType.MouseMovement then setX(i.Position.X) end
end)
if cb then cb(def) end
end
local function makeDropdown(parent,text,opts,def,order,cb)
local holder=Instance.new("Frame")
holder.Size=UDim2.new(1,0,0,24); holder.BackgroundTransparency=1
holder.LayoutOrder=order; holder.ClipsDescendants=false; holder.Parent=parent
local lbl=Instance.new("TextLabel")
lbl.Size=UDim2.new(0.42,0,1,0); lbl.BackgroundTransparency=1
lbl.Text=text; lbl.TextXAlignment=Enum.TextXAlignment.Left
lbl.Font=Enum.Font.Gotham; lbl.TextSize=10
lbl.TextColor3=T.Text; lbl.Parent=holder
local drop=Instance.new("TextButton")
drop.Size=UDim2.new(0.58,0,1,0); drop.Position=UDim2.new(0.42,0,0,0)
drop.BackgroundColor3=T.DropBg; drop.TextColor3=T.Text
drop.Text=def.." ▾"; drop.TextSize=10; drop.Font=Enum.Font.Gotham
drop.BorderSizePixel=0; drop.AutoButtonColor=false; drop.Parent=holder
Instance.new("UICorner",drop).CornerRadius=UDim.new(0,3)
Instance.new("UIStroke",drop).Color=T.PanelBorder
local open=false; local lf=nil
local function close() open=false; if lf then lf:Destroy(); lf=nil end end
local function set(v)
drop.Text=v.." ▾"
if cb then cb(v) end
end
set(def)
drop.MouseButton1Click:Connect(function()
open=not open
if open then
if lf then lf:Destroy() end
local ap=drop.AbsolutePosition; local as=drop.AbsoluteSize
lf=Instance.new("Frame")
lf.Size=UDim2.new(0,as.X,0,#opts*20); lf.Position=UDim2.new(0,ap.X,0,ap.Y+as.Y+2)
lf.BackgroundColor3=T.DropBg; lf.BorderSizePixel=0; lf.ZIndex=60; lf.Parent=SG
Instance.new("UICorner",lf).CornerRadius=UDim.new(0,3)
Instance.new("UIStroke",lf).Color=T.PanelBorder
Instance.new("UIListLayout",lf)
for _,opt in ipairs(opts) do
local ob=Instance.new("TextButton")
ob.Size=UDim2.new(1,0,0,20); ob.BackgroundTransparency=1
ob.Text=opt; ob.TextColor3=T.SubText; ob.TextSize=10
ob.Font=Enum.Font.Gotham; ob.AutoButtonColor=false
ob.ZIndex=61; ob.Parent=lf
ob.MouseEnter:Connect(function() ob.TextColor3=T.Text end)
ob.MouseLeave:Connect(function() ob.TextColor3=T.SubText end)
ob.MouseButton1Click:Connect(function() set(opt); close() end)
end
else close() end
end)
end
local function makeBtn(parent,text,order,onClick)
local b=Instance.new("TextButton")
b.Size=UDim2.new(1,0,0,22); b.BackgroundColor3=T.AccentDim
b.BorderSizePixel=0; b.Text=text; b.TextColor3=Color3.new(1,1,1)
b.TextSize=10; b.Font=Enum.Font.GothamBold
b.AutoButtonColor=false; b.LayoutOrder=order; b.Parent=parent
Instance.new("UICorner",b).CornerRadius=UDim.new(0,3)
local s=Instance.new("UIStroke"); s.Color=T.Accent; s.Thickness=1; s.Parent=b
b.MouseEnter:Connect(function()
TweenService:Create(b,TweenInfo.new(0.1),{BackgroundColor3=T.Accent}):Play()
end)
b.MouseLeave:Connect(function()
TweenService:Create(b,TweenInfo.new(0.1),{BackgroundColor3=T.AccentDim}):Play()
end)
b.MouseButton1Click:Connect(function() if onClick then onClick() end end)
return b
end
local function makeTextInput(parent,placeholder,order,onChange)
local holder=Instance.new("Frame")
holder.Size=UDim2.new(1,0,0,24); holder.BackgroundTransparency=1
holder.LayoutOrder=order; holder.Parent=parent
local box=Instance.new("TextBox")
box.Size=UDim2.new(1,0,1,0); box.BackgroundColor3=T.KeyBg
box.BorderSizePixel=0; box.Text=""; box.PlaceholderText=placeholder
box.TextColor3=T.Text; box.PlaceholderColor3=T.Dim
box.TextSize=10; box.Font=Enum.Font.Gotham
box.ClearTextOnFocus=false; box.Parent=holder
Instance.new("UICorner",box).CornerRadius=UDim.new(0,3)
if onChange then
box:GetPropertyChangedSignal("Text"):Connect(function() onChange(box.Text) end)
end
return box
end
local function makeInfoLabel(parent,text,order)
local l=Instance.new("TextLabel")
l.Size=UDim2.new(1,0,0,32); l.BackgroundColor3=Color3.fromRGB(15,17,28)
l.BorderSizePixel=0; l.Text=text; l.TextColor3=T.SubText
l.TextSize=9; l.Font=Enum.Font.Gotham
l.TextXAlignment=Enum.TextXAlignment.Left; l.TextWrapped=true
l.LayoutOrder=order; l.Parent=parent
Instance.new("UICorner",l).CornerRadius=UDim.new(0,3)
local p=Instance.new("UIPadding")
p.PaddingLeft=UDim.new(0,5); p.PaddingRight=UDim.new(0,5)
p.PaddingTop=UDim.new(0,3); p.Parent=l
end
-- ══════════════════════════════════════════════════
-- SILENT AIM HELPERS (shared by ragebot + standalone)
-- ══════════════════════════════════════════════════
local function findClosestPlayer(fovPx)
local cam=workspace.CurrentCamera
local ctr=Vector2.new(cam.ViewportSize.X/2,cam.ViewportSize.Y/2)
local bestPart, bestDist = nil, fovPx or math.huge
for _,p in ipairs(Players:GetPlayers()) do
if p~=player and p.Character then
local head=p.Character:FindFirstChild("Head")
or p.Character:FindFirstChild("HumanoidRootPart")
if head then
local sp,onSc=cam:WorldToViewportPoint(head.Position)
if onSc then
local d=(Vector2.new(sp.X,sp.Y)-ctr).Magnitude
if d<bestDist then bestDist=d; bestPart=head end
end
end
end
end
return bestPart
end
local function getVelocity(part)
local vel=Vector3.zero
pcall(function()
if part:IsA("BasePart") then vel=part.AssemblyLinearVelocity end
end)
return vel
end
-- Redirect mouse.Hit / mouse.Target to the closest player
local silentConn=nil
local function startSilentAim()
if silentConn then silentConn:Disconnect() end
silentConn=RunService.RenderStepped:Connect(function()
if not silentActive then
local mt=getmetatable(mouse); if mt then mt.__index=nil end
silentConn:Disconnect(); silentConn=nil; return
end
local part=findClosestPlayer(silentFOV)
if part then
local vel=getVelocity(part)
local pred=part.Position+vel*0.08
local mt=getmetatable(mouse)
if mt then
mt.__index=function(_,k)
if k=="Hit" then return CFrame.new(pred) end
if k=="Target" then return part end
end
end
end
end)
end
local function stopSilentAim()
silentActive=false
if silentConn then silentConn:Disconnect(); silentConn=nil end
pcall(function() local mt=getmetatable(mouse); if mt then mt.__index=nil end end)
end
-- ══════════════════════════════════════════════════
-- RAGEBOT ORBIT SYSTEM
-- Orbits your character around its current position
-- at high speed and auto-fires with silent aim every
-- ragebotDelay seconds at the closest player
-- ══════════════════════════════════════════════════
local function stopRagebot()
ragebotActive=false
if ragebotConn then ragebotConn:Disconnect(); ragebotConn=nil end
stopSilentAim()
-- restore physics
local r=getRoot()
if r then
local bv=r:FindFirstChild("_RB_BV"); if bv then bv:Destroy() end
local bg=r:FindFirstChild("_RB_BG"); if bg then bg:Destroy() end
end
local h=getHum(); if h then h.PlatformStand=false end
end
local function startRagebot()
stopRagebot()
ragebotActive=true
silentActive=true; startSilentAim()
local root=getRoot(); if not root then return end
local hum=getHum(); if not hum then return end
-- Save orbit center at current position
local orbitCenter=root.Position
-- Give body movers so we fully control position
hum.PlatformStand=true
local bv=Instance.new("BodyVelocity")
bv.Name="_RB_BV"; bv.Velocity=Vector3.zero
bv.MaxForce=Vector3.new(1e5,1e5,1e5); bv.Parent=root
local bg=Instance.new("BodyGyro")
bg.Name="_RB_BG"; bg.MaxTorque=Vector3.new(1e5,1e5,1e5)
bg.P=1e4; bg.Parent=root
ragebotAngle=0
ragebotConn=RunService.RenderStepped:Connect(function(dt)
if not ragebotActive then stopRagebot(); return end
local r2=getRoot(); if not r2 then stopRagebot(); return end
-- advance orbit angle
ragebotAngle=ragebotAngle+(ragebotSpeed*2*math.pi)*dt
local ox=orbitCenter.X+math.cos(ragebotAngle)*ragebotRadius
local oz=orbitCenter.Z+math.sin(ragebotAngle)*ragebotRadius
local oy=orbitCenter.Y+1 -- stay just above ground
-- face the orbit tangent direction (looks like spinning)
local tx=-math.sin(ragebotAngle)
local tz=math.cos(ragebotAngle)
local targetCF=CFrame.new(Vector3.new(ox,oy,oz),Vector3.new(ox+tx,oy,oz+tz))
r2.CFrame=targetCF
-- keep body movers zeroed (position is set by CFrame directly)
local bv2=r2:FindFirstChild("_RB_BV")
if bv2 then bv2.Velocity=Vector3.zero end
local bg2=r2:FindFirstChild("_RB_BG")
if bg2 then bg2.CFrame=targetCF end
-- auto fire toward closest player via tool
if ragebotFire then
local now=tick()
if now-lastShotTime>=ragebotDelay then
lastShotTime=now
local char=getChar()
local tool=char and char:FindFirstChildOfClass("Tool")
if tool then
-- fire all remote events on the tool (works for most shooters)
for _,v in ipairs(tool:GetDescendants()) do
if v:IsA("RemoteEvent") then
pcall(function()
-- silent aim already redirects mouse.Hit so the
-- server receives the redirected hit position
v:FireServer(mouse.Hit, mouse.Target)
end)
end
end
-- also attempt ClickDetector style
local handle=tool:FindFirstChildOfClass("BasePart")
if handle then
local cd=handle:FindFirstChildOfClass("ClickDetector")
if cd then pcall(function() fireClickDetector(cd) end) end
end
end
end
end
end)
end
-- ══════════════════════════════════════════════════
-- DESYNC (character orbit at sky height — server
-- can't track position so damage won't register)
-- ══════════════════════════════════════════════════
local function stopDesync()
desyncActive=false
if desyncConn then desyncConn:Disconnect(); desyncConn=nil end
task.delay(0.05,function()
local r=getRoot()
if r and desyncSavedCF then
pcall(function() r.CFrame=desyncSavedCF end)
end
end)
end
local function startDesync()
stopDesync()
desyncActive=true
local r=getRoot(); if not r then return end
desyncSavedCF=r.CFrame
desyncAngle=0
desyncConn=RunService.RenderStepped:Connect(function(dt)
if not desyncActive then stopDesync(); return end
local r2=getRoot(); if not r2 then return end
desyncAngle=desyncAngle+(desyncSpeed*2*math.pi)*dt
local origin=desyncSavedCF.Position
local ox=origin.X+math.cos(desyncAngle)*desyncRadius
local oz=origin.Z+math.sin(desyncAngle)*desyncRadius
local oy=origin.Y+desyncHeight
local tx=-math.sin(desyncAngle); local tz=math.cos(desyncAngle)
r2.CFrame=CFrame.new(Vector3.new(ox,oy,oz),Vector3.new(ox+tx,oy,oz+tz))
end)
end
-- ══════════════════════════════════════════════════
-- ██ RAGEBOT TAB ██
-- ══════════════════════════════════════════════════
do
local RL=topTabPages["ragebot"].L
local RR=topTabPages["ragebot"].R
makeSection(RL,"orbit ragebot",1)
makeInfoLabel(RL,"Orbits your character at high speed around its current position. Auto-fires every tool remote with silent aim redirecting every bullet to the closest player.",2)
makeSpacer(RL,4,3)
makeCheck(RL,"enabled",4,function(on)
if on then startRagebot() else stopRagebot() end
end)
makeCheck(RL,"auto fire",5,function(on) ragebotFire=on end)
makeSlider(RL,"orbit speed (rps)",1,60,20,6,function(v) ragebotSpeed=v end)
makeSlider(RL,"orbit radius (studs)",5,200,40,7,function(v) ragebotRadius=v end)
makeSlider(RL,"fire delay (ms)",50,1000,150,8,function(v) ragebotDelay=v/1000 end)
makeSection(RR,"silent aim",1)
makeInfoLabel(RR,"Silent aim bends every shot to hit the closest player. Works standalone or together with ragebot auto fire.",2)
makeSpacer(RR,4,3)
makeCheck(RR,"silent aim standalone",4,function(on)
silentActive=on
if on then startSilentAim() else stopSilentAim() end
end)
makeSlider(RR,"fov radius (px)",10,800,300,5,function(v) silentFOV=v end)
makeSpacer(RR,8,6)
makeSection(RR,"trigger bot",7)
makeInfoLabel(RR,"Auto-fires when mouse hovers an enemy. Works best paired with silent aim.",8)
makeSpacer(RR,4,9)
local trigActive=false; local trigDelay=0.05; local trigConn=nil
makeCheck(RR,"enabled",10,function(on)
trigActive=on
if on then
if trigConn then trigConn:Disconnect() end
trigConn=RunService.Heartbeat:Connect(function()
if not trigActive then trigConn:Disconnect();trigConn=nil;return end
local tgt=mouse.Target; if not tgt then return end
for _,p in ipairs(Players:GetPlayers()) do
if p~=player and p.Character and tgt:IsDescendantOf(p.Character) then
task.wait(trigDelay)
local char=getChar()
local tool=char and char:FindFirstChildOfClass("Tool")
if tool then
for _,v in ipairs(tool:GetDescendants()) do
if v:IsA("RemoteEvent") then
pcall(function() v:FireServer(mouse.Hit,mouse.Target) end)
end
end
end
return
end
end
end)
else
if trigConn then trigConn:Disconnect();trigConn=nil end
end
end)
makeSlider(RR,"trigger delay (ms)",10,500,50,11,function(v) trigDelay=v/1000 end)
end
-- ══════════════════════════════════════════════════
-- ██ CHARACTER TAB ██
-- ══════════════════════════════════════════════════
do
local CL=topTabPages["character"].L
local CR=topTabPages["character"].R
-- Movement
makeSection(CL,"movement",1)
makeCheck(CL,"speed hack",2,function(on)
speedActive=on
local h=getHum(); if h then h.WalkSpeed=on and walkSpeed or 16 end
end)
makeSlider(CL,"walk speed",16,500,150,3,function(v)
walkSpeed=v
if speedActive then local h=getHum(); if h then h.WalkSpeed=v end end
end)
makeCheck(CL,"fly",4,function(on)
flyActive=on
local r=getRoot(); local h=getHum()
if on and r and h then
h.PlatformStand=true
for _,n in ipairs({"_FLY_V","_FLY_G"}) do
local o=r:FindFirstChild(n); if o then o:Destroy() end
end
local bv=Instance.new("BodyVelocity"); bv.Name="_FLY_V"
bv.Velocity=Vector3.zero; bv.MaxForce=Vector3.new(1e5,1e5,1e5); bv.Parent=r
local bg=Instance.new("BodyGyro"); bg.Name="_FLY_G"
bg.MaxTorque=Vector3.new(1e5,1e5,1e5); bg.P=1e4; bg.Parent=r
if flyConn then flyConn:Disconnect() end
flyConn=RunService.RenderStepped:Connect(function(dt)
if not flyActive then
flyConn:Disconnect();flyConn=nil
local r2=getRoot()
if r2 then
local v2=r2:FindFirstChild("_FLY_V"); if v2 then v2:Destroy() end
local g2=r2:FindFirstChild("_FLY_G"); if g2 then g2:Destroy() end
end
local h2=getHum(); if h2 then h2.PlatformStand=false end
return
end
local r3=getRoot(); if not r3 then return end
local cam=workspace.CurrentCamera; local d=Vector3.zero
if UIS:IsKeyDown(Enum.KeyCode.W) then d+=cam.CFrame.LookVector end
if UIS:IsKeyDown(Enum.KeyCode.S) then d-=cam.CFrame.LookVector end
if UIS:IsKeyDown(Enum.KeyCode.A) then d-=cam.CFrame.RightVector end
if UIS:IsKeyDown(Enum.KeyCode.D) then d+=cam.CFrame.RightVector end
if UIS:IsKeyDown(Enum.KeyCode.Space) then d+=Vector3.new(0,1,0) end
if UIS:IsKeyDown(Enum.KeyCode.LeftShift) then d-=Vector3.new(0,1,0) end
local bv2=r3:FindFirstChild("_FLY_V")
if bv2 then bv2.Velocity=d.Magnitude>0 and d.Unit*flySpeed or Vector3.zero end
local bg2=r3:FindFirstChild("_FLY_G")
if bg2 then bg2.CFrame=cam.CFrame end
end)
else
flyActive=false
end
end)
makeSlider(CL,"fly speed",10,400,80,5,function(v) flySpeed=v end)
makeCheck(CL,"noclip",6,function(on)
noclipActive=on
if on then
if noclipConn then noclipConn:Disconnect() end
noclipConn=RunService.Stepped:Connect(function()
local c=getChar(); if not c then return end
for _,p in ipairs(c:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide=false end
end
end)
else
if noclipConn then noclipConn:Disconnect();noclipConn=nil end
end
end)
makeCheck(CL,"infinite jump",7,function(on)
infJumpActive=on
end)
UIS.JumpRequest:Connect(function()
if infJumpActive then local h=getHum(); if h then h:ChangeState(Enum.HumanoidStateType.Jumping) end end
end)
makeSlider(CL,"jump power",0,200,50,8,function(v)
local h=getHum(); if h then h.JumpHeight=v end
end)
makeSpacer(CL,6,9)
makeSection(CL,"misc",10)
makeCheck(CL,"invisible",11,function(on)
local c=getChar(); if not c then return end
for _,p in ipairs(c:GetDescendants()) do
if p:IsA("BasePart") and p.Name~="HumanoidRootPart" then
p.Transparency=on and 1 or 0
end
end
end)
makeBtn(CL,"reset character",12,function()
local h=getHum(); if h then h.Health=0 end
end)
-- RIGHT: Desync
makeSection(CR,"desync",1)
makeInfoLabel(CR,"Orbits your character at extreme sky height. Server cannot track your true position so damage won't register. Returns you when disabled.",2)
makeSpacer(CR,4,3)
makeCheck(CR,"enabled",4,function(on)
if on then startDesync() else stopDesync() end
end)
makeSlider(CR,"orbit speed (rps)",1,60,25,5,function(v) desyncSpeed=v end)
makeSlider(CR,"orbit radius (studs)",10,300,80,6,function(v) desyncRadius=v end)
makeSlider(CR,"sky height (studs)",100,2000,600,7,function(v) desyncHeight=v end)
makeSpacer(CR,6,8)
makeSection(CR,"teleport",9)
local savedCF=nil
makeBtn(CR,"save position",10,function()
local r=getRoot(); if r then savedCF=r.CFrame end
end)
makeBtn(CR,"return to saved",11,function()
local r=getRoot(); if r and savedCF then r.CFrame=savedCF end
end)
makeBtn(CR,"return from desync",12,function()
local r=getRoot(); if r and desyncSavedCF then r.CFrame=desyncSavedCF end
end)
end
-- ══════════════════════════════════════════════════
-- ██ WORLD TAB ██
-- ══════════════════════════════════════════════════
do
local WL=topTabPages["world"].L
local WR=topTabPages["world"].R
makeSection(WL,"physics",1)
makeCheck(WL,"low gravity",2,function(on) workspace.Gravity=on and 18 or 196.2 end)
makeCheck(WL,"zero gravity",3,function(on) workspace.Gravity=on and 0 or 196.2 end)
makeSlider(WL,"gravity",0,200,196,4,function(v) workspace.Gravity=v end)
makeSection(WL,"lighting",5)
makeSlider(WL,"clock time",0,24,14,6,function(v) Lighting.ClockTime=v end)
makeCheck(WL,"fullbright",7,function(on)
if on then
Lighting.Brightness=10; Lighting.ClockTime=14
Lighting.FogEnd=100000; Lighting.GlobalShadows=false
for _,ef in ipairs(Lighting:GetChildren()) do
if ef:IsA("BlurEffect") or ef:IsA("SunRaysEffect") then ef.Enabled=false end
end
else
Lighting.Brightness=1; Lighting.GlobalShadows=true
end
end)
makeSlider(WL,"brightness",0,10,1,8,function(v) Lighting.Brightness=v end)
makeSlider(WL,"fog end",100,10000,100000,9,function(v) Lighting.FogEnd=v end)
makeSection(WL,"camera",10)
makeSlider(WL,"field of view",60,120,70,11,function(v)
local cam=workspace.CurrentCamera; if cam then cam.FieldOfView=v end
end)
-- RIGHT: Screen color / effects
makeSection(WR,"screen color",1)
makeInfoLabel(WR,"Enable color correction first, then adjust the sliders.",2)
makeSpacer(WR,4,3)
makeCheck(WR,"color correction",4,function(on)
if on then
ensureCC()
else
if colorCorrection then colorCorrection:Destroy(); colorCorrection=nil end
end
end)
makeSlider(WR,"brightness",-100,100,0,5,function(v) ensureCC().Brightness=v/100 end)
makeSlider(WR,"saturation",-100,100,0,6,function(v) ensureCC().Saturation=v/100 end)
makeSlider(WR,"contrast",-100,100,0,7,function(v) ensureCC().Contrast=v/100 end)
makeDropdown(WR,"tint preset",{"None","Red","Blue","Green","Purple","Pink","Gold"},"None",8,function(v)
local colors={
None=Color3.new(1,1,1), Red=Color3.fromRGB(255,80,80),
Blue=Color3.fromRGB(80,160,255), Green=Color3.fromRGB(80,255,120),
Purple=Color3.fromRGB(160,80,255),Pink=Color3.fromRGB(255,120,200),
Gold=Color3.fromRGB(255,200,50),
}
ensureCC().TintColor=colors[v] or Color3.new(1,1,1)
end)
makeSpacer(WR,6,9)
makeSection(WR,"screen effects",10)
makeCheck(WR,"motion blur",11,function(on)
if on then
if not motionBlurEffect then
motionBlurEffect=Instance.new("BlurEffect")
motionBlurEffect.Parent=Lighting
end
motionBlurEffect.Size=24
else
if motionBlurEffect then motionBlurEffect:Destroy(); motionBlurEffect=nil end
end
end)
makeSlider(WR,"blur amount",0,56,24,12,function(v)
if motionBlurEffect then motionBlurEffect.Size=v end
end)
makeCheck(WR,"invert colors",13,function(on)
local cc=ensureCC()
cc.Saturation=on and -1 or 0; cc.Contrast=on and 0.3 or 0
end)
end
-- ══════════════════════════════════════════════════
-- ██ ESP TAB ██
-- ══════════════════════════════════════════════════
local function clearESP()
for _,hl in pairs(highlights) do pcall(function() hl:Destroy() end) end
highlights={}
end
do
local EL=topTabPages["esp"].L
local ER=topTabPages["esp"].R
makeSection(EL,"esp",1)
makeCheck(EL,"enabled",2,function(on)
espActive=on; if not on then clearESP() end
end)
makeCheck(EL,"show names",3,function(on) espShowName=on; clearESP() end)
makeSlider(EL,"max distance",50,2000,500,4,function(v) espMaxDist=v end)
local espFillAlpha=70
local espFillCol=Color3.fromRGB(50,120,255)
makeSection(ER,"style",1)
makeDropdown(ER,"fill color",{"Blue","Red","Green","Purple","White"},"Blue",2,function(v)
local cols={Blue=Color3.fromRGB(50,120,255),Red=Color3.fromRGB(255,60,60),
Green=Color3.fromRGB(60,255,100),Purple=Color3.fromRGB(160,60,255),White=Color3.fromRGB(255,255,255)}
espFillCol=cols[v] or cols.Blue
for _,hl in pairs(highlights) do pcall(function() hl.FillColor=espFillCol end) end
end)
makeSlider(ER,"fill transparency",0,100,70,3,function(v)
espFillAlpha=v
for _,hl in pairs(highlights) do pcall(function() hl.FillTransparency=v/100 end) end
end)
end
RunService.RenderStepped:Connect(function()
if not espActive then clearESP(); return end
local myRoot=getRoot(); if not myRoot then clearESP(); return end
for _,p in ipairs(Players:GetPlayers()) do
if p~=player then
local char=p.Character
local root=char and char:FindFirstChild("HumanoidRootPart")
local hum=char and char:FindFirstChildOfClass("Humanoid")
if root and hum then
local dist=(root.Position-myRoot.Position).Magnitude
local hl=highlights[p]
-- clean up dead highlights
if hl and not hl.Parent then hl=nil; highlights[p]=nil end
if dist<=espMaxDist then
if not hl then
local newHl=Instance.new("Highlight")
newHl.Adornee=char
newHl.FillColor=Color3.fromRGB(50,120,255)
newHl.OutlineColor=Color3.fromRGB(255,255,255)
newHl.FillTransparency=0.7
newHl.OutlineTransparency=0
newHl.Parent=hlFolder
highlights[p]=newHl
if espShowName then
local head=char:FindFirstChild("Head")
if head and not head:FindFirstChild("_SKD_BB") then
local bb=Instance.new("BillboardGui")
bb.Name="_SKD_BB"; bb.Size=UDim2.new(0,100,0,18)
bb.StudsOffset=Vector3.new(0,3,0); bb.AlwaysOnTop=true
bb.Parent=head
local tx=Instance.new("TextLabel")
tx.Size=UDim2.new(1,0,1,0); tx.BackgroundTransparency=1
tx.Font=Enum.Font.GothamBold; tx.TextSize=12
tx.TextColor3=Color3.new(1,1,1); tx.TextStrokeTransparency=0
tx.Text=p.Name; tx.Parent=bb
end
end
else
hl.Enabled=true; hl.Adornee=char
end
else
if hl then pcall(function() hl.Enabled=false end) end
end
else
local hl=highlights[p]
if hl then pcall(function() hl.Enabled=false end) end
end
end
end
end)
Players.PlayerRemoving:Connect(function(plr)
local hl=highlights[plr]
if hl then pcall(function() hl:Destroy() end); highlights[plr]=nil end
end)
-- ══════════════════════════════════════════════════
-- ██ VISUALS TAB ██
-- ══════════════════════════════════════════════════
do
local VL=topTabPages["visuals"].L
local VR=topTabPages["visuals"].R
-- Body glow
makeSection(VL,"body glow",1)
makeCheck(VL,"enabled",2,function(on)
local r=getRoot()
if on and r then
if glowObj then glowObj:Destroy() end
glowObj=Instance.new("PointLight")
glowObj.Brightness=3; glowObj.Range=20
glowObj.Color=Color3.fromRGB(100,160,255)
glowObj.Parent=r
else
if glowObj then glowObj:Destroy(); glowObj=nil end
end
end)
makeSlider(VL,"brightness",1,10,3,3,function(v) if glowObj then glowObj.Brightness=v end end)
makeSlider(VL,"range",5,50,20,4,function(v) if glowObj then glowObj.Range=v end end)
makeDropdown(VL,"color",{"Blue","Red","Green","Purple","White","Gold"},"Blue",5,function(v)
local cols={Blue=Color3.fromRGB(100,160,255),Red=Color3.fromRGB(255,80,80),
Green=Color3.fromRGB(80,255,120),Purple=Color3.fromRGB(160,80,255),
White=Color3.fromRGB(255,255,255),Gold=Color3.fromRGB(255,200,50)}
if glowObj then glowObj.Color=cols[v] or cols.Blue end
end)
-- Angel wings
local function removeWings()
for _,p in ipairs(wingParts) do pcall(function() p:Destroy() end) end
wingParts={}
if wingFlapConn then wingFlapConn:Disconnect(); wingFlapConn=nil end
end
local function buildWings()
removeWings()
local char=getChar(); if not char then return end
local torso=char:FindFirstChild("UpperTorso") or char:FindFirstChild("Torso")
if not torso then return end
local function feather(off,sz)
local p=Instance.new("Part"); p.Size=sz
p.Material=Enum.Material.SmoothPlastic; p.Color=Color3.fromRGB(240,240,255)
p.CastShadow=false; p.CanCollide=false; p.Anchored=false; p.Parent=char
local w=Instance.new("WeldConstraint"); w.Part0=torso; w.Part1=p; w.Parent=p
p.CFrame=torso.CFrame*off
local l=Instance.new("PointLight"); l.Brightness=0.3; l.Range=5
l.Color=Color3.fromRGB(180,200,255); l.Parent=p
table.insert(wingParts,p)
end
local cfg={
{-1.2,0.5,-0.3,25,15,0.15,1.8,0.5},{-2.0,0.8,-0.2,38,22,0.15,1.5,0.4},
{-2.7,0.4,-0.1,52,28,0.15,1.3,0.4},{-1.5,1.2,-0.3,15,10,0.15,1.6,0.4},
{-2.2,1.5,-0.2,22,18,0.15,1.4,0.4},
}
for _,c in ipairs(cfg) do
local off =CFrame.new(c[1],c[2],c[3])*CFrame.Angles(0,math.rad(c[5]), math.rad(c[4]))
local offR=CFrame.new(-c[1],c[2],c[3])*CFrame.Angles(0,math.rad(-c[5]),math.rad(-c[4]))
local sz=Vector3.new(c[7],c[6],c[8])
feather(off,sz); feather(offR,sz)
end
local t=0
wingFlapConn=RunService.RenderStepped:Connect(function(dt)
t=t+dt*2
local tor2=getChar() and (getChar():FindFirstChild("UpperTorso") or getChar():FindFirstChild("Torso"))
if not tor2 then return end
for i,wp in ipairs(wingParts) do
if wp and wp.Parent then
local side=(i%2==0) and 1 or -1
local bx=side*(0.8+(math.ceil(i/2)%3)*0.7)
pcall(function() wp.CFrame=tor2.CFrame*CFrame.new(bx,0.5+math.sin(t+i*0.3)*0.12,-0.2) end)
end
end
end)
end
makeSpacer(VL,6,6)
makeSection(VL,"angel wings",7)
makeCheck(VL,"enabled",8,function(on)
if on then buildWings() else removeWings() end
end)
makeSlider(VL,"opacity",0,100,100,9,function(v)
for _,p in ipairs(wingParts) do pcall(function() p.Transparency=1-(v/100) end) end
end)
-- Hit effects (right panel)
makeSection(VR,"hit effects",1)
makeCheck(VR,"hit sound",2,function(on) hitSoundActive=on end)
makeTextInput(VR,"sound asset ID (numbers only)",3,function(v)
local n=tonumber(v); if n then hitSoundId="rbxassetid://"..n end
end)
makeCheck(VR,"particle effect",4,function(on) hitEffectActive=on end)
makeCheck(VR,"screen flash",5,function(on) hitFlashActive=on end)
makeSpacer(VR,8,6)
makeSection(VR,"animation player",7)
makeTextInput(VR,"emote / animation ID",8,function(v) emoteId=v end)
local function playAnim(id)
local hum=getHum(); if not hum then return end
local anim=Instance.new("Animation"); anim.AnimationId="rbxassetid://"..id
local animator=hum.Animator or hum
local track=animator:LoadAnimation(anim)
if track then
emoteActive=true; track:Play()
if emoteConn then emoteConn:Disconnect() end
emoteConn=track.Stopped:Connect(function()
if emoteActive then track:Play() end
end)
end
end
makeBtn(VR,"▶ play",9,function()
local id=tonumber(emoteId); if id then playAnim(id) end
end)
makeBtn(VR,"■ stop",10,function()
emoteActive=false
if emoteConn then emoteConn:Disconnect(); emoteConn=nil end
local h=getHum()
if h and h.Animator then
for _,t in ipairs(h.Animator:GetPlayingAnimationTracks()) do t:Stop() end
end
end)
makeSpacer(VR,4,11)
makeSection(VR,"quick emotes",12)
for i,e in ipairs({{"Dance","507770239"},{"Laugh","3337294591"},{"Point","3334392772"},{"Cheer","3333462843"}}) do
makeBtn(VR,e[1],12+i,function()
emoteId=e[2]; local id=tonumber(e[2]); if id then playAnim(id) end
end)
end
end
-- Hit effects input handler
UIS.InputBegan:Connect(function(input,gpe)
if gpe then return end
if input.UserInputType~=Enum.UserInputType.MouseButton1 then return end
local char=player.Character
if not (char and char:FindFirstChildOfClass("Tool")) then return end
local tgt=mouse.Target; if not tgt then return end
if hitSoundActive then
local s=Instance.new("Sound"); s.SoundId=hitSoundId; s.Volume=0.8; s.Parent=SG; s:Play()
task.delay(3,function() pcall(function() s:Destroy() end) end)
end
if hitEffectActive then
local hp=Instance.new("Part"); hp.Size=Vector3.new(0.3,0.3,0.3)
hp.CFrame=mouse.Hit; hp.Anchored=true; hp.Transparency=1
hp.CanCollide=false; hp.Parent=workspace
local pe=Instance.new("ParticleEmitter"); pe.Texture="rbxassetid://241837872"
pe.Lifetime=NumberRange.new(0.4); pe.Rate=40; pe.Speed=NumberRange.new(5); pe.Parent=hp
task.delay(0.25,function() pe.Rate=0 end)
task.delay(0.8,function() pcall(function() hp:Destroy() end) end)
end
if hitFlashActive then
local ov=Instance.new("Frame"); ov.Size=UDim2.new(1,0,1,0)
ov.BackgroundColor3=Color3.fromRGB(255,240,100); ov.BackgroundTransparency=0.5
ov.ZIndex=999; ov.BorderSizePixel=0; ov.Parent=SG
TweenService:Create(ov,TweenInfo.new(0.12),{BackgroundTransparency=1}):Play()
task.delay(0.15,function() pcall(function() ov:Destroy() end) end)
end
end)
-- ══════════════════════════════════════════════════
-- SETTINGS PANEL
-- ══════════════════════════════════════════════════
local SPanel=Instance.new("Frame")
SPanel.Size=UDim2.new(1,0,1,-26); SPanel.Position=UDim2.new(0,0,0,26)
SPanel.BackgroundColor3=T.BGDeep; SPanel.BorderSizePixel=0
SPanel.Visible=false; SPanel.ZIndex=40; SPanel.Parent=Main
local SScroll=Instance.new("ScrollingFrame")
SScroll.Size=UDim2.new(1,0,1,0); SScroll.BackgroundTransparency=1
SScroll.BorderSizePixel=0; SScroll.ScrollBarThickness=2
SScroll.ScrollBarImageColor3=T.Accent; SScroll.CanvasSize=UDim2.new(0,0,0,0)
SScroll.AutomaticCanvasSize=Enum.AutomaticSize.Y
SScroll.ScrollingDirection=Enum.ScrollingDirection.Y; SScroll.Parent=SPanel
Instance.new("UIListLayout",SScroll).Padding=UDim.new(0,6)
local sp=Instance.new("UIPadding"); sp.PaddingLeft=UDim.new(0,14); sp.PaddingRight=UDim.new(0,14)
sp.PaddingTop=UDim.new(0,10); sp.PaddingBottom=UDim.new(0,10); sp.Parent=SScroll
local function sLbl(txt,col)
local l=Instance.new("TextLabel"); l.Size=UDim2.new(1,0,0,16)
l.BackgroundTransparency=1; l.Text=txt; l.TextColor3=col or T.SubText
l.TextSize=10; l.Font=Enum.Font.GothamBold
l.TextXAlignment=Enum.TextXAlignment.Left; l.Parent=SScroll
end
sLbl("color theme",T.Accent)
local themes={
{"Blue (default)",Color3.fromRGB(50,120,255), Color3.fromRGB(18,20,30)},
{"Red", Color3.fromRGB(200,40,40), Color3.fromRGB(18,10,10)},
{"Green", Color3.fromRGB(40,200,80), Color3.fromRGB(10,18,12)},
{"Purple", Color3.fromRGB(140,50,220), Color3.fromRGB(14,10,20)},
{"Orange", Color3.fromRGB(220,110,30), Color3.fromRGB(18,12,8)},
{"Cyan", Color3.fromRGB(0,190,210), Color3.fromRGB(8,14,16)},
{"Dark", Color3.fromRGB(80,80,80), Color3.fromRGB(6,6,8)},
}
local function applyTheme(acc,bg)
T.Accent=acc; T.BG=bg
T.AccentDim=Color3.new(acc.R*0.6,acc.G*0.6,acc.B*0.6)
T.TabActive=T.AccentDim; T.CheckOn=acc; T.SliderFill=acc
Main.BackgroundColor3=bg; mainStroke.Color=Color3.new(acc.R*0.3,acc.G*0.3,acc.B*0.3)
if activeTopTab then topTabBtns[activeTopTab].BackgroundColor3=T.TabActive end
end
for _,th in ipairs(themes) do
local pb=Instance.new("TextButton"); pb.Size=UDim2.new(1,0,0,24)
pb.BackgroundColor3=Color3.new(th[2].R*0.25,th[2].G*0.25,th[2].B*0.25)
pb.BorderSizePixel=0; pb.Text=th[1]; pb.TextColor3=T.Text
pb.TextSize=10; pb.Font=Enum.Font.Gotham; pb.AutoButtonColor=false; pb.Parent=SScroll
Instance.new("UICorner",pb).CornerRadius=UDim.new(0,3)
Instance.new("UIStroke",pb).Color=th[2]
pb.MouseButton1Click:Connect(function() applyTheme(th[2],th[3]) end)
end
sLbl("window size",T.SubText)
for _,sz in ipairs({{"Small",520,380},{"Medium",640,440},{"Large",740,500}}) do
local sb=Instance.new("TextButton"); sb.Size=UDim2.new(1,0,0,24)
sb.BackgroundColor3=T.Panel; sb.BorderSizePixel=0; sb.Text=sz[1]
sb.TextColor3=T.SubText; sb.TextSize=10; sb.Font=Enum.Font.Gotham
sb.AutoButtonColor=false; sb.Parent=SScroll
Instance.new("UICorner",sb).CornerRadius=UDim.new(0,3)
Instance.new("UIStroke",sb).Color=T.PanelBorder
sb.MouseButton1Click:Connect(function() Main.Size=UDim2.new(0,sz[2],0,sz[3]) end)
end
local settingsOpen=false
SettingsBtn.MouseButton1Click:Connect(function()
settingsOpen=not settingsOpen
SPanel.Visible=settingsOpen; TabBar.Visible=not settingsOpen
ContentHost.Visible=not settingsOpen
SettingsBtn.Text=settingsOpen and "close" or "cfg"
end)
print("[Skiddingly] Loaded — END to toggle")
print(" Tabs: ragebot | character | world | esp | visuals")
print(" Ragebot: orbit auto-fire + silent aim | Desync: character tab | World: screen color fixed")



doesnt work for da hood yet im fixing it dw