This little function makes it where you can copy area changes from building port to live port.  The BUILD_AREA and LIVE_AREA will need to be changed to the directories where your area files reside.  I put  this in act_wiz.c.  Don't forget your lines in interp.c and interp.h.  This is a great command for immortals that you don't want to have console access yet need to implement areas.

If you use or if you see room for improvements or other ways to use this drop an email to me at ignar@carmeco.com.  I don't care what you do with it after that.

#define BUILD_AREA         "/build/area/"
#define LIVE_AREA          "/live/area/"

void do_acopy (CHAR_DATA *ch, char *argument)
{
    AREA_DATA *pArea;
    char arg[MAX_INPUT_LENGTH];
    char aname[MAX_STRING_LENGTH];
    char buf[100];
    argument = one_argument(argument,arg);
        
    if (arg[0] == '\0')
    {
        send_to_char("You must provide 'ALL' or a specific file name.\n\r",ch);
        return;
    }
    if (!str_cmp(arg, "ALL"))
    {
        strncpy(aname, "cp -p ", MAX_STRING_LENGTH);
        strncat(aname, BUILD_AREA, MAX_STRING_LENGTH);
        strncat(aname, "* ", MAX_STRING_LENGTH);
        strncat(aname, LIVE_AREA, MAX_STRING_LENGTH);
        system(aname);
        send_to_char("ALL areas copied to LIVE Port.\n\r",ch);
        return;
    }
    else
    {
        for(pArea = area_first; pArea; pArea = pArea->next)
        {
            if (!str_cmp(arg, pArea->file_name))
            {
                strncpy(aname, "cp -p ", MAX_STRING_LENGTH);
                strncat(aname, BUILD_AREA, MAX_STRING_LENGTH);
                strncat(aname, pArea->file_name, MAX_STRING_LENGTH);
                strncat(aname, " ", MAX_STRING_LENGTH);
                strncat(aname, LIVE_AREA, MAX_STRING_LENGTH);
                system(aname);
                sprintf(buf, "Area file '%s' copied to LIVE Port.\n\r", pArea->file_name);
                send_to_char(buf, ch);
                return;
            }
            else
            {
                send_to_char("File not found: Check alist.\n\r",ch);
                return;
            }
        }
    }
}