If I pick it up again, I'd probably need to add some functions after the initial polygon generation to randomize the coastlines a bit, since they tend to bear the hallmark of the great circle lines, making them look boring and obviously computer-generated.
I doubt there are any better algorithm than the midpoint displacement, which is very robust, corresponds to real life islands and can fill-in very precise shapes with arbitrary constraints.
People also use it to generate electricity or lightning like effects. And it also can serve as an input for sound generation, if you need some beefy synthetic sound effects for your sci-fi setting video or game
https://soundcloud.com/nikita_sadkov/explosionI.e. the algorithm is a goldmine of cheap content, when you have no money to pay artists or sound designers.
![](https://i.imgur.com/CCQm7JU.png)
Although I've found that the midpoint algorithm on a square grid has apparent bias, because it needs to sample from all 8 nearby cells, but the distance to four cells is 1, while distance to the four other cells is sqrt(2), meaning that N,S,W,E directions have less influence that they should, so the result isn't perfectly random and has predictable patterns, like say 45 degree lines are 1.4 times more likely than 90-degree ones. I.e. again we have that nasty square situation
![Cheesy :D](https://openxcom.org/forum/Smileys/default/cheesy.gif)
Googling has shown that people fix this sampling bug using some advanced math, beyond my grasp. But I'm sure it can be fixed by using hexagon grid instead, and then sampling down to squares. Still for my purposes these subtle errors ain't that noticeable and diagonal walls look more gamey.
Anyway, here is the current state of island generation. Several of these islands will be merged together to create game world.
![](https://i.imgur.com/GGFK2vX.png)
![](https://i.imgur.com/pMidLdS.png)
![](https://i.imgur.com/6YBtfW0.png)