In order to facilitate the placement of the new site types, it would be helpful to have a few more biome tags. For the most part, these are already calculated by the engine, but there is no way to specify them for creatures or entities to use, support, or generate on.
RIVER_TEMPERATE_SHORES
RIVER_TROPICAL_SHORES
ANY_RIVER_SHORE
The above would be very helpful for the placements of cities in worldgen. Right now, the humans use ANY_RIVER very heavily. While this is good, it means that they want to place cities in the MIDDLE of the river, being able to spread either way. Supporting only the shores should make them confined by the river, rather than dependent upon it, unless they can also [WORLD_CONSTRUCTION:BRIDGES]
HILLS_TEMPERATE
HILLS_TROPICAL
ANY_HILLS
As an intermediate step to the outlying Dwarven settlements of hill Dwarven I heard mentioned in DFTalk before. The hills are already denoted in the world map very clearly, so obviously somewhere along the line this data is being processed. I believe it has more to do with height and drainage than foliage tho, so the existing biome types do not have any real way to specify this as a location.
=====
Additionally, for entity worldgen there could be another cellular automata rule applied to the placement of new sites. [SITE_PLACEMENT:chance:min:max]. This would be a number that could be specified in the raws of the entity. If a site being generated doesn't have the minimum amount of neighbor sites directly surrounding the site being considered, or has more than the maximum, the site would not be placed and the people meant for it would go elsewhere (likely back home or to one of the neighbor sites. It would seriously help with controlling the spread of civilizations on the world map, and lead to a much easier time of making different "feels" for the entities.
Humans would prefer to live in large groups, surrounded by their peers. They would tolerate up to 7 neighbors and have a minumum amount of one neighbor, leading them to bunch together in large farming and township communities as a civilization. The chance they place a new site would be relatively high.
Goblins would most likely prefer being alone and farther away from their own kind. Having a maximum of one neighboor and a minimum of 0, they would spread out and break into new lands very simply and naturally. They could easilly take over a large swath of land, but it would be sparsely populated by their kind. Their chance would be somewhat lower.
Dwarves would probably only tolerate the presence of one neighbor city, to prevent too many Dwarven Halls from being placed right next to each other, crowding out possible site placements for the player in Fortress mode. The Mountain biome they live on is fundimentally a one-dimensional transitiory line between the mountains and the foothills thereof, so they would need to be tweaked somewhat. Their chance to expand would probably be fairly low because of this, and would not tolerate more than one neighbor.
Elves would absolutely not tolerate many neighbors, prefering the open spaces. So maybe a maximum of 2 or 3 neighbors. The chance of their expansion would also be fairly low, so they would not use up all available space.
===
It would be helpful, with this automata rule, to have another tag, as well. [COLONY:chance:minDist:maxDist]. I've noticed that cities placed in worldgen sometimes fall FAR from their parent civ. If would be helpful to make a range at the distance at which this could happen. For Dwarves, it would be fairly short to keep them from jumping over to other mountain ranges instead of using up their available space... where for elves it could be fairly large. For humans, it would be somewhere in the middle. Of course, a Colony placed would ignore the min/max neighbor settings, since it's INTENT is to jump outwards.