Welcome to the Achaea Forums! Please be sure to read the Forum Rules.

SnB Limb Damage

ErnamErnam Member Posts: 2,416 ✭✭✭✭✭ - Grand Achaean

In a recent thread, interest in these (and other) equations was polled, and not surprisingly, was found to be in high demand.

As such, I would like to publicize the results, as they currently stand.  Please bear in mind that I have not yet released the SnB Manda update (as I have not yet confirmed that it is "perfect"), but I am currently working with at least one individual in beta testing and continued mathematical pursuit of confirmation of its accuracy, along with any fine-tuning, if required.

I won't feign humility here, but I won't exaggerate either.  I've put hundreds of hours into figuring out how to determine these equations, including determining the method in which Achaea itself stores and distributes limb damage. Each attack also takes a pretty massive amount of time for data collection and math crunching (so far every attack I've done this for has been a new process).  I won't get too far into this subject, but please simply be aware that these came at a massive time cost, and releasing this will almost certainly result in a massive actual cost (to me).  It simply does not seem right to me that if someone chooses not to use Manda, that they simply won't be able to reliably use a key part of combat (reliable limb breaks).

So, here's what I have so far:  

Disclaimer:
Everything in this thread is subjective, and not endorsed by IRE or stated to be based on the actual game code - it's simply observation based on data and various mathematical techniques).  It's permanently a work in progress, until such a time that IRE decides to confirm or release the equations themselves.

  • A character's limbs (all six being identical) have hit points.  The amount of hit points appears to be equal to the player's max HP.  (There are various modifications or alternatives to this assumption, many of which I have tested and ruled out)
  • Changes in max health do not change limb damage in any way, aside from impacting the amount of limb damage future attacks will do.
  • Limb damage does "roll over" level 1 breaks into preparation for level 2 breaks.  The limb HP for level 2 breaks appears to be identical.
  • It would appear that limb damage actually "adds" from zero, as opposed to subtracting from full health, based on several specific tests.  Alternatively (and inconsequentially) it may be a subtraction, if "missing" limb health is shifted down with changes in max health.  Limb breaks are determined on attacks, so this would actually allow "negative" limb HP (although I would assume it is actually limited to either 1 or 0).  Ex: A player with 5,000HP is 500 damage away from a break, and then reduces their health to 4,000HP.  The limb could be at either -500, 0, or perhaps 1 health, any of which would result in any limb damage attack breaking the limb when hit.  This has been confirmed experimentally.  (Interesting note:  If negative limb damage was not restricted, it would, in very extreme cases of max health shift and pre-existing limb damage, be possible to "jump" level 1 breaks directly to a level 2 break, barring the possibility that limb break function (in the game code) doesn't check for a level 1 break in order to register a level 2.)
  • All forms of limb damage appear to be stored in integer form, and various operations upon them are also either rounded or floored, which can create visible errors if not accounted for.  (Due to other equations in Achaea's code frequently using flooring, I suspect this is the case here as well, although limb damage code is very old.  Who knows.)
  • Nothing in the game appears to mitigate/reduce limb damage.  An attack either does full limb damage, or it does none at all.
  • (most) Limb damage equations are much like HP damage equations, in that they have multiple portions that scale differently with different factors.  However, not all equations (contrary to some rumors) share the same structure, nor do constants, coefficients, or much of anything else seem to be shared.  The only unifying detail appears to be that a portion of the damage scales with health, and the rest will not.
  • Weapon type does not appear to affect anything, just stats.

The Slice equation, in its current state (which I am still polishing due to developing an additional mathematical technique which allows for some very useful cross-referencing and far more precision):



Where:
d = weapon damage (multiplied by 1.30 if the weapon is a runeblade (!))
h = max health

I would say that I am currently 99.9% certain that this is the correct formula, and 97% certain that these are the correct values, due to the fact that it matches all data available over various weapon types (only longsword/broadsword for Slice), artefact levels, and hundreds of health values, while also remaining aesthetic (integers and perfect fractions).

note: I am currently assuming that limb damage is floored (decimal values are cut off to produce an integer) after the equation is evaluated (each hit).  This assumption yields perfectly accurate results (so far).

I am continuing to use several techniques and gathering additional data to verify that these constants aren't slightly off (although it'd almost seem malicious if 400 were something like 397), but even slight adjustments to any of these values yield dramatic shifts, particularly over repeated hits.




For those using or considering using Manda, know that you're losing nothing here - this'll all still be in the system, and nothing is changing.  There are also many features unique to the system that I believe make it very useful, beyond the fact that it houses many such equations, and will soon also support Tekura.

I hope this is helpful for people, and I also hope it helps to alleviate some other concerns.

"Our lives are not our own. We are bound to others, past and present. And by each crime and every kindness, we birth our future."


        Manda  |  Godzilla  |  SLC
      CooperAtalkezBluefHeroseNimAedinKenwayJarrodTahquilRangorKlendathuAldairJulesAdetPraxides

      Comments

      • ErnamErnam Member Posts: 2,416 ✭✭✭✭✭ - Grand Achaean

        Thank you, and a big thanks from me to the dozens of people who've endured sitting around for hours letting me break your limbs hundreds of times.  I can't remember the whole list, but @Deladan absorbed about half of them during Slice testing.

        "Our lives are not our own. We are bound to others, past and present. And by each crime and every kindness, we birth our future."


              Manda  |  Godzilla  |  SLC
          1. EldEld Member Posts: 3,946 @@ - Legendary Achaean
            Thanks for posting this! A couple notes/questions below based on my own recent testing with blademaster limb damage. I couldn't be bothered to figure out forum formatting, so I just added things in bold at the end of some of your points.

            Ernam said:

            In a recent thread, interest in these (and other) equations was polled, and not surprisingly, was found to be in high demand.

            As such, I would like to publicize the results, as they currently stand.  Please bear in mind that I have not yet released the SnB Manda update (as I have not yet confirmed that it is "perfect"), but I am currently working with at least one individual in beta testing and continued mathematical pursuit of confirmation of its accuracy, along with any fine-tuning, if required.

            I won't feign humility here, but I won't exaggerate either.  I've put hundreds of hours into figuring out how to determine these equations, including determining the method in which Achaea itself stores and distributes limb damage. Each attack also takes a pretty massive amount of time for data collection and math crunching (so far every attack I've done this for has been a new process).  I won't get too far into this subject, but please simply be aware that these came at a massive time cost, and releasing this will almost certainly result in a massive actual cost (to me).  It simply does not seem right to me that if someone chooses not to use Manda, that they simply won't be able to reliably use a key part of combat (reliable limb breaks).

            So, here's what I have so far:  

            Disclaimer:
            Everything in this thread is subjective, and not endorsed by IRE or stated to be based on the actual game code - it's simply observation based on data and various mathematical techniques).  It's permanently a work in progress, until such a time that IRE decides to confirm or release the equations themselves.

            • A character's limbs (all six being identical) have hit points.  The amount of hit points appears to be equal to the player's max HP.  (There are various modifications or alternatives to this assumption, many of which I have tested and ruled out)   Everything I've seen supports this.
            • Changes in max health do not change limb damage in any way, aside from impacting the amount of limb damage future attacks will do. Haven't actually tested this, but I'd be a bit surprised if it were otherwise. One thing to note on this is that, last I checked anyway (some time ago), if someone with damaged limbs loses enough max health that the current limb damage would be enough to break (if they're prepped in dragon and then lesserform, for example), Limbprobe will show a blank for that limb, which I've always assumed meant that the damage was over the threshold to break, but it wouldn't be checked for breaks until it was hit again.
            • Limb damage does "roll over" level 1 breaks into preparation for level 2 breaks.  The limb HP for level 2 breaks appears to be identical. 
            • It would appear that limb damage actually "adds" from zero, as opposed to subtracting from full health, based on several specific tests.  Alternatively (and inconsequentially) it may be a subtraction, if "missing" limb health is shifted down with changes in max health.  Limb breaks are determined on attacks, so this would actually allow "negative" limb HP (although I would assume it is actually limited to either 1 or 0).  Ex: A player with 5,000HP is 500 damage away from a break, and then reduces their health to 4,000HP.  The limb could be at either -500, 0, or perhaps 1 health, any of which would result in any limb damage attack breaking the limb when hit.  This has been confirmed experimentally.  (Interesting note:  If negative limb damage was not restricted, it would, in very extreme cases of max health shift and pre-existing limb damage, be possible to "jump" level 1 breaks directly to a level 2 break, barring the possibility that limb break function (in the game code) doesn't check for a level 1 break in order to register a level 2.)  
            • All forms of limb damage appear to be stored in integer form, and various operations upon them are also either rounded or floored, which can create visible errors if not accounted for.  (Due to other equations in Achaea's code frequently using flooring, I suspect this is the case here as well, although limb damage code is very old.  Who knows.) This is interesting. Everything that I've come up with for blademaster damage works best rounding everything with ceilings (but generally not quite perfectly, so I've been assuming I'm missing something in the rounding). I'd hoped to find a consistent rounding scheme that worked throughout at least most of the code, though I realize that may be wishful thinking. I am curious if you've seen any consistent patterns of which things are rounded and which floored, though.
            • Nothing in the game appears to mitigate/reduce limb damage.  An attack either does full limb damage, or it does none at all. 
            • (most) Limb damage equations are much like HP damage equations, in that they have multiple portions that scale differently with different factors.  However, not all equations (contrary to some rumors) share the same structure, nor do constants, coefficients, or much of anything else seem to be shared.  The only unifying detail appears to be that a portion of the damage scales with health, and the rest will not. Again, this is consistent with everything I've seen. I'm curious if you've seen evidence for non-linear health scalings anywhere, either for limb damage or regular damage.
            • Weapon type does not appear to affect anything, just stats.

            The Slice equation, in its current state (which I am still polishing due to developing an additional mathematical technique which allows for some very useful cross-referencing and far more precision):



            Where:
            d = weapon damage (multiplied by 1.30 if the weapon is a runeblade (!))
            h = max health

            Is the factor of 1.3 tied specifically to runeblades, or to laguz? Not that it makes a practical difference, just curious.

            I would say that I am currently 99.9% certain that this is the correct formula, and 97% certain that these are the correct values, due to the fact that it matches all data available over various weapon types (only longsword/broadsword for Slice), artefact levels, and hundreds of health values, while also remaining aesthetic (integers and perfect fractions).

            note: I am currently assuming that limb damage is floored (decimal values are cut off to produce an integer) after the equation is evaluated (each hit).  This assumption yields perfectly accurate results (so far).

            I am continuing to use several techniques and gathering additional data to verify that these constants aren't slightly off (although it'd almost seem malicious if 400 were something like 397), but even slight adjustments to any of these values yield dramatic shifts, particularly over repeated hits.




            For those using or considering using Manda, know that you're losing nothing here - this'll all still be in the system, and nothing is changing.  There are also many features unique to the system that I believe make it very useful, beyond the fact that it houses many such equations, and will soon also support Tekura.

            I hope this is helpful for people, and I also hope it helps to alleviate some other concerns.

          2. JacenJacen Member Posts: 2,202 @@ - Legendary Achaean
            The limb damage rollover is interesting, Penwize always told me it didn't rollover. 
            image
          3. NemutaurNemutaur GermanyMember Posts: 1,068 @ - Epic Achaean
            That roll over is interesting, was always annoying before.

            Also is this formula supposed to return hits needed given health and damage of the weapon? Because I get a number > 600 when I enter 8067 health which seems a bit off.
          4. AlaskarAlaskar Member Posts: 387 ✭✭✭ - Distinguished
            I assumed he meant that, at 8067 health, the limb has the same health. Meaning that each hit, with 140 damage stat, does 536 hp of limb damage. That equates to 15 hits, leaving 27 hp on that limb. (15 hits at 536 per hit = 8040 limb damage)

          5. BluefBluef DelosMember Posts: 2,176 @@ - Legendary Achaean
            Kudos to you for figuring this out and for posting it. Respect achievement has been unlocked!
          6. ErnamErnam Member Posts: 2,416 ✭✭✭✭✭ - Grand Achaean
            edited February 2015

            The concept of calculating hits to break, or "break points" is entirely outdated, and IMO should not be used, at all, ever.  In almost no cases does this account for any variables changing during a fight, where this method actually accounts for literally all of them changing any number of times.  This is crucial for classes (like Knight (all four specs), Blademaster, Monk) that have different limb damage attacks, or might use different weapons, or against an opponent whose max health changes during a fight.


            However:  Calculating breakpoints is extremely easy and perfectly accurate by solving for h by plugging in integers (n) into:

            h = dam(h)*n   ,       where: dam(h) is the limb damage equation for an attack.

            In english, this is solving for when n number of hits will exactly break a limb (without barely missing it, or doing any extra damage).  AKA a "break point".

            For example:

            plug in 12 (hits) into this with a stock longsword (119 damage), and you get: 4692, which is the "break point" for 12 to 13 Slices (a max health over this point would just barely not break the limb, anything under it would be "overkill").  This might seem like a great party trick, but in truth, it doesn't mean much, because the "break points" are different for every weapon, per every attack ability, and vary if runed (16 sets of break points just for Slice and Rend).

            I can't emphasize enough how unreliable using "break points" and "hit counts" are, though.  This was the entire reason I sat down to determine these equations in the first place.  Death to "thumb rules".

            "Our lives are not our own. We are bound to others, past and present. And by each crime and every kindness, we birth our future."


                  Manda  |  Godzilla  |  SLC
              1. ErnamErnam Member Posts: 2,416 ✭✭✭✭✭ - Grand Achaean
                edited February 2015
                Alaskar said:
                I assumed he meant that, at 8067 health, the limb has the same health. Meaning that each hit, with 140 damage stat, does 536 hp of limb damage. That equates to 15 hits, leaving 27 hp on that limb. (15 hits at 536 per hit = 8040 limb damage)

                This would require 16 hits to break (15 to prep) - (I got 535, floored).  

                One of the many things that Manda does that I consider unique is that it tracks the actual amount of limb damage done, completely ignoring how many "hits" have been landed.  It then outputs this in percentage form, while also displaying how much percentage damage your classes main attacks do (for instance, for BMs it shows: [ 12.1 | 16.9 ] to let you know that your mainslash will do 12.1% damage, your offslash will do 16.9%, and these numbers change on the fly if you change stance or weapons, or if your opponent's max health changes.  Their current damage is also displayed in percentage form, which also changes with their max health.

                "Can I use this to Aria/Jera/remove bracelet to befuddle a knight?"

                Yes.


                DISCLAIMER:
                My goal there wasn't to advertise, it was to demonstrate the proper use for these equations.  Proper limb damage tracking should be done in this manner, regardless of if you use Manda or build your own.

                "Our lives are not our own. We are bound to others, past and present. And by each crime and every kindness, we birth our future."


                      Manda  |  Godzilla  |  SLC
                  1. NemutaurNemutaur GermanyMember Posts: 1,068 @ - Epic Achaean
                    Alaskar said:
                    I assumed he meant that, at 8067 health, the limb has the same health. Meaning that each hit, with 140 damage stat, does 536 hp of limb damage. That equates to 15 hits, leaving 27 hp on that limb. (15 hits at 536 per hit = 8040 limb damage)
                    Oh, then the formula is off. 7755 health was 14 slices with a 130 damage longsword which is empowered. 
                  2. JacenJacen Member Posts: 2,202 @@ - Legendary Achaean
                    Ernam said:
                    Alaskar said:
                    I assumed he meant that, at 8067 health, the limb has the same health. Meaning that each hit, with 140 damage stat, does 536 hp of limb damage. That equates to 15 hits, leaving 27 hp on that limb. (15 hits at 536 per hit = 8040 limb damage)

                    This would require 16 hits to break (15 to prep) - (I got 535, floored).  

                    One of the many things that Manda does that I consider unique is that it tracks the actual amount of limb damage done, completely ignoring how many "hits" have been landed.  It then outputs this in percentage form, while also displaying how much percentage damage your classes main attacks do (for instance, for BMs it shows: [ 12.1 | 16.9 ] to let you know that your mainslash will do 12.1% damage, your offslash will do 16.9%, and these numbers change on the fly if you change stance or weapons, or if your opponent's max health changes.  Their current damage is also displayed in percentage form, which also changes with their max health.

                    "Can I use this to Aria/Jera/remove bracelet to befuddle a knight?"

                    Yes.


                    DISCLAIMER:
                    My goal there wasn't to advertise, it was to demonstrate the proper use for these equations.  Proper limb damage tracking should be done in this manner, regardless of if you use Manda or build your own.
                    The limbcounter that's been floating around the Lotus for several years (at least the 5 I've been playing) does exactly this. 
                    image
                  3. SenaSena Member Posts: 3,765 @@ - Legendary Achaean
                    Eld said:
                    One thing to note on this is that, last I checked anyway (some time ago), if someone with damaged limbs loses enough max health that the current limb damage would be enough to break (if they're prepped in dragon and then lesserform, for example), Limbprobe will show a blank for that limb, which I've always assumed meant that the damage was over the threshold to break, but it wouldn't be checked for breaks until it was hit again.
                    That can happen even from normal hits without changing health (or could a couple years ago), as seen here. That could possibly be caused by checking >= for limbprobe and > for actual breaks, so if the limb damage exactly equals limb health it would show a blank line (which, as you suggest, indicates it should already be broken).
                  4. EldEld Member Posts: 3,946 @@ - Legendary Achaean
                    Sena said:
                    Eld said:
                    One thing to note on this is that, last I checked anyway (some time ago), if someone with damaged limbs loses enough max health that the current limb damage would be enough to break (if they're prepped in dragon and then lesserform, for example), Limbprobe will show a blank for that limb, which I've always assumed meant that the damage was over the threshold to break, but it wouldn't be checked for breaks until it was hit again.
                    That can happen even from normal hits without changing health (or could a couple years ago), as seen here. That could possibly be caused by checking >= for limbprobe and > for actual breaks, so if the limb damage exactly equals limb health it would show a blank line (which, as you suggest, indicates it should already be broken).
                    Interesting, I'd forgotten about that. If you go with the assumption that each hit does an integer amount of damage, though, I don't see how you can get exactly 5137 damage out of 40 hits.
                  5. NimNim Member Posts: 2,015 @@ - Legendary Achaean
                    Limb health may not be the same as normal health. The easiest case that supports the above, for example, is that it's actually 125th that of health, and each hit did exactly one damage.

                    Also, it's out of 41 hits, not 40.

                    Can anyone confirm that limb damage is based on maximum health as opposed to some formula resulting from constitution and level that may, ultimately, allow two people with the same health values to have different limb health values?
                  6. SenaSena Member Posts: 3,765 @@ - Legendary Achaean
                    Nim said:
                    Limb health may not be the same as normal health. The easiest case that supports the above, for example, is that it's actually 125th that of health, and each hit did exactly one damage.

                    Also, it's out of 41 hits, not 40.
                    What I was suggesting was that maybe on the 40th hit (where it was blank), the limb damage was exactly equal to limb health (and limb breaks happen when limb damage is greater than limb health, but limbprobe checked greater than or equal to instead). There's no real evidence (as far as I know) that that's the case, it was just a guess at a possible cause.
                    Nim
                  7. NimNim Member Posts: 2,015 @@ - Legendary Achaean
                    Er... right.

                    Replace 125 with 128, and it still works, though, since floor(5137/128) = 40.

                    /32 also works, since floor(5137/32) = 160, a multiple of 40.

                    Still just conjecture, of course.
                  8. NimNim Member Posts: 2,015 @@ - Legendary Achaean
                    Side note: @Severian's pretty cool with standing there and taking a lot of hits, and has a ton of hit points to boot. With a dagger (Nim only has up to parrying in weaponry, and no proficiencies, so yeah), it took 217 hits to do a full break. Above formula totally wrong my dagger has 46 dmg why isn't this working (just kidding).

                    It went into barely on the first hit, which told me there was some limb damage, and apparently I was dealing some health damage too. Not a lot of either, obviously.

                    On the 80th hit, it went into lightly damaged. On the 132nd hit, it went into moderately. On the 174th, it went into heavily. Finally, on the 217th hit, it went into crippled (aka broken).

                    I'll do the math for that tomorrow, if @Eld or @Sena don't beat me to it, but I figured I'd share 1) an approach to getting highly granular values for sawbones, and 2) the actual data behind it. It could be useful for any limb trackers that want to use limbprobe to confirm state.
                  9. KlendathuKlendathu Eye of the StormMember Posts: 2,386 @@ - Legendary Achaean
                    I know this is an SnB thread, but I'd be happy to offer my services to test for bard. I've already started collecting data, but not an enormous amount as yet.

                    Tharos, the Announcer of Delos shouts, "It's near the end of the egghunt and I still haven't figured out how to pronounce Clean-dat-hoo."

                  10. ErnamErnam Member Posts: 2,416 ✭✭✭✭✭ - Grand Achaean
                    Nemutaur said:
                    Alaskar said:
                    I assumed he meant that, at 8067 health, the limb has the same health. Meaning that each hit, with 140 damage stat, does 536 hp of limb damage. That equates to 15 hits, leaving 27 hp on that limb. (15 hits at 536 per hit = 8040 limb damage)
                    Oh, then the formula is off. 7755 health was 14 slices with a 130 damage longsword which is empowered. 

                    Ayup, the laguz modifier seems to be off - I'm looking into it.

                    Interestingly, I believe the "base" equation might actually be for runed weapons (for balance purposes), with a modifier for not having the rune.  Will update when I have it locked down.  I suspect that this will eliminate the "oddness" of the 18/7 coefficient, if this is the case.

                    "Our lives are not our own. We are bound to others, past and present. And by each crime and every kindness, we birth our future."


                          Manda  |  Godzilla  |  SLC
                      1. NemutaurNemutaur GermanyMember Posts: 1,068 @ - Epic Achaean
                        Ernam said:
                        Nemutaur said:
                        Alaskar said:
                        I assumed he meant that, at 8067 health, the limb has the same health. Meaning that each hit, with 140 damage stat, does 536 hp of limb damage. That equates to 15 hits, leaving 27 hp on that limb. (15 hits at 536 per hit = 8040 limb damage)
                        Oh, then the formula is off. 7755 health was 14 slices with a 130 damage longsword which is empowered. 

                        Ayup, the laguz modifier seems to be off - I'm looking into it.

                        Interestingly, I believe the "base" equation might actually be for runed weapons (for balance purposes), with a modifier for not having the rune.  Will update when I have it locked down.  I suspect that this will eliminate the "oddness" of the 18/7 coefficient, if this is the case.
                        Cool. Thanks
                      2. ErnamErnam Member Posts: 2,416 ✭✭✭✭✭ - Grand Achaean
                        edited February 2015
                        Nemutaur said:
                        Ernam said:
                        Cool. Thanks
                        It would appear that the equation as provided works perfectly fine with Laguz, just with a flat 15% multiplier after the equation (no multiplier on weapon damage).  Will do some more in-depth testing to verify, but looks right at a glance.

                        Note that the 15% multiplier is for the actual limb damage equation, not the break point calculation.

                        "Our lives are not our own. We are bound to others, past and present. And by each crime and every kindness, we birth our future."


                              Manda  |  Godzilla  |  SLC
                          1. NimNim Member Posts: 2,015 @@ - Legendary Achaean
                            Nim said:
                            On the 80th hit, it went into lightly damaged. On the 132nd hit, it went into moderately. On the 174th, it went into heavily. Finally, on the 217th hit, it went into crippled (aka broken).
                            Slightly late, but my counts were off, I'd included three false positives from before hitting lightly damaged. It actually went 77/129/171/214.
                          Sign In to Comment.