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)));