Ok I have a working program now (and it is fast ). You draw a maze (35 x 25) tiles using 5 different tiles which represent the time to cross that tile. Next you set a start and end point on the maze. From here I developed an algorithm for finding nodes(intersections) on the map. Finally I implement Dijkstra's algorithm to find the order in which the nodes must be traversed to reach the finish in the fastest manner. A red dot will then walk through the fastest path. The code is a bit to long to post here however.

Again it doesnt like open areas because my node creation algorithm looks for intersections.