Montage: Stop Playing Slots?

Hey!

Had a good look around and couldn’t find any information on this.

If I have 2 animations playing in an Animation Montage on different slots (say lower body and upper body). Is it possible to stop one from playing and let the other continue? Alternatively, is there a way to get the current play time so I can start an identical animation from the same position?

Stop Slot Animation doesn’t seem to take any value other than ‘none’ for “Slot Node Name”. I have tried ‘defaultgroup’ but doesn’t seem to work? Only using None will completely stop the entire animation (assuming it’s using all slots).

Apologies if this is a stupid set of questions - I want to avoid having to put all my melee attack animations into my AnimGraph.

Just to note, the idea is for the animation to be stopped at any point after a set spot… so just having a straight up following animation wont work.

Looking forward to a reply.

Cheers!

This is happening to me as well.

same problem

Did anyone find out why this happens, I’m also having this issue.

Same problem too. 4.22.1 - I used StopAllMontages, and did the work.

I am running into the same issue on StopSlotAnimation. After digging into the source code, I noticed that on line 1683 of AnimInstance.cpp, it checks to see if the active montage is transient. In my case, that is why it never actually execute the stop animation code. This does not make a lot of sense to me.

In my understanding, if the outer package of an object is transient, it means that this object is created temporarily. However, the animation montage that is being played comes from direct asset. Hence, its outer package is never transient. I am wondering if the line was supposed to be:

if (CurMontage && CurMontage->GetOuter() != GetTransientPackage())

Circling back on this issue. I think it was caused by using the deprecated PlaySlotAnimation instead of PlaySlotAnimationAsDynamicMontage. The later will create a transient copy of the animation montage. Hence, when stopping the slot animation, it indeed should check whether it’s a transient montage before stopping it.