
Key RequiredUniversal

local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Debris = game:GetService("Debris")
local Players = game:GetService("Players")
local Lighting = game:GetService("Lighting")
local player = Players.LocalPlayer
local camera = workspace.CurrentCamera
local cooldowns = { E = false, Q = false, R = false }
local isOverdriveActive = false
local function screenShake(intensity, duration)
local start = tick()
local conn
conn = RunService.RenderStepped:Connect(function()
local elapsed = tick() - start
if elapsed > duration then conn:Disconnect() return end
local fade = 1 - (elapsed/duration)
local cur = intensity * fade
camera.CFrame = camera.CFrame * CFrame.Angles(
math.rad((math.random()-0.5)*cur),
math.rad((math.random()-0.5)*cur), 0)
end)
end
local function impactFrame(color, duration, transparency)
local gui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui"))
gui.IgnoreGuiInset = true
local frame = Instance.new("Frame", gui)
frame.Size = UDim2.new(1, 0, 1, 0)
frame.BackgroundColor3 = color
frame.BackgroundTransparency = transparency or 0
TweenService:Create(frame, TweenInfo.new(duration, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BackgroundTransparency = 1}):Play()
Debris:AddItem(gui, duration + 0.1)
end
local function createExpandingRing(pos, color, endSize, duration, orientation)
local ring = Instance.new("Part", workspace)
ring.Shape = Enum.PartType.Cylinder
ring.Material = Enum.Material.Neon
ring.Color = color
ring.Size = Vector3.new(0.5, 2, 2)
ring.Position = pos
ring.Orientation = orientation or Vector3.new(0, 0, 90)
ring.Anchored = true
ring.CanCollide = false
TweenService:Create(ring, TweenInfo.new(duration, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), {Size = Vector3.new(0.1, endSize, endSize), Transparency = 1}):Play()
Debris:AddItem(ring, duration + 0.1)
end
local function createFloatingDebris(pos, amount, power)
for i = 1, (amount or 8) do
local rock = Instance.new("Part", workspace)
rock.Size = Vector3.new(math.random(1,4)/2, math.random(1,4)/2, math.random(1,4)/2)
rock.Material = Enum.Material.Slate
rock.Color = Color3.fromRGB(50, 50, 50)
rock.Position = pos + Vector3.new(math.random(-5, 5), -2, math.random(-5, 5))
rock.Anchored = true
rock.CanCollide = false
local upTween = TweenService:Create(rock, TweenInfo.new(1, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out), {
Position = rock.Position + Vector3.new(0, math.random(10, power or 25), 0), Transparency = 1,
Orientation = Vector3.new(math.random(-180, 180), math.random(-180, 180), math.random(-180, 180))
})
upTween:Play()
Debris:AddItem(rock, 1.2)
end
end
local function createKineticUI()
if player:WaitForChild("PlayerGui"):FindFirstChild("KineticUI") then player.PlayerGui.KineticUI:Destroy() end
local gui = Instance.new("ScreenGui", player.PlayerGui)
gui.Name = "KineticUI"
gui.ResetOnSpawn = false
local mainFrame = Instance.new("Frame", gui)
mainFrame.Size = UDim2.new(0, 260, 0, 150)
mainFrame.Position = UDim2.new(1, -280, 0.5, -75)
mainFrame.BackgroundColor3 = Color3.fromRGB(20, 10, 10)
mainFrame.BorderSizePixel = 3
mainFrame.BorderColor3 = Color3.fromRGB(255, 50, 0)
local layout = Instance.new("UIListLayout", mainFrame)
layout.SortOrder = Enum.SortOrder.LayoutOrder
layout.Padding = UDim.new(0, 5)
local function createSkillRow(key, name)
local row = Instance.new("Frame", mainFrame)
row.Size = UDim2.new(1, 0, 0, 38)
row.BackgroundColor3 = Color3.fromRGB(40, 15, 15)
row.BorderSizePixel = 0
local keyLabel = Instance.new("TextLabel", row)
keyLabel.Size = UDim2.new(0, 45, 1, 0)
keyLabel.BackgroundTransparency = 1
keyLabel.Text = "[" .. key .. "]"
keyLabel.TextColor3 = Color3.fromRGB(255, 100, 0)
keyLabel.Font = Enum.Font.GothamBlack
keyLabel.TextSize = 20
local nameLabel = Instance.new("TextLabel", row)
nameLabel.Size = UDim2.new(1, -50, 1, 0)
nameLabel.Position = UDim2.new(0, 50, 0, 0)
nameLabel.BackgroundTransparency = 1
nameLabel.Text = name
nameLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
nameLabel.Font = Enum.Font.GothamBold
nameLabel.TextSize = 15
nameLabel.TextXAlignment = Enum.TextXAlignment.Left
end
createSkillRow("E", "Heat Overdrive (Toggle)")
createSkillRow("Q", "Sonic Impact (Dash)")
createSkillRow("R", "World Stillness (Hyper)")
end
local overdriveAura, overdriveConn
local function toggleHeatOverdrive(character)
local root = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChild("Humanoid")
if not root or not humanoid then return end
if isOverdriveActive then
isOverdriveActive = false
humanoid.WalkSpeed = 16
if overdriveAura then overdriveAura:Destroy() end
if overdriveConn then overdriveConn:Disconnect() end
TweenService:Create(camera, TweenInfo.new(0.5), {FieldOfView = 70}):Play()
return
end
isOverdriveActive = true
humanoid.WalkSpeed = 60
impactFrame(Color3.fromRGB(255, 50, 0), 0.1, 0.5)
screenShake(3, 0.3)
TweenService:Create(camera, TweenInfo.new(0.5), {FieldOfView = 90}):Play()
overdriveAura = Instance.new("Attachment", root)
local fire = Instance.new("ParticleEmitter", overdriveAura)
fire.Texture = "rbxassetid://284205403"
fire.Color = ColorSequence.new({ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 200, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 0, 0))})
fire.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 2), NumberSequenceKeypoint.new(1, 0)})
fire.Rate = 100
fire.Speed = NumberRange.new(5, 10)
fire.Lifetime = NumberRange.new(0.5)
fire.EmissionDirection = Enum.NormalId.Top
local lastFootstep = 0
overdriveConn = RunService.Heartbeat:Connect(function()
if root.AssemblyLinearVelocity.Magnitude > 20 and tick() - lastFootstep > 0.1 then
lastFootstep = tick()
createFloatingDebris(root.Position, 2, 10)
local scorch = Instance.new("Part", workspace)
scorch.Size = Vector3.new(3, 0.1, 3)
scorch.Position = root.Position - Vector3.new(0, 2.5, 0)
scorch.Anchored = true
scorch.CanCollide = false
scorch.Material = Enum.Material.Neon
scorch.Color = Color3.fromRGB(255, 50, 0)
TweenService:Create(scorch, TweenInfo.new(0.5), {Transparency = 1, Size = Vector3.new(0,0,0)}):Play()
Debris:AddItem(scorch, 0.6)
end
end)
end
local function castSonicImpact(character)
local root = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChild("Humanoid")
if not root or not humanoid then return end
local startPos = root.Position
local dashDir = root.CFrame.LookVector
local dashDistance = 80
local machCone = Instance.new("Part", workspace)
machCone.Size = Vector3.new(5, 5, 5)
machCone.CFrame = root.CFrame * CFrame.Angles(math.rad(90), 0, 0)
machCone.Material = Enum.Material.Neon
machCone.Color = Color3.fromRGB(255, 255, 255)
machCone.Anchored = true
machCone.CanCollide = false
local mesh = Instance.new("SpecialMesh", machCone)
mesh.MeshType = Enum.MeshType.FileMesh
mesh.MeshId = "rbxassetid://1033714" -- Cone Mesh
mesh.Scale = Vector3.new(3, 10, 3)
TweenService:Create(machCone, TweenInfo.new(0.3, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out), {
CFrame = machCone.CFrame + (dashDir * dashDistance),
Transparency = 1,
Size = Vector3.new(10, 10, 10)
}):Play()
Debris:AddItem(machCone, 0.4)
createExpandingRing(startPos, Color3.fromRGB(255, 100, 0), 40, 0.3)
createFloatingDebris(startPos, 15, 30)
screenShake(8, 0.3)
impactFrame(Color3.fromRGB(255, 255, 255), 0.1)
local targetCFrame = root.CFrame + (dashDir * dashDistance)
local rayParams = RaycastParams.new()
rayParams.FilterDescendantsInstances = {character}
local hit = workspace:Raycast(startPos, dashDir * dashDistance, rayParams)
if hit then targetCFrame = root.CFrame + (dashDir * (hit.Distance - 3)) end
root.Anchored = true
local dashTween = TweenService:Create(root, TweenInfo.new(0.15, Enum.EasingStyle.Linear), {CFrame = targetCFrame})
dashTween:Play()
dashTween.Completed:Connect(function()
root.Anchored = false
root.AssemblyLinearVelocity = Vector3.zero
createExpandingRing(root.Position, Color3.fromRGB(255, 50, 0), 60, 0.4)
createFloatingDebris(root.Position, 20, 40)
screenShake(10, 0.4)
end)
end
local function castWorldStillness(character)
local root = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChild("Humanoid")
if not root or not humanoid then return end
impactFrame(Color3.fromRGB(255, 255, 255), 0.2, 0)
screenShake(12, 0.5)
createExpandingRing(root.Position, Color3.fromRGB(255, 255, 0), 200, 1)
local cc = Instance.new("ColorCorrectionEffect", Lighting)
cc.Saturation = -1
cc.Contrast = 0.5
cc.Brightness = -0.2
cc.TintColor = Color3.fromRGB(255, 255, 150)
local origSpeed = humanoid.WalkSpeed
humanoid.WalkSpeed = 150
local lightningAtt = Instance.new("Attachment", root)
local lightning = Instance.new("ParticleEmitter", lightningAtt)
lightning.Texture = "rbxassetid://284205403"
lightning.Color = ColorSequence.new(Color3.fromRGB(255, 255, 0))
lightning.Size = NumberSequence.new(4, 0)
lightning.Speed = NumberRange.new(50, 150)
lightning.Drag = 3
lightning.SpreadAngle = Vector2.new(360, 360)
lightning.Lifetime = NumberRange.new(0.2, 0.4)
lightning.Squash = NumberSequence.new(5)
lightning.Rate = 200
local origFOV = camera.FieldOfView
TweenService:Create(camera, TweenInfo.new(0.3), {FieldOfView = 110}):Play()
task.delay(5, function()
humanoid.WalkSpeed = origSpeed
lightning:Destroy()
lightningAtt:Destroy()
TweenService:Create(cc, TweenInfo.new(1), {Saturation = 0, Contrast = 0, Brightness = 0, TintColor = Color3.fromRGB(255,255,255)}):Play()
TweenService:Create(camera, TweenInfo.new(0.5), {FieldOfView = origFOV}):Play()
Debris:AddItem(cc, 1.2)
createExpandingRing(root.Position, Color3.fromRGB(255, 255, 255), 100, 0.5)
screenShake(5, 0.3)
end)
end
createKineticUI()
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
local character = player.Character
if not character then return end
if input.KeyCode == Enum.KeyCode.E and not cooldowns.E then
cooldowns.E = true
toggleHeatOverdrive(character)
task.delay(1, function() cooldowns.E = false end)
end
if input.KeyCode == Enum.KeyCode.Q and not cooldowns.Q then
cooldowns.Q = true
castSonicImpact(character)
task.delay(4, function() cooldowns.Q = false end)
end
if input.KeyCode == Enum.KeyCode.R and not cooldowns.R then
cooldowns.R = true
castWorldStillness(character)
task.delay(12, function() cooldowns.R = false end)
end
end)



*ing cool bro