You might want to make z step equal to the absolute value of speed + 1 (speed on x/y axis only). Then, the further (i.e. faster) you step into the slope, the higher the step the player can take. Keep in mind that this could allow the player to climb on anything if their speed exceeds the height of the object.
Viewing post in Z-Axis Movement (3D/2.5D Game, Tutorial #4) comments
Thank you for your reply.
I have created a hierarchy o_blocks_parent with, o_blocks and o_ramps as the children. And updated all the collision code with o_blocks_parent. And cleaned up my previous code in the above comment with; if instance_place(x,y,o_ramps){ position.z_step = 4 + abs(speed+1)}else{position.z_step = 4} this way i cant "climb" on anything and it works buttery smooth.
You will be named in the credits.