In this thread i thought we - the emu people of mmowned - could contribute with some instance and raid fixes.
Even if you dont know any C++ you're able to help.
I will be posting anything i fix in this thread aswell as if other people post fixes.
Things that im aiming that we're gonna fix:
Code:
Correct Boss speech
Correct Spells Used
etc.
So if you dont know C++ then just confirm that we've spelled everything correctly or maybe used the correct spell.
Arcatraz
Code:
Index: Instance_Arcatraz.cpp
===================================================================
--- Instance_Arcatraz.cpp (revision 1353)
+++ Instance_Arcatraz.cpp (working copy)
@@ -32,8 +32,8 @@
#define SEED_OF_C 36123 //32865, 36123
#define SHADOW_NOVA 36127 // 30533, 39005, 36127 (normal mode), 39005 (heroic mode?)
#define SHADOW_NOVA_H 39005
-#define CONSUMPTION 30498
-#define CONSUMPTION_H 39004
+//#define CONSUMPTION 30498 //WoW-Wiki says he doesnt cast any of these.
+//#define CONSUMPTION_H 39004
// #define VOID_ZONE 36119 // DBC: 36119; it's not fully functionl without additional core support (for dmg and random place targeting).
class ZerekethAI : public MoonScriptBossAI
@@ -94,7 +94,7 @@
_unit->PlaySoundToSet(11253);
break;
case 1:
- _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Darkness... consumes all.");
+ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Darkness...consumes...all.");
_unit->PlaySoundToSet(11254);
break;
}
@@ -173,12 +173,6 @@
void AIUpdate()
{
- // M4ksiu: I'm not sure if it should be cast once, on start
- uint32 SpellId = CONSUMPTION;
- if ( IsHeroic() )
- SpellId = CONSUMPTION_H;
-
- _unit->CastSpell( _unit, SpellId, true );
RemoveAIUpdateEvent();
};
};
@@ -207,15 +201,15 @@
WhirlTemp->AddEmote("I'll cut you to peices!", Text_Yell, 11090);
SpellDesc *HealTemp = AddSpell(HEAL, Target_Self, 8.0f, 0, -1);
- HealTemp->AddEmote("That is much better.", Text_Yell, 11091);
- HealTemp->AddEmote("Ah, just what I needed.", Text_Yell, 11092);
+ HealTemp->AddEmote("Ahh... That is much better.", Text_Yell, 11091);
+ HealTemp->AddEmote("Ahh... Just what I needed.", Text_Yell, 11092);
if(IsHeroic())
AddSpell(SHADOW_WAVE, Target_Current, 8.0f, 0, -1);
AddEmote(Event_OnCombatStart, "It is unwise to anger me.", Text_Yell, 11086);
- AddEmote(Event_OnTargetDied, "Completely ineffective! Just like someone else I know!", Text_Yell, 11087);
- AddEmote(Event_OnTargetDied, "You chose the wrong opponent!", Text_Yell, 11088);
+ AddEmote(Event_OnTargetDied, "Completely ineffective. Just like someone else I know.", Text_Yell, 11087);
+ AddEmote(Event_OnTargetDied, "You chose the wrong opponent.", Text_Yell, 11088);
AddEmote(Event_OnDied, "Now I'm really... angry...", Text_Yell, 11093);
}
@@ -237,7 +231,7 @@
#define IMMOLATION 35959 // DBC: 36051, 35959
#define FELFIRE_SHOCK 35759
-#define FELFIRE_LINE_UP 35770 // ?
+//#define FELFIRE_LINE_UP 35770 // Doesnt exist according to WoW-Wiki
#define KNOCK_AWAY 20686 // DBC: 36512; but it uses it on himself too so changed to other
#define CHARGE 35754 // DBC: 36058, 35754 =( =(
// CHARGE_TARGETING 36038 ?
@@ -257,8 +251,8 @@
AddSpell(CHARGE, Target_Current, 4.0f, 0, -1);
AddEmote(Event_OnCombatStart, "At last, a target for my frustrations!", Text_Yell, 11238);
- AddEmote(Event_OnTargetDied, "Yes, that was quiet... satisfying.", Text_Yell, 11239);
- AddEmote(Event_OnTargetDied, "Ha! Much better!", Text_Yell, 11240);
+ AddEmote(Event_OnTargetDied, "Yes, that was quite satisfying.", Text_Yell, 11239);
+// AddEmote(Event_OnTargetDied, "Ha! Much better!", Text_Yell, 11240); //Doesnt exist according to WoW-Wiki
AddEmote(Event_OnDied, "Knew this was... the only way out.", Text_Yell, 11243);
}
@@ -297,7 +291,7 @@
AddSpell(MIND_REND, Target_Current, 15.0f, 0, -1);
SpellDesc* Fear = AddSpell(FEAR, Target_Current, 8.0f, 0, -1);
- Fear->AddEmote("Flee in terror!", Text_Yell, 11129);
+ Fear->AddEmote("Flee in terror.", Text_Yell, 11129);
Fear->AddEmote("I will show you horrors undreamed of.", Text_Yell, 11130);
SpellDesc* Domination = AddSpell(DOMINATION, Target_Current, 6.0f, 0, -1);
@@ -396,7 +390,7 @@
_unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "I knew the prince would be angry but, I... I have not been myself. I had to let them out! The great one speaks to me, you see. Wait--outsiders. Kael'thas did not send you! Good... I'll just tell the prince you released the prisoners!");
_unit->PlaySoundToSet(11222);
sEventMgr.AddEvent(TO_UNIT(_unit), &Unit::SendChatMessage, (uint8)CHAT_MSG_MONSTER_YELL, (uint32)LANG_UNIVERSAL,
- "The naaru kept some of the most dangerous beings in existence here in these cells. Let me introduce you to another...",
+ "The naaru kept some of the most dangerous beings in existence here in these cells. Let me introduce you to another....",
EVENT_UNIT_CHAT_MSG, 27000, 1, EVENT_FLAG_DO_NOT_EXECUTE_IN_WORLD_CONTEXT);
sEventMgr.AddEvent(TO_OBJECT(_unit), &Object::PlaySoundToSet, (uint32)11223, EVENT_UNK, 27000, 1, EVENT_FLAG_DO_NOT_EXECUTE_IN_WORLD_CONTEXT);
Auchenai Crypts
Code:
Index: Instance_AuchenaiCrypts.cpp
===================================================================
--- Instance_AuchenaiCrypts.cpp (revision 1353)
+++ Instance_AuchenaiCrypts.cpp (working copy)
@@ -220,7 +220,7 @@
#define CN_AVATAR_OF_THE_MARTYRED 18478
#define SUNDER_ARMOR 16145
-#define MORTAL_STRIKE 15708 // not sure to spells ofc :)
+#define MORTAL_STRIKE 16856 // Spells Checked
#define PHASE_IN 33422
class AvatarOfTheMartyredAI : public CreatureAIScript
@@ -353,7 +353,6 @@
#define RIBBON_OF_SOULS 32422
#define STOLEN_SOUL 32346
#define SUMMON_AVATAR 32424
-//#define SOUL_CLEAVE 32346
class EXARCHMALADAARAI : public CreatureAIScript
{
@@ -369,7 +368,7 @@
{
m_spellcheck[i] = false;
}
-
+
spells[0].info = dbcSpell.LookupEntry(SOUL_SCREAM);
spells[0].targettype = TARGET_VARIOUS;
spells[0].instant = true;
@@ -377,7 +376,6 @@
spells[0].attackstoptimer = 1000;
spells[0].cooldown = 15;
spells[0].soundid = 10510;
- spells[0].speech = "Let your mind be clouded."; // dunno for sure if it should be here, but still gives better effect of fight :)
spells[1].info = dbcSpell.LookupEntry(RIBBON_OF_SOULS);
spells[1].targettype = TARGET_RANDOM_SINGLE;
@@ -388,7 +386,6 @@
spells[1].mindist2cast = 0.0f;
spells[1].maxdist2cast = 40.0f;
spells[1].soundid = 10511;
- spells[1].speech = "Stare into the darkness of your soul!"; // not sure if it's really "stand"
spells[2].info = dbcSpell.LookupEntry(STOLEN_SOUL);
spells[2].targettype = TARGET_RANDOM_SINGLE;
@@ -444,11 +441,11 @@
switch (RandomSpeach)
{
case 0:
- _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "These wall will be your DOOM!");
+ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "These walls will be your doom.");
_unit->PlaySoundToSet(10516);
break;
case 1:
- _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Haha, now you'll stay for eternity! Mwahahah!"); // spelling check needed !
+ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Now, you'll stay for eternity!"); // spelling check needed !
_unit->PlaySoundToSet(10517);
break;
}
@@ -468,7 +465,7 @@
void OnDied(Unit* mKiller)
{
- _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "This is... Where... I belong...");
+ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "This is... where I belong.");
_unit->PlaySoundToSet(10518);
RemoveAIUpdateEvent();
@@ -478,8 +475,21 @@
{
if (_unit->GetHealthPct() <= 25 && !Avatar && !_unit->IsStunned())
{
- _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Rise my fallen brothers! Take form and fight!");
- _unit->PlaySoundToSet(10512);
+
+ int RandomSpeach = rand()%3;
+ switch (RandomSpeach)
+ {
+ case 0:
+ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Rise my fallen brothers! Take form and fight!");
+ _unit->PlaySoundToSet(10512);
+ break;
+ case 1:
+ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Let your mind be clouded.");
+ break;
+ case 2:
+ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "Stare into the darkness of your soul.");
+ break;
+ }
_unit->setAttackTimer(3500, false);
_unit->GetAIInterface()->StopMovement(2000);
Azjol Nerub
Code:
Index: Instance_AzjolNerub.cpp
===================================================================
--- Instance_AzjolNerub.cpp (revision 1353)
+++ Instance_AzjolNerub.cpp (working copy)
@@ -93,7 +93,7 @@
#define HADRONOX_LEECHPOISON 53030
#define HADRONOX_ACIDCLOUD 53400
-#define HADRONOX_WEBGRAB_HC 59421
+#define HADRONOX_WEBGRAB_HC 59420
#define HADRONOX_LEECHPOISON_HC 59417
#define HADRONOX_ACIDCLOUD_HC 59419
@@ -125,6 +125,7 @@
#define GASHRA_WEBWRAP 52086
#define GASHRA_INFECTEDBITE 52469
+#define GASHRA_INFECTEDBITE_HC 59364
#define GASHRA_ENRAGE 52470
class GashraAI : public MoonScriptCreatureAI
@@ -132,8 +133,14 @@
MOONSCRIPT_FACTORY_FUNCTION(GashraAI, MoonScriptCreatureAI);
GashraAI(Creature* pCreature) : MoonScriptCreatureAI(pCreature)
{
+ if( !IsHeroic() )
+ AddSpell(GASHRA_INFECTEDBITE_HC, Target_ClosestPlayer, 35, 0, 12, 0, 0);
+ else
+ AddSpell(GASHRA_INFECTEDBITE, Target_ClosestPlayer, 35, 0, 12, 0, 0);
+
AddSpell(GASHRA_WEBWRAP, Target_RandomPlayer, 22, 0, 35, 0, 0);
- AddSpell(GASHRA_INFECTEDBITE, Target_ClosestPlayer, 35, 0, 12, 0, 0);
+ AddSpell(GASHRA_ENRAGE, Target_Self, 14, 0, 25, 0, 20);
+
};
};
@@ -144,15 +151,25 @@
#define NARJIL_WEBWRAP 52086
#define NARJIL_INFECTEDBITE 52469
#define NARJIL_BLINDINGWEBS 52524
+#define NARJIL_INFECTEDBITE_HC 59364
+#define NARJIL_BLINDINGWEBS_HC 59365
class NarjilAI : public MoonScriptCreatureAI
{
MOONSCRIPT_FACTORY_FUNCTION(NarjilAI, MoonScriptCreatureAI);
NarjilAI(Creature* pCreature) : MoonScriptCreatureAI(pCreature)
{
- AddSpell(NARJIL_WEBWRAP, Target_RandomPlayer, 22, 0, 35, 0, 0);
+ if( !IsHeroic() )
+ {
+ AddSpell(NARJIL_BLINDINGWEBS_HC, Target_ClosestPlayer, 16, 0, 9, 0, 0);
+ AddSpell(NARJIL_WEBWRAP_HC, Target_RandomPlayer, 22, 0, 35, 0, 0);
+ } else
+ AddSpell(NARJIL_BLINDINGWEBS, Target_ClosestPlayer, 16, 0, 9, 0, 0);
+ AddSpell(NARJIL_WEBWRAP, Target_RandomPlayer, 22, 0, 35, 0, 0);
+ }
+
AddSpell(NARJIL_INFECTEDBITE, Target_ClosestPlayer, 35, 0, 12, 0, 0);
- AddSpell(NARJIL_BLINDINGWEBS, Target_ClosestPlayer, 16, 0, 9, 0, 0);
+
};
};
@@ -163,15 +180,24 @@
#define SILTHIK_WEBWRAP 52086
#define SILTHIK_INFECTEDBITE 52469
#define SILTHIK_POISONSPRAY 52493
+#define SILTHIK_INFECTEDBITE_HC 59364
+#define SILTHIK_POISONSPRAY_HC 59366
class SilthikAI : public MoonScriptCreatureAI
{
MOONSCRIPT_FACTORY_FUNCTION(SilthikAI, MoonScriptCreatureAI);
SilthikAI(Creature* pCreature) : MoonScriptCreatureAI(pCreature)
{
+ if( !IsHeroic() )
+ {
+ AddSpell(NARJIL_INFECTEDBITE_HC, Target_ClosestPlayer, 35, 0, 12, 0, 0);
+ AddSpell(SILTHIK_POISONSPRAY_HC, Target_RandomPlayer, 30, 0, 15, 0, 0);
+ } else
+ AddSpell(NARJIL_INFECTEDBITE, Target_ClosestPlayer, 35, 0, 12, 0, 0);
+ AddSpell(SILTHIK_POISONSPRAY, Target_RandomPlayer, 30, 0, 15, 0, 0);
+ }
+
AddSpell(NARJIL_WEBWRAP, Target_RandomPlayer, 22, 0, 35, 0, 0);
- AddSpell(NARJIL_INFECTEDBITE, Target_ClosestPlayer, 35, 0, 12, 0, 0);
- AddSpell(SILTHIK_POISONSPRAY, Target_RandomPlayer, 30, 0, 15, 0, 0);
};
};
@@ -181,14 +207,22 @@
#define SHADOWCASTER_SHADOWBOLT 52534
#define SHADOWCASTER_SHADOW_NOVA 52535
+#define SHADOWCASTER_SHADOWBOLT_HC 59457
+#define SHADOWCASTER_SHADOW_NOVA_HC 59358
class AnubShadowcasterAI : public MoonScriptCreatureAI
{
MOONSCRIPT_FACTORY_FUNCTION(AnubShadowcasterAI, MoonScriptCreatureAI);
AnubShadowcasterAI(Creature* pCreature) : MoonScriptCreatureAI(pCreature)
{
- AddSpell(SHADOWCASTER_SHADOWBOLT, Target_RandomPlayer, 36, 0, 8);
- AddSpell(SHADOWCASTER_SHADOW_NOVA, Target_Self, 22, 0, 15);
+ if( !IsHeroic() )
+ {
+ AddSpell(SHADOWCASTER_SHADOWBOLT_HC, Target_RandomPlayer, 36, 0, 8);
+ AddSpell(SHADOWCASTER_SHADOW_NOVA_HC, Target_Self, 22, 0, 15);
+ }else
+ AddSpell(SHADOWCASTER_SHADOWBOLT, Target_RandomPlayer, 36, 0, 8);
+ AddSpell(SHADOWCASTER_SHADOW_NOVA, Target_Self, 22, 0, 15);
+ }
};
};