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

[FREQ] User adjustable variables

Expand Messages
  • Eddy Anthony
    Tir Gwaith recently suggested that we need to provide a way to allow users to manually adjust certain variables so I d like to throw out some idea s on how
    Message 1 of 12 , May 5 8:47 AM
    • 0 Attachment
      Tir Gwaith recently suggested that we need to provide a way to allow users
      to manually adjust certain variables so I'd like to throw out some idea's on
      how this could be done and where it could go.

      This is needed because there are some variables which have values that
      depend more heavily on circumstances within the game than on hard game
      mechanics. We have the Temporary Bonus Tab which works great for VARs which
      are adjusted by a few very specific circumstance but when a VAR has many
      circumstantial modifiers or requires many adjustments that mechanism gets a
      bit clumsy.

      Three examples of this are Moderns Action Points and Wealth Score and the
      RSRD's Leadership score. A specific number of action points are granted to a
      PC at each level but once spent they are gone for good. A PC's wealth score
      is also a hard number derived from game mechanics but can go up or down
      depending on circumstances within the game. Likewise Leadership starts with
      a base number which can be calculated from the PC's stats but then there are
      many in-game modifiers which can affect it.

      I suggest a new tag similar to DEFINE which would do two things, 1) it would
      create a new variable that would be added to the value of an existing
      variable and 2) it would trigger the GUI to display it in a new pane similar
      to the Ability Stat pane.

      Currently the lower left pane on the Summary Tab displays 'Tips' of which
      there are three, since we already have a tips feature I don't think it would
      be a great loss to use this space for a User Variable Adjuster feature. It's
      also a prominent and logical place for it.

      The tag itself will need to set the name or label that will appear in the
      GUI, the VAR it will be adjusting and possibly a new VAR to hold the amount
      of the adjustment. Might look something like this:

      USERDEFINE:<Label>|<existing VAR>|<Adjustment VAR>

      Our three examples might look like this:

      USERDEFINE:Action Points|Action|ActionUsed

      USERDEFINE:Current Wealth Score|Wealth|WealthAdjustment

      USERDEFINE:Leadership Score|Leadership|LeadershipAdjustment

      The tag should be global like DEFINE, this would enable any dataset to add
      an adjustable variable for whatever purpose. The existing VAR would need to
      have been DEFINEd in order for the USERDEFINE to be displayed, so if a PC
      had a USERDEFINE tag applied to him that adjusted a VAR the PC did not have
      DEFINEd then that user adjustment would not be displayed. Once it was
      DEFINEd it would be activated.

      Once activated the GUI would display the following from left to right:

      1) The name or label of the adjustment.
      2) The current value total of the variable being adjusted, this would be a
      number field which the used could select and enter any number they wish.
      (I'm not sure if this will work, it may be that the adjustment value will
      need to be the editable field)
      3) plus and minus icon for the user to adjust the number in increments of
      one.
      4) The name of the VAR being adjusted
      5) The base value of the VAR being adjusted
      6) the Value of the adjustment

      For action points the value of the adjustment is basically the total number
      of points used by the PC, for Wealth it's the circumstantial adjustments but
      you see how this works.

      So any thoughts on the basic concept?

      I hadn't put much thought into the syntax so I'm sure it could do with some
      work, better name and such.
      --
      ~ Eddy Anthony (MoSaT)
      ~ PCGen Content Silverback
    • Steven Gilroy
      The concept is sound but the methodology seems a little complicated. As it is we already get a lot of usability complaints with PCGen, I think if this is
      Message 2 of 12 , May 5 10:19 AM
      • 0 Attachment
        The concept is sound but the methodology seems a little complicated. As
        it is we already get a lot of "usability" complaints with PCGen, I think
        if this is implimented it should be much easier to do. Why not just
        have a section with all variables set for a character and a way to
        adjust them instead of making the user essentially create another
        variable to add to the existing variable?

        Eddy Anthony wrote:

        >Tir Gwaith recently suggested that we need to provide a way to allow users
        >to manually adjust certain variables so I'd like to throw out some idea's on
        >how this could be done and where it could go.
        >
        >This is needed because there are some variables which have values that
        >depend more heavily on circumstances within the game than on hard game
        >mechanics. We have the Temporary Bonus Tab which works great for VARs which
        >are adjusted by a few very specific circumstance but when a VAR has many
        >circumstantial modifiers or requires many adjustments that mechanism gets a
        >bit clumsy.
        >
        >Three examples of this are Moderns Action Points and Wealth Score and the
        >RSRD's Leadership score. A specific number of action points are granted to a
        >PC at each level but once spent they are gone for good. A PC's wealth score
        >is also a hard number derived from game mechanics but can go up or down
        >depending on circumstances within the game. Likewise Leadership starts with
        >a base number which can be calculated from the PC's stats but then there are
        >many in-game modifiers which can affect it.
        >
        >I suggest a new tag similar to DEFINE which would do two things, 1) it would
        >create a new variable that would be added to the value of an existing
        >variable and 2) it would trigger the GUI to display it in a new pane similar
        >to the Ability Stat pane.
        >
        >Currently the lower left pane on the Summary Tab displays 'Tips' of which
        >there are three, since we already have a tips feature I don't think it would
        >be a great loss to use this space for a User Variable Adjuster feature. It's
        >also a prominent and logical place for it.
        >
        >The tag itself will need to set the name or label that will appear in the
        >GUI, the VAR it will be adjusting and possibly a new VAR to hold the amount
        >of the adjustment. Might look something like this:
        >
        >USERDEFINE:<Label>|<existing VAR>|<Adjustment VAR>
        >
        >Our three examples might look like this:
        >
        >USERDEFINE:Action Points|Action|ActionUsed
        >
        >USERDEFINE:Current Wealth Score|Wealth|WealthAdjustment
        >
        >USERDEFINE:Leadership Score|Leadership|LeadershipAdjustment
        >
        >The tag should be global like DEFINE, this would enable any dataset to add
        >an adjustable variable for whatever purpose. The existing VAR would need to
        >have been DEFINEd in order for the USERDEFINE to be displayed, so if a PC
        >had a USERDEFINE tag applied to him that adjusted a VAR the PC did not have
        >DEFINEd then that user adjustment would not be displayed. Once it was
        >DEFINEd it would be activated.
        >
        >Once activated the GUI would display the following from left to right:
        >
        >1) The name or label of the adjustment.
        >2) The current value total of the variable being adjusted, this would be a
        >number field which the used could select and enter any number they wish.
        >(I'm not sure if this will work, it may be that the adjustment value will
        >need to be the editable field)
        >3) plus and minus icon for the user to adjust the number in increments of
        >one.
        >4) The name of the VAR being adjusted
        >5) The base value of the VAR being adjusted
        >6) the Value of the adjustment
        >
        >For action points the value of the adjustment is basically the total number
        >of points used by the PC, for Wealth it's the circumstantial adjustments but
        >you see how this works.
        >
        >So any thoughts on the basic concept?
        >
        >I hadn't put much thought into the syntax so I'm sure it could do with some
        >work, better name and such.
        >
        >

        --

        Steven Gilroy
        PCGen OS Lemur
        "In a world without fences, who needs GATES?"
      • Eddy Anthony
        ... Because most of the VAR values do not need to (and some should not) be accessible to the user. If we had a list of all the VARs attached to the PC it would
        Message 3 of 12 , May 5 10:32 AM
        • 0 Attachment
          On 5/5/05 1:19 PM, "Steven Gilroy" <sgilroy2@...> wrote:

          > The concept is sound but the methodology seems a little complicated. As
          > it is we already get a lot of "usability" complaints with PCGen, I think
          > if this is implimented it should be much easier to do. Why not just
          > have a section with all variables set for a character and a way to
          > adjust them instead of making the user essentially create another
          > variable to add to the existing variable?

          Because most of the VAR values do not need to (and some should not) be
          accessible to the user. If we had a list of all the VARs attached to the PC
          it would be rather long and the VARs which you would want to change would
          get buried. VARs have a multitude of uses and this is aimed at addressing a
          limited number of them.

          I'm not suggesting that the user needs to add this code when they want
          access to these VARs (though that would be fairly easy, might even be easy
          to add a LST editor to do it). The code is for Data Monkeys to add to the
          datasets so as to grant access to those type of variables which lend
          themselves to this treatment.

          The methodology is aimed at dataset writers, the end user would just load
          the Source and would then find whatever adjustable values the set had
          already available to change below the stat window.
          --
          ~ Eddy Anthony (MoSaT)
          ~ PCGen Content Silverback
        • Chris
          ... Did I miss something??? My reading of it is that there s nothing the user would be creating... it d be part of a data set. All they would do would be to
          Message 4 of 12 , May 5 11:51 AM
          • 0 Attachment
            > if this is implimented it should be much easier to do. Why not just
            > have a section with all variables set for a character and a way to
            > adjust them instead of making the user essentially create another
            > variable to add to the existing variable?

            Did I miss something??? My reading of it is that there's nothing the
            user would be creating... it'd be part of a data set.

            All they would do would be to flip to the variable tab and run it up or
            down...

            Barak
          • Chris
            ... Cool, I understood correctly. :) Barak
            Message 5 of 12 , May 5 11:52 AM
            • 0 Attachment
              > The methodology is aimed at dataset writers, the end user would just
              > load the Source and would then find whatever adjustable values the
              > set had already available to change below the stat window.

              Cool, I understood correctly. :)

              Barak
            • Steven Gilroy
              Nope, it was me that was misreading I guess....that s what I get for not getting more than 4 hour a sleep per night for the past 2 weeks... ... -- Steven
              Message 6 of 12 , May 5 11:59 AM
              • 0 Attachment
                Nope, it was me that was misreading I guess....that's what I get for not
                getting more than 4 hour a sleep per night for the past 2 weeks...

                Chris wrote:

                >>if this is implimented it should be much easier to do. Why not just
                >>have a section with all variables set for a character and a way to
                >>adjust them instead of making the user essentially create another
                >>variable to add to the existing variable?
                >>
                >>
                >
                >Did I miss something??? My reading of it is that there's nothing the
                >user would be creating... it'd be part of a data set.
                >
                >All they would do would be to flip to the variable tab and run it up or
                >down...
                >
                >Barak
                >
                >
                --

                Steven Gilroy
                PCGen OS Lemur
                "In a world without fences, who needs GATES?"
              • Truth
                ... As a suggestion, instead of making a new tag, can we not extend the existing DEFINE tag. E.g. DEFINE:MyVar|5|VISIBLE=YES with the VISIBLE part being
                Message 7 of 12 , May 5 6:14 PM
                • 0 Attachment
                  On 5/6/05, Eddy Anthony <eddyba@...> wrote:
                  > The tag itself will need to set the name or label that will appear in the
                  > GUI, the VAR it will be adjusting and possibly a new VAR to hold the amount
                  > of the adjustment. Might look something like this:
                  >
                  > USERDEFINE:<Label>|<existing VAR>|<Adjustment VAR>
                  >
                  > Our three examples might look like this:
                  >
                  > USERDEFINE:Action Points|Action|ActionUsed
                  >
                  > USERDEFINE:Current Wealth Score|Wealth|WealthAdjustment
                  >
                  > USERDEFINE:Leadership Score|Leadership|LeadershipAdjustment
                  >
                  > The tag should be global like DEFINE, this would enable any dataset to add
                  > an adjustable variable for whatever purpose. The existing VAR would need to
                  > have been DEFINEd in order for the USERDEFINE to be displayed, so if a PC
                  > had a USERDEFINE tag applied to him that adjusted a VAR the PC did not have
                  > DEFINEd then that user adjustment would not be displayed. Once it was
                  > DEFINEd it would be activated.

                  As a suggestion, instead of making a new tag, can we not extend the
                  existing DEFINE tag.
                  E.g.
                  DEFINE:MyVar|5|VISIBLE=YES with the VISIBLE part being optional, and
                  off by default.

                  Then we can use the standard BONUS:VAR tag to adjust this variable in
                  code as needed.

                  --
                  Truth.
                  There is no religion higher than the Truth.
                • (no author)
                  his is a multi-part message in MIME format. X-Originating-IP: 71.96.42.70 X-eGroups-Msg-Info: 2:11:20 From: soulcatcher@evilsoft.org Subject: Re:
                  Message 8 of 12 , May 5 6:22 PM
                  • 0 Attachment
                    ok ok ok,,,,, here is it

                    [Non-text portions of this message have been removed]
                  • Eddy Anthony
                    ... I see some limitations with this approach that I think a new tag would not have. First a new tag would allow for turning an existing VAR into an adjustable
                    Message 9 of 12 , May 5 7:32 PM
                    • 0 Attachment
                      Truth scribed:

                      > As a suggestion, instead of making a new tag, can we not extend the
                      > existing DEFINE tag.
                      > E.g.
                      > DEFINE:MyVar|5|VISIBLE=YES with the VISIBLE part being optional, and
                      > off by default.
                      >
                      > Then we can use the standard BONUS:VAR tag to adjust this variable in
                      > code as needed.

                      I see some limitations with this approach that I think a new tag would not
                      have. First a new tag would allow for turning an existing VAR into an
                      adjustable VAR from a separate dataset and even do it in a circumstantial
                      way. If the VAR is set to be adjustable or not by the DEFINE tag itself then
                      it either is or is not always that way.

                      By way of example lets say I was coding a campaign setting which had a
                      variation on the Cleric which stipulated all sorts of circumstantial
                      modifiers for how much turning damage he could do with a successful turn
                      like say depending on what day of the month it was, how far from home he was
                      and how much garlic he had eaten that day (you get the picture). Rather than
                      try and code up all these crazy modifiers as temp bonuses (which can be done
                      but things get cluttered) I could simply have my dataset .MOD the Cleric
                      with a USERDEFINE tag which would allow me to adjust the Turn Damage VAR.
                      With that set loaded If I create a Cleric that adjustment will appear in the
                      User Adjustment pane, but only If I take that class. You could do something
                      similar with feats, you could even have two different one adjusting the same
                      VAR for different purposes.

                      The second thing is that I think a second variable must be created to hold
                      the value of the adjustment. I'm no programmer but the way I understand
                      PCGen to work the value of a VAR is not directly stored in the character
                      file. When you load your character PCGen loads all the feats, equipment and
                      other objects you have from the datasets and then adds all the bonuses it
                      finds in them to calculate the final value of the variable. If we have a way
                      to let the user put in an arbitrary number it has to be recorded in the
                      character file somehow. By using a second variable the original VAR can be
                      bonused and otherwise handled like any other VAR, the second VAR just hold
                      the difference between the base value and the users desired value.

                      Does that make any sense?
                      --
                      ~ Eddy Anthony (MoSaT)
                      ~ PCGen Content Silverback
                    • kigmatzomat
                      ... it would ... similar ... This very much needs to be done. There are so many things that are currently just SA text fields that could be implemented using
                      Message 10 of 12 , May 6 7:38 AM
                      • 0 Attachment
                        --- In pcgen@yahoogroups.com, Eddy Anthony <eddyba@m...> wrote:
                        >
                        > I suggest a new tag similar to DEFINE which would do two things, 1)
                        it would
                        > create a new variable that would be added to the value of an existing
                        > variable and 2) it would trigger the GUI to display it in a new pane
                        similar
                        > to the Ability Stat pane.
                        >
                        > USERDEFINE:<Label>|<existing VAR>|<Adjustment VAR>

                        This very much needs to be done. There are so many things that are
                        currently just SA text fields that could be implemented using this.

                        I second the notion of changing DEFINE to have a USER option instead
                        of a new tag so any existing DEFINEs can be .MODed.

                        I would also suggest having the GUI portion show both USER and fixed
                        VARs along with the particular LST files that modify them. User a
                        color code or a split bar, something that makes it obvious. It'll be
                        good for debugging and if you've already got a VAR UI, make the most
                        of it.

                        If a whole new tag is going to be created, go for VARTEMPLATE. If I'm
                        understanding correctly, this could be used for Power Attack, Rage,
                        Fighting Defensively, Full Defense, and all the other round-by-round
                        combat options that players use as well as the long-term management
                        stuff. Some of this is currently handled in TEMPLATES, which works,
                        but overloads the function. If it migrates to the user-controlled
                        variables it lets TEMPLATES go back to their semi-permanent state.

                        $0.02

                        -James McP
                      • Eddy Anthony
                        ... The idea behind adding a new tag is that the DEFINE tag remains unchanged, the new tag simply triggers a display in the GUI and which allows the user
                        Message 11 of 12 , May 6 10:07 AM
                        • 0 Attachment
                          On 5/6/05 10:38 AM, "kigmatzomat" <jamesmcp@...> wrote:

                          >> USERDEFINE:<Label>|<existing VAR>|<Adjustment VAR>
                          >
                          > This very much needs to be done. There are so many things that are
                          > currently just SA text fields that could be implemented using this.
                          >
                          > I second the notion of changing DEFINE to have a USER option instead
                          > of a new tag so any existing DEFINEs can be .MODed.

                          The idea behind adding a new tag is that the DEFINE tag remains unchanged,
                          the new tag simply triggers a display in the GUI and which allows the user
                          adjust it. This means no .MODing is necessary (and .MOD should be kept to a
                          minimum IMO anyway).

                          > I would also suggest having the GUI portion show both USER and fixed
                          > VARs along with the particular LST files that modify them. User a
                          > color code or a split bar, something that makes it obvious. It'll be
                          > good for debugging and if you've already got a VAR UI, make the most
                          > of it.

                          We might be talking about two different things. In my post I suggested the
                          Adjuster should display the name of the VAR, it's base value, the value of
                          the adjustment in addition to the total.

                          As for some sort of master list of VARs I agree that would be useful but I
                          think that should be a different UI than what I'm talking about here.

                          > If a whole new tag is going to be created, go for VARTEMPLATE. If I'm
                          > understanding correctly, this could be used for Power Attack, Rage,
                          > Fighting Defensively, Full Defense, and all the other round-by-round
                          > combat options that players use as well as the long-term management
                          > stuff. Some of this is currently handled in TEMPLATES, which works,
                          > but overloads the function. If it migrates to the user-controlled
                          > variables it lets TEMPLATES go back to their semi-permanent state.

                          These options have been moved into the Temporary Bonus Tab for the most
                          part, while some are contained in templates those are hidden and only show
                          up in the temp bonus tab. The Templates pane in the Race Tab should now only
                          have templates of a more or less permanent nature.

                          --
                          ~ Eddy Anthony (MoSaT)
                          ~ PCGen Content Silverback
                        • Eddy Anthony
                          I ve opened a tracker for this feature request: [ 1196836 ] User Adjustable Variables - USERDEFINE tag
                          Message 12 of 12 , May 6 1:19 PM
                          • 0 Attachment
                            I've opened a tracker for this feature request:

                            [ 1196836 ] User Adjustable Variables - USERDEFINE tag
                            <https://sourceforge.net/tracker/index.php?func=detail&aid=1196836&group_id=
                            25576&atid=384722>
                            --
                            ~ Eddy Anthony (MoSaT)
                            ~ PCGen Content Silverback
                          Your message has been successfully submitted and would be delivered to recipients shortly.