IA de classe : recalibration Legion des huit classes restantes

Suite de la recalibration commencee par le mage. Meme methode : chaque valeur
a ete verifiee presente dans character_spell chez les bots de niveau 110 du
serveur, la base faisant foi plutot qu une documentation externe.

  Guerrier    12 constantes    Paladin      8
  Chaman      11               Priest       8
  Druide       9               Voleur       6
  Chasseur     5               Demoniste    3

Cas notable du guerrier : Frappe mortelle et Broyeur de colosse, le coeur de la
rotation Armes, n avaient aucune constante dans l IA. Deux constantes devenues
mortes ont ete repointees dessus.

Le chaman Restauration recupere toute sa panoplie de soins, qui etait
integralement inoperante : Vague de soins, Salve de soins, Chaine de soins,
Vague de rappel, Pluie de soins, Totem de maree de soins, Totem de lien
spirituel. C est la condition pour que les soigneurs de la horde du siege
tiennent leur role.

Le pretre Ombre retrouve Attaque mentale, Toucher vampirique, Eruption du Vide
et Forme d ombre ; le paladin Vindicte Lame de justice, Verdict du templier et
Tempete divine ; le druide Equilibre Courroux solaire, Frappe lunaire et
Poussee d etoiles, et le Gardien Fourrure de fer et Regeneration frenetique.

Total sur les neuf classes : 49 constantes recalibrees.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
SylvaniaCore deploy
2026-08-16 23:23:40 +02:00
parent b98cc56745
commit 0f880f0f9b
9 changed files with 206 additions and 62 deletions
@@ -22,6 +22,11 @@
void BotDruidAI::InitializeSpells()
{
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
DruidIDLE_AOEFerityWish = FindMaxRankSpellByExist(165754);
DruidStatus_Travel = FindMaxRankSpellByExist(783);
@@ -31,7 +36,7 @@ void BotDruidAI::InitializeSpells()
DruidStatus_Tree = FindMaxRankSpellByExist(33891);
DruidGuard_Sneak = FindMaxRankSpellByExist(5215);
DruidGuard_Harden = FindMaxRankSpellByExist(182872);
DruidGuard_Harden = FindMaxRankSpellByExist(192081); // Fourrure de fer
DruidGuard_Thorns = FindMaxRankSpellByExist(209334);
DruidGuard_AutoTwine = FindMaxRankSpellByExist(66071);
DruidGuard_Twine = FindMaxRankSpellByExist(339);
@@ -41,29 +46,29 @@ void BotDruidAI::InitializeSpells()
DruidAssist_PersonSpirit = FindMaxRankSpellByExist(770);
DruidAssist_BeastSpirit = FindMaxRankSpellByExist(16857);
DruidAssist_Active = FindMaxRankSpellByExist(6950);
DruidAssist_Active = FindMaxRankSpellByExist(194223); // Alignement celeste
DruidCast_Moonfire = FindMaxRankSpellByExist(65856);
DruidCast_Insect = FindMaxRankSpellByExist(65855);
DruidCast_Anger = FindMaxRankSpellByExist(65862);
DruidCast_Spark = FindMaxRankSpellByExist(98993);
DruidCast_Moonfire = FindMaxRankSpellByExist(194153); // Frappe lunaire
DruidCast_Insect = FindMaxRankSpellByExist(93402); // Feu solaire
DruidCast_Anger = FindMaxRankSpellByExist(190984); // Courroux solaire
DruidCast_Spark = FindMaxRankSpellByExist(78674); // Poussee d etoiles
DruidAOE_Hurricane = FindMaxRankSpellByExist(55881);
DruidAOE_Typhoon = FindMaxRankSpellByExist(51817);
DruidAOE_FallStar = FindMaxRankSpellByExist(100806);
DruidAOE_FallStar = FindMaxRankSpellByExist(191034); // Pluie d etoiles
DruidHeal_Nourishing = FindMaxRankSpellByExist(63556);
DruidHeal_Relife = FindMaxRankSpellByExist(774);
DruidHeal_Coalescence = FindMaxRankSpellByExist(66067);
DruidHeal_Touch = FindMaxRankSpellByExist(5185);
DruidHeal_LifeBurst = FindMaxRankSpellByExist(57763);
DruidHeal_LifeBurst = FindMaxRankSpellByExist(22842); // Regeneration frenetique
DruidHeal_MergerLife = FindMaxRankSpellByExist(18562);
DruidHeal_MomentHeal = FindMaxRankSpellByExist(127316);
DruidHeal_AOETranquility = FindMaxRankSpellByExist(740);
DruidHeal_AOEFerity = FindMaxRankSpellByExist(173170);
DruidCat_Stun = FindMaxRankSpellByExist(203123);
DruidCat_Stun = FindMaxRankSpellByExist(33917); // Mutilation, rotation Gardien
DruidCat_Bite = FindMaxRankSpellByExist(22568);
DruidCat_Roar = FindMaxRankSpellByExist(52610);
DruidCat_Separate = FindMaxRankSpellByExist(1943);
@@ -22,6 +22,11 @@
void BotHunterAI::InitializeSpells()
{
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
HunterIDLE_SummonPet = FindMaxRankSpellByExist(23498);// 883 ????
HunterIDLE_RevivePet = FindMaxRankSpellByExist(982);// 982 ????
HunterIDLE_ManaAura = FindMaxRankSpellByExist(210754);// 34074 ??????
@@ -47,26 +52,26 @@ void BotHunterAI::InitializeSpells()
uint32 HunterAssist_FalseDead = FindMaxRankSpellByExist(5384);// 5384 ??
uint32 HunterAssist_BackJump = FindMaxRankSpellByExist(781);// 781 ??
uint32 HunterAssist_FastSpeed = FindMaxRankSpellByExist(3045);// 3045 ????BUF
uint32 HunterAssist_ReadyCD = FindMaxRankSpellByExist(203551);// 23989 ????CD(???)
uint32 HunterAssist_ReadyCD = FindMaxRankSpellByExist(193530); // Aspect du sauvage// 23989 ????CD(???)
uint32 HunterMelee_BackRoot = FindMaxRankSpellByExist(116599);// 48999 ???????(???)
uint32 HunterMelee_NoDamage = FindMaxRankSpellByExist(31567);// 19263 ?? ????
uint32 HunterMelee_DecSpeed = FindMaxRankSpellByExist( 195645);// 2974 ?? ??????
uint32 HunterMelee_NextAtt = FindMaxRankSpellByExist(31566);// 48996 next??????
uint32 HunterMelee_MeleeAtt = FindMaxRankSpellByExist(190928);// 53339 ????
uint32 HunterMelee_MeleeAtt = FindMaxRankSpellByExist(120679); // Bete sauvage// 53339 ????
HunterDebug_Damage = FindMaxRankSpellByExist(160503);
HunterDebug_Mana = FindMaxRankSpellByExist(31407);
HunterDebug_Sleep = FindMaxRankSpellByExist(19386);
HunterShot_AOEShot = FindMaxRankSpellByExist(22908);
HunterShot_AOEShot = FindMaxRankSpellByExist(120360); // Barrage
HunterShot_CharmShot = FindMaxRankSpellByExist(23601);
HunterShot_Explode = FindMaxRankSpellByExist(15495);
HunterShot_Aim = FindMaxRankSpellByExist(48871);
HunterShot_Aim = FindMaxRankSpellByExist(34026); // Commandement de tuer
HunterShot_Silence = FindMaxRankSpellByExist(248919);
HunterShot_Shock = FindMaxRankSpellByExist(5116);
HunterShot_Cast = FindMaxRankSpellByExist(65867);
HunterShot_MgcShot = FindMaxRankSpellByExist(69989);
HunterShot_MgcShot = FindMaxRankSpellByExist(193455); // Tir de cobra
HunterShot_KillShot = FindMaxRankSpellByExist(69989);
HunterShot_MulShot = FindMaxRankSpellByExist(2643);
HunterShot_QMLShot = FindMaxRankSpellByExist(53209);
@@ -22,6 +22,11 @@
void BotPaladinAI::InitializeSpells()
{
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
PaladinIDLE_MountAura = FindMaxRankSpellByExist(225454);
PaladinIDLE_CastAura = FindMaxRankSpellByExist(81455);
PaladinIDLE_JudgeAura = FindMaxRankSpellByExist(8990);
@@ -35,7 +40,7 @@ void BotPaladinAI::InitializeSpells()
PaladinGuard_UnShield = FindMaxRankSpellByExist(29381);
PaladinGuard_FreeAura = FindMaxRankSpellByExist(1044);
PaladinGuard_Invincible = FindMaxRankSpellByExist(642);
PaladinGuard_Sacrifice = FindMaxRankSpellByExist(187190);
PaladinGuard_Sacrifice = FindMaxRankSpellByExist(184662); // Bouclier de vengeance
PaladinGuard_AOESacrifice = FindMaxRankSpellByExist(13903);
PaladinGuard_BlockShield = FindMaxRankSpellByExist(31904);
PaladinGuard_PhyImmune = FindMaxRankSpellByExist(66009);
@@ -48,28 +53,28 @@ void BotPaladinAI::InitializeSpells()
PaladinAssist_StunStamp = FindMaxRankSpellByExist(50907);
PaladinAssist_ComStamp = FindMaxRankSpellByExist(13903);
PaladinAssist_Confession = FindMaxRankSpellByExist(173315);
PaladinAssist_StunMace = FindMaxRankSpellByExist(66863);
PaladinAssist_StunMace = FindMaxRankSpellByExist(853); // Marteau de la justice
PaladinAssist_ReviveMana = FindMaxRankSpellByExist(173521);
PaladinAssist_HealCrit = FindMaxRankSpellByExist(210294);
PaladinAssist_LowMana = FindMaxRankSpellByExist(20271);
PaladinAssist_AuraUP = FindMaxRankSpellByExist(31821);
PaladinAssist_AuraUP = FindMaxRankSpellByExist(31884); // Colere vengeresse
PaladinAssist_Dispel = FindMaxRankSpellByExist(4987);
PaladinHeal_FastHoly = FindMaxRankSpellByExist(19750);
PaladinHeal_BigHoly = FindMaxRankSpellByExist(13952);
PaladinHeal_BigHoly = FindMaxRankSpellByExist(210191); // Verbe de gloire
PaladinHeal_FullHoly = FindMaxRankSpellByExist(9257);
PaladinMelee_AOEOffertory = FindMaxRankSpellByExist(251152);
PaladinMelee_AOEOffertory = FindMaxRankSpellByExist(26573); // Consecration
PaladinMelee_KillMace = FindMaxRankSpellByExist(37259);
PaladinMelee_FlyShield = FindMaxRankSpellByExist(31935);
PaladinMelee_ShieldAtt = FindMaxRankSpellByExist(53600);
PaladinMelee_MaceAtt = FindMaxRankSpellByExist(53595);
PaladinMelee_HolyAtt = FindMaxRankSpellByExist(25914);
PaladinMelee_MaceAtt = FindMaxRankSpellByExist(184575); // Lame de justice
PaladinMelee_HolyAtt = FindMaxRankSpellByExist(85256); // Verdict du templier
PaladinMelee_LifeJudge = FindMaxRankSpellByExist(31804);
PaladinMelee_ManaJudge = FindMaxRankSpellByExist(41368);
PaladinMelee_FleeJudge = FindMaxRankSpellByExist(201371);
PaladinMelee_WeaponAtt = FindMaxRankSpellByExist(213844);
PaladinMelee_HolyStrom = FindMaxRankSpellByExist(163888);
PaladinMelee_HolyStrom = FindMaxRankSpellByExist(53385); // Tempete divine
PaladinFlag_MomentHoly = 251152;
PaladinFlag_Discipline = 25771;
@@ -20,6 +20,11 @@
void BotPriestAI::InitializeSpells()
{
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
PriestIDLE_AllHardRes = FindMaxRankSpellByExist(43939);
PriestIDLE_HardRes = FindMaxRankSpellByExist(23948);
PriestIDLE_SoulFire = FindMaxRankSpellByExist(48168);
@@ -28,7 +33,7 @@ void BotPriestAI::InitializeSpells()
PriestIDLE_Bloodsucker = FindMaxRankSpellByExist(15286);
PriestIDLE_AllShadowRes = FindMaxRankSpellByExist(53915);
PriestIDLE_ShadowRes = FindMaxRankSpellByExist(53915);
PriestIDLE_ShadowStatus = FindMaxRankSpellByExist(16592);
PriestIDLE_ShadowStatus = FindMaxRankSpellByExist(232698); // Forme d ombre
PriestGuard_ShadowFear = FindMaxRankSpellByExist(34984);
PriestGuard_AOEFear = FindMaxRankSpellByExist(8122);
@@ -44,18 +49,18 @@ void BotPriestAI::InitializeSpells()
PriestAssist_AllDispel = FindMaxRankSpellByExist(4526);
PriestAssist_Dispel = FindMaxRankSpellByExist(528);
PriestAssist_ShadowDemon = FindMaxRankSpellByExist(10060);
PriestAssist_Silence = FindMaxRankSpellByExist(8988);
PriestAssist_Silence = FindMaxRankSpellByExist(15487); // Silence
PriestAssist_AllResMana = FindMaxRankSpellByExist(64843);
PriestAssist_AllResLife = FindMaxRankSpellByExist(64843);
PriestDebuf_Ache = FindMaxRankSpellByExist(11639);
PriestDebuf_Drown = FindMaxRankSpellByExist(41375);
PriestDebuf_Plague = FindMaxRankSpellByExist(138490);
PriestDebuf_Ache = FindMaxRankSpellByExist(589); // Mot de l ombre : douleur
PriestDebuf_Drown = FindMaxRankSpellByExist(32379); // Mot de l ombre : mort
PriestDebuf_Plague = FindMaxRankSpellByExist(228260); // Eruption du Vide
PriestAOE_ShadowExplode = FindMaxRankSpellByExist(138490);
PriestAOE_HolyNova = FindMaxRankSpellByExist(20694);
PriestShadow_ShadowTouch = FindMaxRankSpellByExist(18152);
PriestShadow_Knocking = FindMaxRankSpellByExist(17194);
PriestShadow_ShadowTouch = FindMaxRankSpellByExist(34914); // Toucher vampirique
PriestShadow_Knocking = FindMaxRankSpellByExist(8092); // Attaque mentale
PriestShadow_Lech = FindMaxRankSpellByExist(15407);
PriestHoly_Smite = FindMaxRankSpellByExist(585);
PriestHoly_BigFire = FindMaxRankSpellByExist(17141);
@@ -63,7 +68,7 @@ void BotPriestAI::InitializeSpells()
PriestHeal_LowHeal = FindMaxRankSpellByExist(8812);
PriestHeal_Resume = FindMaxRankSpellByExist(27606);
PriestHeal_FastHeal = FindMaxRankSpellByExist(27608);
PriestHeal_FastHeal = FindMaxRankSpellByExist(2061); // Soins rapides
PriestHeal_BigHeal = FindMaxRankSpellByExist(34119);
PriestHeal_LinkHeal = FindMaxRankSpellByExist(32546);
PriestHeal_UnionHeal = FindMaxRankSpellByExist(225275);
@@ -26,15 +26,20 @@
void BotRogueAI::InitializeSpells()
{
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
RogueGuard_Sneak = FindMaxRankSpellByExist(1784);
RogueGuard_ShadowCloak = FindMaxRankSpellByExist(31224);
RogueGuard_Disappear = FindMaxRankSpellByExist(1856);
RogueGuard_Dodge = FindMaxRankSpellByExist(248777);
RogueGuard_Dodge = FindMaxRankSpellByExist(5277); // Evasion
RogueGuard_Sprint = FindMaxRankSpellByExist(65864);
RogueSneak_Stick = FindMaxRankSpellByExist(30980);
RogueSneak_Premeditate = FindMaxRankSpellByExist(235777);
RogueSneak_Ambush = FindMaxRankSpellByExist(8676);
RogueSneak_Ambush = FindMaxRankSpellByExist(703); // Garrot
RogueSneak_Surprise = FindMaxRankSpellByExist(1833);
RogueAssist_ShadowDance = FindMaxRankSpellByExist(185313);
@@ -42,7 +47,7 @@ void BotRogueAI::InitializeSpells()
RogueAssist_ReadyCD = FindMaxRankSpellByExist(145426);
RogueAssist_Blind = FindMaxRankSpellByExist(2094);
RogueAssist_Disarm = FindMaxRankSpellByExist(236077);
RogueAssist_NextCrit = FindMaxRankSpellByExist(213981);
RogueAssist_NextCrit = FindMaxRankSpellByExist(79140); // Vendetta
RogueAssist_blood = FindMaxRankSpellByExist(60177);
RogueAssist_FastEnergy = FindMaxRankSpellByExist(13750);
RogueAssist_BlockCast = FindMaxRankSpellByExist(1766);
@@ -52,14 +57,14 @@ void BotRogueAI::InitializeSpells()
RogueAOE_Knife = FindMaxRankSpellByExist(51723);
RogueAOE_AllDance = FindMaxRankSpellByExist(51723);
RogueAttack_Blood = FindMaxRankSpellByExist(65954);
RogueAttack_Blood = FindMaxRankSpellByExist(1943); // Rupture
RogueAttack_Ghost = FindMaxRankSpellByExist(123437);
RogueAttack_Injure = FindMaxRankSpellByExist(31022);
RogueAttack_Injure = FindMaxRankSpellByExist(1329); // Mutilation
RogueAttack_PoisonAtt = FindMaxRankSpellByExist(76511);
RogueAttack_BackAtt = FindMaxRankSpellByExist(53);
RogueAttack_EvilAtt = FindMaxRankSpellByExist(1752);
RogueAttack_Damage = FindMaxRankSpellByExist(196819);
RogueAttack_Damage = FindMaxRankSpellByExist(32645); // Envenimer
RogueAttack_Separate = FindMaxRankSpellByExist(1079);
RogueAttack_Stun = FindMaxRankSpellByExist(408);
RogueAttack_PoisonDmg = FindMaxRankSpellByExist(145416);
@@ -21,6 +21,11 @@
void BotShamanAI::InitializeSpells()
{
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
ShamanIDLE_LifeWeapon = FindMaxRankSpellByExist(32911);
ShamanIDLE_IceWeapon = FindMaxRankSpellByExist(78273);
ShamanIDLE_FireWeapon = FindMaxRankSpellByExist(160098);
@@ -32,8 +37,8 @@ void BotShamanAI::InitializeSpells()
ShamanShield_Lightning = FindMaxRankSpellByExist(20545);
ShamanAssist_Frog = FindMaxRankSpellByExist(11641);
ShamanAssist_HealCrit = FindMaxRankSpellByExist(137531);
ShamanAssist_MomentHeal = FindMaxRankSpellByExist(127316);
ShamanAssist_HealCrit = FindMaxRankSpellByExist(73920); // Pluie de soins
ShamanAssist_MomentHeal = FindMaxRankSpellByExist(108280); // Totem de maree de soins
ShamanAssist_MomentCast = FindMaxRankSpellByExist(16166);
ShamanAssist_BlockCast = FindMaxRankSpellByExist(52870);
ShamanAssist_Cleansing = FindMaxRankSpellByExist(370);
@@ -41,25 +46,25 @@ void BotShamanAI::InitializeSpells()
ShamanAssist_Heroic = FindMaxRankSpellByExist(32182);
ShamanAtt_StormStrike = FindMaxRankSpellByExist(17364);
ShamanAtt_FireStrike = FindMaxRankSpellByExist(60103);
ShamanAtt_FireStrike = FindMaxRankSpellByExist(51505); // Explosion de lave
ShamanCast_LightningArrow = FindMaxRankSpellByExist(218013);
ShamanCast_LightningArrow = FindMaxRankSpellByExist(403); // Eclair
ShamanCast_LightningChain = FindMaxRankSpellByExist(190332);
ShamanCast_LightningStorm = FindMaxRankSpellByExist(71935);
ShamanCast_FireThud = FindMaxRankSpellByExist(23038);
ShamanCast_FireThud = FindMaxRankSpellByExist(188389); // Salve de flammes
ShamanCast_IceThud = FindMaxRankSpellByExist(22582);
ShamanCast_EarthThud = FindMaxRankSpellByExist(43305);
ShamanCast_FireStrike = FindMaxRankSpellByExist(58972);
ShamanHealth_Fast = FindMaxRankSpellByExist(71985);
ShamanHealth_Bast = FindMaxRankSpellByExist(253330);
ShamanHealth_Chain = FindMaxRankSpellByExist(237925);
ShamanHealth_Torrent = FindMaxRankSpellByExist(237920);
ShamanDispel_Refine = FindMaxRankSpellByExist(234893);
ShamanHealth_Fast = FindMaxRankSpellByExist(8004); // Salve de soins
ShamanHealth_Bast = FindMaxRankSpellByExist(77472); // Vague de soins
ShamanHealth_Chain = FindMaxRankSpellByExist(1064); // Chaine de soins
ShamanHealth_Torrent = FindMaxRankSpellByExist(61295); // Vague de rappel
ShamanDispel_Refine = FindMaxRankSpellByExist(77130); // Purification de l esprit
ShamanTotem_Recycle = FindMaxRankSpellByExist(5394);
ShamanTotem_Life = FindMaxRankSpellByExist(35199);
ShamanTotem_Life = FindMaxRankSpellByExist(98008); // Totem de lien spirituel
ShamanTotem_Mana = FindMaxRankSpellByExist(24854);
ShamanTotem_BMana = FindMaxRankSpellByExist(24854);
@@ -27,6 +27,11 @@
void BotWarlockAI::InitializeSpells()
{
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
WarlockIDLE_LowArmor = FindMaxRankSpellByExist(20798);
WarlockIDLE_Armor = FindMaxRankSpellByExist(13787);
WarlockIDLE_HighArmor = FindMaxRankSpellByExist(44520);
@@ -58,9 +63,9 @@ void BotWarlockAI::InitializeSpells()
WarlockAOE_MeleeFire = FindMaxRankSpellByExist(22539);
WarlockAOE_RainFire = FindMaxRankSpellByExist(16005);
WarlockAOE_ShadowRage = FindMaxRankSpellByExist(39082);
WarlockAOE_ShadowRage = FindMaxRankSpellByExist(198590); // Drain d ame
WarlockCurse_UpDmg = FindMaxRankSpellByExist(79956);
WarlockCurse_UpDmg = FindMaxRankSpellByExist(980); // Agonie
WarlockCurse_MoveLow = FindMaxRankSpellByExist(29539);
WarlockCurse_MgcDmg = FindMaxRankSpellByExist(14868);
WarlockCurse_MeleeLow = FindMaxRankSpellByExist(8552);
@@ -69,7 +74,7 @@ void BotWarlockAI::InitializeSpells()
WarlockDot_LeechSoul = FindMaxRankSpellByExist(48181);
WarlockDot_HighDmg = FindMaxRankSpellByExist(30108);
WarlockDot_LowDmg = FindMaxRankSpellByExist(172);
WarlockDot_AOEDmg = FindMaxRankSpellByExist(32863);
WarlockDot_AOEDmg = FindMaxRankSpellByExist(27243); // Semence de corruption
WarlockDot_Sacrifice = FindMaxRankSpellByExist(15505);
WarlockCast_ShadowArrow = FindMaxRankSpellByExist(9613);
@@ -103,12 +103,17 @@ bool BotWarriorAI::NeedWaitSpecialSpell(uint32 diff)
void BotWarriorAI::InitializeSpells()
{
WarriorIDLE_AOEAddLife = FindMaxRankSpellByExist(45517);
// SylvaniaCore: recalibration Legion. Les identifiants d origine dataient
// d une version bien anterieure du jeu et n existaient plus dans le livre de
// sorts des bots : la constante valait 0 et toute la branche etait sautee en
// silence. Valeurs verifiees presentes en base chez les bots de niveau 110.
WarriorIDLE_AOEAddLife = FindMaxRankSpellByExist(118038); // Mourir l arme a la main
WarriorIDLE_AOEAddPower = FindMaxRankSpellByExist(27578);
WarriorWeapon_Status = FindMaxRankSpellByExist(122990);
WarriorDefance_Status = FindMaxRankSpellByExist(71);
WarriorRage_Status = FindMaxRankSpellByExist(122989);
WarriorCommon_PowerAtt = FindMaxRankSpellByExist(25712);
WarriorCommon_PowerAtt = FindMaxRankSpellByExist(1464); // Salve
WarriorCommon_PowerThrow = FindMaxRankSpellByExist(57755);
WarriorCommon_PowerRelife = FindMaxRankSpellByExist(184364);
WarriorCommon_ClearCtrl = FindMaxRankSpellByExist(18499);
@@ -116,34 +121,34 @@ void BotWarriorAI::InitializeSpells()
WarriorCommon_SweepAtt = FindMaxRankSpellByExist(231833);
WarriorCommon_AddPower = FindMaxRankSpellByExist(173401);
WarriorCommon_AOEDecPower = FindMaxRankSpellByExist(27579);
WarriorDefance_HPojia = FindMaxRankSpellByExist(186688);
WarriorDefance_Fuchou = FindMaxRankSpellByExist(40392);
WarriorDefance_ShieldBlock = FindMaxRankSpellByExist(38031);
WarriorDefance_HPojia = FindMaxRankSpellByExist(190456); // Ignorer la douleur
WarriorDefance_Fuchou = FindMaxRankSpellByExist(6572); // Vengeance
WarriorDefance_ShieldBlock = FindMaxRankSpellByExist(2565); // Blocage
WarriorDefance_ShieldAtt = FindMaxRankSpellByExist(23922);
WarriorDefance_Pojia = FindMaxRankSpellByExist(25051);
WarriorDefance_MaxLife = FindMaxRankSpellByExist(12975);
WarriorDefance_ShiledWall = FindMaxRankSpellByExist(871);
WarriorDefance_Disarm = FindMaxRankSpellByExist(11879);
WarriorDefance_Support = FindMaxRankSpellByExist(41198);
WarriorDefance_Support = FindMaxRankSpellByExist(1160); // Cri demoralisant
WarriorDefance_Conk = FindMaxRankSpellByExist(22427);
WarriorDefance_AOEConk = FindMaxRankSpellByExist(46968);
WarriorDefance_AOEConk = FindMaxRankSpellByExist(6343); // Coup de tonnerre
WarriorWeaponDefance_AOEAtt = FindMaxRankSpellByExist(165749);
WarriorWeaponDefance_Bleed = FindMaxRankSpellByExist(43931);
WarriorWeaponDefance_SpellReflect = FindMaxRankSpellByExist(57643);
WarriorWeaponDefance_SpellReflect = FindMaxRankSpellByExist(23920); // Renvoi de sort
WarriorWeaponDefance_ShieldHit = FindMaxRankSpellByExist(149383);
WarriorWeapon_SwordStorm = FindMaxRankSpellByExist(9632);
WarriorWeapon_HighThrow = FindMaxRankSpellByExist(65940);
WarriorWeapon_HighThrow = FindMaxRankSpellByExist(167105); // Broyeur de colosse
WarriorWeapon_Charge = FindMaxRankSpellByExist(100);
WarriorWeapon_Suppress = FindMaxRankSpellByExist(7384);
WarriorWeapon_Backstorm = FindMaxRankSpellByExist(22857);
WarriorWeapon_DeadAtt = FindMaxRankSpellByExist(27580);
WarriorWeaponRage_FullKill = FindMaxRankSpellByExist(5308);
WarriorWeapon_DeadAtt = FindMaxRankSpellByExist(12294); // Frappe mortelle
WarriorWeaponRage_FullKill = FindMaxRankSpellByExist(163201); // Execution
WarriorWeaponRage_WinAttack = FindMaxRankSpellByExist(34428);
WarriorWeaponRage_Backfillet = FindMaxRankSpellByExist(1715);
WarriorRage_Harsh = FindMaxRankSpellByExist(12323);
WarriorRage_HeadAtt = FindMaxRankSpellByExist(6552);
WarriorRage_Intercept = FindMaxRankSpellByExist(20615);
WarriorRage_Whirlwind = FindMaxRankSpellByExist(12950);
WarriorRage_Whirlwind = FindMaxRankSpellByExist(1680); // Tourbillon
WarriorRage_Impertinency = FindMaxRankSpellByExist(13847);
WarriorRage_Needdead = FindMaxRankSpellByExist(199261);
WarriorRage_Bloodthirsty = FindMaxRankSpellByExist(39071);