Jump to content

Revils

Members
  • Posts

    57
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Everything posted by Revils

  1. the original code works fine for me on rev 9119 mangos-0.15, the variable 'm_StartTime' is increased and the spawnevent is fired so the only problem, as you noticed ,it's on database (UDB 386 for me), since there's 253 instead of 252. I simpled changed the value on battleground_events and gameobject_battleground tables to fix it.
  2. about Chaotic Skyflare Diamond and Chaotic Skyfire Diamond there are many comments, also on EJ forums, that the aura apply to the whole damage and not only on the crit part.
  3. Mangos Version: 9105 SD2 Version: 1506 Database Name and Version : UDB 386 How it SHOULD work: from a well know wiki How it DOES work: the miss chance is calculated differently resulting in a higher value in other words, for auto-attacks (white damage): on Unit::MeleeMissChanceCalc() if (isNormal || m_currentSpells[CURRENT_MELEE_SPELL]) misschance = 5.0f; else misschance = 24.0f; . . int32 chance = pVictim->GetTypeId() == TYPEID_PLAYER ? 5 : 7; . . if(leveldif < 3) misschance += (leveldif - m_modHitChance); else misschance += ((leveldif - 2) * chance - m_modHitChance); against a boss level this will give 5%/24% + 7% = 12%/31% higher than expected 8%/27% // Modify miss chance from skill difference ( bonus from skills is 0.04% ) int32 skillBonus = int32(GetWeaponSkillValue(attType,pVictim)) - int32(pVictim->GetDefenseSkillValue(this)); misschance -= skillBonus * 0.04f; this gives an additional 0.6% miss chance Special attacks (yellow damage) are handled in Unit::MeleeSpellMissChance() and they are calculated in another different way while I would expect the same basic rule quoted from well know wiki on Unit::MeleeSpellMissChance() int32 lchance = pVictim->GetTypeId() == TYPEID_PLAYER ? 5 : 7; int32 leveldif = pVictim->getLevelForTarget(this) - getLevelForTarget(pVictim); if(leveldif < 3) HitChance = 95 - leveldif; else HitChance = 93 - (leveldif - 2) * lchance; . . // Miss = 100 - hit float miss_chance= 100.0f - HitChance; . . // bonus from skills is 0.04% miss_chance -= skillDiff * 0.04f;
  4. I think resilience should affect only damage from player so why not put a check just like on the comment below? @@ -6824,11 +6824,12 @@ void Aura::PeriodicTick() // send critical in hit info for threat calculation if (isCrit) { cleanDamage.hitOutCome = MELEE_HIT_CRIT; // Resilience - reduce crit damage - pdamage -= m_target->GetSpellCritDamageReduction(pdamage); + if (IS_PLAYER_GUID(m_caster_guid)) + pdamage -= m_target->GetSpellCritDamageReduction(pdamage); } // only from players // FIXME: need use SpellDamageBonus instead? if (IS_PLAYER_GUID(m_caster_guid)) or there's a check to prevent non player to crit at all? also, on 3.2.2. patch notes: "Resilience: No longer reduces the amount of damage done by damage-over-time spells, but instead reduces the amount of all damage done by players by the same proportion. In addition, the amount of resilience needed to reduce critical strike chance, critical strike damage and overall damage has been increased by 15%." so, this patch is it really necessary?
  5. I think you should use fixed values rather the old value in db * 1.07 otherwise if you wrongly run the query more than once you'll keep increasing HP stat
  6. works fine for me, it should be reviewed :eek:
  7. you forgot something in void Aura::HandleAuraDummy(bool apply, bool Real) :cool: // Improved Moonkin Form if(GetSpellProto()->SpellIconID == 2855) { uint32 spell_id; switch(GetId()) { case 48384: spell_id = 50170; //Rank 1 case 48395: spell_id = 50171; //Rank 2 case 48396: spell_id = 50172; //Rank 3 default: sLog.outError("HandleAuraDummy: Not handled rank of IMF (Spell: %u)",GetId()); return; } should be: // Improved Moonkin Form if(GetSpellProto()->SpellIconID == 2855) { uint32 spell_id; switch(GetId()) { case 48384: spell_id = 50170;[b]break;[/b]//Rank 1 case 48395: spell_id = 50171;[b]break;[/b]//Rank 2 case 48396: spell_id = 50172;[b]break;[/b]//Rank 3 default: sLog.outError("HandleAuraDummy: Not handled rank of IMF (Spell: %u)",GetId()); return; }
×
×
  • 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