ID:1693334
 
Keywords: isometric
Problem description:

How might I fix this problem?
Well actually two problems.
First the objects and boxes seem to not properly sit correctly upon elevated turfs.
Secondly the player seems to be wading in mud/chest deep the more I progress.

I have an idea somewhat- adjsut the pixel_z accordingly, however I still lack a way to uniformly fix things.

I'm thinking I may need to measure the dimensions of an icon and move it up accordingly but that is where I'm a bit foggy.

I remember seeing some things around the site where people created jumping on buildings or what not? I'm guessing it's something similiar I need to create but haven't been able to find any source related material about it. *not that great at using the search for some reason*

3D movement doesn't come with the isometric perspective. You have to do that yourself.

Forum_account's Pixel Movement library contains support for 3D movement in side-view and isometric perspectives. You could look at how it handles 3D movement.

But essentially, if you want to be standing on top of a tall object, you need your pixel_z to be at the top of the object. If the object is on top of another object, then its top is higher than it would be if it was at the ground level.

Put another way, your pixel_z must be the sum (added together) of the heights of all the atoms you're standing on.
pixel_z = 0
for(var/atom/a in obounds())
pixel_z += a.height

Now, there's no built-in "height" variable, so you have to set it yourself for every tall object, such as your grass layers and your boxes.

If you want any sort of jumping, you'll have to do that yourself. Gravity would work the same as it does in platformers, and you have to do your own collision detection for z-axis collisions. Again, this is all done in Forum_account's Pixel Movement.