Why is CharMove component not obeying Move switch for 'Launch Character' ?

Hi!

So I’m adding various moves to an ThirdPerson inherited character blueprint.
I’m using root motion to have it climb up a wall but that needs the movement Mode to be in ‘Flying’ or the Z part of the root motion won’t be applied.

Then I want to to let the player jump off the wall in a direction of my choosing so I use ‘Launch Character’. But it doesn’t work and I realize that Launch Character doesn’t work with Flying. Sigh.

Ok so I add a node before the Launch where I switch the Mode to ‘Falling’.
Then Launch.
But that still doesn’t work. Why?

I’m printing out to check that I really is in Falling and it is. Ive tried triggering the Launch on the next tick but that doesn’t help. Even on the 5th tick after. (Figured maybe it took some time to switch for some reason).

Does anyone know why the Launch is not recognizing that I’m now in Falling?
Or have any ideas for how to climb with root motion and then leap off? (Without Custom move Mode)

Cheers!

UPDATE: Ok so I seem to have found a solution. I was banging my head against this for most of yesterday but just now saw a video that used a node to temporarily disable root motion. It seems to work though I haven’t tried to enable back yet.

BTW, If I launched the character with a ‘Delay’ node set to 0.2 sec it also worked but obviously too late. 0.1 sec didn’t work so couldn’t get that fast enough. Seems there’s some built in invisible delay to switching Movement Mode sometimes.

Hey @Fredrum!

I’m thinking there are some extra things here you’re not mentioning (because they seem like they don’t apply) that are in the way. What kind of climbing are you doing? Like a ladder? Or a ledge?
All we have been told is:
Climbing
Root Motion
Launch Character
Changed to Falling to accommodate.

What have you done to test things?
Have you tried using the launch while not climbing? It could be a lot of things, but let’s start with the launch math. Bring pictures! :slight_smile:

Yeah I use the exact same part of the code to Launch when in another of my animaton modes that doesn’t require ‘Flying’ and it works then. And I mean the exact same BP code not just similar.
Thanks for reply but I’ll just go with the above update I think for now.
There does seem to be an unreported delay to the Mode switch though in this case.

EDIT: Maybe another way of dealing with this would be to use the setting ‘Root Motion from Montages Only’ and then make sure I use montages accordingly? Haven’t tried yet but maybe?
Or starting to re-code the component in c++ but I wanted to avoid that as far as possible.