CMotionBasic Coord. Object Pose Route Steps
CMotion is a walk cycle generator which, while primarily developed to drive character animations, can be used for any animation task, on any object.
What the tool does is basically generate a parametric cyclical motion of any given parameter, to easily create a motion cycle that can then be adapted to your needs (baked, stored for reused on another object and so on).
For example, you could animate a walk cycle for a character, then fit that motion to a Spline so that the character's path becomes the spline path. Once this done, you could even define a surface onto which the character needs to walk (e.g., a hill), so that the motion adapts to that surface and the spline path at the same time.
Once satisfied, you can then generate each step and refine your final animation.
The real power of such a tool is to be able to use/reuse presets and specific actions, and change your motion characteristics with only a few options instead of having to deal with keyframes and F-Curve editing. While it can be argued that manual animation is more desirable, imagine this as being the equivalent of a Cube object when modeling, it gives you a great building block to achieve nice, polished results fairly easily.
The process of creating a walk cycle is simple and straightforward: