ID:2904071
 
Resolved
BYOND Version:515.1621
Operating System:Windows 10 Pro 64-bit
Web Browser:Chrome 120.0.0.0
Applies to:Dream Seeker
Status: Resolved

This issue has been resolved.
I know, we don't tread here, but I was attempting to fiddle around with the SIDE_MAP bugs I found earlier, and see if it was due to client.dir being maybe a little broken, and it was so broken I couldn't even test it.

With a square viewport, I found that object placement of large sprites is not right. Even when using pixel_w to adjust the position of these sprites.

This row of trees in NORTH client.dir looks like this:


pixel_w isn't working properly when rotating the view SOUTH or EAST, however:



I also noticed that SIDE_MAP layering behaves incorrectly on WEST and SOUTH, where certain objects seem to think they are 16px further forward than they actually are, and this causes things to interlayer improperly.



In addition, I found that pixel_w placement on EAST and SOUTH is also wrong, causing the trees to be in the incorrect position on the map.




Finally, I found that non-square viewports simply do not work on EAST/WEST client.dir to the point where my test case is completely unusable for testing SIDE_MAP in these modes.


Why the fuck are those pillars outside of the viewport's tiles, yet in view?

Test case is below:

Click on the compass at the top right to change the client's direction.

http://files.byondhome.com/Ter13/SidemapBugs_src.zip

In my opinion, client.view should not be changed by client.dir. There will never be a time when a developer wants to recalculate the tile coverage for the screen and consider their map in camera orientation, rather than just as x,y tiles on the screen.
The non-square viewport issue is probably a replica of id:2880733. That got left on the back burner too long.
Lummox JR resolved issue