The last week I've been working on a basic river generator. It's pretty straightforward for the time being, choosing a tile in random for the water to proceed if there's no lower elevation nearby, while on the other hand pouring water and starting a new river on each nearby tile if it's lower than the current one. There's no water depth and flooding at the moment, and will probably never will be as I'm not aiming for such a realistic water model as, let's say, Dwarf Fortress; Start-a-Town will be a peaceful game without flood traps!
On a side note, I can't decide which waterfall graphic to use... The options are currently 3.
Personally, I prefer the particle approach since it's more practical, but strangely, it takes much less waterfall tiles than expected to slow down the program to a crawl, even on my machine which in no way I consider "old", especially for this type of game and at its stage.
The next option, the straight ones, seem (or sound?) the most natural, but in the case of staircase waterfalls, the result looks like a tablecloth. The curvy ones are the cutest in my opinion, but I've been told they look unnatural. So... meh.
Anyways, I'll come back to them later. Right now I have the river/waterfall situation to a workable shape so started writing a basic saving routine for the terrain data, tile backgrounds, height and whatnot. There are some improvements that need to be made to the way tiles are handled and drawn so custom graphics can be supported (modability!).
After I'm done with this I'm planning to create some new tiles like trees, dirt, tarmac, cobbles, pavement etc. I urgently need some more variation, the green/blue scenery is starting to drive me nuts. Stay tuned.