4.1 feature branches

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Pete Mack
    Prophet
    • Apr 2007
    • 6883

    #91
    Glad you mentioned that. I was getting ready to give it a shot. Well done!

    Comment

    • bdgamer
      Adept
      • Nov 2015
      • 100

      #92
      Bug found

      I received an Assertion failed! error

      File: obj-identify.c
      Line:579
      Expression: obj->known

      Savefile with error is attached.
      Attached Files

      Comment

      • PowerWyrm
        Prophet
        • Apr 2008
        • 2987

        #93
        Fuzzy detection doesn't update object knowledge when something has disappeared from cave (player casts sense objects, monster picks up something, player casts sense objects again). Maybe it should, unless "fuzzy" also includes player knowledge...
        PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

        Comment

        • Nick
          Vanilla maintainer
          • Apr 2007
          • 9647

          #94
          Originally posted by bdgamer
          I received an Assertion failed! error

          File: obj-identify.c
          Line:579
          Expression: obj->known

          Savefile with error is attached.
          What were you doing when you got the error, and what had happened from where you made the savefile?
          One for the Dark Lord on his dark throne
          In the Land of Mordor where the Shadows lie.

          Comment

          • PowerWyrm
            Prophet
            • Apr 2008
            • 2987

            #95
            Fuzzy detected objects probably have the wrong prefix when displaying the object list.

            Code:
            if (entry->object->marked == MARK_AWARE)
            was changed to:

            Code:
            if (entry->object->kind == entry->object->known->kind)
            which is the new code for "seen" objects. This line should probably be:

            Code:
            if (entry->object->kind != entry->object->known->kind)
            PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

            Comment

            • PowerWyrm
              Prophet
              • Apr 2008
              • 2987

              #96
              Objects wiped by effects out of LOS of the character are noticed, which kinda opposes the whole knowledge stuff. Like objects picked up/crushed by monsters, they should stay in the player's knowledge until in LOS or unrevealed via detection.

              Function project_o() still states this clearly:

              Hack -- effects on objects which are memorized but not in view are also seen.
              And the code does:

              Code:
              			/* Effect "observed" */
              			if (obj->known && !ignore_item_ok(obj)) {
              				obvious = true;
              				...
              			}
              "known" should probably been replaced by "seen"...
              PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

              Comment

              • Nick
                Vanilla maintainer
                • Apr 2007
                • 9647

                #97
                Originally posted by PowerWyrm
                Code:
                			/* Effect "observed" */
                			if (obj->known && !ignore_item_ok(obj)) {
                				obvious = true;
                				...
                			}
                "known" should probably been replaced by "seen"...
                So I want
                Code:
                			/* Effect observed */
                			if (obj->known && !ignore_item_ok(obj) && cave_isseen(cave, y, x)) {
                				obvious = true;
                				...
                			}
                and then only give messages and become aware of mimics if obvious is true, right?
                One for the Dark Lord on his dark throne
                In the Land of Mordor where the Shadows lie.

                Comment

                • Pete Mack
                  Prophet
                  • Apr 2007
                  • 6883

                  #98
                  BTW: "unreavealing" an object via detection is a overkill. I'd much rather have the spell do "object belief" rather than "object knowledge."

                  Comment

                  • PowerWyrm
                    Prophet
                    • Apr 2008
                    • 2987

                    #99
                    Originally posted by Nick
                    So I want
                    Code:
                    			/* Effect observed */
                    			if (obj->known && !ignore_item_ok(obj) && cave_isseen(cave, y, x)) {
                    				obvious = true;
                    				...
                    			}
                    and then only give messages and become aware of mimics if obvious is true, right?
                    Exactly that.
                    PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

                    Comment

                    • PowerWyrm
                      Prophet
                      • Apr 2008
                      • 2987

                      Originally posted by PowerWyrm
                      Fuzzy detection doesn't update object knowledge when something has disappeared from cave (player casts sense objects, monster picks up something, player casts sense objects again). Maybe it should, unless "fuzzy" also includes player knowledge...
                      Nevermind... the current behavior is correct. It's consistent with ignored objects, which are sensed by fuzzy detection, but disappear from view only when in LOS.
                      PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

                      Comment

                      • PowerWyrm
                        Prophet
                        • Apr 2008
                        • 2987

                        Slay cache is broken again in the latest version. The old code was doing a check vs known brands/slays:

                        Code:
                        if (brands_are_equal(obj->brands, slay_cache[i].brands, TRUE) && slays_are_equal(obj->slays, slay_cache[i].slays, TRUE))...
                        The new code does:

                        Code:
                        if (brands_are_equal(obj->brands, slay_cache[i].brands) && slays_are_equal(obj->slays, slay_cache[i].slays))...
                        Since the check is vs known brands/slays, it probably should be:

                        Code:
                        if (brands_are_equal(obj->known->brands, slay_cache[i].brands) && slays_are_equal(obj->known->slays, slay_cache[i].slays))...
                        PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

                        Comment

                        • PowerWyrm
                          Prophet
                          • Apr 2008
                          • 2987

                          While implementing object knowledge for my variant, I saw a difference in the code for make_fake_artifact(), which is used for artifact knowledge menus and artifact power: at the end, my code does

                          Code:
                              /* Learn brands and slays */
                              object_know_brands_and_slays(obj);
                          which seems logical, since slay_power() will only use the known brands and slays to evaluate the power of brands/slays. This means brands and slays never contribute to artifact power...
                          PWMAngband variant maintainer - check https://github.com/draconisPW/PWMAngband (or http://www.mangband.org/forum/viewforum.php?f=9) to learn more about this new variant!

                          Comment

                          • Nick
                            Vanilla maintainer
                            • Apr 2007
                            • 9647

                            Originally posted by PowerWyrm
                            While implementing object knowledge for my variant, I saw a difference in the code for make_fake_artifact(), which is used for artifact knowledge menus and artifact power: at the end, my code does

                            Code:
                                /* Learn brands and slays */
                                object_know_brands_and_slays(obj);
                            which seems logical, since slay_power() will only use the known brands and slays to evaluate the power of brands/slays. This means brands and slays never contribute to artifact power...
                            I don't believe this is a problem, because the only place artifact power is used is in randart generation, where all brands and slays are assumed known anyway.

                            For similar reasons, the slay cache being broken doesn't matter much - it just means it's not used when an individual ego item is being assessed for price, while its main use is speeding up stats gathering (where, again, all slays and brands are assumed known).

                            I'm not planning to do anything about either of these at this stage, or about the various ID crashes, because the rune-based ID branch changes a lot of the relevant code.
                            One for the Dark Lord on his dark throne
                            In the Land of Mordor where the Shadows lie.

                            Comment

                            • Pete Mack
                              Prophet
                              • Apr 2007
                              • 6883

                              Has anyone using Linux64 tried running a build with CLang Memory Sanitizer? I just hit an assertion in realloc, which is almost certainly a sign of memory corruption. (I can't really see what happened unfortunately.) Lost a level where I killed Mouth of Sauron, too. :/

                              Comment

                              • Pete Mack
                                Prophet
                                • Apr 2007
                                • 6883

                                I don't understand the fractional blows system. I have 18/220 on both STR and DEX, but for weapons weighing 18lbs are getting only 4.5 blows, and the descriptions says I need +2 more DEX to get 5.8 (4.8+1 for high level warrior)
                                Is this intentional, and if so, why? Truly, 18/200 should be enough DEX to get max blows with any weapon.

                                Comment

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