Greyhawk Wars - Giants and Bowmen vs Dragons
I've reproduced the Game Notes below about this topic. Can anyone confirm the exact intent of the wording and the code implementation?
For example, when 2 dragons go against 4 giants, I think I see the code is giving exactly 1 hit from the giants (rather than 1 hit plus a 2/6 chance of a second hit). Perhaps that is intended?
When 1 dragon goes against 1 bowman, I think a 2/6 chance is being used contrary to the notes?
In addition to their great strength in battle, by hurling a massive spear, wielding an enormous bow, or simply throwing a boulder, giants have a 2 in 6 chance of killing an enemy dragon when it raids or before a battle begins, whether attacking or defending.
If multiple giants or dragons are present, the lesser number limits the number of chances the giants get; e.g., one giant gets one total roll against two dragons, and three giants get one total roll against one dragon.
The purpose of Bowmen is to defend against dragons, especially to defend leaders and heroes.
Bowmen cannot participate in normal combat but have a 1 in 6 chance of killing an enemy dragon when it raids or before a battle begins, whether attacking or defending.
If multiple bowmen or dragons are present, the lesser number limits the number of attacks the bowmen make. However, bowmen and giants are counted separately, and both can have a chance to kill the same dragon.
This looks correct to me. An unsupported bowman has no defense against a giant.
<attachment name="unitAttachment" attachTo="giant" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType"> <option name="movement" value="2"/> <option name="transportCost" value="2"/> <option name="attack" value="4"/> <option name="defense" value="5"/> <option name="hitPoints" value="2"/> <option name="canBlitz" value="true"/> <option name="isMarine" value="-1"/> <option name="offensiveAttackAA" value="2"/> <option name="attackAA" value="2"/> <option name="maxAAattacks" value="1"/> <option name="isAAforCombatOnly" value="true"/> <option name="isAAforBombingThisUnitOnly" value="true"/> <option name="typeAA" value="aa_giants"/> <option name="targetsAA" value="dragon:dracolich:fiend_lord:griffon:efreeti:beholder"/> <option name="unitPlacementRestrictions" value="Eru-Tovar:Plains of the Paynims:Vesve Forest:Kron Hills:Flen:Wild Coast:Celadon Forest:Tangles:Grandwood Forest:Thelly:Hestmark Highlands:Hepmonaland:Bone March"/> </attachment>
@rogercooper Thanks for that info. You confirm the Giant's AA value is 2. Pls can you confirm the Bowman's AA value? And can you also show me how the two AA combat rounds are coded?
@mattbarnes Yes the Bowman is 1. There is only 1 AA combat round. Here is the documentation of AA Guns (from Pact of Steel 2)
aa related: isAA values: just sets isAAmovement, isAAforCombatOnly, isAAforBombingThisUnitOnly, isAAforFlyOverOnly, isInfrastructure, and isRocket to true. isAAmovement values: just sets canNotMoveDuringCombatMove to "true", and only for aa guns it will set the stacking limits (movementLimit, attackingLimit, placementLimit) to "1:allied" when playing by classic rules attackAA values: the value that an isAA unit will attack at, for shooting at air units before battle attackAAmaxDieSides values: sets the dice sides for aa guns. defaults to whatever you chose above in diceSides (or 6 if you didn't choose). All units with the same typeAA must have the same dice sides. Be Warned that all aa attack values (including with Radar and without Radar), MUST divide into attackAAmaxDieSides without remainders, or else there WILL be errors in LowLuck! offensiveAttackAA values: same as attackAA but for offensive side offensiveAttackAAmaxDieSides values: same as attackAAmaxDieSides but for offensive side maxAAattacks values: sets how many times this unit may fire its AA guns. Defaults to -1, which means infinite. If not infinite, then aa guns can stack. (If you have multiple aa of the same type-group in a territory, and they have different attack values or dicesides, and different maxAAattacks, then what happens is that the engine will roll for the best attack/diceSides and for the best maxAAattacks, even if that is two different units For example, if you have an aa gun that has infinite attacks and rolls a 4/20, and you have another gun with only one attack and rolls 3/6, then you will end up rolling infinite times at 3/6. This might be fixed in the future.) mayOverStackAA values: sets if this unit may fire aa more times than there are aircraft (default = false). maxRoundsAA values: sets how many rounds the AA may fire in. negative (-1) means infinite. (default = 1). damageableAA values: sets if this unit can damage a two-hitpoint unit, instead of killing it instantly with aa fire (default = false = kill instantly). isAAforCombatOnly values: allows this unit to be an AA gun for normal combat only. it will not defend against strategic bombing raids. isAAforBombingThisUnitOnly values: allows this unit to be an AA gun only when this unit is directly attacked by a strategic bombing raid (currently defends against all strategic bombing attacks in this territory, not just against this unit). it will not defend against a normal attack. isAAforFlyOverOnly values: allows this unit to be an AA gun only when being flown over. if the air unit moves into this territory and stays, then this will not fire. isAAforFlyOverOnly will only work if "AA Territory Restricted" is turned off, and will normally only fire during combat move and not during noncombat move, unless you also turn on "Always on AA". typeAA values: any string which identifies this type-group of aa guns. Only 1 aa gun per group may fire (unless you've set maxAAattacks). (defaults to "AA") Warning: all units with the same typeAA must have the same dice sides, or else you will experience weird results. targetsAA values: a list of unit types which this aa gun can hit. (defaults to all air units) (any aa guns in the same group should have the same targetsAA) willNotFireIfPresent values: a list of unit types for which if they are present in the battle, this aa gun will not fire. isRocket values: allows this unit to become a rocket if the player has the rocket technology. If the unit is named exactly "aaGun" then it will require an image called "rockets". If the unit is named anything else, then it will require an image with "_rockets" appended to its original name canNotMoveDuringCombatMove values: true or false, defaults to false, does not allow this unit to move during 'combat move phase' movementLimit values: only affects normal movement. the count is equal to the number of this unit allowed per territory, and the value is equal to "owned" (we are only counting units owned by each player), or "allied" (allied too), or "total" (which counts enemy units too) attackingLimit values: only affects movement into enemy territory/units. the count is equal to the number of this unit allowed per territory, and the value is equal to "owned" (we are only counting units owned by each player), or "allied" (allied too), or "total" (which counts enemy units too) placementLimit values: only affects placement. the count is equal to the number of this unit allowed per territory, and the value is equal to "owned" (we are only counting units owned by each player), or "allied" (allied too), or "total" (which counts enemy units too) example: <option name="placementLimit" value="allied" count="1"/>