Loading ...
Sorry, an error occurred while loading the content.

Re: [pcgen_developers] Can someone explain ASPECT?

Expand Messages
  • Stefan Radermacher
    Commenting on a post I just made on the pcgen_developer mailing list ... This got me thinking if it s possible to consolidate all the simple uses/rounds per
    Message 1 of 8 , May 8, 2012
    View Source
    • 0 Attachment
      Commenting on a post I just made on the pcgen_developer mailing list
      where I wrote about the Checkbox ASPECT mechanism. First a quote from there:

      > One useful aspect of ASPECT (hah!) is that you can define various stuff
      > to be checked upon and used in the output sheet. There are, for example,
      > two ASPECT uses I came up with for the Pathfinder data sets:
      >
      > 1) Creating checkbox lists for x/day use abilities: an ability that has
      > only a certain number of uses or rounds per day can easily be identified
      > as such, so that the output sheet can create a box with checkboxes to
      > tick off. This is done by adding the type "CheckList" to an ability's
      > TYPE tag, and adding two ASPECT tags:
      >
      > ASPECT:CheckType|<text>
      > ASPECT:CheckCount|%1|<formula>
      >
      > where <text> says something like "Uses per day" or "Rounds per day", as
      > appropriate for the ability, and <formula> is the formula to determine
      > the number of uses or rounds or what fits the <text>, most often it's
      > just a variable calculated somewhere in the ability.
      >
      > The output sheets know this trick and put a box with checkboxes and
      > ability description on the front sheet.

      This got me thinking if it's possible to consolidate all the simple
      uses/rounds per day abilities that use this mechanism with other
      abilities that use checkboxes into one template. This way we would not
      need to hardcode stuff like channel energy or rage or bardic performance
      in the output sheets and in base.xml, it could all be handled in the
      CheckList template.

      Another thing I like to do on my character sheets with these kind of
      abilities is list all the "child abilities" in the checkbox box for the
      "master ability", i.e. list rage powers in the rage box, or bardic
      performance use cases in the bardic performance box. You can see what I
      mean by looking at this barbarian sheet:
      http://forum.zaister.de/misc.php?item=79&download=1.

      Now, how can the child abilities be associated with their master
      ability? Another use for ASPECT. We add something like
      ASPECT:MasterAbility|Rage to the "master ability" and
      ASPECT:ChildAbility|Rage to the child abilities. The master ability will
      also need to get the appropriate CheckType and CheckCount ASPECTs. The
      CheckList template can then iterate over all abilities and test for the
      presence of the CheckType aspect (this way it might even be possible to
      eliminate the need for the CheckList TYPE). When it finds an ability
      with that ASPECT it sets up a new box with the checkbox list and the
      description of the master ability. Then it iterates again over the
      abilities and checks for the presence of a ChildAbility ASPECT that
      corresponds to the master ability's MasterAbility ASPECT, and add those
      that match to the box.

      In this way, I thing a lot of hard-coded stuff could be consolidated and
      the child ability mechanism could be used for more abilities like
      alchemist bombs, and more.

      What do you think?

      Regards
      Stefan
    • Stefan Radermacher
      ... oops, that was supposed to go to _exp.
      Message 2 of 8 , May 8, 2012
      View Source
      • 0 Attachment
        On 08.05.2012 12:26, Stefan Radermacher wrote:
        > Commenting on a post I just made on the pcgen_developer mailing list
        > where I wrote about the Checkbox ASPECT mechanism. First a quote from there:

        oops, that was supposed to go to _exp.
      • Henk Slaaf
        On Tue, May 8, 2012 at 11:28 AM, Stefan Radermacher
        Message 3 of 8 , May 8, 2012
        View Source
        • 0 Attachment
          On Tue, May 8, 2012 at 11:28 AM, Stefan Radermacher <radermacher@...> wrote:
           

          On 07.05.2012 17:18, Henk Slaaf wrote:
          > I run into ASPECT sometimes, but the documentation on the LST index
          > <http://www.pcgen-test.org/autobuilds/pcgen-docs/listfilepages/datafilestagpages/datafilesability.html#ASPECT>

          > is not sufficient to understand it.
          >
          > Can someone explain please?

          One useful aspect of ASPECT (hah!) is that you can define various stuff
          to be checked upon and used in the output sheet. There are, for example,
          two ASPECT uses I came up with for the Pathfinder data sets:

          1) Creating checkbox lists for x/day use abilities: an ability that has
          only a certain number of uses or rounds per day can easily be identified
          as such, so that the output sheet can create a box with checkboxes to
          tick off. This is done by adding the type "CheckList" to an ability's
          TYPE tag, and adding two ASPECT tags:

          Sweet!


           
          2) Collecting conditional bonuses to saving throws: lots of abilities
          have saving throw bonuses that only apply to some saves, but not all, so
          they cannot be added into the general save values. We have a large box
          where players can record their own conditional bonuses, but why do it
          manually when PCGen can do it for you. This is done by adding the type
          "SaveBonus" to an ability's TYPE tag, and adding this ASPECT tag:

          ASPECT:SaveBonus|<text>
          or
          ASPECT:SaveBonus|<text>|<variables...>

          where <text> reads something like "+2 vs. poison" or "+%1 vs. fear
          effects" with an appropriate variable listed. PCGen can then collect
          these and print them in the box.

          Mother of CHOOSE:DEITY|1 ! That is useful.

          Can you add TYPE? Or do we just add "trait bonus" in the text?


          Best,

          Henk
        • Henk Slaaf
          ... Am I right that this is currently not in the Standard XSL? Best, Henk
          Message 4 of 8 , May 8, 2012
          View Source
          • 0 Attachment
            2) Collecting conditional bonuses to saving throws: lots of abilities
            have saving throw bonuses that only apply to some saves, but not all, so
            they cannot be added into the general save values. We have a large box
            where players can record their own conditional bonuses, but why do it
            manually when PCGen can do it for you. This is done by adding the type
            "SaveBonus" to an ability's TYPE tag, and adding this ASPECT tag:

            ASPECT:SaveBonus|<text>
            or
            ASPECT:SaveBonus|<text>|<variables...>

            where <text> reads something like "+2 vs. poison" or "+%1 vs. fear
            effects" with an appropriate variable listed. PCGen can then collect
            these and print them in the box.

            Am I right that this is currently not in the Standard XSL?

            Best,

            Henk
          • Andrew
            Hi, We re already using ASPECT all over the place... Turn Undead, Conditional Saves, Skills, etc. ... -- Andrew Maitland (LegacyKing) Admin Silverback - PCGen
            Message 5 of 8 , May 8, 2012
            View Source
            • 0 Attachment
              Hi,

              We're already using ASPECT all over the place... Turn Undead, Conditional Saves, Skills, etc.


              On 5/8/2012 4:17 AM, Henk Slaaf wrote:
              2) Collecting conditional bonuses to saving throws: lots of abilities
              have saving throw bonuses that only apply to some saves, but not all, so
              they cannot be added into the general save values. We have a large box
              where players can record their own conditional bonuses, but why do it
              manually when PCGen can do it for you. This is done by adding the type
              "SaveBonus" to an ability's TYPE tag, and adding this ASPECT tag:

              ASPECT:SaveBonus|<text>
              or
              ASPECT:SaveBonus|<text>|<variables...>

              where <text> reads something like "+2 vs. poison" or "+%1 vs. fear
              effects" with an appropriate variable listed. PCGen can then collect
              these and print them in the box.

              Am I right that this is currently not in the Standard XSL?

              Best,

              Henk

              --
              Andrew Maitland (LegacyKing)
              Admin Silverback - PCGen Board of Directors
              Data 2nd, Docs Tamarin, OS Lemur
              Unique Title "Quick-Silverback Tracker Monkey"
              Unique Title "The Torturer of PCGen"
            Your message has been successfully submitted and would be delivered to recipients shortly.