This is a good add-on for any mud to allow more flexible coding in comm.c near the bottom put: void printf_to_char (CHAR_DATA *ch, char *fmt, ...) { char buf [MAX_STRING_LENGTH]; va_list args; va_start (args, fmt); vsnprintf (buf, MSL, fmt, args); va_end (args); send_to_char (buf, ch); } And in merc.h put this under the comm.c definitions void printf_to_char args( ( CHAR_DATA *ch, char *fmt, ...) ) __attribute__((format(printf, 2,3)));