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

Re: [pcgen] [Devon][CODE] [FREQ] p7+ trackers - 10/31/04

Expand Messages
  • Tir Gwaith
    What Eric said. He s much clearer today than I am. :) But then, he and I are on the same page, since we ve talked about this issue many times in the past. Tir
    Message 1 of 13 , Nov 1, 2004
    • 0 Attachment
      What Eric said. He's much clearer today than I am. :)

      But then, he and I are on the same page, since we've talked about this issue
      many times in the past.

      Tir Gwaith
      LST Chimp

      ----- Original Message -----
      From: "Éric Beaudoin"

      If there is really no other way, at least attach the functionality to a list
      of types that can be defined somewhere in a gameMode file.

      Still, I rather have a separated tag for this because implicit functionality
      is never clear. TYPE is good to select subsets of objects and should stay
      that way. You can then use that subset to define functionality with other
      tags. Attaching functionalist to some Magic TYPE instance is not good in the
      long run.

      What I want is to see the link between the types and the functionality in
      the .lst files. Having it in the gameMode is only one way removed from
      having it hardcoded unless we create a gameMode tag that accept a list of
      objects and then use the TYPE syntax to define the list.

      TYPE already has a function. Overloading that function on specific type is
      only asking for trouble. New function, new tag.
    • Eddy Anthony
      I agree with Eric and Tir on the general issue, I ve found the use of various type confusing and full of surprises. I had thought it a good idea at one time to
      Message 2 of 13 , Nov 1, 2004
      • 0 Attachment
        I agree with Eric and Tir on the general issue, I've found the use of
        various type confusing and full of surprises. I had thought it a good idea
        at one time to document all the TYPEs and there purposes but I never got
        very far with it because there was no way I (not being able to read the
        code) was going to be able to find out all this stuff.

        I would like to take this a bit further and talk a little about design
        philosophy. The developmental changes we are adding to the program can be
        lumped into two groups:

        A) Additions which add functionality, these support the rules by allowing
        players to add items to their characters and correctly track them.

        B) Additions which add restrictions, these support the rules by enforcing
        restrictions and limits on number of items, additions, levels etc..

        Now I know this is a gross simplification but there are a couple of points
        I'd like to make. In an ideal world we should strive to accomplish both
        areas of development but in reality we are limited by the resources we have
        available. I'm talking manpower, the number of monkeys who contribute
        regularly and significantly is small. I'm really amazed sometimes at the
        amount of work that does get done by this small group. When faced with this
        limitation the objective of providing needed functionality has a much higher
        priority then does the enforcement of restrictions put forth by the rules.
        It is also important to remember that this program is a game aid and not the
        game itself. There may also be restrictions in the rules that some DM's
        would wish to ignore and if we choose to enforce them we may eventually have
        to find a way to make them optional as well. The convoluted code we would
        need to handle the exception might very well be greater then enforcing the
        initial restriction.

        Here are a couple of examples of this:

        In Spycraft some base gadgets (Shoes, attaché cases, cars, watches) can have
        additional gadgets built into them but they are limited to a specific number
        of them per base item. I did actually find a way to enforce this but it was
        extremely ugly involving a variable just to track the number of mods and a
        crap load of PREVAR tags. Having figured it out I decided it just wasn't
        worth it and just put a note in the help file that it is up to the user to
        track those limits.

        There is another example in a tracker on SF. It seems vampire clerics can
        only choose between three specific domains (which ones escapes me ATM)
        without additional code the only way to enforce this is to put PRETEMPLATE
        tags in all the other domains which does not balance in the cost/benefit
        equation. Also, what about the case of the PC who has been turned into a
        vampire but somehow stays good, I'm sure this happens a lot ;)

        Now I'm not suggesting that we not look for ways to do these things or that
        we shouldn't put these restrictions in. I'm saying we should prioritize
        development which provides new functionality and fixes bugs before we spend
        much time on things which only restrict users choices. If we can find a way
        to provide functionality and enforce restrictions, great! If we can provide
        the functionality but cannot enforce restrictions we should at least provide
        the functionality without putting the whole feature on hold.

        I don't consider this FREQ to be that necessary for 5.8 especially
        considering it was just recently entered.

        Surely there are FREQs and bugs more deserving of some attention than this
        (VISIBLE in Skills hint hint ;-)
        --
        ~ Eddy Anthony (MoSaT)
        ~ PCGen Content Silverback

        Éric Beaudoin scribed:

        > For the record, Tir talks for all the senior data monkeys on this
        > issue. Any functionality linked to a TYPE (especially the hardcoded
        > ones) should be seen as Evil(tm).
        >
        > We've done that in the past and we are still paying (kind of like the
        > Olympic Stadium in Montreal).
        >
        >
        > On Sun, 31 Oct 2004 21:05:16 +0100, Stefan Radermacher <ml@...> wrote:
        >>
        >> thoron-tir-gwaith@... wrote:
        >>
        >>> Devon, I didn't know this FReq was on the 5.8 list. Zaister, is this
        >>> one nearly complete? I haven't heard in a while... I'm not even
        >>> sure if we came up with a final syntax for the new choice system. At
        >>> least, I think I was IRCing about it with Zaister a while back....
        >>
        >> This would be easy, if we would introduce an TYPE for the equipment that
        >> can be chosen, but Tir was opposed to that, so no, we haven't found a
        >> dfinal syntax yet. However, I think it doesn't need to be a 5.8 priority.
        >>
        >> Stefan.
        >> (aka Zaister)
      • taluroniscandar
        ... see a ... linking ... able ... *have* to ... This is ... I agree, TYPE as a function can t be removed. What about changing TYPE in items to ITEMTYPE (or
        Message 3 of 13 , Nov 2, 2004
        • 0 Attachment
          --- In pcgen@yahoogroups.com, Devon Jones <soulcatcher@e...> wrote:
          > Stefan Radermacher wrote:
          >
          > >Éric Beaudoin wrote:
          > >
          > >
          > >
          > >>For the record, Tir talks for all the senior data monkeys on this
          > >>issue. Any functionality linked to a TYPE (especially the hardcoded
          > >>ones) should be seen as Evil(tm).
          > >>
          > >>
          > >
          > >Currently the way PCGen chooses which kind of equipment gets listed in
          > >the chooses for free clothing ist by looking at the TYPE, it lists all
          > >equiupment witht the TYPE "Clothing.Resizable", and I don't really
          see a
          > >way to do something like that differently currently.
          > >
          > >Also, I'm wondering, what good is the TYPE qualifier if not for
          linking
          > >functionality to it? How else is the program supposed to differentiate
          > >between different kinds of equipment items? How else would PCGen be
          able
          > >to know that you can't use a lantern as a weapon or a sword as armor?
          > >
          > >Stefan.
          > >
          > >
          > >
          > I have to weigh in here, and say that I agree with Stefan. We
          *have* to
          > refer to specific types in code, otherwise there is no way for us to
          > know how this stuff can affect anything.
          >
          > Sorry, it may be ugly, but there really is no other viable way.
          This is
          > what TYPE is *for*
          >
          > I am btw open to other suggestions, but really, any suggestion needs to
          > include eliminating TYPE, because that is it's primary code function -
          > to be a filter on items or other things for the code.

          I agree, TYPE as a function can't be removed.

          What about changing TYPE in items to ITEMTYPE (or some such), TYPE in
          feats to FEATTYPE, TYPE in classes to CLASSTYPE, etc, etc.

          Would solve both problems (but have alot of up front costs).
        • Devon Jones
          ... While I understand, if the solution involves 5 lines for a new type or 500 (or more) to do it another way, sometimes this means that a new hardcoded type
          Message 4 of 13 , Nov 3, 2004
          • 0 Attachment
            Tir Gwaith wrote:

            >Do you realize HOW MANY Types there are in Equipment? And while many are
            >there for users ability to select items, many are there clogging it up for a
            >single obscure purpose. I small rule (that groups I've played with have
            >always ignored) in the RSRD that will require another TYPE, with potentially
            >another hard-code specific TYPE, is something I really don't want to go
            >into. I'd like another solution than just throwing everything and the
            >kitchen sink into TYPE tags.
            >
            >I have SERIOUS reservations about endorsing another hard-coded (even in
            >GameMode) TYPE to equipment.
            >
            >The other problem we have is that the object's TYPE tag is not used the same
            >across all files. Or even the same way all the time in the same file. It
            >is like the "Catch-all" drawer in my kitchen.
            >
            >Tir Gwaith
            >LST Chimp
            >
            >
            While I understand, if the solution involves 5 lines for a new type or
            500 (or more) to do it another way, sometimes this means that a new
            hardcoded type is the lesser of two evils. I'll look into the issue
            that spawned this some time later and see if there is a creative way to
            solve it without a type.

            Devon
          • Eddy Anthony
            ... I think the desire is to keep these sort of features out of the code (which are not readable to us non-programmer simians) and have it as much in the LST
            Message 5 of 13 , Nov 4, 2004
            • 0 Attachment
              Devon Jones scribed:

              > While I understand, if the solution involves 5 lines for a new type or
              > 500 (or more) to do it another way, sometimes this means that a new
              > hardcoded type is the lesser of two evils. I'll look into the issue
              > that spawned this some time later and see if there is a creative way to
              > solve it without a type.
              >
              > Devon

              I think the desire is to keep these sort of features out of the code (which
              are not readable to us non-programmer simians) and have it as much in the
              LST files as possible. Point of fact, this feature can be done with one
              existing tag right now, check it out:

              ADD:EQUIP(Outfit (Artisan's),Outfit (Entertainer's),Outfit
              (Explorer's),Outfit (Monk's),Outfit (Peasant's),Outfit (Scholar's),Outfit
              (Traveler's))1

              The thing we can't do in a dataset is easily attach something like this to
              every character created. The only way I know to effect any all characters is
              to add stuff into the stats and checks file of the gameMode and that is
              really only good for defining variables and adding bonuses.

              So what about this, we create a way to add feats to all characters created
              with the dataset loaded. We can create a .pcc tag for this, FEATALL: would
              point to a file of feats. The feats would all be applied to the character
              after a race was chosen and the first class was selected. PRExxx tags could
              be used in the feats and only those that the PC qualified for would be
              added. So in this case we could have a hidden starting cloths feat with a
              PRERULE (do we have a PRERULE tag?) and the tag listed above. It would
              behave exactly as it does now but would only include the correct choices.
              Best of all it there in the LST files for all to see.

              I have seen the request for a way to add stuff to all characters come up so
              I know there are many uses this could be applied to, I have a few in mind
              for Spycraft.
              --
              ~ Eddy Anthony (MoSaT)
              ~ PCGen Content Silverback
            Your message has been successfully submitted and would be delivered to recipients shortly.