Any way to persist squelch settings for new chars?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • awldune
    Adept
    • Dec 2007
    • 113

    Any way to persist squelch settings for new chars?

    Is there any way in 3.12 to keep your squelch settings after dying? I would like certain objects such as spikes, scrolls of darkness, etc to always be squelched without having to reset the squelch options.

    This is separate from "automatically squelch worthless" option which seems to apply to shards of pottery and that sort of truly worthless object.

    In NPP, you can opt to keep your squelch settings, or load squelch settings from a file. However, in NPP squelch settings are in a .squ file rather than in the savefile.
  • buzzkill
    Prophet
    • May 2008
    • 2939

    #2
    You could always edit the objects.txt and make these items worthless by changing their price to 0.
    www.mediafire.com/buzzkill - Get your 32x32 tiles here. UT32 now compatible Ironband and Quickband 9/6/2012.
    My banding life on Buzzkill's ladder.

    Comment

    • awldune
      Adept
      • Dec 2007
      • 113

      #3
      They seem to already have a price of 0, though. At least, the "bad scrolls" do.

      Comment

      • awldune
        Adept
        • Dec 2007
        • 113

        #4
        Maybe my squelch_worthless isn't working. I thought earlier that it wasn't, but then I decided it must be because I haven't been seeing any bones/shards/etc.

        I'll try to make a new .prf as suggested in another thread and see if that helps.

        Comment

        • PowerDiver
          Prophet
          • Mar 2008
          • 2820

          #5
          Originally posted by awldune
          Maybe my squelch_worthless isn't working. I thought earlier that it wasn't, but then I decided it must be because I haven't been seeing any bones/shards/etc.

          I'll try to make a new .prf as suggested in another thread and see if that helps.
          That way lies madness. If you save the squelch to a prf, you can never change them again, because the prf gets read every time you start up, overwriting any changes you have made since you created the prf file.

          I suppose if you are extra careful to rename or delete the prf immediately after you use it the first time you might be OK. But that isn't worth it IMO.

          Comment

          • awldune
            Adept
            • Dec 2007
            • 113

            #6
            Originally posted by PowerDiver
            That way lies madness. If you save the squelch to a prf, you can never change them again, because the prf gets read every time you start up, overwriting any changes you have made since you created the prf file.
            I was talking about my squelch_worthless option. I dumped options to pref file in the past.

            Comment

            • will_asher
              DaJAngband Maintainer
              • Apr 2007
              • 1124

              #7
              Do you have hide squelchable turned on? If you don't, you'll still see stuff that's squelched.
              Will_Asher
              aka LibraryAdventurer

              My old variant DaJAngband:
              http://sites.google.com/site/dajangbandwebsite/home (defunct and so old it's forked from Angband 3.1.0 -I think- but it's probably playable...)

              Comment

              • awldune
                Adept
                • Dec 2007
                • 113

                #8
                Squelch seems to work fine for objects that I set squelch for. E.g., if I find a potion of blindness and say to squelch that type, then they are squelched properly in the future.

                But I think if my squelch_worthless were working I shouldn't see scrolls of darkness, scrolls of aggravate monster, etc.

                There was an earlier thread about squelch_worthless not working.

                I think when I fix that buzzkill's suggestion should work for me.

                Comment

                • Zikke
                  Veteran
                  • Jun 2008
                  • 1069

                  #9
                  I believe that in V, "Squelch Worthless" works for new character files, but subsequent characters generated from that file have the option not working (even though it says it's switched on). Unless they have fixed it in the last couple weeks.


                  edit: Here is the link to the other thread
                  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

                  • Magnate
                    Angband Devteam member
                    • May 2007
                    • 5110

                    #10
                    Originally posted by Zikke
                    I believe that in V, "Squelch Worthless" works for new character files, but subsequent characters generated from that file have the option not working (even though it says it's switched on). Unless they have fixed it in the last couple weeks.


                    edit: Here is the link to the other thread
                    But actually, the inability to customise your "always squelch" settings (i.e. stuff you want squelched for every character) is part of the brokenness of pref files. As soon as I get 3.1.2v2 into Debian, I promise to fix it. Any year now.
                    "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                    Comment

                    • awldune
                      Adept
                      • Dec 2007
                      • 113

                      #11
                      Hmm, so I played around with squelch_worthless and am not so sure it's a prf issue.

                      I created a new file, set squelch_worthless. Enter Wizard mode, create a shard of pottery. It is marked {squelch} as expected.

                      Suicide and make a new char on the same file. Options menu indicates squelch_worthless is on. Create shard as above, but it is not squelched. There is no prf file for this player.

                      Toggling squelch_worthless off and on doesn't seem to make a difference.

                      Seems to be a savefile issue.

                      Comment

                      • PowerDiver
                        Prophet
                        • Mar 2008
                        • 2820

                        #12
                        I just took a look, and the horrible option code appears to be inconsistent. Tables really need to have the value as an entry, and an init function to double-check everything is in place. I can't say this is the problem, but

                        in one place
                        Code:
                                        OPT_hide_squelchable,
                                        OPT_squelch_worthless,
                                        OPT_easy_alter,
                                        OPT_easy_open,
                                        OPT_show_lists,
                                        OPT_mouse_movement,
                        and in another place

                        Code:
                        { "hide_squelchable",    "Hide items set as squelchable",               FALSE }, /* 75 */
                        { "squelch_worthless",   "Automatically squelch worthless items",       FALSE }, /* 76 */
                        { "mouse_movement",      "Allow mouse clicks to move the player",       FALSE }, /* 77 */
                        You see those hardcoded numbers in the comments, consecutive numbers for non-consecutive options, and things don't match up exactly. It would not surprise me if various tables are out of sync.

                        Someone needs to rewrite the option stuff so that inconsistency is impossible, but I am not volunteering today.

                        Comment

                        • Marble Dice
                          Swordsman
                          • Jun 2008
                          • 412

                          #13
                          Squelch_worthless only activates for item kinds with a value of 0 and only when becoming aware of a kind for which k_ptr->everseen is false. I believe this means squelch_worthless does not affect any object which has 1) already been found in the current game or 2) been found in a previous save game.

                          Comment

                          • PowerDiver
                            Prophet
                            • Mar 2008
                            • 2820

                            #14
                            Originally posted by Marble Dice
                            Squelch_worthless only activates for item kinds with a value of 0 and only when becoming aware of a kind for which k_ptr->everseen is false. I believe this means squelch_worthless does not affect any object which has 1) already been found in the current game or 2) been found in a previous save game.
                            That is clearly screwed up. Surely it should be kind_is_aware && value == 0 with no reference to everseen. The everseen must have crept in with someone trying not to be spoilery with squelch menus, copied and pasted where it does not belong.

                            [edit] I found what you described, and it's not even in the right place in the code! I'll move it where it belongs with the application as described above.
                            Last edited by PowerDiver; March 17, 2010, 06:13.

                            Comment

                            • PowerDiver
                              Prophet
                              • Mar 2008
                              • 2820

                              #15
                              I've been wondering if maybe this dates really far back, to the time when squelch was first written. Squelch was initially intended to avoid looking at sticks and pottery etc. ISTR that squelch settings used to persist through death and birth of a new char. This code fragment sort of makes sense in that context.

                              The current interpretation of "worthless" is defined in terms of object kinds. Should that change to price? Will people be confused if squelch_worthless does not squelch a cloak [1, -9] ?

                              Or should the option simply be removed?

                              Comment

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