Program: 44418
Project: 44418
Buggy source:
public void load() throws Exception {
  config=getConfig(MAIN_CONFIG_FILE);
  config.load();
  isEnabled=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.isIntegerCurrency=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.canCampSpawner=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.shouldClearCampDrops=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.shouldOverrideDrops=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.isFixedDrops=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.campRadius=config.getInt("String_Node_Str",15);
  ecoRewardManager.hasBowRewards=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.hasDeathPenalty=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.isPercentPenalty=!config.getBoolean("String_Node_Str",false);
  ecoRewardManager.penaltyAmount=config.getDouble("String_Node_Str",0.0D);
  ecoRewardManager.canHuntUnderSeaLevel=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.isWolverineMode=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.shouldOutputMessages=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.shouldOutputNoRewardMessage=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.shouldOutputSpawnerMessage=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.noBowRewardMessage=convertMessage(config.getString("String_Node_Str"));
  ecoRewardManager.noCampMessage=convertMessage(config.getString("String_Node_Str"));
  ecoRewardManager.deathPenaltyMessage=convertMessage(config.getString("String_Node_Str"));
  for (  String groupMultiplierName : config.getKeys("String_Node_Str")) {
    ecoRewardManager.groupMultiplier.put(groupMultiplierName,Double.valueOf(config.getDouble("String_Node_Str" + groupMultiplierName + "String_Node_Str",0.0D)));
  }
  ecoRewardManager.rewards=new HashMap<CreatureType,ecoReward>();
  for (  String rewardName : config.getKeys("String_Node_Str")) {
    ecoReward reward=new ecoReward();
    reward.setRewardName(rewardName);
    reward.setCreatureType(CreatureType.fromName(rewardName));
    String root="String_Node_Str" + rewardName;
    reward.setDrops(parseDrops(config.getString(root + "String_Node_Str")));
    reward.setCoinMax(config.getDouble(root + "String_Node_Str",0));
    reward.setCoinMin(config.getDouble(root + "String_Node_Str",5));
    reward.setCoinPercentage(config.getDouble(root + "String_Node_Str",50));
    reward.setNoRewardMessage(convertMessage(config.getString(root + "String_Node_Str")));
    reward.setRewardMessage(convertMessage(config.getString(root + "String_Node_Str")));
    reward.setPenaltyMessage(convertMessage(config.getString(root + "String_Node_Str")));
    if (rewardName.equals("String_Node_Str")) {
      ecoRewardManager.spawnerReward=reward;
    }
 else {
      ecoRewardManager.rewards.put(reward.getCreatureType(),reward);
    }
  }
}

Fixed version (ground truth):
public void load() throws Exception {
  config=getConfig(MAIN_CONFIG_FILE);
  config.load();
  isEnabled=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.isIntegerCurrency=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.canCampSpawner=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.shouldClearCampDrops=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.shouldOverrideDrops=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.isFixedDrops=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.campRadius=config.getInt("String_Node_Str",15);
  ecoRewardManager.hasBowRewards=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.hasDeathPenalty=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.isPercentPenalty=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.penaltyAmount=config.getDouble("String_Node_Str",0.0D);
  ecoRewardManager.canHuntUnderSeaLevel=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.isWolverineMode=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.shouldOutputMessages=config.getBoolean("String_Node_Str",true);
  ecoRewardManager.shouldOutputNoRewardMessage=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.shouldOutputSpawnerMessage=config.getBoolean("String_Node_Str",false);
  ecoRewardManager.noBowRewardMessage=convertMessage(config.getString("String_Node_Str"));
  ecoRewardManager.noCampMessage=convertMessage(config.getString("String_Node_Str"));
  ecoRewardManager.deathPenaltyMessage=convertMessage(config.getString("String_Node_Str"));
  for (  String groupMultiplierName : config.getKeys("String_Node_Str")) {
    ecoRewardManager.groupMultiplier.put(groupMultiplierName,Double.valueOf(config.getDouble("String_Node_Str" + groupMultiplierName + "String_Node_Str",0.0D)));
  }
  ecoRewardManager.rewards=new HashMap<CreatureType,ecoReward>();
  for (  String rewardName : config.getKeys("String_Node_Str")) {
    ecoReward reward=new ecoReward();
    reward.setRewardName(rewardName);
    reward.setCreatureType(CreatureType.fromName(rewardName));
    String root="String_Node_Str" + rewardName;
    reward.setDrops(parseDrops(config.getString(root + "String_Node_Str")));
    reward.setCoinMax(config.getDouble(root + "String_Node_Str",0));
    reward.setCoinMin(config.getDouble(root + "String_Node_Str",5));
    reward.setCoinPercentage(config.getDouble(root + "String_Node_Str",50));
    reward.setNoRewardMessage(convertMessage(config.getString(root + "String_Node_Str")));
    reward.setRewardMessage(convertMessage(config.getString(root + "String_Node_Str")));
    reward.setPenaltyMessage(convertMessage(config.getString(root + "String_Node_Str")));
    if (rewardName.equals("String_Node_Str")) {
      ecoRewardManager.spawnerReward=reward;
    }
 else {
      ecoRewardManager.rewards.put(reward.getCreatureType(),reward);
    }
  }
}