A lot of construct behaviors work perfectly, theres no reason not to use them, and adding custom content is easy.
if you want to make a platform game, by all means you should be using the platform behavior.
Only when a really specialized movement, like that in sonic games or n is needed, should you think about building your own engine from the ground up for real control over how terrain interactions are handled.
games with grappling hooks can use the platform movement, you just need to turn it off while hook stuff is going on and reactivate it when its not.
game maker has a lot of bad practices associated with it, dont look to those for guidance, because they're workarounds to the program.