I've just made a few recent aditions to my MUD.. color, tracking,
path finding, more affect locations, and a mute spell. Well, it all runs
just nicely. So, I decided it was time to add Ivan's OLC version 1.7
I ran the patch, and manually adjusted the things that were
rejected (since I'm running 2.4b6, not 2.4b4, plus color and those few
additions). So far so good. I followed the installation instructions
(simply moving a few files over, etc) and compiled the mud. I placed the
Sec field in the proper place in my pfile (which was already modified to
be an IMP), and set the security to 9, as per the instructions. Logged
in the character, and it crashed. Ran the mud in GDB, logged in, and it
crashed again, at a very unexpected location.
Program received signal EXC_BAD_ACCESS, Could not access memory.
0x00056518 in gn_add (ch=0x4b1a78, gn=0) at skills.c:985
985 ch->pcdata->group_known[gn] = TRUE;
Uh, ok. So, I figured it was maybe a problem of having an old pfile. So,
I just wiped it, and decided to make a new character, and set the
level/security later. Ran the mud in GDB, logged in, created a new
character. Got down to the selecting alignment, selected neutral (just
out of randomness), and it crashed, at a different place.
Program received signal EXC_BAD_ACCESS, Could not access memory.
0x000566f4 in group_add (ch=0x4b1a78, name=0x78e98 "rom basics",
deduct=0 '\000') at skills.c:1036
1036 if (ch->pcdata->group_known[gn] == FALSE)
Odd. To me, it looks like group_known isn't initialized for some reason,
or "rom basics" doesn't exist. So, I checked the group table, only to
see "rom basics" happily sitting in its proper place, untouched by the
patch. I went in to comm.c, in to nanny(), under "case
CON_GET_ALIGNMENT:"
It appears it crashes with the call "group_add(ch,"rom basics",FALSE);"
I then went to the pc_data struct, and still saw group_known still in
its proper place. group_chosen is also still in gen_data.
I went through the patch, and found nothing that modified groups, either
directly or indirectly.
So, I guess my question is, does anyone have any clues on to what might
have happened? Any thoughts would be greatly appreciated.
--Daniel