Nested AnimationNodeStateMachine can't have path from parent AnimationNodeStateMachine

Godot Version

4.3

Question

I’m using AnimationTree to handle my animations, but I’m getting an error when I start the animation:

E 0:00:06:0428   _start_children: Root/Nested AnimationNodeStateMachine can't have path from parent AnimationNodeStateMachine.
  <C++ Error>    Method/function failed.
  <C++ Source>   scene/animation/animation_node_state_machine.cpp:387 @ _start_children()

Even with that error, the animation runs normally. My animation tree looks like that:


With the following lines, I start the animation:

animation_tree[str(animation_path)] = actor.face_direction
playback.start(animation_name, true)

The ComboAttack is a StateMachine that goes like this (I’m probably doing it wrong):

All other transitions seem to be running fine.

How do I properly call the animation and get rid of this error?

You probably need to change the ComboAttack state machine node AnimationNodeStateMachine.state_machine_type to StateMachineType.STATE_MACHINE_TYPE_GROUPED

Select the ComboAttack node in the editor and change it in the inspector.

1 Like

Thank you for replying. I actually solved by using the ComboAttack as the animation name. Then, I made transitions from the start node to all the three light attacks, and placed conditions to make the path travel from start to the desired attack. So, from Idle, the path goes to ComboAttack, and then the ComboAttack state machine calls the correct animation and end it, making the path back to Idle.



There still some flaws, but it’s due to the logic in my code. At least, I don’t get the errors anymore.

1 Like

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