in MERC.H add this void strip_mortal_color(char *bufin, bool GLOBAL); in all your channels ACT_COMM.C in like DO_GOSSIP and DO_SAY add this if(!IS_IMMORTAL(ch)) strip_mortal_color( argument, TRUE ); before the output of sprintf(buf, "You gossip '%s'", argument); or similar expresion used to send the entire argument (what was said) to whomever it was going to. for say i use FALSE and allow some codes not allowed for global channels. in ACT_INFO.C under do_title add /* not even imms can use these here */ strip_mortal_color( argument, TRUE ); before these lines of code smash_tilde (argument); set_title (ch, argument); Last add this routine somewhere in a .c file i put it in ACT_NEWC.C /* * Strip reserved immortal only colors from strings * These are based on my color codes yours may very some. * * Last the GLOBAL flag is used only when this affects everyone * mud wide like gossip. For say i make this false and allow * clear screen to be used by mortals. */ void strip_mortal_color(char *bufin, bool GLOBAL) { const char *pointer; for(pointer = bufin; *pointer; pointer++) { if(*pointer == '{') { pointer++; bufin++; if(*pointer == 'z') /*blinking text reserved*/ { *bufin = ' '; } if(*pointer == '`') /*line space reserved*/ { *bufin = ' '; } if(*pointer == '0' && GLOBAL) /*used for clear screen reserved*/ { *bufin = ' '; } } bufin++; } } Taka