Jump to content

[patch]SchoolAbsorb and "Borrowed Time"


pasdVn

Recommended Posts

As there are already given some enties for absorb spells in the new spell_bonus_data table we should use them :)

For fixing "borowed times" (http://www.wowhead.com/?spell=52795, the second effect) I oriented at "Pain and Suffering" which is nearly the same spell (proc trigger aura and dummy aura that should apply a spellmod) and is handled directly above in the code.

http://github.com/pasdVn/mangos/commit/3a39682c3e438293cc86e2e4c44e2e9a8f1b4a20

Here the left spell_bonus_data entries that are not already in:

INSERT INTO `mangos`.`spell_bonus_data` (`entry` ,`direct_bonus` ,`dot_bonus` ,`ap_bonus` ,`comments`) VALUES 
('6143', '0.1', '0', '0', 'Mage - Frost Ward'),
('543', '0.1', '0', '0', 'Mage - Fire Ward');

Link to comment
Share on other sites

  • 2 months later...
As there are already given some enties for absorb spells in the new spell_bonus_data table we should use them :)

For fixing "borowed times" (http://www.wowhead.com/?spell=52795, the second effect) I oriented at "Pain and Suffering" which is nearly the same spell (proc trigger aura and dummy aura that should apply a spellmod) and is handled directly above in the code.

http://pastebin.com/m750fc4cc

Here the left spell_bonus_data entries that are not already in:

INSERT INTO `mangos`.`spell_bonus_data` (`entry` ,`direct_bonus` ,`dot_bonus` ,`ap_bonus` ,`comments`) VALUES 
('6143', '0.1', '0', '0', 'Mage - Frost Ward'),
('543', '0.1', '0', '0', 'Mage - Fire Ward');

you have forgot to add the patch :/

Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...

Hmm, ok. I didn't concentrate on the sql part. But should not be any problem then to change this values easily. I think those are the values I took out of the code when I wrote this patch (although 10% are really few!?).

If anybody has more reliable values for the coefficients of different absorb spells I could add them to the first post.

Link to comment
Share on other sites

Maybe we should allow to pass a null-pointer as pVictim to SpellHealingBonus and SpellDamageBonus (would probably just need some null-pointer checks).

This would make HandleSchoolAbsorb and HandleManaShield much cleaner, because we just had to call SpellHealing/SpellDamageBonus or?

Link to comment
Share on other sites

  • 2 weeks later...

Hmm, ok. At least the HandleAuraSchoolAbsorb() would look mor clean then^^

I had the idea with using a new damage effect type. Maybe the use is more clear then, when reading SpellDamageBonus().

I just did it with spelldamagebonus as before (maybe we could hardcode it again for power word shield if anybody has a proof, that it still uses healing bonus but not damage bonus).

http://github.com/pasdVn/mangos/commit/25e66aef6b68a124bfbb3561694eb4e0689a7b6c

The diff looks quite huge, but only because I shifted a code part right one tab.

Edit: SPELLMOD_SPELL_BONUS_DAMAGE is added multiplicative in spelldamage bonus. I did it additive before. Don't know what is right.

Edit2: Maybe this is the reason why blizz did not handle it as a spellmod... So we could could just hardcode that in HandleSchoolAbsorb() !?

Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...
  • 2 weeks later...

Updated first post, but changed the patch as it was before, because I don't really like my current sollution with using SpellDamageBonus(). Too much exeptions, or how you like to call it...

I'm thinking about not using this idea with the spellmod at all, but just searching for the dummy aura. I don't know what is the best way :-/

Anyway you should have a correct patch again, that is applying without conflicts.

Edit 9.09.09: Sorry, I somehow forgot to rebase my branch, so you probably still had merging problems with the patchfile. Updated first post again.

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 months later...

Current formula for working out Power Word: Shield (Patch 3.2)

base_absorb+(0.8068+0.08*BT)*sp)*(1+0.05*IMP)*(1+ 0.02*FP)*(1+0.01*TD)

* base_absorb is the base absorb given the PW:S which is 2230 at the moment

* BT is your Borrowed Time level http://www.wowhead.com/?spell=52800

* SP is your Spell Power

* IMP is your Improved Power Word: Shield level http://www.wowhead.com/?spell=14769

* FP is your Focused Power level http://www.wowhead.com/?spell=33190

* TD is your Twin Disciplines level http://www.wowhead.com/?spell=52803

e.g. (2230+(0.8068+0.08*5)*2500)*(1+0.05*3)*(1+ 0.02*2)*(1+0.01*5) = 6589

source: http://www.wowwiki.com/Power_Word:_Shield

This change was introduced in revision [9259]??

P.D sorry for my English

Link to comment
Share on other sites

Hmm, this will become quite hacky, if this formula is really correct^^. But anyway: [9259] just implements the bonus of "Borrowed Time". This patch also did not implement the whole formula and was more a try to handle bonuses more generic.

=> Rejected

Any update of the formula should be done in a new thread.

Edit: It would be interesting to know, if e.g. Twin Disipline contains the family flag of PW:S...

Link to comment
Share on other sites

×
×
  • 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