R6 & R15 Animate Module

I wrote a small animate class that PARTIALLY follows SOLID and OOP principles. It works for both R6 and R15 rig types.

You can adjust any transition value in this module to suit your needs (since it’s configured for my game). Also, don’t forget to add the animation IDs that you plan to use.

I removed Emotes and Dances because they aren’t needed in my game through chat commands. I will add a complement to this module in the form of an animation (emote) player. And of course, if you evaluate this module, I’ll share the code and make it perfect XD

Script:

2 Likes

Im not sure whats causing this,

So weird bug, it will NOT stop playing the default animations. Any other animations are ovveridden I think…

I have a sprint mechanic, Animation works fine with normal animate, but with this my character is now steve from minecraft in creative mode.

Im too lazy to look into the code and bother you, so if you could tell me a possible reason that would be lovely.

Also like god they need to remake the animate script bro :sweat_smile:

Edit: There is a public method called “ChangeMovementSpeed”. Is this supposed to replace functionality? im not sure, i just drank coffee and feel like a squirrel on steriods.

Edit: This module is goated, god damn nice work!

2 Likes

Well, as I already mentioned above, if people give feedback on this module, I’ll definitely improve it by adding convenient animation (emote) playback, preset with animations for R6 and R15 characters.

For now, this module is just a rework of the existing ‘Animate’ script, but in a better, more comprehensive form.

Edit: The public methods are created simply to demonstrate that you can use the module’s functions externally. They are not intended for any specific functionality at the moment, just for demonstration purposes

Oh sorry, ill try to fix my own issue then. Thank you!

also again thank you so much for taking the time to recreate that horrid creation called “Animate”

1 Like

One suggestion I strongly encourage is Preloading the animations.

The “PlayAnimation” function contains the only piece of code that loads an animation. This can sometimes lead to bugs, or just weird looking loading.

I suggest creating a function that is called in the “.new” class.

Also, I suggest keeping the animation Id’s in a table or module, for ease of access and to retire the “_CreateAnimationInstance” function.

I have updated the module. All of the above has been taken into account.

I haven’t done the emotion playback module yet XD
Maybe someone will push me towards it, but I built the structure so that it wouldn’t be an issue for someone else to implement it, but the module is unlikely to receive any updates from me.

1 Like

Thank you for this update.

Some quick notes:

  1. Preloading the Animations does allow for loading the animations faster. But it still has the same “Bug” look when first loaded.

  2. When you first load, the animate module does not seem to recognize the character and does not load or connect to any events. It gets stuck in the “ToolNone” pose.

  3. All animations that are played and connected to the different humanoid events cannot be ovveridden. Their “AnimationPriority” is not set therefore its established that they are “Action4” or the highest priority action.

*Ill be fixing these for my games manually and sending it back here.

If I do change it substantially ill be creating a new topic and crediting you (Ill make it very clear your the original creator).*

1 Like

I won’t add AnimationPriority; it makes no sense in this context.
Otherwise, you can add an additional argument to PlayAnimation.

I fixed:

  • Animation loading
  • Moved all configuration preparation logic inside the configuration itself
  • Fixed the PlayAnimation function logic
  • Fixed a bug where the tool-holding animation played instead of the idle animation

Thank you, appreciate it.

Sorry, I realized I was talking about the wrong thing.

The decider for if the Walk/Run animation Constantly ovverrides any other animations NOT above Action2 – Animation Priority.

Please set all animations to Animation Priority “Movement”. Thats what the normal script does I think.

Besides that, Module is looking great now. Thank you!

1 Like

Im so sorry to keep critiquing this product. But ive been supporting a new animate class for years now.

Here is a small bug I found:

Description: Idle plays then stops, resets to “Toolnone” or “No Animation” stage.

I apologize for the late response.

It seems unusual in your case.
Yes, there is an issue with the Tool animation resetting during the looping idle animation, but this can be resolved by simply changing the AnimationPriority in the Tools script.

However, the script cannot fully reset the animation, as some animation will always play unless influenced by external functions.

Perhaps the item’s animation was set for the whole body, and because of this, when the idle animation repeats, there’s a conflict with AnimationPriority, which can be fixed by changing it in the Tools script.

If the issue persists, please provide additional information, as I was unable to replicate this exact bug

Yea turns out it was also somewhat on my side.

Since the script doesnt handle deleting the normal animate local script. I created a function that would find it and destroy it as fast as possible.

However this caused the idle animation for THIS module to be set too late and would keep resetting.

Also I do have a modified version that has lots of bug fixes that im going to hold onto until im sure its fully functional.

I will credit you in my games devlog doc as well. What do you want to be tagged as?

You don’t need to mention me; I’m not asking for that. You’re free to use this module for your own purposes.

If you really want to, you can just leave a link to this post.

Alright, thank you.

Will send that modified version once im done bug testing. Suprisingly animate classes are very very buggy