
KeylessUniversal

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local VirtualInputManager = game:GetService("VirtualInputManager")
local SCRIPT_VERSION = 1
local function createWaitingText()
local playerGui = Players.LocalPlayer:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "WaitingGui"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
screenGui.Parent = playerGui
local waitingLabel = Instance.new("TextLabel")
waitingLabel.Size = UDim2.new(0, 400, 0, 60)
waitingLabel.Position = UDim2.new(0.5, -200, 0.5, -30)
waitingLabel.BackgroundTransparency = 1
waitingLabel.Text = "waiting for sonic"
waitingLabel.TextSize = 36
waitingLabel.Font = Enum.Font.GothamBold
waitingLabel.TextScaled = false
waitingLabel.Parent = screenGui
local glow = Instance.new("ImageLabel")
glow.Size = UDim2.new(1, 20, 1, 20)
glow.Position = UDim2.new(0, -10, 0, -10)
glow.BackgroundTransparency = 1
glow.Image = "rbxassetid://5028857082"
glow.ImageColor3 = Color3.new(1, 1, 1)
glow.ImageTransparency = 0.5
glow.ZIndex = waitingLabel.ZIndex - 1
glow.Parent = waitingLabel
local hue = 0
local connection
connection = RunService.Heartbeat:Connect(function()
hue = (hue + 0.01) % 1
local color = Color3.fromHSV(hue, 1, 1)
waitingLabel.TextColor3 = color
glow.ImageColor3 = color
end)
return screenGui, connection
end
local function waitForSonic()
local waitingGui, connection = createWaitingText()
while true do
local found = false
for _, player in Players:GetPlayers() do
local path = workspace:FindFirstChild("Players")
if path then
local playerFolder = path:FindFirstChild(player.Name)
if playerFolder and playerFolder:FindFirstChild("Dodges") then
found = true
break
end
end
end
if found then
if connection then connection:Disconnect() end
if waitingGui then waitingGui:Destroy() end
return
end
task.wait(0.1)
end
end
waitForSonic()
local function playChaosEmeraldIntro(loadRestCallback)
local player = Players.LocalPlayer
local char = player.Character or player.CharacterAdded:Wait()
local rootPart = char:WaitForChild("HumanoidRootPart")
local chaosEmeraldsId = 127338011222921
local success, objects = pcall(game.GetObjects, game, "rbxassetid://" .. chaosEmeraldsId)
if not success or #objects == 0 then
warn("FTL CHAOS EMERALDS — saltando intro")
if loadRestCallback then loadRestCallback() end
return
end
local chaosModel = objects[1]:Clone()
chaosModel.Name = "ChaosEmeraldsIntro"
chaosModel.Parent = workspace
local emeralds = {}
for _, obj in ipairs(chaosModel:GetDescendants()) do
if obj:IsA("MeshPart") then
table.insert(emeralds, obj)
obj.CanCollide = false
obj.Anchored = false
end
end
local radius = 8
local angleStep = (2 * math.pi) / #emeralds
for i, emerald in ipairs(emeralds) do
local angle = i * angleStep
local x = math.cos(angle) * radius
local z = math.sin(angle) * radius
emerald.Position = rootPart.Position + Vector3.new(x, 2, z)
end
local spinSpeed = 0.2
local maxSpinSpeed = 3
local spinAcceleration = 0.6
local spinTime = 0
local maxSpinTime = 10
local spinConnection
spinConnection = RunService.Heartbeat:Connect(function(deltaTime)
spinTime += deltaTime
if spinSpeed < maxSpinSpeed then
spinSpeed = math.min(spinSpeed + spinAcceleration * deltaTime, maxSpinSpeed)
end
for i, emerald in ipairs(emeralds) do
local angle = (i * angleStep) + (spinTime * spinSpeed)
local x = math.cos(angle) * radius
local z = math.sin(angle) * radius
emerald.Position = rootPart.Position + Vector3.new(x, 2, z)
end
if spinTime >= maxSpinTime then
spinConnection:Disconnect()
for _, emerald in ipairs(emeralds) do
local targetPos = rootPart.Position + Vector3.new(0, 1, 0)
local tween = TweenService:Create(emerald, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
Position = targetPos
})
tween:Play()
end
task.wait(0.4)
local thunderSound = workspace:FindFirstChild("LMSThunder")
if thunderSound then
thunderSound:Play()
end
local playerGui = player:WaitForChild("PlayerGui")
local flashGui = Instance.new("ScreenGui")
flashGui.Name = "TransformationFlash"
flashGui.ResetOnSpawn = false
flashGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
flashGui.Parent = playerGui
local flashFrame = Instance.new("Frame")
flashFrame.Size = UDim2.new(1, 0, 1, 0)
flashFrame.Position = UDim2.new(0, 0, 0, 0)
flashFrame.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
flashFrame.BackgroundTransparency = 1
flashFrame.BorderSizePixel = 0
flashFrame.Parent = flashGui
local flashIn = TweenService:Create(flashFrame, TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
BackgroundTransparency = 0
})
local flashOut = TweenService:Create(flashFrame, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
BackgroundTransparency = 1
})
flashIn:Play()
flashIn.Completed:Connect(function()
flashOut:Play()
flashOut.Completed:Connect(function()
flashGui:Destroy()
end)
end)
task.wait(0.5)
if chaosModel and chaosModel.Parent then
chaosModel:Destroy()
end
if loadRestCallback then
loadRestCallback()
end
end
end)
end
local function loadRest()
local setupViewport = nil
task.spawn(function()
local targetId = "rbxassetid://136212496176401"
local replacementId = "rbxassetid://139781718376707"
local thunderSound = workspace:FindFirstChild("LMSThunder")
if not thunderSound then
thunderSound = Instance.new("Sound")
thunderSound.Name = "LMSThunder"
thunderSound.SoundId = "rbxassetid://6734393210"
thunderSound.Volume = 1
thunderSound.Parent = workspace
end
local playerGui = Players.LocalPlayer:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "ThunderstrikeEffect"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
screenGui.Parent = playerGui
local flashFrame = Instance.new("Frame")
flashFrame.Size = UDim2.new(1, 0, 1, 0)
flashFrame.Position = UDim2.new(0, 0, 0, 0)
flashFrame.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
flashFrame.BackgroundTransparency = 1
flashFrame.BorderSizePixel = 0
flashFrame.Parent = screenGui
local function createLightningBolt()
local lightning = Instance.new("Frame")
lightning.BorderSizePixel = 0
lightning.BackgroundColor3 = Color3.fromRGB(200, 200, 255)
lightning.Parent = screenGui
local startX = math.random(0, 1)
local startY = 0
local endX = startX + (math.random(-0.3, 0.3))
local endY = 1
local currentX = startX
local currentY = startY
for i = 1, 5 do
local nextX = currentX + (endX - startX) / 5 + (math.random(-0.1, 0.1))
local nextY = currentY + (endY - startY) / 5
local segment = Instance.new("Frame")
segment.BorderSizePixel = 0
segment.BackgroundColor3 = Color3.fromRGB(200, 200, 255)
local length = math.sqrt((nextX - currentX)^2 + (nextY - currentY)^2)
local angle = math.atan2(nextY - currentY, nextX - currentX)
segment.Size = UDim2.new(0, length * screenGui.AbsoluteSize.X, 0, math.random(2, 6))
segment.Position = UDim2.new(currentX, 0, currentY, 0)
segment.Rotation = math.deg(angle)
segment.Parent = lightning
currentX = nextX
currentY = nextY
end
return lightning
end
local function thunderstrike()
thunderSound:Play()
local lightnings = {}
for i = 1, math.random(2, 4) do
local lightning = createLightningBolt()
table.insert(lightnings, lightning)
end
local flashIn = TweenService:Create(flashFrame, TweenInfo.new(0.05, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
BackgroundTransparency = 0
})
local flashOut = TweenService:Create(flashFrame, TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
BackgroundTransparency = 1
})
flashIn:Play()
flashIn.Completed:Connect(function()
flashOut:Play()
end)
task.delay(0.1, function()
for _, lightning in ipairs(lightnings) do
if lightning and lightning.Parent then
lightning:Destroy()
end
end
end)
end
local wasPlaying = false
while true do
local theme = workspace:FindFirstChild("Assets") and workspace.Assets:FindFirstChild("Songs") and workspace.Assets.Songs:FindFirstChild("Theme80s")
if theme then
if theme.SoundId == targetId then
theme.SoundId = replacementId
theme.Volume = 2
theme.Looped = true
theme.TimePosition = 1
theme.PlaybackSpeed = 0.99
theme:Play()
end
if theme.SoundId == replacementId and theme.IsPlaying then
if theme.TimePosition >= theme.TimeLength - 0.2 then
theme.TimePosition = 1
end
end
local isPlaying = theme.IsPlaying
if isPlaying and not wasPlaying then
thunderstrike()
end
wasPlaying = isPlaying
end
task.wait(0.2)
end
end)
task.spawn(function()
local LMSVoices = workspace:FindFirstChild("Trollface laugh")
if not LMSVoices then
LMSVoices = Instance.new("Sound")
LMSVoices.Name = "LMSVoices"
end
LMSVoices.Volume = 0.8
LMSVoices.PlaybackSpeed = 1.1
LMSVoices.Parent = workspace
local playerGui = Players.LocalPlayer:WaitForChild("PlayerGui")
local survivorsGui = Instance.new("ScreenGui")
survivorsGui.Name = "SurvivorsLMS"
survivorsGui.ResetOnSpawn = false
survivorsGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
survivorsGui.Parent = playerGui
local isMobile = UserInputService.TouchEnabled and not UserInputService.KeyboardEnabled
task.wait(0.1)
end)
local player = Players.LocalPlayer
local char = player.Character or player.CharacterAdded:Wait()
local rootPart = char:WaitForChild("HumanoidRootPart")
local humanoid = char:WaitForChild("Humanoid")
local overrideVisual = workspace:FindFirstChild("Players") and workspace.Players:FindFirstChild(player.Name)
task.spawn(function()
local survivorHP = player.PlayerGui
:WaitForChild("Round", 30)
:WaitForChild("Game", 30)
:WaitForChild("SurvivorHP", 30)
if not survivorHP then return end
local healthLabel = survivorHP:FindFirstChild("health", true)
if not healthLabel then return end
local DISPLAY_MAX = 2233722036854772000
local function syncHP(hum)
if not hum or not hum.Parent then return end
local maxHP = hum.MaxHealth
if maxHP <= 0 then return end
local pct = hum.Health / maxHP
local display = math.floor(pct * DISPLAY_MAX)
healthLabel.Text = "x" .. display
end
humanoid:GetPropertyChangedSignal("Health"):Connect(function()
syncHP(humanoid)
end)
player.CharacterAdded:Connect(function(newChar)
local newHumanoid = newChar:WaitForChild("Humanoid", 5)
if not newHumanoid then return end
newHumanoid:GetPropertyChangedSignal("Health"):Connect(function()
syncHP(newHumanoid)
end)
syncHP(newHumanoid)
end)
syncHP(humanoid)
end)
player.CharacterAdded:Connect(function(newChar)
char = newChar
rootPart = char:WaitForChild("HumanoidRootPart")
humanoid = char:WaitForChild("Humanoid")
end)
local bodyHue = 0
local excludedBodyNames = {
belly = true, muzzl = true, nose = true,
eye1 = true, eye2 = true, eyes = true,
LArm1=true, LArm2=true, LArm3=true, LArm4=true, LArm5=true, LSleeve=true,
RArm1=true, RArm2=true, RArm3=true, RArm4=true, RArm5=true, RSleeve=true,
["Left Hand"]=true, ["Right Hand"]=true,
LThumb1=true, LThumb2=true, RThumb1=true, RThumb2=true,
LIndex1=true, LIndex2=true, RIndex1=true, RIndex2=true,
LMiddle1=true, LMiddle2=true, RMiddle1=true, RMiddle2=true,
LPinky1=true, LPinky2=true, RPinky1=true, RPinky2=true,
LFoot=true, RFoot=true,
["Sphere.003"]=true, ["Sphere.006"]=true, ["Sphere.007"]=true,
["Sphere.010"]=true, ["Sphere.017"]=true, ["Sphere.030"]=true,
}
local belly = char:WaitForChild("belly", 10)
local bellyLight = nil
if belly then
if belly:FindFirstChildOfClass("PointLight") then belly:FindFirstChildOfClass("PointLight"):Destroy() end
bellyLight = Instance.new("PointLight")
bellyLight.Name = "HyperGlow"
bellyLight.Brightness = 2.5
bellyLight.Range = 30
bellyLight.Shadows = true
bellyLight.Parent = belly
end
local currentColor = Color3.fromHSV(0, 0.73, 1)
RunService.Heartbeat:Connect(function(dt)
bodyHue = (bodyHue + dt * 0.4) % 1
local targetColor = Color3.fromHSV(bodyHue, 0.88, 1)
currentColor = currentColor:Lerp(targetColor, dt * 2.5)
local rainbow = currentColor
for _, d in ipairs(char:GetDescendants()) do
if d:IsA("BasePart") and not excludedBodyNames[d.Name] then
d.Color = rainbow
d.Material = Enum.Material.Neon
elseif d:IsA("Trail") or d:IsA("Beam") then
d.Enabled = true
d.Color = ColorSequence.new(rainbow)
d.LightEmission = 0.1
d.Brightness = 0.5
elseif d:IsA("ParticleEmitter") then
d.Color = ColorSequence.new(rainbow)
elseif d:IsA("PointLight") and d.Name ~= "HyperGlow" then
d.Color = rainbow
end
end
local overrideColorMap = {
LArm1=Color3.fromRGB(255,193,130), LArm2=Color3.fromRGB(255,193,130),
LArm3=Color3.fromRGB(255,193,130), LArm4=Color3.fromRGB(255,193,130),
LArm5=Color3.fromRGB(255,193,130),
RArm1=Color3.fromRGB(255,193,130), RArm2=Color3.fromRGB(255,193,130),
RArm3=Color3.fromRGB(255,193,130), RArm4=Color3.fromRGB(255,193,130),
RArm5=Color3.fromRGB(255,193,130),
muzzl=Color3.fromRGB(255,193,130), belly=Color3.fromRGB(255,193,130),
["Sphere.017"]=Color3.fromRGB(255,193,130), ["Sphere.030"]=Color3.fromRGB(255,193,130),
nose=Color3.fromRGB(17,17,17),
RFoot=Color3.fromRGB(196,25,34), LFoot=Color3.fromRGB(196,25,34),
["Sphere.003"]=Color3.fromRGB(248,248,248), ["Sphere.006"]=Color3.fromRGB(248,248,248),
["Sphere.007"]=Color3.fromRGB(248,248,248), ["Sphere.010"]=Color3.fromRGB(248,248,248),
LSleeve=Color3.fromRGB(248,248,248), RSleeve=Color3.fromRGB(248,248,248),
LIndex1=Color3.fromRGB(248,248,248), LIndex2=Color3.fromRGB(248,248,248),
LMiddle1=Color3.fromRGB(248,248,248), LMiddle2=Color3.fromRGB(248,248,248),
LPinky1=Color3.fromRGB(248,248,248), LPinky2=Color3.fromRGB(248,248,248),
LThumb1=Color3.fromRGB(248,248,248), LThumb2=Color3.fromRGB(248,248,248),
["Left Hand"]=Color3.fromRGB(248,248,248),
RIndex1=Color3.fromRGB(248,248,248), RIndex2=Color3.fromRGB(248,248,248),
RMiddle1=Color3.fromRGB(248,248,248), RMiddle2=Color3.fromRGB(248,248,248),
RPinky1=Color3.fromRGB(248,248,248), RPinky2=Color3.fromRGB(248,248,248),
RThumb1=Color3.fromRGB(248,248,248), RThumb2=Color3.fromRGB(248,248,248),
["Right Hand"]=Color3.fromRGB(248,248,248),
eyes=Color3.fromRGB(248,248,248),
}
if overrideVisual and overrideVisual.Parent then
for _, d in ipairs(overrideVisual:GetDescendants()) do
if d:IsA("BasePart") then
local fixedColor = overrideColorMap[d.Name]
if fixedColor then
d.Color = fixedColor
d.Material = Enum.Material.SmoothPlastic
elseif not excludedBodyNames[d.Name] then
d.Color = rainbow
d.Material = Enum.Material.Neon
end
elseif d:IsA("ParticleEmitter") then
d.Color = ColorSequence.new(rainbow)
elseif d:IsA("Trail") or d:IsA("Beam") then
d.Enabled = true
d.Color = ColorSequence.new(rainbow)
d.LightEmission = 0.3
d.Brightness = 3
end
end
end
if bellyLight and bellyLight.Parent then
bellyLight.Color = rainbow
end
end)
local flying = false
RunService.Stepped:Connect(function(_,delta)
if not flying then
if humanoid.MoveDirection.Magnitude > 0 then
char:PivotTo(char:GetPivot() + humanoid.MoveDirection * delta * 20)
end
end
end)
local playerGui = player:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "BronzeFlyGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui
local isMobile = UserInputService.TouchEnabled and not UserInputService.KeyboardEnabled
local bar = Instance.new("Frame")
if isMobile then
bar.Size = UDim2.new(0,144,0,192)
bar.Position = UDim2.new(0,8,0.5,-96 - 40)
else
bar.Size = UDim2.new(0,300,0,440)
bar.Position = UDim2.new(0,20,0.5,-220)
end
bar.BackgroundTransparency = 1
bar.Parent = screenGui
local function createButton(x,y,color,name,key)
local btn = Instance.new("ImageButton")
if isMobile then
btn.Size = UDim2.new(0,32,0,32)
btn.Position = UDim2.new(0,x,0,y)
else
btn.Size = UDim2.new(0,80,0,80)
btn.Position = UDim2.new(0,x,0,y)
end
btn.BackgroundTransparency = 1
btn.Image = "rbxassetid://72410974345101"
btn.ImageColor3 = color
btn.Parent = bar
local nameLbl = Instance.new("TextLabel")
nameLbl.Size = UDim2.new(1,0,0.3,0)
nameLbl.Position = UDim2.new(0,0,0.9,0)
nameLbl.BackgroundTransparency = 1
nameLbl.Text = name
nameLbl.TextColor3 = color
nameLbl.Font = Enum.Font.GothamBold
nameLbl.TextScaled = true
nameLbl.Parent = btn
local cdLbl = Instance.new("TextLabel")
cdLbl.Size = UDim2.new(1,0,0.5,0)
cdLbl.Position = UDim2.new(0.5,0,0.1,0)
cdLbl.AnchorPoint = Vector2.new(0.5,0.5)
cdLbl.BackgroundTransparency = 1
cdLbl.Text = ""
cdLbl.TextColor3 = Color3.fromRGB(255,0,0)
cdLbl.Font = Enum.Font.GothamBold
cdLbl.TextScaled = true
cdLbl.Rotation = 45
cdLbl.Parent = btn
local keyLbl = Instance.new("TextLabel")
keyLbl.Size = UDim2.new(1,0,0.25,0)
keyLbl.Position = UDim2.new(0,0,-0.2,0)
keyLbl.BackgroundTransparency = 1
keyLbl.Text = key
keyLbl.TextColor3 = color
keyLbl.Font = Enum.Font.GothamBold
keyLbl.TextScaled = true
keyLbl.TextXAlignment = Enum.TextXAlignment.Left
keyLbl.Parent = btn
return btn, cdLbl, nameLbl
end
local dropButton, dropCd
local lungeButton, lungeCd, lungeName
local airstrikeButton, airstrikeCd
local speedButton, speedCd
local ultimateButton, ultimateCd
local stairwayButton, stairwayCd
local flyToggleButton, flyToggleName
if isMobile then
local buttonData = {
{Color3.fromRGB(0,255,0), "Fake Dropdash (X)", "X"},
{Color3.fromRGB(255,215,0), "Airstrike (G)", "G"},
{Color3.fromRGB(255,0,0), "Speed Blitz (R)", "R"},
{Color3.fromRGB(255,255,50), "Ultimate (T)", "T"},
{Color3.fromRGB(50,50,50), "Fortnite (H)", "H"},
}
local buttonObjs = {}
local paddingX = 4
local paddingY = 4
local buttonsPerRow = 3
for i = 1, #buttonData do
local row = math.floor((i-1)/buttonsPerRow)
local col = (i-1)%buttonsPerRow
local x = col * (32 + paddingX)
local y = row * (32 + paddingY)
local color, name, key = buttonData[i][1], buttonData[i][2], buttonData[i][3]
local btn, cdLbl, nameLbl = createButton(x, y, color, name, key)
table.insert(buttonObjs, {btn, cdLbl, nameLbl})
if i == 1 then dropButton, dropCd = btn, cdLbl
elseif i == 2 then airstrikeButton, airstrikeCd = btn, cdLbl
elseif i == 3 then speedButton, speedCd = btn, cdLbl
elseif i == 4 then ultimateButton, ultimateCd = btn, cdLbl
elseif i == 5 then stairwayButton, stairwayCd = btn, cdLbl
end
end
local flyBtnX = (2 + 1) * (32 + paddingX)
local flyBtnY = math.floor(1/buttonsPerRow) * (32 + paddingY)
flyToggleButton, _, flyToggleName = createButton(flyBtnX, flyBtnY, Color3.fromRGB(0,120,255), "Fly: OFF", "")
lungeButton = Instance.new("ImageButton")
lungeButton.Size = UDim2.new(0, 40, 0, 40)
lungeButton.Position = UDim2.new(1, -56, 0.5, -20)
lungeButton.AnchorPoint = Vector2.new(0,0)
lungeButton.BackgroundTransparency = 1
lungeButton.Image = "rbxassetid://72410974345101"
lungeButton.ImageColor3 = Color3.fromRGB(160,32,240)
lungeButton.Parent = screenGui
lungeName = Instance.new("TextLabel")
lungeName.Size = UDim2.new(1,0,0.3,0)
lungeName.Position = UDim2.new(0,0,0.9,0)
lungeName.BackgroundTransparency = 1
lungeName.Text = "Lunge"
lungeName.TextColor3 = Color3.fromRGB(160,32,240)
lungeName.Font = Enum.Font.GothamBold
lungeName.TextScaled = true
lungeName.Parent = lungeButton
lungeCd = Instance.new("TextLabel")
lungeCd.Size = UDim2.new(1,0,0.5,0)
lungeCd.Position = UDim2.new(0.5,0,0.1,0)
lungeCd.AnchorPoint = Vector2.new(0.5,0.5)
lungeCd.BackgroundTransparency = 1
lungeCd.Text = ""
lungeCd.TextColor3 = Color3.fromRGB(255,0,0)
lungeCd.Font = Enum.Font.GothamBold
lungeCd.TextScaled = true
lungeCd.Rotation = 45
lungeCd.Parent = lungeButton
else
dropButton, dropCd = createButton(0, 0, Color3.fromRGB(0,255,0), "Fake Dropdash (X)", "X")
lungeButton, lungeCd, lungeName = createButton(100, 0, Color3.fromRGB(160,32,240), "Lunge: OFF (V)", "V")
airstrikeButton, airstrikeCd = createButton(100, 90, Color3.fromRGB(255,215,0), "Airstrike (G)", "G")
speedButton, speedCd = createButton(200, 90, Color3.fromRGB(255,0,0), "Speed Blitz (R)", "R")
ultimateButton, ultimateCd = createButton(200, 0, Color3.fromRGB(255,255,50), "Ultimate (T)", "T")
stairwayButton, stairwayCd = createButton(100, 270, Color3.fromRGB(50,50,50), "Fortnite (H)", "H")
end
local CONFIG = {
AirstrikeCooldown = 25,
SpeedBlitzCooldown = 35,
BlitzDuration = 3,
AirstrikeSpamDuration = 0.5,
FloatHeight = 90,
FlyDuration = 15,
FlyCooldown = 25,
FakeDropdashDuration = 10,
FakeDropdashCooldown = 25,
LungeDistance = 45,
LungeDuration = 0.20,
LungeCooldown = 1,
UltimateDuration = 35,
UltimateGravity = 80,
UltimateWalkSpeed = 3,
TeleportOffsetInFront = 0,
StairwayHeight = 20,
StairwayRiseTime = 5,
StairwayDuration = 30,
StairwayCooldown = 0,
StairwaySize = Vector3.new(20, 1, 40),
StairwayWedgeAngle = 45
}
local airstrikeCooldown = false
local speedBlitzCooldown = false
local fakeDropdashActive = false
local fakeDropdashCooldown = false
local lungeToggle = false
local lungeOnCooldown = false
local ultimateActive = false
local ultimateHits = 0
local lastHitTime = 0
local canGainHit = true
local stairwayCooldown = false
humanoid.JumpPower = 250
local function findKiller()
for _, p in Players:GetPlayers() do
if p ~= player and p.Character then
local rage = workspace:FindFirstChild("Players")
and workspace.Players:FindFirstChild(p.Character.Name)
and workspace.Players[p.Character.Name]:FindFirstChild("Rage")
local sphere = workspace:FindFirstChild("Players")
and workspace.Players:FindFirstChild(p.Character.Name)
and workspace.Players[p.Character.Name]:FindFirstChild("Sphere.046")
local mines = workspace:FindFirstChild("Players")
and workspace.Players:FindFirstChild(p.Character.Name)
and workspace.Players[p.Character.Name]:FindFirstChild("Mines")
if rage or sphere or mines then
return p.Character.HumanoidRootPart
end
end
end
return nil
end
local killerHighlight = nil
local function highlightKillerRed()
if killerHighlight then killerHighlight:Destroy() end
local killerRoot = findKiller()
if killerRoot and killerRoot.Parent then
killerHighlight = Instance.new("Highlight")
killerHighlight.FillColor = Color3.fromRGB(255,0,0)
killerHighlight.OutlineColor = Color3.fromRGB(255,100,100)
killerHighlight.FillTransparency = 0.3
killerHighlight.Parent = killerRoot.Parent
end
end
local function doTacticalStairway()
if stairwayCooldown then return end
stairwayCooldown = true
task.spawn(function()
for i = CONFIG.StairwayCooldown, 1, -1 do
stairwayCd.Text = tostring(i)
task.wait(1)
end
stairwayCd.Text = ""
stairwayCooldown = false
end)
local spawnPos = rootPart.Position + rootPart.CFrame.LookVector * 10
local wedge = Instance.new("WedgePart")
wedge.Name = "TacticalStairway"
wedge.Material = Enum.Material.DiamondPlate
wedge.Color = Color3.fromRGB(40, 40, 40)
wedge.Size = CONFIG.StairwaySize
wedge.Anchored = true
wedge.CanCollide = true
wedge.TopSurface = Enum.SurfaceType.Smooth
wedge.BottomSurface = Enum.SurfaceType.Smooth
wedge.Parent = workspace
local cf = CFrame.new(spawnPos)
* CFrame.Angles(0, math.rad(360), 0)
* CFrame.Angles(math.rad(CONFIG.StairwayWedgeAngle), 0, 0)
wedge.CFrame = cf
local startTime = tick()
local shakeConn = RunService.Heartbeat:Connect(function()
local elapsed = tick() - startTime
if elapsed >= CONFIG.StairwayRiseTime then
shakeConn:Disconnect()
return
end
local shakeIntensity = (1 - elapsed / CONFIG.StairwayRiseTime) * 2
local shakeX = (math.noise(tick() * 10, 0, 0) - 0.5) * shakeIntensity
local shakeY = (math.noise(0, tick() * 10, 0) - 0.5) * shakeIntensity * 2
local shakeZ = (math.noise(0, 0, tick() * 10) - 0.5) * shakeIntensity
wedge.CFrame = cf * CFrame.new(shakeX, shakeY, shakeZ)
end)
local riseTween = TweenService:Create(
wedge,
TweenInfo.new(CONFIG.StairwayRiseTime, Enum.EasingStyle.Quint, Enum.EasingDirection.Out),
{CFrame = cf + Vector3.new(0, CONFIG.StairwayHeight, 0)}
)
riseTween:Play()
task.delay(CONFIG.StairwayDuration, function()
if wedge and wedge.Parent then
wedge:Destroy()
end
end)
end
rootPart.Touched:Connect(function(hit)
if not ultimateActive and canGainHit and char:FindFirstChild("Spindash") then
local killerRoot = findKiller()
if killerRoot and hit:IsDescendantOf(killerRoot.Parent) and hit.CanCollide then
local now = tick()
if now - lastHitTime >= 0.3 then
lastHitTime = now
ultimateHits += 1
ultimateCd.Text = ultimateHits.."/9"
if ultimateHits >= 9 then
ultimateCd.Text = "READY"
ultimateButton.ImageColor3 = Color3.fromRGB(255,255,100)
end
canGainHit = false
task.delay(0.3, function() canGainHit = true end)
end
end
end
end)
local function activateUltimate()
if ultimateActive or ultimateHits < 9 then return end
ultimateActive = true
ultimateHits = 0
ultimateCd.Text = ""
ultimateButton.ImageColor3 = Color3.fromRGB(255,255,50)
task.spawn(function()
pcall(function()
player.PlayerGui.Round.Game.RemoteFunction:InvokeServer(2)
end)
end)
highlightKillerRed()
local rainbowHighlights = {}
local rainbowConnections = {}
local function createRainbowHighlight(part)
if not part:IsA("BasePart") then return end
local highlight = Instance.new("Highlight")
highlight.Name = "UltimateRainbowOutline"
highlight.Adornee = part
highlight.FillColor = Color3.new(1, 1, 1)
highlight.OutlineColor = Color3.new(1, 1, 1)
highlight.FillTransparency = 1
highlight.OutlineTransparency = 0
highlight.Parent = part
return highlight
end
for _, part in ipairs(char:GetDescendants()) do
if part:IsA("BasePart") then
local highlight = createRainbowHighlight(part)
if highlight then
table.insert(rainbowHighlights, highlight)
end
end
end
for _, highlight in pairs(rainbowHighlights) do
if highlight and highlight.Parent then
local hue = 0
local connection = RunService.Heartbeat:Connect(function()
if not highlight or not highlight.Parent or not ultimateActive then
return
end
hue = (hue + 0.01) % 1
local color = Color3.fromHSV(hue, 1, 1)
highlight.OutlineColor = color
end)
table.insert(rainbowConnections, connection)
end
end
local subtleHl = Instance.new("Highlight", char)
subtleHl.FillColor = Color3.new(1,1,1)
subtleHl.FillTransparency = 0.95
subtleHl.OutlineTransparency = 1
workspace.Gravity = CONFIG.UltimateGravity
CONFIG.LungeCooldown = 0
local walkConn = RunService.Stepped:Connect(function(_, delta)
if not ultimateActive then walkConn:Disconnect() return end
char:PivotTo(char:GetPivot() + humanoid.MoveDirection * delta * CONFIG.UltimateWalkSpeed * 60)
end)
task.spawn(function()
local partsList = {
"Cube.001","Cube.002","Cube.003","Cube.004","Ear1","Ear2","normal",
"Body",
"LFoot1","LFoot2","LFoot3","LFoot4","LFoot5",
"RLeg1","RLeg2","RLeg3","RLeg4","RLeg5",
"left backspike","right backspike","tail"
}
local thingsToChange = {}
for _, name in ipairs(partsList) do
local part = char:FindFirstChild("hed") and char.hed:FindFirstChild(name) or char:FindFirstChild(name)
if not part then
for _, descendant in ipairs(char:GetDescendants()) do
if descendant.Name == name and descendant:IsA("BasePart") then
part = descendant
break
end
end
end
if part and part:IsA("BasePart") then
table.insert(thingsToChange, part)
end
end
if char:FindFirstChild("Spindash") then
for _, obj in char.Spindash:GetDescendants() do
if obj:IsA("BasePart") and obj.Material == Enum.Material.Neon then
table.insert(thingsToChange, obj)
end
end
end
end)
task.spawn(function()
local scaleFactor = 1.1
local originalSizes = {}
for _, part in ipairs(char:GetDescendants()) do
if part:IsA("BasePart") or part:IsA("MeshPart") then
originalSizes[part] = part.Size
TweenService:Create(part, TweenInfo.new(5), {Size = part.Size * scaleFactor}):Play()
end
end
task.wait(CONFIG.UltimateDuration)
for part, origSize in pairs(originalSizes) do
if part.Parent then
TweenService:Create(part, TweenInfo.new(5), {Size = origSize}):Play()
end
end
end)
task.delay(CONFIG.UltimateDuration, function()
ultimateActive = false
if killerHighlight then killerHighlight:Destroy(); killerHighlight = nil end
workspace.Gravity = 196.2
CONFIG.LungeCooldown = 1
for _, highlight in pairs(rainbowHighlights) do
if highlight and highlight.Parent then
highlight:Destroy()
end
end
for _, connection in pairs(rainbowConnections) do
if connection then
connection:Disconnect()
end
end
subtleHl:Destroy()
ultimateCd.Text = "0/9"
if walkConn.Connected then walkConn:Disconnect() end
local partsList = {
"Cube.001","Cube.002","Cube.003","Cube.004","Ear1","Ear2","normal",
"Body",
"LFoot1","LFoot2","LFoot3","LFoot4","LFoot5",
"RLeg1","RLeg2","RLeg3","RLeg4","RLeg5",
"left backspike","right backspike","tail"
}
local thingsToChange = {}
for _, name in ipairs(partsList) do
local part = char:FindFirstChild("hed") and char.hed:FindFirstChild(name) or char:FindFirstChild(name)
if not part then
for _, descendant in ipairs(char:GetDescendants()) do
if descendant.Name == name and descendant:IsA("BasePart") then
part = descendant
break
end
end
end
if part and part:IsA("BasePart") then
table.insert(thingsToChange, part)
end
end
if char:FindFirstChild("Spindash") then
for _, obj in char.Spindash:GetDescendants() do
if obj:IsA("BasePart") and obj.Material == Enum.Material.Neon then
table.insert(thingsToChange, obj)
end
end
end
local tweenInfo = TweenInfo.new(5, Enum.EasingStyle.Linear)
for _, item in ipairs(thingsToChange) do
if item:IsA("BasePart") then
TweenService:Create(item, tweenInfo, {Color = Color3.fromHSV(bodyHue, 0.50, 1)}):Play()
elseif item:IsA("Trail") or item:IsA("Beam") then
TweenService:Create(item, tweenInfo, {Color = ColorSequence.new(Color3.fromHSV(bodyHue, 0.50, 1))}):Play()
end
end
end)
end
local function doAirstrike()
if airstrikeCooldown then return end
airstrikeCooldown = true
task.spawn(function()
for i = CONFIG.AirstrikeCooldown,1,-1 do
airstrikeCd.Text = tostring(i)
task.wait(1)
end
airstrikeCd.Text = ""
airstrikeCooldown = false
end)
task.spawn(function()
pcall(function()
player.PlayerGui.Round.Game.RemoteFunction:InvokeServer(1)
end)
end)
local highlight = Instance.new("Highlight")
highlight.FillColor = Color3.fromHSV(bodyHue, 0.50, 1)
highlight.OutlineColor = Color3.fromHSV(bodyHue, 0.50, 1)
highlight.Parent = char
task.wait(0.6)
if highlight and highlight.Parent then highlight:Destroy() end
local highPos = rootPart.Position + Vector3.new(0, CONFIG.FloatHeight, 0)
TweenService:Create(rootPart, TweenInfo.new(0.7, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {CFrame = CFrame.new(highPos)}):Play()
task.wait(0.7)
local killerRoot = findKiller()
if not killerRoot then humanoid.PlatformStand = false return end
highlightKillerRed()
local touchConn = rootPart.Touched:Connect(function(hit)
if hit and hit.Parent and hit.Parent:FindFirstChild("Humanoid") and hit.Parent.HumanoidRootPart == killerRoot then
task.spawn(function()
local stun = killerRoot.Parent:FindFirstChild("Stun") or killerRoot.Parent:FindFirstChild("Humanoid"):FindFirstChild("Stun")
if stun and stun:IsA("RemoteEvent") then stun:FireServer() end
end)
end
end)
humanoid.PlatformStand = true
local endTime = os.clock() + CONFIG.AirstrikeSpamDuration
local conn = RunService.Heartbeat:Connect(function()
if os.clock() >= endTime then
if conn then conn:Disconnect() end
if touchConn then touchConn:Disconnect() end
humanoid.PlatformStand = false
if killerHighlight then killerHighlight:Destroy(); killerHighlight = nil end
return
end
local frontOffset = killerRoot.CFrame.LookVector * CONFIG.TeleportOffsetInFront
rootPart.CFrame = killerRoot.CFrame + frontOffset
end)
end
local function doSpeedBlitz()
if speedBlitzCooldown then return end
speedBlitzCooldown = true
task.spawn(function()
for i = CONFIG.SpeedBlitzCooldown,1,-1 do
speedCd.Text = tostring(i)
task.wait(1)
end
speedCd.Text = ""
speedBlitzCooldown = false
end)
task.spawn(function()
pcall(function()
player.PlayerGui.Round.Game.RemoteFunction:InvokeServer(1)
end)
end)
local redColor = Color3.fromRGB(255,0,0)
local highlight = Instance.new("Highlight")
highlight.FillColor = redColor
highlight.OutlineColor = redColor
highlight.Parent = char
task.wait(0.5)
highlight:Destroy()
task.wait(0.5)
highlight = Instance.new("Highlight")
highlight.FillColor = redColor
highlight.OutlineColor = redColor
highlight.Parent = char
task.wait(0.5)
highlight:Destroy()
local killerRoot = findKiller()
if not killerRoot then humanoid.PlatformStand = false return end
highlightKillerRed()
local touchConn = rootPart.Touched:Connect(function(hit)
if hit and hit.Parent and hit.Parent:FindFirstChild("Humanoid") and hit.Parent.HumanoidRootPart == killerRoot then
task.spawn(function()
local stun = killerRoot.Parent:FindFirstChild("Stun") or killerRoot.Parent:FindFirstChild("Humanoid"):FindFirstChild("Stun")
if stun and stun:IsA("RemoteEvent") then stun:FireServer() end
end)
end
end)
humanoid.PlatformStand = true
local endTime = os.clock() + CONFIG.BlitzDuration
local conn = RunService.Heartbeat:Connect(function()
if os.clock() >= endTime then
if conn then conn:Disconnect() end
if touchConn then touchConn:Disconnect() end
humanoid.PlatformStand = false
if killerHighlight then killerHighlight:Destroy(); killerHighlight = nil end
return
end
local frontOffset = killerRoot.CFrame.LookVector * CONFIG.TeleportOffsetInFront
local randomOffset = Vector3.new(math.random(-5,5), math.random(0,5), math.random(-5,5))
rootPart.CFrame = killerRoot.CFrame + frontOffset + randomOffset
end)
end
local function doFakeDropdash()
if fakeDropdashActive or fakeDropdashCooldown then return end
fakeDropdashActive = true
fakeDropdashCooldown = true
task.spawn(function()
for i = CONFIG.FakeDropdashCooldown,1,-1 do dropCd.Text = tostring(i) task.wait(1) end
dropCd.Text = ""
fakeDropdashCooldown = false
end)
highlightKillerRed()
local hl = Instance.new("Highlight")
hl.FillColor = Color3.fromRGB(0,255,0)
hl.OutlineColor = Color3.fromRGB(0,255,0)
hl.Parent = char
local anim = Instance.new("Animation")
anim.AnimationId = "rbxassetid://114931311516664"
local track = humanoid:LoadAnimation(anim)
track:Play()
local cam = workspace.CurrentCamera
cam.FieldOfView = 144
if isMobile then
humanoid.WalkSpeed = 16
else
humanoid.WalkSpeed = 0
end
VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.LeftShift, false, game)
VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.W, false, game)
local forwardConn = RunService.Heartbeat:Connect(function(dt)
if not fakeDropdashActive then forwardConn:Disconnect() return end
rootPart.CFrame += rootPart.CFrame.LookVector * 65 * dt
end)
local touchConn = rootPart.Touched:Connect(function(hit)
end)
task.delay(CONFIG.FakeDropdashDuration, function()
fakeDropdashActive = false
VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.LeftShift, false, game)
VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.W, false, game)
hl:Destroy()
track:Stop()
anim:Destroy()
TweenService:Create(cam, TweenInfo.new(0.6), {FieldOfView = 70}):Play()
if forwardConn.Connected then forwardConn:Disconnect() end
touchConn:Disconnect()
humanoid.WalkSpeed = 16
if killerHighlight then killerHighlight:Destroy(); killerHighlight = nil end
end)
end
local function toggleLunge()
lungeToggle = not lungeToggle
lungeName.Text = lungeToggle and "Lunge: ON (V)" or "Lunge: OFF (V)"
end
local function doLunge()
if (isMobile or lungeToggle) and not lungeOnCooldown then
lungeOnCooldown = true
if CONFIG.LungeCooldown > 0 then
task.spawn(function()
for i = CONFIG.LungeCooldown,1,-1 do lungeCd.Text = tostring(i) task.wait(1) end
lungeCd.Text = ""
lungeOnCooldown = false
end)
else
task.delay(0.1, function() lungeOnCooldown = false end)
end
local anim = Instance.new("Animation")
anim.AnimationId = "rbxassetid://116632473951329"
local track = humanoid:LoadAnimation(anim)
track:Play()
local dir = workspace.CurrentCamera.CFrame.LookVector
local target = rootPart.Position + dir * CONFIG.LungeDistance
TweenService:Create(rootPart, TweenInfo.new(CONFIG.LungeDuration, Enum.EasingStyle.Quint), {
CFrame = CFrame.new(target, target + dir)
}):Play()
task.delay(CONFIG.LungeDuration, function()
track:Stop()
anim:Destroy()
end)
end
end
local flymetertext = true
local flyMax = 15
local flyMeter = flyMax
local flySpeed = 0
local flySpeedMax = 150
local flyAccel = 60
local flyDecel = 80
local flyDrainMax = 3
local flyDrainIdle = 0.9 / 3
local flyDrainSpeed = 3
local flyDrainMinSpeed = 100
local flyBarTween = nil
local flyBarAlpha = 0
local flyBarShowTime = 0.3
local flyBarHideTime = 0.4
local jumpHeld = false
local jumpHoldStart = 0
local jumpHoldThreshold = 0.3
local jumpCooldown = false
local flyRegenCooldown = false
local flyRegenCooldownTime = 3
local flyGui = Instance.new("BillboardGui")
flyGui.Name = "FlyMeterGui"
flyGui.ResetOnSpawn = false
flyGui.Adornee = rootPart
if isMobile then
flyGui.Size = UDim2.new(0, 24, 0, 88)
else
flyGui.Size = UDim2.new(0, 60, 0, 220)
end
flyGui.SizeOffset = Vector2.new(0,0)
flyGui.StudsOffset = Vector3.new(-4, 0, 0)
flyGui.AlwaysOnTop = true
flyGui.MaxDistance = 30
flyGui.Parent = char
local flyBarFrame = Instance.new("Frame")
if isMobile then
flyBarFrame.Size = UDim2.new(0, 8, 0, 88)
flyBarFrame.Position = UDim2.new(0, 0, 0.5, -44)
else
flyBarFrame.Size = UDim2.new(0, 24, 0, 220)
flyBarFrame.Position = UDim2.new(0, 0, 0.5, -110)
end
flyBarFrame.BackgroundTransparency = 1
flyBarFrame.AnchorPoint = Vector2.new(0, 0.5)
flyBarFrame.Parent = flyGui
local flyBarBG = Instance.new("Frame")
flyBarBG.Size = UDim2.new(1, 0, 1, 0)
flyBarBG.Position = UDim2.new(0, 0, 0, 0)
flyBarBG.BackgroundColor3 = Color3.fromRGB(30, 30, 60)
flyBarBG.BorderSizePixel = 0
flyBarBG.BackgroundTransparency = 0.5
flyBarBG.Parent = flyBarFrame
local flyBar = Instance.new("Frame")
flyBar.Size = UDim2.new(1, 0, 1, 0)
flyBar.Position = UDim2.new(0, 0, 1, 0)
flyBar.BackgroundColor3 = Color3.fromRGB(0, 120, 255)
flyBar.BorderSizePixel = 0
flyBar.BackgroundTransparency = 0.1
flyBar.Parent = flyBarFrame
local flyBarText = Instance.new("TextLabel")
flyBarText.Size = UDim2.new(1, 0, 0, 16)
flyBarText.Position = UDim2.new(0, 0, 1, 4)
flyBarText.BackgroundTransparency = 1
flyBarText.TextColor3 = Color3.fromRGB(180, 220, 255)
flyBarText.Font = Enum.Font.GothamBold
flyBarText.TextScaled = true
flyBarText.Text = ""
flyBarText.Parent = flyBarFrame
flyBarFrame.Visible = false
flyBar.Size = UDim2.new(1, 0, 1, 0)
flyBar.BackgroundTransparency = 0.1
local function setFlyBarVisible(visible)
if flyBarTween then flyBarTween:Cancel() end
if visible then
flyBarFrame.Visible = true
flyBarTween = TweenService:Create(flyBarFrame, TweenInfo.new(flyBarShowTime, Enum.EasingStyle.Quad), {BackgroundTransparency = 0})
flyBarTween:Play()
else
flyBarTween = TweenService:Create(flyBarFrame, TweenInfo.new(flyBarHideTime, Enum.EasingStyle.Quad), {BackgroundTransparency = 1})
flyBarTween:Play()
task.delay(flyBarHideTime, function()
flyBarFrame.Visible = false
end)
end
end
local function updateFlyBar()
local percent = math.clamp(flyMeter / flyMax, 0, 1)
local barHeight = math.floor(percent * flyBarFrame.AbsoluteSize.Y)
flyBar.Size = UDim2.new(1, 0, percent, 0)
flyBar.Position = UDim2.new(0, 0, 1 - percent, 0)
if flymetertext then
flyBarText.Text = string.format("%.1f / %d", flyMeter, flyMax)
else
flyBarText.Text = ""
end
end
local flyConn = nil
local bv = nil
local bg = nil
local flyInertiaDecel = 6
local function flyStart()
if flying or flyMeter <= 0 then return end
flying = true
setFlyBarVisible(true)
local currentVelocity = rootPart.AssemblyLinearVelocity
local horizontalSpeed = math.sqrt(currentVelocity.X^2 + currentVelocity.Z^2)
flySpeed = math.min(horizontalSpeed, flySpeedMax)
bv = Instance.new("BodyVelocity")
bv.MaxForce = Vector3.new(1e5,1e5,1e5)
bv.Velocity = Vector3.new()
bv.Parent = rootPart
bg = Instance.new("BodyGyro")
bg.MaxTorque = Vector3.new(1e5,1e5,1e5)
bg.P = 1e4
bg.D = 500
bg.CFrame = rootPart.CFrame
bg.Parent = rootPart
flyConn = RunService.RenderStepped:Connect(function(dt)
if not flying then
if flyConn then flyConn:Disconnect() flyConn = nil end
if bv then bv:Destroy() bv = nil end
if bg then bg:Destroy() bg = nil end
setFlyBarVisible(false)
return
end
local cam = workspace.CurrentCamera
local move = Vector3.new()
if isMobile then
local moveDir = humanoid.MoveDirection
if moveDir.Magnitude > 0 then
local camCF = cam.CFrame
local localMove = camCF:VectorToObjectSpace(moveDir)
local forward = camCF.LookVector * -localMove.Z
local right = camCF.RightVector * localMove.X
local up = Vector3.new(0, -localMove.Y, 0)
move = (forward + right + up).Unit
end
else
if UserInputService:IsKeyDown(Enum.KeyCode.W) then move += cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then move -= cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then move -= cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then move += cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then move -= Vector3.new(0,1,0) end
end
local moving = move.Magnitude > 0
if moving then
flySpeed = math.min(flySpeed + flyAccel * dt, flySpeedMax)
bv.Velocity = move * flySpeed
else
flySpeed = math.max(flySpeed - flyDecel * dt, 0)
bv.Velocity = bv.Velocity:Lerp(Vector3.new(), math.clamp(flyInertiaDecel * dt, 0, 1))
end
bg.CFrame = cam.CFrame
local now = tick()
if flying then
local drain = 0
if flySpeed >= flyDrainMinSpeed then
drain = flyDrainSpeed * dt
else
drain = flyDrainIdle * dt
end
flyMeter = math.max(flyMeter - drain, 0)
updateFlyBar()
if flyMeter <= 0 then
flying = false
if not flyRegenCooldown then
flyRegenCooldown = true
task.delay(flyRegenCooldownTime, function()
flyRegenCooldown = false
end)
end
end
end
end)
end
local function smoothDecelerate(lastVelocity)
local decayTime = 0.7
local startTime = tick()
local bvDecel = Instance.new("BodyVelocity")
bvDecel.MaxForce = Vector3.new(1e5,1e5,1e5)
bvDecel.Velocity = lastVelocity
bvDecel.Parent = rootPart
local conn
conn = RunService.RenderStepped:Connect(function()
local elapsed = tick() - startTime
local alpha = math.clamp(1 - (elapsed / decayTime), 0, 1)
bvDecel.Velocity = lastVelocity * alpha
if alpha <= 0 then
if conn then conn:Disconnect() end
bvDecel:Destroy()
end
end)
end
local function flyCancel()
if flying then
flying = false
setFlyBarVisible(false)
if flyConn then flyConn:Disconnect() flyConn = nil end
local lastVelocity = bv and bv.Velocity or rootPart.Velocity
if bv then bv:Destroy() bv = nil end
if bg then bg:Destroy() bg = nil end
if lastVelocity and lastVelocity.Magnitude > 1 then
smoothDecelerate(lastVelocity)
end
end
end
local function rechargeFlyMeter()
task.spawn(function()
while true do
if not flying and flyMeter < flyMax and not flyRegenCooldown then
flyMeter = math.min(flyMeter + flyDrainIdle * 0.5, flyMax)
updateFlyBar()
end
task.wait(0.5)
end
end)
end
rechargeFlyMeter()
local jumpInputActive = false
local jumpInputStart = 0
local function onJumpInputBegan(input, gameProcessed)
if not isMobile and input.UserInputType == Enum.UserInputType.Keyboard and input.KeyCode == Enum.KeyCode.Space then
if not jumpInputActive then
jumpInputActive = true
jumpInputStart = tick()
end
end
end
local function onJumpInputEnded(input, gameProcessed)
if not isMobile and input.UserInputType == Enum.UserInputType.Keyboard and input.KeyCode == Enum.KeyCode.Space then
if jumpInputActive then
jumpInputActive = false
if flying then
flyCancel()
end
end
end
end
UserInputService.InputBegan:Connect(onJumpInputBegan)
UserInputService.InputEnded:Connect(onJumpInputEnded)
if isMobile then
local function updateFlyToggleButton()
if flying then
flyToggleButton.ImageColor3 = Color3.fromRGB(0,200,255)
flyToggleName.Text = "Fly: ON"
else
flyToggleButton.ImageColor3 = Color3.fromRGB(0,120,255)
flyToggleName.Text = "Fly: OFF"
end
end
flyToggleButton.MouseButton1Click:Connect(function()
if flying then
flyCancel()
else
if flyMeter > 0 then
flyStart()
end
end
updateFlyToggleButton()
end)
updateFlyToggleButton()
end
task.spawn(function()
while true do
if not isMobile then
if jumpInputActive and not flying and flyMeter > 0 then
local heldTime = tick() - jumpInputStart
if heldTime >= jumpHoldThreshold then
flyStart()
end
end
if not jumpInputActive and flying then
flyCancel()
end
end
task.wait(0.05)
end
end)
updateFlyBar()
task.spawn(function()
while true do
if flying then
setFlyBarVisible(true)
else
setFlyBarVisible(false)
end
task.wait(0.1)
end
end)
UserInputService.InputBegan:Connect(function(inp, gpe)
if gpe then return end
if inp.KeyCode == Enum.KeyCode.X then doFakeDropdash()
elseif inp.KeyCode == Enum.KeyCode.G then doAirstrike()
elseif inp.KeyCode == Enum.KeyCode.R then doSpeedBlitz()
elseif inp.KeyCode == Enum.KeyCode.V then toggleLunge()
elseif inp.KeyCode == Enum.KeyCode.T then activateUltimate()
elseif inp.KeyCode == Enum.KeyCode.H then doTacticalStairway()
elseif inp.UserInputType == Enum.UserInputType.MouseButton1 and lungeToggle then doLunge()
end
end)
dropButton.MouseButton1Click:Connect(doFakeDropdash)
airstrikeButton.MouseButton1Click:Connect(doAirstrike)
speedButton.MouseButton1Click:Connect(doSpeedBlitz)
if isMobile then
lungeButton.MouseButton1Click:Connect(doLunge)
else
lungeButton.MouseButton1Click:Connect(toggleLunge)
end
ultimateButton.MouseButton1Click:Connect(activateUltimate)
stairwayButton.MouseButton1Click:Connect(doTacticalStairway)
task.spawn(function()
local hed = char:WaitForChild("hed")
local cubes = {"Cube.001", "Cube.002", "Cube.003", "Cube.004"}
for _, name in ipairs(cubes) do
local cube = hed:WaitForChild(name)
cube.Size = cube.Size * Vector3.new(1.2, 1.2, 1.2)
cube.Position = cube.Position - Vector3.new(0, 0, 0)
end
end)
local function replacePlayerFrame()
local playerGui = player:WaitForChild("PlayerGui", 15)
if not playerGui then return end
local roundGui = playerGui:WaitForChild("Round", 15)
if not roundGui then return end
local gameGui = roundGui:WaitForChild("Game", 15)
if not gameGui then return end
local teamsGui = gameGui:WaitForChild("Teams", 15)
if not teamsGui then return end
local playerFrame = nil
for _ = 1, 60 do
playerFrame = teamsGui:FindFirstChild(player.Name)
or teamsGui:FindFirstChild(player.DisplayName)
if playerFrame then break end
task.wait(0.25)
end
if not playerFrame then return end
local frame = playerFrame:FindFirstChild("Frame")
if not frame then return end
local characterContainer = frame:FindFirstChild("Character")
if not characterContainer then return end
characterContainer:ClearAllChildren()
local iconLabel = Instance.new("ImageLabel")
iconLabel.Image = "rbxassetid://115938559084448"
iconLabel.Size = UDim2.new(0.60, 0, 0.60, 0)
iconLabel.Position = UDim2.new(0.5, 0, 0.38, 0)
iconLabel.AnchorPoint = Vector2.new(0.5, 0.5)
iconLabel.BackgroundTransparency = 1
iconLabel.ScaleType = Enum.ScaleType.Fit
iconLabel.Parent = characterContainer
if characterContainer:IsA("GuiObject") then
characterContainer.BackgroundTransparency = 1
end
end
task.spawn(replacePlayerFrame)
task.spawn(function()
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer
local viewportFrame = player.PlayerGui
:WaitForChild("Round", 30)
:WaitForChild("Game", 30)
:WaitForChild("SurvivorHP", 30)
:WaitForChild("ViewportFrame", 30)
local viewportModel = viewportFrame
:WaitForChild("WorldModel", 30)
:WaitForChild("Default", 30)
local viewportHue = 0
local partNames = {
"Cube.001","Cube.002","Cube.003","Cube.004","Ear1","Ear2","normal",
"Body",
"LFoot1","LFoot2","LFoot3","LFoot4","LFoot5",
"RLeg1","RLeg2","RLeg3","RLeg4","RLeg5",
"left backspike","right backspike","tail"
}
local assetId = "105374052611916"
local vpOverrideModel = nil
local function replaceViewportModel()
local ok, objects = pcall(game.GetObjects, game, "rbxassetid://" .. assetId)
if not ok or #objects == 0 then
warn("FF ASSET:", assetId)
return
end
if vpOverrideModel and vpOverrideModel.Parent then
vpOverrideModel:Destroy()
vpOverrideModel = nil
end
local newModel = objects[1]:Clone()
vpOverrideModel = newModel
for _, part in ipairs(viewportModel:GetDescendants()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
part.Transparency = 1
end
end
newModel.Parent = viewportModel
local newHumanoid = newModel:FindFirstChildOfClass("Humanoid")
if newHumanoid then
newHumanoid:Destroy()
end
local viewportRootPart = viewportModel:FindFirstChild("HumanoidRootPart")
if viewportRootPart then
newModel:PivotTo(viewportRootPart.CFrame * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(000), 0))
local primaryPart = newModel.PrimaryPart or newModel:FindFirstChildWhichIsA("BasePart")
if primaryPart then
local weld = Instance.new("WeldConstraint")
weld.Part0 = viewportRootPart
weld.Part1 = primaryPart
weld.Parent = viewportRootPart
end
end
end
local viewportParts = {}
local viewportPartsVersion = 0
local viewportHumanoid = viewportModel:FindFirstChild("Humanoid")
local currentViewportAnimation = nil
local viewportAnimations = {
Idle = {id = "rbxassetid://86229317461320", track = nil, shouldLoop = true},
Walk = {id = "rbxassetid://124016876172487", track = nil, shouldLoop = true},
Run = {id = "rbxassetid://102091744008058", track = nil, shouldLoop = true},
Jump = {id = "rbxassetid://125236763187476", track = nil, shouldLoop = false},
Fall = {id = "rbxassetid://72841784729233", track = nil, shouldLoop = true}
}
local function loadViewportAnimation(animName)
local animData = viewportAnimations[animName]
if not animData or not viewportHumanoid then return nil end
local animation = Instance.new("Animation")
animation.AnimationId = animData.id
local track = viewportHumanoid:LoadAnimation(animation)
track.Looped = animData.shouldLoop
animData.track = track
return track
end
local function playViewportAnimation(animName)
if not viewportHumanoid then return end
for name, animData in pairs(viewportAnimations) do
if animData.track and animData.track.IsPlaying then
animData.track:Stop()
end
end
local animData = viewportAnimations[animName]
if animData then
if not animData.track then
loadViewportAnimation(animName)
end
if animData.track then
animData.track:Play()
end
end
end
local function updateViewportAnimations()
local newAnimation = "Idle"
if viewportHumanoid then
if viewportHumanoid.MoveDirection.Magnitude > 0.1 then
if viewportHumanoid:GetState() == Enum.HumanoidStateType.Running then
if viewportHumanoid.WalkSpeed > 16 then
newAnimation = "Run"
else
newAnimation = "Walk"
end
end
else
local state = viewportHumanoid:GetState()
if state == Enum.HumanoidStateType.Jumping or state == Enum.HumanoidStateType.Freefall then
if state == Enum.HumanoidStateType.Jumping then
newAnimation = "Jump"
else
newAnimation = "Fall"
end
else
newAnimation = "Idle"
end
end
end
if newAnimation ~= currentViewportAnimation then
playViewportAnimation(newAnimation)
currentViewportAnimation = newAnimation
end
end
local function rebuildPartList()
viewportParts = {}
viewportPartsVersion += 1
local nameSet = {}
for _, n in ipairs(partNames) do nameSet[n] = true end
for _, descendant in ipairs(viewportModel:GetDescendants()) do
if descendant:IsA("BasePart") and nameSet[descendant.Name] then
descendant.Material = Enum.Material.Neon
table.insert(viewportParts, descendant)
end
end
local spindash = viewportModel:FindFirstChild("Spindash")
if spindash then
for _, obj in spindash:GetDescendants() do
if obj:IsA("BasePart") then
obj.Material = Enum.Material.Neon
table.insert(viewportParts, obj)
end
end
end
for _, obj in viewportModel:GetDescendants() do
if obj:IsA("Trail") or obj:IsA("Beam") then
table.insert(viewportParts, obj)
end
end
viewportHumanoid = viewportModel:FindFirstChild("Humanoid")
if viewportHumanoid then
for name, _ in pairs(viewportAnimations) do
loadViewportAnimation(name)
end
playViewportAnimation("Idle")
currentViewportAnimation = "Idle"
end
end
setupViewport = function()
task.spawn(function()
local newVF = nil
for _ = 1, 40 do
local pg = player.PlayerGui
local round = pg:FindFirstChild("Round")
local game_ = round and round:FindFirstChild("Game")
local shp = game_ and game_:FindFirstChild("SurvivorHP")
newVF = shp and shp:FindFirstChild("ViewportFrame")
if newVF then break end
task.wait(0.25)
end
if not newVF then return end
viewportFrame = newVF
local newVM = nil
for _ = 1, 40 do
local wm = viewportFrame:FindFirstChild("WorldModel")
if wm then
newVM = wm:FindFirstChild("Default")
if not newVM then
for _, child in ipairs(wm:GetChildren()) do
if child:IsA("Model") then newVM = child break end
end
end
if newVM then break end
end
task.wait(0.25)
end
if newVM then
viewportModel = newVM
replaceViewportModel()
rebuildPartList()
end
end)
end
replaceViewportModel()
rebuildPartList()
viewportModel.DescendantAdded:Connect(function()
task.wait(0.1)
replaceViewportModel()
rebuildPartList()
end)
task.spawn(function()
while task.wait(0.5) do
local viewportHed = viewportModel:FindFirstChild("hed")
if viewportHed then
local eye1 = viewportHed:FindFirstChild("eye1")
local eye2 = viewportHed:FindFirstChild("eye2")
if eye1 then
eye1.Color = Color3.fromRGB(255, 0, 0)
eye1.Material = Enum.Material.Neon
end
if eye2 then
eye2.Color = Color3.fromRGB(255, 0, 0)
eye2.Material = Enum.Material.Neon
end
end
end
end)
local vpSkinParts = {
LArm1=true,LArm2=true,LArm3=true,LArm4=true,LArm5=true,LSleeve=true,
RArm1=true,RArm2=true,RArm3=true,RArm4=true,RArm5=true,RSleeve=true,
["Left Hand"]=true,["Right Hand"]=true,
LThumb1=true,LThumb2=true,RThumb1=true,RThumb2=true,
LIndex1=true,LIndex2=true,RIndex1=true,RIndex2=true,
LMiddle1=true,LMiddle2=true,RMiddle1=true,RMiddle2=true,
LPinky1=true,LPinky2=true,RPinky1=true,RPinky2=true,
}
local SKIN_COLOR = Color3.fromRGB(255, 193, 130)
local vpCurrentColor = Color3.fromHSV(0, 0.65, 1)
RunService.Heartbeat:Connect(function(dt)
viewportHue = (viewportHue + dt * 0.4) % 1
local vpTarget = Color3.fromHSV(viewportHue, 0.65, 1)
vpCurrentColor = vpCurrentColor:Lerp(vpTarget, dt * 2.5)
local rainbow = vpCurrentColor
for _, obj in ipairs(viewportParts) do
if obj and obj.Parent then
if obj:IsA("BasePart") then
if vpSkinParts[obj.Name] then
obj.Color = SKIN_COLOR
obj.Material = Enum.Material.SmoothPlastic
else
obj.Color = rainbow
obj.Material = Enum.Material.Neon
end
elseif obj:IsA("Trail") or obj:IsA("Beam") then
obj.Enabled = true
obj.Color = ColorSequence.new(rainbow)
obj.LightEmission = 0.3
obj.Brightness = 3
end
end
end
end)
viewportModel.DescendantAdded:Connect(function()
task.wait(0.5)
replaceViewportModel()
end)
player.CharacterAdded:Connect(function(newChar)
task.wait(3)
viewportModel = viewportFrame:FindFirstChild("WorldModel") and viewportFrame.WorldModel:FindFirstChild("Default")
if viewportModel then
rebuildPartList()
end
end)
task.spawn(function()
local hasScaled = false
while task.wait(1) do
local hed = viewportModel:FindFirstChild("hed")
if hed and not hasScaled then
local scaled = true
for _, name in ipairs({"Cube.001", "Cube.002", "Cube.003", "Cube.004"}) do
local cube = hed:FindFirstChild(name)
if cube and cube:IsA("BasePart") then
cube.Size = cube.Size * Vector3.new(1.2, 1.2, 1.2)
scaled = scaled and true
end
end
if scaled then
hasScaled = true
end
end
if not hed then
hasScaled = false
end
end
end)
end)
task.spawn(function()
local hed = game.Players.LocalPlayer.Character:WaitForChild("hed", 10)
if not hed then return end
local eye1 = hed:FindFirstChild("eye1")
local eye2 = hed:FindFirstChild("eye2")
if eye1 then eye1.Color = Color3.fromRGB(255, 0, 0) end
if eye2 then eye2.Color = Color3.fromRGB(255, 0, 0) end
end)
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
local animationsToDisable = {
"rbxassetid://106608035337447",
"rbxassetid://91914265832902",
"rbxassetid://138114598643451",
"rbxassetid://123558237797584",
"rbxassetid://128300704291171",
"rbxassetid://83089098813032",
"rbxassetid://124698729597668",
"rbxassetid://76223171782712"
}
local function disableAnimations()
if humanoid and humanoid:FindFirstChild("Animator") then
for _, anim in pairs(humanoid:GetPlayingAnimationTracks()) do
for _, animId in ipairs(animationsToDisable) do
if anim.Animation and anim.Animation.AnimationId == animId then
anim:Stop()
break
end
end
end
end
end
disableAnimations()
RunService.Heartbeat:Connect(disableAnimations)
local ANIMATIONS = {
Idle = {id = "rbxassetid://86229317461320", track = nil, shouldLoop = true},
Walk = {id = "rbxassetid://72886170821280", track = nil, shouldLoop = true},
Run = {id = "rbxassetid://79543048704883", track = nil, shouldLoop = true},
Jump = {id = "rbxassetid://125236763187476", track = nil, shouldLoop = false},
Fall = {id = "rbxassetid://86229317461320", track = nil, shouldLoop = true},
FlyIdle = {id = "rbxassetid://86229317461320", track = nil, shouldLoop = true},
FlySlow = {id = "rbxassetid://86229317461320", track = nil, shouldLoop = true},
FlyFast = {id = "rbxassetid://86229317461320", track = nil, shouldLoop = true}
}
local function loadAnimation(animName)
local animData = ANIMATIONS[animName]
if not animData then return nil end
local animation = Instance.new("Animation")
animation.AnimationId = animData.id
local track = humanoid:LoadAnimation(animation)
track.Looped = animData.shouldLoop
animData.track = track
return track
end
local function playAnimation(animName)
for name, animData in pairs(ANIMATIONS) do
if animData.track and animData.track.IsPlaying then
animData.track:Stop()
end
end
local animData = ANIMATIONS[animName]
if animData then
if not animData.track then
loadAnimation(animName)
end
if animData.track then
animData.track:Play()
end
end
end
local currentAnimation = nil
local function updateAnimations()
if fakeDropdashActive then return end
local newAnimation = nil
if flying then
if flySpeed < 1 then
newAnimation = "FlyIdle"
elseif flySpeed < 45 then
newAnimation = "FlySlow"
else
newAnimation = "FlyFast"
end
else
if humanoid.MoveDirection.Magnitude > 0.1 then
if humanoid:GetState() == Enum.HumanoidStateType.Running then
if humanoid.WalkSpeed > 16 then
newAnimation = "Run"
else
newAnimation = "Walk"
end
end
else
local state = humanoid:GetState()
if state == Enum.HumanoidStateType.Jumping or state == Enum.HumanoidStateType.Freefall then
if state == Enum.HumanoidStateType.Jumping then
newAnimation = "Jump"
else
newAnimation = "Fall"
end
else
newAnimation = "Idle"
end
end
end
if newAnimation and newAnimation ~= currentAnimation then
playAnimation(newAnimation)
currentAnimation = newAnimation
end
end
humanoid.StateChanged:Connect(function(oldState, newState)
updateAnimations()
end)
RunService.Heartbeat:Connect(function()
updateAnimations()
end)
for name, _ in pairs(ANIMATIONS) do
loadAnimation(name)
end
playAnimation("Idle")
local versionGui = Instance.new("ScreenGui")
versionGui.Name = "VersionGui"
versionGui.ResetOnSpawn = false
versionGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
versionGui.Parent = playerGui
local versionLabel = Instance.new("TextLabel")
versionLabel.Size = UDim2.new(0, 100, 0, 20)
versionLabel.Position = UDim2.new(0, 5, 1, -25)
versionLabel.AnchorPoint = Vector2.new(0, 1)
versionLabel.BackgroundTransparency = 1
versionLabel.Text = "SV: " .. SCRIPT_VERSION
versionLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
versionLabel.TextStrokeTransparency = 0
versionLabel.TextStrokeColor3 = Color3.fromRGB(0, 0, 0)
versionLabel.Font = Enum.Font.SourceSansItalic
versionLabel.TextSize = 12
versionLabel.TextXAlignment = Enum.TextXAlignment.Left
versionLabel.Parent = versionGui
player.CharacterAdded:Connect(function(newCharacter)
character = newCharacter
humanoid = character:WaitForChild("Humanoid")
humanoidRootPart = character:WaitForChild("HumanoidRootPart")
local animationsToDisable = {
"rbxassetid://106608035337447",
"rbxassetid://91914265832902",
"rbxassetid://138114598643451",
"rbxassetid://123558237797584",
"rbxassetid://128300704291171",
"rbxassetid://83089098813032",
"rbxassetid://124698729597668",
"rbxassetid://76223171782712"
}
local function disableAnimations()
if humanoid and humanoid:FindFirstChild("Animator") then
for _, anim in pairs(humanoid:GetPlayingAnimationTracks()) do
for _, animId in ipairs(animationsToDisable) do
if anim.Animation and anim.Animation.AnimationId == animId then
anim:Stop()
break
end
end
end
end
end
disableAnimations()
local animDisableConn
animDisableConn = RunService.Heartbeat:Connect(disableAnimations)
character.AncestryChanged:Connect(function()
if not character.Parent then
if animDisableConn then
animDisableConn:Disconnect()
end
end
end)
for name, _ in pairs(ANIMATIONS) do
if ANIMATIONS[name].track then
ANIMATIONS[name].track:Stop()
ANIMATIONS[name].track = nil
end
end
for name, _ in pairs(ANIMATIONS) do
loadAnimation(name)
end
playAnimation("Idle")
local hed = character:FindFirstChild("hed")
if hed then
local joy1 = hed:FindFirstChild("joy1")
if joy1 then
joy1:Destroy()
print("DD JOY1 RS")
end
local joy2 = hed:FindFirstChild("joy2")
if joy2 then
joy2:Destroy()
print("DD JOY2 RS")
end
end
end)
local hed = character:FindFirstChild("hed")
if hed then
local joy1 = hed:FindFirstChild("joy1")
if joy1 then
joy1:Destroy()
print("DD JOY1 I")
end
local joy2 = hed:FindFirstChild("joy2")
if joy2 then
joy2:Destroy()
print("DD JOY2 I")
end
end
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local player = Players.LocalPlayer
local ASSET_ID = 105374052611916
local currentConnection = nil
local function loadAsset(id)
local ok, objects = pcall(game.GetObjects, game, "rbxassetid://" .. id)
if not ok or not objects or #objects == 0 then
return nil
end
return objects[1]:Clone()
end
local currentOverrideMdl = nil
local function setupCharacter(character)
if currentOverrideMdl and currentOverrideMdl.Parent then
currentOverrideMdl:Destroy()
currentOverrideMdl = nil
end
if currentConnection then
currentConnection:Disconnect()
currentConnection = nil
end
local originalParts = {}
for _, v in ipairs(character:GetDescendants()) do
if v:IsA("BasePart") then
table.insert(originalParts, v)
end
end
for _, part in ipairs(originalParts) do
part.Transparency = 1
end
local players_folder = workspace:FindFirstChild("Players")
local old_visual = players_folder and players_folder:FindFirstChild(player.Name)
if old_visual then
for _, v in ipairs(old_visual:GetDescendants()) do
if v:IsA("BasePart") then
v.Transparency = 1
end
end
end
local mdl = loadAsset(ASSET_ID)
if not mdl then
return
end
if old_visual then
mdl.Parent = old_visual
else
mdl.Parent = character
end
currentOverrideMdl = mdl
local hrp = character:WaitForChild("HumanoidRootPart", 5)
local new_hrp = mdl:WaitForChild("HumanoidRootPart", 5)
if not hrp or not new_hrp then
mdl:Destroy()
return
end
new_hrp.Anchored = true
local humanoid = mdl:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid:Destroy()
end
local animator = mdl:FindFirstChildOfClass("Animator")
if animator then
animator:Destroy()
end
local normal = mdl:FindFirstChild("normal", true)
local faceParts = {}
local relativeCFrames = {}
if normal and normal:IsA("BasePart") then
faceParts = {
Cube001 = mdl:FindFirstChild("Cube.001", true),
Cube002 = mdl:FindFirstChild("Cube.002", true),
Cube003 = mdl:FindFirstChild("Cube.003", true),
Cube004 = mdl:FindFirstChild("Cube.004", true),
eye1 = mdl:FindFirstChild("eye1", true),
eye2 = mdl:FindFirstChild("eye2", true),
muzzl = mdl:FindFirstChild("muzzl", true),
nose = mdl:FindFirstChild("nose", true),
Ear1 = mdl:FindFirstChild("Ear1", true),
Ear2 = mdl:FindFirstChild("Ear2", true)
}
for name, part in pairs(faceParts) do
if part and part:IsA("BasePart") then
relativeCFrames[name] = normal.CFrame:Inverse() * part.CFrame
end
end
end
for _, v in ipairs(mdl:GetDescendants()) do
if v:IsA("BasePart") then
v.CanCollide = false
v.Transparency = 0
end
end
new_hrp.Transparency = 1
local angry = mdl:FindFirstChild("angry", true)
if angry and angry:IsA("BasePart") then
angry.Transparency = 1
end
local new_head = mdl:FindFirstChild("Head")
if new_head and new_head:IsA("BasePart") then
new_head.Transparency = 1
end
local waist = mdl:FindFirstChild("Waist", true)
if waist and waist:IsA("BasePart") then
waist.Transparency = 1
end
if normal then
normal.Transparency = 0
normal.CanCollide = false
normal.Anchored = true
end
for name, part in pairs(faceParts) do
if part then
part.Transparency = 0
part.CanCollide = false
part.Anchored = true
end
end
local original_hed_normal = nil
if old_visual then
local hed = old_visual:FindFirstChild("hed")
if hed then
original_hed_normal = hed:FindFirstChild("normal")
end
end
if new_head then
for _, joint in ipairs(mdl:GetDescendants()) do
if joint:IsA("Motor6D") or joint:IsA("Weld") or joint:IsA("WeldConstraint") then
local part0 = joint.Part0 or joint.PartA
local part1 = joint.Part1 or joint.PartB
if (part0 == new_head or part1 == new_head) then
local other = (part0 == new_head) and part1 or part0
if other and not other:IsDescendantOf(new_head) then
joint:Destroy()
end
end
end
end
new_head.Anchored = true
end
local function charHasSonicMotors()
for _, m in ipairs(character:GetDescendants()) do
if m:IsA("Motor6D") and not m.Name:find("Shoulder")
and not m.Name:find("Hip")
and m.Name ~= "Neck"
and m.Name ~= "RootJoint" then
return true
end
end
return false
end
for _ = 1, 40 do
if charHasSonicMotors() then break end
task.wait(0.25)
end
local motorMap = {}
local function buildMotorMap()
motorMap = {}
for _, oldMotor in ipairs(character:GetDescendants()) do
if oldMotor:IsA("Motor6D") then
local newMotor = mdl:FindFirstChild(oldMotor.Name, true)
if newMotor and newMotor:IsA("Motor6D") then
motorMap[oldMotor] = newMotor
end
end
end
end
buildMotorMap()
new_hrp.CFrame = hrp.CFrame
if new_head and original_hed_normal then
new_head.CFrame = original_hed_normal.CFrame
end
if normal and original_hed_normal then
normal.CFrame = original_hed_normal.CFrame
end
for name, part in pairs(faceParts) do
if part and relativeCFrames[name] and normal then
part.CFrame = normal.CFrame * relativeCFrames[name]
end
end
currentConnection = RunService.Stepped:Connect(function()
if not character.Parent or not hrp.Parent or not new_hrp.Parent then
if currentConnection then
currentConnection:Disconnect()
currentConnection = nil
end
return
end
if not next(motorMap) then buildMotorMap() end
new_hrp.CFrame = hrp.CFrame
for oldMotor, newMotor in pairs(motorMap) do
if oldMotor.Parent and newMotor.Parent then
newMotor.Transform = oldMotor.Transform
end
end
if new_head and original_hed_normal and original_hed_normal.Parent then
new_head.CFrame = original_hed_normal.CFrame
end
if normal and original_hed_normal and original_hed_normal.Parent then
normal.CFrame = original_hed_normal.CFrame
end
for name, part in pairs(faceParts) do
if part and part.Parent and relativeCFrames[name] and normal then
part.CFrame = normal.CFrame * relativeCFrames[name]
end
end
end)
task.spawn(function()
task.wait(0.1)
local initHue = bodyHue or 0
local initColor = Color3.fromHSV(initHue, 0.50, 1)
for _, d in ipairs(mdl:GetDescendants()) do
if d:IsA("Trail") or d:IsA("Beam") then
d.Enabled = true
d.Color = ColorSequence.new(initColor)
d.LightEmission = 0.3
d.Brightness = 3
end
end
end)
end
if player.Character then
setupCharacter(player.Character)
end
player.CharacterAdded:Connect(setupCharacter)
task.spawn(function()
local playersFolder = workspace:WaitForChild("Players", 30)
if not playersFolder then return end
local function hasDodges()
local f = playersFolder:FindFirstChild(player.Name)
return f and f:FindFirstChild("Dodges") ~= nil
end
while true do
while hasDodges() do task.wait(0.5) end
while not hasDodges() do task.wait(0.25) end
task.wait(2)
task.spawn(replacePlayerFrame)
if setupViewport then setupViewport() end
end
end)
end
playChaosEmeraldIntro(loadRest)
task.spawn(function()
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local localPlayer = Players.LocalPlayer
local targetAnimations = {
"rbxassetid://107101041474499",
"rbxassetid://124016876172487",
"rbxassetid://102091744008058"
}
local replacementAssetId = "134492901732742"
local trackedPlayers = {}
local function normalizeAnimId(id)
local s = tostring(id)
local digits = s:match("(%d+)")
return digits or s
end
local function loadAsset(id)
local ok, objs = pcall(game.GetObjects, game, "rbxassetid://" .. tostring(id))
if not ok or not objs or #objs == 0 then
return nil
end
local obj = objs[1]
if obj then
return obj:Clone()
end
return nil
end
local function findModelAncestor(inst)
local node = inst
while node and not node:IsA("Model") do
node = node.Parent
end
return node
end
local function isReplacementPart(part)
if not part or not part:IsA("BasePart") then return false end
local m = findModelAncestor(part)
if not m then return false end
local ok, val = pcall(function() return m:GetAttribute("IsReplacement") end)
return ok and val == true
end
local function safeSetTransparency(inst, value)
if not inst or not inst:IsA("BasePart") then return end
if isReplacementPart(inst) then return end
inst.Transparency = value
end
local function loadModelForPlayer(player, character)
if not player or not character then return end
local uid = tostring(player.UserId)
local state = trackedPlayers[uid]
if state == "loading" or state == true then
return
end
trackedPlayers[uid] = "loading"
local mdl = loadAsset(replacementAssetId)
if not mdl then
warn("failed get objects, your executor probably dosent support it, id:", replacementAssetId)
trackedPlayers[uid] = nil
return
end
for _, descendant in ipairs(character:GetDescendants()) do
if descendant and descendant:IsA("MeshPart") then
if descendant.Parent then
pcall(function() descendant:Destroy() end)
end
end
end
local modelHumanoid = mdl:FindFirstChildOfClass("Humanoid")
if modelHumanoid then pcall(function() modelHumanoid:Destroy() end) end
local modelAnimator = mdl:FindFirstChildOfClass("Animator")
if modelAnimator then pcall(function() modelAnimator:Destroy() end) end
local playersFolder = workspace:FindFirstChild("Players")
if not playersFolder then
playersFolder = Instance.new("Folder")
playersFolder.Name = "Players"
playersFolder.Parent = workspace
end
local visualFolder = playersFolder:FindFirstChild(player.Name)
if not visualFolder then
visualFolder = Instance.new("Folder")
visualFolder.Name = player.Name
visualFolder.Parent = playersFolder
end
if pcall(function() return mdl.SetAttribute end) then
pcall(function() mdl:SetAttribute("IsReplacement", true) end)
end
mdl.Parent = visualFolder
for _, v in ipairs(mdl:GetDescendants()) do
if v:IsA("BasePart") then
v.CanCollide = false
if v.Name ~= "HumanoidRootPart" and v.Name ~= "Waist" then
v.Transparency = 0
end
end
end
local orig_hrp = character:FindFirstChild("HumanoidRootPart")
local new_hrp = mdl:FindFirstChild("HumanoidRootPart", true)
if not new_hrp then
for _, d in ipairs(mdl:GetDescendants()) do
if d:IsA("BasePart") then
new_hrp = d
break
end
end
if new_hrp then
warn("no humanoidrootpart, happened 2 times, new_hrp.Name")
else
warn("no basepart (this has happened 4 times btw)")
end
end
if orig_hrp and orig_hrp:IsA("BasePart") then
safeSetTransparency(orig_hrp, 1)
end
local orig_waist = character:FindFirstChild("Waist", true)
if orig_waist and orig_waist:IsA("BasePart") then
safeSetTransparency(orig_waist, 1)
end
if new_hrp and new_hrp:IsA("BasePart") then
new_hrp.Transparency = 1
new_hrp.Anchored = true
end
local new_waist = mdl:FindFirstChild("Waist", true)
if new_waist and new_waist:IsA("BasePart") then
new_waist.Transparency = 1
end
local function charHasSonicMotors()
for _, m in ipairs(character:GetDescendants()) do
if m:IsA("Motor6D") and not m.Name:find("Shoulder")
and not m.Name:find("Hip")
and m.Name ~= "Neck"
and m.Name ~= "RootJoint" then
return true
end
end
return false
end
for _ = 1, 40 do
if charHasSonicMotors() then break end
task.wait(0.25)
end
local motorMap = {}
local function buildMotorMap()
motorMap = {}
for _, oldMotor in ipairs(character:GetDescendants()) do
if oldMotor:IsA("Motor6D") then
local newMotor = mdl:FindFirstChild(oldMotor.Name, true)
if newMotor and newMotor:IsA("Motor6D") then
motorMap[oldMotor] = newMotor
end
end
end
end
buildMotorMap()
if orig_hrp and new_hrp then
new_hrp.CFrame = orig_hrp.CFrame
end
local followConnection
if new_hrp then
followConnection = RunService.Stepped:Connect(function()
if not character.Parent or (orig_hrp and not orig_hrp.Parent) or not new_hrp.Parent then
if followConnection then followConnection:Disconnect() end
return
end
if orig_hrp and new_hrp then
new_hrp.CFrame = orig_hrp.CFrame
end
for oldMotor, newMotor in pairs(motorMap) do
if oldMotor.Parent and newMotor.Parent then
newMotor.Transform = oldMotor.Transform
end
end
end)
end
trackedPlayers[uid] = true
warn("IM HERE", player.Name)
end
local function attachToCharacter(player, character)
if not character then return end
if player == localPlayer then return end
local humanoid = character:WaitForChild("Humanoid", 5)
if not humanoid then return end
local function checkAndMaybeLoad()
for _, track in pairs(humanoid:GetPlayingAnimationTracks()) do
if track.Animation and track.IsPlaying then
local tid = normalizeAnimId(track.Animation.AnimationId)
for _, t in ipairs(targetAnimations) do
if tid == normalizeAnimId(t) then
loadModelForPlayer(player, character)
return
end
end
end
end
end
checkAndMaybeLoad()
local conn = RunService.Heartbeat:Connect(checkAndMaybeLoad)
character.AncestryChanged:Connect(function()
if not character.Parent and conn then
conn:Disconnect()
end
end)
end
local function setupPlayerModel(player)
if player == localPlayer then return end
if player.Character then
attachToCharacter(player, player.Character)
end
player.CharacterAdded:Connect(function(character)
attachToCharacter(player, character)
end)
end
for _, player in ipairs(Players:GetPlayers()) do
setupPlayerModel(player)
end
Players.PlayerAdded:Connect(function(player)
setupPlayerModel(player)
end)
end)
local function loadCustomAsset(url, filename)
if not isfile(filename) then
writefile(filename, game:HttpGet(url))
end
return getcustomasset(filename)
end
local DEFAULT_MUSIC = loadCustomAsset(
"https://github.com/monicagalindo-wq/RECUP/raw/refs/heads/main/Big%20Arms.mp3",
"Big Arms.mp3"
)
local RUN_MUSIC = loadCustomAsset(
"https://github.com/monicagalindo-wq/RECUP/raw/refs/heads/main/Big%20Arms.mp3",
"Big Arms.mp3"
)
local theme = game:GetService("ReplicatedStorage")
:FindFirstChild("ClientAssets")
and game.ReplicatedStorage.ClientAssets:FindFirstChild("Sounds")
and game.ReplicatedStorage.ClientAssets.Sounds:FindFirstChild("mus")
and game.ReplicatedStorage.ClientAssets.Sounds.mus:FindFirstChild("Game")
and game.ReplicatedStorage.ClientAssets.Sounds.mus.Game:FindFirstChild("Round")
and game.ReplicatedStorage.ClientAssets.Sounds.mus.Game.Round:FindFirstChild("SoloTheme")
and game.ReplicatedStorage.ClientAssets.Sounds.mus.Game.Round.SoloTheme:FindFirstChild("SonicSolo")
if not theme then
warn("DD F SL")
return
end
theme.Looped = true
theme.Volume = 2
if math.random(1, 15) == 1 then
theme.SoundId = RUN_MUSIC
else
theme.SoundId = DEFAULT_MUSIC
end



This is for om
"It´s the same script that meta_blox use?" yes, but it instaly kicks you from the game womp womp
Go to my man itsjustyumy to get a anti cheat
@Hypersonicliker hes never posted the anticheat, not atleast i dont think
this script worked before, but now don't because of the new anti cheat. "Jeff may not get you but this does" (error)
anti cheat give
@kopinsee it is patched
No pasa nada ya lo intente y nada
There is a tutorial on how to use in a private server on uoutube