The "BreakingWaves" plugin controls the generation of breaking waves along the beaches of any water material.

The most important thing to know is that the wave function is based on the water depth and not on the world position. The world position is used only to change the wave phase along the beach.
Three functions are defined for the control of the waves:
The "Wave Displacement" function determines how the water surface height is modified by the waves.
The "Wave Scatter" function controls the light scatering on the water surface along the wave.
The "High Sea Waves Blend" function blends between the coastal and the high sea surface material.
These waves are far from perfect. Many things can be improved by adjusting one or more of the parameters or changing the provided curves. The parameters may be driven not by constants, but by more or less complex textures.
Those with programming skills may also try to improve the plugin itself, as the source code is freely available.
This is now your job. I will be very happy to discover how you make this tool evolve.