As I remarked to Lunnon in email, I still do not accept that he has proved the N-distance formula. Despite him seeming to think he has. But anyhow, I believe the "brute force proof" I sketched does work. Another comment is that, apparently, the shortest path from (0,0) to (x,y) is unique if and only if (x,y) is an integer multiple of (+-1,+-2) or (+-2, +-1). Otherwise, at least 2 paths exist, and if KnightDist>2 then at least 3 exist. Indeed the number of shortest paths (whenever non-unique) appears to be lower bounded by some linearly-growing function of the distance, and this seems tight because NumberOfShortestPaths( 2 + 2*k, k-1 ) = k+1 = KnightDist(2+2*k, k-1) for each k>=0. On the other hand, exponential growth is possible as demonstrated by NumberOfShortestPaths( 3*n, 3*n ) = (2*n)!/(n!)^2 for each n>=0 as one can prove by explicit construction of all paths. Here KnightDist(3*n, 3*n) = 2*n. This grows exponentially with ultimate growth ratio 2 as a function of distance d. It naively appears as though NumberOfShortestPaths( 3*n+1, 3*n+1 ) grows faster, but you can easily prove it ultimately also grows exponentially also with growth factor (in the limit) 2. It is however lower bounded by (2*n+2)*(2*n+1)*(2*n)!/(n!)^2 as I can show by explicit construction of that many paths. Here KnightDist(3*n+1, 3*n+1) = 2*n+2. I conjecture (without great confidence) that this formula is the maximum possible to within a constant factor. If you do not want to take some path, then the next-higher-distance is always 2 greater because of parity. In consequence the "NonUniqueKnightDistance" function, giving the shortest distance in knight moves if your first-choice path is rejected, is equal to the usual KnightDist function, except when (x,y) is an integer multiple of (+-1,+-2) or (+-2, +-1), in which cases add 2 hops.