I've found a reliable, if somewhat time consuming way to find flat volcanoes. If you're anything like me though, part of the fun of DF is finding the perfect embark spot, so it's worth it.
1. Generate a custom world, with
- max volcanism variances
- max minimum (heh) volcanoes (200)
- if you want an easier time finding the volcanoes, keep the region size managably small
2. Start a new DF game in this world.
3. Now we go hunting for volcanoes. Much like the RL ring of fire, they'll usually be somewhat clumped up. Ignore unembarkable volcanoes (in mountain ranges) and volcanoes in regions you obviously don't want to embark (such as in the icy areas if you don't want a frozen biome). For each volcano, locate the mouth in the local area.
4a. If you want to be thorough (this will be slower), change to the elevation view with [tab] to see if the embark area around the mouth is completely flat (0's).
The VAST majority of volcanoes you inspect will not be flat (upwards of 90%). Since switching between elevation and biome views is annoying for every single volcano, I've created a filtering method:
4b. If the mouth of the volcano is near the edge of the local area, there's a much better chance it's located on flat terrain. Thus, if you skip every volcano where the mouth is in the middle of the local area, you'll have a much easier time finding flats. (I theorise it's because volcano tiles are made randomly mountainous with no relation to its mouth but idk)
If you follow this guide, you should find one or two flat volcano embarks per world-gen, or every 5-15 minutes of searching. Search for as long as you can handle, or until you find one with the perfect biome for you.
eg of a flat volcano on the embark screen:
My best was a perfectly flat volcano (the mouth was 1z indented) with limestone, no aquifier, temperate dense forestland with access to all races except elves.