
Key Required VerifiedUniversal
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local VirtualInputManager = game:GetService("VirtualInputManager")
local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")
local gui = Instance.new("ScreenGui", PlayerGui)
gui.Name = "DetectAnimGui"
gui.ResetOnSpawn = false
local function addCorner(inst, radius)
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, radius or 6)
corner.Parent = inst
end
local mainFrame = Instance.new("Frame")
mainFrame.Size = UDim2.new(0, 220, 0, 150)
mainFrame.Position = UDim2.new(0.5, -110, 0.5, -120)
mainFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Visible = true
addCorner(mainFrame)
mainFrame.Parent = gui
local toggleDetect = Instance.new("TextButton", mainFrame)
toggleDetect.Size = UDim2.new(0.7, 0, 0, 30)
toggleDetect.Position = UDim2.new(0, 0, 0, 0)
toggleDetect.Text = "Auto Block: OFF"
toggleDetect.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
toggleDetect.TextColor3 = Color3.new(1, 1, 1)
toggleDetect.Font = Enum.Font.SourceSansBold
toggleDetect.TextScaled = true
addCorner(toggleDetect)
local openBtn = Instance.new("TextButton", mainFrame)
openBtn.Size = UDim2.new(0.3, 0, 0, 30)
openBtn.Position = UDim2.new(0.7, 0, 0, 0)
openBtn.Text = ">"
openBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
openBtn.TextColor3 = Color3.new(1, 1, 1)
openBtn.Font = Enum.Font.SourceSansBold
openBtn.TextScaled = true
addCorner(openBtn)
local settingFrame = Instance.new("Frame", mainFrame)
settingFrame.Size = UDim2.new(1, 0, 0, 140)
settingFrame.Position = UDim2.new(0, 0, 0, 30)
settingFrame.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
settingFrame.Visible = false
addCorner(settingFrame)
settingFrame.Parent = mainFrame
openBtn.MouseButton1Click:Connect(function()
settingFrame.Visible = not settingFrame.Visible
openBtn.Text = settingFrame.Visible and "<" or ">"
end)
local bubble = Instance.new("TextButton", gui)
bubble.Size = UDim2.new(0, 32, 0, 32)
bubble.Position = UDim2.new(0, 5, 0.5, -80)
bubble.Text = "🗿"
bubble.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
bubble.TextColor3 = Color3.new(1, 1, 1)
bubble.Font = Enum.Font.SourceSansBold
bubble.TextScaled = true
bubble.Active = true
bubble.Draggable = true
addCorner(bubble)
bubble.MouseButton1Click:Connect(function()
mainFrame.Visible = not mainFrame.Visible
end)
local function makeBox(size, pos, placeholder)
local box = Instance.new("TextBox")
box.Size = size
box.Position = pos
box.PlaceholderText = placeholder
box.Text = ""
box.BackgroundColor3 = Color3.fromRGB(70, 70, 70)
box.TextColor3 = Color3.new(1, 1, 1)
box.Font = Enum.Font.SourceSans
box.TextScaled = true
addCorner(box)
return box
end
local normalBox = makeBox(UDim2.new(0.45, 0, 0, 25), UDim2.new(0.05, 0, 0, 0), "M1")
local specialBox = makeBox(UDim2.new(0.45, 0, 0, 25), UDim2.new(0.5, 0, 0, 0), "Dash Q")
local skillBox = makeBox(UDim2.new(0.45, 0, 0, 25), UDim2.new(0.05, 0, 0, 30), "Skill")
local skillDelayBox = makeBox(UDim2.new(0.45, 0, 0, 25), UDim2.new(0.5, 0, 0, 30), "Hold Skill")
normalBox.Parent = settingFrame
specialBox.Parent = settingFrame
skillBox.Parent = settingFrame
skillDelayBox.Parent = settingFrame
local normalRange, specialRange, skillRange = 30, 50, 50
local skillDelay = 1.2
skillDelayBox.Text = tostring(skillDelay)
normalBox.FocusLost:Connect(function()
local v = tonumber(normalBox.Text)
if v then normalRange = v end
end)
specialBox.FocusLost:Connect(function()
local v = tonumber(specialBox.Text)
if v then specialRange = v end
end)
skillBox.FocusLost:Connect(function()
local v = tonumber(skillBox.Text)
if v then skillRange = v end
end)
skillDelayBox.FocusLost:Connect(function()
local v = tonumber(skillDelayBox.Text)
if v and v > 0 then skillDelay = v end
end)
local function createSquareToggle(name, defaultText, posY)
local label = Instance.new("TextLabel", mainFrame)
label.Text = name
label.Size = UDim2.new(0.7, 0, 0, 20)
label.Position = UDim2.new(0.05, 0, 0, posY)
label.BackgroundTransparency = 1
label.Font = Enum.Font.SourceSans
label.TextColor3 = Color3.new(1, 1, 1)
label.TextScaled = true
local button = Instance.new("TextButton", mainFrame)
button.Size = UDim2.new(0, 25, 0, 25)
button.Position = UDim2.new(1, -30, 0, posY)
button.Text = "OFF"
button.BackgroundColor3 = Color3.fromRGB(70, 70, 70)
button.TextColor3 = Color3.new(1, 1, 1)
button.Font = Enum.Font.SourceSansBold
button.TextScaled = true
addCorner(button)
return button
end
local m1AfterBtn = createSquareToggle("M1 After Block", "OFF", 80)
local m1CatchBtn = createSquareToggle("M1 Catch", "OFF", 110)
local m1AfterEnabled = false
m1AfterBtn.MouseButton1Click:Connect(function()
m1AfterEnabled = not m1AfterEnabled
m1AfterBtn.Text = m1AfterEnabled and "ON" or "OFF"
end)
local m1CatchEnabled = false
m1CatchBtn.MouseButton1Click:Connect(function()
m1CatchEnabled = not m1CatchEnabled
m1CatchBtn.Text = m1CatchEnabled and "ON" or "OFF"
end)
local function fireRemote(goal, mobile)
local args = {{
Goal = goal,
Key = (goal == "KeyPress" or goal == "KeyRelease") and Enum.KeyCode.F or nil,
Mobile = mobile or nil
}}
LocalPlayer.Character:WaitForChild("Communicate"):FireServer(unpack(args))
end
local function doAfterBlock(hrp)
if m1AfterEnabled and hrp and LocalPlayer.Character then
local root = LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if root then
local dist = (hrp.Position - root.Position).Magnitude
if dist <= 10 then
fireRemote("LeftClick", true)
task.delay(0.3, function()
local newDist = (hrp.Position - root.Position).Magnitude
if newDist <= 10 then
fireRemote("LeftClickRelease", true)
end
end)
end
end
end
end
local lastCatch = 0
local comboIDs = {10480793962, 10480796021}
local allIDs = {
Saitama = {
10469493270, 10469630950, 10469639222, 10469643643,
special = 10479335397
},
Garou = {
13532562418, 13532600125, 13532604085, 13294471966,
special = 10479335397
},
Cyborg = {
13491635433, 13296577783, 13295919399, 13295936866,
special = 10479335397
},
Sonic = {
13370310513, 13390230973, 13378751717, 13378708199,
special = 13380255751
},
Metal = {
14004222985, 13997092940, 14001963401, 14136436157,
special = 13380255751
},
Blade = {
15259161390, 15240216931, 15240176873, 15162694192,
special = 13380255751
},
Tatsumaki = {
16515503507, 16515520431, 16515448089, 16552234590,
special = 10479335397
},
Dragon = {
17889458563, 17889461810, 17889471098, 17889290569,
special = 10479335397
},
Tech = {
123005629431309, 100059874351664, 104895379416342, 134775406437626,
special = 10479335397
}
}
local skillIDs = {
[10468665991] = true, [10466974800] = true, [10471336737] = true, [12510170988] = true,
[12272894215] = true, [12296882427] = true, [12307656616] = true,
[101588604872680] = true, [105442749844047] = true, [109617620932970] = true,
[131820095363270] = true, [135289891173395] = true, [125955606488863] = true,
[12534735382] = true, [12502664044] = true, [12509505723] = true, [12618271998] = true, [12684390285] = true,
[13376869471] = true, [13294790250] = true, [13376962659] = true, [13501296372] = true, [13556985475] = true,
[145162735010] = true, [14046756619] = true, [14299135500] = true, [14351441234] = true,
[15290930205] = true, [15145462680] = true, [15295895753] = true, [15295336270] = true,
[16139108718] = true, [16515850153] = true, [16431491215] = true, [16597322398] = true, [16597912086] = true,
[17799224866] = true, [17838006839] = true, [17857788598] = true, [18179181663] = true,
[113166426814229] = true, [116753755471636] = true, [116153572280464] = true, [114095570398448] = true, [77509627104305] = true
}
local function checkAnims()
for _, player in pairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character and player.Character.Parent == workspace:FindFirstChild("Live") then
local char = player.Character
local hrp = char:FindFirstChild("HumanoidRootPart")
local hum = char:FindFirstChildWhichIsA("Humanoid")
local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if hrp and hum and myHRP then
local dist = (hrp.Position - myHRP.Position).Magnitude
local animator = hum:FindFirstChildOfClass("Animator")
if animator then
local anims = {}
for _, track in ipairs(animator:GetPlayingAnimationTracks()) do
local id = tonumber(track.Animation.AnimationId:match("%d+"))
if id then anims[id] = true end
end
local comboCount = 0
for _, id in ipairs(comboIDs) do
if anims[id] then comboCount += 1 end
end
for _, group in pairs(allIDs) do
local normalHits, special = 0, anims[group.special]
for i = 1, 4 do
if anims[group[i]] then normalHits += 1 end
end
if comboCount == 2 and normalHits >= 2 and dist <= specialRange then
fireRemote("KeyPress") task.wait(0.7)
fireRemote("KeyRelease")
break
elseif normalHits > 0 and dist <= normalRange then
fireRemote("KeyPress") task.wait(0.15)
fireRemote("KeyRelease")
doAfterBlock(hrp)
break
elseif special and dist <= specialRange and not m1CatchEnabled then
fireRemote("KeyPress")
task.delay(1, function()
fireRemote("KeyRelease")
end)
break
end
end
for animId in pairs(anims) do
if skillIDs[animId] and dist <= skillRange then
fireRemote("KeyPress")
task.delay(skillDelay, function()
fireRemote("KeyRelease")
end)
break
end
end
end
end
end
end
end
local function checkM1Catch()
if not m1CatchEnabled then return end
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character and player.Character.Parent == workspace:FindFirstChild("Live") then
local char = player.Character
local hrp = char:FindFirstChild("HumanoidRootPart")
local hum = char:FindFirstChildWhichIsA("Humanoid")
local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if hrp and hum and myHRP then
local dist1 = (hrp.Position - myHRP.Position).Magnitude
if dist1 <= 30 then
local animator = hum:FindFirstChildOfClass("Animator")
if animator then
for _, track in ipairs(animator:GetPlayingAnimationTracks()) do
local id = tonumber(track.Animation.AnimationId:match("%d+"))
if id == 10479335397 then
task.delay(0.1, function()
local dist2 = (hrp.Position - myHRP.Position).Magnitude
if dist2 < dist1 - 0.5 and tick() - lastCatch >= 5 then
lastCatch = tick()
fireRemote("LeftClick", true)
task.delay(0.2, function()
fireRemote("LeftClickRelease", true)
end)
VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.D, false, game)
VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.Q, false, game)
task.delay(1, function()
VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.Q, false, game)
VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.D, false, game)
end)
end
end)
return
end
end
end
end
end
end
end
end
local detectActive = false
toggleDetect.MouseButton1Click:Connect(function()
detectActive = not detectActive
toggleDetect.Text = detectActive and "Auto Block: ON" or "Auto Block: OFF"
toggleDetect.BackgroundColor3 = detectActive and Color3.fromRGB(0, 170, 0) or Color3.fromRGB(60, 60, 60)
end)
RunService.Heartbeat:Connect(function()
if detectActive then
pcall(checkAnims)
pcall(checkM1Catch)
end
end)



woahhh
Chatgpt
This * *
@semajam372 this what
@sleeper this s fire
it's old
lights out *es
Sleeper, dm me on discord, my user is : iamontopofu Yes, I made that user name 4 years ago and I still haven't changed it. Anyways, Can you teach me how to do ts?
Chatgpt