My AHK script is in private alpha testing (i.e. me), I'll release it as beta when I squash that last bug and fix another minor thing I just thought of. (After I get home from work, hopefully. And a couple of interface tweaks.)
It currently only finds magma, takes 2-3 hours during which you can't use the computer for anything else (the DF window has to remain active) and still leaves you with hundreds of locations to scout. While all you Armoks beta test it, I'll work on looking for other features when magma is found to narrow the list.
Brooks and Streams will be easy and should add less than five minutes to the total search time. Sand, aquifers and layer types will be more complex but doable and might add 15-30 minutes. I want to add checks for mountains and trees but those could be really complex and I'll guess 20-40 minutes. All told I'd say the total time could increase 30-90 minutes. Once I get all those feature checks in I might add a function to set options to skip checks.
It also includes a function to go to a coordinate. That way you don't have to count your key presses to check out that magma in region 198,245.
Interesting note on that, my coordinates start at 0,0 which if the wiki were correct that there are 256x256 regions would mean the region in the lower right corner would be 255,255. But that region is 256,256 meaning there are actually 257x257=66,049 regions and 38,957,285,376 total tiles (not 38,654,705,664.)
Edit: Oh, yeah, got to add an embark check, that'll be next, thanks Mechanoid.
[ December 10, 2007: Message edited by: Ziusudra ]