Jump to content

breakwater

Members
  • Posts

    166
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Everything posted by breakwater

  1. Can someone fix this? I have no idea how. Or is this bug already fix?
  2. The patch is right, but in my eyes not blizzlike. A simple example Revitalize and Replenishment Here you can see the different between max mana and mana (base mana, dependent from char level) I am not playing on offical Server too sry for my bad english, but i hope you unterstand me
  3. What bug does the patch fix? What features does the patch add? Remove the overwrite of Blood Corruption, Holy Vengeance and Righteous Vengeance For which repository revision was the patch created? 10471 Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread. I don't know. Who has been writing this patch? Please include either forum user names or email addresses. me Code: diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index 4f8441a..9fca6c2 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -2066,7 +2095,10 @@ bool SpellMgr::IsNoStackSpellDueToSpell(uint32 spellId_1, uint32 spellId_2) cons // Paladin Seals if (IsSealSpell(spellInfo_1) && IsSealSpell(spellInfo_2)) return true; - + //Blood Corruption, Holy Vengeance, Righteous Vengeance + if ((spellInfo_1->SpellIconID == 2292 && spellInfo_2->SpellIconID == 3025) || + (spellInfo_2->SpellIconID == 2292 && spellInfo_1->SpellIconID == 3025)) + return false; // Swift Retribution / Improved Devotion Aura (talents) and Paladin Auras if ((spellInfo_1->SpellFamilyFlags2 & 0x00000020) && (spellInfo_2->SpellIconID == 291 || spellInfo_2->SpellIconID == 3028) || (spellInfo_2->SpellFamilyFlags2 & 0x00000020) && (spellInfo_1->SpellIconID == 291 || spellInfo_1->SpellIconID == 3028))
  4. yes i have try it. My problem: Is the damage calculation blizzlike???
  5. Update to Revision 10434 Patchfile:http://paste2.org/p/979740 SQL Part 1: DELETE FROM spell_proc_event WHERE entry IN(29723, 29725, 29724); INSERT INTO spell_proc_event (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMaskA0`, `SpellFamilyMaskA1`, `SpellFamilyMaskA2`, `SpellFamilyMaskB0`, `SpellFamilyMaskB1`, `SpellFamilyMaskB2`, `SpellFamilyMaskC0`, `SpellFamilyMaskC1`, `SpellFamilyMaskC2`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES('29723','0','4','174064750','174064750','174064750','17732','17732','17732','0','0','0','0','0', '0','0','0'), ('29725','0','4','174064750','174064750','174064750','17732','17732','17732','0','0','0','0','0', '0','0','0'), ('29724','0','4','174064750','174064750','174064750','17732','17732','17732','0','0','0','0','0', '0','0','0'); SQL Part 2: DELETE FROM spell_proc_event WHERE entry IN(44543, 44545); INSERT INTO spell_proc_event (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMaskA0`, `SpellFamilyMaskA1`, `SpellFamilyMaskA2`, `SpellFamilyMaskB0`, `SpellFamilyMaskB1`, `SpellFamilyMaskB2`, `SpellFamilyMaskC0`, `SpellFamilyMaskC1`, `SpellFamilyMaskC2`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES('44543','0','3','33555104','33555104','33555104','0','0','0','0','0','0','0','0', '0','7','0'), ('44545','0','3','33555104','33555104','33555104','0','0','0','0','0','0','0','0', '0','15','0');
  6. I think , thats a DB mistake. Have a Look into the Mangos Table instance. There should be a entry with max and min Level of ice crown citadel
  7. @atomic In my view this is a hack. Take my patch Topic article 25. This Fix should work great.
  8. no, because the if befor: if (pVictim->HasAura(50720)) //hack for Vigilance { if (Unit* caster = (pVictim->GetAura(50720,EFFECT_INDEX_0))->GetCaster()) AND you have the aura 50720 because, you are in prochandling of 50725 (sry for my bad english, i hope you unterstand me) case 50725: //Vigilance -> Remove SpellCooldown of Taunt { if (m_caster->GetTypeId() != TYPEID_PLAYER) return; if(Unit* caster = (m_caster->GetAura(50720,EFFECT_INDEX_0))->GetCaster())
  9. UPDATE to REVISION: 10434 SQL Part: delete from spell_proc_event where entry in (48492, 48494, 48495); insert into spell_proc_event () VALUES (48492, 0, 7, 524288,524288,524288, 0, 0, 0, 2048, 2048, 2048, 16384, 0, 0, 0, 0), (48494, 0, 7, 524288,524288,524288, 0, 0, 0, 2048, 2048, 2048, 16384, 0, 0, 0, 0), (48495, 0, 7, 524288,524288,524288, 0, 0, 0, 2048, 2048, 2048, 16384, 0, 0, 0, 0); Mangos Part: diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 59d5192..6a2cdcb 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -4580,6 +4635,18 @@ void Aura::HandlePeriodicEnergize(bool apply, bool Real) break; } } + if (!apply && !loading) + { + switch (GetId()) + { + case 5229: // Druid Bear Enrage + if (target->HasAura(51185)) // King of the Jungle self Enrage bonus with infinity duration + target->RemoveAurasDueToSpell(51185); + break; + default: + break; + } + } m_isPeriodic = apply; } diff --git a/src/game/UnitAuraProcHandler.cpp b/src/game/UnitAuraProcHandler.cpp index 68cdadd..3d26861 100644 --- a/src/game/UnitAuraProcHandler.cpp +++ b/src/game/UnitAuraProcHandler.cpp @@ -1570,6 +1591,28 @@ SpellAuraProcResult Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura return SPELL_AURA_PROC_OK; } } + // King of the Jungle + if (dummySpell->SpellIconID == 2850) + { + // Enrage (bear) + if (procSpell->Id == 5229 && triggeredByAura->GetEffIndex() == EFFECT_INDEX_0) + { + // note : the remove part is done in spellAuras/HandlePeriodicEnergize as RemoveAurasDueToSpell + basepoints[0] = triggerAmount; + triggered_spell_id = 51185; + target = this; + break; + } + // Tiger Fury (cat) + if (procSpell->SpellFamilyFlags2 & 0x00000800 && triggeredByAura->GetEffIndex() == EFFECT_INDEX_1) + { + basepoints[0] = triggerAmount; + triggered_spell_id = 51178; + target = this; + break; + } + return SPELL_AURA_PROC_FAILED; + } // Eclipse if (dummySpell->SpellIconID == 2856) {
  10. I have make over-worked my patch. I need no "#include map.h". My Revision:10410 Patchfile http://paste2.org/p/973358 @ascent: you get a compile error, if you not include map.h, in this line of code "GetMap()->GetUnit(m_misdirectionTargetGUID)" Also in my patch a hack for Vigilance. If someone know a better resolution of Vigilance, post it.But the effect of taunt should be good. DELETE FROM spell_proc_event WHERE entry =(50720); INSERT INTO spell_proc_event (entry, SchoolMask, SpellFamilyName, SpellFamilyMaskA0, SpellFamilyMaskA1, SpellFamilyMaskA2, SpellFamilyMaskB0, SpellFamilyMaskB1, SpellFamilyMaskB2, SpellFamilyMaskC0, SpellFamilyMaskC1, SpellFamilyMaskC2, procFlags, procEx, CustomChance, Cooldown) VALUES (50720,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
  11. I have test it.my server will be crashed, if i will create a new char or log on my druid My crashlog file: http://paste2.org/p/972426 sry for my bad english
  12. are you sure that you don't need #include "map.h" I need map.h in this function GetMap()->GetUnit...
  13. I have merge the patch from Toinan67 and ascent to a useable patch with I have test and it works great The patchfile: http://paste2.org/p/968584 Enjoy In my testing the player have not the 4 or 6 sec buff
  14. + SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE,float((petlevel * 4 - petlevel) + (owner->GetTotalAttackPowerValue(BASE_ATTACK) * dmg_multiplier))); + SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE,float((petlevel * 4 + petlevel) + (owner->GetTotalAttackPowerValue(BASE_ATTACK) * dmg_multiplier))); In this line you can write other things in Damage calculation.
  15. These good fix should not be forgotten. My Revision: 10410 diff --git a/src/game/UnitAuraProcHandler.cpp b/src/game/UnitAuraProcHandler.cpp index 1415948..be8a351 100644 --- a/src/game/UnitAuraProcHandler.cpp +++ b/src/game/UnitAuraProcHandler.cpp @@ -1262,6 +1262,27 @@ SpellAuraProcResult Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura basepoints[0] = int32(damage*triggerAmount/100); target = this; triggered_spell_id = 30294; + + // check for Improved Soul Leech + AuraList const& pDummyAuras = GetAurasByType(SPELL_AURA_DUMMY); + for (AuraList::const_iterator itr = pDummyAuras.begin(); itr != pDummyAuras.end(); ++itr) + { + SpellEntry const* spellInfo = (*itr)->GetSpellProto(); + if (spellInfo->SpellFamilyName != SPELLFAMILY_WARLOCK || (*itr)->GetSpellProto()->SpellIconID != 3176) + continue; + if ((*itr)->GetEffIndex() == SpellEffectIndex(0)) + { + // energize Proc pet (implicit target is pet) + CastCustomSpell(this, 59118, &((*itr)->GetModifier()->m_amount), NULL, NULL, true, NULL, (*itr)); + // energize Proc master + CastCustomSpell(this, 59117, &((*itr)->GetModifier()->m_amount), NULL, NULL, true, NULL, (*itr)); + } + else if (roll_chance_i((*itr)->GetModifier()->m_amount)) + { + // Replenishment proc + CastSpell(this, 57669, true, NULL, (*itr)); + } + } break; } // Shadowflame (Voidheart Raiment set bonus)
  16. I use this Code for Ardent Defender and it works very good. In my opinion ready to add in master. diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 988f822..748c1b8 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -2060,6 +2060,26 @@ void Unit::CalculateAbsorbAndResist(Unit *pCaster, SpellSchoolMask schoolMask, D } break; } + case SPELLFAMILY_PALADIN: + { + // Ardent Defender + if (spellProto->SpellIconID == 2135) + { + // Apply absorb only on damage below 35% hp + int32 absorbableDamage = RemainingDamage + 0.35f * GetMaxHealth() - GetHealth(); + if (absorbableDamage > RemainingDamage) + absorbableDamage = RemainingDamage; + if (absorbableDamage > 0) + RemainingDamage -= absorbableDamage * currentAbsorb / 100; + + // 66233 is cooldown aura + if (!((Player*)this)->HasAura(66233)) + preventDeathSpell = (*i)->GetSpellProto(); + + continue; + } + break; + } case SPELLFAMILY_DEATHKNIGHT: { // Shadow of Death @@ -2316,6 +2336,33 @@ void Unit::CalculateAbsorbAndResist(Unit *pCaster, SpellSchoolMask schoolMask, D } break; } + case SPELLFAMILY_PALADIN: + { + // Ardent Defender + if (preventDeathSpell->SpellIconID == 2135) + { + // Calculate defense over level * 5 + int32 defenseAmount = GetDefenseSkillValue() - getLevel() * 5; + // Proceed if positive value + if (defenseAmount > 0) + { + // Defense cap + if (defenseAmount > 140) + defenseAmount = 140; + // Trigger cooldown aura + CastSpell(this, 66233, true); + // Calculate heal amount + int32 healAmount = preventDeathSpell->CalculateSimpleValue(EFFECT_INDEX_1); + healAmount = defenseAmount * GetMaxHealth() * healAmount / 14000 - GetHealth(); + // Heal if positive value + if (healAmount > 0) + CastCustomSpell(this, 66235, &healAmount, NULL, NULL, true); + // Absorb Everything + RemainingDamage = 0; + } + } + break; + } } } EDIT: i forgot my Revision: 10410 Breakwater
  17. This SQL command should be usefull with Molten Amor INSERT INTO spell_proc_event VALUES (30482,127,0,0,0,0,0,0,0,0,0,0,1048576,0,0,0,0)
  18. you are right Whyarp. i have post the whole crash log
  19. i dont know why, but you are right. Thx for fast response.
  20. After the GM command .tele or .modify money , the server crash with this crash log. Maybe some more commands. I dont know Revision: * * 10403 * Date 24:8:2010. Time 23:44 //===================================================== *** Hardware *** Processor: Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz Number Of Processors: 2 Physical Memory: 4194303 KB (Available: 2393732 KB) Commit Charge Limit: 4194303 KB *** Operation System *** Windows Vista or Windows Server 2008 Professional (Version 6.1, Build 7600) //===================================================== Exception code: C0000005 ACCESS_VIOLATION
  21. Why the change? We have no function with name CheckIntegrity.
  22. need update for new revision. The effect of Spell 51185 doesn't work. EDIT: I'm so sorry. This Fix works correct.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use