I used bones and IK solvers to get the fluid movement. I did a quick test animation with key frames and found that I lost the rhythm of the movements after the initial wave in the body, so I decided to watch some videos that showed how snakes moved in slow motion to get a better idea of how the movement would work.
I used the skin modifier to assign the right parts of the mesh to the right bones. I made sure to have one bone for every two pairs of feathers, so that there would be a simple fluid motion down the whole body.
Next, I decided to rig and animate the Grass Stalker as I knew this one would be the more difficult one. He required a lot more bones than the other creatures, and also needed a lot of attention to the skinning process. I had to make sure that the weighting of the verts were correct between all the different bones. Once everything was able to move without any of the geometry popping, I then key framed an animation of the creature moving forwards.
Again used bones and IK solvers for the different movements. I found using the edit envelopes quite intuitive, especially with the colours representing the weighting of the verts to that particular bone.
And finally the Tree Ray, I left to last because I knew he would be the easiest one to rig and animate. Needed just his claws to move forwards and back and the tail from side to side. I used what I learned from the previous creature animations, and remembered to make sure the last keyframe had the IK Solvers matching each other in their position to prevent jumping in the animation.
This was also quite a short animation which should work for all the Tree Rays in the level.
Here is a short test video of the first two creatures playing their animations within the level, they are static at present, but it does show their movements. Next is moving them throughout the level and fine tuning their speeds.