Program: 86098
Project: 86098
Buggy source:
@EventHandler public void onPlayerJoin(PlayerJoinEvent event){
  final Player p=event.getPlayer();
  pli.getStatsInstance().update(p.getName());
  if (plugin.getConfig().isSet("String_Node_Str" + p.getName())) {
    Bukkit.getScheduler().runTaskLater(MinigamesAPI.getAPI(),new Runnable(){
      public void run(){
        Util.teleportPlayerFixed(p,Util.getMainLobby(plugin));
        p.setFlying(false);
        try {
          p.getInventory().clear();
          p.updateInventory();
          if (plugin.getConfig().isSet("String_Node_Str" + p.getName() + "String_Node_Str")) {
            for (            String key : plugin.getConfig().getConfigurationSection("String_Node_Str" + p.getName() + "String_Node_Str").getKeys(false)) {
              p.getInventory().addItem(plugin.getConfig().getItemStack("String_Node_Str" + p.getName() + "String_Node_Str"+ key));
            }
          }
          p.updateInventory();
          p.setWalkSpeed(0.2F);
          p.removePotionEffect(PotionEffectType.JUMP);
        }
 catch (        Exception e) {
          e.printStackTrace();
          Util.sendMessage(p,ChatColor.RED + "String_Node_Str");
        }
        plugin.getConfig().set("String_Node_Str" + p.getName(),null);
        plugin.saveConfig();
      }
    }
,5);
  }
  if (plugin.getConfig().getBoolean("String_Node_Str")) {
    int c=0;
    final List<String> arenas=new ArrayList<String>();
    for (    String arena : pli.getArenasConfig().getConfig().getKeys(false)) {
      if (!arena.equalsIgnoreCase("String_Node_Str") && !arena.equalsIgnoreCase("String_Node_Str") && !arena.equalsIgnoreCase("String_Node_Str")) {
        c++;
        arenas.add(arena);
      }
    }
    if (c < 1) {
      MinigamesAPI.getAPI().getLogger().severe("String_Node_Str");
      return;
    }
    Bukkit.getScheduler().runTaskLater(MinigamesAPI.getAPI(),new Runnable(){
      public void run(){
        if (p != null) {
          pli.getArenas().get(0).joinPlayerLobby(p.getName());
        }
      }
    }
,30L);
  }
}

Fixed version (ground truth):
@EventHandler public void onPlayerJoin(PlayerJoinEvent event){
  final Player p=event.getPlayer();
  pli.getStatsInstance().update(p.getName());
  if (plugin.getConfig().isSet("String_Node_Str" + p.getName())) {
    Bukkit.getScheduler().runTaskLater(MinigamesAPI.getAPI(),new Runnable(){
      public void run(){
        Util.teleportPlayerFixed(p,Util.getMainLobby(plugin));
        p.setFlying(false);
        try {
          p.getInventory().clear();
          p.updateInventory();
          if (plugin.getConfig().isSet("String_Node_Str" + p.getName() + "String_Node_Str")) {
            for (            String key : plugin.getConfig().getConfigurationSection("String_Node_Str" + p.getName() + "String_Node_Str").getKeys(false)) {
              p.getInventory().addItem(plugin.getConfig().getItemStack("String_Node_Str" + p.getName() + "String_Node_Str"+ key));
            }
          }
          p.updateInventory();
          p.setWalkSpeed(0.2F);
          p.removePotionEffect(PotionEffectType.JUMP);
          SpectatorManager.setSpectate(p,false);
        }
 catch (        Exception e) {
          e.printStackTrace();
          Util.sendMessage(p,ChatColor.RED + "String_Node_Str");
        }
        plugin.getConfig().set("String_Node_Str" + p.getName(),null);
        plugin.saveConfig();
      }
    }
,5);
  }
  if (plugin.getConfig().getBoolean("String_Node_Str")) {
    int c=0;
    final List<String> arenas=new ArrayList<String>();
    for (    String arena : pli.getArenasConfig().getConfig().getKeys(false)) {
      if (!arena.equalsIgnoreCase("String_Node_Str") && !arena.equalsIgnoreCase("String_Node_Str") && !arena.equalsIgnoreCase("String_Node_Str")) {
        c++;
        arenas.add(arena);
      }
    }
    if (c < 1) {
      MinigamesAPI.getAPI().getLogger().severe("String_Node_Str");
      return;
    }
    Bukkit.getScheduler().runTaskLater(MinigamesAPI.getAPI(),new Runnable(){
      public void run(){
        if (p != null) {
          pli.getArenas().get(0).joinPlayerLobby(p.getName());
        }
      }
    }
,30L);
  }
}