
Keyless

local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local LocalPlayer = Players.LocalPlayer
local UserInputService = game:GetService("UserInputService")
local StarterGui = game:GetService("StarterGui")
local RunService = game:GetService("RunService")
local ClientAnimationsLOL = game:GetService("Players").LocalPlayer.PlayerScripts.ClientAnimations
local animationsFolder = ReplicatedStorage:WaitForChild("Characters"):WaitForChild("Survivor"):WaitForChild("Civilian"):WaitForChild("Animations")
local deletedCount = 0
for _, item in ipairs(animationsFolder:GetChildren()) do
if item:IsA("Animation") then
item:Destroy()
deletedCount += 1
end
end
local deletedCount = 0
for _, item in ipairs(animationsFolder:GetChildren()) do
if item:IsA("Animation") then
item:Destroy()
deletedCount += 1
end
end
if deletedCount > 0 then
StarterGui:SetCore("SendNotification", {
Title = "Animations Deleted",
Text = "We have deleted " .. deletedCount .. " animation(s)",
Duration = 5
})
end
print("Deleted " .. deletedCount .. " Animation object(s) from Civilian.Animations")
ClientAnimationsLOL.Enabled = false
task.wait()
ClientAnimationsLOL.Enabled = true
local character = LocalPlayer.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
-- Function to stop all currently playing animations
local function stopAllAnimations()
for _, track in pairs(humanoid:GetPlayingAnimationTracks()) do
track:Stop() -- Stops the animation
end
end
stopAllAnimations()
local animationSets = {
Pursuer = {
Zombie_1 = {Idle="108966832512824", Walk="140725165625502", Sprint="74766909298004", Special="133089990054529"},
HardestGame = {Idle="98065949472006", Walk="86090280531902", Sprint="80622745059905", Special="130969844291143"},
Derp = {Idle="116882648985413", Walk="116619914860672", Sprint="99710523608673", Special="127615305496836"},
MISO = {Idle="110261771932085", Walk="77767207227090", Sprint="84579013254629", Special="121553057496251"},
IQuot = {Idle="129538723059546", Walk="111262064101049", Sprint="133764223100629", Special="139854803244662"},
Bling_Pursuer = {Idle="90352838780824", Walk="137664000771043", Sprint="118293298340723", Special="87593869628310"},
Zombie_2 = {Idle="112741812425793", Walk="89072100139011", Sprint="83943871443312", Special="130969844291143"},
Seesaws = {Idle="105229530451214", Walk="87100633181273", Sprint="76006312248383", Special="115832056782174"},
Classic = {Idle="98065949472006", Walk="86090280531902", Sprint="80622745059905", Special="130969844291143"},
The_Stalker = {Idle="140579314892039", Walk="131123864457422", Sprint="113129644775079", Special="134576092674459"},
Phantasm = {Idle="80974060339218", Walk="80948338059832", Sprint="86509870627165", Special="87593869628310"},
Zombie = {Idle="80974060339218", Walk="80948338059832", Sprint="86509870627165", Special="87593869628310"},
Maze_Guy = {Idle="98065949472006", Walk="86090280531902", Sprint="80622745059905", Special="130969844291143"},
Avoider = {Idle="80974060339218", Walk="80948338059832", Sprint="86509870627165", Special="87593869628310"},
Clawsguy = {Idle="138700567973746", Walk="96333561042064", Sprint="96136930930416", Special="115832056782174"},
MeQuot = {Idle="123989154628992", Walk="115493664585359", Sprint="130682734432079", Special="139854803244662"},
Default = {Idle="80974060339218", Walk="80948338059832", Sprint="86509870627165", Special="87593869628310"},
Yourself_Pursuer = {Idle="80974060339218", Walk="80948338059832", Sprint="86509870627165", Special="87593869628310"},
},
Artful = {
Innovationful = {Idle="75829922277414", Walk="102669115888825", Sprint="131888686736060", Special="130969844291143"},
Kind_Gal = {Idle="94558501077182", Walk="136960484622651", Sprint="89260818951530", Special="111012730078117"},
Devesto = {Idle="75370292739676", Walk="70580402939971", Sprint="91726581626277", Special="118342888066359"},
Builder = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
Cementful = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
Orchestraful = {Idle="96089657207073", Walk="86166363798441", Sprint="84734698021418", Special="102942152690202"},
Evil_Guy = {Idle="94558501077182", Walk="136960484622651", Sprint="89260818951530", Special="111012730078117"},
Noliful = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
Paintful = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
Default = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
Artistry = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
Tixful = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
SoRetro = {Idle="75829922277414", Walk="102669115888825", Sprint="131888686736060", Special="130969844291143"},
Swapful = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
Seaful = {Idle="94473571249263", Walk="102572617659889", Sprint="100948610539178", Special="118342888066359"},
},
Harken = {
Ena = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Raigken = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Ruins = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Cesus = {Idle="109980283233330", Walk="123324217013146", Sprint="94668334962235", Special="71749363218670"},
Audie = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Sonorous = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Default = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Conceptual = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Ancient = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Hamken = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Mr_Screwy = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
Discerna = {Idle="104774777136783", Walk="135226521217628", Sprint="119463021776325", Special="100130178279600"},
},
MROB = {
Default = {Idle="128876353799791", Walk="84523208605356", Sprint="134893121838000", Special="87593869628310"},
},
Killdroid = {
AwesomeDroid = {Idle="104698935553828", Walk="134273680881474", Sprint="87612866184239", Special="104679472375564"},
Turkeydroid = {Idle="90197302481794", Walk="125969711702313", Sprint="123837551946715", Special="126477594063454"},
Teadroid = {Idle="90197302481794", Walk="125969711702313", Sprint="123837551946715", Special="126477594063454"},
MLGdroid = {Idle="104698935553828", Walk="134273680881474", Sprint="87612866184239", Special="104679472375564"},
Jetdroid = {Idle="90197302481794", Walk="125969711702313", Sprint="123837551946715", Special="126477594063454"},
Default = {Idle="90197302481794", Walk="125969711702313", Sprint="123837551946715", Special="126477594063454"},
Pixeldroid = {Idle="104698935553828", Walk="134273680881474", Sprint="87612866184239", Special="104679472375564"},
Eggdroid = {Idle="90197302481794", Walk="125969711702313", Sprint="123837551946715", Special="126477594063454"},
Deathstar = {Idle="90197302481794", Walk="125969711702313", Sprint="123837551946715", Special="126477594063454"},
Livedroid = {Idle="90197302481794", Walk="125969711702313", Sprint="123837551946715", Special="126477594063454"},
Futuristic = {Idle="104698935553828", Walk="134273680881474", Sprint="87612866184239", Special="104679472375564"},
},
Badware = {
Aeroware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Cookieware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Runicware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
OMEGAWARE = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Loveware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Devilware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Default = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Spyware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Goodware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Angelware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
Wiperware = {Idle="136507569552573", Walk="83428305423587", Sprint="120893352730955", Special="87704069305565"},
},
Other = {
Civilian = {Idle="100930402371608", Walk="84388941697203", Sprint="137375023685630", Special="0"},
None = {Idle="0", Walk="0", Sprint="0", Special="0"},
Ghost = {Idle="110395159339100", Walk="133938914809228", Sprint="124260679864309", Special="0"},
Old_Civilian = {Idle="74309548749074", Walk="138161225743614", Sprint="79488319304371", Special="0"},
Paranoy = {Idle="134602487982711", Walk="83529184862062", Sprint="88244580627601", Special="0"}
},
}
local blendTime = 0.2
local activeSetName, activeCategory = nil, nil
local characterData = {}
local tabShortNames = {
Pursuer = "PR",
Badware = "BW",
Harken = "H",
MROB = "MR",
Killdroid = "KD",
Artful = "A",
Other = "Misc"
}
local function loadAnimationSet(character, category, setName)
if not character or not category or not setName then return end
local set = animationSets[category][setName]
if not set then return end
local humanoid = character:FindFirstChildOfClass("Humanoid")
if not humanoid then return end
local animator = humanoid:FindFirstChildOfClass("Animator") or Instance.new("Animator", humanoid)
characterData[character] = characterData[character] or {}
local data = characterData[character]
if data.connection then data.connection:Disconnect() end
for _, track in pairs(data.movementTracks or {}) do
if track and track.IsPlaying then track:Stop(blendTime) end
end
local function loadAnim(animId, priority)
if animId and animId ~= "none" and animId ~= "0" then
local anim = Instance.new("Animation")
anim.AnimationId = "rbxassetid://" .. animId
local track = animator:LoadAnimation(anim)
if priority then track.Priority = priority end
return track
end
end
data.movementTracks = {
Idle = loadAnim(set.Idle, Enum.AnimationPriority.Core),
Walk = loadAnim(set.Walk, Enum.AnimationPriority.Movement),
Sprint = loadAnim(set.Sprint, Enum.AnimationPriority.Movement)
}
data.currentMovementTrack = nil
if data.movementTracks.Idle then
data.movementTracks.Idle:Play(blendTime)
data.currentMovementTrack = data.movementTracks.Idle
end
data.connection = RunService.RenderStepped:Connect(function()
local moving = humanoid.MoveDirection.Magnitude > 0.1
local walkSpeed = humanoid.WalkSpeed or 16
local newTrack
if moving and walkSpeed > 18 then
newTrack = data.movementTracks.Sprint
elseif moving then
newTrack = data.movementTracks.Walk
else
newTrack = data.movementTracks.Idle
end
if newTrack ~= data.currentMovementTrack then
if data.currentMovementTrack and data.currentMovementTrack.IsPlaying then
data.currentMovementTrack:Stop(blendTime)
end
if newTrack then newTrack:Play(blendTime) end
data.currentMovementTrack = newTrack
end
end)
end
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "AnimationMenuGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = PlayerGui
local toggleButton = Instance.new("TextButton")
toggleButton.Size = UDim2.new(0, 60, 0, 40)
toggleButton.Position = UDim2.new(1, -70, 0.5, -20)
toggleButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
toggleButton.TextColor3 = Color3.fromRGB(0, 0, 0)
toggleButton.Font = Enum.Font.Arcade
toggleButton.Text = "Menu"
toggleButton.TextScaled = true
toggleButton.Active = true
toggleButton.Draggable = true
toggleButton.Parent = screenGui
Instance.new("UICorner", toggleButton).CornerRadius = UDim.new(0, 10)
local mainFrame = Instance.new("Frame")
mainFrame.Size = UDim2.new(0, 320, 0, 400)
mainFrame.Position = UDim2.new(1, -340, 0, 20)
mainFrame.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
mainFrame.BorderSizePixel = 0
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Visible = false
mainFrame.Parent = screenGui
Instance.new("UICorner", mainFrame).CornerRadius = UDim.new(0, 14)
local titleLabel = Instance.new("TextLabel")
titleLabel.Size = UDim2.new(1, 0, 0, 40)
titleLabel.BackgroundTransparency = 1
titleLabel.Text = "Supa Cool Anims"
titleLabel.TextColor3 = Color3.fromRGB(0, 0, 0)
titleLabel.Font = Enum.Font.Arcade
titleLabel.TextScaled = true
titleLabel.Parent = mainFrame
local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 36, 0, 36)
closeBtn.Position = UDim2.new(1, 5, 0, -18)
closeBtn.AnchorPoint = Vector2.new(0, 0)
closeBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
closeBtn.TextColor3 = Color3.fromRGB(0, 0, 0)
closeBtn.Text = "X"
closeBtn.Font = Enum.Font.Arcade
closeBtn.TextScaled = true
closeBtn.Parent = mainFrame
Instance.new("UICorner", closeBtn).CornerRadius = UDim.new(0, 6)
local tabBar = Instance.new("Frame")
tabBar.Size = UDim2.new(1, -20, 0, 30)
tabBar.Position = UDim2.new(0, 10, 0, 50)
tabBar.BackgroundTransparency = 1
tabBar.Parent = mainFrame
local tabList = Instance.new("UIListLayout")
tabList.FillDirection = Enum.FillDirection.Horizontal
tabList.Padding = UDim.new(0, 4)
tabList.Parent = tabBar
local scrollFrame = Instance.new("ScrollingFrame")
scrollFrame.Size = UDim2.new(1, -20, 1, -90)
scrollFrame.Position = UDim2.new(0, 10, 0, 90)
scrollFrame.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
scrollFrame.BorderSizePixel = 0
scrollFrame.ScrollBarThickness = 6
scrollFrame.Parent = mainFrame
local uiListLayout = Instance.new("UIListLayout")
uiListLayout.Padding = UDim.new(0, 6)
uiListLayout.SortOrder = Enum.SortOrder.LayoutOrder
uiListLayout.Parent = scrollFrame
local function clearChildren(parent)
for _, c in ipairs(parent:GetChildren()) do
if c:IsA("GuiObject") then c:Destroy() end
end
end
local function showCategory(category)
clearChildren(scrollFrame)
for setName in pairs(animationSets[category]) do
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1, -10, 0, 38)
btn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
btn.TextColor3 = Color3.fromRGB(0, 0, 0)
btn.Font = Enum.Font.Arcade
btn.Text = setName
btn.TextScaled = true
btn.AutoButtonColor = true
btn.BorderSizePixel = 0
btn.Parent = scrollFrame
Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 10)
btn.MouseButton1Click:Connect(function()
activeSetName, activeCategory = setName, category
loadAnimationSet(LocalPlayer.Character, category, setName)
end)
end
uiListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
scrollFrame.CanvasSize = UDim2.new(0, 0, 0, uiListLayout.AbsoluteContentSize.Y + 10)
end)
end
for category in pairs(animationSets) do
local tabBtn = Instance.new("TextButton")
tabBtn.Size = UDim2.new(0, 40, 1, 0)
tabBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
tabBtn.TextColor3 = Color3.fromRGB(0, 0, 0)
tabBtn.Font = Enum.Font.Arcade
tabBtn.Text = tabShortNames[category] or category:sub(1,2)
tabBtn.TextScaled = true
tabBtn.AutoButtonColor = true
tabBtn.BorderSizePixel = 0
tabBtn.Parent = tabBar
Instance.new("UICorner", tabBtn).CornerRadius = UDim.new(0, 6)
tabBtn.MouseButton1Click:Connect(function()
showCategory(category)
end)
end
local firstCategory = next(animationSets)
if firstCategory then
showCategory(firstCategory)
activeCategory = firstCategory
end
local function blockCoreAnimations(character)
if not character then return end
local animFolder = character:FindFirstChild("Animations")
if not animFolder then return end
local blockList = {"Idle", "Walk", "Sprint", "Jump", "Sit", "PassiveAnimation"}
for _, name in ipairs(blockList) do
local anim = animFolder:FindFirstChild(name)
if anim then
local dummy = Instance.new("Animation")
dummy.Name = anim.Name
dummy.AnimationId = ""
dummy.Parent = animFolder
anim:Destroy()
end
end
end
LocalPlayer.CharacterAdded:Connect(function(char)
char:WaitForChild("HumanoidRootPart", 5)
task.wait(0.5)
blockCoreAnimations(char)
if activeSetName and activeCategory then
loadAnimationSet(char, activeCategory, activeSetName)
end
end)
if LocalPlayer.Character then
task.delay(1, function()
blockCoreAnimations(LocalPlayer.Character)
if activeSetName and activeCategory then
loadAnimationSet(LocalPlayer.Character, activeCategory, activeSetName)
end
end)
end
toggleButton.MouseButton1Click:Connect(function()
mainFrame.Visible = not mainFrame.Visible
end)
closeBtn.MouseButton1Click:Connect(function()
mainFrame.Visible = false
end)
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if input.KeyCode == Enum.KeyCode.M then
mainFrame.Visible = not mainFrame.Visible
end
end)
ok 🔒: ••••••••••••