Program: 152194
Project: 152194
Buggy source:
private void loadSection(int sectionX,int sectionY,int height,World world,int bigX,int bigY){
  Sector s=null;
  try {
    String filename="String_Node_Str" + height + "String_Node_Str"+ sectionX+ "String_Node_Str"+ sectionY;
    ZipEntry e=tileArchive.getEntry(filename);
    if (e == null) {
      throw new Exception("String_Node_Str" + filename);
    }
    ByteBuffer data=DataConversions.streamToBuffer(new BufferedInputStream(tileArchive.getInputStream(e)));
    s=Sector.unpack(data);
  }
 catch (  Exception e) {
    Logger.error(e);
  }
  for (int y=0; y < Sector.HEIGHT; y++) {
    for (int x=0; x < Sector.WIDTH; x++) {
      int bx=bigX + x;
      int by=bigY + y;
      if (!world.withinWorld(bx,by)) {
        continue;
      }
      world.getTileValue(bx,by).overlay=s.getTile(x,y).groundOverlay;
      world.getTileValue(bx,by).diagWallVal=s.getTile(x,y).diagonalWalls;
      world.getTileValue(bx,by).horizontalWallVal=s.getTile(x,y).horizontalWall;
      world.getTileValue(bx,by).verticalWallVal=s.getTile(x,y).verticalWall;
      world.getTileValue(bx,by).elevation=s.getTile(x,y).groundElevation;
      if ((s.getTile(x,y).groundOverlay & 0xff) == 250) {
        s.getTile(x,y).groundOverlay=(byte)2;
      }
      int groundOverlay=s.getTile(x,y).groundOverlay & 0xFF;
      if (groundOverlay > 0 && EntityHandler.getTileDef(groundOverlay - 1).getObjectType() != 0) {
        world.getTileValue(bx,by).mapValue|=0x40;
      }
      int verticalWall=s.getTile(x,y).verticalWall & 0xFF;
      if (verticalWall > 0 && EntityHandler.getDoorDef(verticalWall - 1).getUnknown() == 0 && EntityHandler.getDoorDef(verticalWall - 1).getDoorType() != 0) {
        world.getTileValue(bx,by).mapValue|=1;
        world.getTileValue(bx,by - 1).mapValue|=4;
      }
      int horizontalWall=s.getTile(x,y).horizontalWall & 0xFF;
      if (horizontalWall > 0 && EntityHandler.getDoorDef(horizontalWall - 1).getUnknown() == 0 && EntityHandler.getDoorDef(horizontalWall - 1).getDoorType() != 0) {
        world.getTileValue(bx,by).mapValue|=2;
        world.getTileValue(bx - 1,by).mapValue|=8;
      }
      int diagonalWalls=s.getTile(x,y).diagonalWalls;
      if (diagonalWalls > 0 && diagonalWalls < 12000 && EntityHandler.getDoorDef(diagonalWalls - 1).getUnknown() == 0 && EntityHandler.getDoorDef(diagonalWalls - 1).getDoorType() != 0) {
        world.getTileValue(bx,by).mapValue|=0x20;
      }
      if (diagonalWalls > 12000 && diagonalWalls < 24000 && EntityHandler.getDoorDef(diagonalWalls - 12001).getUnknown() == 0 && EntityHandler.getDoorDef(diagonalWalls - 12001).getDoorType() != 0) {
        world.getTileValue(bx,by).mapValue|=0x10;
      }
    }
  }
}

Fixed version (ground truth):
private void loadSection(int sectionX,int sectionY,int height,World world,int bigX,int bigY){
  Sector s=null;
  try {
    String filename="String_Node_Str" + height + "String_Node_Str"+ sectionX+ "String_Node_Str"+ sectionY;
    ZipEntry e=tileArchive.getEntry(filename);
    if (e == null) {
      throw new Exception("String_Node_Str" + filename);
    }
    ByteBuffer data=DataConversions.streamToBuffer(new BufferedInputStream(tileArchive.getInputStream(e)));
    s=Sector.unpack(data);
  }
 catch (  Exception e) {
    Logger.error(e);
  }
  for (int y=0; y < Sector.HEIGHT; y++) {
    for (int x=0; x < Sector.WIDTH; x++) {
      int bx=bigX + x;
      int by=bigY + y;
      if (!world.withinWorld(bx,by)) {
        continue;
      }
      MutableTileValue t=new MutableTileValue(world.getTileValue(bx,by));
      t.overlay=s.getTile(x,y).groundOverlay;
      t.diagWallVal=s.getTile(x,y).diagonalWalls;
      t.horizontalWallVal=s.getTile(x,y).horizontalWall;
      t.verticalWallVal=s.getTile(x,y).verticalWall;
      t.elevation=s.getTile(x,y).groundElevation;
      if ((s.getTile(x,y).groundOverlay & 0xff) == 250) {
        s.getTile(x,y).groundOverlay=(byte)2;
      }
      int groundOverlay=s.getTile(x,y).groundOverlay & 0xFF;
      if (groundOverlay > 0 && EntityHandler.getTileDef(groundOverlay - 1).getObjectType() != 0) {
        t.mapValue|=0x40;
      }
      int verticalWall=s.getTile(x,y).verticalWall & 0xFF;
      if (verticalWall > 0 && EntityHandler.getDoorDef(verticalWall - 1).getUnknown() == 0 && EntityHandler.getDoorDef(verticalWall - 1).getDoorType() != 0) {
        t.mapValue|=1;
        MutableTileValue t1=new MutableTileValue(world.getTileValue(bx,by - 1));
        t1.mapValue|=4;
        world.setTileValue(bx,by - 1,t1.toTileValue());
      }
      int horizontalWall=s.getTile(x,y).horizontalWall & 0xFF;
      if (horizontalWall > 0 && EntityHandler.getDoorDef(horizontalWall - 1).getUnknown() == 0 && EntityHandler.getDoorDef(horizontalWall - 1).getDoorType() != 0) {
        t.mapValue|=2;
        MutableTileValue t1=new MutableTileValue(world.getTileValue(bx - 1,by));
        t1.mapValue|=8;
        world.setTileValue(bx - 1,by,t1.toTileValue());
      }
      int diagonalWalls=s.getTile(x,y).diagonalWalls;
      if (diagonalWalls > 0 && diagonalWalls < 12000 && EntityHandler.getDoorDef(diagonalWalls - 1).getUnknown() == 0 && EntityHandler.getDoorDef(diagonalWalls - 1).getDoorType() != 0) {
        t.mapValue|=0x20;
      }
      if (diagonalWalls > 12000 && diagonalWalls < 24000 && EntityHandler.getDoorDef(diagonalWalls - 12001).getUnknown() == 0 && EntityHandler.getDoorDef(diagonalWalls - 12001).getDoorType() != 0) {
        t.mapValue|=0x10;
      }
      world.setTileValue(bx,by,t.toTileValue());
    }
  }
}