[CODE] More fun!

From: Alex (ahdecker@home.net)
Date: 06/04/01


Ok! Let me start by thanking you guys for your good help over the
past few months. I have what I suspect is a fairly simple problem
now:

When I select a certain combination of mob flags in medit, the changes
are lost on reboot. When I save the mob file to disk, and examine it,
I see something like:

-2145386488 0 0 0 2064 67174400 0 0 500 E

on the MOB_FLAGS line. This particular line, the first number is a
combination of MOB_ flags # 4, 22 and 32. My assumption is that the
storage of these values is simply too small for the possible values,
but the saved.act is a long, and I would think it would allow for
plenty of space. I'm not certain how the translation to the file
proceeds, but the format line in medit.c looks like this:

"%ld %ld %ld %ld %d %d %d %d %ld %d E\n"

and the corresponding values are:

MOB_FLAGS(mob)[0], MOB_FLAGS(mob)[1], MOB_FLAGS(mob)[2], MOB_FLAGS(mob)[3],
AFF_FLAGS(mob)[0], AFF_FLAGS(mob)[1], AFF_FLAGS(mob)[2], AFF_FLAGS(mob)[3],
GET_ALIGNMENT(mob), GET_LEVEL(mob),

also, all the declarations in asciiflag_conv, parsing the information
in db.c, are longs. Is this exceeding the size of a long, or is there some
way to change the way the flag values are calculated/distrubuted in the
.mob file?

Any help is greatly appreciated,

-Alex 3.0

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/05/01 PST