ID:2130440
 
BYOND Version:511.1351
Operating System:Windows 10 Pro 64-bit
Web Browser:Firefox 47.0
Applies to:Dream Seeker
Status: Open

Issue hasn't been assigned a status value.
Descriptive Problem Summary:



I have side map on a 64 icon_size and moving some mobs around causes strange layering issues.

Both mobs (the player and the box) are on the same plane and layer (default). The turf is on the same plane with a lower layer (default).

Numbered Steps to Reproduce Problem:

Create a world with side map with 64pixel icon_size and try moving around? I'm unsure if this is the cause.

Attempt to move around turfs with other mobs.


Expected Results:

layering works appropriately

Actual Results:

Shenanigans.

Does the problem occur:
Every time? Or how often? Every time the box is in that spot
In other games? Unsure
In other user accounts? Yes
On other computers? Yes

When does the problem NOT occur?

When there's only one mob on the tile.

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.)

Unsure

Workarounds:

Unsure

Yeah, this is probably due to the icon exceeding the tile size (basically, the tile below is lower [closer to the screen] and the mob is considered to be on the tile above, so the tile below has layering priority). What I wish is that the side map layering only happens on things with the same layer, otherwise normal layering applies. Planes are nice, but they can be better used for other things, and are limited from -100 to 100, integers only. It'd also make it easier to go from topdown to side map and vice versa, and also inherently fix problems like this with tiles. A workaround for this is setting the plane for the tiles to a lower plane than the mob.
The tile size is 64 and the tiles here are all 64x64 icons, so they're not larger than the tile size, unless you meant the default of 32px.

As for planes, I use them for lighting (which I disabled for the gif)

I could likely put mobs and objects onto a higher plane than turfs and try that out, but I'm concerned how that would affect the blending.

This ultimately seems to be an issue where SIDE_MAP doesn't properly work when world icon_size isn't 32.

Edit: Yeah changing planes around screws up multiple things.
I meant the current bounds of the icon based on its position. See how it is covering two tiles? It does/did this with 32x32 too, last time I checked.
And yeah, that's one reason I don't like using planes for side map and wish there was another way to layer, because it is likely that you'll have to change your lighting system up. Another reason is because planes are restricted to integers only, and have an upper and lower bound.
Oh, I see what you mean.

That's pretty silly then.

I guess I'll just have to make my own layering system.

Shouldn't be too hard seeing as you can use y+step_y to get precise position along the Y axis, and since layers can use decimals I can adjust everything more precisely to prevent any strange overlap.
I've moved this to Bug Reports since this isn't strictly a beta issue.

SIDE_MAP has a couple of known issues, mainly regarding very large icons positioned via pixel offsets. Ultimately it needs to have a topological sort, which it doesn't yet. However, I'm concerned that this appears to be a simple case that isn't working. Can you get me a copy of that project so I can take a look?
In response to Lummox JR
Lummox JR wrote:
I've moved this to Bug Reports since this isn't strictly a beta issue.

SIDE_MAP has a couple of known issues, mainly regarding very large icons positioned via pixel offsets. Ultimately it needs to have a topological sort, which it doesn't yet. However, I'm concerned that this appears to be a simple case that isn't working. Can you get me a copy of that project so I can take a look?

Ooooh, >_< No.

I already went and coded my own layering thing to handle it instead so it's way gone from the SIDE_MAP setup.

I'll try to make a separate test case.
Thanks. I wouldn't expect a case like this to baffle SIDE_MAP, so I'm wondering if something is wrong with the bounds or such.
In my experience, SIDE_MAP doesn't like it at all when two things have the same y and step_y values but different bounding boxes.
SIDE_MAP has never worked properly for me