April, You should make an attempt to look at the code completely before asking such questions. Many imps decide to run a mud, and end up asking very newbie-ish questions because they either don't know enough C to understand the code, or don't sift through the whole code at least ONCE just to experience the majesty of CircleMUD. If you look in db.c, you'll see a neat subroutine called parse_object which basically loads each and every object in the files listed in the index. In the scanf's, the function loads the numbers/letters. The function asciiflag_conv() basically converts the letters into usable numbers. BTW, looking in structs.h: (1 << 0) is not A, but a. (1 << 1) is b (1 << 2) is c . . . (1 << 24) is y (1 << 25) is z (1 << 26) is A (1 << 27) is B . etc. I hope this helps you, but my point is that you could have answered your own question if you spend a little more time looking at the whole src directory and attempt to make some links of the various functions and subroutines in the game. linc PS: I'm using Ultrix 4.4 and gcc 2.6.3 and found this problem. It might be a system wide bug: act.informative.c ACMD(do_look); I don't think you want to do a (is_abbrev(arg, "in")) boolean check because...what if someone is called "InXXXXXX" such as "Inherent". This, of course, applies to (is_abbrev(arg, "at")) as well. I fixed the problem in my subroutine by replacing is_abbrev with !str_cmp. Hope this helps some people.
This archive was generated by hypermail 2b30 : 12/07/00 PST