Tweak the searchmap settings in the Aipathfinding.con file and use the game engine to recreate the pathmaps until you get playable pathmaps. Searchmap settings are defined as follows (these are in the Aipathfinding files).

searchMap name/ waterHeight/ waterDepth/maxSlope/brush/lowClipLevel/hiClipLevel/
rem considerAITypes/createSecondLayerMap/

MaxSlope can be increased to path hilly areas so bots can travel over rough terrain. Usually you want bots to travel over the smooth roads and avoid the hills, but if the bots have travel over hills to get to some flags, then the slope setting will need to be increased.

WaterDepth - Do you want bots to be able to swim? Just increase this 1000 for the infantry pathmap settings and they will swim through water on most maps. If you want bots to drive vehicles across shallow water, then change this to 1.5. This is the water level that bots can wade across water and still shoot, and the safe depth that vehicles can cross without taking damage. Also, if the water on the map is less then this settings, the result is that the debugger will not be able to create a pathmap.

BrushSize - This is the detail level that is used by the game engine to create the pathmaps. 1.0 is the default infantry setting. 3.0 is the the average default for vehicles. If you have a pathmap with a lot of detail and large areas are getting pathed out, try to increase it to a lower setting. The problem is that if the setting is too low, for maps with a lot of pathing, the game engine creates streaks which ruins the map. Sometimes to get streak-free maps, this settings has to be set as high as 4.0. This is not as much of a problem if using the debugger.

considerAITypes - is set to 1 to use the Aimeshes which are structure overlays that show the game how to pathmap objects. This allows bots to cross bridges or move in buildings.