EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Spell Support (https://www.eqemulator.org/forums/forumdisplay.php?f=664)
-   -   WeaponProc Buff Spamming 25k after it recasts itself 2-3 times? (https://www.eqemulator.org/forums/showthread.php?t=35250)

Hateborne 04-25-2012 12:58 AM

WeaponProc Buff Spamming 25k after it recasts itself 2-3 times?
 
Hello All, I broke something.

I have a buff that is recasting itself on first 2-3 'procs'. It then proceeds to spam 25k nukes.

The spell (which we will call SKBuff, spell id 1233) has:
Code:

Slot) Name // effect_base_value // max // effect_limit_value
1) WeaponProc  1234 0 400
2) ImprovedHeal -100 0 0
3) Illusion 161 0 0 (iksar skeleton)
4) CurrentHP -1000 0 0

SKBuff Trigger (spell id 1234) has:
Code:

Slot) Name // effect_base_value // max // effect_limit_value
1) CurrentHP -1000 0 0 0

The SKBuff is supposed to add weapon proc, drastically cut down the healing ability, keep illusion iksar (for giggles), and keep a steady DoT on player to encourage him/her not to run around in this form.


Like mentioned above, it does the "cast on you" and "emptiness fades" message twice and then spams 25k procs. Has anyone else experienced similar issues?


-Hate

Hateborne 04-25-2012 01:50 AM

Deleted the spell, copied over a working version of a spell-buff weapon proc.

It's now casting the next rank of SKBuff (which then casts the next rank after that).

I broke something...hard.

-Hate

Hateborne 04-25-2012 02:02 AM

Bloody hell, it's still chaining up through each rank of the spell.

The queries to add the items are here: http://hateborne.dyndns.org/ezserver.../wtfspells.sql

Or below:
Code:

INSERT INTO `spells_new` VALUES (10219, 'Call of the Void', 'PLAYER_1', '', '', '', 'A void forms in your body.', '\'s ara grows empty.', 'The emptiness fades.', 0, 0, 0, 0, 3000, 2250, 2250, 11, 1800, 0, 1850, 161, 10220, -100, 161, 0, 0, -1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2507, 2105, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 0, 1, 0, 0, 10, 85, 125, 58, 10, 10, 0, 254, 254, 254, 254, 254, 6, 5, 5, -1, 0, 0, 255, 255, 255, 255, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 244, 0, -100, 0, 0, 0, 0, 0, 0, 0, 4063, 125, 17, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -47, 134, -72, 46, 11, 600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 1);
INSERT INTO `spells_new` VALUES (10220, 'Call of the Void Strike', 'PLAYER_1', '', '', '', '', '', '', 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2513, 2110, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 0, 0, 0, 6, 0, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 5, 0, 98, -1, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 0, 161, 355, 1, -1000, 0, 0, 0, 0, 0, 0, 0, 0, 25, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -100, 100, 0, -99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 1);
INSERT INTO `spells_new` VALUES (10221, 'Call of the Void II', 'PLAYER_1', '', '', '', 'A void forms in your body.', '\'s ara grows empty.', 'The emptiness fades.', 0, 0, 0, 0, 3000, 2250, 2250, 11, 1800, 0, 4850, 161, 10222, -225, 161, 0, 0, -2750, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2507, 2105, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 0, 1, 0, 0, 10, 85, 125, 58, 10, 10, 0, 254, 254, 254, 254, 254, 6, 5, 5, -1, 0, 0, 255, 255, 255, 255, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 244, 0, -250, 0, 0, 0, 0, 0, 0, 0, 4063, 125, 17, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -47, 134, -72, 46, 11, 600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 1);
INSERT INTO `spells_new` VALUES (10222, 'Call of the Void II Strike', 'PLAYER_1', '', '', '', '', '', '', 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2513, 2110, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 0, 0, 0, 6, 0, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 5, 0, 98, -1, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 0, 161, 355, 1, -1000, 0, 0, 0, 0, 0, 0, 0, 0, 25, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -100, 100, 0, -99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 1);
INSERT INTO `spells_new` VALUES (10223, 'Call of the Void III', 'PLAYER_1', '', '', '', 'A void forms in your body.', '\'s ara grows empty.', 'The emptiness fades.', 0, 0, 0, 0, 3000, 2250, 2250, 11, 1800, 0, 8850, 161, 10224, -500, 161, 0, 0, -5750, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2507, 2105, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 0, 1, 0, 0, 10, 85, 125, 58, 10, 10, 0, 254, 254, 254, 254, 254, 6, 5, 5, -1, 0, 0, 255, 255, 255, 255, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 244, 0, -250, 0, 0, 0, 0, 0, 0, 0, 4063, 125, 17, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -47, 134, -72, 46, 11, 600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 1);
INSERT INTO `spells_new` VALUES (10224, 'Call of the Void III Strike', 'PLAYER_1', '', '', '', '', '', '', 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2513, 2110, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 0, 0, 0, 6, 0, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 5, 0, 98, -1, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 0, 161, 355, 1, -1000, 0, 0, 0, 0, 0, 0, 0, 0, 25, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -100, 100, 0, -99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 1);

I am at a COMPLETE loss.

-Hate

Hateborne 04-30-2012 07:02 PM

Solved!
 
This has been solved. SK only spells have that +1 to proc value.

Quote:

Originally Posted by lerxst2112 (Post 209295)
I assume you mean you're using SE_WeaponProc (85).

The way the proc to add is calculated can be seen here:
Code:

//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.

Thanks again!

-Hate


All times are GMT -4. The time now is 02:16 AM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.