Run it
Copy the script and paste it into your executor.
twait = .wait
tspawn = .spawn
startTime = ()
i = ,
(()
()
() - startTime >=
(()
:().LocalPlayer.Character:()
:().LocalPlayer.Character.Animate:()
:().LocalPlayer.Character.Humanoid.Animator:()
)
)
usedefaultanims =
transparency_level =
LocalPlayer = :().LocalPlayer
(character)
character:()
humanoid = character:(, )
animator = humanoid:()
animator:()
animateModule = character:()
animateModule:()
a = humanoid.DescendantAdded:((child)
child:()
child:()
a:()
a =
)
LocalPlayer.CharacterAdded:(removeAnims)
LocalPlayer.Character
(LocalPlayer.Character)
LocalPlayer.Character.Archivable =
originalChar = LocalPlayer.Character
fakeChar = originalChar:()
fakeChar.Name = LocalPlayer.Name ..
fakeChar.Parent =
fakeChar:(, )
originalChar:()
LocalPlayer.Character =
()
LocalPlayer.Character
newChar = LocalPlayer.Character
newChar.Archivable =
(()
_, obj (fakeChar:())
obj:()
obj.Enabled =
)
_, part (fakeChar:())
part:() part:()
part.Transparency = transparency_level
LocalPlayer.Character = fakeChar
()
fakeTorso = fakeChar:()
newTorso = newChar:()
_, jointName ({, , , , })
fakeJoint = fakeTorso:(jointName)
newJoint = newTorso:(jointName)
part0 = fakeJoint.Part0
part1 = fakeJoint.Part1
worldC0 = part0.CFrame * fakeJoint.C0
worldC1 = part1.CFrame * fakeJoint.C1
relative = worldC0:(worldC1)
newJoint.Transform = relative
newchartorso = newChar:()
()
_, char ({ newChar })
_, obj (char:())
obj:()
obj.CanCollide =
obj.Massless =
RunService = :()
RunService.Heartbeat:(()
()
fakeChar:()
newChar:().CFrame = fakeChar.Torso.CFrame
)
humanoidnewchar = newChar:()
humanoidnewchar.PlatformStand =
humanoidnewchar.AutoRotate =
(()
()
newChar.Humanoid.PlatformStand =
()
newChar.Humanoid.PlatformStand =
)
RunService.PreSimulation:(()
(disableCollisions)
)
.CurrentCamera.CameraSubject = fakeChar:()
usedefaultanims
= fakeChar:() (()
temp = .(, fakeChar)
temp.Name =
temp
)()
Figure = .Parent
Torso = Figure:()
RightShoulder = Torso:()
LeftShoulder = Torso:()
RightHip = Torso:()
LeftHip = Torso:()
Neck = Torso:()
Humanoid = Figure:()
pose =
EMOTE_TRANSITION_TIME =
userAnimateScaleRunSuccess, userAnimateScaleRunValue = (() ():() )
userAnimateScaleRun = userAnimateScaleRunSuccess userAnimateScaleRunValue
()
userAnimateScaleRun
Figure:()
currentAnim =
currentAnimInstance =
currentAnimTrack =
currentAnimKeyframeHandler =
currentAnimSpeed =
animTable = {}
animNames = {
idle = {
{ id = , weight = },
{ id = , weight = }
},
walk = {
{ id = , weight = }
},
run = {
{ id = , weight = }
},
jump = {
{ id = , weight = }
},
fall = {
{ id = , weight = }
},
climb = {
{ id = , weight = }
},
sit = {
{ id = , weight = }
},
toolnone = {
{ id = , weight = }
},
toolslash = {
{ id = , weight = }
},
toollunge = {
{ id = , weight = }
},
wave = {
{ id = , weight = }
},
point = {
{ id = , weight = }
},
dance1 = {
{ id = , weight = },
{ id = , weight = },
{ id = , weight = }
},
dance2 = {
{ id = , weight = },
{ id = , weight = },
{ id = , weight = }
},
dance3 = {
{ id = , weight = },
{ id = , weight = },
{ id = , weight = }
},
laugh = {
{ id = , weight = }
},
cheer = {
{ id = , weight = }
},
}
dances = {, , }
emoteNames = { wave = , point = , dance1 = , dance2 = , dance3 = , laugh = , cheer = }
(name, fileList)
(animTable[name] ~= )
_, connection (animTable[name].connections)
connection:()
animTable[name] = {}
animTable[name].count =
animTable[name].totalWeight =
animTable[name].connections = {}
config = :(name)
(config ~= )
.(animTable[name].connections, config.ChildAdded:((child) (name, fileList) ))
.(animTable[name].connections, config.ChildRemoved:((child) (name, fileList) ))
idx =
_, childPart (config:())
(childPart:())
.(animTable[name].connections, childPart.Changed:((property) (name, fileList) ))
animTable[name][idx] = {}
animTable[name][idx].anim = childPart
weightObject = childPart:()
(weightObject == )
animTable[name][idx].weight =
animTable[name][idx].weight = weightObject.Value
animTable[name].count = animTable[name].count +
animTable[name].totalWeight = animTable[name].totalWeight + animTable[name][idx].weight
idx = idx +
(animTable[name].count <= )
idx, anim (fileList)
animTable[name][idx] = {}
animTable[name][idx].anim = .()
animTable[name][idx].anim.Name = name
animTable[name][idx].anim.AnimationId = anim.id
animTable[name][idx].weight = anim.weight
animTable[name].count = animTable[name].count +
animTable[name].totalWeight = animTable[name].totalWeight + anim.weight
(child)
fileList = animNames[child.Name]
(fileList ~= )
(child.Name, fileList)
.ChildAdded:(scriptChildModified)
.ChildRemoved:(scriptChildModified)
animator = Humanoid Humanoid:()
animator
animTracks = animator:()
i,track (animTracks)
track:()
track:()
name, fileList (animNames)
(name, fileList)
toolAnim =
toolAnimTime =
jumpAnimTime =
jumpAnimDuration =
toolTransitionTime =
fallTransitionTime =
jumpMaxLimbVelocity =
()
oldAnim = currentAnim
(emoteNames[oldAnim] ~= emoteNames[oldAnim] == )
oldAnim =
currentAnim =
currentAnimInstance =
(currentAnimKeyframeHandler ~= )
currentAnimKeyframeHandler:()
(currentAnimTrack ~= )
currentAnimTrack:()
currentAnimTrack:()
currentAnimTrack =
oldAnim
(speed)
speed ~= currentAnimSpeed
currentAnimSpeed = speed
currentAnimTrack:(currentAnimSpeed)
(frameName)
(frameName == )
repeatAnim = currentAnim
(emoteNames[repeatAnim] ~= emoteNames[repeatAnim] == )
repeatAnim =
animSpeed = currentAnimSpeed
(repeatAnim, , Humanoid)
(animSpeed)
(animName, transitionTime, humanoid)
roll = .(, animTable[animName].totalWeight)
origRoll = roll
idx =
(roll > animTable[animName][idx].weight)
roll = roll - animTable[animName][idx].weight
idx = idx +
anim = animTable[animName][idx].anim
(anim ~= currentAnimInstance)
(currentAnimTrack ~= )
currentAnimTrack:(transitionTime)
currentAnimTrack:()
currentAnimSpeed =
currentAnimTrack = humanoid:(anim)
currentAnimTrack.Priority = .AnimationPriority.Core
currentAnimTrack:(transitionTime)
currentAnim = animName
currentAnimInstance = anim
(currentAnimKeyframeHandler ~= )
currentAnimKeyframeHandler:()
currentAnimKeyframeHandler = currentAnimTrack.KeyframeReached:(keyFrameReachedFunc)
toolAnimName =
toolAnimTrack =
toolAnimInstance =
currentToolAnimKeyframeHandler =
(frameName)
(frameName == )
(toolAnimName, , Humanoid)
(animName, transitionTime, humanoid, priority)
roll = .(, animTable[animName].totalWeight)
origRoll = roll
idx =
(roll > animTable[animName][idx].weight)
roll = roll - animTable[animName][idx].weight
idx = idx +
anim = animTable[animName][idx].anim
(toolAnimInstance ~= anim)
(toolAnimTrack ~= )
toolAnimTrack:()
toolAnimTrack:()
transitionTime =
toolAnimTrack = humanoid:(anim)
priority
toolAnimTrack.Priority = priority
toolAnimTrack:(transitionTime)
toolAnimName = animName
toolAnimInstance = anim
currentToolAnimKeyframeHandler = toolAnimTrack.KeyframeReached:(toolKeyFrameReachedFunc)
()
oldAnim = toolAnimName
(currentToolAnimKeyframeHandler ~= )
currentToolAnimKeyframeHandler:()
toolAnimName =
toolAnimInstance =
(toolAnimTrack ~= )
toolAnimTrack:()
toolAnimTrack:()
toolAnimTrack =
oldAnim
(speed)
speed /= ()
speed >
(, , Humanoid)
currentAnimInstance currentAnimInstance.AnimationId ==
(speed / )
pose =
emoteNames[currentAnim] ==
(, , Humanoid)
pose =
()
pose =
()
(, , Humanoid)
jumpAnimTime = jumpAnimDuration
pose =
(speed)
speed /= ()
(, , Humanoid)
(speed / )
pose =
()
pose =
()
(jumpAnimTime <= )
(, fallTransitionTime, Humanoid)
pose =
()
pose =
()
pose =
()
pose =
(speed)
speed >
pose =
pose =
()
_, kid (Figure:())
kid.className == kid
(tool)
_, c (tool:())
c.Name == c.className ==
c
()
(toolAnim == )
(, toolTransitionTime, Humanoid, .AnimationPriority.Idle)
(toolAnim == )
(, , Humanoid, .AnimationPriority.Action)
(toolAnim == )
(, , Humanoid, .AnimationPriority.Action)
()
RightShoulder.MaxVelocity =
LeftShoulder.MaxVelocity =
RightShoulder:( /)
LeftShoulder:(- /)
RightHip:( /)
LeftHip:(- /)
lastTick =
(time)
amplitude =
frequency =
deltaTime = time - lastTick
lastTick = time
climbFudge =
setAngles =
(jumpAnimTime > )
jumpAnimTime = jumpAnimTime - deltaTime
(pose == jumpAnimTime <= )
(, fallTransitionTime, Humanoid)
(pose == )
(, , Humanoid)
(pose == )
(, , Humanoid)
(pose == pose == pose == pose == pose == )
()
amplitude =
frequency =
setAngles =
(setAngles)
desiredAngle = amplitude * .(time * frequency)
RightShoulder:(desiredAngle + climbFudge)
LeftShoulder:(desiredAngle - climbFudge)
RightHip:(-desiredAngle)
LeftHip:(-desiredAngle)
tool = ()
tool tool:()
animStringValueObject = (tool)
animStringValueObject
toolAnim = animStringValueObject.Value
animStringValueObject.Parent =
toolAnimTime = time +
time > toolAnimTime
toolAnimTime =
toolAnim =
()
()
toolAnim =
toolAnimInstance =
toolAnimTime =
Humanoid.Died:(onDied)
Humanoid.Running:(onRunning)
Humanoid.Jumping:(onJumping)
Humanoid.Climbing:(onClimbing)
Humanoid.GettingUp:(onGettingUp)
Humanoid.FreeFalling:(onFreeFall)
Humanoid.FallingDown:(onFallingDown)
Humanoid.Seated:(onSeated)
Humanoid.PlatformStanding:(onPlatformStanding)
Humanoid.Swimming:(onSwimming)
:().LocalPlayer.Chatted:((msg)
emote =
msg ==
emote = dances[.(, #dances)]
(.(msg, , ) == )
emote = .(msg, )
(.(msg, , ) == )
emote = .(msg, )
(pose == emoteNames[emote] ~= )
(emote, , Humanoid)
)
(, , Humanoid)
pose =
Figure.Parent ~=
_, time = ()
(time)
So basically this is just a full reanimation but clientsided, if u figure out how to make this serversided thats crayzy

Universal