ID:2797107
 
Resolved
The CENTER keyword did not work correctly on secondary maps controls. It has been changed to act like LEFT+50% and/or BOTTOM+50%.
BYOND Version:514
Operating System:Windows 10 Pro 64-bit
Web Browser:Firefox 100.0
Applies to:Dream Seeker
Status: Resolved (514.1585)

This issue has been resolved.
Descriptive Problem Summary:
When using the render relay pattern (linking plane masters together using render targets pointing at objects on the desired target plane) and displaying said plane masters inside a submap (a screen location that isn't just the main map, so something that requires a prefix:, in this case prefix:CENTER) will lead to said plane masters being offset by (window size / 2) - 1 tiles per relay used.

Manual positioning however, does work.

Numbered Steps to Reproduce Problem:
1: create a popup window
2: create linked plane masters, with render relays with screen locs equal to popup window's key:CENTER
3: add said plane masters and their relays to the client's screen

Code Snippet (if applicable) to Reproduce Problem:
https://github.com/LemonInTheDark/basic-test-project/tree/ secondary-map
see src/windows.dm, and the popup_relay_view/popup_view verbs (one uses relays, the other does not)

Expected Results:

Plane masters will be, as on the main screen, properly centered

Actual Results:

They are very much not
See photos:
This is how things look if no relays are used, note the lack of visual effects from plane masters


And this is how things look if relays ARE used for the popup
Notice how the walls are shifted twice, this is because they are on a plane that ends up being RELAYED twice


Does the problem occur:
Every time? Or how often? every time
In other games? yes, replicates in /tg/ ss13 (with modifications) and in posted testcase
In other user accounts? n/a
On other computers? n/a

When does the problem NOT occur?

If no relays are used, or if the plane masters aren't drawn to the submap

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
No idea brother

Workarounds:
Manually position plane master relays based off the width of the window.
This does not work well, because window -> tile size is not constant. I hate this.
Thanks for the test case. I'll look into it.
o7
Lummox JR resolved issue with message:
The CENTER keyword did not work correctly on secondary maps controls. It has been changed to act like LEFT+50% and/or BOTTOM+50%.