Item rarities. artifact vs ego

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Timo Pietilä
    Prophet
    • Apr 2007
    • 4096

    Item rarities. artifact vs ego

    Hello.

    This is a thought of tweaking item rarities:

    Use randart rarity code for ego-item rarities. Make sure that artifact passes equal power ego-check before creating artifact, so that artifact is at least twice as rare as equal ego, preferably more than that.

    In my last few games I have noticed that I find some artifacts more easily than more rare egos, like elvenkind boots and shields and crowns of night and day. There is no point having egos that are weaker than artifacts that are more common than they are. All artifacts need to be rare(r).

    OTOH ego-DSM:s seem to be more common than non-ego DSM:s (in 3.2.0). That is just wrong. They are also way too powerful. In my current game (which is waiting for me to kill Vecna before killing Morgoth) I have BronzeDSM of permanence with rDisenchant. It feels wrong to have such things. I removed DSM:s of Speed from my games because few chars before that had early +9 speed DSM:s that were absolute no-brainers.
  • will_asher
    DaJAngband Maintainer
    • Apr 2007
    • 1124

    #2
    This sounds to me like it might be a good idea, but I don't understand completely how you're suggesting to do it in the code.
    It sounds like you mean make the ego item first, then roll for an artifact, and if the artfact isn't more powerful than the ego, then keep the ego. am I right?
    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

    • Tiburon Silverflame
      Swordsman
      • Feb 2010
      • 405

      #3
      No, what I think Timo is suggesting is that you don't blithely say, OK, it's a Defender, build all the details, and drop it. You probably build it, then make a rarity check based on the power of the final item. If it's excessive, then reject it, and try to build something different that is more appropriate.

      Comment

      • Derakon
        Prophet
        • Dec 2009
        • 9022

        #4
        Actually I thought he was saying that we should ditch the rarities in egos.txt and artifacts.txt in favor of calculating rarities based on the object power, as randarts do. Which makes sense to me; I strongly suspect that there are items that are too common for their power levels. Then artifacts that are more powerful than egos in a given slot would also be more rare than those egos.

        Comment

        • Timo Pietilä
          Prophet
          • Apr 2007
          • 4096

          #5
          Originally posted by Derakon
          Actually I thought he was saying that we should ditch the rarities in egos.txt and artifacts.txt in favor of calculating rarities based on the object power, as randarts do. Which makes sense to me; I strongly suspect that there are items that are too common for their power levels. Then artifacts that are more powerful than egos in a given slot would also be more rare than those egos.
          Good to know that someone understood what I was thinking. That's because I couldn't figure that out myself from my own message . Not that I tried much.

          I'm one of those "occasional geniuses". I get distracted, bored and I don't pay much attention to things most of the time, but when I do focus on things people get surprised. I might have some mental weirdness in me that isn't quite illness, but isn't quite right either. Things like angband are easy to me, because it requires focus and keeps things "on the edge", so that I can't slip to my usual...what's the word...absentmindedness where I do things without need to concentrate much my mind flying in other worlds.

          Comment

          • will_asher
            DaJAngband Maintainer
            • Apr 2007
            • 1124

            #6
            To be honest, I like what I thought you meant better. There are objects which, according to their backstory and flavor, are meant to be more rare even if they aren't very powerful, or not as rare even if they're more powerful. So I think we should keep the rarities in ego_item.txt and artifact.txt, but checking to see whether the created artifact would be more powerful than the ego which would be created in its place makes sense to me (and if the ego is more powerful, the artifact would only have maybe a 2/3 chance to be rejected in favor of the ego).
            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

            • Derakon
              Prophet
              • Dec 2009
              • 9022

              #7
              One thing I'd like to see done is a comparison of standart rarityower ratios vs. randart rarityower ratios. Randarts should have, on average, a consistent ratio since their rarities are derived from their power ratings. I'd very much like to know which standarts are "too common" and which "too rare".

              Comment

              • Magnate
                Angband Devteam member
                • May 2007
                • 5110

                #8
                Originally posted by Derakon
                One thing I'd like to see done is a comparison of standart rarityower ratios vs. randart rarityower ratios. Randarts should have, on average, a consistent ratio since their rarities are derived from their power ratings. I'd very much like to know which standarts are "too common" and which "too rare".
                Well I think we have the ability to do that now, so I will try and crack on with it with myshkin's and fizzix's help. I suspect it will be of limited value because of the large impact of base item type on findability. IMO that's an argument in favour of the idea of making all artifacts use the "special" generation route.

                I would love to move to a completely algorithmic basis for ego item rarity, but I suspect that a majority of the devteam will support Will's position and want fixed rarities kept. Still, this is why we have a benevolent dictator - watch this space.

                My own personal reading of Timo's fabulously distrait post was that he wanted the actual rarities in ego_item.txt adjusted to ensure that they were no less common than a randart of equal power. That will be possible after #1179, when egos move to the alloc_prob system (they are the last item rarity that uses the old one-in-X system).
                "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                Comment

                • Derakon
                  Prophet
                  • Dec 2009
                  • 9022

                  #9
                  Originally posted by Magnate
                  Well I think we have the ability to do that now, so I will try and crack on with it with myshkin's and fizzix's help. I suspect it will be of limited value because of the large impact of base item type on findability. IMO that's an argument in favour of the idea of making all artifacts use the "special" generation route.
                  Sorry, I wasn't talking just about the listed rarity in artifact.txt, but about the artifact's "findability", which considers both its rarity and its base type.

                  For example, let's say there was the standart Sling of Dennis which was absurdly common and gave +10 to all stats, shots, shooting power, and speed (but it aggravates, so it's balanced, right?). You'd expect to find it shortly after ego slings start showing up with the current generation scheme. Now we run randart generation and create a hugely powerful randart based on that sling. Correct me if I'm wrong, but the randart's rarity will be based on its power level, not on the rarity of the standart it's based on. So you wouldn't expect to ever find the randart version of the Sling of Dennis in any given game, because it's so powerful.

                  Assuming I'm not horribly mistaken about how randart rarities are determined, I'd like to find those standarts that, under the power-based rarity determination, are either too rare or too common. More out of curiosity than anything else.

                  Comment

                  • Magnate
                    Angband Devteam member
                    • May 2007
                    • 5110

                    #10
                    Originally posted by Derakon
                    Sorry, I wasn't talking just about the listed rarity in artifact.txt, but about the artifact's "findability", which considers both its rarity and its base type.
                    I think I was too!
                    For example, let's say there was the standart Sling of Dennis which was absurdly common and gave +10 to all stats, shots, shooting power, and speed (but it aggravates, so it's balanced, right?).
                    Miaow!!
                    You'd expect to find it shortly after ego slings start showing up with the current generation scheme. Now we run randart generation and create a hugely powerful randart based on that sling. Correct me if I'm wrong, but the randart's rarity will be based on its power level, not on the rarity of the standart it's based on. So you wouldn't expect to ever find the randart version of the Sling of Dennis in any given game, because it's so powerful.

                    Assuming I'm not horribly mistaken about how randart rarities are determined, I'd like to find those standarts who, under the power-based rarity determination, are either too rare or too common. More out of curiosity than anything else.
                    Yes, I'm pretty sure I understand you. In fact I don't think this requires a monte carlo sim at all, since it can be calculated thus:

                    1. Calculate standart power

                    2. Calculate alloc_prob that a randart of the same power would have if the same base item was chosen.

                    3. Compare with standart alloc_prob.

                    Have I in fact understood correctly - is this what you mean? I can do this pretty quickly if so.
                    "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                    Comment

                    • Derakon
                      Prophet
                      • Dec 2009
                      • 9022

                      #11
                      Yeah, that sounds about right.

                      There's also some question of how the native depth of the randomly-chosen base item affects its findability. For example, compare the findability of a randart with a base type of sling vs. Blade of Chaos. Slings are common, so the randart is made "more rare" so its overall findability is kept constant. Blades of Chaos are rare, so the randart is made "less rare", likewise. But slings are also in-depth for much longer than BoCs are, which means that the out-of-depth check doesn't have to be passed to generate the randart. Thus it is more findable even though it should have the same "total rarity" in both cases.

                      Comment

                      • Magnate
                        Angband Devteam member
                        • May 2007
                        • 5110

                        #12
                        Originally posted by Derakon
                        Yeah, that sounds about right.

                        There's also some question of how the native depth of the randomly-chosen base item affects its findability. For example, compare the findability of a randart with a base type of sling vs. Blade of Chaos. Slings are common, so the randart is made "more rare" so its overall findability is kept constant. Blades of Chaos are rare, so the randart is made "less rare", likewise. But slings are also in-depth for much longer than BoCs are, which means that the out-of-depth check doesn't have to be passed to generate the randart. Thus it is more findable even though it should have the same "total rarity" in both cases.
                        Yes, this is the real reason I wanted a stats generator. It is almost impossible to try and calculate the impact on findability of OOD drops, so stats will be a good alternative.

                        Personally I'm not overly fussed about matching rarities or findability exactly. I thin the more salient check is to ensure that really powerful randarts aren't too common, and weak ones aren't too rare. There's not much point having a BoC randart with just a couple of resists and an activation. Similarly we should avoid turning Bladeturner into a sling. The existing code has a basic check for this - it calculates the base item power before adding any properties, and ensures that it's between lower and upper bounds (something like >10% and <50% of the available power). But it could be cleverer and look at the native depth and rarity of the base item too.
                        "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                        Comment

                        • fizzix
                          Prophet
                          • Aug 2009
                          • 3025

                          #13
                          Originally posted by Magnate
                          But it could be cleverer and look at the native depth and rarity of the base item too.
                          I think this would be a big improvement

                          Comment

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