Actually, it sounds like you most likely just aren't using the hardware fog correctly.
Volumetric fog *might* be what you're looking for, but from all your descriptions, it doesn't sound like it.
Ah, you say you're making an rts - is it an isometric type view (viewed from above for the most part)?
If so you might want to apply volumetric fog - but if you have the equivalent of a heightmap, you can always do a cheap hack by applying vertex fog based on vertex absolute height.
This would give a radiation fog type effect.
The exact math would be to perform a raytrace through the fog volume (which, in this case, would be a rectangular cube-like shape) and calculating the fog volume's near hit and far hit...
Actually, if you're not doing volumetric zones, this become *very* easy in a pixel (or vertex for that matter) shader. If the camera's absolute height is above the volume, calculate the distance to the height=fog volume height, using the view normal, then use the current pixel's z-buffer value (or vertex transformed xyz to find the distance). Subtract the dist to volume from the dist to vertex/pixel, and viola! nice murky foggy stuff :)
-M