Program: 187494
Project: 187494
Buggy source:
public void onEnable(){
  plugin=this;
  this.isReady=false;
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  NBTPetFile=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str");
  MyPetVersion.reset();
  MyPetLogger.setConsole(getServer().getConsoleSender());
  if (!Bukkit.getServer().getClass().getName().contains(MyPetVersion.getBukkitPacket())) {
    MyPetLogger.write(ChatColor.RED + "String_Node_Str" + MyPetVersion.getMinecraftVersion()+ "String_Node_Str"+ MyPetVersion.getBukkitPacket()+ "String_Node_Str");
    Bukkit.getPluginManager().disablePlugin(this);
    return;
  }
  PvPChecker.reset();
  Economy.reset();
  JavaScript.reset();
  Configuration.config=this.getConfig();
  Configuration.setDefault();
  Configuration.loadConfiguration();
  DebugLogger.setup();
  DebugLogger.info("String_Node_Str");
  DebugLogger.info("String_Node_Str" + MyPetVersion.getVersion() + "String_Node_Str"+ MyPetVersion.getBuild());
  DebugLogger.info("String_Node_Str" + getServer().getVersion());
  DebugLogger.info("String_Node_Str" + getServer().getOnlineMode());
  DebugLogger.info("String_Node_Str" + System.getProperty("String_Node_Str") + "String_Node_Str"+ System.getProperty("String_Node_Str")+ "String_Node_Str"+ System.getProperty("String_Node_Str"));
  DebugLogger.info("String_Node_Str" + System.getProperty("String_Node_Str") + "String_Node_Str"+ System.getProperty("String_Node_Str")+ "String_Node_Str"+ System.getProperty("String_Node_Str"));
  DebugLogger.info("String_Node_Str" + Arrays.toString(getServer().getPluginManager().getPlugins()));
  PlayerListener playerListener=new PlayerListener();
  getServer().getPluginManager().registerEvents(playerListener,this);
  VehicleListener vehicleListener=new VehicleListener();
  getServer().getPluginManager().registerEvents(vehicleListener,this);
  EntityListener entityListener=new EntityListener();
  getServer().getPluginManager().registerEvents(entityListener,this);
  LevelUpListener levelupListener=new LevelUpListener();
  getServer().getPluginManager().registerEvents(levelupListener,this);
  WorldListener worldListener=new WorldListener();
  getServer().getPluginManager().registerEvents(worldListener,this);
  PluginHookManager pluginSupportListener=new PluginHookManager();
  getServer().getPluginManager().registerEvents(pluginSupportListener,this);
  getCommand("String_Node_Str").setExecutor(new CommandName());
  getCommand("String_Node_Str").setExecutor(new CommandCall());
  getCommand("String_Node_Str").setExecutor(new CommandSendAway());
  getCommand("String_Node_Str").setExecutor(new CommandStop());
  getCommand("String_Node_Str").setExecutor(new CommandRelease());
  getCommand("String_Node_Str").setExecutor(new CommandHelp());
  getCommand("String_Node_Str").setExecutor(new CommandInventory());
  getCommand("String_Node_Str").setExecutor(new CommandPickup());
  getCommand("String_Node_Str").setExecutor(new CommandBehavior());
  getCommand("String_Node_Str").setExecutor(new CommandInfo());
  getCommand("String_Node_Str").setExecutor(new CommandAdmin());
  getCommand("String_Node_Str").setExecutor(new CommandSkill());
  getCommand("String_Node_Str").setExecutor(new CommandShowSkillTree());
  getCommand("String_Node_Str").setExecutor(new CommandChooseSkilltree());
  getCommand("String_Node_Str").setExecutor(new CommandBeacon());
  getCommand("String_Node_Str").setExecutor(new CommandRespawn());
  getCommand("String_Node_Str").setExecutor(new CommandPetType());
  getCommand("String_Node_Str").setExecutor(new CommandCaptureHelper());
  getCommand("String_Node_Str").setExecutor(new CommandOptions());
  registerSkillsInfo();
  registerSkills();
  File defaultSkillConfigNBT=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator+ "String_Node_Str");
  File defaultSkillConfigYAML=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator+ "String_Node_Str");
  File defaultSkillConfigJSON=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator+ "String_Node_Str");
  if (!defaultSkillConfigNBT.exists() && !defaultSkillConfigYAML.exists() && !defaultSkillConfigJSON.exists()) {
    try {
      InputStream template=getPlugin().getResource("String_Node_Str");
      OutputStream out=new FileOutputStream(defaultSkillConfigNBT);
      byte[] buf=new byte[1024];
      int len;
      while ((len=template.read(buf)) > 0) {
        out.write(buf,0,len);
      }
      template.close();
      out.close();
      MyPetLogger.write("String_Node_Str");
      DebugLogger.info("String_Node_Str");
    }
 catch (    IOException ex) {
      MyPetLogger.write(ChatColor.RED + "String_Node_Str" + ChatColor.RESET+ "String_Node_Str");
      DebugLogger.info("String_Node_Str");
    }
  }
  String[] petTypes=new String[MyPetType.values().length + 1];
  petTypes[0]="String_Node_Str";
  for (int i=1; i <= MyPetType.values().length; i++) {
    petTypes[i]=MyPetType.values()[i - 1].getTypeName();
  }
  SkillTreeMobType.clearMobTypes();
  SkillTreeLoaderNBT.getSkilltreeLoader().loadSkillTrees(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str",petTypes);
  SkillTreeLoaderYAML.getSkilltreeLoader().loadSkillTrees(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str",petTypes);
  SkillTreeLoaderJSON.getSkilltreeLoader().loadSkillTrees(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str",petTypes);
  Set<String> skilltreeNames=new LinkedHashSet<String>();
  for (  MyPetType mobType : MyPetType.values()) {
    SkillTreeMobType skillTreeMobType=SkillTreeMobType.getMobTypeByName(mobType.getTypeName());
    SkillTreeLoader.addDefault(skillTreeMobType);
    SkillTreeLoader.manageInheritance(skillTreeMobType);
    skilltreeNames.addAll(skillTreeMobType.getSkillTreeNames());
  }
  for (  String skilltreeName : skilltreeNames) {
    try {
      Bukkit.getPluginManager().addPermission(new Permission("String_Node_Str" + skilltreeName));
    }
 catch (    Exception ignored) {
      DebugLogger.warning("String_Node_Str" + "String_Node_Str" + skilltreeName + "String_Node_Str");
    }
  }
  BukkitUtil.registerMyPetEntity(EntityMyCreeper.class,"String_Node_Str",50);
  BukkitUtil.registerMyPetEntity(EntityMySkeleton.class,"String_Node_Str",51);
  BukkitUtil.registerMyPetEntity(EntityMySpider.class,"String_Node_Str",52);
  BukkitUtil.registerMyPetEntity(EntityMyGiant.class,"String_Node_Str",53);
  BukkitUtil.registerMyPetEntity(EntityMyZombie.class,"String_Node_Str",54);
  BukkitUtil.registerMyPetEntity(EntityMySlime.class,"String_Node_Str",55);
  BukkitUtil.registerMyPetEntity(EntityMyGhast.class,"String_Node_Str",56);
  BukkitUtil.registerMyPetEntity(EntityMyPigZombie.class,"String_Node_Str",57);
  BukkitUtil.registerMyPetEntity(EntityMyEnderman.class,"String_Node_Str",58);
  BukkitUtil.registerMyPetEntity(EntityMyCaveSpider.class,"String_Node_Str",59);
  BukkitUtil.registerMyPetEntity(EntityMySilverfish.class,"String_Node_Str",60);
  BukkitUtil.registerMyPetEntity(EntityMyBlaze.class,"String_Node_Str",61);
  BukkitUtil.registerMyPetEntity(EntityMyMagmaCube.class,"String_Node_Str",62);
  BukkitUtil.registerMyPetEntity(EntityMyWither.class,"String_Node_Str",64);
  BukkitUtil.registerMyPetEntity(EntityMyBat.class,"String_Node_Str",65);
  BukkitUtil.registerMyPetEntity(EntityMyWitch.class,"String_Node_Str",66);
  BukkitUtil.registerMyPetEntity(EntityMyEndermite.class,"String_Node_Str",67);
  BukkitUtil.registerMyPetEntity(EntityMyGuardian.class,"String_Node_Str",68);
  BukkitUtil.registerMyPetEntity(EntityMyPig.class,"String_Node_Str",90);
  BukkitUtil.registerMyPetEntity(EntityMySheep.class,"String_Node_Str",91);
  BukkitUtil.registerMyPetEntity(EntityMyCow.class,"String_Node_Str",92);
  BukkitUtil.registerMyPetEntity(EntityMyChicken.class,"String_Node_Str",93);
  BukkitUtil.registerMyPetEntity(EntityMySquid.class,"String_Node_Str",94);
  BukkitUtil.registerMyPetEntity(EntityMyWolf.class,"String_Node_Str",95);
  BukkitUtil.registerMyPetEntity(EntityMyMooshroom.class,"String_Node_Str",96);
  BukkitUtil.registerMyPetEntity(EntityMySnowman.class,"String_Node_Str",97);
  BukkitUtil.registerMyPetEntity(EntityMyOcelot.class,"String_Node_Str",98);
  BukkitUtil.registerMyPetEntity(EntityMyIronGolem.class,"String_Node_Str",99);
  BukkitUtil.registerMyPetEntity(EntityMyHorse.class,"String_Node_Str",100);
  BukkitUtil.registerMyPetEntity(EntityMyRabbit.class,"String_Node_Str",101);
  BukkitUtil.registerMyPetEntity(EntityMyVillager.class,"String_Node_Str",120);
  new Locales();
  Bungee.reset();
  File groupsFile=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str");
  if (Backup.MAKE_BACKUPS) {
    backupManager=new Backup(NBTPetFile,new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator));
  }
  loadGroups(groupsFile);
  loadData(NBTPetFile);
  if (pluginStorage == null) {
    pluginStorage=new PluginStorage(new TagCompound());
  }
  Timer.startTimer();
  MobArena.findPlugin();
  Minigames.findPlugin();
  PvPArena.findPlugin();
  BattleArena.findPlugin();
  SurvivalGames.findPlugin();
  UltimateSurvivalGames.findPlugin();
  MyHungerGames.findPlugin();
  try {
    Metrics metrics=new Metrics(this);
    boolean metricsActive=false;
    if (!metrics.isOptOut()) {
      Graph graphPercent=metrics.createGraph("String_Node_Str");
      Graph graphCount=metrics.createGraph("String_Node_Str");
      Graph graphTotalCount=metrics.createGraph("String_Node_Str");
      for (      final MyPetType petType : MyPetType.values()) {
        Plotter plotter=new Metrics.Plotter(petType.getTypeName()){
          final MyPetType type=petType;
          @Override public int getValue(){
            return MyPetList.countMyPets(type);
          }
        }
;
        graphPercent.addPlotter(plotter);
        graphCount.addPlotter(plotter);
      }
      Plotter plotter=new Metrics.Plotter("String_Node_Str"){
        @Override public int getValue(){
          return MyPetList.countMyPets();
        }
      }
;
      graphTotalCount.addPlotter(plotter);
      plotter=new Metrics.Plotter("String_Node_Str"){
        @Override public int getValue(){
          return MyPetList.countActiveMyPets();
        }
      }
;
      graphTotalCount.addPlotter(plotter);
      metricsActive=metrics.start();
    }
    DebugLogger.info("String_Node_Str" + (metricsActive ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
  }
 catch (  IOException e) {
    MyPetLogger.write(e.getMessage());
  }
  MyPetLogger.write("String_Node_Str" + MyPetVersion.getVersion() + "String_Node_Str"+ MyPetVersion.getBuild()+ ChatColor.GREEN+ "String_Node_Str");
  this.isReady=true;
  Timer.addTask(this);
  for (  Player player : getServer().getOnlinePlayers()) {
    MyPetPlayer.onlinePlayerUUIDList.add(player.getUniqueId());
    if (MyPetPlayer.isMyPetPlayer(player)) {
      MyPetPlayer myPetPlayer=MyPetPlayer.getOrCreateMyPetPlayer(player);
      WorldGroup joinGroup=WorldGroup.getGroupByWorld(player.getWorld().getName());
      if (joinGroup != null && !myPetPlayer.hasMyPet() && myPetPlayer.hasMyPetInWorldGroup(joinGroup.getName())) {
        UUID groupMyPetUUID=myPetPlayer.getMyPetForWorldGroup(joinGroup.getName());
        for (        InactiveMyPet inactiveMyPet : myPetPlayer.getInactiveMyPets()) {
          if (inactiveMyPet.getUUID().equals(groupMyPetUUID)) {
            MyPetList.setMyPetActive(inactiveMyPet);
            break;
          }
        }
        if (!myPetPlayer.hasMyPet()) {
          myPetPlayer.setMyPetForWorldGroup(joinGroup.getName(),null);
        }
      }
      if (myPetPlayer.hasMyPet()) {
        MyPet myPet=MyPetList.getMyPet(player);
        if (myPet.getStatus() == PetState.Dead) {
          player.sendMessage(Util.formatText(Locales.getString("String_Node_Str",BukkitUtil.getPlayerLanguage(player)),myPet.getPetName(),myPet.getRespawnTime()));
        }
 else         if (myPet.wantToRespawn()) {
          myPet.createPet();
        }
 else {
          myPet.setStatus(PetState.Despawned);
        }
      }
      myPetPlayer.checkForDonation();
    }
  }
  saveData(false);
  DebugLogger.info("String_Node_Str");
}

Fixed version (ground truth):
public void onEnable(){
  plugin=this;
  this.isReady=false;
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  new File(getPlugin().getDataFolder().getAbsolutePath() + File.separator + "String_Node_Str"+ File.separator).mkdirs();
  NBTPetFile=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str");
  MyPetVersion.reset();
  MyPetLogger.setConsole(getServer().getConsoleSender());
  if (!Bukkit.getServer().getClass().getName().contains(MyPetVersion.getBukkitPacket())) {
    MyPetLogger.write(ChatColor.RED + "String_Node_Str" + MyPetVersion.getMinecraftVersion()+ "String_Node_Str"+ MyPetVersion.getBukkitPacket()+ "String_Node_Str");
    Bukkit.getPluginManager().disablePlugin(this);
    return;
  }
  PvPChecker.reset();
  PluginHookManager.reset();
  Economy.reset();
  JavaScript.reset();
  Configuration.config=this.getConfig();
  Configuration.setDefault();
  Configuration.loadConfiguration();
  DebugLogger.setup();
  DebugLogger.info("String_Node_Str");
  DebugLogger.info("String_Node_Str" + MyPetVersion.getVersion() + "String_Node_Str"+ MyPetVersion.getBuild());
  DebugLogger.info("String_Node_Str" + getServer().getVersion());
  DebugLogger.info("String_Node_Str" + getServer().getOnlineMode());
  DebugLogger.info("String_Node_Str" + System.getProperty("String_Node_Str") + "String_Node_Str"+ System.getProperty("String_Node_Str")+ "String_Node_Str"+ System.getProperty("String_Node_Str"));
  DebugLogger.info("String_Node_Str" + System.getProperty("String_Node_Str") + "String_Node_Str"+ System.getProperty("String_Node_Str")+ "String_Node_Str"+ System.getProperty("String_Node_Str"));
  DebugLogger.info("String_Node_Str" + Arrays.toString(getServer().getPluginManager().getPlugins()));
  PlayerListener playerListener=new PlayerListener();
  getServer().getPluginManager().registerEvents(playerListener,this);
  VehicleListener vehicleListener=new VehicleListener();
  getServer().getPluginManager().registerEvents(vehicleListener,this);
  EntityListener entityListener=new EntityListener();
  getServer().getPluginManager().registerEvents(entityListener,this);
  LevelUpListener levelupListener=new LevelUpListener();
  getServer().getPluginManager().registerEvents(levelupListener,this);
  WorldListener worldListener=new WorldListener();
  getServer().getPluginManager().registerEvents(worldListener,this);
  PluginHookManager pluginSupportListener=new PluginHookManager();
  getServer().getPluginManager().registerEvents(pluginSupportListener,this);
  getCommand("String_Node_Str").setExecutor(new CommandName());
  getCommand("String_Node_Str").setExecutor(new CommandCall());
  getCommand("String_Node_Str").setExecutor(new CommandSendAway());
  getCommand("String_Node_Str").setExecutor(new CommandStop());
  getCommand("String_Node_Str").setExecutor(new CommandRelease());
  getCommand("String_Node_Str").setExecutor(new CommandHelp());
  getCommand("String_Node_Str").setExecutor(new CommandInventory());
  getCommand("String_Node_Str").setExecutor(new CommandPickup());
  getCommand("String_Node_Str").setExecutor(new CommandBehavior());
  getCommand("String_Node_Str").setExecutor(new CommandInfo());
  getCommand("String_Node_Str").setExecutor(new CommandAdmin());
  getCommand("String_Node_Str").setExecutor(new CommandSkill());
  getCommand("String_Node_Str").setExecutor(new CommandShowSkillTree());
  getCommand("String_Node_Str").setExecutor(new CommandChooseSkilltree());
  getCommand("String_Node_Str").setExecutor(new CommandBeacon());
  getCommand("String_Node_Str").setExecutor(new CommandRespawn());
  getCommand("String_Node_Str").setExecutor(new CommandPetType());
  getCommand("String_Node_Str").setExecutor(new CommandCaptureHelper());
  getCommand("String_Node_Str").setExecutor(new CommandOptions());
  registerSkillsInfo();
  registerSkills();
  File defaultSkillConfigNBT=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator+ "String_Node_Str");
  File defaultSkillConfigYAML=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator+ "String_Node_Str");
  File defaultSkillConfigJSON=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator+ "String_Node_Str");
  if (!defaultSkillConfigNBT.exists() && !defaultSkillConfigYAML.exists() && !defaultSkillConfigJSON.exists()) {
    try {
      InputStream template=getPlugin().getResource("String_Node_Str");
      OutputStream out=new FileOutputStream(defaultSkillConfigNBT);
      byte[] buf=new byte[1024];
      int len;
      while ((len=template.read(buf)) > 0) {
        out.write(buf,0,len);
      }
      template.close();
      out.close();
      MyPetLogger.write("String_Node_Str");
      DebugLogger.info("String_Node_Str");
    }
 catch (    IOException ex) {
      MyPetLogger.write(ChatColor.RED + "String_Node_Str" + ChatColor.RESET+ "String_Node_Str");
      DebugLogger.info("String_Node_Str");
    }
  }
  String[] petTypes=new String[MyPetType.values().length + 1];
  petTypes[0]="String_Node_Str";
  for (int i=1; i <= MyPetType.values().length; i++) {
    petTypes[i]=MyPetType.values()[i - 1].getTypeName();
  }
  SkillTreeMobType.clearMobTypes();
  SkillTreeLoaderNBT.getSkilltreeLoader().loadSkillTrees(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str",petTypes);
  SkillTreeLoaderYAML.getSkilltreeLoader().loadSkillTrees(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str",petTypes);
  SkillTreeLoaderJSON.getSkilltreeLoader().loadSkillTrees(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str",petTypes);
  Set<String> skilltreeNames=new LinkedHashSet<String>();
  for (  MyPetType mobType : MyPetType.values()) {
    SkillTreeMobType skillTreeMobType=SkillTreeMobType.getMobTypeByName(mobType.getTypeName());
    SkillTreeLoader.addDefault(skillTreeMobType);
    SkillTreeLoader.manageInheritance(skillTreeMobType);
    skilltreeNames.addAll(skillTreeMobType.getSkillTreeNames());
  }
  for (  String skilltreeName : skilltreeNames) {
    try {
      Bukkit.getPluginManager().addPermission(new Permission("String_Node_Str" + skilltreeName));
    }
 catch (    Exception ignored) {
      DebugLogger.warning("String_Node_Str" + "String_Node_Str" + skilltreeName + "String_Node_Str");
    }
  }
  BukkitUtil.registerMyPetEntity(EntityMyCreeper.class,"String_Node_Str",50);
  BukkitUtil.registerMyPetEntity(EntityMySkeleton.class,"String_Node_Str",51);
  BukkitUtil.registerMyPetEntity(EntityMySpider.class,"String_Node_Str",52);
  BukkitUtil.registerMyPetEntity(EntityMyGiant.class,"String_Node_Str",53);
  BukkitUtil.registerMyPetEntity(EntityMyZombie.class,"String_Node_Str",54);
  BukkitUtil.registerMyPetEntity(EntityMySlime.class,"String_Node_Str",55);
  BukkitUtil.registerMyPetEntity(EntityMyGhast.class,"String_Node_Str",56);
  BukkitUtil.registerMyPetEntity(EntityMyPigZombie.class,"String_Node_Str",57);
  BukkitUtil.registerMyPetEntity(EntityMyEnderman.class,"String_Node_Str",58);
  BukkitUtil.registerMyPetEntity(EntityMyCaveSpider.class,"String_Node_Str",59);
  BukkitUtil.registerMyPetEntity(EntityMySilverfish.class,"String_Node_Str",60);
  BukkitUtil.registerMyPetEntity(EntityMyBlaze.class,"String_Node_Str",61);
  BukkitUtil.registerMyPetEntity(EntityMyMagmaCube.class,"String_Node_Str",62);
  BukkitUtil.registerMyPetEntity(EntityMyWither.class,"String_Node_Str",64);
  BukkitUtil.registerMyPetEntity(EntityMyBat.class,"String_Node_Str",65);
  BukkitUtil.registerMyPetEntity(EntityMyWitch.class,"String_Node_Str",66);
  BukkitUtil.registerMyPetEntity(EntityMyEndermite.class,"String_Node_Str",67);
  BukkitUtil.registerMyPetEntity(EntityMyGuardian.class,"String_Node_Str",68);
  BukkitUtil.registerMyPetEntity(EntityMyPig.class,"String_Node_Str",90);
  BukkitUtil.registerMyPetEntity(EntityMySheep.class,"String_Node_Str",91);
  BukkitUtil.registerMyPetEntity(EntityMyCow.class,"String_Node_Str",92);
  BukkitUtil.registerMyPetEntity(EntityMyChicken.class,"String_Node_Str",93);
  BukkitUtil.registerMyPetEntity(EntityMySquid.class,"String_Node_Str",94);
  BukkitUtil.registerMyPetEntity(EntityMyWolf.class,"String_Node_Str",95);
  BukkitUtil.registerMyPetEntity(EntityMyMooshroom.class,"String_Node_Str",96);
  BukkitUtil.registerMyPetEntity(EntityMySnowman.class,"String_Node_Str",97);
  BukkitUtil.registerMyPetEntity(EntityMyOcelot.class,"String_Node_Str",98);
  BukkitUtil.registerMyPetEntity(EntityMyIronGolem.class,"String_Node_Str",99);
  BukkitUtil.registerMyPetEntity(EntityMyHorse.class,"String_Node_Str",100);
  BukkitUtil.registerMyPetEntity(EntityMyRabbit.class,"String_Node_Str",101);
  BukkitUtil.registerMyPetEntity(EntityMyVillager.class,"String_Node_Str",120);
  new Locales();
  Bungee.reset();
  File groupsFile=new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str");
  if (Backup.MAKE_BACKUPS) {
    backupManager=new Backup(NBTPetFile,new File(getPlugin().getDataFolder().getPath() + File.separator + "String_Node_Str"+ File.separator));
  }
  loadGroups(groupsFile);
  loadData(NBTPetFile);
  if (pluginStorage == null) {
    pluginStorage=new PluginStorage(new TagCompound());
  }
  Timer.startTimer();
  MobArena.findPlugin();
  Minigames.findPlugin();
  PvPArena.findPlugin();
  BattleArena.findPlugin();
  SurvivalGames.findPlugin();
  UltimateSurvivalGames.findPlugin();
  MyHungerGames.findPlugin();
  try {
    Metrics metrics=new Metrics(this);
    boolean metricsActive=false;
    if (!metrics.isOptOut()) {
      Graph graphPercent=metrics.createGraph("String_Node_Str");
      Graph graphCount=metrics.createGraph("String_Node_Str");
      Graph graphTotalCount=metrics.createGraph("String_Node_Str");
      for (      final MyPetType petType : MyPetType.values()) {
        Plotter plotter=new Metrics.Plotter(petType.getTypeName()){
          final MyPetType type=petType;
          @Override public int getValue(){
            return MyPetList.countMyPets(type);
          }
        }
;
        graphPercent.addPlotter(plotter);
        graphCount.addPlotter(plotter);
      }
      Plotter plotter=new Metrics.Plotter("String_Node_Str"){
        @Override public int getValue(){
          return MyPetList.countMyPets();
        }
      }
;
      graphTotalCount.addPlotter(plotter);
      plotter=new Metrics.Plotter("String_Node_Str"){
        @Override public int getValue(){
          return MyPetList.countActiveMyPets();
        }
      }
;
      graphTotalCount.addPlotter(plotter);
      metricsActive=metrics.start();
    }
    DebugLogger.info("String_Node_Str" + (metricsActive ? "String_Node_Str" : "String_Node_Str") + "String_Node_Str");
  }
 catch (  IOException e) {
    MyPetLogger.write(e.getMessage());
  }
  MyPetLogger.write("String_Node_Str" + MyPetVersion.getVersion() + "String_Node_Str"+ MyPetVersion.getBuild()+ ChatColor.GREEN+ "String_Node_Str");
  this.isReady=true;
  Timer.addTask(this);
  for (  Player player : getServer().getOnlinePlayers()) {
    MyPetPlayer.onlinePlayerUUIDList.add(player.getUniqueId());
    if (MyPetPlayer.isMyPetPlayer(player)) {
      MyPetPlayer myPetPlayer=MyPetPlayer.getOrCreateMyPetPlayer(player);
      WorldGroup joinGroup=WorldGroup.getGroupByWorld(player.getWorld().getName());
      if (joinGroup != null && !myPetPlayer.hasMyPet() && myPetPlayer.hasMyPetInWorldGroup(joinGroup.getName())) {
        UUID groupMyPetUUID=myPetPlayer.getMyPetForWorldGroup(joinGroup.getName());
        for (        InactiveMyPet inactiveMyPet : myPetPlayer.getInactiveMyPets()) {
          if (inactiveMyPet.getUUID().equals(groupMyPetUUID)) {
            MyPetList.setMyPetActive(inactiveMyPet);
            break;
          }
        }
        if (!myPetPlayer.hasMyPet()) {
          myPetPlayer.setMyPetForWorldGroup(joinGroup.getName(),null);
        }
      }
      if (myPetPlayer.hasMyPet()) {
        MyPet myPet=MyPetList.getMyPet(player);
        if (myPet.getStatus() == PetState.Dead) {
          player.sendMessage(Util.formatText(Locales.getString("String_Node_Str",BukkitUtil.getPlayerLanguage(player)),myPet.getPetName(),myPet.getRespawnTime()));
        }
 else         if (myPet.wantToRespawn()) {
          myPet.createPet();
        }
 else {
          myPet.setStatus(PetState.Despawned);
        }
      }
      myPetPlayer.checkForDonation();
    }
  }
  saveData(false);
  DebugLogger.info("String_Node_Str");
}