Content

Written by: Nuno Leiria, Founder & CEO @ Nilo

Key Takeaways for Exporting from Moon Animator 2

  • Moon Animator 2 gives you two export paths. Use Export Rig to move rigs between projects and Export All to create playable KeyframeSequences in Roblox Studio.
  • After exporting, find the KeyframeSequence in RigModel/AnimSaves or ServerStorage/MoonAnimatorSaves. Then right-click and choose Save to Roblox to get a usable Animation ID.
  • Camera and object animations need their own AnimationController setups and scripts, because they do not use Humanoid rigs by default.
  • Most export problems come from skipping the Save to Roblox upload step or using a LocalScript instead of a server Script.
  • Join Nilo’s open beta if you want to rig, animate, and export RBXMX files directly in your browser without Moon Animator’s multi-step export chain.

Choosing Between Export Rig and Export All in Moon Animator 2

Moon Animator 2 gives you two main export options: Export Rig and Export All. Picking the right one keeps your workflow smooth.

Export Rig saves the rig structure along with its keyframe animation data under AnimSaves. Use this when you want to move a character setup into another project or share a base rig with friends.

Export All takes a different approach. Instead of focusing on the rig structure, it packages every keyframe in your timeline into a KeyframeSequence object and drops it into ServerStorage. Choose this path when you want a playable animation inside Roblox Studio with an Animation ID.

In recent versions of Moon Animator 2, you find both export options in the File menu. If you remember a toolbar button from older builds, open File instead and use the menu entries there.

Finding Your AnimSaves Folder in Roblox Studio

After you run Export All, Moon Animator 2 writes a KeyframeSequence object into your place file. The exact folder depends on your rig setup and plugin version.

Common locations to check are:

  • RigModel/AnimSaves, which is the default folder created inside your rig model when Moon Animator saves locally
  • ServerStorage/MoonAnimatorSaves, which is an older save path used by earlier Moon Animator 2 builds

If you open the Explorer panel in Roblox Studio and the KeyframeSequence is not visible, turn on Show Hidden Objects. Use the visibility filter at the top of the Explorer panel to reveal hidden items.

10-Step Export Process for Playable Animations

Once you know where Moon Animator saves your KeyframeSequence, you still need to upload it to Roblox and grab an Animation ID. Follow these steps in order. Skipping a step, especially Save to Roblox, often causes blank IDs or animations that refuse to play.

  1. Open your Moon Animator 2 session and confirm your rig is selected in the plugin.
  2. Finish your keyframe edits and scrub the timeline to make sure the animation plays correctly inside Moon Animator.
  3. Open the File menu in Moon Animator 2 and choose Save As. Give your animation a clear name and save it.
  4. Choose File > Export Files, or press 5 on your keyboard if that shortcut is active, to start the export.
  5. Look in ServerStorage for the Moon Animator 2 saves folder in the Roblox Studio Explorer. The exported animation appears there.
  6. Find the KeyframeSequence object in one of the AnimSaves folders listed earlier.
  7. Right-click the KeyframeSequence and select Save and Export, then choose Save to Roblox.
  8. Fill out the upload dialog. Enter a title, set the asset category to Animation, and confirm the upload.
  9. Open your Roblox creator inventory and go to the Animations section. Copy the numeric Animation ID from the asset URL.
  10. Paste the ID into an Animation object inside your rig using the format rbxassetid://YOUR_ID_HERE. Then test playback with the script shown below.

Exporting Camera Animations from Moon Animator 2

Camera animations need a separate setup because the Roblox Camera object is not a Humanoid and has no built-in AnimationController.

To export a camera track from Moon Animator 2, follow these steps.

  1. In Moon Animator, add the Camera as an object track instead of a character track. This records position and orientation keyframes on the Camera itself.
  2. Run File > Export Files as you normally would. Moon Animator writes the camera keyframes into a separate KeyframeSequence.
  3. Right-click that KeyframeSequence in the Explorer, choose Save to Roblox, and upload it as an Animation asset.
  4. Copy the Animation ID that Roblox gives you.
  5. In your Roblox Studio place, insert an AnimationController into the Camera object, or into a Part that will drive the Camera.
  6. Create an Animation object inside that AnimationController, set its AnimationId to your copied ID, and use a Script, not a LocalScript, to load and play it.

Camera animations that use this setup move the Camera’s CFrame along the recorded path. If you want the player’s view to follow the camera, set workspace.CurrentCamera.CameraType to Enum.CameraType.Scriptable in your Script before you play the track.

Exporting Object Animations from Moon Animator 2

Object animations, such as moving Parts, Models, or props that are not Humanoid rigs, use a similar export path. You just need a few extra script tweaks inside Roblox Studio.

  1. In Moon Animator 2, add the Part or Model as an object track. Make sure it has a Motor6D or Weld connecting moving parts, or use Attachments if the object is a single mesh.
  2. Run File > Export Files to generate the KeyframeSequence.
  3. Upload the KeyframeSequence with Save to Roblox and copy the Animation ID.
  4. In Roblox Studio, insert an AnimationController into the root Part of your object. AnimationController handles animation playback on non-Humanoid rigs.
  5. Create an Animation object inside the AnimationController and set its AnimationId.
  6. Use the Script below to load and play the animation.
-- Place this Script inside your NPC model or animated object local model = script.Parent local humanoid = model:FindFirstChildOfClass("Humanoid") local animController = model:WaitForChild("AnimationController") -- Create and configure the Animation object local animation = Instance.new("Animation") animation.AnimationId = "rbxassetid://YOUR_ANIMATION_ID_HERE" -- Load via Humanoid if present, otherwise use AnimationController directly local animationTrack if humanoid then animationTrack = humanoid:LoadAnimation(animation) else animationTrack = animController:LoadAnimation(animation) end -- Optional: loop the animation animationTrack.Looped = true -- Optional: adjust playback speed (1 = normal, 1.5 = 50% faster) animationTrack.PlaybackSpeed = 1 animationTrack:Play()

Keep these rules in mind when you wire up your scripts.

Skip manual AnimationController setup with Nilo’s one-click export

Troubleshooting Common Moon Animator 2 Export Issues

This troubleshooting table helps you fix the most common problems that show up after you export from Moon Animator 2 and move into Roblox Studio.

Problem Likely Cause Fix
AnimSaves folder not visible in Explorer Hidden objects filter is off, or export wrote to a different folder Enable Show Hidden Objects in Explorer, then check the AnimSaves paths listed earlier
Keyframes missing after export Animation was not saved before Export Files was run Use File > Save As inside Moon Animator first, then run Export Files again
Export option not visible in toolbar Export options now live in the File menu Open the File menu inside Moon Animator 2 and use the export entries there
Animation ID returns blank or 0 Save to Roblox step was skipped, so the KeyframeSequence was never uploaded Right-click the KeyframeSequence, choose Save to Roblox, complete the upload dialog, then copy the ID from your Roblox inventory

If you want to skip this whole chain, Nilo stands out by letting you generate, rig, and animate in one browser flow. You can then export an RBXMX file straight into Roblox, with no AnimSaves hunt, no ID copy-paste, and no Save to Roblox dialog. The RBXMX format packs textures and attachments into a single file, and you can connect your Roblox account with an API key to send creations directly into your experience. In Nilo’s February 2026 survey, 72% of builders said Nilo makes their creative process easier by “a lot.”

Eliminate AnimSaves hunting and ID copy-paste with Nilo’s direct export

Frequently Asked Questions

Where exactly is the AnimSaves folder after I export from Moon Animator 2?

Moon Animator 2 can write your KeyframeSequence to different locations depending on your rig and plugin version. Check RigModel/AnimSaves first, because that is the default folder created inside your rig model. If it is not there, look in ServerStorage/MoonAnimatorSaves. If the folder is still not visible in the Roblox Studio Explorer, enable Show Hidden Objects using the filter at the top of the Explorer panel.

What is the difference between Export Rig and Export All in Moon Animator 2?

Export Rig focuses on the rig structure itself rather than creating a ready-to-play animation. It is designed for moving character setups between projects or sharing base rigs. Export All, which you can also trigger by pressing 5, packages every keyframe in your timeline into a KeyframeSequence object and places it in ServerStorage. If you want a working animation in Roblox Studio with an Animation ID, Export All is the option to use.

Why does my animation not play on my NPC after I paste the Animation ID?

Most of the time, the problem comes from a missing Save to Roblox upload step, a LocalScript instead of a regular Script, or an AnimationController that is not inside the model. Make sure you right-clicked the KeyframeSequence and completed the Save to Roblox dialog before copying the ID. Without that upload, the ID does not exist in Roblox’s system. Then confirm your Script is a server Script, not a LocalScript, and that an AnimationController is present inside the model. For Humanoid rigs, Roblox adds AnimationController automatically. For non-Humanoid objects such as props or camera rigs, you need to insert it manually into the root Part.

Is there a way to animate and export for Roblox without going through the Moon Animator export steps?

Yes. Nilo stands out as a browser-based creation platform that lets you rig a bipedal character with one click, generate an animation from a text description, and export the result as an RBXMX file directly into your experience. You can also connect your Roblox account with an API key and send the creation straight into your Roblox world without downloading anything. There is no AnimSaves folder to find, no Save to Roblox dialog, and no Animation ID to copy and paste. Nilo is currently in open beta and free to use with 1,000 Nilo Bits per month included.

Does Roblox have a polygon limit that affects exported animations and rigs?

Roblox caps meshes at 20,000 triangles per part. This limit applies to the rig mesh itself, not to the animation data, so a KeyframeSequence with many keyframes will not hit the polygon cap. However, if your rig’s mesh comes from an AI tool and has a very high triangle count, it may fail Roblox’s performance checks on import. Nilo’s built-in level of detail (LOD) system adjusts polygon counts automatically before export, so the mesh stays under Roblox’s 20,000 triangle limit without manual cleanup in Blender.