[eINFO] Prerequisite Flexibility
I have been pouring over the xml to find some new options besides the <prereq> function. You see, I want a building to require one of several other buildings for Ivory Towers. I struck gold with the xml for Temple of Essence. It uses this:
<RequiresCityImprovements>1</RequiresCityImprovements>
<RequiredImprovement>Air_Shrine</RequiredImprovement>
<RequiredImprovement>Death_Shrine</RequiredImprovement>
<RequiredImprovement>Earth_Shrine</RequiredImprovement>
<RequiredImprovement>Fire_Shrine</RequiredImprovement>
<RequiredImprovement>Life_Shrine</RequiredImprovement>
<RequiredImprovement>Water_Shrine</RequiredImprovement>
So now we can make any one building require any number of other buildings. How is this useful? Well, for one thing right now the devs are going to make buildings that increase the amount of resources. I would love it if there was a building, call it Stable. It increases the amount of horses and wargs by 100% only if one of these two resources are connected to the city. It certainly adds a layer of strategic thinking when you are deciding where to place a city.
A modder like me would use this to require four of 12 spell towers to be built in a city before a mega spell tower can be built. This is better than the simple prereq option, because it offers the or option whereas prereq requires all prereqs to build the improvement. It would be really great if there was a <RequiredTech> function as well, but i doubt it exists.
The next test I will do is to have a cityhub upgrade based on a number of city improvements you build. Did you build a Pyre of Anniellum, Dragon Roost, Pyromancer's Tower, and Elemental Temple? Well your level 5 cityhub was reconstructed into a skyscraping Fiery Wizard's Tower. I can now make the cityhub reflect the specialization you chose for your city. I still need to test that say cityhub_Fire and cityhub_Water can coexist in the cityhub5 xml as upgrades. I will post my results on this front.
Anyone else got some ideas on how to use this bit of xml flexibility?