The bit that defines the need for multiple prerequisite buildings in your empire is
Code:
<PrereqBuildingClasses>
<PrereqBuildingClass>
<BuildingClassType>BUILDINGCLASS_POTTERS_WORKSHOP</BuildingClassType>
<iNumBuildingNeeded>2</iNumBuildingNeeded>
</PrereqBuildingClass>
</PrereqBuildingClasses>
and yes if you don't have enough cities with the required building it wont show in the queue at all. Standard BtS.
If you don't have "hide uncostructable/replaced/obsolete" option in BUG selected, then building should always appear in building queue, even if requirement isn't met once techs needed for it are researched.
It would appear as being
unselectable.
That happens to almost all buildings.
And it is disappears as if I had hiding buildings not meeting needs to be enabled.
There it just disappears from quque as if BUG wasn't supporting things like this:
Code:
<BuildingClassNeededs>
<BuildingClassNeeded>
<BuildingClassType>BUILDINGCLASS_IMMATERIAL_CITY</BuildingClassType>
<bNeededInCity>1</bNeededInCity>
</BuildingClassNeeded>
</BuildingClassNeededs>
This code checks if any building of fitting class is present.
----------------------------------
I did setup with 6 test buildings to show, that at certain conditions buildings are hidden from queue even if I have hiding from queue disabled.
I named them Testome, testtwo... test six.
Buildings in order will have icons of Crime/Disease/Air/Water pollution/Education/Tourism.
Code:
<BuildingClassInfo>
<Type>BUILDINGCLASS_TESTONE</Type>
<Description>TXT_KEY_BUILDING_TESTONE</Description>
<iMaxGlobalInstances>-1</iMaxGlobalInstances>
<iMaxTeamInstances>-1</iMaxTeamInstances>
<iMaxPlayerInstances>-1</iMaxPlayerInstances>
<DefaultBuilding>BUILDING_TESTONE</DefaultBuilding>
</BuildingClassInfo>
<BuildingClassInfo>
<Type>BUILDINGCLASS_TESTTWO</Type>
<Description>TXT_KEY_BUILDING_TESTTWO</Description>
<iMaxGlobalInstances>-1</iMaxGlobalInstances>
<iMaxTeamInstances>-1</iMaxTeamInstances>
<iMaxPlayerInstances>-1</iMaxPlayerInstances>
<DefaultBuilding>BUILDING_TESTTWO</DefaultBuilding>
</BuildingClassInfo>
<BuildingClassInfo>
<Type>BUILDINGCLASS_TESTTHREE</Type>
<Description>TXT_KEY_BUILDING_TESTTHREE</Description>
<iMaxGlobalInstances>-1</iMaxGlobalInstances>
<iMaxTeamInstances>-1</iMaxTeamInstances>
<iMaxPlayerInstances>-1</iMaxPlayerInstances>
<DefaultBuilding>BUILDING_TESTTHREE</DefaultBuilding>
</BuildingClassInfo>
<BuildingClassInfo>
<Type>BUILDINGCLASS_TESTFOUR</Type>
<Description>TXT_KEY_BUILDING_TESTFOUR</Description>
<iMaxGlobalInstances>-1</iMaxGlobalInstances>
<iMaxTeamInstances>-1</iMaxTeamInstances>
<iMaxPlayerInstances>-1</iMaxPlayerInstances>
<DefaultBuilding>BUILDING_TESTFOUR</DefaultBuilding>
</BuildingClassInfo>
<BuildingClassInfo>
<Type>BUILDINGCLASS_TESTFIVE</Type>
<Description>TXT_KEY_TESTFIVE</Description>
<iMaxGlobalInstances>-1</iMaxGlobalInstances>
<iMaxTeamInstances>-1</iMaxTeamInstances>
<iMaxPlayerInstances>-1</iMaxPlayerInstances>
<DefaultBuilding>BUILDING_TESTFIVE</DefaultBuilding>
</BuildingClassInfo>
<BuildingClassInfo>
<Type>BUILDINGCLASS_TESTSIX</Type>
<Description>TXT_KEY_TESTSIX</Description>
<iMaxGlobalInstances>-1</iMaxGlobalInstances>
<iMaxTeamInstances>-1</iMaxTeamInstances>
<iMaxPlayerInstances>-1</iMaxPlayerInstances>
<DefaultBuilding>BUILDING_TESTSIX</DefaultBuilding>
</BuildingClassInfo>
Code:
<!-- TESTONE -->
<BuildingInfo>
<BuildingClass>BUILDINGCLASS_TESTONE</BuildingClass>
<Type>BUILDING_TESTONE</Type>
<Description>TXT_KEY_BUILDING_TESTONE</Description>
<Civilopedia>TXT_KEY_BUILDING_TESTONE_PEDIA</Civilopedia>
<Strategy>TXT_KEY_BUILDING_TESTONE_STRATEGY</Strategy>
<Advisor>ADVISOR_ECONOMY</Advisor>
<ArtDefineTag>ART_DEF_BUILDING_CRIME_PLANEHIJACKING</ArtDefineTag>
<iMinAreaSize>-1</iMinAreaSize>
<!-- Construction cost -->
<iCost>1</iCost>
</BuildingInfo>
<!-- TESTTWO -->
<BuildingInfo>
<BuildingClass>BUILDINGCLASS_TESTTWO</BuildingClass>
<Type>BUILDING_TESTTWO</Type>
<Description>TXT_KEY_BUILDING_TESTTWO</Description>
<Civilopedia>TXT_KEY_BUILDING_TESTTWO_PEDIA</Civilopedia>
<Strategy>TXT_KEY_BUILDING_TESTTWO_STRATEGY</Strategy>
<Advisor>ADVISOR_ECONOMY</Advisor>
<ArtDefineTag>ART_DEF_BUILDING_DISEASE_ANTHRAX</ArtDefineTag>
<iMinAreaSize>-1</iMinAreaSize>
<!-- Construction cost -->
<iCost>1</iCost>
</BuildingInfo>
<!-- TESTTHREE -->
<BuildingInfo>
<BuildingClass>BUILDINGCLASS_TESTTHREE</BuildingClass>
<Type>BUILDING_TESTTHREE</Type>
<Description>TXT_KEY_BUILDING_TESTTHREE</Description>
<Civilopedia>TXT_KEY_BUILDING_TESTTHREE_PEDIA</Civilopedia>
<Strategy>TXT_KEY_BUILDING_TESTTHREE_STRATEGY</Strategy>
<Advisor>ADVISOR_ECONOMY</Advisor>
<ArtDefineTag>ART_DEF_BUILDING_POLLUTION_SMOG2</ArtDefineTag>
<iMinAreaSize>-1</iMinAreaSize>
<!-- Construction cost -->
<iCost>1</iCost>
</BuildingInfo>
<!-- TESTFOUR -->
<BuildingInfo>
<BuildingClass>BUILDINGCLASS_TESTFOUR</BuildingClass>
<Type>BUILDING_TESTFOUR</Type>
<Description>TXT_KEY_BUILDING_TESTFOUR</Description>
<Civilopedia>TXT_KEY_BUILDING_TESTFOUR_PEDIA</Civilopedia>
<Strategy>TXT_KEY_BUILDING_TESTFOUR_STRATEGY</Strategy>
<Advisor>ADVISOR_ECONOMY</Advisor>
<ArtDefineTag>ART_DEF_BUILDING_POLLUTION_COAST3</ArtDefineTag>
<iMinAreaSize>-1</iMinAreaSize>
<!-- Construction cost -->
<iCost>1</iCost>
</BuildingInfo>
<!-- TESTFIVE -->
<BuildingInfo>
<BuildingClass>BUILDINGCLASS_TESTFIVE</BuildingClass>
<Type>BUILDING_TESTFIVE</Type>
<Description>TXT_KEY_BUILDING_TESTFIVE</Description>
<Civilopedia>TXT_KEY_BUILDING_TESTFIVE_PEDIA</Civilopedia>
<Strategy>TXT_KEY_BUILDING_TESTFIVE_STRATEGY</Strategy>
<Advisor>ADVISOR_ECONOMY</Advisor>
<ArtDefineTag>ART_DEF_BUILDING_EQ</ArtDefineTag>
<iMinAreaSize>-1</iMinAreaSize>
<!-- Construction cost -->
<iCost>1</iCost>
<BuildingClassNeededs>
<BuildingClassNeeded>
<BuildingClassType>BUILDINGCLASS_TESTONE</BuildingClassType>
<bNeededInCity>1</bNeededInCity>
</BuildingClassNeeded>
<BuildingClassNeeded>
<BuildingClassType>BUILDINGCLASS_TESTTWO</BuildingClassType>
<bNeededInCity>1</bNeededInCity>
</BuildingClassNeeded>
</BuildingClassNeededs>
<PrereqOrBuildingClasses>
<PrereqOrBuildingClass>
<BuildingClassType>BUILDINGCLASS_TESTTHREE</BuildingClassType>
<bPrereqBuildingClass>1</bPrereqBuildingClass>
</PrereqOrBuildingClass>
<PrereqOrBuildingClass>
<BuildingClassType>BUILDINGCLASS_TESTFOUR</BuildingClassType>
<bPrereqBuildingClass>1</bPrereqBuildingClass>
</PrereqOrBuildingClass>
</PrereqOrBuildingClasses>
</BuildingInfo>
<!-- TESTSIX -->
<BuildingInfo>
<BuildingClass>BUILDINGCLASS_TESTSIX</BuildingClass>
<Type>BUILDING_TESTSIX</Type>
<Description>TXT_KEY_BUILDING_TESTSIX</Description>
<Civilopedia>TXT_KEY_BUILDING_TESTSIX_PEDIA</Civilopedia>
<Strategy>TXT_KEY_BUILDING_TESTSIX_STRATEGY</Strategy>
<Advisor>ADVISOR_ECONOMY</Advisor>
<ArtDefineTag>ART_DEF_BUILDING_TOURISM</ArtDefineTag>
<iMinAreaSize>-1</iMinAreaSize>
<!-- Construction cost -->
<iCost>1</iCost>
<PrereqBuildingClasses>
<PrereqBuildingClass>
<BuildingClassType>BUILDINGCLASS_TESTONE</BuildingClassType>
<iNumBuildingNeeded>2</iNumBuildingNeeded>
</PrereqBuildingClass>
</PrereqBuildingClasses>
<BuildingClassNeededs>
<BuildingClassNeeded>
<BuildingClassType>BUILDINGCLASS_TESTONE</BuildingClassType>
<bNeededInCity>1</bNeededInCity>
</BuildingClassNeeded>
</BuildingClassNeededs>
</BuildingInfo>
I added save, you need to add this code to CIV4BuildingClassInfos and Regular_CIV4BuildingInfos respectively.
To build Test5 you need Test1, Test2, and one of following: Test3 or Test4.
To build Test6 you need Two Test1 buildings, Test6 needs to be in city with Test1 building.
First one is similar for Omega Assembler building requirements setup.
Second one is similar to how Mormon (new version) building are needing stuff.