How To Get Cartoon Animations For Free On Roblox

Jan 21st, 2017
Never
  • How to Animate on Roblox Local Script (put this inside the TextButton) script.Parent.MouseButton1Click:Connect(function game.ReplicatedStorage.RemoteEvent:FireServer(“00000000”) — Change 0000000 to your animation ID.
  • I had to copy and paste every single Animation ID for every Animation pack. And because I want to spare other people the effort, here are the IDs. I put it in a.txt file for now. AnimationIDs.txt (2.1 KB) Please blame me if there’s a easier way to do this! 🎇 Happy New Year 🎇 Kind regards 👑 NovaMrRoyal 👑.

Let's be honest. Most people think that making animated a quality animated video is difficult. ‍ It doesn't have to be.‍ The days of struggling with Adobe After Effects editing software are over. ‍Whether used for commercial purposes or personal use, our video maker app allows you to create professionally designed animated videos online in just minutes, straight from your web browser.

Not a member of Pastebin yet?Sign Up, it unlocks many cool features!
  1. local child = parent:findFirstChild(childName)
  2. while true do
  3. if child.NamechildName then return child end
  4. end
  5. local Figure = script.Parent
  6. local RightShoulder = waitForChild(Torso, 'Right Shoulder')
  7. local LeftShoulder = waitForChild(Torso, 'Left Shoulder')
  8. local RightHip = waitForChild(Torso, 'Right Hip')
  9. local Neck = waitForChild(Torso, 'Neck')
  10. local Humanoid = waitForChild(Figure, 'Humanoid')
  11. local currentAnimInstance = nil
  12. local currentAnimKeyframeHandler = nil
  13. local animTable = {}
  14. idle = {
  15. { id = 'http://www.roblox.com/asset/?id=180435571', weight = 9 },
  16. { id = 'http://www.roblox.com/asset/?id=180435792', weight = 1 }
  17. walk = {
  18. { id = 'http://www.roblox.com/asset/?id=180426354', weight = 10 }
  19. run = {
  20. },
  21. { id = 'http://www.roblox.com/asset/?id=125750702', weight = 10 }
  22. fall = {
  23. { id = 'http://www.roblox.com/asset/?id=180436148', weight = 10 }
  24. climb = {
  25. { id = 'http://www.roblox.com/asset/?id=180436334', weight = 10 }
  26. sit = {
  27. { id = 'http://www.roblox.com/asset/?id=178130996', weight = 10 }
  28. toolnone = {
  29. { id = 'http://www.roblox.com/asset/?id=182393478', weight = 10 }
  30. toolslash = {
  31. { id = 'http://www.roblox.com/asset/?id=129967390', weight = 10 }
  32. },
  33. { id = 'http://www.roblox.com/asset/?id=129967478', weight = 10 }
  34. wave = {
  35. { id = 'http://www.roblox.com/asset/?id=128777973', weight = 10 }
  36. point = {
  37. { id = 'http://www.roblox.com/asset/?id=128853357', weight = 10 }
  38. dance1 = {
  39. { id = 'http://www.roblox.com/asset/?id=182435998', weight = 10 },
  40. { id = 'http://www.roblox.com/asset/?id=182491037', weight = 10 },
  41. { id = 'http://www.roblox.com/asset/?id=182491065', weight = 10 }
  42. dance2 = {
  43. { id = 'http://www.roblox.com/asset/?id=182436842', weight = 10 },
  44. { id = 'http://www.roblox.com/asset/?id=182491248', weight = 10 },
  45. { id = 'http://www.roblox.com/asset/?id=182491277', weight = 10 }
  46. dance3 = {
  47. { id = 'http://www.roblox.com/asset/?id=182436935', weight = 10 },
  48. { id = 'http://www.roblox.com/asset/?id=182491368', weight = 10 },
  49. { id = 'http://www.roblox.com/asset/?id=182491423', weight = 10 }
  50. laugh = {
  51. { id = 'http://www.roblox.com/asset/?id=129423131', weight = 10 }
  52. cheer = {
  53. { id = 'http://www.roblox.com/asset/?id=129423030', weight = 10 }
  54. }
  55. -- Existance in this list signifies that it is an emote, the value indicates if it is a looping emote
  56. local emoteNames = { wave = false, point = false, dance1 = true, dance2 = true, dance3 = true, laugh = false, cheer = false}
  57. function configureAnimationSet(name, fileList)
  58. for _, connection in pairs(animTable[name].connections) do
  59. end
  60. animTable[name] = {}
  61. animTable[name].totalWeight = 0
  62. local config = script:FindFirstChild(name)
  63. -- print('Loading anims ' .. name)
  64. table.insert(animTable[name].connections, config.ChildAdded:connect(function(child) configureAnimationSet(name, fileList) end))
  65. table.insert(animTable[name].connections, config.ChildRemoved:connect(function(child) configureAnimationSet(name, fileList) end))
  66. for _, childPart in pairs(config:GetChildren()) do
  67. table.insert(animTable[name].connections, childPart.Changed:connect(function(property) configureAnimationSet(name, fileList) end))
  68. animTable[name][idx].anim = childPart
  69. local weightObject = childPart:FindFirstChild('Weight')
  70. animTable[name][idx].weight = 1
  71. animTable[name][idx].weight = weightObject.Value
  72. animTable[name].count = animTable[name].count + 1
  73. animTable[name].totalWeight = animTable[name].totalWeight + animTable[name][idx].weight
  74. -- print(name .. ' [' .. idx .. '] ' .. animTable[name][idx].anim.AnimationId .. ' (' .. animTable[name][idx].weight .. ')')
  75. end
  76. end
  77. -- fallback to defaults
  78. for idx, anim in pairs(fileList) do
  79. animTable[name][idx].anim = Instance.new('Animation')
  80. animTable[name][idx].anim.AnimationId = anim.id
  81. animTable[name].count = animTable[name].count + 1
  82. animTable[name].totalWeight = animTable[name].totalWeight + anim.weight
  83. -- print(name .. ' [' .. idx .. '] ' .. anim.id .. ' (' .. anim.weight .. ')')
  84. end
  85. function scriptChildModified(child)
  86. if (fileList ~= nil) then
  87. end
  88. script.ChildRemoved:connect(scriptChildModified)
  89. configureAnimationSet(name, fileList)
  90. local toolAnim = 'None'
  91. local jumpAnimDuration = 0.3
  92. local toolTransitionTime = 0.1
  93. local jumpMaxLimbVelocity = 0.75
  94. -- functions
  95. function stopAllAnimations()
  96. if (emoteNames[oldAnim] ~= nil and emoteNames[oldAnim] false) then
  97. end
  98. currentAnim = '
  99. if (currentAnimKeyframeHandler ~= nil) then
  100. end
  101. if (currentAnimTrack ~= nil) then
  102. currentAnimTrack:Destroy()
  103. end
  104. end
  105. function setAnimationSpeed(speed)
  106. currentAnimSpeed = speed
  107. end
  108. if (frameName 'End') then
  109. local repeatAnim = currentAnim
  110. if (emoteNames[repeatAnim] ~= nil and emoteNames[repeatAnim] false) then
  111. end
  112. local animSpeed = currentAnimSpeed
  113. setAnimationSpeed(animSpeed)
  114. end
  115. -- Preload animations
  116. function playAnimation(animName, transitionTime, humanoid)
  117. local roll = math.random(1, animTable[animName].totalWeight)
  118. local idx = 1
  119. while (roll > animTable[animName][idx].weight) do
  120. idx = idx + 1
  121. -- print(animName .. ' ' .. idx .. ' [' .. origRoll .. ']')
  122. if (anim ~= currentAnimInstance) then
  123. if (currentAnimTrack ~= nil) then
  124. currentAnimTrack:Destroy()
  125. currentAnimTrack = humanoid:LoadAnimation(anim)
  126. -- play the animation
  127. currentAnim = animName
  128. if (currentAnimKeyframeHandler ~= nil) then
  129. end
  130. currentAnimKeyframeHandler = currentAnimTrack.KeyframeReached:connect(keyFrameReachedFunc)
  131. end
  132. end
  133. -------------------------------------------------------------------------------------------
  134. -------------------------------------------------------------------------------------------
  135. local toolAnimName = '
  136. local toolAnimInstance = nil
  137. if (frameName 'End') then
  138. playToolAnimation(toolAnimName, 0.0, Humanoid)
  139. end
  140. function playToolAnimation(animName, transitionTime, humanoid)
  141. local roll = math.random(1, animTable[animName].totalWeight)
  142. local idx = 1
  143. while (roll > animTable[animName][idx].weight) do
  144. idx = idx + 1
  145. -- print(animName .. ' * ' .. idx .. ' [' .. origRoll .. ']')
  146. toolAnimTrack:Stop()
  147. transitionTime = 0
  148. toolAnimTrack = humanoid:LoadAnimation(anim)
  149. -- play the animation
  150. toolAnimName = animName
  151. currentToolAnimKeyframeHandler = toolAnimTrack.KeyframeReached:connect(toolKeyFrameReachedFunc)
  152. end
  153. function stopToolAnimations()
  154. currentToolAnimKeyframeHandler:disconnect()
  155. toolAnimInstance = nil
  156. toolAnimTrack:Stop()
  157. toolAnimTrack = nil
  158. return oldAnim
  159. -------------------------------------------------------------------------------------------
  160. -------------------------------------------------------------------------------------------
  161. if speed>0.01 then
  162. if currentAnimInstance and currentAnimInstance.AnimationId 'http://www.roblox.com/asset/?id=180426354' then
  163. end
  164. else
  165. playAnimation('idle', 0.1, Humanoid)
  166. end
  167. end
  168. function onDied()
  169. end
  170. function onJumping()
  171. jumpAnimTime = jumpAnimDuration
  172. end
  173. function onClimbing(speed)
  174. setAnimationSpeed(speed / 12.0)
  175. end
  176. function onGettingUp()
  177. end
  178. function onFreeFall()
  179. playAnimation('fall', fallTransitionTime, Humanoid)
  180. pose = 'FreeFall'
  181. pose = 'FallingDown'
  182. pose = 'Seated'
  183. pose = 'PlatformStanding'
  184. if speed>0 then
  185. else
  186. end
  187. for _, kid in ipairs(Figure:GetChildren()) do
  188. end
  189. end
  190. function getToolAnim(tool)
  191. if c.Name 'toolanim' and c.className 'StringValue' then
  192. end
  193. return nil
  194. playToolAnimation('toolnone', toolTransitionTime, Humanoid)
  195. end
  196. if (toolAnim 'Slash') then
  197. return
  198. playToolAnimation('toollunge', 0, Humanoid)
  199. end
  200. RightShoulder.MaxVelocity = 0.15
  201. RightShoulder:SetDesiredAngle(3.14 /2)
  202. RightHip:SetDesiredAngle(3.14 /2)
  203. end
  204. local lastTick = 0
  205. function move(time)
  206. local frequency = 1
  207. lastTick = time
  208. local climbFudge = 0
  209. jumpAnimTime = jumpAnimTime - deltaTime
  210. if (pose 'FreeFall' and jumpAnimTime <= 0) then
  211. playAnimation('fall', fallTransitionTime, Humanoid)
  212. playAnimation('sit', 0.5, Humanoid)
  213. elseif (pose 'Running') then
  214. elseif (pose 'Dead' or pose 'GettingUp' or pose 'FallingDown' or pose 'Seated' or pose 'PlatformStanding') then
  215. stopAllAnimations()
  216. frequency = 1
  217. end
  218. if (setAngles) then
  219. desiredAngle = amplitude * math.sin(time * frequency)
  220. RightShoulder:SetDesiredAngle(desiredAngle + climbFudge)
  221. LeftShoulder:SetDesiredAngle(desiredAngle - climbFudge)
  222. LeftHip:SetDesiredAngle(-desiredAngle)
  223. local tool = getTool()
  224. toolAnim = animStringValueObject.Value
  225. animStringValueObject.Parent = nil
  226. end
  227. if time > toolAnimTime then
  228. toolAnim = 'None'
  229. else
  230. toolAnim = 'None'
  231. toolAnimTime = 0
  232. end
  233. -- connect events
  234. Humanoid.Running:connect(onRunning)
  235. Humanoid.Climbing:connect(onClimbing)
  236. Humanoid.FreeFalling:connect(onFreeFall)
  237. Humanoid.Seated:connect(onSeated)
  238. Humanoid.PlatformStanding:connect(onPlatformStanding)
  239. game.Players.LocalPlayer.Chatted:connect(function(msg)
  240. if msg '/e dance' then
  241. elseif (string.sub(msg, 1, 3) '/e ') then
  242. elseif (string.sub(msg, 1, 7) '/emote ') then
  243. end
  244. if (pose 'Standing' and emoteNames[emote] ~= nil) then
  245. end
  246. end)
  247. playAnimation('idle', 0.1, Humanoid)
  248. local _, time = wait(0.1)
  249. end

Archive

After months of anticipation, you can now create and publish character animations using the brand new Animation Editor plugin for ROBLOX Studio. This article explains how the plugin works, and what this feature means for ROBLOX. As always, we’re leaving the creative freedom and innovation to you, our builders and developers.

To install the Animation Editor plugin, follow the instructions described in this post about our recent plugin-management update. After installation, you’ll see a series of icons — highlighted in the following image — in the toolbar. These are the buttons you use to interact with the Animation Editor.

Roblox

Creating, uploading and using an animation

The Animation Editor gives you fine-grain control over each limb of the standard ROBLOX humanoid, allowing you to move the legs, torso, arms and head individually. This lets you decide how avatars move in the games you create.

Before getting started, we recommend watching this walkthrough of the animation-creation process.

Each movement you create is logged in a timeline, which ultimately represents the length and speed of the animation you create. All of this can be tweaked using the tools included with the Animation Editor. Once you’ve finished your animation, you can upload it to ROBLOX using the Export option. Uploading an animation will cost 30 ROBUX, and will go through a moderation period before hitting the site. Once approved, you can view the animation on ROBLOX.com — it will be listed under the “Animations” section of the Develop page — and acquire its asset ID. (A similar process is used when uploading decals.)

Back in Studio, you’ll notice a new Animation Object within the Basic Objects list (Insert > Basic Object > Animation Object). Insert this object into your Workspace, then paste your animation’s asset ID into the object. Your animation now lives inside your game. As it stands, you’ll have to be a proficient scripter to get these running. You can do things like create triggers for animations and change the animations for your game entirely.

Animation education

How To Get Cartoon Animations For Free On Roblox Id

When we first announced this project, we had just changed all of the default character animations. To get an idea of how animations work, we recommend taking a look at the script of the default humanoid. To do this, open a game in ROBLOX Studio and look carefully at your character’s Animate script. This is a complex script that is certainly not for the faint of heart, but it’s a great place to start learning what’s possible with the Animation Editor.

Looking ahead

This is only the first step of many that will continue to change not just how ROBLOX is animated, but how those animations are shared. Currently, you can only use animations that you create. We’re toying with the idea of socializing these animations, making a broad place where uploaded and approved animations can be seen and used by all. Say another user makes an animation that you’re particularly fond of — should you be able to buy it? Moreover, if you were to sell your animations, should you be able to determine the price? These are all questions that we’re pondering and we would love to hear your feedback.

For now, we’re excited to see what comes of this, and can’t wait to see ROBLOX avatars moving differently in our favorite places and games.

How To Get Cartoon Animations For Free On Roblox Avatars

Recommended