--[[
animation logger V1 alpha
updates automatically
DEL to save animations to workspace
INSERT to clear saved animations
PAUSE to stop script
]]
--auto updater yay
local testaaa=true
local stopConns={}
local function add(v)
table.insert(stopConns,v)
end
local function staph()
for i,v in next,stopConns do
pcall(v)
pcall(function()
v:Disconnect()
end)
pcall(task.cancel,v)
end
error("bye")
end
local ignoreanim={
[1] = "http://www.roblox.com/asset/?id=507770677",
[2] = "http://www.roblox.com/asset/?id=507765644",
[3] = "http://www.roblox.com/asset/?id=507771019",
[4] = "http://www.roblox.com/asset/?id=507771955",
[5] = "http://www.roblox.com/asset/?id=507772104",
[6] = "http://www.roblox.com/asset/?id=507776043",
[7] = "http://www.roblox.com/asset/?id=507776720",
[8] = "http://www.roblox.com/asset/?id=507776879",
[9] = "http://www.roblox.com/asset/?id=507777268",
[10] = "http://www.roblox.com/asset/?id=507777451",
[11] = "http://www.roblox.com/asset/?id=507777623",
[12] = "http://www.roblox.com/asset/?id=507767968",
[13] = "http://www.roblox.com/asset/?id=507766388",
[14] = "http://www.roblox.com/asset/?id=507766666",
[15] = "http://www.roblox.com/asset/?id=507765000",
[16] = "http://www.roblox.com/asset/?id=507770818",
[17] = "http://www.roblox.com/asset/?id=507770453",
[18] = "http://www.roblox.com/asset/?id=2506281703",
[19] = "http://www.roblox.com/asset/?id=522638767",
[20] = "http://www.roblox.com/asset/?id=507768375",
[21] = "http://www.roblox.com/asset/?id=522635514",
[22] = "http://www.roblox.com/asset/?id=507770239",
[23] = "http://www.roblox.com/asset/?id=913376220",
[24] = "http://www.roblox.com/asset/?id=913384386",
[25] = "http://www.roblox.com/asset/?id=913389285",
[26] = "http://www.roblox.com/asset/?id=913402848",
[27] = "http://www.roblox.com/asset/?id=7715096377"
}
local Service={}
do
Service.get=function(name)
return game.GetService(game,name)
end
end
local MarketplaceService,Players,LocalPlayer=game:GetService("MarketplaceService"),game:GetService("Players"),game:GetService("Players").LocalPlayer
local AnimationsLogged={}
local function loganim(anim)
if not table.find(AnimationsLogged,anim.AnimationId) and not table.find(ignoreanim,anim.AnimationId) then
table.insert(AnimationsLogged,anim.AnimationId)
end
end
function writefileExploit()
if writefile then
return true
else
return false
end
end
local function Notify(t)
game:GetService("StarterGui"):SetCore("SendNotification",{
Title="anilogger v1",
Text=t,
Icon="http://www.roblox.com/asset/?id=18724162789",
Duration=5
})
end
local function readfileExploit()
if readfile then
return true
else
return false
end
end
Notify("anilogger has loaded")
if writefileExploit() then
Notify("press DEL to save all current logged animations")
Notify("press INSERT to clear logged anims")
Notify("PAUSE to stop script (script updates automatically)")
if not readfileExploit() then
Notify("readfile is not supported on your executor")
end
else
Notify("writefile is not supported on your executor")
if not readfileExploit() then
Notify("readfile is not supported on your executor")
end
end
add(game:GetService("RunService").Heartbeat:Connect(function()
for i,a in next,game:GetService("Players"):GetPlayers() do
if a.Character:FindFirstChildOfClass("Humanoid") then
local s,e=pcall(function()
local hum:Humanoid=a.Character:FindFirstChildOfClass("Humanoid")
for i,v in next,hum:GetPlayingAnimationTracks() do
if not table.find(AnimationsLogged,v.Animation.AnimationId) and not table.find(ignoreanim,v.Animation.AnimationId) then
warn("Logged animation: "..v.Name.." ("..v.Animation.AnimationId..")")
loganim(v.Animation)
--v=v.Animation
end
end
end)
if not s then
warn(e)
end
end
end
end))
do
--save
-- if writefileExploit() then*
local blacklistedwords={
"'",'"'
}
function printTable(tbl)
if type(tbl) ~= 'table' then return nil end
local depthCount = -15
local Time=os.date("!*t",os.clock())
local txt=[[{]]
local function run(val, inPrefix)
depthCount = depthCount + 15
-- if inPrefix then print(string.rep(' ', depthCount) .. '{') end
for i,v in pairs(val) do
if type(v) == 'table' then
-- print(string.rep(' ', depthCount) .. ' [' .. tostring(i) .. '] = {')
txt=txt..'\n'..string.rep(' ', depthCount) .. ' [' .. tostring(i) .. '] = {'
run(v, false)
wait()
else
-- print(string.rep(' ', depthCount) .. ' [' .. tostring(i) .. '] = ' .. tostring(v))
local soundname=""
local child={SoundId=v}
soundname = string.match(child.SoundId, "rbxasset://sounds.+") or string.match(child.SoundId, "&hash=.+") or string.match(child.SoundId, "%d+")
soundname=game:GetService("MarketplaceService"):GetProductInfo(soundname)
local _soundname=tostring(i)
if soundname.Name then
_soundname=soundname.Name
for i,a in next,blacklistedwords do
local s,e=pcall(function()
_soundname=_soundname:gsub(a,"")
end)
if not s then
warn("failed to remove "..a.." from name")
end
end
end
txt=txt..'\n'..string.rep(' ', depthCount) .. ' ["' .. _soundname .. '"] = "' .. tostring(v)..'",'
game:GetService("RunService").RenderStepped:Wait()
end
end
-- print(string.rep(' ', depthCount) .. '}')
depthCount = depthCount - 15
end
run(tbl, true)
local yeah=string.format('%d-%d-%dT%02d:%02d:%02dZ', Time.year, Time.month, Time.day, Time.hour, Time.min, Time.sec)
txt=txt.."\n}"
txt=txt.."\n\n\n--[[\nANIMATIONLOGGER V1\nCREATED BY HMM1X\nPlace where animations are logged in: "..game.PlaceId.."\nTime file was saved at: "..yeah.."\n]]"
return txt
end
local function write()
local filename=math.random(1,9999)
if writefileExploit() then
if #AnimationsLogged>0 then
Notify("saving logged anims")
local lines=printTable(AnimationsLogged)
writefile(`Animations_{tostring(game.PlaceId)}_{tostring(filename)}.txt`,lines)
Notify(`saved to Animations_{tostring(game.PlaceId)}_{tostring(filename)}`)
else
Notify("no animations logged")
end
end
end
if not game:GetService("UserInputService").TouchEnabled then
add( game:GetService("UserInputService").InputBegan:Connect(function(v,gp)
if not gp then
if v.KeyCode==(Enum.KeyCode.Delete) then
if writefileExploit() then
write()
else
Notify("writefile is not existant")
end
elseif v.KeyCode==Enum.KeyCode.Insert then
Notify("clearing saved animations")
AnimationsLogged={}
elseif v.KeyCode==Enum.KeyCode.Pause then
Notify("stopping")
AnimationsLogged={}
staph()
end
end
end))
end
-- Gui to Lua
-- Version: 3.2
-- Instances:
-- Gui to Lua
-- Version: 3.2
-- Instances:
local ScreenGui = Instance.new("ScreenGui")
local save = Instance.new("TextButton")
local UICorner = Instance.new("UICorner")
local save_2 = Instance.new("TextButton")
local UICorner_2 = Instance.new("UICorner")
local save_3 = Instance.new("TextButton")
local UICorner_3 = Instance.new("UICorner")
--Properties:
ScreenGui.Parent = game:GetService("CoreGui")
ScreenGui.DisplayOrder=9999
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
save.Name = "save"
save.Parent = ScreenGui
save.BackgroundColor3 = Color3.fromRGB(128, 128, 128)
save.BorderColor3 = Color3.fromRGB(0, 0, 0)
save.BorderSizePixel = 0
save.Position = UDim2.new(0.775259078, 0, 0.0174129345, 0)
save.Size = UDim2.new(0.0829015523, 0, 0.0621890537, 0)
save.Font = Enum.Font.Cartoon
save.Text = "save animations"
save.TextColor3 = Color3.fromRGB(255, 255, 255)
save.TextScaled = true
save.TextSize = 14.000
save.TextWrapped = true
UICorner.Parent = save
save_2.Name = "save"
save_2.Parent = ScreenGui
save_2.BackgroundColor3 = Color3.fromRGB(128, 128, 128)
save_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
save_2.BorderSizePixel = 0
save_2.Position = UDim2.new(0.69235754, 0, 0.0174129345, 0)
save_2.Size = UDim2.new(0.0829015523, 0, 0.0621890537, 0)
save_2.Font = Enum.Font.Cartoon
save_2.Text = "clear"
save_2.TextColor3 = Color3.fromRGB(255, 255, 255)
save_2.TextScaled = true
save_2.TextSize = 14.000
save_2.TextWrapped = true
UICorner_2.Parent = save_2
save_3.Name = "save"
save_3.Parent = ScreenGui
save_3.BackgroundColor3 = Color3.fromRGB(128, 128, 128)
save_3.BorderColor3 = Color3.fromRGB(0, 0, 0)
save_3.BorderSizePixel = 0
save_3.Position = UDim2.new(0.609455943, 0, 0.0174129345, 0)
save_3.Size = UDim2.new(0.0829015523, 0, 0.0621890537, 0)
save_3.Font = Enum.Font.Cartoon
save_3.Text = "stop"
save_3.TextColor3 = Color3.fromRGB(255, 255, 255)
save_3.TextScaled = true
save_3.TextSize = 14.000
save_3.TextWrapped = true
UICorner_3.Parent = save_3
save.MouseButton1Down:Connect(function()
if writefileExploit() then
write()
else
Notify("writefile is not existant")
end
end)
save_2.MouseButton1Down:Connect(function()
Notify("clearing saved animations")
AnimationsLogged={}
end)
save_3.MouseButton1Down:Connect(function()
staph()
Notify("stopping aniloger")
AnimationsLogged={}
end)
--end
end