I keep getting tons of objects located in nowhere... and can't seem to track down how they are getting there. I found one bug that left an object in nowhere if you tried to equip something in a position which was already occupied, but I'm having other objects get lost and dunno how. No players have complained of losing objects so it's not from them, and some objects that aren't supposed to load are getting lost. Does anyone have any suggestions as to where I could look to see if I can find why these objects are getting lost? At one point after 24 hours uptide I had 772 objects in nowhere. I quickly added the: purge nowhereobjs option :) Also, I am running a basic dikued-like olc off the circle site, and every time I olced, it changed the afxD character flags into a numberic 152435 or whatever, which means nothing to me when I manually edit the file. So I wrote a simple function to convert a number into it's string format. (46 being: bcdf). It's a bit sloopy and I'm sure it could be done MUCH better than I have, but if anyone wants the code to use in their olc so the written files look much nicer, just drop me a line... well actually it's a tiny function, I'll just post it regardless. If you use it, or have a suggestion on how to make it more efficient, drop me a line, I'd like to know. Here it is: char *num_to_char(unsigned long i) { int x, ctr = 0; char txt[MAX_INPUT_LENGTH] = ""; char ab[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H' }; if(i == 0) { strcpy(buf, "0"); return buf; } for(x = 0; x <= 31; x++) { if(i < (1 << x)) continue; if(i & (1 << x)) { txt[ctr] = ab[x]; ctr++; } } strcat(txt, "\0"); strcpy(buf, txt); return buf; } Every time I tried to use buf directly it had leftover strings in it so i just worked on txt, copied it into buf then returned that. Any imporments? let me know. Hades
This archive was generated by hypermail 2b30 : 12/07/00 PST