Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Forgot to mention, regarding the preprocessing, in GMS2 I used tilemap bit masking to store cull bits for the vertical edges:

https://docs2.yoyogames.com/source/_build/3_scripting/4_gml_reference/rooms/tilemaps/tilemap_set_mask.html

I actually do that, there's a variable you can use to control how many collision points you want to ignore from the base while walking up a slope. It's set to 2 by default (the character has 3 vertical collision points). The problem with the box is it's so wide that the mid-point of the box (which detects if it's on a slope) isn't able to make contact with the slope before hitting the solid tiles behind the second slope tile from the base. If your steep hill is only 1 high, it's just fine. Works well on the "hill" to the right of the starting point as well. As long as you start your slope with a "shallow slope" to lead in, it will work fine.

And yes, the markers/lines are collision points and the outline of the hitbox used for collisions.

Unfortunately the boxes are treated as solids, so you cannot push multiple boxes with my current code. However, you could probably add that capability by putting a collision test with a box object into the box object, and directing the moving box to add its momentum to the colliding box and forcing execution of second boxes step event before finishing its own

In this tutorial asset I have used a depth mask for determining how far the player should sink into a tile position. If you hit me up on r/gamemaker Discord I'd be glad to learn more about your bit masking method.