KMQuake2 is a great source port for Quake 2 game. Originally it has been started to extend the engine limits for in-game map sizes, entities count, sounds, drawing distance and so on. Later, improved particle system, clipped decals, stencil shadows and lightning effects have been added, making this port one of the most visually advanced ports produced for the Quake 2.
All these features actually mean, that there are really cool effects, such as water splashes, smoke trails, reailistic blood decals, bloom and waves on the water added into original game process.
Download and unpack the "kmquake2_019.zip" archive to the directory with Quake 2 game files (this was 'E:\games\Quake II' in my case)
Start the game by running 'kmquake2.exe' from the game folder.
Open the 'Video' options from the main menu. Set the appropriate video mode, select 'Trilinear' texture filtering and adjust 'Anisotropic filter' to the biggest supported by your hardware. Select 'Apply Changes'.
Open the 'Video'->'Advanced Options' options to see the detailed setting for visual effects. Turn on 'translucent lightning', 'glass envmaps' and 'texture shader warp'. Set 'water wave size' to some small amount to avoid the distortion of water surface. Set 'particle effect complexity' to maximum value and turn on 'Particle overdraw' and 'Light Blooms'. Set 'decal quantity' to maximum level. Ensure that 'model shading' is set to 'high' and select 'Dynamic planar' setting for 'entity shadows'. You can also try the 'projective' settings, which is more realistic but can give some shadow rendering issues. Select 'apply changes'.