Pointy top hexagonal A pathfinding I'm trying to create a game with a hex based map with the points at the top. I have most of it working, however the path finding is being a little awkward. The heuristic I'm using is called Euclidean I believe and is like so var dx Number destinationNode.c node.c var dy Number destinationNode.r node.r return Math.sqrt((dx dx) (dy dy)) Node is the node the unit is currently on, c is the node's column number and r is its row number. I'm using these as a simpler x and y coords. I'm trying to limit the unit to 3 hex moves in one round, so initially I thought it'd be as simple as IF returned heuristic lt 3 unit can move to that hex, however it's not working out quite like that. As you can see in the pic above, the bottom right selected hex with the "1 9 3.162277" is moveable to in 3 moves, however the hex with "9 1 3.162277" on the far right would need 4 moves to reach it. Can anyone offer any advice on how to make this work? EDIT My problem was being caused because I was using a Cartesian coordinate system and was just staggering every other Y coord. Fixed this by making the Y axis go down at a 60 degree angle. Thanks to amitp for the links that showed me what I was doing wrong.