Introduction du jeu

Damage Formula

GitHub du projet

Crédits et informations

MusicPlayer

Le TheoryCraft dans Honkai : Star Rail

Le TheoryCraft c'est quoi ?

Le TheoryCraft, est l'ensemble des méthodes utilisées pour déterminer les dégâts potentiels d'un ennemi ou d'un personnage. Nous allons ici nous intéresser au TheoryCraft dans le jeu Honkai: Star Rail. Je n'aborderai que la Damage Formula et non les autres paramètres qui gravitent autour tels que les breakpoints vitesse, le fonctionnement de l'action value, l'aléatoire, l'agro, etc...

La Damage Formula c'est quoi ? :

La Damage Formula que voici sous forme d'équation :

HSRDamageFormula

C'est une formule qui permet de calculer les dégâts. Elle est universelle au jeu et s'applique aux personnages comme aux ennemis. Nous allons voir comment elle est composée ainsi que son fonctionnement, avec des explications et des preuves à l'appui.

TheoryCraftHelper :

Pour faciliter les calculs, j'ai créé un outil, un calculateur pour être plus précis : Le TheoryCraftHelper.

Il a pour but de faciliter le TheoryCraft en calculant automatiquement les dégâts en suivant la Damage Formula. Chaque attribut de chaque case ainsi que leurs limites et leur fonctionnement sont expliqués ci-dessous.

Outgoing Damage :

  • Base Damage * Damage % Mutliplier* DEF Multiplier * RES Multiplier * DamageTakenMultiplier * Universal Damage Reduction Multiplier * Weaken Multiplier * CritMultiplier
  • Base Damage :

  • Base Damage = (SkillMultiplierColor + Extra Multiplier) * Scaling Attribute + Extra Damage)
    1. Skill Multiplier :
    2. C'est la valeur en pourcentage d'une compétence. Par exemple : 200 % de l'ATK.

    3. Extra Multiplier :
    4. C'est un multiplicateur qui apparaît rarement. Par exemple, avec l'ultime de Dang Heng sur les ennemis ralentis.

    5. Scaling Attribute :
    6. C'est l'attribut sur lequel cette compétence évolue. Le plus souvent, c'est l'ATK.

      Certaines compétences, comme celle de Blade par exemple, ont un scaling (PV% + ATK). Dans les cas où plusieurs attributs sont utilisés, c'est la somme totale qui est prise en compte.

    7. Extra Damage :
    8. Des dégâts fixes supplémentaires qui apparaissent sur certaines compétences.

    Damage % Mutliplier :

  • Damage % Mutliplier = (100% + Elemental Damage % + All Type Damage % + Dot Damage % + Other Damage %)
    1. Elemental Damage %:
    2. Ce sont tous les dégâts élémentaires du personnage. Exemple : 48,80 % de bonus de dégâts de glace.

    3. All Type Damage %
    4. Ce sont tous les bonus de dégâts qui ne sont ni des bonus de dégâts élémentaires ni des bonus de dégâts sur les DOTs. Exemple : La compétence de Bronya + 66 % de dégâts au niveau 10.

    5. DOT Damage %
    6. Bonus de dégâts sur les DOTs (Damage over time). Exemple : Le cône Nihilité 4 étoiles : Fermata.

    7. Other Damage % :
    8. Tous les bonus de dégâts qui ne peuvent pas être inclus précédemment.

    9. Note :
    10. Damage % Multiplier est une addition de tous les multiplicateurs, l'ordre des valeurs ne change pas la finalité.

    DEF Multiplier :

  • DEF = Base DEF * (100% + DEF% - (DEF Reduction + DEF Ignore)) + Flat DEF
    1. Base DEF :
    2. Base DEF est la défense des ennemis. Pour un ennemi normal, la formule est 200 + (10 * Niveau de l'ennemi). Pour certains ennemis comme les trotters, la formule est 300 + (15 * Niveau de l'ennemi).

    3. DEF % :
    4. DEF % fait partie de la DamageFormula mais n'est pas utilisée dans les calculs contre les ennemis.

    5. DEF Reduction % :
    6. DEF Reduction est la réduction totale de défense. Elle peut être déclenchée par plusieurs compétences et cônes de lumière. Exemple : L'ultime de Pela qui réduit la DEF de 40%.

    7. DEF Ignore % :
    8. DEF Ignore % est l'ignorance totale de la DEF, plus rare et différente à utiliser que la DEF Reduction %. Elle est par exemple déclenchée par le set en 4 pièces : Génie des étoiles.

    9. DEF Flat :
    10. DEF Flat existe dans la formule mais n'est pas utilisé contre les ennemis qui suivent déjà une formule pour leur Base DEF.

    Ensuite, on utilise cette formule qui donne le DEF Multiplier :

  • DEF Multiplier : = 100% - (DEF / (DEF + 200 + 10 * Niveau de l'attaquant))
    1. DEF :
    2. DEF qui a été calculé avec la première formule du DEF Multiplier.

    3. Attacker Level :
    4. Le niveau de l'attaquant. Exemple : 80

    RES Multiplier :

  • RES Multiplier = 100% - (RES% - RES PEN%)
    1. RES % :
    2. RES % de l'ennemi, ne peut avoir que 3 états :

      • Si l'ennemi est faible à l'élément de l'attaquant : RES % = 0%.
      • Si l'ennemi n'est pas faible à l'élément de l'attaquant : RES % = 20%.
      • Si l'ennemi est résistant à l'élément de l'attaquant : RES % = 40%.

      Note : Louve d'argent peut appliquer une faiblesse à l'ennemi et le rendre faible à cet élément.

      • Si l'ennemi est déjà faible à cet élément, RES % ne change pas.
      • Si l'ennemi n'a pas la faiblesse à cet élément et n'est pas résistant : RES % = 0%.
      • Si l'ennemi n'a pas la faiblesse et est résistant : RES % = 20%.

    3. RES PEN % :
    4. RES PEN % de l'attaquant, bonus rare qui apparaît par exemple chez Seele ou Ruan Mei.

    DamageTakenMultiplier :

  • DamageTakenMultiplier : = 100% + Elemental Damage Taken Multiplier % + All Type Damage Taken %
    1. Elemental Damage Taken Multiplier % :
    2. Bonus de dégâts élémentaires ou des DOTs reçus. Exemple : L'ultime de Sampo qui augmente les dégâts reçus des DOTs de 30%.

    3. All Type Damage Taken % :
    4. Bonus de dégâts général reçu. Exemple : L'ultime de Welt qui augmente les dégâts reçus de 12%.

    Universal Damage Reduction Multiplier :

  • Universal Damage Reduction Multiplier = 100% * (1 - DMG Reduction_1) * (1 - DMG Reduction_2) * etc...
  • Je vais faire simple car c'est rarement utilisé de manière complète :
    • Si l'ennemi est en état de rupture de faiblesse : Universal Damage Reduction Multiplier = 90%.
    • Si l'ennemi n'est pas en état de rupture de faiblesse : Universal Damage Reduction Multiplier = 100%.

    Weaken Multiplier :

  • Weaken Multiplier = 100% - Weaken%
  • Pour faire simple, on ne l'utilise pas.
  • Note : Dans le calculateur, on mettra simplement : 100.
  • CritMultiplier :

  • CritMultiplier = Crit ? (return 1 + (Crit Damage / 100)) : (return 1)
  • Calcul des dégâts :

    La théorie c'est bien, mais la pratique c'est mieux. J'ai expliqué la Damage Formula, maintenant on va l'appliquer. On l'appliquera avec 2 personnages en open-world. Nous testerons à chaque fois dans 2 scénarios différents. J'utiliserai le calculateur pour vous épargner de lire les calculs.

    1. Jingliu
    2. Dr.Ratio

    Jingliu :

    Présentation générale du kit utilisé :

    1. Attaque Normale : Niveau 6
    2. Inflige des dégâts de glace équivalents à 100% de l'ATK de Jingliu à un seul ennemi.

    3. Compétence : Niveau 10
    4. Inflige des dégâts de glace équivalents à 200% de l'ATK de Jingliu à un seul ennemi et obtient 1 stack de Syzygie.

    5. Compétence renforcée : Niveau 10
    6. Inflige des dégâts de glace équivalents à 250% de l'ATK de Jingliu à un seul ennemi et des dégâts de glace équivalents à 125% de l'ATK de Jingliu aux ennemis adjacents. Cette capacité utilise un stack de Syzygie et ne consomme pas de points de compétences.

    7. Ultime : Niveau 10
    8. Inflige des dégâts de glace équivalents à 300% de l'ATK à un seul ennemi et 150% de l'ATK aux ennemis adjacents. Gagne 1 stack de Syzygie à la fin de l'ultime.

    9. Talent : Niveau 10
    10. Quand Jingliu atteint 2 stacks de Syzygie, elle entre immédiatement en état de Migration spectrale. Son action est avancée de 100% et son taux critique augmente de 50%. Elle ne peut utiliser que sa compétence renforcée. À chaque fois qu'elle attaque dans cet état, elle consomme les PV des autres personnages équivalents à 4% de leurs PV max (ne peut pas réduire les PV des alliés à moins de 1). L'attaque de Jingliu augmente du total de 540% des PV consommés, l'augmentation d'ATK est limitée à 180% de son ATK de base. Une fois que les stacks de syzygie tombent à 0, elle quitte cet état.

    11. Technique :
    12. Après avoir utilisé sa technique, une dimension autour du personnage déployé est créée. Cette dimension gèle les ennemis qui y sont présents. À l'engagement du combat, Jingliu régénère 15 points d'énergie et gagne immédiatement 1 stack de Syzygie. Les ennemis ont 100% de chances d'être gelés pendant 1 tour et subissent immédiatement des dégâts de glace équivalents à 80% de l'ATK de Jingliu. Une seule dimension peut exister à la fois.

    13. Eidolon 1 :
    14. Quand Jingliu utilise son ultime ou sa compétence renforcée, elle gagne 24% de dégâts critiques pendant 1 tour. Si un seul ennemi est attaqué, il recevra des dégâts additionnels équivalents à 100% de l'ATK de Jingliu.

    15. Eidolon 2 :
    16. Après avoir utilisé son ultime, augmente les dégâts de sa prochaine compétence renforcée de 80%.

    17. Cône de lumière :
    18. Augmente les dégâts critiques du porteur de 20%. Quand un allié est attaqué ou perd des PV, le porteur gagne 1 stack d'éclipse jusqu'à un maximum de 3 stacks. Quand le porteur attaque, tous les stacks sont consommés. Chaque stack utilisé augmente les dégâts de 14%. Si lors de l'attaque 3 stacks sont consommés, le porteur ignore 12% de la DEF.

      Et en ce qui concerne le build du personnage, cela nous donne ça : Build Jingliu

      Pour voir les statistiques complètes du personnage à l'heure actuelle, cliquez ici.

    Calculs :

    Jingliu :

    1. Première ennemi : Engeance de givre
    2. Il est niveau 76
    3. Il est résistant à la glace.
    4. Pela a infligé un débuff qui réduit sa def de 14%.
    5. Passons au calcul :

      Jingliu est niveau 80, elle a 2218 d'ATK et sa compétence inflige des dégats de glace équivalents à 200% de l'ATK. Elle a 58,80% de bonus de dégats. Elle n'a pas d'autres bonus.

      Ce qui donne :

      JingliuFirstCalculationInTHCHelper JingliuFirstCalculatinInGame

    6. Second ennemi : Roi de l'essaim
    7. Il est niveau 82
    8. Il est faible à la glace.
    9. Pela a infligé des débuff qui ont réduit sa def de 54% et sa RES a la glace de 12%.
    10. Jingliu est niveau 80, elle a 2911 d'ATK et sa compétence inflige des dégats de glace équivalents à 200% de l'ATK. Elle a 166,80% de bonus de dégats. Elle a 301,7% de DGT CRIT, elle n'a pas d'autres bonus.

      JingliuFirstCalculationInTHCHelper
      JingliuFirstCalculatinInGame

    Dr.Ratio :

    Présentation général du kit utilisé :

    1. Attaque Normale : Niveau 1
    2. Inflige des dégâts imaginaires équivalents à 50% de l'ATK de Dr.Ratio à un seul ennemi.

    3. Compétence : Niveau 9
    4. Inflige des dégâts imaginaires équivalents à 140% de l'ATK de Dr.Ratio à un seul ennemi.

    5. Ultime : Niveau 10
    6. Inflige des dégâts imaginaires équivalents à 240% de l'ATK à un seul ennemi. Applique Folie du sage pour 2 utilisations. Quand un personnage (hors Dr.Ratio) attaque un ennemi avec Folie du sage, déclenche immédiatement l'attaque de suivi de Dr.Ratio.

    7. Talent : Niveau 10
    8. Dr.Ratio a de base 40% de chances de déclencher une attaque de suivi lorsqu'il utilise sa compétence sur un ennemi qui inflige des dégâts imaginaires équivalents à 270% de son ATK. Les chances de déclencher cette attaque de suivi augmentent de 20% par malus que la cible possède.

    9. Technique :
    10. Après avoir utilisé sa technique, une statue de ratio est créée qui provoque les ennemis. Lors de l'engagement du combat, il y a 100% de chances de base de réduire la vitesse des ennemis de 15% pendant 2 tours. Une seule dimension peut exister à la fois.

      Et en ce qui concerne le build du personnage, cela nous donne ça : Build Dr.Ratio

      Pour voir les statistiques complètes du personnage à l'heure actuelle, voir ici.

    Calculs :

    Dr.Ratio :

  • Premier ennemi : PorteFoudre
  • Il est niveau 70
  • Il est faible à l'imaginaire.
  • Pela a infligé un débuff qui réduit sa DEF de 14%.
  • Passons au calcul :

    Dr.Ratio est niveau 80, il a 2996 d'ATK et sa compétence inflige des dégâts imaginaires équivalents à 140% de l'ATK. Il a 48,80% de bonus de dégâts. Il gagne 5% de DGT CRIT.

    Ce qui donne :

    Dr.RatioFirstCalculationInTHCHelper Dr.RatioFirstCalculationInGame

  • Deuxième ennemi : PorteFoudre
  • Il est niveau 70
  • Il est faible à l'imaginaire.
  • Pela et Dr.Ratio ont infligé des débuffs qui réduisent sa DEF de 54%, sa RES à la glace de 12% et sa vitesse de 15%.
  • Dr.Ratio est niveau 80, il a 3743 d'ATK et sa compétence inflige des dégâts imaginaires équivalents à 240% de l'ATK. Il a 161,80% de bonus de dégâts.

    Ce qui donne :

    Dr.RatioSecondCalculationInTHCHelper Dr.RatioSecondCalculatinInGame

    Note Spéciale sur le TheoryCraftHelper :

    Différence de dégâts :

    J'ai effectué les calculs en utilisant les valeurs montrées en jeu. Cependant, ces valeurs sont arrondies, ce qui fausse légèrement les dégâts lors de calculs importants. De plus, bien que le TheoryCraftHelper et Honkai : Star Rail aient été créés avec le même langage de programmation et le même outil (C# avec Unity), je n'ai pas accès au code source du jeu seulement des suppositions. Cela peut poser problème sur certains détails, comme le niveau de précision des variables utilisées par Honkai : Star Rail, qui pourrait être différent de celui que j'ai utilisé pour créer cet outil.

    Ces erreurs rendent-elles le TheoryCraftHelper inutilisable ? :

    Non, lors des tests que j'ai menés sur des calculs en Mémoires oubliées sur des combats à 10 tours, le TheoryCraftHelper n'a montré qu'une différence d'environ 1% entre ses prédictions et les dégâts en jeu. Certes, il n'est pas aussi précis que le jeu, mais il reste un outil qui facilite le calcul des dégâts.

    TheoryCraft

    Et pour essayer d'ouvrir le TheoryCraft au plus grand nombre de personnes et grâce à l'existence de Unity WebGL, vous pouvez l'essayer directement sur cette page.

    Pour avoir accès aux projets GitHub de ce calculateur, cliquez ici.

    ← Première Page

    © Honoré.fr 2024