I recently delved into the world of modding. To be more specific, I started designing and coding a minor mod for the Civ IV mod, Fall from Heaven II. It is a small, simple mod whose only purpose is to check the terrain around a city when a unit is built. There is a small chance that the unit will receive a special, bonus promotion that increases their strength in that terrain.
A couple of interesting things I found out while trying to get my mod to work.
1) Hills and Peaks are not terrain in Civ IV. They are actually considered Plot Types, a distinction they share with water and flat land. Then, on top of that, you have the Terrain (grass, plains, etc), and on top of that you have Features such as Forest. And then Resources and Improvements fit in there somehow as well! It's a much more complex system than I had expected and it took me a while to track down the simple fact that Hills and Peaks are Plots, not Terrain!
2) Most of the art files are hidden, packed away in a special format that requires you to use a special extracting program to access them. And then some of the art files are packed even further, put into large sheets of graphic images with dozens or hundreds of other images!
Despite this weirdness, all in all, Civ IV is a very mod-friendly program. Most of the game is controlled via a system of exposed xml and python files. Easy to edit for even a novice programmer such as myself. And the community on the Civ Fanatics forums are very helpful about answering questions.