I have started to control a humanoid using the Animator, using a parameter for the movement speed (similar to what you show in this tutorial:
https://www.adventurecreator.org/tutorials/making-mecanim-based-character)
When I set the MoveSpeed parameter to say 1, the NPC does walk once and then stops (plays the HumanoidWalk animation once). It then seems to be returning to the HumanoidIdle state. Yet this should only happen if MoveSpeed moves below 0.1.
If I remove the transition from HumanoidWalk to HumanoidIdle, my NPC does start walking permanently, as expected. Any idea what may be reseting the MoveSpeed parameter?
I also noticed something else which may be a bug in AC ActionLists. If you create an ActionList with a GameObject parameter, it can be used in all Character Actions to specify the character object, except with Character - Animate (even if you specify the parameter here, you still have the "The action requires a Character before more options will show" message displayed).
Comments
The issue with providing the NPC character object as a parameter to an AC ActionList also occurs if you try to add an Action of type "Character - Change Rendering" (doesn't accept using the GameObject parameter).
What you should be able to do, however, is first assign a "dummy" character whose animation engine matches the one you want to assign via a parameter (in this case, "Mecanim"). Then, without clearing the "Character to animate" field, override it with a parameter.