danger level in monster descriptions?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • d_m
    Angband Devteam member
    • Aug 2008
    • 1517

    danger level in monster descriptions?

    In another thread Eddie commented that breath damage should be visible in monster descriptions. I'm ambivalent on that point, but it gave me a different idea.

    What if a more general assessment of the monster's danger is used (sort of like, "a kill of this creature is worth __ xp to a __th level character")?

    I could imagine the following categories:

    1. could kill player in 1 round (potential instant kill)
    2. could kill player in 2 rounds (giving the player one round to respond)
    3. could kill the player in 3-4 rounds
    4. default

    In this case rounds would be measured as the space between a player acting and getting another chance to act. Thus, it would take into account player and monster speed. For accuracy I would also take resistances into account. I might use the following descriptors:

    1. "As you gaze upon __, you sense your imminent doom."
    2. "Viewing __, you feel you are in mortal danger"
    3. "You sense that __ is dangerous"
    4. (nothing)

    Anyway, those are just thrown together. I think the thing I like about this is that it is a way for beginners to get a (limited) clue of how dangerous something is without actually reading spoilers or seeing game mechanics.

    What do you all think? I would be happy to implement this feature if people thought it would be useful.
    linux->xterm->screen->pmacs
  • Magnate
    Angband Devteam member
    • May 2007
    • 5110

    #2
    Nice idea. I like it. I can think of two ways to do it:

    1. The obvious way - base it on the monster's most damaging attack

    2. Just use the monster's power rating, which takes into account all its attacks and other abilities

    The latter seems more intuitive, since the player's character wouldn't necessarily know what the most damaging attack was, and it fits better with the general vagueness of the original idea. It's also a lot quicker, as monster power is calculated at the start of the game and can just be compared directly against (something - clev? max hp? current hp?). AFAIK there exists no function to obtain the monster's most damaging attack.

    CC
    "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

    Comment

    • d_m
      Angband Devteam member
      • Aug 2008
      • 1517

      #3
      Originally posted by Magnate
      Nice idea. I like it. I can think of two ways to do it:

      1. The obvious way - base it on the monster's most damaging attack

      2. Just use the monster's power rating, which takes into account all its attacks and other abilities

      The latter seems more intuitive, since the player's character wouldn't necessarily know what the most damaging attack was, and it fits better with the general vagueness of the original idea. It's also a lot quicker, as monster power is calculated at the start of the game and can just be compared directly against (something - clev? max hp? current hp?). AFAIK there exists no function to obtain the monster's most damaging attack.

      CC
      I had assumed that it wouldn't be that hard to iterate over all the monster's possible attacks, calculate max damage, and then take the max of that. But it might be the case that monster power is a better indicator (and/or that it actually *is* hard to determine max dmg for monsters).

      The big difference between the two features has to do with resistance holes. If I have a pretty high level warrior lacking rPoison and I meet a greater basilisk for the first time, option #2 indicates that maybe I can take him, while option #1 would probably indicate running like hell.

      Which of those outcomes one prefers probably depends on one's temperment.

      Anyway, I will take a look at the damage calculation code again to see how hard it would be to figure out max damage for an attack; I will also try to figure out how to usefully correlate character power and monster power.
      linux->xterm->screen->pmacs

      Comment

      • buzzkill
        Prophet
        • May 2008
        • 2939

        #4
        It's just a feeling, presumably based on experience. So at low level it should be somewhat, possibly wildly inaccurate. At higher levels, probably unnecessary, and certainly hard to calculate.

        Or you could base it on the monster memory of fallen ancestors, which, while likely less accurate would certainly be easier.
        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

        • Rizwan
          Swordsman
          • Jun 2007
          • 292

          #5
          Originally posted by buzzkill
          It's just a feeling, presumably based on experience. So at low level it should be somewhat, possibly wildly inaccurate. At higher levels, probably unnecessary, and certainly hard to calculate.

          Or you could base it on the monster memory of fallen ancestors, which, while likely less accurate would certainly be easier.
          It could be like psuedo ID but for monsters So it could improve as your characters level increased.

          Comment

          • Magnate
            Angband Devteam member
            • May 2007
            • 5110

            #6
            Originally posted by d_m
            I had assumed that it wouldn't be that hard to iterate over all the monster's possible attacks, calculate max damage, and then take the max of that. But it might be the case that monster power is a better indicator (and/or that it actually *is* hard to determine max dmg for monsters).

            The big difference between the two features has to do with resistance holes. If I have a pretty high level warrior lacking rPoison and I meet a greater basilisk for the first time, option #2 indicates that maybe I can take him, while option #1 would probably indicate running like hell.

            Which of those outcomes one prefers probably depends on one's temperment.
            Monster power assumes all resists covered. Personally I think this idea should be implemented as a single standard thing, i.e. not based on the character's current status. So using monster power would be consistent with this - and if you have resistance holes, you think twice before deciding to attack ...

            It also means I think the thing should be based on the char's max hp not current hp.
            Anyway, I will take a look at the damage calculation code again to see how hard it would be to figure out max damage for an attack; I will also try to figure out how to usefully correlate character power and monster power.
            Let us know what you come up with. The monster power code is in init1.c in a function called eval_r_power() (because r is historically the code label for monsters - hence r_info, r_ptr etc.).
            "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

            Comment

            • zaimoni
              Knight
              • Apr 2007
              • 590

              #7
              Originally posted by d_m
              I had assumed that it wouldn't be that hard to iterate over all the monster's possible attacks, calculate max damage, and then take the max of that. But it might be the case that monster power is a better indicator (and/or that it actually *is* hard to determine max dmg for monsters).
              Theoretical maximum damage is easy to calculate. Unfortunately, for anything with a nontrivial random distribution the probability of maximum damage with even 10d2 is pretty minimal.

              Zaiband 3.0.9 alpha has some changes in this direction: a "terrifying" monster attack generally can kill you in one player move if the attack is permitted.
              Zaiband: end the "I shouldn't have survived that" experience. V3.0.6 fork on Hg.
              Zaiband 3.0.10 ETA Mar. 7 2011 (Yes, schedule slipped. Latest testing indicates not enough assert() calls to allow release.)
              Z.C++: pre-alpha C/C++ compiler system (usable preprocessor). Also on Hg. Z.C++ 0.0.10 ETA December 31 2011

              Comment

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