So the last few days, I’ve been working on figuring out an approach to procedurally build outdoor cities; places like WoW’s Stormwind.
I’ve been discovering that the currently documented city-generation methods, while they work reasonably well for simulating modern and real-world cities, don’t work well at all for MMORPG-style “fake cities”. The cities one finds in an MMORPG are a bit bizarre, in that the buildings are typically much taller and narrower than they ought to be, and the cities are almost absurdly small. Additionally, “blocks” usually only have two or three discrete buildings on them, where more realistic cities intentionally pack dozens of buildings into blocks, in order to try to maximise the available business/residential space and reduce the number of roads required; MMORPGs seem to usually build their cities the other way around; far more road than building.
Anyhow, the city pictured here is nearly 600 meters across, which means that it would take the player about two minutes to sprint from one side to the other; I’m informed that that’s approximately the same amount of time it takes someone to run across Stormwind.
This city floorplan contains four districts, each of which contains several “blocks” of one or more buildings. The buildings themselves aren’t being created yet; the outlined areas visible above are the “blocks” where buildings would eventually go (and I’m going to have to do some more work, to ensure that blocks are more evenly sized than they are here). The outermost outline is where a city wall would be placed.
I’m not really convinced that this is the right direction to be going with this city floorplan; it’s still fundamentally based on real-world city patterns, where in MMORPGs you’ll often find buildings built serviced only by a road in the front, with the building backed up against a wall, instead of having a “block” of buildings with roads running all the way around the perimeter.
More thought required.