TL;DR version:Make an engine that simulates actual dynamic geology from scratch. Have a much more realistic world with more variable and dynamic challenges and need for trading and politics and war, and also more strategic flexibility at the scale of single forts. Additionally, more interesting formations to inspire fort design, and the option for hardcore players to have the game not tell them about resources and deduce from actual geological principles where the goodies are. Such an engine might be able to be modded in third party (not sure), or could be presented to Toady as a gift that he could probably understand quite well and might be happy to include, if it's successful.
________________________________
Long version:Basically: Making a much more realistic geology algorithm for world gen. Much more involved and dynamic than the current model. Something like (very briefly/broad strokes):
0) Everything starts as...some type of initial layer or simple rough approximate flat sandwich. Might require trial and error. Hard to say, since this is shortcutting past a ton of history we don't need to simulate.
1) Determine random plates by algorithm
2) Choose motion vectors for each, and flip coins at convergent boundaries for subduction.
3) Determine other boundaries randomly (some through the middles as appropriate) as simulated older sites of convergence
4) Determine volcanic ridges and arcs from the above.
5) Initial elevations. Basically, simulating the tectonics for some amount of time of time. From volcanic activity, from subduction trenches and mountains. You want to run the simulation for a little while only. Maybe, say... 1/4th of a full cycle (cycle being from new rock all the way to it subducting under again). Enough to get some shape going. Includes making new rock (just extending the length of our planes) near ridges. This is a lot of math involving 3d massaging the shapes of planes.
5) Do a metamorphism pass based on depth pressure on rocks at this point. Also "melt" particularly deep stuff that's been subducted way down.
6) very roughly estimate a thin initial layer of sedimentary from coastal proximity and initial rain shadows, etc. Just enough to help with step 7:
7) Determine new and old near-surface intrusions (which will be active magma, pockets of intrusive stone, or caves). They branch and fill in between layers, which is why we wanted some initial layers to work with. More accurate sediments later. Some intrusions push up more mountains and further refine elevation.
More localized metamorphism from the intrusive heat and pressure.
9) Now go back and do more serious sedimentary calculations, with the major elevations fleshed out. Erosion simulations (wind and water) included, depositing sediments locally and also some global amounts. Have avoidance gradients near volcanic regions (where sediments are thin if any, haven't had much time to build up. If they do have a strong indication of buildup there, stick to higher % of soils than sedimentary rock). Erosion will also tend to expose other strata here, in areas where they've been pushed up by tectonics or intrusion. So you get some the realistic diagonal cuts across strata and stuff.
10) NOW go back to step 5! more tectonics. Repeat up to step 10. Then maybe once more. This way, you get interesting old scars from "old" geologic activity in the middle of plates, so nowhere on the map is overly boring. Skip step 6 for the second and third rounds through.
11) possibly glacial simulation.
12) The last pass on erosion is where the actual rivers stay for gameplay. Then also determine rain shadows and so on (similar to perfectworld's algorithms, which do a good job) for vegetation biomes, which also depend on sedimentation and would NOT have any correlation with sudden rock cutoffs like in DF currently (aside from plants obviously stopping at fault lines that drop into the ocean! lol)
Why? Lots of reasons:
* Partially for its own sake. DF is supposed to be a world simulator in large part.
* The current engine has a LOT of 2-dimensional only algorithms involved. Layers always suddenly shift at 2-D flat cutoffs in a biome. Which personally I find quite disillusioning for one thing. But also it (negatively, I think) affects the creativity with which we build forts, making you think more 2-dimensionally. "This layer is for mining, then 6 feet up it's totally not at all mining and is only bedrooms because there's suddenly no ore" etc. It generally makes everything more uniform too, for less varied gameplay, because you know basically what to expect and it's always the same layout more or less. If some places were geologically flat (like most of Russia) and others had lots of exposed outcroppings (or even flat, but with across the grain cuts, like glacial valleys, e.g. Iowa or Illinois), it could very interestingly affect NPC trade good availability, the feasibility of near-surface forts (which would matter more if mining deep were more difficult, too), etc. Humans can only dig so deep, dwarves a little deeper. Having more layers intersect the surface = richer variety of goods available to one civilization. These are areas to fight over.
* Much cooler cliffs and topography, surface overhangs, convincing rivers with attendant bluffs and such. All are more feasible to include when they make sense from the core engine, rather than band-aiding them onto a quick and dirty facsimile of geology after the fact.
* Site choosing could be more entertaining and skillful. Some rudimentary knowledge of geology (which the game could provide some of in tutorial form) is not strictly necessary, but if applied, would help you find better sites by using your NOGGIN, not free magical information from the embark screen. Do away with free hints about deep mineral composition (or restrict them to easy mode, rather), and deduce what the composition SHOULD be from the lay of the surface features, etc. If you do poorly, you have a more Fun (tm) game and learn better for next time.
* Caves aren't everywhere, although should be much more common than in real life still. Maybe 20% of randomly chosen embarks (but 60-80% of embarks if you look in the right places) have significant caves. This helps to make games more tense and interesting by NOT guaranteeing a source of free forests and animals and crops on every map no matter what (also, I'd suggest restricting that stuff to more "exotic" caves like deep earth intrusive caverns that are more mysterious in real life, not surface limestone type caves). When you do find them, they can take much more interesting shapes and sizes that offer inspiration for fort building ideas.
* Similarly, magma is not just in straight lines or big sheets. Far from it. Currently, it's not very dynamic, because you either have a dependable, known shape of magma source ahead of time that you can dig to and pump up allllllways, or you have a free tap that otherwise negligibly interacts with anything. If digging deep near volcanic areas, you would more likely be hitting all kinds of crazy tubes and underground pools (sills and dykes and laccoliths), you'd be able to come in from the sides for large depths, etc. Whereas far from tectonic boundaries, you'd basically never find magma, without digging absurdly deep (which again, should be much harder to do). Thus, harder to get candy and clowns or magma forges (BUT at the same time, more likely to have sediments, farms, iron). And again, inspiration for more dynamic fort building plans.
* Although between sites is more variable by far,
within a given site, there's less variety than currently in this setup (at least for larger maps). This is
very important, because as Toady adds world-relevance and more trading and politics, we need to have INCENTIVES for using those things. Not having all the resources you want all in one place means the political and economic map
matters much more often. Armies and conquest for resources
matter.
* Worlds would just look a lot cooler! =P
* I didn't mention them explicitly above, but minerals follow all these same rules. Coal can be deposited during phases of the worldgen tectonic loop based on random die rolls for ages when there was a lot of life abundant. Fire clay goes directly under coal usually. and so on and so forth. No random veins pasted in here and there in general layers with minimal rhyme or reason, but actual seams that fold between layers and sometimes expose on cliffs, in a more strategic, satisfying, realistic, fun manner. And like everything else, you can just go look for exposed iron or have the game tell you where it is if you want to play that way, or you can tell the game to give you less information and try to deduce where the iron or coal is from geological clues, to satisfy a gradient of casual to hardcore players.