K this isn't going to fix your problem your going to need to do some
detective work with gdb and that to find out WHY it's sending a PC as a mob
to that function but in my code I have a check in there to prevent it from
doing damage. But like I said you'll need to do some hunting around to find
out why it's doing it.

    if ( mob )
    {
        if ( !IS_NPC(mob) )
        {
                log( "p_act_trig: mob is a PC." );
                return;
        }

Add that is_npc check right after it opens the if mob part. That will
atlease catch it and back out. But won't correct the problem will just end
up spamming your logs everytime it happens.

-----Original Message-----
From: ^*^Britty^*^ [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, September 13, 2005 4:16 PM
To: Dale Kingston
Subject: RE: Problem with Note Board

I wrote a note as one character and did an action with
my other character Vladia and this is what I got from
printing the mob name.

(gdb) print mob->name
$1 = 0xb7c82c08 "Vladia"

My character's name is Vladia.

When I type list it gives me:
(gdb) list
2179            return;
2180        }
2181
2182        if ( mob )
2183        {
2184            for ( prg = mob->pIndexData->mprogs;
prg != NULL; prg = prg->nex
t )
2185            {
2186                if ( prg->trig_type == type
2187                  &&  strstr( argument,
prg->trig_phrase ) != NULL )
2188                {
(gdb) list
2189                    program_flow( prg->vnum,
prg->code, mob, NULL, NULL, ch,
 arg1, arg2 );
2190                    break;
2191                }
2192            }
2193        }
2194        else if ( obj )
2195        {
2196            for ( prg = obj->pIndexData->oprogs;
prg != NULL; prg = prg->nex
t )
2197            {
2198                if ( prg->trig_type == type
(gdb)


So it is the character... I'm not sure where to go
from here -- do you want me to send you our
mob_progs.c or the p_act_trigger() function?  Thanks
again...

Brittany

--- Dale Kingston <[EMAIL PROTECTED]> wrote:

> Like I was indicating for some reason it thinks it's
> talking to a mob, so
> you need to use gdb to print who that mob is sapose
> to be, this is easly
> done by typing: print mob->name. If that mobs name
> happens to be your
> characters name. Then you need to look a little
> higher in the code to find
> out why it thinks that you are a mob.
> 
> -----Original Message-----
> From: ^*^Britty^*^ [mailto:[EMAIL PROTECTED] 
> Sent: Tuesday, September 13, 2005 8:01 AM
> To: [EMAIL PROTECTED]
> Subject: Problem with Note Board
> 
> Hey, thanks for the help - I attached a copy of my
> note board to this e-mail if have time / want to
> look
> at it and maybe see if you can find anything mucky
> with it... I've been trying to figure out what's
> wrong
> with it for a long time and I'm completely stumped
> :( 
> It might be a problem with act() but I have doubts
> that it's act() because I haven't modified that
> function - I'm running QuickMUD and everyone has
> told
> me it comes pretty much bug free from the start, but
> anyway, I would appreciate it sooo so very much if
> you
> could check out my board... Also, here is a bigger
> chunk of the error in mob_progs.c if it helps:
> 
>     if ( mob )
>     {
>         for ( prg = mob->pIndexData->mprogs; prg !=
> NULL; prg = prg->next )
>         {
>             if ( prg->trig_type == type
>               &&  strstr( argument, prg->trig_phrase
> )
> != NULL )
>             {
>                 program_flow( prg->vnum, prg->code,
> mob, NULL, NULL, ch, arg1, arg2 );
>                 break;
>             }
>         }
>     }
> 
> 
> It is in the void p_act_trigger() function.  Also, I
> am pretty desperate to figure this out, so if you
> needed to gdb the code and crash it etc, I would be
> willing to let you give it a go.  Take care!
> 
> Brittany
> 
> 
>               
> __________________________________ 
> Yahoo! Mail - PC Magazine Editors' Choice 2005 
> http://mail.yahoo.com
> 
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to