I believe this is his own software that he has written. I have written something like it too as have several others. Its an interesting little problem to try to automatically calculate the probable river paths, which is hard to map, based on some simple inputs like rough height maps, which is a lot easier to manually do. It makes making a map much easier and more realistic than if you arbitrarily draw on the rivers where you think they might be. The physics of where water should be is generally pretty well known although its complicated by the infinitely detailed and complex terrain of real world ground and weather. But you can do a pretty good job of it. Another harder problem that we have had a go at and nobody has really had great results yet is that of automatically placing buildings for a town that look right. To get it to look right you need to grow the town much like you need to grow the rivers. Just plonking them down in some random way doesnt cut it. People tend to build where it needed, and sometimes knock buildings down and put up new ones based on what has grown there so far. But for now, rivers is something we can have a crack at and get some plausible results from and this particular technique is something Hai Etlik is exploring.