This is an archive of the Heroes project, as used on Herocraft. The plugin used to distribute it's source, but new updates are now not available. The licence allows you to use this code but not make modifications. The licence allows anyone to distribute this code, as long as you also distribute the licence. I am in no way connected to the project, just wanted to keep it available, in case someone wanted to learn from it.
I was looking at your save/load code for the player yml files:
File pFolder = new File(playerFolder + File.separator + player.getName().toLowerCase().substring(0, 1));
pFolder.mkdirs();
File playerFile = new File(pFolder, player.getName() + ".yml");
This will accually FAIL if a player changes his minecraft name. Then there would be no file for Heroes to load and think the player is a new Heroes user. It would be much better to store them as an UUID name instead: player.getUniqueId();