I will realse my first boss fight.
Tested with Djfredrick's fun repack
the name on the boss is "King Theramis" and the second boss i made has the name "Queen Elaine"
King Theramis
Phase one.
From 100&hp to 70%
He use Enrage,screem of the past and a spirit burst (Picture two)
Phase two.
From 70% to 45%
He use Spell reflect, Frenzy (that he will be the rest of the fight) and some other spells
Phase Three, well you will see what he will do.
Queen Elaine
Phase one 100% to 60%
She use a holy shield that will asorb 25000 dmg
and heal other mobs that are in range.
Phase two 60% to 25%
She still use Heal and Shield but she have gone over from Holy to Frost
so she use frost spells.
Phase three that phase you must see yourself.
two screensshots for you.
King Theramis
Queen Elaine
SQL:
Queen Elaine
Code:
insert into `creature_names` (`entry`, `name`, `subname`, `info_str`, `Flags1`, `type`, `family`, `rank`, `unk4`, `spelldataid`, `male_displayid`, `female_displayid`, `male_displayid2`, `female_displayid2`, `unknown_float1`, `unknown_float2`, `civilian`, `leader`)
values ('910821', "Queen Elaine", "Order Of Lordaeron", '', '0', '7', '0', '3', '0', '0', '24965', '0', '0', '0', '1', '1', '0', '0');
insert into `creature_proto` (`entry`, `minlevel`, `maxlevel`, `faction`, `minhealth`, `maxhealth`, `mana`, `scale`, `npcflags`, `attacktime`, `attacktype`, `mindamage`, `maxdamage`, `can_ranged`, `rangedattacktime`, `rangedmindamage`, `rangedmaxdamage`, `respawntime`, `armor`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `combat_reach`, `bounding_radius`, `auras`, `boss`, `money`, `invisibility_type`, `death_state`, `walk_speed`, `run_speed`, `fly_speed`, `extra_a9_flags`, `spell1`, `spell2`, `spell3`, `spell4`, `spell_flags`, `modImmunities`)
values ('910821', '80', '80', '14', '3372866', '3372866', '780000', '1', '0', '3000', '0', '4500', '6000', '0', '0', '0', '0', '0', '4500', '25', '25', '25', '25', '25', '25', '0', '0', "0", '1', '6000000', '0', '0', '2.50', '8.00', '14.00', '0', '0', '0', '0', '0', '0', '0');
LUA file:
Code:
function Queen_Elaine_OnCombat(Unit, Event)
Unit:SendChatMessage(11, 0, "Behold! Some brave champions have come... slaughter them!")
Unit:RegisterEvent("Queen_Elaine_phaseone",1000,0)
Unit:RegisterEvent("Queen_Elaine_reflectiveshield", 30000, 11)
Unit:RegisterEvent("Queen_Elaine_smite", 41000, 16)
Unit:RegisterEvent("Queen_Elaine_soulfaly", 67000, 11)
Unit:RegisterEvent("Queen_Elaine_disruption", 78000, 10)
Unit:RegisterEvent("Queen_Elaine_smite", 41000, 16)
Unit:RegisterEvent("Queen_Elaine_frostnova", 43000, 13)
Unit:RegisterEvent("Queen_Elaine_blizzard", 55000, 15)
Unit:RegisterEvent("Queen_Elaine_cohealing", 64000, 7)
Unit:RegisterEvent("Queen_Elaine_frostbolt", 63000, 18)
Unit:RegisterEvent("Queen_Elaine_frostblast", 47000, 15)
Unit:RegisterEvent("Queen_Elaine_soulfaly", 67000, 15)
Unit:RegisterEvent("Queen_Elaine_disruption", 78000, 12)
Unit:RegisterEvent("Queen_Elaine_flameburst", 80000, 11)
end
function Queen_Elaine_reflectiveshield(pUnit, Event)
pUnit:CastSpell(41475, pUnit:GetClosestPlayer())
end
function Queen_Elaine_smite(pUnit, Event)
pUnit:FullCastSpellOnTarget(41471, pUnit:GetRandomPlayer(0))
end
function Queen_Elaine_cohealing(pUnit, Event)
pUnit:CastSpell(41455, pUnit:GetClosestPlayer())
end
function Queen_Elaine_blizzard(pUnit, Event)
pUnit:FullCastSpellOnTarget(41482, pUnit:GetClosestPlayer(0))
end
function Queen_Elaine_frostnova(pUnit, Event)
pUnit:CastSpell(44177, pUnit:GetClosestPlayer())
end
function Queen_Elaine_soulfaly(pUnit, Event)
pUnit:FullCastSpellOnTarget(45442, pUnit:GetRandomPlayer(0))
end
function Queen_Elaine_frostblast(pUnit, Event)
pUnit:CastSpell(27808, pUnit:GetClosestPlayer())
end
function Queen_Elaine_frostbolt(pUnit, Event)
pUnit:FullCastSpellOnTarget(28478, pUnit:GetRandomPlayer(0))
end
function Queen_Elaine_disruption(pUnit, Event)
pUnit:CastSpell(29310, pUnit:GetRandomPlayer(4))
end
function Queen_Elaine_flameburst(pUnit, Event)
pUnit:CastSpell(41131, pUnit:GetRandomPlayer(7))
end
function Queen_Elaine_reflectiveshield(pUnit, Event)
pUnit:CastSpell(41475, pUnit:GetClosestPlayer())
end
function Queen_Elaine_smite(pUnit, Event)
pUnit:FullCastSpellOnTarget(41471, pUnit:GetRandomPlayer(0))
end
function Queen_Elaine_cohealing(pUnit, Event)
pUnit:CastSpell(41455, pUnit:GetClosestPlayer())
end
function Queen_Elaine_blizzard(pUnit, Event)
pUnit:FullCastSpellOnTarget(41482, pUnit:GetRandomPlayer(0))
end
function Queen_Elaine_flameburst(pUnit, Event)
pUnit:CastSpell(41131, pUnit:GetRandomPlayer(7))
end
function Queen_Elaine_phaseone(pUnit, Event)
if pUnit:GetHealthPct() < 100 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(41471)
pUnit:RegisterEvent("Queen_Elaine_reflectiveshield", 30000, 11)
pUnit:RegisterEvent("Queen_Elaine_smite", 41000, 16)
pUnit:RegisterEvent("Queen_Elaine_cohealing", 64000, 7)
pUnit:RegisterEvent("Queen_Elaine_phasetwo",1000,0)
end
end
function Queen_Elaine_phasetwo(pUnit, Event)
if pUnit:GetHealthPct() < 60 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(28478, 41482)
pUnit:RegisterEvent("Queen_Elaine_reflectiveshield", 30000, 11)
pUnit:RegisterEvent("Queen_Elaine_cohealing", 64000, 7)
pUnit:RegisterEvent("Queen_Elaine_blizzard", 55000, 15)
pUnit:RegisterEvent("Queen_Elaine_frostbolt", 63000, 18)
pUnit:RegisterEvent("Queen_Elaine_frostblast", 47000, 15)
pUnit:RegisterEvent("Queen_Elaine_phasethree",1000,0)
end
end
function Queen_Elaine_phasethree(pUnit, Event)
if pUnit:GetHealthPct() < 25 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(45442)
pUnit:RegisterEvent("Queen_Elaine_cohealing", 64000, 7)
pUnit:RegisterEvent("Queen_Elaine_reflectiveshield", 30000, 11)
pUnit:RegisterEvent("Queen_Elaine_frostnova", 43000, 13)
pUnit:RegisterEvent("Queen_Elaine_soulfaly", 67000, 11)
pUnit:RegisterEvent("Queen_Elaine_disruption", 78000, 10)
pUnit:RegisterEvent("Queen_Elaine_flameburst", 80000, 11)
end
end
function Queen_Elaine_OnLeaveCombat(Unit, Event)
Unit:RemoveEvents()
Unit:SendChatMessage(11, 0, "Thats Weak...")
end
function Queen_Elaine_OnDied(Unit, Event)
Unit:RemoveEvents()
Unit:SendChatMessage(12, 0, "Ah!! My King, I will wait for you in the next life.")
end
function Queen_Elaine_OnKilledTarget(Unit, Event)
Unit:SendChatMessage(11, 0, "Weak champions! surrender now and i maby will spare one life!")
end
RegisterUnitEvent(910821, 1, "Queen_Elaine_OnCombat")
RegisterUnitEvent(910821, 2, "Queen_Elaine_OnLeaveCombat")
RegisterUnitEvent(910821, 3, "Queen_Elaine_OnKilledTarget")
RegisterUnitEvent(910821, 4, "Queen_Elaine_OnDied")
King Theramis
SQL:
Code:
insert into `creature_names` (`entry`, `name`, `subname`, `info_str`, `Flags1`, `type`, `family`, `rank`, `unk4`, `spelldataid`, `male_displayid`, `female_displayid`, `male_displayid2`, `female_displayid2`, `unknown_float1`, `unknown_float2`, `civilian`, `leader`)
values ('910816', "King Theramis", "Order Of Lordaeron", '', '0', '7', '0', '3', '0', '0', ' 24949', '0', '0', '0', '1', '1', '0', '0');
insert into `creature_proto` (`entry`, `minlevel`, `maxlevel`, `faction`, `minhealth`, `maxhealth`, `mana`, `scale`, `npcflags`, `attacktime`, `attacktype`, `mindamage`, `maxdamage`, `can_ranged`, `rangedattacktime`, `rangedmindamage`, `rangedmaxdamage`, `respawntime`, `armor`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `combat_reach`, `bounding_radius`, `auras`, `boss`, `money`, `invisibility_type`, `death_state`, `walk_speed`, `run_speed`, `fly_speed`, `extra_a9_flags`, `spell1`, `spell2`, `spell3`, `spell4`, `spell_flags`, `modImmunities`)
values ('910816', '80', '80', '14', '4552500', '4552500', '6000', '1', '0', '2700', '0', '4000', '7000', '0', '0', '0', '0', '0', '7000', '20', '20', '20', '20', '20', '20', '0', '0', "0", '1', '4000000', '0', '0', '2.50', '8.00', '14.00', '0', '0', '0', '0', '0', '0', '0');
LUA:
Code:
function King_Theramis_OnCombat(Unit, Event)
Unit:SendChatMessage(12, 0, "To arms! kill the intruders!")
Unit:RegisterEvent("King_Theramis_phaseone",1000,0)
Unit:RegisterEvent("King_Theramis_enrage", 90000, 3)
Unit:RegisterEvent("King_Theramis_brust", 50000, 11)
Unit:RegisterEvent("King_Theramis_screem", 60000, 7)
Unit:RegisterEvent("King_Theramis_phasethree",1000,0)
Unit:RegisterEvent("King_Theramis_enrage", 90000, 4)
Unit:RegisterEvent("King_Theramis_phasetwo",1000,0)
Unit:RegisterEvent("King_Theramis_frenzy", 90000, 4)
Unit:RegisterEvent("King_Theramis_pound", 50000, 4)
Unit:RegisterEvent("King_Theramis_spellreflect", 300000, 3)
Unit:RegisterEvent("King_Theramis_flamecrash", 40000, 6)
Unit:RegisterEvent("King_Theramis_aura", 70000, 4)
Unit:RegisterEvent("King_Theramis_leap", 70000, 13)
Unit:RegisterEvent("King_Theramis_whirlwind", 90000, 7)
Unit:RegisterEvent("King_Theramis_blast", 90000, 8)
Unit:RegisterEvent("King_Theramis_wrath", 140000, 5)
end
function King_Theramis_aura(pUnit, Event)
pUnit:CastSpell(41541, pUnit:GetClosestPlayer())
end
function King_Theramis_leap(pUnit, Event)
pUnit:CastSpell(59689, pUnit:GetRandomPlayer(7))
end
function King_Theramis_enrage(pUnit, Event)
pUnit:CastSpell(48193, pUnit:GetRandomPlayer(0))
end
function King_Theramis_frenzy(pUnit, Event)
pUnit:CastSpell(28747, pUnit:GetRandomPlayer(0))
end
function King_Theramis_pound(pUnit, Event)
pUnit:CastSpell(53472, pUnit:GetClosestPlayer())
end
function King_Theramis_spellreflect(pUnit, Event)
pUnit:CastSpell(47981, pUnit:GetClosestPlayer())
end
function King_Theramis_flamecrash(pUnit, Event)
pUnit:CastSpell(40832, pUnit:GetClosestPlayer())
end
function King_Theramis_whirlwind(pUnit, Event)
pUnit:CastSpell(41057, pUnit:GetRandomPlayer(7))
end
function King_Theramis_blast(pUnit, Event)
pUnit:CastSpell(59700, pUnit:GetRandomPlayer(0))
end
function King_Theramis_burst(pUnit, Event)
pUnit:CastSpell(48529, pUnit:GetRandomPlayer(7))
end
function King_Theramis_screem(pUnit, Event)
pUnit:CastSpell(51750, pUnit:GetClosestPlayer())
end
function King_Theramis_leap(pUnit, Event)
pUnit:CastSpell(59689, pUnit:GetRandomPlayer(7))
end
function King_Theramis_blast(pUnit, Event)
pUnit:CastSpell(59700, pUnit:GetRandomPlayer(0))
end
function King_Theramis_spellreflect(pUnit, Event)
pUnit:CastSpell(47981, pUnit:GetClosestPlayer())
end
function King_Theramis_flamecrash(pUnit, Event)
pUnit:CastSpell(40832, pUnit:GetClosestPlayer())
end
function King_Theramis_wrath(pUnit, Event)
pUnit:CastSpell(57466, pUnit:GetRandomPlayer(7))
end
function King_Theramis_phaseone(pUnit, Event)
if pUnit:GetHealthPct() < 100 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(0)
pUnit:RegisterEvent("King_Theramis_screem", 60000, 7)
pUnit:RegisterEvent("King_Theramis_burst", 50000, 11)
pUnit:RegisterEvent("King_Theramis_enrage", 90000, 4)
pUnit:RegisterEvent("King_Theramis_phasetwo",1000,0)
end
end
function King_Theramis_phasetwo(pUnit, Event)
if pUnit:GetHealthPct() < 70 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(0)
pUnit:RegisterEvent("King_Theramis_spellreflect", 300000, 3)
pUnit:RegisterEvent("King_Theramis_frenzy", 90000, 6)
pUnit:RegisterEvent("King_Theramis_phasethree",1000,0)
pUnit:RegisterEvent("King_Theramis_pound", 50000, 6)
pUnit:RegisterEvent("King_Theramis_spellreflect", 300000, 3)
pUnit:RegisterEvent("King_Theramis_flamecrash", 40000, 13)
end
end
function King_Theramis_phasethree(pUnit, Event)
if pUnit:GetHealthPct() < 45 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(0)
pUnit:RegisterEvent("King_Theramis_aura", 70000, 4)
pUnit:RegisterEvent("King_Theramis_leap", 70000, 13)
pUnit:RegisterEvent("King_Theramis_whirlwind", 90000, 7)
pUnit:RegisterEvent("King_Theramis_wrath", 140000, 5)
end
end
function King_Theramis_OnLeaveCombat(Unit, Event)
Unit:RemoveEvents()
Unit:SendChatMessage(11, 0, "Weak...")
end
function King_Theramis_OnDied(Unit, Event)
Unit:RemoveEvents()
Unit:SendChatMessage(12, 0, "Aaah, my love! i will see you in the next life!")
end
function King_Theramis_OnKilledTarget(Unit, Event)
Unit:SendChatMessage(12, 0, "Don't be worry your friends will soon join you!")
end
RegisterUnitEvent(910816, 1, "King_Theramis_OnCombat")
RegisterUnitEvent(910816, 2, "King_Theramis_OnLeaveCombat")
RegisterUnitEvent(910816, 3, "King_Theramis_OnKilledTarget")
RegisterUnitEvent(910816, 4, "King_Theramis_OnDied")