Terms: AA unit - Resolved -



  • AA, aa gun, anti air etc

    I vote AA, trash the rest.


  • Admin

    Other units than traditional anti-air guns use the AA abilities. Of course the ability to extraordinary attack specific enemy units before a battle round was originally intended for anti-air against fighters and bombers, but many maps have made use of this extra pre-battle round attack in creative ways.

    … Just saying that an AA unit or unit with AA attack and/or defense capability is not necessarily a traditional AA gun and it does not necessarily target aircraft units.

    Maybe the ability should have had a name change a long time ago, to maybe something like special attack, extra attack, opening attack or something, but it has not 🙂



  • It should be isAA to align with the engine/XML term.


  • Donators Moderators Admin

    @mahks

    The AA options for unitAttachments are really flexible ones. They do a whole host of things. As @Frostion mentions above the name is legacy carryover. But these AA options can be used for any units.

    The primary common characteristic is a first strike ability from which, if hit by a first strike those casualties die immediately without a defensive counterstrike.

    Secondary common characteristic is they use their own dice however they must be divisible into the game dice sides without remainders. POS2 states that it only applies to LL but I'm fairly sure it also applies to standard luck (dice) as well.



  • I am looking for the correct term to use, I understand many of the terms in the XML are outdated, but I doubt there is the will to change them.

    My argument is similar to that with player vs power, we should use the term the XML & engine use as using some other term would be confusing, no?

    ... to clarify, by XML I meant the XML schema not the comments in POS2. In XOB I want standardized terms as agreed to with the community.


  • Donators Moderators Admin

    @mahks

    AA or AAshot works for me. Just maybe include a note that can also be used as first strike shots by any units against any units.



  • How about if references to AA fire (attacks) I use AA
    for AA units = isAA

    Am I correct that only isAA can engage in AA fire?


  • Donators Moderators Admin

    @mahks

    AA fire sounds acceptable.

    On isAA, that would be incorrect. The isAA unitAttachment is just a generic option for a typical AAgun, it automatically combines a bunch of the other AA fire options into one (including isInfrastructure, isRocket). Meaning one can still create a true AAgun that does not use the isAA option. It might just have slightly different characteristics depending which options are independently used.



  • @general_zod How do you define a non-isAA that would do AA fire?

    I meant define in the XML.


  • Donators Moderators Admin

    @mahks

    Heres an example of an antitank gun using AA fire options. These AA related options are very flexible. So one can create a unique AAgun in similar way.

        <attachment name="unitAttachment" attachTo="russianAntiTankGun" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType">
          <option name="attack" value="1"/>
          <option name="defense" value="1"/>
          <option name="isAAforCombatOnly" value="true"/>
          <option name="mayOverStackAA" value="true"/>
          <option name="typeAA" value="AntiTankGun"/>
          <option name="targetsAA" value="germanMech.Infantry:germanTank:italianMech.Infantry:italianTank:japaneseMech.Infantry:japaneseTank:spanishTank:swedishTank:turkishTank:brazilianTank"/>
          <option name="maxAAattacks" value="1"/>
          <option name="maxRoundsAA" value="-1"/>	  
          <option name="transportCost" value="2"/>
          <option name="movement" value="1"/>
          <option name="attackAA" value="2"/>
          <option name="isLandTransportable" value="true"/>
          <option name="requiresUnits" value="russianFactory"/>
          <option name="damageableAA" value="true"/>
          <option name="canInvadeOnlyFrom" value="none"/>
        </attachment>
    

    This is functional code from TWW. Take a look at the game and try out the antitank gun. And you will understand better.

     <attachment name="unitAttachment" attachTo="germanAntiAirGun" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType">
          <option name="canBeGivenByTerritoryTo" value="Germany"/>
          <option name="defense" value="1"/>
          <option name="isAAmovement" value="true"/>
          <option name="isAAforCombatOnly" value="true"/>
          <option name="isAAforBombingThisUnitOnly" value="true"/>
          <option name="mayOverStackAA" value="true"/>
          <option name="isAAforFlyOverOnly" value="true"/>
          <option name="maxAAattacks" value="1"/>
          <option name="maxRoundsAA" value="-1"/>	  
          <option name="typeAA" value="AntiAircraftGun"/>
          <option name="targetsAA" value="germanAdvancedTacticalBomber:germanAdvancedNavalFighter:russianAdvancedTacticalBomber:russianAdvancedNavalFighter:japaneseAdvancedTacticalBomber:japaneseAdvancedNavalFighter:britishAdvancedTacticalBomber:britishAdvancedNavalFighter:italianAdvancedTacticalBomber:italianAdvancedNavalFighter:americanAdvancedTacticalBomber:americanAdvancedNavalFighter:germanFighter:germanAdvancedFighter:germanNavalFighter:germanTacticalBomber:germanStrategicBomber:germanHeavyStrategicBomber:germanAirTransport:italianFighter:italianAdvancedFighter:italianNavalFighter:italianTacticalBomber:italianStrategicBomber:italianHeavyStrategicBomber:italianAirTransport:japaneseFighter:japaneseAdvancedFighter:japaneseNavalFighter:japaneseTacticalBomber:japaneseStrategicBomber:japaneseHeavyStrategicBomber:japaneseAirTransport:brazilianFighter:swedishFighter:spanishFighter:turkishFighter:chineseFighter:chineseTacticalBomber:russianFighter:russianAdvancedFighter:russianNavalFighter:russianTacticalBomber:russianStrategicBomber:russianHeavyStrategicBomber:russianAirTransport:britishFighter:britishAdvancedFighter:britishNavalFighter:britishTacticalBomber:britishStrategicBomber:britishHeavyStrategicBomber:britishAirTransport:americanFighter:americanAdvancedFighter:americanNavalFighter:americanTacticalBomber:americanStrategicBomber:americanHeavyStrategicBomber:americanAirTransport"/>
          <option name="movement" value="0"/>
          <option name="isLandTransportable" value="true"/>
          <option name="attackAA" value="1"/>
          <option name="requiresUnits" value="germanFactory"/>
          <option name="transportCost" value="2"/>
        </attachment>
    

    Here is an AAgun without isAA option.



  • One example I am trying to resolve is the aARadar tech:

    POS2 says

    • +1 attack for anti-air units
    • aARadar requires all isAA units to have a "_r" image variant (and "rockets_r" or "_rockets_r")

    It is not clear what "anti-air units" are, what attachment(s) does it refer to?
    I was thinking isAA but maybe not...

    I may have to check all the isAA references, I think I was assuming some comments meant isAA and maybe they were not 😞


  • Donators Moderators Admin

    @mahks

    The AAradar tech is an old hard coded technology. Back then I'm guessing the other AA fire option were not even in existence. Maybe @Cernel can verify that point since he has been around since then. Anyways to use the hard coded (generic) AAradar technology and associated image changes the isAA option is required.

    However just so you know a custom technology can be created that replicates the hard coded AAradar technology. Only downside to that is the images don't get auto swapped when the custom tech is achieved as hardcoded version does.

    Also same principle applies to hardcoded rocket tech.


  • Admin

    @mahks I'd actually prefer to refer to "isAA" and related properties as something like "first strike" or "targeted strike". The XML property names are outdated and the functionality is much larger than just anti-air guns. I'd eventually like to rename all those properties in the XML and deprecate the existing ones.



  • @redrum POS2 says (for isAA): allows a unit to shoot at air units before combat starts and not participate in the rest of combat.

    Does that mean targets can only be isAir?


  • Admin

    @mahks No, the POS2 XML comments for AA stuff is pretty poor in general. Targets are anything listed in the option targetsAA which defaults to all air units if not specified.



  • @redrum Ok, in that case all AA related should really be 'first strike'.

    What I can do is use first strike as the term and on each page have a note about why AA is used in the XML.


  • Admin

    @mahks Yeah, either "first strike" or "targeted strike". I removed the incorrect/vague comment from isAA in POS2: https://github.com/triplea-maps/the_pact_of_steel/pull/10



  • Started to update the AA stuff. Found that substituting "first strike" does not really work as it caused confused sentences when all the hard coded references are to AA and isAA.

    What can be fixed is the references to aa gun. POS2 seems to use "aaGun" to refer to the classic unit itself. "aa gun" seems to mean isAA but I am not sure in light of above comments.

    There are 26 references to aa gun in POS2, could someone have a peek at them and tell me if any DO NOT mean isAA?
    Assuming that most do, please just tell me which do not.

    Thanks!


  • Donators Moderators Admin

    @mahks

    I would just place first strike in parentheses (first strike) if needed. In general, I would try to keep as much POS2 descriptions as possible to avoid accidental lose of meaning, context etc... And add to those as needed.



  • the point is "aa gun" is ambiguous.

    does it mean aaGun only or isAA or something else?