A fundamental problem in the ocean modifier is that changing the resolution, for example, causes a complete change in the spectrum being generated. This is not desirable - changing the resolution should only add/remove detail from the underlying surface.
Amaan Akram's GPLv3 aaOcean library addresses this by ensuring the RNG seed is linked to the surface sample point. This diff brings this enhancement to blender's ocean modifier.
The patch consists of a UID method (taken from aaOcean directly), which takes the sample coordinates to generate the UID. This UID is then used with the user-specified seed to initialize the RNG.