anansethespider
Warlord
- Joined
- Oct 27, 2016
- Messages
- 288
I want to make a unit called Slave that all civs have access to that can contribute to both wonders and districts. I've tried a few iterations of code and here's where I'm at now:
<?xml version="1.0" encoding="utf-8"?>
<GameInfo>
<Types>
<Row Type="UNIT_SLAVE" Kind="KIND_UNIT"/>
</Types>
<UnitReplaces>
</UnitReplaces>
<UnitAiInfos>
<Row UnitType="UNIT_SLAVE" AiType="UNITAI_BUILD"/>
<Row UnitType="UNIT_SLAVE" AiType="UNITTYPE_CIVILIAN"/>
</UnitAiInfos>
<Tags>
</Tags>
<TypeTags>
</TypeTags>
<Units>
<Row UnitType="UNIT_SLAVE" BaseMoves="2" Cost="50" AdvisorType="ADVISOR_GENERIC" BaseSightRange="2" ZoneOfControl="false" Domain="DOMAIN_LAND" FormationClass="FORMATION_CLASS_CIVILIAN" Name="LOC_UNIT_SLAVE_NAME" Description="LOC_UNIT_SLAVE_DESCRIPTION" CanCapture="False" PurchaseYield="YIELD_GOLD" BuildCharges="5"/>
</Units>
<Improvement_ValidBuildUnits>
<Row ImprovementType="IMPROVEMENT_FARM" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_MINE" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_QUARRY" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_FISHING_BOATS" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_PASTURE" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_PLANTATION" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_CAMP" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_LUMBER_MILL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_OIL_WELL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_OFFSHORE_OIL_RIG" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_BEACH_RESORT" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_FORT" UnitType="UNIT_MILITARY_ENGINEER"/>
<Row ImprovementType="IMPROVEMENT_AIRSTRIP" UnitType="UNIT_MILITARY_ENGINEER"/>
<Row ImprovementType="IMPROVEMENT_MISSILE_SILO" UnitType="UNIT_MILITARY_ENGINEER"/>
<!--Unique Improvements -->
<Row ImprovementType="IMPROVEMENT_CHATEAU" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_COLOSSAL_HEAD" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_KURGAN" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_MISSION" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_ROMAN_FORT" UnitType="UNIT_ROMAN_LEGION"/>
<Row ImprovementType="IMPROVEMENT_SPHINX" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_STEPWELL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_ZIGGURAT" UnitType="UNIT_SLAVE"/>
</Improvement_ValidBuildUnits>
<UnitUpgrades>
</UnitUpgrades>
<Modifiers>
<Row>
<ModifierId>SLAVE_WONDER_PERCENT</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_UNIT_WONDER_PERCENT</ModifierType>
</Row>
<Row>
<ModifierId>SLAVE_DISTRICT_PERCENT</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_UNIT_DISTRICT_PERCENT</ModifierType>
</Row>
</Modifiers>
<ModifierArguments>
<Row>
<ModifierId>SLAVE_DISTRICT_PERCENT</ModifierId>
<Name>Amount</Name>
<Value>20</Value>
</Row>
<Row>
<ModifierId>SLAVE_WONDER_PERCENT</ModifierId>
<Name>Amount</Name>
<Value>10</Value>
</Row>
</ModifierArguments>
<RequirementSets>
<Row>
<RequirementSetId>UNIT_IS_SLAVE_REQUIREMENTS</RequirementSetId>
<RequirementSetType>REQUIREMENTSET_TEST_ALL</RequirementSetType>
</Row>
</RequirementSets>
<RequirementSetRequirements>
<Row>
<RequirementSetId>UNIT_IS_SLAVE_REQUIREMENTS</RequirementSetId>
<RequirementId>REQUIRES_UNIT_IS_SLAVE</RequirementId>
</Row>
</RequirementSetRequirements>
<Requirements>
<Row>
<RequirementId>REQUIRES_UNIT_IS_SLAVE</RequirementId>
<RequirementType>REQUIREMENT_UNIT_TYPE_MATCHES</RequirementType>
</Row>
</Requirements>
<RequirementArguments>
<Row>
<RequirementId>REQUIRES_UNIT_IS_SLAVE</RequirementId>
<Name>UnitType</Name>
<Value>UNIT_SLAVE</Value>
</Row>
</RequirementArguments>
</GameInfo>
Note that this establishes a requirementset and a modifier, but doesn't attach either of them to anything. I've tried numerous ways of attaching, from Civics to Traits and nothing seems to work. Anyone see what I'm doing wrong?
<?xml version="1.0" encoding="utf-8"?>
<GameInfo>
<Types>
<Row Type="UNIT_SLAVE" Kind="KIND_UNIT"/>
</Types>
<UnitReplaces>
</UnitReplaces>
<UnitAiInfos>
<Row UnitType="UNIT_SLAVE" AiType="UNITAI_BUILD"/>
<Row UnitType="UNIT_SLAVE" AiType="UNITTYPE_CIVILIAN"/>
</UnitAiInfos>
<Tags>
</Tags>
<TypeTags>
</TypeTags>
<Units>
<Row UnitType="UNIT_SLAVE" BaseMoves="2" Cost="50" AdvisorType="ADVISOR_GENERIC" BaseSightRange="2" ZoneOfControl="false" Domain="DOMAIN_LAND" FormationClass="FORMATION_CLASS_CIVILIAN" Name="LOC_UNIT_SLAVE_NAME" Description="LOC_UNIT_SLAVE_DESCRIPTION" CanCapture="False" PurchaseYield="YIELD_GOLD" BuildCharges="5"/>
</Units>
<Improvement_ValidBuildUnits>
<Row ImprovementType="IMPROVEMENT_FARM" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_MINE" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_QUARRY" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_FISHING_BOATS" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_PASTURE" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_PLANTATION" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_CAMP" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_LUMBER_MILL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_OIL_WELL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_OFFSHORE_OIL_RIG" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_BEACH_RESORT" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_FORT" UnitType="UNIT_MILITARY_ENGINEER"/>
<Row ImprovementType="IMPROVEMENT_AIRSTRIP" UnitType="UNIT_MILITARY_ENGINEER"/>
<Row ImprovementType="IMPROVEMENT_MISSILE_SILO" UnitType="UNIT_MILITARY_ENGINEER"/>
<!--Unique Improvements -->
<Row ImprovementType="IMPROVEMENT_CHATEAU" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_COLOSSAL_HEAD" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_KURGAN" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_MISSION" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_ROMAN_FORT" UnitType="UNIT_ROMAN_LEGION"/>
<Row ImprovementType="IMPROVEMENT_SPHINX" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_STEPWELL" UnitType="UNIT_SLAVE"/>
<Row ImprovementType="IMPROVEMENT_ZIGGURAT" UnitType="UNIT_SLAVE"/>
</Improvement_ValidBuildUnits>
<UnitUpgrades>
</UnitUpgrades>
<Modifiers>
<Row>
<ModifierId>SLAVE_WONDER_PERCENT</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_UNIT_WONDER_PERCENT</ModifierType>
</Row>
<Row>
<ModifierId>SLAVE_DISTRICT_PERCENT</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_UNIT_DISTRICT_PERCENT</ModifierType>
</Row>
</Modifiers>
<ModifierArguments>
<Row>
<ModifierId>SLAVE_DISTRICT_PERCENT</ModifierId>
<Name>Amount</Name>
<Value>20</Value>
</Row>
<Row>
<ModifierId>SLAVE_WONDER_PERCENT</ModifierId>
<Name>Amount</Name>
<Value>10</Value>
</Row>
</ModifierArguments>
<RequirementSets>
<Row>
<RequirementSetId>UNIT_IS_SLAVE_REQUIREMENTS</RequirementSetId>
<RequirementSetType>REQUIREMENTSET_TEST_ALL</RequirementSetType>
</Row>
</RequirementSets>
<RequirementSetRequirements>
<Row>
<RequirementSetId>UNIT_IS_SLAVE_REQUIREMENTS</RequirementSetId>
<RequirementId>REQUIRES_UNIT_IS_SLAVE</RequirementId>
</Row>
</RequirementSetRequirements>
<Requirements>
<Row>
<RequirementId>REQUIRES_UNIT_IS_SLAVE</RequirementId>
<RequirementType>REQUIREMENT_UNIT_TYPE_MATCHES</RequirementType>
</Row>
</Requirements>
<RequirementArguments>
<Row>
<RequirementId>REQUIRES_UNIT_IS_SLAVE</RequirementId>
<Name>UnitType</Name>
<Value>UNIT_SLAVE</Value>
</Row>
</RequirementArguments>
</GameInfo>
Note that this establishes a requirementset and a modifier, but doesn't attach either of them to anything. I've tried numerous ways of attaching, from Civics to Traits and nothing seems to work. Anyone see what I'm doing wrong?