I haven't given up yet but this is driving me nuts right now (arrrrr)
Try this for yourself:
-Make a layout larger than your window.
-Create a new layer with 0% scroll rate. (place sprites on both layers so you can see something!)
-Set an event to halve the window size and set zoom to 50 on both axes.
You should now see that while you can scroll around the base layer normally (you can use center-on-me attribute on an 8-direction sprite to test it), the layer with 0% scroll rate will be static as expected, but it will appear displaced. This is because the zoom happens around the center of the layout, while the coordinates of objects have a center on the upper left corner of the layout.
The solution is to displace every object in the 0% scroll rate layer on startup. How much to displace them?
That's what I'm having trouble finding out. What if the zoom is not 50 but something else?
I'm trying to arrive at an expression to get this, but it still eludes me. I must be overlooking something.