Thank you, sir.
Generating the maps is a process with lots of randomness involved. I'll try to explain it as good as posible... (wich isn't that good)
First are the towns. There can be 3, 4, 5 or 6 towns. 4 is the most common, 6 the least.
After the amount of towns is decided, we have to give them a location. This is done by splitting the map in 6 sections, putting those in an array wich is than shuffled. The first x (x being the amount of towns) areas in that array contain a town.
Than we decide the exact location of the town. This isn't too hard.
Than are what I call crossroads, although they aren't exactly crossroads. They are more open squares that at least one path leads to.
Anyway, each area without a town now gets a crossroad. Their location is generated in the same way as those of towns.
Than are the paths. This is where the most bugs happen. My path creator isn't that good, but I made it in less than an hour.
Paths are made from and to the special tiles (towns and crossroads) and are marked as path.
And finally it's time to convert the map. Some tiles are now marked as path or crossroad, those are now converted to normal grass tiles while all other grass tiles are now marked as tree tiles. And than the last step is to draw alle tiles on the screen.