PDA

View Full Version : Pet buff which AOE weapon procs not working.


oslander
04-07-2012, 02:02 PM
Hi there,

I am having trouble getting a custom spell to work properly. What happens is when I buff the pet he's supposed to unleash an AOE proc while he fights. I've tried AEcaster, AEtarget, Group and everything else and the pet will not whatever I do hit all of the enemies around him with the spell. The spell is also set as an AOE and I've even tried the exact same spell through a #castspell xxxx and it hits everything when the player character does it.


Any ideas how to help with this?

Hateborne
04-24-2012, 08:45 PM
Nearly a month late, but throwing it out there.

First and foremost, do you have Pet Affinity? From my understanding, this can have an effect on proc'ing. :-P

What values are you using for weapon proc? What value are you using for targettype on the spell?

Let's say spell is "PetAoE1" and ID is 500. PetAoE1 is the buff that adds the WeaponProc (effectid1 85).

Let's assume "PetAoE1 Trigger" is the actual AoE and it's ID is 501. The targettype of this needs to be 4.

The relevant DB info for PetAoE1:
effectid1 = 85
effect_base_value1 = 501
max1 = 0
effect_limit_value1 = 0


The above will set PetAoE1 with WeaponProc as the effect, spell 501 (PetAoE1 Trigger) as the proc, with default proc rate.


The relevant DB info for PetAoE1 Trigger:
effectid1 = 0
effect_base_value1 = 100
aoerange = 35
targettype = 4


The above will set PetAoE1 Trigger to do 100 damage to all within 35 feet/yards/meters/cups-of-sugar.

-Hate

Hateborne
04-28-2012, 08:51 PM
My WeaponProc is calling all kinds of random effects. It is set to WeaponProc 10220 with 400 limit value (ppm?). It procs 10267 instead? I set it to 9836, 6667, or 6101...it procs spell 10221 (which has procs 10223, etc etc).

What have I done? :-(

-Hate

lerxst2112
04-28-2012, 09:06 PM
I assume you mean you're using SE_WeaponProc (85).

The way the proc to add is calculated can be seen here:
//for some stupid reason SK procs return theirs one base off...
uint16 Mob::GetProcID(uint16 spell_id, uint8 effect_index) {
bool sk = false;
bool other = false;
for(int x = 0; x < 16; x++)
{
if(x == 4){
if(spells[spell_id].classes[4] < 255)
sk = true;
}
else{
if(spells[spell_id].classes[x] < 255)
other = true;
}
}

if(sk && !other)
{
return(spells[spell_id].base[effect_index] + 1);
}
else{
return(spells[spell_id].base[effect_index]);
}
}


So, whichever effect slot the 85 is in it appears you want the proc spell id in the corresponding base slot, and if it's a SK only spell you want to subtract 1 from the value.

Not sure why it would add more than one proc or vary the number chosen though. Seems like something you would want to debug to see where it's going wrong.

Hateborne
04-29-2012, 02:27 PM
You Sir...are my hero.

That was it. I have 3 ranks of the spell, and 3 ranks of the strike effect.

Each rank was proc'ing the next rank. The final rank was proc'ing a wizard spell.

Thank you again so much.

-Hate