Program: 153736
Project: 153736
Buggy source:
@Override protected void parse_network_data(String[] data){
  if (data[0].equals("String_Node_Str") && data.length == 3) {
    System.out.println("String_Node_Str" + data[1] + "String_Node_Str"+ data[2]);
    EPlayerLogon event=new EPlayerLogon(new Point(Integer.parseInt(data[1]),Integer.parseInt(data[2])));
    event.post();
  }
  if (data[0].equals("String_Node_Str")) {
    int uid=Integer.parseInt(data[1]);
    StringBuilder sb=new StringBuilder();
    for (int i=2; i < data.length; i++) {
      sb.append(data[i].concat("String_Node_Str"));
    }
    String msg=sb.toString();
    if (uid != Player.character_id) {
      EChatMessage chat_event=new EChatMessage(uid,msg);
      chat_event.dispatch();
      chat_event.post();
    }
  }
  if (data[0].equals("String_Node_Str")) {
    int spawn_type=Integer.parseInt(data[1]);
switch (spawn_type) {
case 4:
      Entity mplayer_ent=new EntityNPC();
    mplayer_ent.set_controller(new NpcController());
  mplayer_ent.spawn(Integer.parseInt(data[2]),new Point(Integer.parseInt(data[4]),Integer.parseInt(data[5])));
break;
case 0:
Class building=BuildManager.get_building(data[2]);
EntBuilding ent_building;
try {
ent_building=(EntBuilding)building.newInstance();
}
 catch (Exception ex) {
ex.printStackTrace();
return;
}
ent_building.set_combat(new BasicCombat());
ent_building.spawn(54321,new Point(Integer.parseInt(data[3]),Integer.parseInt(data[4])));
break;
}
}
if (data[0].equals("String_Node_Str")) {
Entity ent=EntityManager.get_entity(Integer.parseInt(data[1]));
EntityManager.remove_entity(ent);
}
if (data[0].equals("String_Node_Str")) {
Entity ent=EntityManager.get_entity(Integer.parseInt(data[1]));
if (ent == null) {
System.err.println("String_Node_Str");
return;
}
if (data[2].equals("String_Node_Str")) {
if (ent.controller != null) {
((NpcController)ent.controller).set_destination(new Point(Integer.parseInt(data[3]),Integer.parseInt(data[4])));
}
}
 else {
ent.move_to(new Point(Integer.parseInt(data[3]),Integer.parseInt(data[4])));
}
}
}

Fixed version (ground truth):
@Override protected void parse_network_data(String[] data){
  if (data[0].equals("String_Node_Str") && data.length == 3) {
    System.out.println("String_Node_Str" + data[1] + "String_Node_Str"+ data[2]);
    EPlayerLogon event=new EPlayerLogon(new Point(Integer.parseInt(data[1]),Integer.parseInt(data[2])));
    event.post();
  }
  if (data[0].equals("String_Node_Str")) {
    int uid=Integer.parseInt(data[1]);
    StringBuilder sb=new StringBuilder();
    for (int i=2; i < data.length; i++) {
      sb.append(data[i].concat("String_Node_Str"));
    }
    String msg=sb.toString();
    if (uid != Player.character_id) {
      EChatMessage chat_event=new EChatMessage(uid,msg);
      chat_event.dispatch();
      chat_event.post();
    }
  }
  if (data[0].equals("String_Node_Str")) {
    int spawn_type=Integer.parseInt(data[1]);
switch (spawn_type) {
case 4:
      Entity mplayer_ent=new EntityNPC();
    mplayer_ent.set_controller(new NpcController());
  mplayer_ent.setLayerId(Player.get_zindex());
mplayer_ent.spawn(Integer.parseInt(data[2]),new Point(Integer.parseInt(data[4]),Integer.parseInt(data[5])));
break;
case 0:
Class building=BuildManager.get_building(data[2]);
EntBuilding ent_building;
try {
ent_building=(EntBuilding)building.newInstance();
}
 catch (Exception ex) {
ex.printStackTrace();
return;
}
ent_building.set_combat(new BasicCombat());
ent_building.spawn(54321,new Point(Integer.parseInt(data[3]),Integer.parseInt(data[4])));
break;
}
}
if (data[0].equals("String_Node_Str")) {
Entity ent=EntityManager.get_entity(Integer.parseInt(data[1]));
EntityManager.remove_entity(ent);
}
if (data[0].equals("String_Node_Str")) {
Entity ent=EntityManager.get_entity(Integer.parseInt(data[1]));
if (ent == null) {
System.err.println("String_Node_Str");
return;
}
if (data[2].equals("String_Node_Str")) {
if (ent.controller != null) {
((NpcController)ent.controller).set_destination(new Point(Integer.parseInt(data[3]),Integer.parseInt(data[4])));
}
}
 else {
ent.move_to(new Point(Integer.parseInt(data[3]),Integer.parseInt(data[4])));
}
}
}