Jump to content

Sarjuuk

Members
  • Posts

    99
  • Joined

  • Last visited

  • Donations

    0.00 GBP 

Everything posted by Sarjuuk

  1. Spellname: | FamilyFlags2: FamilyFlags1: | Combined: ------------------+--------------------------------+---------------------------- Frostbolt: | 0x0 0x20 | 0x0000000000000020 Arcane Barrage: | 0x8000 0x0 | 0x0000800000000000 Arcane Blast: | 0x0 0x20000000 | 0x0000000020000000 Frostfire Bolt: | 0x1000 0x0 | 0x0000100000000000 Arcane Missiles: | 0x0 0x00200000 | 0x0000000000200000 Fireball: | 0x0 0x1 | 0x0000000000000001 ------------------+--------------------------------+---------------------------- Combined: | | 0x0000900020200021 so, if i'm not mistaken, the line should read something like if (spellProto->SpellFamilyFlags & UI64LIT(0x0000900020200021) && (pVictim->HasAuraType(SPELL_AURA_MOD_DECREASE_SPEED) || pVictim->HasAuraType(SPELL_AURA_MELEE_SLOW))) { // Itterate over Dummys and find icon 2215 to change DoneTotalMod } /e: I've to admit, i'm confused about SpellFamilyFlags3. It doesn't matter in this case, but I'd appreciate some enlightenment But If I'm actually wrong (again) than the Flag would be "0x000000080000900020200021" as Fireball has 0x8 set for it.
  2. had the following bug: Terokkar: spirit towers didn't reset after the six hours where up. All towers belonged to the old faction and the next player triggering the update-function recaptured the whole zone. MaNGOS/0.12.0 r7907 ScriptDev2 for MaNGOS 7871+ minor custom patches, so i'm not entirely sure, whether its the openPvP-Patchs fault or not.
  3. did you test this? i tried something similar a while ago , but it didn't work
  4. well, in this special case the corpse should despawn, but i doubt that this could be applied to everything else.
  5. Ttwo smal things. First. The tooltip says its only affected by Rejuv., Regrowth, Lifebloom and Wild Growth. This is already checked with SPELLFAMILY_DRUID over SPELL_AURA_PERIODIC_HEAL. Frenzied Regeneration and Tranquility both aren't periodic Heals but periodic Triggers and druids don't have any other healing over time-spells. second: This simplyfication should make it easier to look forward to implement this Glyph-Spell, as it would need to go over every single periodic Heal-Aura and check, weather caster and owner are identical. maybe the second idea isn't so great, but i simply wanted to mention it ^.^
  6. oh right, thank you. I don't think that it uses charges. My guess is, that it's a bug or "custom feature" in the targeting. currently Is: all enemies in range should be: two unstealthed enemies in range. Dummy gets triggered once a second, casts two stars. 10 Seconds => 20 stars. But dont ask me, how to change the targeting behaviour^^
  7. What bug does the patch fix? What features does the patch add? implements Spell:18562, not consuming specific HoTs if caster has named Glyph equipped. For which repository revision was the patch created? master @ e1139e3f7001f512cca6fef459aecc43a99ef879 Is there a thread in the bug report section or at lighthouse? none found Who has been writing this patch? Sarjuuk [Patch]
  8. whoops.. may be deleted (sorry)
  9. it should scale with spellower since 3.0.x, but it doesn't so, confirmed...
  10. First of all, the devs dont like UPDATE-Statements, try DELETE/INSERT instead. Second. If the tooltip says "cannot occure more than X per minute" its adressing to the internal cooldown of the item, not the procrate. So its something like: DELETE FROM `spell_proc_event` WHERE `entry`IN (55018, 55019); INSERT INTO `spell_proc_event` VALUES (55018, 0, 0, 0, 0, 0, X, Y, 0, 0, 60), (55019, 0, 0, 0, 0, 0, X, Y, 0, 0, 60); both spells already have a chance given, so you don't need to insert it again. replace X with the appropriate procFlags and Y with whatever-procEx-is and you are ready to go^^
  11. What bug does the patch fix? What features does the patch add? SpellPushback changed with 3.0. Its now delaying by a fixed ammount for normal spells (500ms) and a percentage for channeled spells (25%) SpellPushback may only occur twice per spell. Any Talents, previously giving a %chance to resist pushback are now giving a reduction to the fixed value. Renamed SpellAura:149, to reflect this new behaviour. For which repository revision was the patch created? master @ 08b475203194da030de1f4c0c57bdf6215c0170e Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread. none Who has been writing this patch? Please include either forum user names or email addresses. Sarjuuk Reference: WellKnownWiki => Interrupt Diff: =>DelaySpell.diff diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 53a2327..7ef2f44 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -5189,18 +5189,20 @@ void Spell::Delayed() if (m_spellState == SPELL_STATE_DELAYED) return; // spell is active and can't be time-backed + if(isDelayableNoMore()) // Spells may only be delayed twice + return; + // spells not loosing casting time ( slam, dynamites, bombs.. ) if(!(m_spellInfo->InterruptFlags & SPELL_INTERRUPT_FLAG_DAMAGE)) return; - //check resist chance - int32 resistChance = 100; //must be initialized to 100 for percent modifiers - ((Player*)m_caster)->ApplySpellMod(m_spellInfo->Id,SPELLMOD_NOT_LOSE_CASTING_TIME,resistChance, this); - resistChance += m_caster->GetTotalAuraModifier(SPELL_AURA_RESIST_PUSHBACK) - 100; - if (roll_chance_i(resistChance)) - return; + //check pushback reduce + int32 delaytime = 500; // spellcasting delay is normally 500ms + int32 delayReduce = 100; // must be initialized to 100 for percent modifiers + ((Player*)m_caster)->ApplySpellMod(m_spellInfo->Id,SPELLMOD_NOT_LOSE_CASTING_TIME, delayReduce, this); + delayReduce += m_caster->GetTotalAuraModifier(SPELL_AURA_REDUCE_PUSHBACK) - 100; - int32 delaytime = GetNextDelayAtDamageMsTime(); + delaytime -= delaytime * delayReduce / 100; if(int32(m_timer) + delaytime > m_casttime) { @@ -5224,14 +5226,16 @@ void Spell::DelayedChannel() if(!m_caster || m_caster->GetTypeId() != TYPEID_PLAYER || getState() != SPELL_STATE_CASTING) return; - //check resist chance - int32 resistChance = 100; //must be initialized to 100 for percent modifiers - ((Player*)m_caster)->ApplySpellMod(m_spellInfo->Id,SPELLMOD_NOT_LOSE_CASTING_TIME,resistChance, this); - resistChance += m_caster->GetTotalAuraModifier(SPELL_AURA_RESIST_PUSHBACK) - 100; - if (roll_chance_i(resistChance)) + if(isDelayableNoMore()) // Spells may only be delayed twice return; - int32 delaytime = GetNextDelayAtDamageMsTime(); + //check pushback reduce + int32 delaytime = GetSpellDuration(m_spellInfo) * 25 / 100; // channeling delay is normally 25% of its time per hit + int32 delayReduce = 100; // must be initialized to 100 for percent modifiers + ((Player*)m_caster)->ApplySpellMod(m_spellInfo->Id,SPELLMOD_NOT_LOSE_CASTING_TIME,delayReduce, this); + delayReduce += m_caster->GetTotalAuraModifier(SPELL_AURA_REDUCE_PUSHBACK) - 100; + + delaytime -= delaytime * delayReduce / 100; if(int32(m_timer) < delaytime) { diff --git a/src/game/Spell.h b/src/game/Spell.h index 5befc67..4749433 100644 --- a/src/game/Spell.h +++ b/src/game/Spell.h @@ -453,7 +453,14 @@ class Spell uint8 m_runesState; uint8 m_delayAtDamageCount; - int32 GetNextDelayAtDamageMsTime() { return m_delayAtDamageCount < 5 ? 1000 - (m_delayAtDamageCount++)* 200 : 200; } + bool isDelayableNoMore() + { + if(m_delayAtDamageCount >= 2) + return true; + + m_delayAtDamageCount++; + return false; + } // Delayed spells system uint64 m_delayStart; // time of spell delay start, filled by event handler, zero = just started diff --git a/src/game/SpellAuraDefines.h b/src/game/SpellAuraDefines.h index 5d401b2..55eeab8 100644 --- a/src/game/SpellAuraDefines.h +++ b/src/game/SpellAuraDefines.h @@ -191,7 +191,7 @@ enum AuraType SPELL_AURA_PERSUADED = 146, SPELL_AURA_ADD_CREATURE_IMMUNITY = 147, SPELL_AURA_RETAIN_COMBO_POINTS = 148, - SPELL_AURA_RESIST_PUSHBACK = 149, // Resist Pushback + SPELL_AURA_REDUCE_PUSHBACK = 149, // Reduce Pushback SPELL_AURA_MOD_SHIELD_BLOCKVALUE_PCT = 150, SPELL_AURA_TRACK_STEALTHED = 151, // Track Stealthed SPELL_AURA_MOD_DETECTED_RANGE = 152, // Mod Detected Range diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 08fef1f..a3b6e8b 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -199,7 +199,7 @@ pAuraHandler AuraHandler[TOTAL_AURAS]= &Aura::HandleUnused, //146 SPELL_AURA_PERSUADED obsolete? &Aura::HandleNULL, //147 SPELL_AURA_ADD_CREATURE_IMMUNITY &Aura::HandleAuraRetainComboPoints, //148 SPELL_AURA_RETAIN_COMBO_POINTS - &Aura::HandleNoImmediateEffect, //149 SPELL_AURA_RESIST_PUSHBACK + &Aura::HandleNoImmediateEffect, //149 SPELL_AURA_REDUCE_PUSHBACK &Aura::HandleShieldBlockValue, //150 SPELL_AURA_MOD_SHIELD_BLOCKVALUE_PCT &Aura::HandleAuraTrackStealthed, //151 SPELL_AURA_TRACK_STEALTHED &Aura::HandleNoImmediateEffect, //152 SPELL_AURA_MOD_DETECTED_RANGE implemented in Creature::GetAttackDistance diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index abbe272..fa47cd6 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -10207,7 +10207,7 @@ bool InitTriggerAuraData() isTriggerAura[sPELL_AURA_PROC_TRIGGER_SPELL_WITH_VALUE] = true; isNonTriggerAura[sPELL_AURA_MOD_POWER_REGEN]=true; - isNonTriggerAura[sPELL_AURA_RESIST_PUSHBACK]=true; + isNonTriggerAura[sPELL_AURA_REDUCE_PUSHBACK]=true; return true; } pleas bear with me and my nonexistent git-account ;o
  12. http://paste2.org/p/116092 i still hope they'll do :]
  13. maybe, because it should deal area-damage our beloved wiki: Leo
  14. Sarjuuk

    Irc?

    irc://eu.freenode.net/mmorpg-dev but you'll rarely find a developer there
  15. What features does the patch add? Makes the following Relics work. * Item: 22398* Item: 25643* Item: 27518* Item: 28372 For which SubVersion revision was the patch created?r6494 Is there a thread in the bug report section? Harold's Rejuvenating Broach none for the others... Who has been writing this patch? Sarjuuk Code? paste2 - download notes? As far as i'm concerned, they are all working as intended. The style for item: 28372 is argueable. If someone has a bette idea i would be glad to hear it.
  16. What bug does the patch fix? Updates Heart of the Wild to meet official behaviour. Currently it increases AP in CatForm by 20%. Should be 10%. For which SubVersion revision was the patch created? r6414 Is there a thread in the bug report section? [bug] Druids Attack Power Is Wrong, Calculation of Druid is wrong Who has been writing this patch? Me & myself Code: http://paste2.org/p/56553 Index: SpellAuras.cpp =================================================================== --- SpellAuras.cpp (revision 6414) +++ SpellAuras.cpp (working copy) @@ -5023,7 +5023,10 @@ if ((*i)->GetSpellProto()->SpellIconID == 240 && (*i)->GetModifier()->m_miscvalue == 3) { int32 HotWMod = (*i)->GetModifier()->m_amount; - m_target->CastCustomSpell(m_target, HotWSpellId, &HotWMod, NULL, NULL, true, NULL, this); + if(GetModifier()->m_miscvalue == FORM_CAT) + HotWMod /= 2; + + m_target->CastCustomSpell(m_target, HotWSpellId, &HotWMod, NULL, NULL, true, NULL, this); break; } }
  17. *.diff updated to rev6386 still working, still an exception
  18. they are, but they don't use the same FamilyFlags.. if( m_spellInfo->SpellFamilyName != SPELLFAMILY_DRUID || m_spellInfo->SpellFamilyFlags != 0x0000000000020000 )
  19. noted: But i won't go into it, until the current patch is either accepted or rejected...
  20. updated first post. hopefully it's sufficient
  21. eww... I'll put it in a separated *.diff, or the original patch isn't going anywhere, because it changes to often. extended note: <strike>althoug it should work it's not guaranteed to do so and it's untested</strike> works for me...
  22. well, i don't know, wheather it's supposed to. both spells increase your resistance to fire but, have different secondary effects /e: <strike>a cookie for the one, finding out, why the part armor-DefStance is working, while stamina-LotP isn't. The structure is perfectly the same. shortend code part at pastebin.com</strike> /e ²: Cookie to self, uploading corrected *.diff /e ³: up and working, no problems noticed : original
  23. updated first post: - Defensive Stance vs. Scroll of Protection added - multi family checks simplified <strike>functionality not tested though</strike> /e: LotP vs. Stamina not working for some reason .. invastigating
  24. hmm, it's possible, but i fear, it'll suffer vom the same problem like "LotP vs. Stamina"
×
×
  • 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