Civ4PromotionInfos

From Civilization Modding Wiki
Jump to: navigation, search

The Civ4PromotionInfos file defines the characteristics of each of the game's promotions, or bonuses that units receive as they acquire experience points. The order the promotions are listed in this file is the order they will be listed on a new unit in the game.

All tags must be opened and closed; the first is the "open", the second the "close" tag. If nothing goes inside a "list tag", then it should just be the opening tag with a "/" before the closing bracket. The following tables contain all available tags, as well as their purpose and accepted values.

This page is missing information. Do not remove this notice until it is complete.


Tags

Headers

These tags typically bracket other tags, sometimes the entire file, and are generally used to specify more than one piece of data.

Tag Name Description
PromotionInfos This begins and ends the file. Everything must go in between these two, or it will not work.
PromotionInfo Encloses the entry for each promotion.


Text

Tag Name Description
Type The name of the promotion, which must be unique.
Description The name given to the promotion in the game.
Help Optional. A text that can include some more information to display. The text is specified in any of the Assets\XML\Text files.
Sound In the game, always AS2D_IF_LEVELUP; this is the sound played when the promotion is given to a unit.
LayerAnimationPath Unknown.
PromotionPrereq Any unit needs this promotion to take the promotion. It can be NONE.
PromotionPrereqOr1 If the unit has this and the promotion defined in PromotionPrereq, it can take this promotion.
PromotionPrereqOr2 If the unit has this and the promotion defined in PromotionPrereq, it can take this promotion.
TechPrereq Can be NONE; this is the technology needed to get this promotion. For example, Blitz comes with Military Science.
StateReligionPrereq Can be NONE; this is the State Religion needed to get this promotion.
Button A comma separated field that lists four things: the path of the normal promotion image, the path of the smaller image for this promotion, and then x-y grid coordinates of the smaller image. The second file path is for the button used in the civilopedia, among other places.


Integers

All of these tags have a numerical value. Though it sometimes can be negative, it usually is not.

Tag Name Description
iVisibilityChange The number of tiles that the unit's Line of Sight increases by
iMovesChange The number of extra moves that the promotion gives a unit
iMoveDiscountChange Lowers the cost of moving into difficult terrain
iOrderPriority Optional. Not sure what this does.
iAirRangeChange The amount by which the unit's Air Range increases
iInterceptChange The amount by which the unit's interception chance increases, in %. Only units that have the ability to intercept can receive these promotions.
iEvasionChange The amount by which the unit's evasion chance increases, in %.
iWithdrawalChange The amount by which the unit's withdrawal chance increases, in %.
iCargoChange The amount by which the unit's cargo capacity increases.
iCollateralDamageChange The amount by which the collateral damage inflicted by the unit increases. Only units that inflict collateral can receive these promotions
iBombardRateChange The amount by which the damage which the unit does to fortifications increases.
iFirstStrikesChange The amount by which the number of First Strikes that the unit has increases.
iChanceFirstStrikesChange The amount by which the number of First Strike Chances that the unit has increases.
iEnemyHealChange Increases the unit's damage healing capabilities in enemy territory by the given percentage.
iNeutralHealChange Increases the unit's damage healing capabilities in neutral territory by the given percentage.
iFriendlyHealChange Increases the unit's damage healing capabilities in friendly territory by the given percentage.
iSameTileHealChange Increases the unit's ability to heal other units on the same tile by the given percentage.
iAdjacentTileHealChange Increases the unit's ability to heal other units in adjacent tiles by the given percentage.
iCombatPercent Increases the unit's strength value by the given percentage.
iCityAttack Increases the unit's strength value by the given percentage when attacking a city.
iCityDefense Increases the unit's strength value by the given percentage when defending a city.
iHillsAttack Increases the unit's strength value by the given percentage when attacking onto a hill.
iHillsDefense Increases the unit's strength value by the given percentage when defending on a hill.
iKamikazePercent Raises the units strength by iKamikazePercent BUT the unit will die in its next combat.
iRevoltProtection Percentage decrease in base city revolt chance. (All current promotions have a value of 0).
iCollateralDamageProtection Decreases the damage a unit takes from collateral damage by the given percentage value (e.g. Drill II has a percentage value of 20).
iPillageChange Percent increase of the amount of gold received when pillaging. All promotions have a value of 0.
iUpgradeDiscount Decreases the cost to upgrade a unit by the given percentage (e.g. units with the default promotion from a Great General, which has a value of 100, upgrade for free).
iExperiencePercent Increases the experience points received by a unit in combat by the given percentage.
iHotKeyPriority Unknown. All promotions have a value of 0. Possibly used to set what has priority when two things use the same hotkey.

Boolean

All of these can either be 1 (on, or true) or 0 (off, or false). Be careful, as you can wind up with a double-negative, which the game will interpret as "True".

Tag Name Description
bLeader The promotion gives the unit a Warlord
bBlitz The promotion lets the unit attack multiple times per turn
bAmphib The promotion lets the unit cross rivers and attack out of a transport without penalties
bRiver The promotion lets the unit ignore rivers
bEnemyRoute The promotion lets the unit use enemy roads
bAlwaysHeal The promotion lets the unit heal while moving
bHillsDoubleMove The promotion lets the unit move twice as fast in Hills
bImmuneToFirstStrikes The promotion means that the unit cannot be affected by enemy First Strikes
bAltDown Unknown. All promotions have a value of 0. Presumably used for assigning hotkeys.
bShiftDown Unknown. All promotions have a value of 0. Presumably used for assigning hotkeys.
bCtrlDown Unknown. All promotions have a value of 0. Presumably used for assigning hotkeys.


Lists (Multi-line)

All List tags consist of an opening/closing tag, which is shown here, and then each entry within it is another tag with the same name as the parent tag, minus the "s" (i.e. singular, rather than plural).

Tag Name Description
TerrainAttacks Changes the strength modifier for attacking onto the specified terrain types by the given percentage.
TerrainDefenses Changes the strength modifier for defending on the specified terrain types by the given percentage.
FeatureAttacks Changes the strength modifier for attacking onto the specified feature types by the given percentage.
FeatureDefenses Changes the strength modifier for defending on the specified feature types by the given percentage.
UnitCombatMods Changes the strength modifier for fighting against the specified unit types by the given percentage.
DomainMods Changes the strength modifier for fighting against the specified domain (naval units, land units, etc.) by the given percentage.
TerrainDoubleMoves Halves the movement cost for the unit on this type of terrain.
FeatureDoubleMoves Halves the movement cost for the unit on this type of feature.
UnitCombats Controls which unit combat types can receive this promotion.
HotKey Not used in the standard game. Assigns a hotkey for this promotion.


Example

In the following example of code, please note that there is a specific order of all of the tags. You must list the tags in this order for the game to properly interpret your file.

<PromotionInfos>
 <PromotionInfo>
  <Type>PROMOTION_COMBAT1</Type>
  <Description>TXT_KEY_PROMOTION_COMBAT1</Description>
  <Sound>AS2D_IF_LEVELUP</Sound>
  <LayerAnimationPath>NONE</LayerAnimationPath>
  <PromotionPrereq>NONE</PromotionPrereq>
  <PromotionPrereqOr1>NONE</PromotionPrereqOr1>
  <PromotionPrereqOr2>NONE</PromotionPrereqOr2>
  <TechPrereq>NONE</TechPrereq>
  <StateReligionPrereq>NONE</StateReligionPrereq>
  <bLeader>0</bLeader>
  <bBlitz>0</bBlitz>
  <bAmphib>0</bAmphib>
  <bRiver>0</bRiver>
  <bEnemyRoute>0</bEnemyRoute>
  <bAlwaysHeal>0</bAlwaysHeal>
  <bHillsDoubleMove>0</bHillsDoubleMove>
  <bImmuneToFirstStrikes>0</bImmuneToFirstStrikes>
  <iVisibilityChange>0</iVisibilityChange>
  <iMovesChange>0</iMovesChange>
  <iMoveDiscountChange>0</iMoveDiscountChange>
  <iAirRangeChange>0</iAirRangeChange>
  <iInterceptChange>0</iInterceptChange>
  <iEvasionChange>0</iEvasionChange>
  <iWithdrawalChange>0</iWithdrawalChange>
  <iCargoChange>0</iCargoChange>
  <iCollateralDamageChange>0</iCollateralDamageChange>
  <iBombardRateChange>0</iBombardRateChange>
  <iFirstStrikesChange>0</iFirstStrikesChange>
  <iChanceFirstStrikesChange>0</iChanceFirstStrikesChange>
  <iEnemyHealChange>0</iEnemyHealChange>
  <iNeutralHealChange>0</iNeutralHealChange>
  <iFriendlyHealChange>0</iFriendlyHealChange>
  <iSameTileHealChange>0</iSameTileHealChange>
  <iAdjacentTileHealChange>0</iAdjacentTileHealChange>
  <iCombatPercent>10</iCombatPercent>
  <iCityAttack>0</iCityAttack>
  <iCityDefense>0</iCityDefense>
  <iHillsAttack>0</iHillsAttack>
  <iHillsDefense>0</iHillsDefense>
  <iKamikazePercent>0</iKamikazePercent>
  <iRevoltProtection>0</iRevoltProtection>
  <iCollateralDamageProtection>0</iCollateralDamageProtection>
  <iPillageChange>0</iPillageChange>
  <iUpgradeDiscount>0</iUpgradeDiscount>
  <iExperiencePercent>0</iExperiencePercent>
  <TerrainAttacks/>
  <TerrainDefenses/>
  <FeatureAttacks/>
  <FeatureDefenses/>
  <UnitCombatMods/>
  <DomainMods/>
  <TerrainDoubleMoves/>
  <FeatureDoubleMoves/>
  <UnitCombats>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_RECON</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_ARCHER</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_MOUNTED</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_MELEE</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_GUN</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_ARMOR</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_HELICOPTER</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_NAVAL</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
   <UnitCombat>
    <UnitCombatType>UNITCOMBAT_AIR</UnitCombatType>
    <bUnitCombat>1</bUnitCombat>
   </UnitCombat>
  </UnitCombats>
  <HotKey/>
  <bAltDown>0</bAltDown>
  <bShiftDown>0</bShiftDown>
  <bCtrlDown>0</bCtrlDown>
  <iHotKeyPriority>0</iHotKeyPriority>
  <Button>,Art/Interface/Buttons/Promotions/Combat1.dds,Art/Interface/Buttons/Promotions_Atlas.dds,8,2</Button>
 </PromotionInfo>
</PromotionInfos>


GlobalDefinesGlobalDefinesAltGlobalTypesPythonCallbackDefines

Art:

Civ4ArtDefines_BonusCiv4ArtDefines_BuildingCiv4ArtDefines_CivilizationCiv4ArtDefines_FeatureCiv4ArtDefines_ImprovementCiv4ArtDefines_InterfaceCiv4ArtDefines_LeaderheadCiv4ArtDefines_MiscCiv4ArtDefines_MovieCiv4ArtDefines_TerrainCiv4ArtDefines_UnitCiv4MainMenusCiv4RiverModelInfosCiv4RouteModelInfos

Audio; Buildings:

Audio2DScriptsAudio3DScriptsAudioDefinesAudioSoundscapeScriptsCiv4BuildingClassInfosCiv4BuildingInfosCiv4CityLSystemCiv4PlotLSystemCiv4SpecialBuildingInfos

BasicInfos:

Civ4AttitudeInfosCiv4BasicInfosCiv4CalendarInfosCiv4CityTabInfosCiv4DenialInfosCiv4DomainInfosCiv4InvisibleInfosCiv4MemoryInfosCiv4MonthInfosCiv4NewConceptInfosCiv4SeasonInfosCiv4UnitAIInfosCiv4UnitCombatInfos

Civilizations; Events:

Civ4CivilizationInfosCiv4LeaderHeadInfosCiv4TraitInfosCiv4UnitArtStyleTypeInfosCiv4EventInfosCiv4EventTriggerInfos

GameInfo:

Civ4CivicInfosCiv4CivicOptionInfosCiv4ClimateInfoCiv4CommerceInfoCiv4CorporationInfoCiv4CultureLevelInfoCiv4CursorInfoCiv4DiplomacyInfosCiv4EmphasizeInfosCiv4EspionageMissionInfoCiv4EraInfosCiv4ForceControlInfosCiv4GameOptionInfosCiv4GameSpeedInfoCiv4GoodyInfoCiv4GraphicOptionInfosCiv4HandicapInfoCiv4HintsCiv4MPOptionInfosCiv4PlayerOptionInfosCiv4ProcessInfoCiv4ReligionInfoCiv4SeaLevelInfoCiv4SpecialistInfosCiv4TurnTimerInfoCiv4UpKeepInfoCiv4VictoryInfoCiv4VoteInfoCiv4VoteSourceInfosCiv4WorldInfo

Interface:

Civ4AdvisorInfosCiv4CameraInfosCiv4ColorValsCiv4InterfaceModeInfosCiv4PlayerColorInfosCiv4SlideShowInfosCiv4SlideShowRandomInfosCiv4SpaceShipInfosCiv4ThroneRoomeInfosCiv4ThroneRoomCameraInfosCiv4ThroneRoomStyleInfosCiv4WorldPickerInfos

Misc:

Civ4AttachableInfosCiv4CameraOverlayInfosCiv4DetailManagerCiv4EffectInfosCiv4QuestInfosCiv4RiverInfosCiv4RouteInfosCiv4TerrainPlainInfosCiv4TutorialInfosCiv4WaterPlaneInfos

Technologies:

Civ4TechInfos

Terrain:

Civ4BonusClassInfosCiv4BonusInfosCiv4FeatureInfosCiv4ImprovementInfosCiv4SymbolMeshPathsCiv4TerrainInfosCiv4TerrainSettingsCiv4YieldInfos

Units:

Civ4AnimationInfosCiv4AnimationPathInfosCiv4AutomateInfosCiv4BuildInfosCiv4CommandInfosCiv4ControlInfosCiv4EntityEventInfosCiv4FormationInfosCiv4MissionInfosCiv4PromotionInfosCiv4SpecialUnitInfosCiv4UnitClassInfosCiv4UnitInfos

Schemas:

Civ4GlobalDefinesSchemaCiv4GlobalTypesSchemaCiv4ArtDefinesSchemaAudioDefinesSchemaAudioScriptSchemaCiv4BasicInfoSchemaCiv4BuildingSchemaCiv4LSystemSchemaCiv4CivilizationSchemaCiv4EventSchemaCiv4GameInfoSchemaCiv4InterfaceSchemaCiv4MiscSchemaCiv4TutorialSchemaCiv4DetailManagerSchemaCiv4TechnologiesSchemaCiv4TerrainSchemaCiv4FormationSchemaCiv4UnitSchema

Italics: Beyond the Sword only