Texturing Terrain

I have been playing around with creating terrain in blender, I work with materials and stencils to blender different diffuse map textures onto the terrain mesh (grass, rock, dirt, snow etc…). This makes the terrain stand out and looks nice compared to a single texture, however, I now want to add other maps such as normal maps.

I want the rocky areas of the terrain to have a normal map, whereas the grassy areas wont. What is the best way to do this?

If I follow your description correctly you are using stencils for different terrain types. I think you can insert your normal maps in the same place in your texture stack.