It took a lot of trial and error for the water movement, rendering a number of 30 frame tests, it really is just down to experimentation of the timings and other values. I animated X, Y and Z with a Transform Input Shader (Y was larger than X and Z). But even then I wasn't entirely happy with the result, so I used a little denoising and a very tiny amount of blur in comp. Over a period of 4320 frames, here is a screenshot of my animation panel (Z and X are on top of each other, which is why you don't see X):
[See attachement 'CyanEyed_terAnimWater.jpg']
Though if you are referring to the little shore waves, that is actually all a comp trick.
1. First, I isolated the water edge.
[See attachement 'CyanEyed_shoreWavesA.jpg']
2. I then had to manually roto out the trees as the waves just need to interact with the shore only.
[See attachement 'CyanEyed_shoreWavesB.jpg']
3. Then I used an edge detect on the water outline. After, I isolated a thin line that started at a certain distance from the edge, and then animated it towards the shore over a certain number of frames. I then added a fade on and off to get it repeating in a loop. Then I added a time offset and plussed it on top to get two lines. This is all a total hack, because edge detect actually works in screenspace, not worldspace, so the waves always start at a certain number of pixels away from the shore no matter how far or close the point is to the camera, but because the effect is so subtle, it is practically impossible to notice.
[See attachement 'CyanEyed_shoreWavesC.jpg']
4. I then multiplied that through a worldspace noise derived from the world position AOV.
[See attachement 'CyanEyed_shoreWavesD.jpg']
5. And after a little colour grading, plussed it on top of the image.
[See attachement 'CyanEyed_shoreWavesE.jpg']
The Terrain is a number of different heightfields blended together generated using Classic Erosion from Daniil Kamperov.