Rune-based ID

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Ingwe Ingweron
    Veteran
    • Jan 2009
    • 2110

    #91
    Food items (rations, waybread, slime molds) all retain the ?? identifier, even if @ eats them while "hungry".
    “We're more of the love, blood, and rhetoric school. Well, we can do you blood and love without the rhetoric, and we can do you blood and rhetoric without the love, and we can do you all three concurrent or consecutive. But we can't give you love and rhetoric without the blood. Blood is compulsory. They're all blood, you see.”
    ― Tom Stoppard, Rosencrantz and Guildenstern are Dead

    Comment

    • Derakon
      Prophet
      • Dec 2009
      • 8820

      #92
      I went ahead and mashed out a Scroll of Identify during my lunch break. It makes use of the object_learn_unknown_rune function in obj-knowledge.c, which learns runes in a strictly ordered fashion (e.g. combat modifiers are learned before resistances, resistances are learned in a set order), but otherwise gets the job done. I've submitted a pull request for Nick to look over. I also didn't bother with removing the "learn runes on level-up" behavior, mostly because I didn't want to take the time to learn where that particular bit of code even is.

      Comment

      • Nick
        Vanilla maintainer
        • Apr 2007
        • 9351

        #93
        Originally posted by Derakon
        I went ahead and mashed out a Scroll of Identify during my lunch break. It makes use of the object_learn_unknown_rune function in obj-knowledge.c, which learns runes in a strictly ordered fashion (e.g. combat modifiers are learned before resistances, resistances are learned in a set order), but otherwise gets the job done. I've submitted a pull request for Nick to look over. I also didn't bother with removing the "learn runes on level-up" behavior, mostly because I didn't want to take the time to learn where that particular bit of code even is.
        Excellent - I think a consensus has pretty much emerged that this is the thing to do. I should have a chance to fully implement this (with randomised rune-learning) and fix the other obvious bugs over the weekend.
        One for the Dark Lord on his dark throne
        In the Land of Mordor where the Shadows lie.

        Comment

        • takkaria
          Veteran
          • Apr 2007
          • 1895

          #94
          Originally posted by spara
          That "Identify Rune" scroll sounds good. For testing I suggest implementing the targeting scroll first and if that's not sufficient, then try with the non-targeting one. The targeting one feels much more logical in-game than randomly revealing an unknown rune.
          Think of the non-target one not as a magical scroll but just a leaf out a book telling you what powers that particular rune endows?
          takkaria whispers something about options. -more-

          Comment

          • Derakon
            Prophet
            • Dec 2009
            • 8820

            #95
            Originally posted by takkaria
            Think of the non-target one not as a magical scroll but just a leaf out a book telling you what powers that particular rune endows?
            Yeah, that was my thinking.

            And while I'm thinking about it, I don't think this feature will really be complete until there's a message for learning runes. "You learn the rune for Resist Fire", etc. Right now IDing runes is kind of short on feedback; you have to 'I'nspect the item to see what properties have been added to it since the last time you inspected it.

            Comment

            • StMicah
              Adept
              • Feb 2015
              • 112

              #96
              Originally posted by Derakon

              And while I'm thinking about it, I don't think this feature will really be complete until there's a message for learning runes. "You learn the rune for Resist Fire", etc. Right now IDing runes is kind of short on feedback; you have to 'I'nspect the item to see what properties have been added to it since the last time you inspected it.
              +1 to this...or catalog them in the ~menu with other sorts of accessed knowledge. right now, I'm just assuming I know the runes for what is highlighted in my character sheet.

              and +1 to the idea that learning runes as you level is unnatural and happens too quickly...imagine quaffing that !Experience one sometimes finds at shallow depths. Also I can clvl a gnome or hobbit mage rather quickly and one one shallow dive so that they'd know too many runes before I'm finding the equipment that has those runes.

              Comment

              • debo
                Veteran
                • Oct 2011
                • 2320

                #97
                What's the rarity of these runidentify scrolls? Can you buy them?
                Glaurung, Father of the Dragons says, 'You cannot avoid the ballyhack.'

                Comment

                • fizzix
                  Prophet
                  • Aug 2009
                  • 2969

                  #98
                  Some quality of life things which I think would improve things.

                  I think almost all flavored items should be ID'd immediately on use regardless of whether the effect is noticeable. The comp character (a kobold rogue) can never ID-by-use potions of neutralize poison, for example. All potions and scrolls should be ID'd immediately.

                  Effects that would do something if you are damaged, or have a status effect but don't do anything otherwise should also be ID'd. This includes curing, cure light wounds etc. Other utility items should also be ID'd as well, detect evil/invisible and probing.

                  The only thing that should not be ID'd are wands and staves that affect monsters. And you should be given a message to that extent. Something like, there are no monsters to notice the effect.

                  Ok enough about that.

                  The fact that stores don't give the base value is really weird. Can it even be learned? I bought some boots from the armorer and I still don't "know" what the base value is, even though I know the pluses. Is this really intended?

                  Comment

                  • Derakon
                    Prophet
                    • Dec 2009
                    • 8820

                    #99
                    Originally posted by debo
                    What's the rarity of these runidentify scrolls? Can you buy them?
                    I just copied the Scroll of Detect Invisible entry (adjacent in the item list) when I made the Scroll of Identify entry, so unless Nick bothers to adjust things, they'll be pretty common but not sold in shops.

                    Comment

                    • spara
                      Adept
                      • Nov 2014
                      • 235

                      Originally posted by takkaria
                      Think of the non-target one not as a magical scroll but just a leaf out a book telling you what powers that particular rune endows?
                      And the reason for the scroll to always identify an unknown rune is that @ automatically ignores the known ones. Works for me. By the way, the game could automagically stop spawning runes once @ has learned the last rune. Sort of auto ignore.

                      Comment

                      • spara
                        Adept
                        • Nov 2014
                        • 235

                        Originally posted by fizzix
                        The fact that stores don't give the base value is really weird. Can it even be learned? I bought some boots from the armorer and I still don't "know" what the base value is, even though I know the pluses. Is this really intended?
                        Try some meleeing, then drop them and pick them up again. There seems to be a bug there.

                        Comment

                        • GenericPseudonym
                          Apprentice
                          • Jan 2016
                          • 91

                          Originally posted by fizzix
                          Some quality of life things which I think would improve things.

                          I think almost all flavored items should be ID'd immediately on use regardless of whether the effect is noticeable. The comp character (a kobold rogue) can never ID-by-use potions of neutralize poison, for example. All potions and scrolls should be ID'd immediately.

                          Effects that would do something if you are damaged, or have a status effect but don't do anything otherwise should also be ID'd. This includes curing, cure light wounds etc. Other utility items should also be ID'd as well, detect evil/invisible and probing.

                          The only thing that should not be ID'd are wands and staves that affect monsters. And you should be given a message to that extent. Something like, there are no monsters to notice the effect.

                          Ok enough about that.

                          The fact that stores don't give the base value is really weird. Can it even be learned? I bought some boots from the armorer and I still don't "know" what the base value is, even though I know the pluses. Is this really intended?
                          Either you're doing some stuff out of order with wizmode or something broke.

                          My character started without knowledge of the base armor values of his gear, but learned them the first time he took a hit.

                          I'm not sure if weapon enchantment is the same rune as armor enchantment, but if it is you might get the problem you're having if you ID an enchanted weapon before ever being hit by a monster, probably as a result of wizmoding things.

                          Comment

                          • Pete Mack
                            Prophet
                            • Apr 2007
                            • 6697

                            This assumes that all attributes are identified by dl 70, which is the (rather surprising) max depth for the DI scroll.
                            Originally posted by Derakon
                            I just copied the Scroll of Detect Invisible entry (adjacent in the item list) when I made the Scroll of Identify entry, so unless Nick bothers to adjust things, they'll be pretty common but not sold in shops.

                            Comment

                            • Derakon
                              Prophet
                              • Dec 2009
                              • 8820

                              Originally posted by Pete Mack
                              This assumes that all attributes are identified by dl 70, which is the (rather surprising) max depth for the DI scroll.
                              Yeah, once Nick provides a working "identify random rune" implementation, I'll happily add a scroll ("Scroll of Runes"?) that invokes it, which should fix that issue, by allowing players to learn runes that they haven't seen on gear before (like ESP, drain experience, etc.).

                              I took a quick look at the existing learn-rune functions (obj_learn_unknown_rune and player_learn_everything are the chief suspects), though, and didn't see an obvious easy way to make a randomized version, though. If this were Python I'd create a mapping of unlearned runes to lambdas that call the function to learn that rune, and then select a random key from the mapping...maybe something similar can be done in C. But my knowledge of C is sufficiently out-of-date that I didn't want to try it.
                              Last edited by Derakon; March 4, 2016, 19:24.

                              Comment

                              • nikheizen
                                Adept
                                • Jul 2015
                                • 137

                                Nice to see that rune-ID has come full circle and we are back to using consumables to ID stuff. :^)

                                Comment

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