protected override void Process()
 {
     if (NpcMgr.HasChanges)
     {
         string npc_filename = Paths.GetNPCData();
         setStatus("Saving NPC Data...", false);
         BackupHelper.Create(npc_filename);
         NpcMgr.Save(npc_filename, npc_Progress);
     }
     //
     if (ItemMgr.HasChanges)
     {
         string item_filename = Paths.GetItemData();
         setStatus("Saving Item Data...", false);
         BackupHelper.Create(item_filename);
         ItemMgr.Save(item_filename, item_Progress);
     }
     //
     if (ScriptMgr.HasChanges)
     {
         string ai_filename = Paths.GetAIData();
         setStatus("Compiling AI Scripts...", true);
         BackupHelper.Create(ai_filename);
         is_compiled    = false;
         CompilerResult = ScriptMgr.Compile(ai_Progress);
     }
 }