Schadensberechnung

  • Für alle denen es noch nicht zu 100% klar war, kopiere ich den Thread aus dem HC Forum mal hier :) Ziemlich Interessant das ganze ;)


    1. Tooltip explanations.



    Swords : Average Physical Damage = (Minimum Physical Damage + Maximium Physical Damage) / 2
    Grey Shield : Might Defense
    Blue Flame : Average Magical Damage = (Minimum Magical Damage + Maximium Magical Damage) / 2
    Blue Shield : Magical Defense



    As I explained in the other topic, the % on the unit tooltip are wrong. the value on this tooltip is the good old Defense value for the unit and not the Damage Absorption % tha can be seen in the in-combat tooltip.


    The Damage Absorption can be calculated through the Defense - which I'll demonstrate later




    2. Damage calculation


    First, here comes the easy stuff. My Inferno army is fighting against several Imperial Griffons.



    My stack of Demented is going to hit the Griffins. The Demented's damage range is [465-931] and the Griffins Damage Absorption is 29%.


    Final Damage = Initial Damage Range * (1-(Damage Absorption / 100))
    Final Damage = [465-931] * 0.71
    Final Damage = [330.15 - 661.01]


    Which is rounded to the closest integer :


    Final Damage = [330 - 661]



    The same calculation is done with units having magic based attacks, except that we take the Magic Defense of the unit, instead of the Physical Defense.




    My Succubi attacking the same Griffin have a damage range of [649 - 1082] and the Griffins have a Magic Defense of 21%


    Final Damage = [649 - 1082] * (1-0.21) = [649 - 1082] * 0.79
    Final Damage = [512.71 - 854.78]


    Which is rounded to :
    Final Damage = [513 - 855]





    3. Calculation of a stack's initial damage.


    Basically, the stack's damage should be easy to calculate :


    Damage = Single Creature Damage * Number of creatures



    So, in my example, my 163 Succubi are each dealing [3 - 5] damage, so in total [163*3 - 163*5] = [489 - 815]


    Which is quite far from the [649 - 1082] above ! This is because my Succubi are lead by a Hero which has a certain Attack value that increases their damage.


    Let's see that now !



    For Succubi, it's my Hero's Magic Attack that increases their damage (12).


    Total Damage = Stack damage * Attack Hero Modifier


    Alexrom66 has determined the formula that enables to calculate the modifier with the Attack value.


    Hero modifier = ( 1 + ( Attack / 100)) ^ 2.5


    With a Magic Attack of 12 :


    Hero modifier = (1+(12/100))^ 2.5 = 1.12^2.5 = 1.3275...


    And thus :


    Total Damage = [489 - 815] * 1.3275 = [649.1475 - 1081.91] = [649 - 1082] !



    4. Attack and Damage % evolution.


    Here's a table of interesting values : For each Attack point brought by the Hero, you can see how much damage the unit will deal (considering that with 0 Attack, a stack does 100% damage)



    And that's how the progression looks like :



    Damage is slowly ramping up for each Attack point starting at +2.5% damage per Attack point.



    5. Defense value and Damage Absorption.


    Damage Absorption works in similar fashion, except that since damage absorption shouldn't ramp up, Alexrom66 determined that Black Hole is using the inverse function.


    Damage Absorption = 100 * ( 1 - Defense Modifier)


    Defense Modifier = 1 / (( 1 + (Total Defense / 100)) ^ 2.5)


    with Total Defense = Hero Defense + Unit Defense


    Let's take that stack of Griffins I was fighting earlier ...



    They have 15 Might Defense (remember, it's not a % on this tooltip !). since the Griffins are neutral, there's no hero to boost them.


    Total Defense = 15 + 0 = 15


    Defense Modifier = 1 / ((1+(15/100)) ^ 2.5) = 1 / (1.15^2.5) = 0.705107605...


    Damage Absorption = 100*(1-0.705107605) = 29.48 ~29%




    6. Defense and Damage evolution.


    Like before, here are interesting values to measure the evolution of Damage Absorption and Defense :



    And here you can see the evolution :


  • sehr schön, danke!


    kann mir ein "mathematiker" meinen ersten eindruck bestätigen, dass ein attack letztlich also genauso viel bringt wie im gegenzug ein defense? oder schlafwandel ich mal wieder durch die abgründe der kurveninterpretation? :)

  • Es tut sich nicht viel.
    Haben beide Helden 0 auf Angriff und Verteidigung ergibt sich ein schaden von 100%


    lvl 1 att vs lvl 1 deff
    102,52*98%=100,47%


    lvl10 att vs lvl10 deff
    126,91*79%=100,26%


    lvl50 att vs lvl50 deff
    275,57*36%=99,2%
    .
    .
    .

  • ahhhh, einfach mal schon längst beschriebene zahlen nehmen und gegenüber stellen.... kann man auch selber drauf kommen :) danke schön :)


    also isses 1:1, das is gut so. die tatsache, dass der eine mehr auf überleben steht und der andere auf wumms, is dann wieder eine ganz andere. ich persönliche finde ja, wer tot is tut mir nich mehr weh :)

  • Dann wage ich mich mal auf das mathematische Glatteis:
    da die Schadenskurve am Anfang etwas weniger steil ansteigt, als die Absorbtionskurve, führt mich das zu folgender Behauptung:


    Bei kleinen Werten von ATT und DEF ist es wirkungsvoller die DEF des Gegners zu senken - bei größeren ist es besser die ATT zu steigern.


    In Zahlen sieht das dann so aus:
    Lvl 10 ATT vs Lvl 10 DEF = 100.26% -so belegt es Sophitia.
    Steigere ich jetzt die ATT um 1 ergibt sich
    Lvl 11 ATT vs Lvl 10 DEF -> 129,81 * 79% = 102,55 was eine Schadensteigerung von 2,29 ergibt.
    Senke ich stattdessen die DEF um 1 ergibt sich
    Lvl 10 ATT vs Lvl 9 DEF -> 126,91 * 81% = 102,8 was eine Steigerung von 2,54 ist.


    Im Vergleich dazu beides auf Lvl 19:
    154,48 * 65% = 100,41
    ATT+1 ergibt:
    157,74 * 65 % = 102,53 also eine Steigerung um 2,12
    DEF -1 ergibt
    154,48 * 66% = 101,97 also eine Steigerung um 1,54


    Schaut man sich das für jedes ATT/DEF-Paar an, so sieht man - ab Lvl 13 lohnt es sich dann mehr, die ATT zu steigern - was logisch ist, da es sich ab da um 1% Schritte bei der Absorbtion handelt und nicht mehr um 2% Schritte.
    Klar ist es nie richtig viel, aber auf Lvl 19 macht es zum Beispiel 0,6 % aus und das kann bei entsprechend großen Zahlen ja schon einen Unterschied machen - zumal man dann wahrscheinlich die Lvl um mehrere Stufen anhebt bzw. senkt - dann wird der Effekt noch deutlicher.

  • wobei das alles eher überschaubare unterschiede bleiben :)


    und da h6 intern ja immer rundet, können da eigentlich evtl. auch kommazahlen hinterstecken, die eben diese von dir beschriebenen nachkommazahlen wieder genau egalisieren. und wenn nich machts wie gesagt den kohl auch nich sooo fett, man müsste erstma eh die wahl der qual haben so früh :)

  • Sorry, wenn ich das hier noch mal ausgrabe, aber ich versteh die Berechnung nicht so ganz:
    So weit ich das überblicke wird der Attack Wert einer Einheit gar nicht zur Berechnung benutzt, oder hab ich da was übersehen?
    Müsste das nicht eigentlich im Beispiel ganz am Anfang bei der Berechnung von "Initial Damage" zu den 12 Magic Attack des Helden zu einem Gesamtwert aufaddiert werden?
    Also 12 Attack vom Helden plus die 5 der Succubi selbst-> also 1,17^2,5=1,48 als Schadensmultiplikator. Dann würden allerdings die Screenshotwerte im Beispiel nicht mehr stimmen 8| . Ich bin verwirrt...

  • schöne Arbeit noobsta :thumbup:


    Ich habe aus der Anleitung die Formeln mal rausgeholt und zu einer Schadensformel zusammen gefasst, ist bisl länger, dafür kann man an ihr schnell sehen, wie welche Ableitung für den Gesamtschaden aussiehT:



    Die ganze Umformung lies sich leider nicht hier posten, er erkennt die Schrift nicht, darum tippe ich nur das Egebnis runter (schade um die 15min Arbeit...):


    Final Damage = UnitBaseDamage*StackSize* (1 + Heropower/100)^2,5 * (1-(1-(1/(1+(herodefense+unitdefense)/100)^2,5)))


    hab das auch nach Herodefense und Heropower abgeleitet. Ganz symetrisch ist es nicht.

  • Einfaches Aufaddieren von Angriffswerten des Helden und seiner Einheiten gibt es nicht. Statt dessen ergibt sich aus dem Angriffswert der Einheit in einer ersten Berechnung ein sogenannter "Stack Damage". Nun wird aus dem entsprechenden Angriffswert des Helden ein "Hero Modifier" berechnet. Und der Gesamtschaden den die Einheit dann anrichtet ist das Produkt aus "Stack Damage" und "Hero Modifier". :)


    Gruß


    J.B.

    "Wenn man sagt "Früher war ALLES besser!", dann stimmt das so nicht...ABER...früher war EINIGES besser und das wäre es auch heute noch, wenn man es nicht verpfuscht hätte!" (J. Malmsheimer)

  • Hallo J.B.
    Soweit ich das überblicke, ergibt sich der Stack Damage als Produkt aus der Anzahl der Kreaturen und deren Schaden (also geht hier der Attackwert der Kreatur schonmal nicht mit ein). Dann kommt noch der Attackwert des Helden hinzu. Bis dahin alles klar. Was ich aber nicht verstehe ist die Tatsache, dass der Attackwert der Kreatur selbst anscheinend überhaupt nirgends berücksichtigt wird.
    Der Held hat hier Magic Attack 12 und die Succubi selbst haben 5. Und genau diese 5 der Succubi taucht in der Berechnung gar nicht auf... Für was haben die Kreaturen denn dann überhaupt Attackwerte?

  • Hallo J.B.
    Soweit ich das überblicke, ergibt sich der Stack Damage als Produkt aus der Anzahl der Kreaturen und deren Schaden (also geht hier der Attackwert der Kreatur schonmal nicht mit ein). Dann kommt noch der Attackwert des Helden hinzu. Bis dahin alles klar. Was ich aber nicht verstehe ist die Tatsache, dass der Attackwert der Kreatur selbst anscheinend überhaupt nirgends berücksichtigt wird.
    Der Held hat hier Magic Attack 12 und die Succubi selbst haben 5. Und genau diese 5 der Succubi taucht in der Berechnung gar nicht auf...


    Die Sukkubi haben keinen Attack Wert.


    Die "5" ist der durchschnittliche Schaden ;)


    Der Durchschnittsschaden des Stack wäre also 5*Anzahl Sukkubi.
    Wenn die Abweichung +-1 wäre, wäre es also (4-6)*Anzahl Sukkubi mit einem Erwartungswert von 5*Anzahl Sukkubi

  • Jetzt kapier ichs langsam...
    Danke ahammers!
    Hab mich die ganze Zeit davon verwirren lassen, dass der Held die selben Symbole für seine might/magic Attackwerte verwendet, die bei den Kreaturen direkt für den Schaden stehen. Und weils das mit den Kreaturenattackerten bei den Vorgängerspielen auch immer gab (soweit ich mich erinnere auf jeden Fall) hat mich das echt total auf dem Schlauch stehen lassen...

  • hehe,


    ja, die "alte Systematik" von Heroes war Anfangs bei mir auch noch drin. Aber das legt sich. Ich kann das Fanhandbuch nur empfehlen, da wird praktisch ALLES erläutert.
    Denke, dass auch das Formelwerk von noobsta dort seinen Ursprung hat (ich hab meines dort her).

  • Hallo J.B.
    Soweit ich das überblicke, ergibt sich der Stack Damage als Produkt aus der Anzahl der Kreaturen und deren Schaden (also geht hier der Attackwert der Kreatur schonmal nicht mit ein). Dann kommt noch der Attackwert des Helden hinzu. Bis dahin alles klar. Was ich aber nicht verstehe ist die Tatsache, dass der Attackwert der Kreatur selbst anscheinend überhaupt nirgends berücksichtigt wird.
    Der Held hat hier Magic Attack 12 und die Succubi selbst haben 5. Und genau diese 5 der Succubi taucht in der Berechnung gar nicht auf... Für was haben die Kreaturen denn dann überhaupt Attackwerte?


    Da sich die Sache ja dank ahammers schon geklärt hat, noch kurz von mir folgender Zusatz: Ich hatte leider vergessen zu schreiben, dass der Angriffswert der Einheit quasi schon intern in die Berechnung des Schadeswertbereiches ("Goldene Schwerter"-Symbol ganz oben) eingeflossen ist. :)


    Gruß


    J.B.

    "Wenn man sagt "Früher war ALLES besser!", dann stimmt das so nicht...ABER...früher war EINIGES besser und das wäre es auch heute noch, wenn man es nicht verpfuscht hätte!" (J. Malmsheimer)

  • Dir natürlich auch vielen Dank für deine Mühe J.B.
    Habs nach deinem ersten Post nur noch nicht kapiert gehabt, aber jetzt passts!
    War einfach noch zu sehr in der alten Methodik drin und hab den Wald vor lauter Bäumen nicht gesehen...


    Gruß Chris

  • Zur Klarstellung:


    ALLE Kreaturen haben den Angriffswert 0 (Null).


    Zwotens: Die Screens, die den numerischen Verteidigungswert zeigen (6 und 5, ohne %) GIBT ES IN DER AKTUELLEN VERSION 1.1.1 NICHT! Sie liegen den Berechnungen des Widerstandswerts (Resistance) aber wie geschildert zugrunde.

  • Um das noch mal klar zu stellen und ich es nicht mag mich mit fremden Lohrbeeren geschmückt zu sehen, dieser Post wurde von einem User (Name ist mir gerade entfallen) auf HC gepostet worden und ist, wie dem Datum zu entnehmen ist, schon etwas älter. Ich empfehle eingehend, das aktuelle Fan-Manual zu laden, da gibst unter dem Punkt "Game Mechanics" ausführliche Anleitungen zum Thema Schaden und co.

  • Um das noch mal klar zu stellen und ich es nicht mag mich mit fremden Lohrbeeren geschmückt zu sehen, dieser Post wurde von einem User (Name ist mir gerade entfallen) auf HC gepostet worden und ist, wie dem Datum zu entnehmen ist, schon etwas älter. Ich empfehle eingehend, das aktuelle Fan-Manual zu laden, da gibst unter dem Punkt "Game Mechanics" ausführliche Anleitungen zum Thema Schaden und co.


    trotzdem hast du dir die Arbeit gemacht, das hier reinzustellen und zu formatieren. Dafür gebührt die auf jeden Fall ein dickes Lob! :bier:

  • Forum

    Hat das Thema geschlossen.