Introduce crossbowman templates.

Allows for easier differentiation. No values were changed in this patch.

Differential revision: D2886
Comments by: @Angen, @borg-, @Stan, @ValihrAnt, @wraitii
This was SVN commit r25122.
This commit is contained in:
Freagarach
2021-03-26 09:55:52 +00:00
parent db21f246f1
commit 7bf2f9ed74
7 changed files with 292 additions and 24 deletions
@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_cavalry_ranged">
<Attack>
<Ranged>
<AttackName>Crossbow</AttackName>
<Damage>
<Pierce>20</Pierce>
</Damage>
<MaxRange>60</MaxRange>
<MinRange>0</MinRange>
<PrepareTime>2400</PrepareTime>
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>120</Speed>
<Spread>2</Spread>
<Gravity>30</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
</Attack>
<Cost>
<Resources>
<wood>30</wood>
<metal>20</metal>
</Resources>
</Cost>
<Identity>
<GenericName>Cavalry Crossbowman</GenericName>
<VisibleClasses datatype="tokens">Crossbowman</VisibleClasses>
</Identity>
<Loot>
<wood>3</wood>
<metal>2</metal>
</Loot>
<Sound>
<SoundGroups>
<attack_impact_ranged>attack/impact/arrow_impact.xml</attack_impact_ranged>
<attack_ranged>attack/weapon/bow_attack.xml</attack_ranged>
</SoundGroups>
</Sound>
</Entity>
@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_champion_cavalry">
<Attack>
<Ranged>
<AttackName>Crossbow</AttackName>
<Damage>
<Pierce>40</Pierce>
</Damage>
<MaxRange>60</MaxRange>
<MinRange>0</MinRange>
<PrepareTime>2400</PrepareTime>
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>120</Speed>
<Spread>0.8</Spread>
<Gravity>30</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
</Attack>
<Identity>
<GenericName>Champion Cavalry Crossbowman</GenericName>
<VisibleClasses datatype="tokens">Ranged Crossbowman</VisibleClasses>
<Formations datatype="tokens">
special/formations/skirmish
</Formations>
</Identity>
<Resistance>
<Entity>
<Damage>
<Hack op="add">-2</Hack>
<Pierce op="add">-2</Pierce>
</Damage>
</Entity>
</Resistance>
<Sound>
<SoundGroups>
<attack_impact_ranged>attack/impact/arrow_impact.xml</attack_impact_ranged>
<attack_ranged>attack/weapon/bow_attack.xml</attack_ranged>
</SoundGroups>
</Sound>
<UnitMotion>
<WalkSpeed op="mul">0.835</WalkSpeed>
</UnitMotion>
</Entity>
@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_champion_infantry">
<Attack>
<Ranged>
<AttackName>Crossbow</AttackName>
<Damage>
<Pierce>40</Pierce>
</Damage>
<MaxRange>60</MaxRange>
<MinRange>0</MinRange>
<PrepareTime>2400</PrepareTime>
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>120</Speed>
<Spread>0.8</Spread>
<Gravity>30</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
</Attack>
<Health>
<Max>120</Max>
</Health>
<Identity>
<GenericName>Champion Infantry Crossbowman</GenericName>
<VisibleClasses datatype="tokens">Ranged Crossbowman</VisibleClasses>
<Formations datatype="tokens">
special/formations/skirmish
</Formations>
</Identity>
<Resistance>
<Entity>
<Damage>
<Hack op="add">-2</Hack>
<Pierce op="add">-2</Pierce>
</Damage>
</Entity>
</Resistance>
<Sound>
<SoundGroups>
<attack_impact_ranged>attack/impact/arrow_impact.xml</attack_impact_ranged>
<attack_ranged>attack/weapon/bow_attack.xml</attack_ranged>
</SoundGroups>
</Sound>
<UnitMotion>
<WalkSpeed op="mul">1.2</WalkSpeed>
</UnitMotion>
</Entity>
@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_hero_cavalry">
<Attack>
<Ranged>
<AttackName>Crossbow</AttackName>
<Damage>
<Pierce>80</Pierce>
</Damage>
<MaxRange>60</MaxRange>
<MinRange>0</MinRange>
<PrepareTime>2400</PrepareTime>
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>120</Speed>
<Spread>0.4</Spread>
<Gravity>30</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="5"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
</Attack>
<Identity>
<GenericName>Hero Cavalry Crossbowman</GenericName>
<VisibleClasses datatype="tokens">Ranged Crossbowman</VisibleClasses>
<Formations datatype="tokens">
special/formations/skirmish
</Formations>
</Identity>
<Resistance>
<Entity>
<Damage>
<Hack op="add">-2</Hack>
<Pierce op="add">-2</Pierce>
</Damage>
</Entity>
</Resistance>
<Sound>
<SoundGroups>
<attack_impact_ranged>attack/impact/arrow_impact.xml</attack_impact_ranged>
<attack_ranged>attack/weapon/bow_attack.xml</attack_ranged>
</SoundGroups>
</Sound>
<UnitMotion>
<WalkSpeed op="mul">0.835</WalkSpeed>
</UnitMotion>
</Entity>
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_hero_infantry">
<Attack>
<Ranged>
<AttackName>Crossbow</AttackName>
<Damage>
<Pierce>80</Pierce>
</Damage>
<MaxRange>60</MaxRange>
<MinRange>0</MinRange>
<PrepareTime>2400</PrepareTime>
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>120</Speed>
<Spread>0.4</Spread>
<Gravity>30</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
</Attack>
<Identity>
<GenericName>Hero Infantry Crossbowman</GenericName>
<VisibleClasses datatype="tokens">Ranged Crossbowman</VisibleClasses>
<Formations datatype="tokens">
special/formations/skirmish
</Formations>
</Identity>
<Resistance>
<Entity>
<Damage>
<Hack op="add">-2</Hack>
<Pierce op="add">-2</Pierce>
</Damage>
</Entity>
</Resistance>
<Sound>
<SoundGroups>
<attack_impact_ranged>attack/impact/arrow_impact.xml</attack_impact_ranged>
<attack_ranged>attack/weapon/bow_attack.xml</attack_ranged>
</SoundGroups>
</Sound>
</Entity>
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_infantry_ranged">
<Attack>
<Ranged>
<AttackName>Crossbow</AttackName>
<Damage>
<Pierce>20</Pierce>
</Damage>
<MaxRange>60</MaxRange>
<MinRange>0</MinRange>
<PrepareTime>2400</PrepareTime>
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>120</Speed>
<Spread>2</Spread>
<Gravity>30</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
</Attack>
<Cost>
<Resources>
<wood>30</wood>
<metal>20</metal>
</Resources>
</Cost>
<Identity>
<GenericName>Infantry Crossbowman</GenericName>
<VisibleClasses datatype="tokens">Crossbowman</VisibleClasses>
</Identity>
<Loot>
<wood>3</wood>
<metal>2</metal>
</Loot>
<Resistance>
<Entity>
<Damage>
<Hack>1</Hack>
<Pierce>1</Pierce>
</Damage>
</Entity>
</Resistance>
<Sound>
<SoundGroups>
<attack_impact_ranged>attack/impact/arrow_impact.xml</attack_impact_ranged>
<attack_ranged>attack/weapon/bow_attack.xml</attack_ranged>
</SoundGroups>
</Sound>
<UnitMotion>
<WalkSpeed op="mul">1.2</WalkSpeed>
</UnitMotion>
</Entity>
@@ -1,31 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_unit_champion_infantry_archer">
<Attack>
<Ranged>
<AttackName>Crossbow</AttackName>
<Damage>
<Pierce>40</Pierce>
</Damage>
<MaxRange>60</MaxRange>
<MinRange>0</MinRange>
<PrepareTime>2400</PrepareTime>
<RepeatTime>3000</RepeatTime>
<Delay>0</Delay>
<Projectile>
<Speed>120</Speed>
<Spread>0.8</Spread>
<Gravity>30</Gravity>
<FriendlyFire>false</FriendlyFire>
<LaunchPoint y="3"/>
</Projectile>
<PreferredClasses datatype="tokens">Human</PreferredClasses>
</Ranged>
</Attack>
<Entity parent="template_unit_champion_infantry_crossbowman">
<Identity>
<Civ>mace</Civ>
<VisibleClasses datatype="tokens">-Archer Crossbowman</VisibleClasses>
<Lang>greek</Lang>
<GenericName>Champion Crossbowman</GenericName>
<SpecificName>Gastraphetophoros</SpecificName>
<Icon>units/mace_champion_infantry_crossbowman.png</Icon>
</Identity>