This is a really old bug in OLC.  The problem is with the
save_other_helps function.  This function will write over any area
files that contain helpfiles with *only* the helpfiles.

So you need to modify save_other_helps to treat regular areas that
also contain helpfiles differently than areas that only contain
helpfiles.  I can't find my fixed version (my helps work very
differently now and I can't find an old backup), but it went something
like this:

void save_area (AREA_DATA * pArea);
void save_other_helps (CHAR_DATA * ch)
{
  extern HELP_AREA *had_list;
  HELP_AREA *ha;
  FILE *fp;

  for (ha = had_list; ha; ha = ha->next)
    if (ha->changed == TRUE)
    {
      if (ch)
        printf_to_char (ch, "%s\n\r", ha->filename);
      if (ha->area)
      {
        save_area(ha->area);
        continue;
      }
      fp = fopen (ha->filename, "w");
      if (!fp)
      {
        perror (ha->filename);
        continue;
      }
      save_helps (fp, ha);
      fprintf (fp, "#$\n");
      fclose (fp);
    }
}

On 5/4/05, Brittany Dannenberg <[EMAIL PROTECTED]> wrote:
> Wow, this is really frustrating..
> 
> I burned my entire ROM to a cd and brought it over to
> my new server, started it up, and suddenly a bunch of
> helpfiles can't be opened. So... I'm in my new beach
> area that I'm building, I make a new helpfile for one
> that previously existed and it totally writes over my
> beach area. The entire area went poof and all that
> exists is the helpfile that I made. What the crap?
> Does anyone know why this is happening? Any help would
> be awesome. Thanks.
> 
> Brittany.

Reply via email to