Ok....first, the bug/quirk. I am not sure if it is on stock, but one MUD I am on has this problem. With the gaining XP for each hit, it places the gain_exp function BEFORE the damage is capped off at the maximum amount of damage. This can cause tremendous problems if some one decides to make a powerful weapon that does like 500d500 damage because the weapon will give outrageous XP for just attacking, and not do much damage. Now the grouping of commands idea. A lot of similar commands (like freeze, pardon, etc.) are grouped, but others that are similar (echo, gecho, qecho) aren't Shouldn't those 3 be grouped together as one command with separate SCMD's? Here's a quick mailer code idea of what I mean. Obviously, it means changes in interpreter.c & interpreter.h, as well as act.comm.c and then act.wizard.c of course. Don't ask for instructions on how to 'install' it, as this isn't meant for newbie coders, but really for the high-ups who determine the direction of circle :) ACMD(do_echo) { struct char_data *list = NULL; struct descriptor_data *pt = NULL; skip_spaces(&argument); delete_doubledollar(argument); if (!*argument) { send_to_char("That must be a mistake...\r\n", ch); return; } if (subcmd == SCMD_EMOTE) { sprintf(buf, "$n %s", argument); act(buf, FALSE, ch, 0, 0, TO_ROOM); } else if (subcmd == SCMD_ECHO) { strcpy(buf, argument); act(buf, FALSE, ch, 0, 0, TO_ROOM); } if ((subcmd == SCMD_GECHO) || (subcmd == SCMD_QECHO)) { sprintf(buf, "%s\r\n", argument); for (pt = descriptor_list; pt; pt = pt->next) { if (!(!pt->connected && pt->character)) continue; list = pt->character; if (list == ch) continue; if ((subcmd == SCMD_QECHO) && !PRF_FLAGGED(list, PRF_QUEST)) continue; send_to_char(buf, pt->character); } } if (PRF_FLAGGED(ch, PRF_NOREPEAT)) send_to_char(OK, ch); else send_to_char(buf, ch); } I know it's a little cumbersome, but you can also add stuff later, like "zecho" (echo to a zone), "iecho" (echo to imms only), "mecho" (echo only to mortals), and others with relative ease. Just a thought to make circle a little more expandable :) --- "One hundred years from now, none of this will matter because you and I will be dead -- unless the Grim Reaper has switched his record-keeping to a Windows 95-based system, in which case we all might live forever. " -- Associated Press +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST