Changes between Initial Version and Version 1 of XML.Entity.Actions.Attack

Feb 23, 2008, 4:19:00 AM (11 years ago)



  • XML.Entity.Actions.Attack

    v1 v1  
     1An object with this ability is able to attack opponents or wild animals.
     6   <Actions>
     7      <Attack
     8         damage="13"
     9         crush="0"
     10         hack="0.5"
     11         pierce="0.5"
     12         accuracy="0.8"
     13         range="5"
     14         rangemin="1"
     15         speed="150"
     16         splashdamage="0.2"
     17         splashradius="2"
     18         bonus=""
     19         primary=""
     20         secondary=""
     21      />
     22   </Actions>
     27= Accuracy =
     28'''Not yet implemented.''' 
     29''BRIEF DESCRIPTION ::''Attack Accuracy.
     31This specifies the % accuracy of the damage value, in a range from 0 to 1.  When an entity attacks, does it land its attack with every attack cycle?  If so, the value is 1 (100%).  This is typical for melee attacks. 
     33However, ranged units have a chance to miss with their attacks.  Archers have the lowest accuracy of the ranged units, followed by Javelinists and Slingers.
     35Of the siege weapons, the Onager (intended for structures) is more accurate than the Ballista (intended for units).
     37= Damage =
     38''BRIEF DESCRIPTION ::''Value of Attack.
     40You could view attack as the value of hitpoint removal from another entity.  The higher the value, the greater number of hitpoints are removed.
     42If the opposing unit's armour exceeds the attacking unit's damage, then by default, it always removes one hitpoint when an attack has landed.
     44All Citizen Soldiers start out with relatively low attacks and increase their attack strength as they are promoted. 
     46Heroes, Super Units, and Siege Weapons have a higher level attack because they arrive late in the game, and do not gain ranks.
     48The total value of damage is actually a sum of three damage types (crush, hack, and pierce).  The values of the attack types are a percent of the ('total') damage.  Here is an example:
     50Say a unit has these values for Action.Attack :
     52damage = 11
     53crush = 10%
     54hack = 60%
     55pierce = 30%
     57If we calculated the actual damage as it is rationed out to the 3 types, it would be:
     59Crush = 1.1
     60Hack = 6.6
     61Pierce = 3.3
     63The sum of the percentage of the three attack types may never exceed 100%.
     65= Crush =
     66''BRIEF DESCRIPTION ::''Percentage of Attack that is crush.
     68Crush attack is effective against objects that have little or no crush armour.  Crush attack is typically associated with attacking structures, siege weapons, or ships.
     70= Hack =
     71''BRIEF DESCRIPTION ::''Percentage of Attack that is hack.
     73Hack attack is effective against objects that have little or no hack armour.  Hack attack is typically associated with objects that use a melee attack, hand to hand combat, or large blunt weapons.
     75= Pierce =
     76''BRIEF DESCRIPTION ::''Percentage of Attack that is pierce.
     78Pierce attack is effective against objects that have little or no pierce armour.  Pierce attack is typically associated with objects that use a ranged attack, distance combat, or small pointy weapons.
     80= Range =
     81''BRIEF DESCRIPTION ::''Range Value for units that may attack from a distance.
     83Range is the ability of an object to attack from a distance.  This is the maximum range of the attack.  It usually is smaller or equal to a unit's line of sight.  There is an accompanying projectile that is launched from the object, and when that projectile hits another object, it causes damage.
     85Archers have the greatest range, followed by Slingers, and then Javelinists. As for the siege weapons, the Ballista has the longest range - followed by the Onager.
     87Range values are based on terrain distance.
     89= !RangeMin =
     90'''Not yet implemented.''' 
     91''BRIEF DESCRIPTION ::''Object cannot use its ranged attack if its target is less than this value.
     93Range Minimum is an attribute that will not allow a unit to attack when the opposing entity is very close to the entity.  This is intended to make the ranged entities have a more skirmish nature and stop ranged entities from firing arrows/javelins/slings at point blank range.
     95Range values are based on terrain distance.
     97= Speed =
     98''BRIEF DESCRIPTION ::''Rate of attack.
     100This is how fast an entity can attack.  Basically this is how fast the attack animation plays.  Each time the animation repeats it attacks.  The more frequent the attacks, the more hitpoints it can remove at a given time.
     102= !SplashDamage =
     103'''Not yet implemented.''' 
     104''BRIEF DESCRIPTION ::''What percentage (range 0..1) of the attack damage is inflicted on the area around the damaged opponent?
     106Note that splash damage could inflict damage upon hitpoint entities that the entity might not normally be able to attack (such as trees).
     108= !SplashRadius =
     109'''Not yet implemented.''' 
     110''BRIEF DESCRIPTION ::''How wide is the area of splash damage?
     112Measured as the number of tiles of the radius around the point of impact.
     114= !SpecialAttack =
     115'''Not yet implemented.''' 
     116''BRIEF DESCRIPTION ::''The entity's weapon performs some special effect in addition to inflicting damage. This is specified by string ID. Options are:
     118 * ''Fire:'' Does additional damage to units (not as much to Structures) by setting them afire and causing hitpoints to degrade for a period of time (unless healed/repaired in a timely manner).
     120= Primary =
     121'''Not yet implemented.''' 
     122''BRIEF DESCRIPTION ::''The primary preferred victim of this entity's attack.
     124Will seek this Id.Type out for attack.
     126= Secondary =
     127'''Not yet implemented.''' 
     128''BRIEF DESCRIPTION ::''The secondary preferred victim of this entity's attack.
     130Will seek this Id.Type out for attack.
     132= Bonus =
     133'''Not yet implemented.''' 
     134''BRIEF DESCRIPTION ::''The value of the attack bonus on the secondary and primary victim.
     136Variable; as the unit's rank get higher, so does its bonus.
     142''How do we give players an assortment of units that are unique in their own right but at the same time do not overpower one another? We need to maintain balance to make the game not just fair� but the more variety you have, the more strategies and tactics you have. You empower the players with different offensive options, and in turn more options to respond defensively.''
     144''We use a system that encourages each unit to have a primary and secondary preferred target.  This forces the entities (if left uncontrolled) to fight in an efficient manner.  So you don't have the frustration you feel when you leave a swordsman unattended - he attacks a structure while there is a spearman stabbing him in the back.''
     146''What this does do is that it singles out what unit they would choose to attack under the control of the AI. The attack priority would be something like this:''
     148 * ''Attack units you were commanded to attack by the human player''
     149 * ''Attack units that are attacking you''
     150 * ''Attack units that you are bonused to attack''
     151 * ''Attack any enemy in LOS''