The purpose of this article post is to demonstrate texture based land with height maps in 2d overhead setting, primarily hills, mountains, etc. I am using photoshop CS5 for this tutorial, but I'm sure you can achieve the same effect in GIMP.
First of all, start a new file, the size of your map or map section.
Grab whatever texture you are using for your base, in this case, I am using grass.
We could use the default brushes to paint our hills, but in order to get the texture correctly and quicker, it might be a better idea to create a custom brush for the job.
For this brush, I am putting a texture into it, so grab yourself another texture. Color is not important for this one, it will end up being solid color to transparant.
Go ahead and select the entire image (I personally like to just hit control+A to select everything, hold control and press left then right so it snaps around the entire image, occasionally I might select the transparancy with the magic want and hit control+I to invert the selection).
In the edit menu hit "Define Pattern". This will put the image into your list of patterns. You can delete this layer now, or hide it in case you want to use it/referance it later.
Open up your brushes window (if it's not on your hotbar, it's under the window puldown menu).
The first parameter I added was the texture itself. Check the texture option and then change the texture used by clicking on it from the pulldown menu. Make sure you have the texture option selected on the left or you wont be able to see the texture options.
At this point, play around with the settings to your liking, Primarily the shape dinamics has a great set of options, and don't forget that there are more options if you click "brush tip" right at the top. It doesn't have to be perfect, you can always mess with it later.
To test our brush out, create a new layer and change the blend mode to "overlay".
Set your brush opacity to a lower percentage. Using black and white (you can select both colors and hit 'X' to switch between them) paint out a hill. Really there isn't anything to this part, just go nuts, experiment, see what works.
I didn't like how this brush so I change a bunch of options and added the scatter parameter.
When you're confident in your brush, go to the brush presets and hit 'new brush"
Name it whatever you feel like.
Personally, I feel that simply setting the blend mode to 'overlay' or 'soft light' isn't quite right, so I designated two separate layers for darks and one for lights. I set the dark layer to "Hard Light" and the light layer to "Overlay". This all depends on the textures and colors you use. Don't feel the need to stick to white and black, again, expiriment with what feels right.
The plain grass backdrop is starting to look monotonous, so lets add some more texture in. Grab yourself a rocky texture and paste it over the area in question.
This obviously looks like garbage, so we want to tell photoshop where to draw this. In the layers section with the rock texture select, click on "Add Layer Mask"
And nothing happened. That's because a mask basically tells where to draw using black and white. White is drawn in, black is invisible. So with the mask selected, fill the area with the color black.
Grab your textured brush and paint the white color over various parts of the area.
You can also use this method to add in other textures on to the map, for instance, this path right over here. Remember to color parts of it in on the light and dark layers, or else it will simply look flat.
And that's about all I've got to say on that. Go do something else now.
I got my CS5 from school, GIMP should be powerful enough, the only things you need are the ability to make custom brushes with textures, layers, the ability to mask layers and blending modes for the layers. I'm fairly certain that since GIMP is open source, someone must have done something to emulate Photoshop functions. Typically, if you throw the particular query into a search engine followed by "In GIMP" it should let you know how to achieve that function in GIMP.