Montages not playing no matter what I try.. help😩

EDIT* - Uploaded the FBX of the mesh that has all the animations (for testing) bellow.

Hi. :wave:

So, I have my Enemy BP that I made that I intended to use as a template for all the other Enemies in the game. All I need to do is change the Skeletal Mesh and replace all montages in the blueprint to match that skeleton.

But for some very frustratingly strange reason, the montage doesn’t want to play, any of them.
I literally just copied the Enemy BP, replaced the skeletal mesh and assigned new montages to match that one. It’s a simple process that SHOULD work, but it isn’t for some reason…

For some reason it just plays the same Idle Montage whenever a montage play node is called…

Everything in Blueprints is set up correctly and working as you can see with the original Enemy

I double checked EVERYTHING.
Could this maybe be a problem with the montages themselves?
I literally just pressed ā€œCreate Montagesā€ From the selected animations, same process like I did with the one Enemy where it all works.
(Also the montages all have the same settings as the ā€œworkingā€ ones, I checked. And they work when I preview animations on the skeletal mesh and when placed in level by themselves…)

Here is a few BP Screenshots so you can see it’s all correct:


It is LITERALLY exactly the same as the working one, except the montages and the skeletal mesh are different, that’s all. And I am not getting any errors or nothing…

So what could be the reason behind these montages not playing? So strange.

Thank you for any help and replies.

Looking at your post history, when something goes wrong, you usually assume that there is a bug with Unreal Engine. The odds of that happening are fairly rare.

People don’t answer this kind of question because, even though you think you are showing everything you need to, you likely are not.

Instead, you need to learn how to debug your own code.

Start with print statements, as they are the simplest way to debug something. Place a print statement in between the places where you think the code should pass through. If it doesn’t show up, then the problem is occurring earlier in your logic. Add as many print statements as you need to track down the source of the bug.

There are other ways to debug blueprints. I recommend watching this course:

Yeah, forgive my (Bug) placing.

But, when I said I tried EVERYTHING, I mean… I tried everything I can think of, I am a long time Unreal user, I know very well how to debug code and test out things. Of course I tried placing print strings and etc… it all passes, the print before and after gets executed.

I posted this here since I literally never had this happen to me. It is a simple process not working (Apparently). Make a montage, play it with Play Montage. And it is not working. Hence in my eyes maybe there is something weird going on.

I also tried making a completely new actor with just play montage logic and the same stuff is happening.

Well, if it isn’t the code, it’s something else. Maybe it’s the montage, the animation, or the other skeleton.

If it’s a different skeleton, have you retargeted the animation to match the new skeleton?
Have you tried other animations and montages with that skeleton?
Are you sure there isn’t something else in your project that might be overriding the montages?

Yeah, that is the weird part…
This is a completely separate skeleton with it’s own animations made for it. No anim retargeting was used nor is something overriding the animation. Since the blueprint’s logic is the same thing as the one that is working just with changed said things…

Like I mentioned as well, all the montages work and play fine on their own and also when previewing on the model…
-Also Ik there couldn’t be something overriding the animations since all the animations are event based in the blueprint. Most of them won’t be played without me clicking/touching the enemy.
-Only one that is timer based is the attack one (1st image) and that one as well does the same thing (at the start of the video)

I am so lost currently, literally exhausted every single thing I could check or try. I will keep digging and will update this thread as soon as I figure something out.

Until then, if you are curious, I will upload that skeletal mesh’s .fbx (it contains all the animations as well) here, If you test it out, please update me on your efforts. Thank you for the replies.

FylingDemonPBRDefault.fbx (14.2 MB)

No problems animating it on my machine…

Ah, I see. You used an Anim Blueprint. I assumed that way it would work, but for my case I specifically only play these montages in the blueprint of the actor itself. Didn’t need to go into Animation Blueprints since there isn’t much animation to begin with… Idle/Attack/Hit.

My problem lies within the pawn blueprint. Why won’t the animations play within it.
I will create a new fresh project and see if that changes anything, will edit/update this reply accordingly

EDIT* -In new project animation montage is played like it should, no problem…

I will continue digging.

Welp…tried digging, but to no avail… For some reason in this project Montages only work when played in my Bee Enemy Pawn Blueprint…

–

Oh my god…
I tried changing the skeletal mesh on the Bee Enemy to my FlyingDemon and all the animations to go along it and EVERYTHING WORKS PERFECTLY, HELLO?!?! What in the world is happening?

Is there some random setting that for some reason prevents animations working on anything else lol.

Okay, that shocked me. I am so lost

For looping animations like idle, walk, run, etc, it’s best to use an animation blueprint. For one off animations like attacks, it’s best to use montages. Then you don’t have to worry about all of the blending and can easily control animation with a state machine. It makes the logic cleaner too.

Yeah, but I have more than 30 enemies prepared with animations, wasn’t planning to make an anim blueprint for each one, seemed easier just to change 4 montages for each.

Oh well, if I don’t figure this out, I might just go down the path of the Anim BP

If any of them share a skeleton, you don’t have to make an animation blueprint for each one. You can use an animation blueprint override. I try to unify skeletons whenever I can.

Regardless, making 30 anim blueprints isn’t very time consuming for just an idle animation. It took me just a couple minutes to do the first one. I’m sure you can copy and paste some things too.

Yeah, ik…Unfortunately they don’t, 30 all unique skeletons/enemies. I will end up doing it that way if I don’t figure this out, but I am very persistent haha

There must be a reason for this to be happening, it should work…it SHOULD, but isn’t…something is messing up along the way. I will keep digging haha.

Thank you anyways for your time. If I come across a solution of what is affecting the blueprint, I will update the thread.

I have stumbled across one difference I can see between the skeletal meshes that work and those that don’t…

So I went through different skeletal meshes and some of them worked, some did the same thing that was mentioned in the thread (montages not playing)

All skeletal meshes that work have bones that are named in this specific way:

So battleBee_root/etc…

And all those that don’t work have their bone naming structure like this:

So Body/…

This is literally the only thing I could find that differs from the skeletal meshes that work…

But also this shouldn’t be a problem since the animations share that skeleton and structure…

Nah…if I don’t figure this out soon, I will close the thread and declare this mystery unsolvable…I’ve been stuck on it way too long

EDIT- I FIXED IT! (But at what cost)

So I enabled ā€œSupport 16-bit Bone indexā€ and also ā€œUse unlimited bone influenceā€ā€¦
One of those fixed it and after I re-imported the skeleton, the montages were playing fine.

Whew, now I can sleep calm.
(Not sure what that support will cost me in the future or if it is a performance hit, will research, but for now it’s working.) :+1:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.