You can't check the distance between a tame and wild because that would mean you already know the answer to the problem. The wild distance is relative to the unknown position of the public key.
You can easily calculate the distance between kangoroos. Distance is not a number, but a public key, or more precisely a point on a curve, or rather, x coordinate of point and the table for comparing the results is a table of x coordinates. The only problem is that the table size is limited by the memory size, and it is unlikely that you can achieve a size larger than 2^40 x coordinates in table. For example Tame has cordinate G*1 and Wild G*3 so G*3 - G*1 = G*2 is equil to x: c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5
Right. Let's take interval (0, b) and hidden key 0 < k < b such that kG = P. And a tame kangaroo starting at b/2. And some wild kangaroos W1 and W2, which you don't know where they actually start from, just that it's somehwere in (0, b).
pos 1 b/2 b 2*b
tame T --------------->
k ??????????????
wilds. W1 --> W2. ------>
What will happen when they start jumping? First of all, after a while they will both pass beyond the b offset.
You propose to compute the differences between tame and wilds?
And do what with such information? The difference is already the answer of what the kangaroo algorithm does. Solving for differences in this context is simply solving between a known point, let's say [b/2]G and P. And there are exactly b possibilities for the differences, and those are in the (-b/2, b/2) interval. Kangaroo solves the problem in sqrt(b) steps, your idea solves it b steps, or actually 2*b steps, since the kangaroos jump outside the interval sooner or later.