This is great and I will use it.
I am sort of interested in midieval city planning, and would like to help, if it is desired.
Following are suggestions, based on your comments about rivers, and so on, in "some answers". They work in European, Eastern-European and Levantine contexts.
- Include at least one temple in each crafts-men area. These functioned as guild locals and their cellars doubled as taverns, until the production of guildhouses after the black death. In big cities actual guildhouses might supplant them, and would then be present as a factor of 1 guildhall/10-18 craftsmen.
- If you include water, then consider programming a canal to the centre of each guildarea, i.e. the markets and the guild locals/temples. This is a way to maximize cheap transport, and channels are easier to defend then an actual waterfront. A fractal patterning might be the best for this reason. Bridges could be spawned 1/4 areas, and one to each district that is bisected. The defenseability of canals vs. harbours are the reason that there usually were separate harbour-towns.
- Include at least one noble dwelling in each slum. In cities large enough to have a slum, nobles liked to use the slum as an alternative to an actual fortification. Sponsoring dayly or weekly bread-distributions made the slumdwellers loyal enough that a resident noble would have little trouble using them to defend himself against the local lord, or the local church. Same setup as gangs use nowadays to evade police. My suggestion 0-3/slumarea.
- One possibility might be to toggle city-centralisation? The higher centralisation, the more merchants, and the fewer nobles. If large city + high centralisation, include a street of pet-noble palaces.
Rivers and defence
- IF you include a river I think that that ought to be outside of the walls, since most cities only grow to both sides of even medium-sized rivers when the areable land around the city can no longer support it, only on one side. This has to do with the mudcontent that rivers produced, which tends to concentrate on one side. If the mud increased, the water could not be washed in or used to feed animals, and would be harder to row through, which limited transport.
- Extend the walls outside of the actual city limit. Consider also multiple walls. If they could afford it, most cities would buy wall-rights to include resident farm-property so that they could survive in the event of a pandemic, during which the city would close the gates to the outside - disease-ridden - world. A lot of people don't realise that walls are less about defence, than sanitation. Walling-rights were also the primary symbol of liberty from the feudal order on the country-side (in the west). Hence all villages who aspired to independence would at least have a wooden palisade or a sturdy wooden fence.
- Include more castles, including smaller ones, consisting only of one or two towers without walls between them. Usually this was how the more successfull residents liked to live, in order to protect themselves from irate mobs and competition, who would have no qualms about burning their way to increased market share, or one fewer rivals at court. My suggestion is 0-3 until medium city, then 1-2/2 districts, placed out randomly, and not counting the nobbs in the slum.
- Remove most towers from the city walls. Towers were extremely expensive compared to walls, and therefore reserved to gates. In fact the presence and amount of towers are usually a good indicator of how rich a city is. If a wealth-toggle is included, it might increase monasteries, craftsmen, merchants, small castles and towers; otherwise I suggest 1 none-gate tower/3 districs of craftsmen OR 2 disricts/buildings of markets, nobles, temples merchants or castles.
- If you include harbours, include them on a separate area next to the castle, with an aditional city wall between this area and the actual town. Also include a preference for "smallcastles" to spawn in this area.
Other genreral infrastructure.
- You might like to include fountains and wells, and possibly aqueducts to feed them. The reason is that these areas, with the small plazas around them, tended to be where one would go for the latest gossip, and they are thus also where revolts are started. If this feature is in, it will make things easier for a player to know where to go. There were usually close to, though not an immediate proximity of, the local temples. Suggested spawn: 1/2-5 districts or larger buildings of any kind.
- Ruins ought to be a thing. They are used for cheap building materials, and as a sort of daycare during the day, and nightclub after curfew. 0-1/0-4 districts? Size up to the actual castles size.
- The only difference between this and an oriental setup, is the absence of caravanseries on the temples, and walls between different areas. Both might very well be on a toggle.
- In france and Italy and the Bysantine-Russian lands, though not so much elsewhere, the monasteries functioned like a muslim caravansery. It would not be out of place to include even in a "normal" map, but should maybe be on a toggle non the less. A caravansery is a sort of walled in free-for-travelers stable+motel+warehouse.
- In russia and other mongol-influenced areas smaller walls surround each area. These have doublejointed gates - after dark the passages between the areas are under castle-control, and the castellan will lock the gates from the outside. When the area is unhappy, or feels overtaxed, it will lock the gates from the inside. In case of contagion, that breaks through the outer walls, the castellan would order a week-long lock-in of all areas, to see if any of them had gotten the disease. If so, these areas would remain locked, and the others could go about their business. Towers are not common on these walls. This sanitary difference is basically why the west struggled to create hospitals enough to deal with plagues, while asia (and russia) generally had city-sizes above 20k. Of course, it is also why these cities remained subservient, while the west created the renaissance :D
Long post. Sorry about that. Is any of this doable?