I am developing a video game in Game maker Studio, and I want to make an enemy with dynamic pathing. Previously I had to manually place nodes in the world that determined the paths that the enemy could follow, but for various reasons I ‘d rather not have to do that. I’m building the world with polygons, so I figured it would just be some math to do dynamic pathing, but I quickly ran into a roadblock. This would be trivial (if a bit time consuming) if I was only using the cardinal directions. Unfortunetly, I am not only planning on using the cardinal directions. I solved this previoiusly with the nodes by making every node connect to every other node, and then sending the enemy down every node connection, removing the connection if it collided with a wall or another node along the way. Now I need the code to place the nodes, (my plan was to use my current pathing algoritms, and simply make the enemy ai dynamic by automatically placing nodes for me, but I will take other solutions as well) but I’m stumped on how to go about it. Should I only consider cardinal directions? should I place nodes only working on cardinal directions, and then check those nodes for possible diagonals, while deleting nodes that are made irrelevant by that fact? (note, I’m not only planning on using 45 degree angles, the nodes should be able to have connections of any angle). I assume this problem has been pondered many times by many different people, so there has to be an answer, but any ideas I come up with either require too much computing power, or too much time (like having every pixel be a node and then deleting the irrelevant ones). Thanks so much for the help, and please ask if you need any more information.