general squelch issues

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • PowerDiver
    Prophet
    • Mar 2008
    • 2820

    general squelch issues

    I've been messing around with improved squelching for a while, and keep
    changing how I do things. It's time to come up with some specifics, and then
    incorporate them into V hopefully in a way that can be then grabbed into
    variants without too much pain.

    However, first there are issues to be resolved.

    The first question is whether there should be a separate pseudo level I have
    referred to as {splendid}, which refers to items that are obviously excellent
    the moment you wield them, even without pseudo, e.g. boots of speed. The
    reason is so that you could specify quality squelch of excellent but not
    splendid, squelching boots of stability but not speed and squelching armor of
    resistance but not of elvenkind [assuming stealth boosts are obvious].

    There definitely needs to be a new pseudo level {tainted} for items
    simultaneously excellent and worthless, such as nazgul launchers, since the
    plan is to have more of those in the future. So in any event there will have
    to be at least 1 additional pseudo level.


    The second question, much bigger, is whether there should even be quality
    squelch at all. I believe in the model that the player should be provided
    with the definitions of all of the egos, but that seems to be a minority
    opinion. If you do not know all of the egos, how can it ever be safe to
    squelch an excellent dagger when possibly there might be an unknown ego that
    provides damage of {base damage * 20 vs evil} ?

    It would be feasible to only allow squelching of particular seen egos. A bit
    more generally, one could specify sets of object flags (and weight, damage
    dice, etc) and squelch items whose flags are a subset of one of the given sets.


    It may not seem related, but I need to know whether branded weapons should be
    obvious upon wield. The upcoming 3.1 will make brands obvious at least upon a
    successful hit. Is there any strong opposition to making them obvious on wield?


    Somewhat related, I added pseudo levels on jewelry to my patch. I thought it
    was necessary for the way I dealt with artifacts, but I was mistaken. I have
    found it necessary to recognize artifacts when they are wielded. This brings
    up a couple more questions.

    Should artifacts be recognized immediately when wielded?

    Should jewelry pseudo?


    Also, squelching is about ignoring, not object destruction. Is there any
    reason that artifacts should not be squelchable, assuming they are no better
    than other items that would be squelched?


    Finally, one goal of my squelch interface is to avoid menus, and there is no
    separate squelch command. When you 'k'ill an object, it first asks if you
    wish to squelch it, and if so tries to guess larger classes of objects you may
    wish to squelch and interrogates you about them. Only if you say no to
    squelching are you asked if you want to destroy the object. Does anyone have
    a problem with this approach?
  • chem
    Adept
    • Sep 2007
    • 150

    #2
    Originally posted by PowerDiver
    The second question, much bigger, is whether there should even be quality
    squelch at all. I believe in the model that the player should be provided
    with the definitions of all of the egos, but that seems to be a minority
    opinion. If you do not know all of the egos, how can it ever be safe to
    squelch an excellent dagger when possibly there might be an unknown ego that
    provides damage of {base damage * 20 vs evil} ?

    It would be feasible to only allow squelching of particular seen egos. A bit
    more generally, one could specify sets of object flags (and weight, damage
    dice, etc) and squelch items whose flags are a subset of one of the given sets.
    IMO, Squelching should be a meta-activity, dictated by the player, not the game. Therefore, it should only be required to depend upon things the player observes: item descriptions, changes in speed/stealth, etc. It should not be required to depend on specific ego items being identified, and only then being able to squelch those. If the player wishes to take a risk squelching all excellents and missing out on that x20 versus evil dagger, that's their risk to run. That being said, a more selective squelching system, which allowed you to squelch "all excellents-except-these-types" would be welcome. It's still based on player, not character, knowledge.

    I found that after the learning curve, the hengband/entroband squelch (and pickup/inventory management) system was really quite awesome. Have a look if you've never tried it? It's more text than menu based, but something like its functionality could be adapted towards menus.

    Comment

    • d_m
      Angband Devteam member
      • Aug 2008
      • 1517

      #3
      You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:

      # boots of speed +4 kept
      # boots of stability [6,+10] squelched
      # boots of stability [6, +15] kept
      squelch non-artifact armor
      keep excellent boots
      squelch boots of stability if ac < 20

      or even

      # if wearing resist cold shield [2, +5], would squelch
      # resist fire shield [2, +1] but not resist fire shield [2, +10]
      squelch non-artifact armor
      keep excellent armor if ac > slot.ac

      Like I said, I'm not sure there is a nice GUI way to do it, but for players who don't mind writing the equivalent of firewall rules, this interface could be very powerful. I would be interested in writing a squelching engine capable of these sorts of rules if there is at least a moderate chance it could be incorporated.

      What do people think? Obviously the syntax is kind of stream of consciousness.
      linux->xterm->screen->pmacs

      Comment

      • takkaria
        Veteran
        • Apr 2007
        • 1951

        #4
        Originally posted by d_m
        You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:

        # boots of speed +4 kept
        # boots of stability [6,+10] squelched
        # boots of stability [6, +15] kept
        squelch non-artifact armor
        keep excellent boots
        squelch boots of stability if ac < 20

        or even

        # if wearing resist cold shield [2, +5], would squelch
        # resist fire shield [2, +1] but not resist fire shield [2, +10]
        squelch non-artifact armor
        keep excellent armor if ac > slot.ac

        Like I said, I'm not sure there is a nice GUI way to do it, but for players who don't mind writing the equivalent of firewall rules, this interface could be very powerful. I would be interested in writing a squelching engine capable of these sorts of rules if there is at least a moderate chance it could be incorporated.

        What do people think? Obviously the syntax is kind of stream of consciousness.
        I wouldn't be interested in anything that made people write config files. You can get 80% of the effect with 20% of the complexity, and that's the point I like to hit.
        takkaria whispers something about options. -more-

        Comment

        • d_m
          Angband Devteam member
          • Aug 2008
          • 1517

          #5
          Originally posted by takkaria
          I wouldn't be interested in anything that made people write config files. You can get 80% of the effect with 20% of the complexity, and that's the point I like to hit.
          I figured as much. I'm not sure that this situation is 80/20 though. Right now the engine squelches if it matches any of the criteria you set out (e.g. if you squelch all good weapons, you can't "opt out" of that). I'm not sure how you get "destroy all cursed items except for the cursed items i like" without having to create new "value classes" for all the different stuff, or letting the player create a list.

          Anyway, I will wait and see what you folks come up with.

          One easy feature I'd like to see is a "blade of chaos" type similar to the "DSM" type, to avoid squelching those. Sometimes they're the only way I can get rchaos. I might try to whip up a patch for that.
          linux->xterm->screen->pmacs

          Comment

          • Donald Jonker
            Knight
            • Jun 2008
            • 593

            #6
            Eddie, I really think it's time to release your works more widely so people can see your ideas in action rather than on paper. Even if it's a bit buggy (and it really isn't), I believe the lack of consensus you receive in the forums and newsgroups will evaporate once people have a chance to try it out. It's just too difficult to weigh in on things like {splendid} or {tainted} unless you've experienced them and seen how they've affected the game. But it's your work and I'm sorry to be pushy, but everyone would benefit from this - even if the code isn't ready to be adopted, the very ideas should be disseminated.

            The fact that there was even a debate started here over whether automatizer/config files should be brought in shows how much we need Mr. Grove's Incredible Squelching Machine.

            Edit: I think the maxim that it's easier to apologize than to ask permission should be the guiding principle here.
            Bands, / Those funny little plans / That never work quite right.
            -Mercury Rev

            Comment

            • PowerDiver
              Prophet
              • Mar 2008
              • 2820

              #7
              Originally posted by d_m
              You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:

              # boots of speed +4 kept
              # boots of stability [6,+10] squelched
              # boots of stability [6, +15] kept
              squelch non-artifact armor
              keep excellent boots
              squelch boots of stability if ac < 20
              This is already accomplished without any config files, well nearly done anyway. You would be quality squelching good boots, and specifically squelching some particular metal shod boots of stability [6,+10] weighing whatever they weigh.

              Future work would be to allow the player to override the weight, accomplishing the last squelch if ac < 16 [or 20 you inscribe the better boots !d!k and squelch them], but I don't have a UI for that yet.

              I don't much believe in the artificial distinction between artifacts and other items, so it would only be squelch non-splendid [i.e. all but elvenkind] armor at the moment.

              Work remains to be done, but before I do it I need to figure out the framework.

              Comment

              • Zikke
                Veteran
                • Jun 2008
                • 1069

                #8
                It has always been my opinion that the act of IDing items shouldn't detract from the main fun of the game, which is exploring the dungeon, finding items, and combat. I love the pseudo-ID of warriors (and mages with ID spell) because it puts out of mind the overhead of finding out what I found and gives me more time for the fun parts of the game.
                A(3.1.0b) CWS "Fyren_V" NEW L:50 DL:127 A++ R+++ Sp+ w:The Great Axe of Eonwe
                A/FA W H- D c-- !f PV+++ s? d P++ M+
                C- S+ I- !So B ac++ GHB? SQ? !RQ V F:

                Comment

                • chem
                  Adept
                  • Sep 2007
                  • 150

                  #9
                  Originally posted by d_m
                  You know, squelching rules end up seeming a lot like firewall rules really. Procedurally, you almost want "fast-squelch" "fast-keep" "squelch" and "keep". For instance, I could imagine the following sorts of rules:
                  As I alluded to in my first reply, hengband/entroband basically lets the players do this sort of thing. It's all written rules. It works very well.

                  Comment

                  • Donald Jonker
                    Knight
                    • Jun 2008
                    • 593

                    #10
                    Originally posted by chem
                    As I alluded to in my first reply, hengband/entroband basically lets the players do this sort of thing. It's all written rules. It works very well.
                    It does indeed work very well. The problem is the "written" part. Whenever you want to modify your rules you have to suspend play and engage in something which is a lot like coding, and isn't very fun. I suppose once you've sunk enough hours into heng/entro and have garnered enough expertise and your squelch config becomes more sophisticated you don't need to spend as much time on it, but until then, it's really a chore.

                    Moreover, there's always the anxiety that you're inadvertently squelching something that could be helpful. I remember agonizing over how to squelch things that would poison me but not things that would cure it, or things that would poison others.

                    Ideally, I think that squelching should happen as much as possible without leaving the main game screen, and require as little diversion from main gameplay as possible.

                    *****

                    So as not to derail the thread:

                    RE: new levels of pseudo: {splendid} is splendid. Haven't run into {tainted}.

                    RE: should inspection provide the definition of egos: This is a real problem for new players, with the potential of taking a lot of the magic out of the game. Then again, it's a huge convenience for veterans. Could something like monster memory work here?

                    RE: should elemental brands id on wield : They might as well ID upon wield, but I can see how revealing the brand through hitting ("you corrode the orc!") provides some nice flavor - already experienced this some in 3.1 (although it doesn't id the brand yet, which it should). This can go either way as far as I'm concerned.

                    RE: should artifacts ID on wield: Absolutely. I can't think of a more awesome flavor-wise moment than when the hero wields/dons the legendary artifact and recognizes its powers. This would be so classic.

                    RE: should jewelry pseudo: I don't see why not, but having tried it out, I don't see that it helps a whole lot. But it doesn't hurt any either. Just makes things more a little more convenient.

                    RE: squelching artifacts: I don't think there'd be any reason you'd want to do this... sounds like it'd cause more heartache through mistakes than any help it would afford. But I've never been one swimming in artifacts, so I don't know..
                    Bands, / Those funny little plans / That never work quite right.
                    -Mercury Rev

                    Comment

                    Working...
                    😀
                    😂
                    🥰
                    😘
                    🤢
                    😎
                    😞
                    😡
                    👍
                    👎