I have located the source of the problem after some rigorous testing, but could not find a solution. I hope you can see what is causing the issue.
The Pseudo3D Follow ability works fine throughout the scene. I took every possible culprit out, and tested again and it worked right every time. The only time it did not work is if I start the level from the beginning. There is a scene change happening mid-level. I use DSU's conversation to load the new level, which takes about a minute, and character comes back to the same exact point. And after he comes back to the same level, the Pseudo3D follow ability no longer works. It is still checked as active in locomotion script, the path is still there, and is assigned to the player, but even the root motion of the sword swing will take him out of the z=0 if you repeat it 10-20 times.
Why would scene changing break the pseudo3d ability? I tried to disable and enable the locomotion, and the ability, and neither worked.
One thing that does happen during scene change is that I use the Lua on DSU which looks like LoadScene(Player, Spawnlocation). The spawn location is also at z=0, and does not cause any problems during load. But the character temporarily loads at its Start Position (the very beginning of the level) instead of the Spawn Location designated in the DSU sequencer command, and then is teleported back to that spawn location. I am not sure if that command simply moves the existing character around, or deletes it and creates a duplicate. I am also using a UCC Saver, which is supposed to save the character's position. I used to not use the spawn location part of the command, and the character would still spawn at the last left location when the scene was loaded back from the previous level, but that started causing some glitches, and I started using the spawnlocation command.
Any idea what may be going wrong with loadscene, spawnpoints, or UCC Saver from DSU integration that could break pseudo3dpath?