Go Back   EQEmulator Home > EQEmulator Forums > Support > Spell Support

Spell Support Broken Spells? Want them Fixed? Request it here.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #13  
Old 12-24-2012, 09:15 AM
Kayen
Developer
 
Join Date: Mar 2009
Location: -
Posts: 228
Default

Code:
I'm not sure how this works on live, but this logic seems a little odd to me. It seems like the intent was that spell 4789 is always cast but only if there's also another spell to cast based on the aa/spell/item bonus.
Before we rip my code to shreds I think some basic understanding of the effect is needed and why it is coded like this.

This spell effect ONLY exists for the AA Touch of the Divine on live.

Thus coding this spell effect the priority is to ensure that functions correctly.

Touch of the Divine in the aa_effects table has a base1 and a base2

Base1 is the chance to fire the trigger

Base2 is a 'heal spell' that triggers.

The 'Touch of the Divine' buff has to be hard coded because it is just part of the spell effect independent of what spell triggers. There is no field in the spell data to set if you want this effect or not.

Everything after this point is basically just whatever we want to do.

First spell buffs and Item worn effects DO NOT exist on live for this and were implemented purely for custom use.

Third, question of how do we stack this. Which again does not exist on live.

You have at max 3 sources, 1 from AA, 1 from worn effect, 1 from spell effect.

I coded as add up all the effects to give yourself your total chance.

Then do all 3 effects together (obviously was little buggy!).

Logic being your taking the combined total chance so you get the combined total effect. As a custom dev this can be useful you could say have +HP on AA, + Mana on item, +end on spell OR whatever ect, but you'd get all 3 if you had all 3.

Alternatively you could also individually check each effect in say a random order, AA, item, spell. Iterate through each do the random checks based on the individual percentages, and stop when one fires off. This might end up being a better way since you can put the 'Touch of the Divine' only in the AA check and leave the others more open.

There are no right answers, but the core AA function must remain as is because that is what any live server will be using.

Kayen
GM Storm Haven
Reply With Quote
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 09:25 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3