Idea: Log block percentages

The game records a table of counts such as:

---------------------------+-------+-------+-------+-------+-------++-------
  Melee: Mace              |    93 |   139 |   250 |       |       ||   482
         Morningstar       |       |       |   161 |   928 |   329 ||  1418
 Invoke: Recite            |       |     5 |    17 |    36 |     6 ||    64
         Donate Gold       |       |     3 |     1 |       |       ||     4
         Vitalisation      |       |       |       |     4 |     1 ||     5
  Evoke: Phantom mirror    |       |       |       |     1 |       ||     1
         Phial of floods   |       |       |       |       |     1 ||     1
    Use: Scroll            |     1 |    10 |    13 |     2 |     2 ||    28
         Potion            |       |       |     3 |     3 |     1 ||     7
   Stab: Confused          |       |     1 |     1 |    10 |     2 ||    14
         Sleeping          |       |     1 |       |       |       ||     1
         Invisible         |       |       |     1 |     5 |       ||     6
         Paralysed         |       |       |       |    10 |    13 ||    23
         Fleeing           |       |       |       |       |     1 ||     1
 Armour: Robe              |    28 |    56 |    59 |       |       ||   143
         Chain mail        |       |       |   152 |       |       ||   152
         Plate armour      |       |       |   103 |   616 |   191 ||   910
  Dodge: Dodged            |    58 |    94 |   165 |   482 |   151 ||   950
         Repelled          |       |       |     2 |     6 |     1 ||     9
  Block: Buckler           |    22 |    49 |   162 |   100 |       ||   333
         Kite shield       |       |       |       |   399 |   157 ||   556

I’m mostly interested in these lines:

 Armour: Robe              |    28 |    56 |    59 |       |       ||   143
         Chain mail        |       |       |   152 |       |       ||   152
         Plate armour      |       |       |   103 |   616 |   191 ||   910
  Dodge: Dodged            |    58 |    94 |   165 |   482 |   151 ||   950
         Repelled          |       |       |     2 |     6 |     1 ||     9

The armour counts are the number of times armour blocked all damage, and the dodge counts are the number of times dodging avoided all damage. (You can block part of the damage with AC, but you can’t dodge part of the damage, it’s all or nothing.)

I want to know what percentage of attacks I have dodged. I know that I dodged 950 times, but I don’t now how many times I was attacked.

I also want to know how effective my Armour was. How much did my armor contribute to my survival? I know I fully blocked about 1200 times (the sum of the 3 armour counts), but again, I don’t know how many times I was attacked, and I don’t know anything about my armour partially blocking damage.

I propose a few new counts to track. Blocks of 0%-20% damage, blocks of 20%-40% damage, blocks of 40%-60% damage, etc.

Basically, I want a histogram showing how effective my AC / blocks were. This histogram would tell me the total number of times I have been attacked, and also give me a breakdown of how effective my armour is and how much it’s contributing to my survival.

Does that make sense? Would this be hard to add?

EDIT:

Or maybe instead of logging the armour block amount per armour type, just log the amount of damage taken. Make a histogram of damage received events, such as “damage received (1-10)”, “damage received (11-20)”, “damage received (21-30)”, etc.

This would be enough to fill in the gaps. We would know how many monster attacks are fully blocked (0 damage), how many are dodged (0 damage), how many deal damage and roughly what that damage is.

2 Thanks

Wait a second, the Armour table tracks only fully mitigated hits? Have I been reading this part wrong for years? Damn.

1 Thank

Yeah that was news to me too.

The consensus on Discord was that it only tracked full blocks. This is the source code:

1 Thank

Yeah, elliptic’s is quick on the draw though. It’s been changed already :).