Im working on an anti cheat, both non physics and physics, and ive came across a very vulnerable replication, animations from client replicate to server meaning the exploiter can add any animation he likes and it can be ANYTHING, including (sensitive) r34 animations, I do not want to danger the players who play my game, especially minors and underages, but whitelisting animations can get tedious, so an easy solution, why cant i see who created an anim? tell me how bc idk
I think i know what you’re trying to talk about.
What they use is delete the animator inside humanoid, “create” new one and use a tween to animate themselves. I have a script detailing what i’m talking about if you’re looking to patch it.
(They also use keyframes)
for ii,frame in pairs(keyframes) do -- for i,v on each keyframe to get each individual frame
local duration = keyframes[ii+1] and keyframes[ii+1].Time - frame.Time or task.wait(1/120)
print(tostring(duration))
if keyframes[ii-1] then
task.wait((frame.Time - keyframes[ii-1].Time)*speed)
end
for i,v in pairs(frame:GetDescendants()) do -- get each part in the frame
if Joints[v.Name] then -- see if the part exists in the joint table
TweenService:Create(Joints[v.Name],TweenInfo.new(duration*speed),{Transform = v.CFrame}):Play()
end
end
end
Trying to get an animation owner is the same as trying to get a (let’s say) sound owner, it’s near impossible without HttpCalls.
If you want i can provide a list of every single animation id they use.