At the top of update.c put 
 
void	random_quest	args( ( void ) ); 
 
then somewhere else in update.c put this: 
 
 
void random_quest( void ) 
{ 
    OBJ_DATA *pill; 
    ROOM_INDEX_DATA *room; 
 
    if ((time_info.hour == 2) || (time_info.hour == 6) || 
	(time_info.hour == 14) || (time_info.hour == 18)) 
    { 
 
    for ( ; ; ) 
{ 
	room = get_room_index( number_range(0, 65535) ); 
	if (room != NULL) 
	if (!IS_SET(room->room_flags, ROOM_PRIVATE) 
	&& !IS_SET(room->room_flags, ROOM_SOLITARY) 
	&& !IS_SET(room->room_flags, ROOM_LOCKED) 
	&& !IS_SET(room->room_flags, ROOM_SAFE) 
	&& !IS_SET(room->room_flags,ROOM_LAW)) 
	   break; 
    } 
 
    pill = create_object(get_obj_index(OBJ_VNUM_QUEST_PILL), 0); 
    pill->timer = 50; 
    obj_to_room(pill,room); 
    } 
} 
 
IN void update_handler 
 
under weather_update put 
 
 random_quest	 ( ); 
 
 
there this allows a quest pill to be loaded every so often in a random place 
Bah thats all this allows a quest pill to be loaded in a random place every so often