So, my proof-of-concept world generator did nothing more than generate a ragged coastline around the continent, then seed it with rocky outcroppings, lakes, and forests of random sizes and shapes and then cross-cut that with rivers and paths. It got the job done but was processor intensive and the results were very mixed. Sometimes it would give beautiful results, sometimes it... wouldn't. I've kept the same methods for generating irregularly-roundish patches of trees and waters, but I'm moving towards a less haphazard distribution scheme.
The final concept for the world generator, which divides the continent up into 25 roughly equal-sized areas (roughly because of the coast lines) and then assigns them characteristics. One might have scattered bits of forest, one might have heavy forests. One might be strewn with boulders. One might be overgrown. They aren't really "biomes" in the Terraria sense... they're all mostly made up of the same types of landscape turfs, so the transitions between them are pretty natural. A forest or lake can even be seeded in one zone and grow across the border. I don't plan on having any drastically different landscapes until I have sea travel and expansion continents.
So far for distributing the basic land types there are no balances being enforced... that is, it doesn't always have the same number of heavily forested zones in the continent. The only place where it's not completely random is the central zone, which always has scattered trees and a few lakes and one small central patch that's completely pre-set. When I start adding less common land types (swamps, for instance) there will be minimum and maximums so that there isn't a world that's completely impassable or one that doesn't have enough swamp for swamp-related locations to be spawned.
I'm not going to fill in all the detail of the world right now, but getting it to divide the continent up and define the areas is a necessary step in getting the random encounter generator populated with more than the very easiest encounters.
The individual zones are in the neighborhood of ~50 square screens, which is big enough that it'd be possible to pass through them and miss interesting sites but not so huge as to take forever to explore. I'm still mulling options when it comes to things like opacity and day/night illumination that might make it easier to miss things. Since I actually have a stat-based discovery system that might be unnecessary... if I want to have a hidden village in the forest, I can just make it *hidden* without turning every square of trees into a black hole. That's honestly the more appealing option to me.