lemmy101
Emperor
- Joined
- Apr 10, 2006
- Messages
- 1,064
Coming soon.
A quick taster of what's next from Indie Stone:
Also part of the tech editor but will also be released as a stand-alone tool.
The conflict finder can load up any combination of XML mod files and use them to determine if there are any conflicts from deleted table entries.
In the above example, I deleted Bronze Working with one line of XML:
Then loaded this in the tool. It will then search the entire Civ 5 XML base, and pop up with all the issues it finds. Other objects within the database/XML that still reference the deleted item. You can choose to set the offending conflict to another of the types available which includes new types added by your mod (in this case Technologies)
It goes through everything. Every XML file in Civ, including all DLC.
In our example, I've deleted all things that reference Bronze Working. I finally deal with all the Bronze Working conflicts, but I've been creating new conflicts with everything I delete. So now...
Note the type to replace drop down now contains the relevant type to replace with this, all extracted from the language file for easy reading.
I keep deleting stuff that conflicts, like some mad deleting monster. I click replace a few times too. Setting anything that needed my now deleted Barracks building class to point at BUILDINGCLASS_COURTHOUSE.
Finally....! (note this dialog is written for the tech tree editor, the stand alone tool won't assume anything about the type of file it is
)
Let's see what XML it's spat out:
Wowzers! All this from deleting Bronze Working (and things that use it)
Of course I could have just reassigned everything to Iron Working instead of deleting stuff left right and centre (except the prerequisite tech for Iron Working, for obvious reasons. That I delete.)
This is the XML that's produced:
Expect it in a day or two.
A quick taster of what's next from Indie Stone:

Also part of the tech editor but will also be released as a stand-alone tool.
The conflict finder can load up any combination of XML mod files and use them to determine if there are any conflicts from deleted table entries.
In the above example, I deleted Bronze Working with one line of XML:
Code:
<Delete Type="TECH_BRONZE_WORKING"/>
Then loaded this in the tool. It will then search the entire Civ 5 XML base, and pop up with all the issues it finds. Other objects within the database/XML that still reference the deleted item. You can choose to set the offending conflict to another of the types available which includes new types added by your mod (in this case Technologies)

It goes through everything. Every XML file in Civ, including all DLC.
In our example, I've deleted all things that reference Bronze Working. I finally deal with all the Bronze Working conflicts, but I've been creating new conflicts with everything I delete. So now...

Note the type to replace drop down now contains the relevant type to replace with this, all extracted from the language file for easy reading.

I keep deleting stuff that conflicts, like some mad deleting monster. I click replace a few times too. Setting anything that needed my now deleted Barracks building class to point at BUILDINGCLASS_COURTHOUSE.

Finally....! (note this dialog is written for the tech tree editor, the stand alone tool won't assume anything about the type of file it is

Let's see what XML it's spat out:
Code:
<GameData>
<BuildingClasses>
<Delete Type="BUILDINGCLASS_BARRACKS" />
<Delete Type="BUILDINGCLASS_COLOSSUS" />
</BuildingClasses>
<Buildings>
<Delete Type="BUILDING_KREPOST" />
<Delete Type="BUILDING_BARRACKS" />
<Delete Type="BUILDING_COLOSSUS" />
</Buildings>
<Building_ClassesNeededInCity>
<Delete BuildingType="BUILDING_ARMORY" BuildingClassType="BUILDINGCLASS_BARRACKS" />
<Delete BuildingType="BUILDING_MILITARY_ACADEMY" BuildingClassType="BUILDINGCLASS_BARRACKS" />
<Delete BuildingType="BUILDING_HEROIC_EPIC" BuildingClassType="BUILDINGCLASS_BARRACKS" />
<Row>
<BuildingType>BUILDING_ARMORY</BuildingType>
<BuildingClassType>BUILDINGCLASS_COURTHOUSE</BuildingClassType>
</Row>
<Row>
<BuildingType>BUILDING_MILITARY_ACADEMY</BuildingType>
<BuildingClassType>BUILDINGCLASS_COURTHOUSE</BuildingClassType>
</Row>
<Row>
<BuildingType>BUILDING_HEROIC_EPIC</BuildingType>
<BuildingClassType>BUILDINGCLASS_COURTHOUSE</BuildingClassType>
</Row>
</Building_ClassesNeededInCity>
<Building_DomainFreeExperiences>
<Delete BuildingType="BUILDING_BARRACKS" DomainType="DOMAIN_LAND" Experience="15" />
<Delete BuildingType="BUILDING_KREPOST" DomainType="DOMAIN_LAND" Experience="15" />
</Building_DomainFreeExperiences>
<Building_Flavors>
<Delete BuildingType="BUILDING_BARRACKS" FlavorType="FLAVOR_MILITARY_TRAINING" Flavor="10" />
<Delete BuildingType="BUILDING_KREPOST" FlavorType="FLAVOR_MILITARY_TRAINING" Flavor="20" />
<Delete BuildingType="BUILDING_KREPOST" FlavorType="FLAVOR_EXPANSION" Flavor="20" />
<Delete BuildingType="BUILDING_COLOSSUS" FlavorType="FLAVOR_GOLD" Flavor="15" />
<Delete BuildingType="BUILDING_COLOSSUS" FlavorType="FLAVOR_WONDER" Flavor="20" />
</Building_Flavors>
<Building_PrereqBuildingClasses>
<Delete BuildingType="BUILDING_HEROIC_EPIC" BuildingClassType="BUILDINGCLASS_BARRACKS" NumBuildingNeeded="-1" />
<Row>
<BuildingType>BUILDING_HEROIC_EPIC</BuildingType>
<BuildingClassType>BUILDINGCLASS_COURTHOUSE</BuildingClassType>
<NumBuildingNeeded>-1</NumBuildingNeeded>
</Row>
</Building_PrereqBuildingClasses>
<Building_SeaPlotYieldChanges>
<Delete BuildingType="BUILDING_COLOSSUS" YieldType="YIELD_GOLD" Yield="1" />
</Building_SeaPlotYieldChanges>
<Civilization_BuildingClassOverrides>
<Delete CivilizationType="CIVILIZATION_BARBARIAN" BuildingClassType="BUILDINGCLASS_COLOSSUS" BuildingType="" />
<Delete CivilizationType="CIVILIZATION_MINOR" BuildingClassType="BUILDINGCLASS_COLOSSUS" BuildingType="" />
<Delete CivilizationType="CIVILIZATION_RUSSIA" BuildingClassType="BUILDINGCLASS_BARRACKS" BuildingType="BUILDING_KREPOST" />
<Row>
<CivilizationType>CIVILIZATION_BARBARIAN</CivilizationType>
<BuildingClassType>BUILDINGCLASS_COURTHOUSE</BuildingClassType>
<BuildingType>
</BuildingType>
</Row>
<Row>
<CivilizationType>CIVILIZATION_MINOR</CivilizationType>
<BuildingClassType>BUILDINGCLASS_COURTHOUSE</BuildingClassType>
<BuildingType>
</BuildingType>
</Row>
</Civilization_BuildingClassOverrides>
<Civilization_UnitClassOverrides>
<Delete CivilizationType="CIVILIZATION_BARBARIAN" UnitClassType="UNITCLASS_WARRIOR" UnitType="UNIT_BARBARIAN_WARRIOR" />
<Delete CivilizationType="CIVILIZATION_BARBARIAN" UnitClassType="UNITCLASS_SPEARMAN" UnitType="UNIT_BARBARIAN_SPEARMAN" />
<Delete CivilizationType="CIVILIZATION_AZTEC" UnitClassType="UNITCLASS_WARRIOR" UnitType="UNIT_AZTEC_JAGUAR" />
<Delete CivilizationType="CIVILIZATION_GREECE" UnitClassType="UNITCLASS_SPEARMAN" UnitType="UNIT_GREEK_HOPLITE" />
<Delete CivilizationType="CIVILIZATION_PERSIA" UnitClassType="UNITCLASS_SPEARMAN" UnitType="UNIT_PERSIAN_IMMORTAL" />
</Civilization_UnitClassOverrides>
<Eras />
<GoodyHuts>
<Delete Type="GOODY_WARRIOR" />
<Delete Type="GOODY_BARBARIANS_WEAK" />
<Delete Type="GOODY_BARBARIANS_STRONG" />
</GoodyHuts>
<Technologies>
<Delete Type="TECH_BRONZE_WORKING" />
</Technologies>
<Technology_Flavors>
<Delete TechType="TECH_BRONZE_WORKING" FlavorType="FLAVOR_DEFENSE" Flavor="4" />
<Delete TechType="TECH_BRONZE_WORKING" FlavorType="FLAVOR_MILITARY_TRAINING" Flavor="4" />
<Delete TechType="TECH_BRONZE_WORKING" FlavorType="FLAVOR_WONDER" Flavor="2" />
</Technology_Flavors>
<Technology_PrereqTechs>
<Delete TechType="TECH_BRONZE_WORKING" PrereqTech="TECH_MINING" />
<Delete TechType="TECH_IRON_WORKING" PrereqTech="TECH_BRONZE_WORKING" />
</Technology_PrereqTechs>
<Builds>
<Delete Type="BUILD_REMOVE_JUNGLE" />
</Builds>
<BuildFeatures>
<Delete BuildType="BUILD_FARM" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_MINE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_TRADING_POST" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" />
<Delete BuildType="BUILD_PASTURE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_PLANTATION" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_QUARRY" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_FORT" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" />
<Delete BuildType="BUILD_REMOVE_JUNGLE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_LANDMARK" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_ACADEMY" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_CUSTOMS_HOUSE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_MANUFACTORY" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_CITADEL" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
</BuildFeatures>
<UnitClasses>
<Delete Type="UNITCLASS_WARRIOR" />
<Delete Type="UNITCLASS_SPEARMAN" />
</UnitClasses>
<Units>
<Delete Type="UNIT_SPEARMAN" />
<Delete Type="UNIT_GREEK_HOPLITE" />
<Delete Type="UNIT_PERSIAN_IMMORTAL" />
<Delete Type="UNIT_WARRIOR" />
<Delete Type="UNIT_AZTEC_JAGUAR" />
<Delete Type="UNIT_BARBARIAN_WARRIOR" />
<Delete Type="UNIT_BARBARIAN_SPEARMAN" />
</Units>
<Unit_AITypes>
<Delete UnitType="UNIT_WARRIOR" UnitAIType="UNITAI_ATTACK" />
<Delete UnitType="UNIT_WARRIOR" UnitAIType="UNITAI_DEFENSE" />
<Delete UnitType="UNIT_WARRIOR" UnitAIType="UNITAI_EXPLORE" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" UnitAIType="UNITAI_ATTACK" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" UnitAIType="UNITAI_DEFENSE" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" UnitAIType="UNITAI_EXPLORE" />
<Delete UnitType="UNIT_SPEARMAN" UnitAIType="UNITAI_COUNTER" />
<Delete UnitType="UNIT_SPEARMAN" UnitAIType="UNITAI_DEFENSE" />
<Delete UnitType="UNIT_SPEARMAN" UnitAIType="UNITAI_EXPLORE" />
<Delete UnitType="UNIT_BARBARIAN_SPEARMAN" UnitAIType="UNITAI_COUNTER" />
<Delete UnitType="UNIT_BARBARIAN_SPEARMAN" UnitAIType="UNITAI_DEFENSE" />
<Delete UnitType="UNIT_BARBARIAN_SPEARMAN" UnitAIType="UNITAI_EXPLORE" />
<Delete UnitType="UNIT_GREEK_HOPLITE" UnitAIType="UNITAI_COUNTER" />
<Delete UnitType="UNIT_GREEK_HOPLITE" UnitAIType="UNITAI_DEFENSE" />
<Delete UnitType="UNIT_GREEK_HOPLITE" UnitAIType="UNITAI_EXPLORE" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" UnitAIType="UNITAI_COUNTER" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" UnitAIType="UNITAI_DEFENSE" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" UnitAIType="UNITAI_EXPLORE" />
</Unit_AITypes>
<Unit_Builds>
<Delete UnitType="UNIT_WORKER" BuildType="BUILD_REMOVE_JUNGLE" />
</Unit_Builds>
<Unit_ClassUpgrades>
<Delete UnitType="UNIT_WARRIOR" UnitClassType="UNITCLASS_SWORDSMAN" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" UnitClassType="UNITCLASS_SWORDSMAN" />
<Delete UnitType="UNIT_BARBARIAN_WARRIOR" UnitClassType="UNITCLASS_SWORDSMAN" />
<Delete UnitType="UNIT_SPEARMAN" UnitClassType="UNITCLASS_PIKEMAN" />
<Delete UnitType="UNIT_BARBARIAN_SPEARMAN" UnitClassType="UNITCLASS_PIKEMAN" />
<Delete UnitType="UNIT_GREEK_HOPLITE" UnitClassType="UNITCLASS_PIKEMAN" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" UnitClassType="UNITCLASS_PIKEMAN" />
</Unit_ClassUpgrades>
<Unit_Flavors>
<Delete UnitType="UNIT_WARRIOR" FlavorType="FLAVOR_RECON" Flavor="1" />
<Delete UnitType="UNIT_WARRIOR" FlavorType="FLAVOR_OFFENSE" Flavor="2" />
<Delete UnitType="UNIT_WARRIOR" FlavorType="FLAVOR_DEFENSE" Flavor="2" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" FlavorType="FLAVOR_RECON" Flavor="2" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" FlavorType="FLAVOR_OFFENSE" Flavor="4" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" FlavorType="FLAVOR_DEFENSE" Flavor="4" />
<Delete UnitType="UNIT_SPEARMAN" FlavorType="FLAVOR_OFFENSE" Flavor="2" />
<Delete UnitType="UNIT_SPEARMAN" FlavorType="FLAVOR_DEFENSE" Flavor="4" />
<Delete UnitType="UNIT_BARBARIAN_SPEARMAN" FlavorType="FLAVOR_OFFENSE" Flavor="2" />
<Delete UnitType="UNIT_BARBARIAN_SPEARMAN" FlavorType="FLAVOR_DEFENSE" Flavor="4" />
<Delete UnitType="UNIT_GREEK_HOPLITE" FlavorType="FLAVOR_OFFENSE" Flavor="4" />
<Delete UnitType="UNIT_GREEK_HOPLITE" FlavorType="FLAVOR_DEFENSE" Flavor="8" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" FlavorType="FLAVOR_OFFENSE" Flavor="4" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" FlavorType="FLAVOR_DEFENSE" Flavor="8" />
</Unit_Flavors>
<Unit_FreePromotions>
<Delete UnitType="UNIT_AZTEC_JAGUAR" PromotionType="PROMOTION_JAGUAR" />
<Delete UnitType="UNIT_AZTEC_JAGUAR" PromotionType="PROMOTION_PARTIAL_HEAL_IF_DESTROY_ENEMY" />
<Delete UnitType="UNIT_SPEARMAN" PromotionType="PROMOTION_ANTI_MOUNTED_II" />
<Delete UnitType="UNIT_BARBARIAN_SPEARMAN" PromotionType="PROMOTION_ANTI_MOUNTED_II" />
<Delete UnitType="UNIT_GREEK_HOPLITE" PromotionType="PROMOTION_ANTI_MOUNTED_II" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" PromotionType="PROMOTION_ANTI_MOUNTED_II" />
<Delete UnitType="UNIT_PERSIAN_IMMORTAL" PromotionType="PROMOTION_FASTER_HEAL" />
</Unit_FreePromotions>
</GameData>
Wowzers! All this from deleting Bronze Working (and things that use it)
Of course I could have just reassigned everything to Iron Working instead of deleting stuff left right and centre (except the prerequisite tech for Iron Working, for obvious reasons. That I delete.)
This is the XML that's produced:
Code:
<GameData>
<Buildings>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="BUILDING_KREPOST" />
</Update>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="BUILDING_BARRACKS" />
</Update>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="BUILDING_COLOSSUS" />
</Update>
</Buildings>
<Eras />
<Technologies>
<Delete Type="TECH_BRONZE_WORKING" />
</Technologies>
<Technology_Flavors>
<Delete TechType="TECH_BRONZE_WORKING" FlavorType="FLAVOR_DEFENSE" Flavor="4" />
<Delete TechType="TECH_BRONZE_WORKING" FlavorType="FLAVOR_MILITARY_TRAINING" Flavor="4" />
<Delete TechType="TECH_BRONZE_WORKING" FlavorType="FLAVOR_WONDER" Flavor="2" />
<Row>
<TechType>TECH_IRON_WORKING</TechType>
<FlavorType>FLAVOR_DEFENSE</FlavorType>
<Flavor>4</Flavor>
</Row>
<Row>
<TechType>TECH_IRON_WORKING</TechType>
<FlavorType>FLAVOR_MILITARY_TRAINING</FlavorType>
<Flavor>4</Flavor>
</Row>
<Row>
<TechType>TECH_IRON_WORKING</TechType>
<FlavorType>FLAVOR_WONDER</FlavorType>
<Flavor>2</Flavor>
</Row>
</Technology_Flavors>
<Technology_PrereqTechs>
<Delete TechType="TECH_BRONZE_WORKING" PrereqTech="TECH_MINING" />
<Delete TechType="TECH_IRON_WORKING" PrereqTech="TECH_BRONZE_WORKING" />
<Row>
<TechType>TECH_IRON_WORKING</TechType>
<PrereqTech>TECH_MINING</PrereqTech>
</Row>
</Technology_PrereqTechs>
<Builds>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="BUILD_REMOVE_JUNGLE" />
</Update>
</Builds>
<BuildFeatures>
<Delete BuildType="BUILD_FARM" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_MINE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_TRADING_POST" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" />
<Delete BuildType="BUILD_PASTURE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_PLANTATION" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_QUARRY" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_FORT" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" />
<Delete BuildType="BUILD_REMOVE_JUNGLE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Time="700" Remove="true" />
<Delete BuildType="BUILD_LANDMARK" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_ACADEMY" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_CUSTOMS_HOUSE" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_MANUFACTORY" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Delete BuildType="BUILD_CITADEL" FeatureType="FEATURE_JUNGLE" PrereqTech="TECH_BRONZE_WORKING" Remove="true" />
<Row>
<BuildType>BUILD_FARM</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_MINE</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_TRADING_POST</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
</Row>
<Row>
<BuildType>BUILD_PASTURE</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_PLANTATION</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_QUARRY</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_FORT</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
</Row>
<Row>
<BuildType>BUILD_REMOVE_JUNGLE</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Time>700</Time>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_LANDMARK</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_ACADEMY</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_CUSTOMS_HOUSE</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_MANUFACTORY</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Remove>true</Remove>
</Row>
<Row>
<BuildType>BUILD_CITADEL</BuildType>
<FeatureType>FEATURE_JUNGLE</FeatureType>
<PrereqTech>TECH_IRON_WORKING</PrereqTech>
<Remove>true</Remove>
</Row>
</BuildFeatures>
<Units>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="UNIT_SPEARMAN" />
</Update>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="UNIT_GREEK_HOPLITE" />
</Update>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="UNIT_PERSIAN_IMMORTAL" />
</Update>
<Update>
<Set PrereqTech="TECH_IRON_WORKING" />
<Where Type="UNIT_BARBARIAN_SPEARMAN" />
</Update>
</Units>
</GameData>
Expect it in a day or two.
