I2C problems on arduino mega

 for (z=11;z<13;z++)        // Only for the first two sensors
  {
  Wire.requestFrom(z, 4);    // Get the contents of first two registers"
  num = Wire.available();
  Serial.print(num);
  
  y1 = Wire.read();       // first received byte stored here
  y2 = Wire.read(); 
  x1 = Wire.read(); 
  x2 = Wire.read(); 
 }

Are your device addresses 11 and 12? Also it would be useful to test if you got 4 (in num). If the device doesn't respond, and you don't get 4 returned from Wire.available() then the reads will return rubbish.