Item prefixes and postfixes

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Hajo
    Adept
    • Aug 2010
    • 142

    Item prefixes and postfixes

    I've been digging through the code and the config files, and as far as I understood it, Angband has "postfixes" for items, like "of resist fire", but no prefixes. In addition there are three more modifiers for "to hit", "to damage" and "to defense".

    Some of the postfixes have several effects.

    Diablo II has a system of item prefixes and postfixes, but each modifier only has one effect. I think magic items could have a prefix and a postfix, and rare items had up to 7 modifiers overall, but I don't know how they were chosen from pre- and postfixes.

    The wide range of different items and item combinations in Diablo II was always very interesting to me. The system seemed to be better than Angbands, but I haven't played Angband a lot lately, so I can't say that for sure.

    Now that I work on my own variant now and then, I want to ask if it would be worth to change the Angband item system to a more Diablo II-like system, or if such a change would not add anything of interest to the game?

    I think the change would involve replacing the one "ego" pointer of an item with an array of several, and group the "ego" modifiers into prefix and postfixes. And then to fin all places which access the ego modifiers and make the iterate the array of modfiers instead.

    Would you like such a change?
    I have a project problem? I have no project problem. I start a project, I work on it, it fails. No problem
  • PowerWyrm
    Prophet
    • Apr 2008
    • 2986

    #2
    Isn't that what v4 is all about?
    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

    • Hajo
      Adept
      • Aug 2010
      • 142

      #3
      In the past years I had only sporadically contact to Angband and didn't follow the development very closely. So I must say, I have no idea. From what I read in the forum v4 has very similar plans, maybe quite the same even. Actually the only time when I played Angband frequently was before 2000, afterwards it's been an on and off interest, and I used to work with code based on 2.9.1.

      I think I'll get the v4 sources and take a look how it's done there. I'm not very good at reding code, but it should be a start.
      I have a project problem? I have no project problem. I start a project, I work on it, it fails. No problem

      Comment

      • takkaria
        Veteran
        • Apr 2007
        • 1951

        #4
        Originally posted by Hajo
        In the past years I had only sporadically contact to Angband and didn't follow the development very closely. So I must say, I have no idea. From what I read in the forum v4 has very similar plans, maybe quite the same even. Actually the only time when I played Angband frequently was before 2000, afterwards it's been an on and off interest, and I used to work with code based on 2.9.1.

        I think I'll get the v4 sources and take a look how it's done there. I'm not very good at reding code, but it should be a start.
        If development work on V continues then we may well import the affixes but start it off just generating the things that V currently generates (v4 affixes are quite different stylistically to V's ego-items).
        takkaria whispers something about options. -more-

        Comment

        • Hajo
          Adept
          • Aug 2010
          • 142

          #5
          The v4 system is very generic and flexible, but it deems me also a bit complex.

          I wonder a bit which way to go with my variant. Implement something like in v4, but in a bit simpler fashion, or wait till the v4 system is backported to a new Angband release and try to patch my variant with a diff from Angband 3.4.1 to that code?
          I have a project problem? I have no project problem. I start a project, I work on it, it fails. No problem

          Comment

          • Nick
            Vanilla maintainer
            • Apr 2007
            • 9633

            #6
            ToME 2 also has prefixes I believe, although I know nothing about how they work. That might be worth having a look at.
            One for the Dark Lord on his dark throne
            In the Land of Mordor where the Shadows lie.

            Comment

            • takkaria
              Veteran
              • Apr 2007
              • 1951

              #7
              Originally posted by Nick
              ToME 2 also has prefixes I believe, although I know nothing about how they work. That might be worth having a look at.
              And EyAngband (+ Mist). Which is awesome, by the way.
              takkaria whispers something about options. -more-

              Comment

              • Hajo
                Adept
                • Aug 2010
                • 142

                #8
                Thanks for the pointers. Somehow I thought that EyAngband had stalled long ago, but it always had very interesting ideas while I was still watching.
                I have a project problem? I have no project problem. I start a project, I work on it, it fails. No problem

                Comment

                • takkaria
                  Veteran
                  • Apr 2007
                  • 1951

                  #9
                  Originally posted by Hajo
                  Thanks for the pointers. Somehow I thought that EyAngband had stalled long ago, but it always had very interesting ideas while I was still watching.
                  It did, last release was a long time ago. Mist is its modern successor by a different author.
                  takkaria whispers something about options. -more-

                  Comment

                  • Magnate
                    Angband Devteam member
                    • May 2007
                    • 5110

                    #10
                    Originally posted by Hajo
                    The v4 system is very generic and flexible, but it deems me also a bit complex.

                    I wonder a bit which way to go with my variant. Implement something like in v4, but in a bit simpler fashion, or wait till the v4 system is backported to a new Angband release and try to patch my variant with a diff from Angband 3.4.1 to that code?
                    The v4 system was as simple as I could make it given the limitations of the existing Angband codebase.

                    Actually that sentence only really applies to the affixes; perhaps the complexity to which you refer is the themes aspect. I implemented themes as a way to make the affix system generate coherent multi-affix items like Defenders, Gondolin, Westernesse, HA etc. etc. Otherwise items with multiple affixes would only ever be totally random, like D2's rares.

                    What you could do is port over the affixes code to your variant without the theme code (they are easily separable - I can tell you which functions you need). Then you can decide if you like it enough to grapple with the themes.

                    Porting it to V is really all-or-nothing, because without the themes you can't replicate the existing V ego types. (Well you can, but it would be a massive hack and not really advance on the current V ego system.)

                    As takkaria says, it was designed so that its initial implementation in V could produce *exactly* the same range of items, and no more. This slightly increased the complexity.
                    "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                    Comment

                    • Hajo
                      Adept
                      • Aug 2010
                      • 142

                      #11
                      Originally posted by Magnate
                      perhaps the complexity to which you refer is the themes aspect.
                      Yes, it's mostly been the themes. I didn't want to port the themes parser and the themes logic. But at a second thought it looks very reasonable to have the themes code on top of the basic affix code.

                      If one wants to keep the "one effect per affix" rule, this look like the best idea. And allowing several effects per affix just moves the complexity to a worse place in the code.

                      Originally posted by Magnate
                      Otherwise items with multiple affixes would only ever be totally random, like D2's rares.
                      I want to add such items. I imagine that it will be difficult to rebalance the game after such changes, but to me the item concept in D2 was very interesting, one of the best parts of the game. If I ever have the time and motivation, I'd like the implement the whole system in my Angband variant, including gemmed items, runes and runewords. Once the affix system is there, those steps should be fairly easy.

                      v4 also has changes to player knowledge and identification of item properties. I think I want to port those too, in the long run.

                      Thanks for the replies. I have a better idea now of how the code works.
                      Last edited by Hajo; June 14, 2013, 09:58.
                      I have a project problem? I have no project problem. I start a project, I work on it, it fails. No problem

                      Comment

                      • Magnate
                        Angband Devteam member
                        • May 2007
                        • 5110

                        #12
                        Originally posted by Hajo
                        If one wants to keep the "one effect per affix" rule, this look like the best idea. And allowing several effects per affix just moves the complexity to a worse place in the code.
                        Precisely - this is what I meant by "not really advance on the current V ego system". Moving to affixes is largely pointless if they're not atomic.
                        I want to add such items. I imagine that it will be difficult to rebalance the game after such changes, but to me the item concept in D2 was very interesting, one of the best parts of the game. If I ever have the time and motivation, I'd like the implement the whole system in my Angband variant, including gemmed items, runes and runewords. Once the affix system is there, those steps should be fairly easy.
                        The affix system currently in v4 *does* generate those items - anything which doesn't get a theme is just a random collection of affixes. Play v4 for a while at deep depths and see - you get some really D2-like items with 6+ affixes.

                        I too have always been interested in the possibilities of adding sockets, gems and runewords - but now for Pyrel rather than v4. Do post on how you go about this.
                        v4 also has changes to player knowledge and identification of item properties.
                        Yes, v4 moved to "rune-based ID", which was an idea proposed to Eddie Grove years ago. The premise is very simple: each ability is represented by a rune, so once you have learned Resist Fire on one item you automatically recognise it on any other type of item (because it has the same rune). The makes IDing complex items much easier, and makes ID automatic in the late game (because you know every ability rune).
                        "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                        Comment

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