Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 09-04-2008, 07:55 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

Also pets poof when you invis , I remember building some AAs, so this wouldn't happen.

EDIT:Well, anyways, it was like that when I played - made you want to get those AA's
Reply With Quote
  #2  
Old 09-04-2008, 08:51 AM
So_1337
Dragon
 
Join Date: May 2006
Location: Cincinnati, OH
Posts: 689
Default

You're right, Angelox. That was the way it was early on, but sometime (around Luclin, I believe), there was a patch that made it so pets would not poof if you went invis. It was around the same time they changed the way NPCs viewed pets; indifferent unless they took an action, so a lost pet trying to find its master wouldn't bring a train.
Reply With Quote
  #3  
Old 09-04-2008, 11:15 AM
cavedude's Avatar
cavedude
The PEQ Dude
 
Join Date: Apr 2003
Location: -
Posts: 1,988
Default

I confirmed during the free time this summer on Live that casting any sort of invis spell on yourself will break the charm on any charmed pets you have.
Reply With Quote
  #4  
Old 09-04-2008, 11:26 AM
ChaosSlayer
Demi-God
 
Join Date: May 2007
Posts: 1,032
Default

Quote:
Originally Posted by So_1337 View Post
It was around the same time they changed the way NPCs viewed pets; indifferent unless they took an action, so a lost pet trying to find its master wouldn't bring a train.
yeha it was a real pain in the arse to be a pet class before that - you could not run throw a green dungeon wihout kiling every stupid green mob cause they would all agro on your pet
Reply With Quote
  #5  
Old 09-04-2008, 12:42 PM
cavedude's Avatar
cavedude
The PEQ Dude
 
Join Date: Apr 2003
Location: -
Posts: 1,988
Default

This code causes a zone crash when the player uses an invis spell and has no pet up. Here is the output:

Code:
#0  0x080fdc43 in Mob::BuffFadeByEffect(int, int) (this=0x0, effectid=22,
    skipslot=-1) at spells.cpp:2726
#1  0x080c8757 in Mob::SetInvisible(bool) (this=0x8586490) at mob.cpp:395
#2  0x0819fcd5 in Mob::SpellEffect(Mob*, unsigned short, float) (
    this=0x8586490, caster=0x8586490, spell_id=42, partial=100)
    at spell_effects.cpp:439
#3  0x080fd5e7 in Mob::SpellOnTarget(unsigned short, Mob*) (this=0x8586490,
    spell_id=42, spelltar=0x8586490) at spells.cpp:2602
#4  0x080fa4a5 in Mob::SpellFinished(unsigned short, Mob*, unsigned short, unsigned short, unsigned) (this=0x8586490, spell_id=42, spell_target=0x8586490,
    slot=1, mana_used=0, inventory_slot=4294967295) at spells.cpp:1466
#5  0x080f91c6 in Mob::CastedSpellFinished(unsigned short, unsigned, unsigned short, unsigned short, unsigned) (this=0x8586490, spell_id=42, target_id=263,
    slot=1, mana_used=0, inventory_slot=4294967295) at spells.cpp:923
#6  0x080f7240 in Mob::SpellProcess() (this=0x8586490) at spells.cpp:132
#7  0x080f725e in NPC::SpellProcess() (this=0x8586490) at spells.cpp:139
#8  0x080df229 in NPC::Process() (this=0x8586490) at npc.cpp:521
#9  0x080bd5c7 in EntityList::MobProcess() (this=0x82b0240) at entity.cpp:462
#10 0x080e3676 in main (argc=0, argv=0xbfffefe4) at net.cpp:481
Reply With Quote
  #6  
Old 09-04-2008, 01:44 PM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Thumbs up

Code:
void Mob::SetInvisible(bool state)
{
    invisible = state;
    SendAppearancePacket(AT_Invis, invisible);
    // Invis breaks charms

    if ((this->GetPetType() == petCharmed) && invisible)
    {
        Mob* formerpet = this->GetPet();

        if(formerpet)
             formerpet->BuffFadeByEffect(SE_Charm);
    }
}
Always make sure a pointer is valid before using it.
Reply With Quote
Reply

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 03:10 AM.


 

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