Proc spells don't work after zoning
I noticed this on Storm Haven. I cast the spell Call of Sky (ID 1461) on a Monk (clickie) while in Nexus. I then zone to another zone to kill stuff, and the spell NEVER goes off. If I recast the spell, it procs like mad (w/ 255 dex).
|
Hmm, I have heard some reports of some proc buffs not working, or not working all of the time. That might explain it!
|
Here's what I've been able to find in the source as far as procs go:
zone/attack.cpp Code:
1077 //////////////////////////////////////////////////////////// Code:
2596 uint32 i; However, if that's the problem, I'm not really sure what the best fix would be... Maybe adding a hack somewhere to check & see if it's defined? |
Maybe it has something to do with the unhandled weapon equiping opcodes that come in every time people zone. I always wondered what those might be for.
|
There's a section of code in client_packet.cpp where it finishes connecting. Search for SE_Illusion, it basically reapplies spells that have specific effects that aren't passive stats when you zone in, think illusion, levitate, etc. It sounds like they're not being reapplied correctly and that's where I'd look first.
|
Discussion: http://eqemulator.net/forums/showthread.php?t=26307
Quote:
zone/client_packet.cpp Code:
6702 //reapply some buffs Digging deeper, there is a spell effect SE_WeaponProc defined in zone/spell_effects.cpp: Code:
52 bool Mob::SpellEffect(Mob* caster, int16 spell_id, float partial) zone/client_packet.cpp Code:
case SE_InvisVsAnimals: |
I finally had a chance to test this out and verified that this does work as expected. Looks like this is another one for the submission section :D
While I was at it, I was looking over some more of the Spell Effects, and it looks like there might be 1 more change that could help in the long run: zone/client_packet.cpp Code:
for (int x1=0; x1 < EFFECT_COUNT; x1++) { |
All times are GMT -4. The time now is 07:42 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.