tee_sokkelo(), random depth-first search-algo joka fillaa alueen kunnes tulee rajat joista ei päästä yli. Apufunktiona sotke() joka toteuttaa tarvittavan satunnaisuuden. puhko() etsii erillisten alueitten välisiä yhteyksiä, tekee niitten väliin yhteyden ja päivittää nämä alueet samalle id:lle fillaa()-funktion avulla. poista_umpikujat().
Viitisen tuntia?