Comment repasser des pourcentages aux fonctions affines dans Heroes of the Storm ?

Comment repasser des pourcentages aux fonctions affines dans Heroes of the Storm ?

Note de JudgeHype : L'article est écrit par Aurorus, dont vous pouvez retrouver les builds Heroes sur Heroes Builder. Vous pouvez télécharger l'article ci-dessous en 3 fichiers Word et Excel en cliquant ici.


Le 17 novembre lors de la mise à jour Cho'Gall, Blizzard nous a dit que désormais, chaque niveau gagné représente une progression de 4% pour les points de vie et 4% pour les dégâts à la place d'une fonction affine.

Sauf qu'à cause de cette nouvelle augmentation de 4% par niveau, il est très fréquent que le chiffre obtenu ne soit pas exact, ce qui veut dire qu'il faut l'arrondir. Sauf que Blizzard ne nous avait pas dit que les arrondis étaient fait de façon arbitraire. Comme exemple, j'ai pris le Blizzard de Jaina (désolé pour la multitude de Blizzard qui traîne).

La colonne "pourcentage" est celle calculée par le calculateur, dans laquelle il n'y a aucune erreur possible. La colonne "vraies valeurs" est la colonne dans laquelle j'ai relevé TOUTES les valeurs du Blizzard de Jaina en boutique. Voir le tableur Excel, la colonne "le pourcentage exact", "les vraies valeurs" et "Différence entre Le pourcentage exact et vraies valeurs".

Niveaux Pourcentage exact Vraies valeurs Fonction affine Différence entre les vraies valeurs et la fonction affine Différence entre les pourcentages exacts et les vraies valeurs
1 174 174 61 113 0
2 181 181 77 104 0
3 188 188 93 95 0
4 196 195 109 86 1
5 204 203 125 78 1
6 212 211 141 70 1
7 220 220 157 63 0
8 229 229 157 63 0
9 238 238 189 49 0
10 248 247 205 42 1
11 258 257 221 36 1
12 268 267 237 30 1
13 279 278 253 25 1
14 290 289 269 20 1
15 302 301 285 16 1
16 314 313 301 12 1
17 327 325 317 8 2
18 340 339 333 6 1
19 354 352 349 3 2
20 368 366 365 1 2
21 383 381 381 0 2
22 398 396 397 -1 2
23 414 412 413 -1 2
24 431 428 429 -1 3
25 448 446 445 1 2
26 466 463 461 2 3
27 485 482 477 5 3
28 504 501 493 8 3
29 524 521 509 12 3
30 545 542 525 17 3


Comme cette soustraction nous le confirme, il y a une différence entre les pourcentages exacts et les valeurs relevées en jeu, du à l'arrondi made in Blizzard. Par exemple, la valeur du niveau 6 du Blizzard de Jaina en pourcentage est exactement = 211.697605. Donc, si j'arrondis pour qu'il y ait 0 chiffre après la virgule (parce que dans le jeu il n'y a jamais de chiffre derrière une virgule), ça serait = 212, sauf que dans le jeu c'est = 211. L'explication peut venir du fait qu'il doivent toujours se rapprocher au maximum de la fonction affine de départ et de s'en éloigner au minimum.

Ce qui veut dire que même si les fonctions affines ont disparu, il reste une infime partie d'elles ! Car comme les chiffres nous le montre, la différence entre les "vraies valeurs" et "la fonction affine" se réduit jusqu'au niveau 20. Blizzard a considérablement changé l'early game mais pas du tout le late game, ce qui veut dire que les sorts enlèvent toujours autant de dégâts au niveau 20.

Voir le tableur Excel, colonne "différence entre les vraies valeurs et La fonction affine".

Donc maintenant vient le graphique détaillé du sort Blizzard de Jaina. Pourquoi ai-je choisi Jaina alors qu'on connait déjà ces fonctions et que seules celles de Lunara et Cho'Gall sont inconnues ? Car comme les fonctions de Jaina sont déjà affichées sur le net. Si ma méthode est juste, je devrais les retrouver, et ensuite appliquer la méthode sur Lunara et Cho'Gall.



On peut voir que les niveaux suivants le 20 sont très proches de l'ancienne fonction f(x) du blizzard de Jaina (même si j'admets que le graphique est assez imprécis). En d'autres termes, il suffit juste de récupérer le chiffre du niveau 20 et 21 pour obtenir deux équations !

f(20)=a*20+b=365 et f(21)=a*21+b=381

Sauf qu'il manque un chiffre... Il nous faut soit le a, soit le b... Et bien le a est (heureusement) très facilement trouvable, puisqu'il est égal à la différence du résultat de a=f(21)-f(20) <=>a=381-365=16

Maintenant on a tout pour résoudre cette équation.

16*20+b=365
b=365-(16*20)
b=365-320
b=45
f(x) de Blizzard =16x+45 est la VRAIE fonction de Blizzard, maintenant il ne me reste plus qu'à faire ça pour Lunara et Cho'Gall (c'est déjà fait), sauf qu'un problème se pose, les pourcentages ont 1 de marge d'erreur à chaque fois, donc il y a 2 fonctions possibles pour les héros, soit une fonction allant de 5 en 5 (ou plutôt appelée divisible par 5) ou une "libre".

Un exemple sera plus parlant : l'éclair de Givre de Jaina.

f(x)=15x+50 Cette fonction suivra la table de 5 peu importe le x, le résultat de la fonction sera un multiple de 5, sauf qu'avec les pourcentages arrondis de façon arbitraires, au niveau 20 l'éclair de givre enlève 351 points de vie (au lieu de 350 avec les fonctions affines) et au niveau 21 il enlève 365 (qui est le chiffre juste).

Donc si j'utilise ma méthode (genre je cherche la fonction f(x) de l'éclair de givre) je fais :

a=f(21)-f(20) <=> 365-351=14
b=f(20)-(a*20) <=> 351-(14*20)
351-280=71
Donc la fonction f(x)=14X+71 (au lieu de 15x+50 qui est la fonction exacte)

Voir le graphique de l'éclair de givre et les chiffres de l'éclair.

Faux éclair de givre Vrai éclair de givre Pourcentage de différence en %
85 65 31
99 80 24
113 95 19
127 110 15
141 125 13
155 140 11
169 155 9
183 170 8
197 185 6
211 200 6
225 215 5
239 230 4
253 245 3
267 260 3
281 275 2
295 290 2
309 305 1
323 320 1
337 335 1
351 350 0
365 365 0
379 380 0
393 395 -1
407 410 -1
421 425 -1
435 440 -1
449 445 -1
463 470 -1
477 485 -2
491 500 -2




On peut en conclure d'après les chiffres et les pourcentages, que la fausse formule est beaucoup plus "early game" c'est-à-dire qu'elle fait plus de dégâts en début de partie que la vraie fonction mais elle fait moins de dégâts que la vrai fonction en fin de partie. La question intéressante maintenant est de se demander si la vraie formule est toujours celle qui fait le moins de dégâts en early game.

Si la réponse était oui, alors la bonne formule serait toujours celle qui est le moins "early" mais ce n'est pas le cas hélas, c'est Rexxar qui nous le prouve avec son sort "Misha, charge !". Car au niveau 20 ce sort enlève 129 pv au lieu de 130, la (vraie) fonction étant 5x+30, or la fausse fonction serait égale à f(x)=6X+9.

Voir le graphique de Misha

Fausse Misha Vraie Misha
15 35
21 40
27 45
33 50
39 55
45 60
51 65
57 70
63 75
69 80
75 85
81 90
87 95
93 100
99 105
105 110
111 115
117 120
123 125
129 130
135 135
141 140
147 145
153 150
159 155
165 160
171 165
177 170
183 175
183 180




Comme le graphique nous le confirme, la courbe de la "vraie Misha" est la plus "early" donc on ne peut être sûr de rien ! Soit la fonction f(x) au niveau 20 est imprécise et elle est censée se terminer par 0 ou 5 ou elle est juste et se termine par 1 ou 9 comme le Blizzard de Jaina au niveau 21 nous le confirme. En conclusion, on ne peut jamais être sûr de sa fonction à 100% car il y aura 1 point en trop ou justement en moins ! La seule exception que j'ai vu c'est au niveau 21 de Jaina, pour lequel la différence est de 0. Ce qui signifie également que les 2 niveaux qui ont le moins de marge d'erreur sont le niveau 20 et 21.

En résumé :

Pour ceux qui n'ont rien compris, pour retrouver la fonction affine d'un sort d'un nouveau héros, vous relevez les dégâts fait par ce sort au niveau 20 et 21, car ce sont ces 2 niveaux qui ont la plus petite marge d'erreur. Vous appliquez :

f(21)-f(20)=a
b=f(20)-(a*20)
Et vous avez a et b et ainsi ax+b

Maintenant que vous avez (j'espère) compris, voici le document avec les fonctions de Lunara et Cho'Gall.

Mise à jour

Remplacer f(21) par f(24) donnera une fonction plus précise. De plus, il NE faut PAS que la fonction dépasse 3 de marge d'erreur avec les pourcentages d'origine.


Les Pourcentages et les Fonctions affines des héros de Heroes of the Storm !

Lunara
  • Fleurs Noctives = 15X+50 Ou 14x+71
  • Couronne d'Epines = 15X+60 Ou 14X+80
  • Frappe Bondissante = 22X+99 Ou 20X+140 ou 23x+79
  • Toxine Naturelle = 3X+10
  • Toxine Drainante = 2X-1
  • PV = 115X+550 OU 114X+571
  • Auto-attaque = 8X+37
  • Régénération PV = 0.23X+1.29

Cho
  • A = 5X
  • Z = 12X+54 et 24X+116 Ou 10X+94 ET 25X+95
  • E = 8X+40
  • R Marteau = 17X+36
  • R Tumulte = 4X+30
  • Auto-attaque = 13X+29
  • Régénération PV = 0.81X+1.44
  • PV = 381X+876 Ou 380X+900

Gall
  • A = 20X-10
  • Z = 20X-7
  • E = 25X+100 (au maximum de sa canalisation)
  • R Néant = 30X+150
  • R Salve = 9X+46 Ou 10X+25
  • Bouclier de l'effroi = 23X+101 Ou 25X+60

Légende
  • Celle qui a été arrondies à partir de f(21)-f(20)
  • Celle annoncées par le calculs de f(21)-f(20)
  • Celle qui n'a pas été annoncé par le calcul mais que je suis sûr
  • Fonction trouvée à partir de f(24)-f(20)/4 (qui est la plus précise)
Le plus étonnant dans ces fonctions, c'est que pour la première fois, certaines fonctions ont un b négatif. De plus, celles dont je suis sûr sont toujours des fonctions en rapport avec les points de vie du héros, les anciennes fonctions des points de vie des héros étaient TOUJOURS divisibles par 5. Les fonctions pour les auto-attaques en revanche, c'est plutôt l'inverse, dont celles énoncées par le calculs sont probablement les bonnes.

Aucun commentaire - [Poster un commentaire]
Il n'y a pas de commentaire. Soyez le premier à commenter cette page !

Poster un commentaire

Vous devez vous identifier pour poster un commentaire.
Nombre de visites sur l'accueil depuis la création du site Heroes of the Storm : 12.965.114 visites.
© Copyright 1998-2024 JudgeHype SRL. Reproduction totale ou partielle interdite sans l'autorisation de l'auteur. Politique de confidentialité.