DEER need for X and Y to be the center of the object instead of top left corner

Why would you need Tiled to write out the center coordinates in the file? No additional information would be added since you can easily derive this position using some trigonometry.

Tiled already stores the position, size and rotation of the object. If you want to know where the center is of the rotated object, first calculate the center (by halving the width and height) and then apply the rotation. Some pseudo code that may help you:

double centerX = width / 2;
double centerY = height / 2;
double cosRotation = cos(toRadians(rotation));
double sinRotation = sin(toRadians(rotation));
double rotatedCenterX = centerX * cosRotation - centerY * sinRotation;
double rotatedCenterY = centerX * sinRotation + centerY * cosRotation;
x = x + rotatedCenterX;
y = y + rotatedCenterY;

Now, I can’t guarantee I got it exactly right because I didn’t test it, but if you have any problems you can Google for some explanations about how the rotation works. Let me know how it goes. Quite likely I did not take the Y axis in the right direction or I got the rotation direction wrong.

Edit: This code has been tested now and is correct.