iggyfisk / highperch

highper.ch official web
2 stars 1 forks source link

Drawmap inaccuracy #63

Closed iggyfisk closed 4 years ago

iggyfisk commented 4 years ago

It's become apparent as the size increases, expand this https://highper.ch/map/(8)Mur'gulOasis_LV and watch the gold mines on the edges of the map creep too far out.

The draw algorithm thinks the map image is less "zoomed out" than it is.

This can be fixed by adjusting the map image (say crop out the black border and maybe a few pixels more), adjusting the algorithm, adjusting the map size in the map info, and as a super hacky way adjust the canvas size.

Not sure which is the "correct" one yet.

iggyfisk commented 4 years ago

It's all different since the bigmaps aren't generated through exact science. For example https://highper.ch/map/%288%29Sanctuary_LV is mega off in general, but specifically the map is off-center vertically (top black section is bigger than bottom)

iggyfisk commented 4 years ago

Ignoring the general stretched out-ness of most maps (Gold mine drawings are further away from center than the map image, and the error increases the further away from center you get)

iggyfisk commented 4 years ago

Image fixes https://github.com/iggyfisk/highperch/commit/9d69e2ddc2d2a8535af4e78442c7cc4c48677dc0 Camera bounds fix https://github.com/iggyfisk/highperch/commit/7be710ab6e107203ead7145884919b52a6beddc8

We'll still have to go over each map and find where changes to the map image need to made. Possible that we should do something in the draw system too if we want to account for a border in the images but we'll see.

iggyfisk commented 4 years ago

Figuring out that camera bounds != playable map bounds was such a success I feel like raising the bar here. I expect every goldmine to be completely covered by the current ugly stack-o-coins. Lots of maps already pass, most are really close, but I think we can get just about perfect by adjusting the size+/alignment of the map images. Here's the list (some are really nitpicky and low prio but I figure if they're just fixed once...):