I have in mind a vertical (though not spherical) 31x31xM design with a 3x3 central stair and 1x1xM stairs in a double ring around the central stair in order to allow space for workshops to be built in a triple ring around the central stair while retaining good local vertical mobility. This will allow me to place stockpiles above/below workshops which can be built in groups, and so forth, feeds directly into bedrooms and such. I've laid it out in webfort with the intent to make this my current "standard" fort design, but the engineer in me is already trying to find the weaknesses of the design and optimize it for fear that this design may exacerbate pathfinding issues within DF.
However, I'm also trying to avoid having to implement then test multiple minor variations on this design to get better pathfinding performance. (Or to avoid implementing at all, if the design is going to be horribly broken.)
Is there a good way to vet a potential design against the A* engine in a performance sense without implementing it in DF? Are there general guidelines which might suggest ways in which the design spoilered below (in quickfort format) would perform suboptimally? There's no dead-ends, for example, and I'm assuming that DF will pathfind up/down levels before trying to pathfind N/S/E/W on the same level to find something on a different level. Dwarves should be able to pathfind through the local holes when making transit between worksops/stockpiles/beds, and through the central stair to pathfind into the few areas that don't have the standard layout (meeting hall, barracks/hospital/dorms, magma forges, etc.)
#dig
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,i,d,d,d,i,d,d,d,,,,d,d,d,,,,d,d,d,i,d,d,d,i,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,,h,,d,d,d,,h,,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,,,d,d,d,d,d,,,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,i,i,i,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,i,d,d,d,i,d,d,d,d,d,d,i,i,i,d,d,d,d,d,d,i,d,d,d,i,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,i,i,i,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,,,d,d,d,d,d,,,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,,h,,d,d,d,,h,,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,i,d,d,d,i,d,d,d,,,,d,d,d,,,,d,d,d,i,d,d,d,i,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,i,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,
d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,