Hey! GameMaker dev here
Very interesting dev post, I'm so glad I've opened it.
Nice job! A* + steering combo looks neat!
I was struggling with collisions when using my own node-based path finding. I've always kind of neglected mp_path functionality, but now I see how it could resolve my issues.
My experience with path finding
But node-based algo worked pretty. I did a decent job optimising it and reducing total nodes number. The method I used is: basically every obstacle places a graph node around its corners. I optimised this by killing some nodes. E.g. in your case if a number of adjacent building form a square you need only 4 nodes around this square.
Feel free to ping me if you want to chat about this.

















