PDA

View Full Version : Need serious help! Spellls causing crashes! 1585


Irreverent
07-09-2010, 03:41 PM
I just updated my server to the latest binary, 1585.

Example: Radiant Cure 3: #3299 always crashes zone.

There is nothing in the error or debug that shows the issue. HOWEVER, when i go into the quest_zone I see a lot of 'unable to read perl file quests/spells/3299.pl' and thats the last line in any of the zone's files by timestamp.

Any thoughts?

Another confirmed spell: Pillage Enchantment #25, Purify Soul #2745

Irreverent
07-10-2010, 09:37 AM
I'm sorry its 1589.

I also went through ALL of my tables and all the contents & columns match up.

I am truely at a loss and this is severly hurting the playability on the server.

Secrets
07-10-2010, 10:13 AM
I'm sorry its 1589.

I also went through ALL of my tables and all the contents & columns match up.

I am truely at a loss and this is severly hurting the playability on the server.

I have this fixed on EZ, here's a diff

KLS was supposed to fix it but must've forgot about it; i'll remind someone with commit access.

Index: spell_effects.cpp
================================================== =================
--- spell_effects.cpp (revision 1589)
+++ spell_effects.cpp (working copy)
@@ -934,13 +934,12 @@
uint32 buff_count = GetMaxTotalSlots();
for(slot = 0; slot < buff_count; slot++)
{
- if(spells[buffs[slot].spellid].dispel_flag > 0)
- continue;

if
(
buffs[slot].spellid != SPELL_UNKNOWN &&
- buffs[slot].durationformula != DF_Permanent
+ buffs[slot].durationformula != DF_Permanent &&
+ spells[buffs[slot].spellid].dispel_flag > 0
)
{
BuffFadeBySlot(slot);
@@ -959,15 +958,13 @@
uint32 buff_count = GetMaxTotalSlots();
for(slot = 0; slot < buff_count; slot++)
{
- if(spells[buffs[slot].spellid].dispel_flag > 0)
- continue;
-
if
- (
+ (
buffs[slot].spellid != SPELL_UNKNOWN &&
buffs[slot].durationformula != DF_Permanent &&
- IsDetrimentalSpell(buffs[slot].spellid)
- )
+ IsDetrimentalSpell(buffs[slot].spellid) &&
+ spells[buffs[slot].spellid].dispel_flag > 0
+ )
{
BuffFadeBySlot(slot);
slot = buff_count;

Irreverent
07-10-2010, 11:28 AM
Yes!! Thank goodness, I was going crazy! Hopefully binaries can be posted soon.

Woowoo
09-01-2010, 03:31 PM
I'm having same issue with certain spells causing errors to zone.exe, where am I supposed to put this code? In heidisql? I can't find any spell_effects.cpp anywhere, please point me in the right direction if you can.

Irreverent
09-02-2010, 09:34 AM
The actualy crashes were fixed in the next build. BUT there are still "error messages"...but they're just that. They really are not causing the zone to crash, but just look that way because it may be the last line in the log.