The short answer: Artists Job.
Well CS used to have an algorythm based system previously using functions (terrfunc) but this became defuc even before the old renderer was removed.
Nowadays CS's default way to access the terraformer (the thing that deforms the terrain) is a heightmap, an example is provided in /CS/data/terrain/
There are a few components that make up the newer terrain engine they are a material map, a heightmap and a basemap.
The material Map is an indexed image meaning basically you assign colours to a colourmap inside photoshop or GIMP which corresponds to a number(0,1,2) that the terrain engine can read and apply textures in a non-uniform fashion.
The Heightmap is a greyscale image that tells how high the terrain should be in certain places.
The basemap is a texture which should align with the material map, but basically provides a single layer texture for the whole terrain so that it can fade to this texture in the distance.
Now, all of these things can automatically be created from a CS mesh using heightmapgen.exe by editing heightmapgen.cfg (CS/data/config/)
basically you feed it a world file and specify a mesh in heightmapgen.cfg (usually a deformed plane) also you feed it a material map and it will generate a basemap for you, and spit out of terrain world-file ready for use, even if you have other geometry on the scene it will only convert the mesh specified, therefore you can make a house ontop of a terrain and hte house will remain intact and the terrain will be as it was in the mesh only as terrain. (note that you cannot use caves or sheer-cliffs in a heightmap because it is unrepresentable in 3d, you need to use meshes for that)
The advantages of using the terrain engine: LOD it's fast for open areas where alot of the mesh is visible.
Here is a nice screenshot of the CS terrain Engine: